어쩌다가 sh4 core로 project를 진행하게 되었는데, sh4_abi를 살펴보니 함수 호출 규약이 다음과 같이 되어 있습니다. 컴파일러는 sh4-superh-elf-gcc를 사용하구요...
R0 to R3 : Return value, caller save
R2 : Larget struct return address, caller save
R4 to R7 : Parameter passing, caller save
R8 to R13 : Callee save
R12 : Global context pointer, GP, callee save
R13 : Callee save
R14 : Frame pointer, FP, callee save
R15 : Stack pointer, SP, callee save
...
GBR : Reserved
여기서 궁금한 것은
1. 함수 호출로 4개의 register를 써야 하는 일이 있는지??