https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106834
--- Comment #3 from Rui Ueyama <rui314 at gmail dot com> --- Here is my gcc -S output: $ gcc-12 -S -o- foo.c .file "foo.c" .text .section .rodata .LC0: .string "%lx" .text .globl main .type main, @function main: .LFB0: .cfi_startproc endbr64 pushq %rbp .cfi_def_cfa_offset 16 .cfi_offset 6, -16 movq %rsp, %rbp .cfi_def_cfa_register 6 leaq _GLOBAL_OFFSET_TABLE_(%rip), %rax movq %rax, %rsi leaq .LC0(%rip), %rax movq %rax, %rdi movl $0, %eax call printf@PLT movl $0, %eax popq %rbp .cfi_def_cfa 7, 8 ret .cfi_endproc