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]

Re: __builtin_eh_return_data_regno


On Mon, May 14, 2001 at 02:00:21AM -0700, Mark Mitchell wrote:
> I started trying to track this down.  It doesn't look like
> EH_RETURN_DATA_REGNO is defined for MIPS.

You'll need to define a couple of things, not just that, in
order to get call-frame exceptions working.

> Can I pick any four call-clobberred registers for this purpose?

Yes, though you'll do best with four that do not overlap the
return register.  Otherwise you have to play games elsewhere.

> Also, isn't this:
> 
> #ifdef EH_RETURN_DATA_REGNO
>   builtin_function ("__builtin_eh_return_data_regno", int_ftype_int,
> 		    BUILT_IN_EH_RETURN_DATA_REGNO, BUILT_IN_NORMAL, NULL_PTR);
> #endif
> 
> suboptimal?  From looking at the switch statement in builtins.c, it
> seems that we are meant always define the function, and then issue an
> error indicating that the builtin function is not supported on a
> particular target.

Um, we could do that, sure.  I guess it just seemed easier
at the time to do this.


r~


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