------- Comment #16 from amylaar at gcc dot gnu dot org  2009-03-08 14:37 
-------
(In reply to comment #9)
> The darwin -m64 failures are then the same problem, cross-jumping of noreturn
> calls between different level of stack depths.
> I've been wrong about DW_CFA_GNU_args_size being useless for cfa.reg !=
> STACK_POINTER_REGNUM, while such directives won't ever be used by the libgcc
> unwinder, they might be used by debuggers to set correct value of stack
> pointer,
> and therefore such directives aren't useless and so we should avoid
> crossjumping
> in that case.

It is a valid size optimization, so if the unwinder doesn't need the directive
to be always correct, we should do this optimization for -Os unless you also
specify -O1.  Optimization levels above -O1 are known to give imperfect debug
information.  And -O1 defaults to -fno-crossjumping .


-- 

amylaar at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |amylaar at gcc dot gnu dot
                   |                            |org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37022

Reply via email to