https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80881
--- Comment #57 from Julian Waters <tanksherman27 at gmail dot com> --- Just a heads up, the minimal reproducer seems to be getting garbage movabsq instructions emitted again with the first stage gcc in the bootstrap phase .file "tls.c" .text .section .text.unlikely,"x" .globl gomp_team_start .def gomp_team_start; .scl 2; .type 32; .endef .seh_proc gomp_team_start gomp_team_start: pushq %rdi .seh_pushreg %rdi pushq %rsi .seh_pushreg %rsi subq $40, %rsp .seh_stackalloc 40 .seh_endprologue leaq gomp_team_start_team(%rip), %rdi movabsq $8+gomp_tls_data@secrel32, %rsi call gomp_display_affinity_thread movl _tls_index(%rip), %edx movl $10, %ecx movq %gs:88, %rax addq (%rax,%rdx,8), %rsi rep movsl addq $40, %rsp popq %rsi popq %rdi ret .seh_endproc .globl gomp_tls_data .section .tls$,"dw" .align 8 gomp_tls_data: .space 48 .globl gomp_team_start_team .bss .align 32 gomp_team_start_team: .space 40 .ident "GCC: (Rev1, Built by MSYS2 project) 14.2.0" .def gomp_display_affinity_thread; .scl 2; .type 32; .endef This was caught when team.c started to fail in the assembler