as: MSP430 Options
9.28.1 Options
--------------
'-mmcu'
selects the mcu architecture. If the architecture is 430Xv2 then
this also enables NOP generation unless the '-mN' is also
specified.
'-mcpu'
selects the cpu architecture. If the architecture is 430Xv2 then
this also enables NOP generation unless the '-mN' is also
specified.
'-msilicon-errata=NAME[,NAME...]'
Implements a fixup for named silicon errata. Multiple silicon
errata can be specified by multiple uses of the '-msilicon-errata'
option and/or by including the errata names, separated by commas,
on an individual '-msilicon-errata' option. Errata names currently
recognised by the assembler are:
'cpu4'
'PUSH #4' and 'PUSH #8' need longer encodings on the MSP430.
This option is enabled by default, and cannot be disabled.
'cpu8'
Do not set the 'SP' to an odd value.
'cpu11'
Do not update the 'SR' and the 'PC' in the same instruction.
'cpu12'
Do not use the 'PC' in a 'CMP' or 'BIT' instruction.
'cpu13'
Do not use an arithmetic instruction to modify the 'SR'.
'cpu19'
Insert 'NOP' after 'CPUOFF'.
'-msilicon-errata-warn=NAME[,NAME...]'
Like the '-msilicon-errata' option except that instead of fixing
the specified errata, a warning message is issued instead. This
option can be used alongside '-msilicon-errata' to generate
messages whenever a problem is fixed, or on its own in order to
inspect code for potential problems.
'-mP'
enables polymorph instructions handler.
'-mQ'
enables relaxation at assembly time. DANGEROUS!
'-ml'
indicates that the input uses the large code model.
'-mn'
enables the generation of a NOP instruction following any
instruction that might change the interrupts enabled/disabled
state. The pipelined nature of the MSP430 core means that any
instruction that changes the interrupt state ('EINT', 'DINT', 'BIC
#8, SR', 'BIS #8, SR' or 'MOV.W <>, SR') must be followed by a NOP
instruction in order to ensure the correct processing of
interrupts. By default it is up to the programmer to supply these
NOP instructions, but this command-line option enables the
automatic insertion by the assembler, if they are missing.
'-mN'
disables the generation of a NOP instruction following any
instruction that might change the interrupts enabled/disabled
state. This is the default behaviour.
'-my'
tells the assembler to generate a warning message if a NOP does not
immediately follow an instruction that enables or disables
interrupts. This is the default.
Note that this option can be stacked with the '-mn' option so that
the assembler will both warn about missing NOP instructions and
then insert them automatically.
'-mY'
disables warnings about missing NOP instructions.
'-md'
mark the object file as one that requires data to copied from ROM
to RAM at execution startup. Disabled by default.
'-mdata-region=REGION'
Select the region data will be placed in. Region placement is
performed by the compiler and linker. The only effect this option
will have on the assembler is that if UPPER or EITHER is selected,
then the symbols to initialise high data and bss will be defined.
Valid REGION values are:
'none'
'lower'
'upper'
'either'