Mark objects death at end of scope
Jakub Jelinek
jakub@redhat.com
Thu Nov 3 12:47:00 GMT 2011
On Thu, Nov 03, 2011 at 12:01:05PM +0100, Michael Matz wrote:
> > Do your artificial EH regions survive into .gcc_except_table,
>
> It's possible. At expansion time the clobbers expand to nothing, so those
> regions theoretically are mergeable with outer regions, but we don't have
> EH cleanups on RTL anymore.
That is unfortunate. Can't EH cleanups be taught about these stmts
and optimize them as if those clobbering stmts weren't present?
I.e. similarly to the VTA first rule, don't base decisions on their
presence, and just take them into account when doing the transformation
if decided it should be done?
> That's possible I guess, but is it worth it? A file compiled with g++ is
> completely fine in requiring the c++ personality. Disabling this for some
> special cases just seems like a hack.
It is important, for several tools the size of .eh_frame section matters a
lot (e.g. when you need to pin all the .eh_frame/.eh_frame_hdr
sections into memory for kernel unwinding).
Jakub
More information about the Gcc-patches
mailing list