Target RejectNegative Mask(ALIGN_300)
Use H8/300 alignment rules.
+; FIXME: -mexr and -mno-exr should be merged or both marked RejectNegative.
+; As things stand now, -mno-exr is ambiguous.
mexr
Target Mask(EXR)
Push extended registers on stack in monitor functions.
Use this attribute on the H8/300, H8/300H, and H8S to indicate that
all registers except the stack pointer should be saved in the prologue
regardless of whether they are used or not.
+
+@cindex @code{monitor} function attribute, H8/300
+@item monitor
+Use this attribute to indicate a monitor function. It tells GCC
+to generate entry and exit sequences that disable interrupts during
+execution of the function.
+
+@cindex @code{OS_Task} function attribute, H8/300
+@item OS_Task
+Use this attribute to disable the normal register and stack save and
+restore sequences on function entry and exit. The function epilogue
+generated by GCC includes only a return instruction.
@end table
@node IA-64 Function Attributes
-tno-android-cc -tno-android-ld}
@emph{H8/300 Options} (@ref{H8/300 Options})
-@gccoptlist{-mrelax -mh -ms -mn -mexr -mno-exr -mint32 -malign-300}
+@gccoptlist{-mrelax -mh -ms -mn -msx -ms2600
+-mquickcall -mslowbyte -mexr -mint32 -malign-300}
@emph{HPPA Options} (@ref{HPPA Options})
@gccoptlist{-march=@var{architecture-type}
ld, Using ld}, for a fuller description.
@opindex mh
+@opindex mno-h
@item -mh
Generate code for the H8/300H@.
@opindex ms
+@opindex mno-s
@item -ms
Generate code for the H8S@.
@opindex mn
+@opindex mno-n
@item -mn
Generate code for the H8S and H8/300H in the normal mode. This switch
-must be used either with @option{-mh} or @option{-ms}.
+must be used with either @option{-mh} or @option{-ms}.
+
+@opindex msx
+@opindex mno-sx
+@item -msx
+Generate H8SX code.
@opindex ms2600
+@opindex mno-s2600
@item -ms2600
Generate code for the H8S/2600. This switch must be used with @option{-ms}.
-@opindex mexr
-@item -mexr
-Extended registers are stored on stack before execution of function
-with monitor attribute. Default option is @option{-mexr}.
-This option is valid only for H8S targets.
+@opindex mquickcall
+@opindex mno-quickcall
+@item -mquickcall
+Use registers for argument passing.
+
+@opindex mslowbyte
+@item -mslowbyte
+Consider access to byte-sized memory slow.
-@opindex mno-exr
@opindex mexr
-@item -mno-exr
-Extended registers are not stored on stack before execution of function
-with monitor attribute. Default option is @option{-mno-exr}.
-This option is valid only for H8S targets.
+@opindex mno-exr
+@item -mexr
+@itemx -mno-exr
+Store extended registers on the stack before execution of functions
+with the @code{monitor} attribute (@pxref{H8/300 Function Attributes}).
+The default is @option{-mexr}. This option is valid only for H8S targets.
@opindex mint32
@item -mint32