Существует ли инструкция CIL для обмена первыми двумя элементами в стеке?
Команда обмена файлами CIL
Ответ 1
Обмен инструкциями отсутствует. Однако, используя stloc, pop и ldloc, вы сможете выполнить обмен.
Ответ 2
Нет. Единственный способ обмениваться элементами состоит в том, чтобы поместить верхние два элемента в локальные, а затем направить их в обратном порядке.
Ответ 3
Глядя на список инструкций CIL, похоже, не существует одной инструкции, которая обменивает два элемента в верхней части стек. Вам придется сделать это по-старому/push.
Ответ 4
В дальнейшем для справки вы можете создать сборку, которая делает то, что вы хотите узнать для IL, а затем просмотреть сборку в Reflector. Вы можете выбрать язык, в котором должен находиться код, а IL - один из параметров. Я сделал это, пытаясь понять, как закодировать динамический метод...