Dw2 CIE no longer contains personality routine augmentation?
Richard Guenther
richard.guenther@gmail.com
Thu Oct 1 08:38:00 GMT 2009
On Thu, Oct 1, 2009 at 2:47 AM, Dave Korn
<dave.korn.cygwin@googlemail.com> wrote:
>
> Hi everyone,
>
> I'm using g++.old-deja/g++.brendan/new3.C as a testcase to investigate a
> problem with dllimport at the moment, and noticed something a bit unusual:
>
> Here is the CIE data from new3.C as compiled with gcc-4.3.4
>
>> .section .eh_frame,"w"
>> Lframe1:
>> .long LECIE1-LSCIE1
>> LSCIE1:
>> .long 0x0
>> .byte 0x1
>> .def ___gxx_personality_v0; .scl 2; .type 32; .endef
>> .ascii "zP\0"
>> .uleb128 0x1
>> .sleb128 -4
>> .byte 0x8
>> .uleb128 0x5
>> .byte 0x0
>> .long ___gxx_personality_v0
>> .byte 0xc
>> .uleb128 0x4
>> .uleb128 0x4
>> .byte 0x88
>> .uleb128 0x1
>> .align 4
>> LECIE1:
>
> And now with gcc trunk@152230, I see that the generated CIE no longer has
> any augmentation, particularly it doesn't point to the personality routine any
> more:
>
>> LFE21:
>> .section .eh_frame,"w"
>> Lframe1:
>> .long LECIE1-LSCIE1
>> LSCIE1:
>> .long 0x0
>> .byte 0x1
>> .ascii "\0"
>> .uleb128 0x1
>> .sleb128 -4
>> .byte 0x8
>> .byte 0xc
>> .uleb128 0x4
>> .uleb128 0x4
>> .byte 0x88
>> .uleb128 0x1
>> .align 4
>> LECIE1:
>
> Is this intentional?
Yes. If it doesn't need one it doesn't get one.
Richard.
> cheers,
> DaveK
>
>
More information about the Gcc
mailing list