GcC语言 g发生了什么?



使用gcc -g -S获取汇编文件,.s文件部分如下:

.L3:
.loc 1 22 11
mov eax, DWORD PTR -12[rbp]
mov edx, eax
mov rcx, QWORD PTR .refptr._ZSt4cout[rip]
call    _ZNSolsEi
.loc 1 22 18
mov rdx, QWORD PTR .refptr._ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_[rip]
mov rcx, rax
call    _ZNSolsEPFRSoS_E
.loc 1 23 7
mov DWORD PTR -12[rbp], 0
.loc 1 12 2
add DWORD PTR -4[rbp], 1
jmp .L6

.loc 1 22 11代表什么?

-g标志被添加到gcc中时,它指示编译器添加调试信息。只有当编译器生成带有-g标志的调试信息时,.loc才会出现:

https://sourceware.org/binutils/docs - 2.38 -/- as/loc.html # Loc

相关内容

最新更新