This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: EH question and registers


On Tue, Jul 06, 2004 at 08:19:56PM -0400, Richard Kenner wrote:
> The problem I'm having with the Ada ACATS tests has to do with EH.
> 
> I have a situation like this:
> 
> 	... code that sets a register (r12 in this case) ...
> 
> 	... a block that raises and catches an exception but doesn't modify R12
> 
> 	... code that looks at r12
> 
> The act of raising and catching the exception isn't restoring r12.
...
> So suggestions as to where to look first would be greatly appreciated.

Amd64 r12 (don't make us guess what platform next time) is a call-clobbered
register.  The value that was allocated to r12 clearly isn't thought to be
live across the throw or catch, or it wouldn't have been allocated there.


r~


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]