문제

Visual Studio 2005의 x64 MicroSft 매크로 어셈블러에 대해 작성된 기능이 있습니다.

theFunction PROC firstP:QWORD, secondP:QWORD, thirdP:QWORD

X64 Calling Convention State는 처음 4 개의 인수가 레지스터 RCX, RDX, R8 & R9에 상주합니다. 함수의 인수를 사용할 때는 매개 변수가 아닌 레지스터 자체를 참조하고 있습니다.

mov r10, rcx   ; Move firstP to r10

이렇게하면 다음 경고가 발생합니다.

경고 A6004 : 절차 인수 또는 로컬 참조

이 경고를 피하거나 eprosse하려면 어떻게해야합니까? 레지스터를 사용하는 대신 함수 내부의 매개 변수를 참조하는 방법이 있습니까?

도움이 되었습니까?

해결책

해결책을 찾았습니다 : 나는 내가 한 방식으로 Proc를 선언 할 필요가 없었습니다. 함수로 전달 된 매개 변수를 선언 할 필요가 없습니다.

theFunction PROC
mov r10, rcx       ;Move firstP to r10
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top