Getting Started with M68K Coral 66: Compilation System for the Motorola M68000 Family | ||
---|---|---|
Prev | Appendix B. Options for the M68000 Family | Next |
The Assembler has several additional command line options as follows:
You can use the -l option to shorten the size of references to undefined symbols. If you do not use the -l option, references to undefined symbols are wide enough for a full long (32 bits). (Since the Assembler cannot know where these symbols end up, the Assembler can only allocate space for the linker to fill in later. Since the Assembler does not know how far away these symbols are, it allocates as much space as it can.) If you use this option, the references are only one word wide (16 bits). This may be useful if you want the object file to be as small as possible, and you know that the relevant symbols are always less than 17 bits away.
Normally the character | is treated as a comment character, which means that it can not be used in expressions. The --bitwise-or option turns | into a normal character. In this mode, you must either use C style comments, or start comments with a # character at the beginning of a line.
If you use an addressing mode with a base register without specifying the size, the Assembler will normally use the full 32 bit value. For example, the addressing mode %a0@(%d0) is equivalent to %a0@(%d0:l). You may use the --base-size-default-16 option to tell the Assembler to default to using the 16 bit value. In this case, %a0@(%d0) is equivalent to %a0@(%d0:w). You may use the --base-size-default-32 option to restore the default behaviour.
If you use an addressing mode with a displacement, and the value of the displacement is not known, the Assembler will normally assume that the value is 32 bits. For example, if the symbol disp has not been defined, the Assembler will assemble the addressing mode %a0@(disp,%d0) as though disp is a 32 bit value. You may use the --disp-size-default-16 option to tell the Assembler to instead assume that the displacement is 16 bits. In this case, the Assembler will assemble %a0@(disp,%d0) as though disp is a 16 bit value. You may use the --disp-size-default-32 option to restore the default behaviour.
Assemble for the MC68000. -m68008, -m68302, and so on are synonyms for -m68000, since the CPUs are the same from the point of view of the assembler.
Assemble for the MC68010.
Assemble for the MC68020.
Assemble for the MC68030.
Assemble for the MC68040. This is the default.
Assemble for the MC68060.
Assemble for the CPU32.
Assemble for the ColdFire.
Assemble 68881 floating point instructions. This is the default for the 68020, 68030, and the CPU32. The 68040 and 68060 always support floating point instructions.
Do not assemble 68881 floating point instructions. This is the default for 68000 and the 68010. The 68040 and 68060 always support floating point instructions, even if this option is used.
Assemble 68851 MMU instructions. This is the default for the 68020, 68030, and 68060. The 68040 accepts a somewhat different set of MMU instructions; -m68851 and -m68040 should not be used together.
Do not assemble 68851 MMU instructions. This is the default for the 68000, 68010, and the CPU32. The 68040 accepts a somewhat different set of MMU instructions.