요즘 컴파일러는 함수간의 calling 방식을 자체적으로 최적화를 해 주는 것이 일반적입니다. 예를 들면 inline function의 아니라 하더라도 컴파일러가 코드 최적화를 하면서 inline이 빠를 것이라고 판단되면 컴파일러가 알아서 해당 함수를 inline으로 넣어 버리죠.
profile guided optimization을 살펴 보시기 바랍니다.
http://en.wikipedia.org/wiki/Profile-guided_optimization
__fastcall은 함수간의 파라미터를 전달하는 방법중의 하나이며, 델파이에서 기본적으로 사용하는 calling convention이기 때문에 C++ Builder에서 많이 보이는 것입니다. 굳이 함수를 정의할 때 반드시 __fastcall을 넣을 필요는 없습니다.
도대체 님이 쓰신 글 :
: __fastcall 레지스트리에 매개변수를 등록해서 함수호출 속도를 빠르게 하는 함수호출 방식이라고 알고 있습니다.
:
: 그냥 별 생각없이 거의 모든 함수에 __fastcall을 붙여서 쓰고 있습니다.
:
: __fastcall을 사용할 때 특별히 신경써야될 사항 같은 건 없는지 궁금합니다.
|