+2003-01-07 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
+
+ * config/c4x/c4x.c (c4x_naked_function_p): Rename from
+ c4x_assembler_function_p.
+ (c4x_null_epilogue_p): Complement return value, all uses updated.
+ (c4x_insert_attributes): Add naked.
+ * config/c4x/c4x.md (c4x_null_epilogue_p): Changes uses.
+ * doc/extend.texi: Update C4x function attributes.
+
2003-01-06 Richard Henderson <rth@redhat.com>
* config/alpha/alpha.c (alpha_encode_section_info): Adjust symbol_str
(define_insn "return"
[(return)]
- "c4x_null_epilogue_p ()"
+ "! c4x_null_epilogue_p ()"
"rets"
[(set_attr "type" "rets")])
[(reg:CC 21) (const_int 0)])
(return)
(pc)))]
- "c4x_null_epilogue_p ()"
+ "! c4x_null_epilogue_p ()"
"rets%0"
[(set_attr "type" "rets")])
&& GET_CODE (operands[0]) != GE
&& GET_CODE (operands[0]) != LT
&& GET_CODE (operands[0]) != GT
- && c4x_null_epilogue_p ()"
+ && ! c4x_null_epilogue_p ()"
"rets%0"
[(set_attr "type" "rets")])
[(reg:CC 21) (const_int 0)])
(pc)
(return)))]
- "c4x_null_epilogue_p ()"
+ "! c4x_null_epilogue_p ()"
"rets%I0"
[(set_attr "type" "rets")])
&& GET_CODE (operands[0]) != GE
&& GET_CODE (operands[0]) != LT
&& GET_CODE (operands[0]) != GT
- && c4x_null_epilogue_p ()"
+ && ! c4x_null_epilogue_p ()"
"rets%I0"
[(set_attr "type" "rets")])
(define_expand "epilogue"
[(const_int 1)]
- ""
+ "! c4x_null_epilogue_p ()"
"c4x_expand_epilogue (); DONE;")
;
(match_operand:QI 1 "general_operand" ""))
(clobber (reg:QI 31))])
(return)]
- "c4x_null_epilogue_p ()"
+ "! c4x_null_epilogue_p ()"
"*
if (REG_P (operands[0]))
return \"bu%#\\t%C0\";
(match_operand:QI 2 "general_operand" "")))
(clobber (reg:QI 31))])
(return)]
- "c4x_null_epilogue_p ()"
+ "! c4x_null_epilogue_p ()"
"*
if (REG_P (operands[1]))
return \"bu%#\\t%C1\";
@item interrupt
@cindex interrupt handler functions
-Use this attribute on the ARM, AVR, M32R/D and Xstormy16 ports to indicate
+Use this attribute on the ARM, AVR, C4x, M32R/D and Xstormy16 ports to indicate
that the specified function is an interrupt handler. The compiler will
generate function entry and exit sequences suitable for use in an
interrupt handler when this attribute is present.
@item naked
@cindex function without a prologue/epilogue code
-Use this attribute on the ARM, AVR and IP2K ports to indicate that the
+Use this attribute on the ARM, AVR, C4x and IP2K ports to indicate that the
specified function do not need prologue/epilogue sequences generated by
the compiler. It is up to the programmer to provide these sequences.