[(return)]
""
{
- if (m68k_interrupt_function_p (current_function_decl))
- return "rte";
- else if (current_function_pops_args)
+ switch (m68k_get_function_kind (current_function_decl))
{
- operands[0] = GEN_INT (current_function_pops_args);
- return "rtd %0";
+ case m68k_fk_interrupt_handler:
+ return "rte";
+
+ case m68k_fk_interrupt_thread:
+ return "sleep";
+
+ default:
+ if (current_function_pops_args)
+ {
+ operands[0] = GEN_INT (current_function_pops_args);
+ return "rtd %0";
+ }
+ else
+ return "rts";
}
- else
- return "rts";
})
(define_insn "*m68k_store_multiple"