2011-10-27 6 views
3

현재 GNU를 배우고 있으며 "info as"에서 유용한 정보를 많이 찾습니다.MIPS 어셈블리에서 '.set noat'가 지원되지 않습니다?

".set noat"는 MIPS 지정 코드에서 사용되었지만 "info as"에서이 지시어를 검색 할 때 "alpha directive"노드에서 설명을 찾았지만 "MIPS Dependent Features"에서는 찾지 못했습니다. 왜? 설명서에서 뭔가를 놓쳤습니까? TIA

답변

2

.set at/noat

는 MIPS 아키텍처에 대한 올바른 구성과 $at 레지스터가 사용자에 의해 사용되는 경우 경고를 활성화/비활성화하여 알파에서와 유사한 방식으로 작동합니다.

는 때때로 문서와 코드가 항상 동기화 100 %되지 않습니다, 발생합니다. 따라서 file a bug against binutils 그리고 심지어 더 나은 - 패치를 제공하십시오. 그렇게함으로써 프로에게서 배울 수 있습니다 (때로는 바쁜 때가 아니라면 바쁜 경우도 있습니다).

알파 대 MIPS 소개 : 그것은 알파 아키텍처가 크게 MIPS의 영향을받은 것 같다.

+0

그것은 어려운 약간 GNU 툴 체인 소스 코드에 담그는 것이다. Mips 환경에서 사용할 수있는 "alpha 지시문"에서 언급 한 ".set noat"의 사용 여부를 확인하고자합니다. 이 문제에 쉽게 대처할 수있는 방법이 있습니까? "alpha 지시문"에서 ".set noat"테스트를 mips에서 쉽게 할 수 있습니까? – Wangrui

+0

[SRC/가스/구성/TC-mips.c : 235 (http://sourceware.org/cgi-bin/cvsweb.cgi/src/gas/config/tc-mips.c?annotate=1.493&cvsroot= src) – user786653

+0

고마워, 알 겠어. – Wangrui

2

GNU as은 8041 마이크로 컨트롤러 제품군에서 가장 큰 Cray 이상까지 프로세서 대상 (CPU 아키텍처)을 지원합니다. machine dependent section of the manual에는 42 개의 아키텍처가 나열되어 있습니다.

121 pseudo instructions의 대부분은 모든 아키텍처뿐만 아니라 그들에게 라벨의 의미와 참고로 일반적이다. 타겟 간의 큰 차이점은 특정 CPU 명령어, 어드레스 모드 및 명령어 인코딩입니다. 인상적으로 as은 대부분의 대상 (COFF, ELF, a.out 및 SOM)에 대해 동일한 개체 파일 형식을 생성 할 수 있습니다. 대부분의 의사의 지시가 어셈블러, 그리고 CPU의 실행에 영향을 때문에

, 그들이 아키텍처의 큰 숫자에 적용되는 것이 놀랍지 않습니다.

+0

전문가를위한 또 다른 질문은 특정 아키텍처에서 CPU 명령어에 대한 문서를 어디에서 찾을 수 있습니까? – Wangrui

+0

@joey : 대개 제조업체의 웹 사이트입니다. 약간의 (짜증나는) 제조업체는 문서에 대해 요금을 부과하려고하지만 대부분 온라인으로 무료로 제공합니다. 'as '의 기계 의존 섹션의 대부분은 제조업체의 문서에 대한 링크를 가지고 있습니다. – wallyk

+0

나에게 링크를 줄 수 있습니까? "-march = mips3"을 선호합니다. :) – Wangrui