compiler optimization
-
Code Optimization of VC++ withComputer/Program Analysis 2008. 6. 26. 15:39
VC++ 컴파일러가 function call을 할 때 일반적으로는 call instruction을 사용하지만, call 이후에 바로 return하는 경우에는 jmp instruciton을 사용하여 optimize 한다. 그림에서 41BAFE로 call하는 부분과 jmp하는 부분이 있다. jmp로 가면 41BAFE 함수에서 return 하면 41B851을 호출한 함수로 바로 return 하게 된다. 생각해 보면 이런 optimize는 항상 할 수 있는 것은 아니고, 실제 code에서의 function이 아니라 function chunk에 대한 call을 할 때 가능해진다. 이것은 Java bytecode에서의 jsr instruction과 유사한 방식의 optimize를 할 때 사용하는 것 같다. stac..