ldloc var против ldloc.n
Кто-нибудь знает, если есть даже небольшая разница, используя ldloc var
CIL инструкция и ldloc.n
?
Учитывая эту локальную таблицу переменных в области видимости метода:
.locals init ([0] int32 a,
[1] int32 b)
Эти инструкции:
ldloc.0
ldloc.1
лучше, хуже или равно чем:
ldloc a
ldloc b
1 ответ
Решение
Существует множество сокращенных форм общих кодов операций с простой целью - сократить продолжительность метода. ldloc.n
инструкции занимают один байт, ldloc.s n
два байта и ldloc n
три байта. Это полезно для встраивания, поскольку методы длиной более 16 байтов не подходят для этого.