This is the mail archive of the crossgcc@cygnus.com mailing list for the crossgcc project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
From: Michael Schwingen <rincewind@discworld.dascon.de> >Hm - I just did that. The patch could need some testing, but on my test >cases, it seemed to work fine. >I used __attribute__((interrupt)). When set on a function, all modified >registers are saved and the function terminates using rte instead of >rts/rtd. Fantastic! That's just the way I was planning to do it. One or two comments, though: I noticed a macro in m68k.h called INITIAL_FRAME_POINTER_OFFSET that seems to use this same check for used registers. Does it need to be changed also? Near as I can tell, it's used in reload1.c. I'd considered forcing the interrupt functions to be void(void), but it wasn't obvious how to do that. I have no idea how the code should check and flag such errors. Have you submitted your patch to the egcs maintainers? I'd really like to see this included in the distributions (although I'm not sure if they're currently accepting patches for non-critical features). -- John A. Breen jab3@hotmail.com Get Your Private, Free Email at http://www.hotmail.com _______________________________________________ New CrossGCC FAQ: http://www.objsw.com/CrossGCC _______________________________________________ To remove yourself from the crossgcc list, send mail to crossgcc-request@cygnus.com with the text 'unsubscribe' (without the quotes) in the body of the message.