These ‘-m’ options are defined for the H8/300 implementations:
-mrelax
¶Shorten some address references at link time, when possible; uses the
linker option -relax. See ld
and the H8/300 in Using ld, for a fuller description.
-mh
¶Generate code for the H8/300H.
-ms
¶Generate code for the H8S.
-mn
¶Generate code for the H8S and H8/300H in the normal mode. This switch must be used either with -mh or -ms.
-ms2600
¶Generate code for the H8S/2600. This switch must be used with -ms.
-mexr
¶Extended registers are stored on stack before execution of function with monitor attribute. Default option is -mexr. This option is valid only for H8S targets.
-mno-exr
¶Extended registers are not stored on stack before execution of function with monitor attribute. Default option is -mno-exr. This option is valid only for H8S targets.
-mint32
¶Make int
data 32 bits by default.
-malign-300
¶On the H8/300H and H8S, use the same alignment rules as for the H8/300. The default for the H8/300H and H8S is to align longs and floats on 4-byte boundaries. -malign-300 causes them to be aligned on 2-byte boundaries. This option has no effect on the H8/300.