둘 다 작동하는 것 같습니다.GNU GAS의 ".SECTION .data"와 ".data"의 차이점은 무엇입니까?
하지만 그게 무슨 뜻입니까 .SECTION
? 왜 대문자입니까?
나는 '분해의 주요'
둘 다 작동하는 것 같습니다.GNU GAS의 ".SECTION .data"와 ".data"의 차이점은 무엇입니까?
하지만 그게 무슨 뜻입니까 .SECTION
? 왜 대문자입니까?
나는 '분해의 주요'
.section 이름 및/또는 플래그 섹션을 정의하기위한 지침을 것 같다 GDB '정보 파일'또는 어떤 차이를 찾을 수 없습니다. . 데이터는 초기화 된 데이터에 대해 미리 정의 된 섹션입니다.
이것은 단지 추측이지만, .section .data는 차례로 두 섹션이 될 수 있습니다. 첫 번째 섹션은 플래그가없고 내용이없는 이름이 지정되지 않으며, 다른 섹션은 .data 섹션입니다.
왜 대문자입니까?
어셈블리 지시어에 따라 사례를 구분을 것 같다 :
TC_CASE_SENSITIVE
가 git grep
말한다metag
제외하고는 모두 지침과 지시에 TOLOWER
를 사용 read.c
지금은 .data
대 .section .data
입니다.
문서
docs for .section
는 말 :
는이 지시어는 실제로 임의라는 이름의 섹션을 지원 대상에 대해 지원됩니다 a.out 대상에서, 예를 들어, 표준 a.out 섹션 이름을 사용하더라도 허용되지 않습니다. 당신이
.section name [, "flags"[, @type[,flag_specific_arguments]]]
실증 인수에 테스트
빠른 테스트와 함께 섹션 특성을 제어 할 사용자 정의 플래그를 전달할 수
때문에이 적은 휴대용 더 구성 할 수 있습니다 GAS 2.24 ELF Linux x86-64는 간단한 입력에 대해 동일한 출력을 제공함을 보여줍니다.
aS :
.data
i: .int 1
b.S :
.section .data
i: .int 1
비교 :
as -o a.o a.S
as -o b.o b.S
cmp a.o b.o
echo $?
소스 코드 ELF에 대한
, .section
이이 config/obj-elf.c#obj_elf_section()
.data
에 의해 처리는 read.c#s_data에 의해 처리됩니다.
TODO가 : 인수없이 .section .data
이 objdump`,`.section .data`는`.data`라는 이름의 하나의 섹션을 만들어`에 따르면 .data
여부
과 같은 작업을 수행하는 경우 소스에서 결론 지었다. –