https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120440

--- Comment #15 from Sam James <sjames at gcc dot gnu.org> ---
(In reply to Sam James from comment #13)
> Created attachment 62016 [details]
> 120440.tar.xz

The diff between the objects is really small.

--- 120440/a-except.o-good
+++ 120440/a.except.o-bad
...
 Disassembly of section .text:
@@ -1509,17 +1509,16 @@

       Free (Copy);
      c38:      48 85 f6                test   %rsi,%rsi
-     c3b:      74 11                   je     c4e
<ada__exceptions__exception_propagation__gnat_gcc_exception_cleanupXn+0x16>
+     c3b:      74 12                   je     c4f
<ada__exceptions__exception_propagation__gnat_gcc_exception_cleanupXn+0x17>
    procedure GNAT_GCC_Exception_Cleanup
      c3d:      48 83 ec 08             sub    $0x8,%rsp
       Free (Copy);
-     c41:      48 89 f7                mov    %rsi,%rdi
-     c44:      e8 00 00 00 00          call   c49
<ada__exceptions__exception_propagation__gnat_gcc_exception_cleanupXn+0x11>
+     c41:      48 8b 7e f8             mov    -0x8(%rsi),%rdi
+     c45:      e8 00 00 00 00          call   c4a
<ada__exceptions__exception_propagation__gnat_gcc_exception_cleanupXn+0x12>
    end GNAT_GCC_Exception_Cleanup;
-     c49:      48 83 c4 08             add    $0x8,%rsp
-     c4d:      c3                      ret
+     c4a:      48 83 c4 08             add    $0x8,%rsp
      c4e:      c3                      ret
-     c4f:      90                      nop
+     c4f:      c3                      ret

is where the mangled pointer comes from mentioned above?

Reply via email to