해결된 질문
23.02.26 13:13 작성
·
572
1
안녕하세요. 강사님.
강의 잘 보고있습니다.
실습 진행 중 궁금한게 있어서 질문 남깁니다.
아래 그림은 result = max(b, a); 를 실행하기 전 레지스터입니다.
아래 그림은 max 어셈블리 함수 내용입니다.
bx lr가 실행되기 전까지 레지스터 상태를 보면 별 문제 없어보이는데요.
문제는 저 라인이 실행한 후입니다.
레지스터 셋을 보시면 갑자기 r3값이 변하는 것을 확인할 수 있습니다. AAPCS를 보면 result값은 r0 또는 r1인데 말이죠.
제 함수에 문제가 있어보이지는 않는데 무엇이 문제인지 혹시 알 수 있을까요?