프로그래밍/C, C++

Visual Studio 64bit inline asm

즉흥 2018. 8. 23. 20:13
728x90
반응형

64비트 Visual Studio에서 인라인 어셈 지원을 안 한다..


__asm
{
}


이걸 써서 상당히 편한 경우가 가끔 있는데 참 아쉬울 따름이다.


그래서 이런저런 조사를 해봤는데, 방법은 크게 두 가지 있는 것 같다.


.


첫 째, .asm 파일을 따로 생성하고 거기에 어셈 코드를 작성한 뒤에 불러오기.


근데 이건 작성한 어셈 코드를 call 형태로 불러야하기 때문에 음.. 뭔가 적용하기 어려움.


.


둘 째, Intrinsics List 사용하기.


어차피 어셈으로 복잡한 코드를 구현할 것이 아니라면 이게 상당히 좋다.


x86 Intrinsics List ( link )


x64 Intrinsics List ( link )


보시다시피 어셈 명령어 하나하나를 함수 형태로 구현해놨다.


이걸 이용해 컴파일하고, 어셈 코드를 보면 어셈 코드가 원하는 위치에 inline으로 박혀진다.


굳.




728x90
반응형