2009-05-01 11 views
10

MIPS-32 프로세서 아키텍처에 대한 표준화 된 스택 프레임 및 C 언어 호출 규칙 (레지스터 사용법 등)이 없습니다. 즉, 자체 스택 프레임과 호출 규칙을 정의하기 위해 어셈블러/컴파일러 도구 체인에 완전히 의존하는 것처럼 보입니다. 필자는 GCC 컴파일러가 MIPS-32 명령어 세트에 사용하는 규칙에 대한 명확한 참조를 찾기 위해 고심했습니다. 필자는 eCos 오픈 소스 커널의 임베디드 환경에서 사용되는 MIPS-32 코어를 대상으로 Cygwin에서 GCC 크로스 컴파일러를 사용하고 있습니다.GCC MIPS-32 호출 규칙/스택 프레임 정의

이 영역에서 MCC-32에 대한 GCC에 관한 확실한 문서에 대한 언급은 만족 스러울 것입니다.

답변

5

네 말이 맞아. 이건 좀 엉망이고 문서화가 잘 안된다. 내가 추천 :

+0

참고를위한 감사. 실제로 실제로 생성 된 코드를 살펴 보았습니다. 대부분 알아 냈지만 실제로 모든 일반적인 매개 변수 유형과 조합 등에 대해 일반적으로 정의 된 사례가 있음을 알기가 어렵습니다. –

4

나는 MIPS가 아니지만 어쩌면이 MIPS ABI History 참조가 도움이 될 수 있습니다.

+1

이 링크는 더 이상 작동하지 않습니다. 새로운 링크는 다음과 같다 : http://www.linux-mips.org/wiki/MIPS_ABI_History – antoyo