https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64402
--- Comment #3 from Bernd Edlinger <bernd.edlinger at hotmail dot de> --- Created attachment 37172 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=37172&action=edit Patch to fix ICE and make interrupt restore r0 This patch fixes the ICE and makes interrupt functions also restore r0, which they did not do currently. test case: void __attribute__((interrupt)) intf(void) { asm("":::"$0", "$1"); } $0 and $1 got saved, but only $1 got restored. This would be fixed with this patch too. Note that the MEP port is currently proposed to be deprecated: https://gcc.gnu.org/ml/gcc/2015-12/msg00045.html So, if you are actually using the mep port better speak up now.