$ diff -y foo.s noalias-foo.s .file "fake.c" .file "fake.c" .intel_syntax noprefix .intel_syntax noprefix .text .text .Ltext0: .Ltext0: .file 0 "/home/imperio/rust/rustc_codegen_gcc" "/tmp/ | .file 0 "/home/imperio/rust/rustc_codegen_gcc" "/tmp/ .section .text.unlikely._ZN3foo3foo17hd79d7f96 .section .text.unlikely._ZN3foo3foo17hd79d7f96 .globl _ZN3foo3foo17hd79d7f965f61c29eE .globl _ZN3foo3foo17hd79d7f965f61c29eE .type _ZN3foo3foo17hd79d7f965f61c29eE, @function .type _ZN3foo3foo17hd79d7f965f61c29eE, @function _ZN3foo3foo17hd79d7f965f61c29eE: _ZN3foo3foo17hd79d7f965f61c29eE: .LVL0: .LVL0: .LFB0: .LFB0: .cfi_startproc .cfi_startproc .L2: .L2: mov eax, DWORD PTR [rdx] mov eax, DWORD PTR [rdx] add DWORD PTR [rdi], eax < .LVL1: .LVL1: mov eax, DWORD PTR [rdx] | add DWORD PTR [rdi], eax add DWORD PTR [rsi], eax < .LVL2: .LVL2: > add DWORD PTR [rsi], eax > .LVL3: ret ret .cfi_endproc .cfi_endproc .LFE0: .LFE0: .size _ZN3foo3foo17hd79d7f965f61c29eE, .-_ZN3foo3fo .size _ZN3foo3foo17hd79d7f965f61c29eE, .-_ZN3foo3fo .text .text .Letext0: .Letext0: .section .debug_info,"",@progbits .section .debug_info,"",@progbits .Ldebug_info0: .Ldebug_info0: .long 0xad | .long 0xb6 .value 0x5 .value 0x5 .byte 0x1 .byte 0x1 .byte 0x8 .byte 0x8 .long .Ldebug_abbrev0 .long .Ldebug_abbrev0 .uleb128 0x4 .uleb128 0x4 .long .LASF9 | .long .LASF8 .byte 0x2 .byte 0x2 .long .LASF0 .long .LASF0 .long .LASF1 .long .LASF1 .long .LLRL2 | .long .LLRL3 .quad 0 .quad 0 .long .Ldebug_line0 .long .Ldebug_line0 .uleb128 0x5 .uleb128 0x5 .long .LASF10 | .long .LASF9 .quad .LFB0 .quad .LFB0 .quad .LFE0-.LFB0 .quad .LFE0-.LFB0 .uleb128 0x1 .uleb128 0x1 .byte 0x9c .byte 0x9c .long 0x8f | .long 0x93 .uleb128 0x3 | .uleb128 0x2 .long .LASF2 .long .LASF2 .long 0x8f | .long 0x99 .long .LLST0 .long .LLST0 .uleb128 0x3 | .uleb128 0x2 .long .LASF3 .long .LASF3 .long 0x8f | .long 0x99 .long .LLST1 .long .LLST1 .uleb128 0x6 | .uleb128 0x2 .long .LASF4 .long .LASF4 .long 0x8f | .long 0x99 .uleb128 0x1 | .long .LLST2 .byte 0x51 | .uleb128 0x3 .uleb128 0x1 < .long .LASF5 .long .LASF5 .long 0x9c | .long 0xa5 .uleb128 0x1 | .uleb128 0x3 .long .LASF6 .long .LASF6 .long 0xa1 | .long 0xaa .uleb128 0x1 | .uleb128 0x3 .long .LASF7 .long .LASF7 .long 0xa6 | .long 0xaf > .uleb128 0x6 > .long .LASF10 > .long 0xb4 .uleb128 0x1 .uleb128 0x1 .long .LASF8 | .byte 0x50 .long 0xab < .byte 0 .byte 0 .uleb128 0x7 .uleb128 0x7 .byte 0x8 .byte 0x8 .long 0x95 | .long 0x9e .uleb128 0x8 .uleb128 0x8 > .long 0x93 > .uleb128 0x9 .byte 0x4 .byte 0x4 .byte 0x5 .byte 0x5 .string "int" .string "int" .uleb128 0x2 | .uleb128 0x1 .string "int" .string "int" .uleb128 0x2 | .uleb128 0x1 .string "int" .string "int" .uleb128 0x2 | .uleb128 0x1 .string "int" .string "int" .uleb128 0x2 | .uleb128 0x1 .string "int" .string "int" .byte 0 .byte 0 .section .debug_abbrev,"",@progbits .section .debug_abbrev,"",@progbits .Ldebug_abbrev0: .Ldebug_abbrev0: .uleb128 0x1 .uleb128 0x1 .uleb128 0x34 < .byte 0 < .uleb128 0x3 < .uleb128 0xe < .uleb128 0x49 < .uleb128 0x13 < .byte 0 < .byte 0 < .uleb128 0x2 < .uleb128 0x24 .uleb128 0x24 .byte 0 .byte 0 .uleb128 0xb .uleb128 0xb .uleb128 0x21 .uleb128 0x21 .sleb128 4 .sleb128 4 .uleb128 0x3e .uleb128 0x3e .uleb128 0x21 .uleb128 0x21 .sleb128 5 .sleb128 5 .uleb128 0x88 .uleb128 0x88 .uleb128 0x21 .uleb128 0x21 .sleb128 4 .sleb128 4 .uleb128 0x3 .uleb128 0x3 .uleb128 0x8 .uleb128 0x8 .byte 0 .byte 0 .byte 0 .byte 0 .uleb128 0x3 | .uleb128 0x2 .uleb128 0x5 .uleb128 0x5 .byte 0 .byte 0 .uleb128 0x3 .uleb128 0x3 .uleb128 0xe .uleb128 0xe .uleb128 0x49 .uleb128 0x49 .uleb128 0x13 .uleb128 0x13 .uleb128 0x2 .uleb128 0x2 .uleb128 0x17 .uleb128 0x17 .byte 0 .byte 0 .byte 0 .byte 0 > .uleb128 0x3 > .uleb128 0x34 > .byte 0 > .uleb128 0x3 > .uleb128 0xe > .uleb128 0x49 > .uleb128 0x13 > .byte 0 > .byte 0 .uleb128 0x4 .uleb128 0x4 .uleb128 0x11 .uleb128 0x11 .byte 0x1 .byte 0x1 .uleb128 0x25 .uleb128 0x25 .uleb128 0xe .uleb128 0xe .uleb128 0x13 .uleb128 0x13 .uleb128 0xb .uleb128 0xb .uleb128 0x3 .uleb128 0x3 .uleb128 0x1f .uleb128 0x1f .uleb128 0x1b .uleb128 0x1b .uleb128 0x1f .uleb128 0x1f .uleb128 0x55 .uleb128 0x55 .uleb128 0x17 .uleb128 0x17 .uleb128 0x11 .uleb128 0x11 .uleb128 0x1 .uleb128 0x1 .uleb128 0x10 .uleb128 0x10 .uleb128 0x17 .uleb128 0x17 .byte 0 .byte 0 .byte 0 .byte 0 .uleb128 0x5 .uleb128 0x5 .uleb128 0x2e .uleb128 0x2e .byte 0x1 .byte 0x1 .uleb128 0x3f .uleb128 0x3f .uleb128 0x19 .uleb128 0x19 .uleb128 0x3 .uleb128 0x3 .uleb128 0xe .uleb128 0xe .uleb128 0x27 .uleb128 0x27 .uleb128 0x19 .uleb128 0x19 .uleb128 0x34 .uleb128 0x34 .uleb128 0x19 .uleb128 0x19 .uleb128 0x11 .uleb128 0x11 .uleb128 0x1 .uleb128 0x1 .uleb128 0x12 .uleb128 0x12 .uleb128 0x7 .uleb128 0x7 .uleb128 0x40 .uleb128 0x40 .uleb128 0x18 .uleb128 0x18 .uleb128 0x7a .uleb128 0x7a .uleb128 0x19 .uleb128 0x19 .uleb128 0x1 .uleb128 0x1 .uleb128 0x13 .uleb128 0x13 .byte 0 .byte 0 .byte 0 .byte 0 .uleb128 0x6 .uleb128 0x6 .uleb128 0x5 | .uleb128 0x34 .byte 0 .byte 0 .uleb128 0x3 .uleb128 0x3 .uleb128 0xe .uleb128 0xe .uleb128 0x49 .uleb128 0x49 .uleb128 0x13 .uleb128 0x13 .uleb128 0x2 .uleb128 0x2 .uleb128 0x18 .uleb128 0x18 .byte 0 .byte 0 .byte 0 .byte 0 .uleb128 0x7 .uleb128 0x7 .uleb128 0xf .uleb128 0xf .byte 0 .byte 0 .uleb128 0xb .uleb128 0xb .uleb128 0xb .uleb128 0xb .uleb128 0x49 .uleb128 0x49 .uleb128 0x13 .uleb128 0x13 .byte 0 .byte 0 .byte 0 .byte 0 .uleb128 0x8 .uleb128 0x8 > .uleb128 0x37 > .byte 0 > .uleb128 0x49 > .uleb128 0x13 > .byte 0 > .byte 0 > .uleb128 0x9 .uleb128 0x24 .uleb128 0x24 .byte 0 .byte 0 .uleb128 0xb .uleb128 0xb .uleb128 0xb .uleb128 0xb .uleb128 0x3e .uleb128 0x3e .uleb128 0xb .uleb128 0xb .uleb128 0x3 .uleb128 0x3 .uleb128 0x8 .uleb128 0x8 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .section .debug_loclists,"",@progbits .section .debug_loclists,"",@progbits .long .Ldebug_loc3-.Ldebug_loc2 .long .Ldebug_loc3-.Ldebug_loc2 .Ldebug_loc2: .Ldebug_loc2: .value 0x5 .value 0x5 .byte 0x8 .byte 0x8 .byte 0 .byte 0 .long 0 .long 0 .Ldebug_loc0: .Ldebug_loc0: .LLST0: .LLST0: .byte 0x8 .byte 0x8 .quad .LVL0 .quad .LVL0 .uleb128 .LVL1-.LVL0 | .uleb128 .LVL2-.LVL0 .uleb128 0x1 .uleb128 0x1 .byte 0x55 .byte 0x55 .byte 0 .byte 0 .LLST1: .LLST1: .byte 0x8 .byte 0x8 .quad .LVL0 .quad .LVL0 .uleb128 .LVL2-.LVL0 | .uleb128 .LVL3-.LVL0 .uleb128 0x1 .uleb128 0x1 .byte 0x54 .byte 0x54 .byte 0 .byte 0 > .LLST2: > .byte 0x8 > .quad .LVL0 > .uleb128 .LVL1-.LVL0 > .uleb128 0x1 > .byte 0x51 > .byte 0 .Ldebug_loc3: .Ldebug_loc3: .section .debug_aranges,"",@progbits .section .debug_aranges,"",@progbits .long 0x2c .long 0x2c .value 0x2 .value 0x2 .long .Ldebug_info0 .long .Ldebug_info0 .byte 0x8 .byte 0x8 .byte 0 .byte 0 .value 0 .value 0 .value 0 .value 0 .quad .LFB0 .quad .LFB0 .quad .LFE0-.LFB0 .quad .LFE0-.LFB0 .quad 0 .quad 0 .quad 0 .quad 0 .section .debug_rnglists,"",@progbits .section .debug_rnglists,"",@progbits .Ldebug_ranges0: .Ldebug_ranges0: .long .Ldebug_ranges3-.Ldebug_ranges2 .long .Ldebug_ranges3-.Ldebug_ranges2 .Ldebug_ranges2: .Ldebug_ranges2: .value 0x5 .value 0x5 .byte 0x8 .byte 0x8 .byte 0 .byte 0 .long 0 .long 0 .LLRL2: | .LLRL3: .byte 0x7 .byte 0x7 .quad .LFB0 .quad .LFB0 .uleb128 .LFE0-.LFB0 .uleb128 .LFE0-.LFB0 .byte 0 .byte 0 .Ldebug_ranges3: .Ldebug_ranges3: .section .debug_line,"",@progbits .section .debug_line,"",@progbits .Ldebug_line0: .Ldebug_line0: .section .debug_str,"MS",@progbits,1 .section .debug_str,"MS",@progbits,1 .LASF2: .LASF2: .string "param0" .string "param0" .LASF3: .LASF3: .string "param1" .string "param1" .LASF4: .LASF4: .string "param2" .string "param2" .LASF8: | .LASF10: .string "loadedValue1" .string "loadedValue1" .LASF7: .LASF7: .string "loadedValue2" .string "loadedValue2" .LASF10: | .LASF9: .string "_ZN3foo3foo17hd79d7f965f61c29eE" .string "_ZN3foo3foo17hd79d7f965f61c29eE" .LASF5: .LASF5: .string "loadedValue4" .string "loadedValue4" .LASF6: .LASF6: .string "loadedValue3" .string "loadedValue3" .LASF9: | .LASF8: .ascii "libgccjit 13.0.0 20230107 (experimental) -fP .ascii "libgccjit 13.0.0 20230107 (experimental) -fP .ascii "=generic -march=x86-64 -fexceptions" .ascii "=generic -march=x86-64 -fexceptions" .string " -masm=intel -msse2 -mavx -mavx2 -msha -mfma .string " -masm=intel -msse2 -mavx -mavx2 -msha -mfma .section .debug_line_str,"MS",@progbits,1 .section .debug_line_str,"MS",@progbits,1 .LASF0: < .string "/tmp/libgccjit-29bZFe/fake.c" < .LASF1: .LASF1: .string "/home/imperio/rust/rustc_codegen_gcc" .string "/home/imperio/rust/rustc_codegen_gcc" > .LASF0: > .string "/tmp/libgccjit-DBq6e0/fake.c" .ident "GCC: (GNU) 13.0.0 20230107 (experimental)" .ident "GCC: (GNU) 13.0.0 20230107 (experimental)" .section .note.GNU-stack,"",@progbits .section .note.GNU-stack,"",@progbits