exception_receiver in i386.md

John Wehle john@feith.com
Thu Jan 18 15:51:00 GMT 2001


> Mon Jun 22 23:13:47 1998  John Wehle  (john@feith.com)
> 
> 	* i386.md (exception_receiver): Define.
> 
> John, do you remember why this was done?

md.texi says:

  @cindex @code{exception_receiver} instruction pattern
  @item @samp{exception_receiver}
  This pattern, if defined, contains code needed at the site of an
  exception handler that isn't needed at the site of a nonlocal goto.  You
  will not normally need to define this pattern.  A typical reason why you
  might need this pattern is if some value, such as a pointer to a global
  table, must be restored after control flow is branched to the handler of
  an exception.  There are no arguments.

The PIC register is a pointer to a global table which may need to be
restored.  Is there some other mechanism which guarantees that the
PIC register contains the proper value (i.e. what about a shared
library throwing an exception caught by another shared library)?

-- John
-------------------------------------------------------------------------
|   Feith Systems  |   Voice: 1-215-646-8000  |  Email: john@feith.com  |
|    John Wehle    |     Fax: 1-215-540-5495  |                         |
-------------------------------------------------------------------------



More information about the Gcc mailing list