What is the difference between normal and short opcodes in CIL?

I look at various opcodes in CIL, and I find many similar codes like Beq, Beq_S BGE, Bge_S BGT, Bgt_S Br, Br_S

Where S is supposedly "short form". What does it mean?

+6
source share
1 answer

Short forms of instructions take up less space (i.e. binary coding of CIL instructions themselves is shorter, so your assembly will take up less space on disk or in memory). Therefore, they are generally preferable when applicable. However, the trade-off is that they have limited ranges compared to full forms of instructions (for example, offsets of the target branch must correspond to bytes instead of int).

+7
source

Source: https://habr.com/ru/post/909167/


All Articles