iload_1,iload_2,iload_3和iload #index字节码有什么区别?

Ish*_*dra 4 java bytecode java-bytecode-asm

iload #index与其他3字节代码的区别.它们之间是否有任何性能差异.

Pet*_*rey 6

iload #index与其他3字节代码的区别.

iload_1 _2 _3使用一个字节的字节代码.另一种形式使用2.

它们之间是否有任何性能差异.

只是间接的.大多数情况下它没有任何区别,但是有一些基于字节码字节计数的性能调整指标.例如,是否内联方法.稍长的方法可能意味着不执行某些优化.

例如,即使没有经常调用,内联方法的度量标准也是35个字节.如果代码使用的是iload#而不是iload_1,则可能意味着它略长于35个字节,而不是略微更少而且没有内联.