Contents|Index|Previous|Next

AMD29K Options

The following ‘-m’ options are defined for the AMD Am29000.

-mdw   
Generate code that assumes the DW bit is set, i.e., that byte and halfword operations are directly supported by the hardware. This is the default.
-mndw   
Generate code that assumes the DW bit is not set.
-mbw   
Generate code that assumes the system supports byte and halfword write operations. This is the default.
-mnbw   
Generate code that assumes the systems does not support byte and halfword write operations. -mnbw implies -mndw.
-msmall   
Use a small memory model that assumes that all function addresses are either within a single 256 KB segment or at an absolute address of less than 256k. This allows the call instruction to be used instead of a const, consth, calli sequence.
-mnormal   
Use the normal memory model: Generate call instructions only when calling functions in the same file and calli instructions otherwise. This works if each file occupies less than 256 KB but allows the entire executable to be larger than 256 KB. This is the default.
-mlarge   
Always use calli instructions. Specify this option if you expect a single file to compile into more than 256 KB of code.
-m29050
Generate code for the Am29050.
-m29000
Generate code for the Am29000. This is the default.
-mkernel-registers   
Generate references to registers gr64-gr95 instead of to registers gr96-gr127. This option can be used when compiling kernel code that wants a set of global registers disjoint from that used by user-mode code.
-muser-registers   
Use the normal set of global registers, gr96-gr127. This is the default.
-mstack-check
-mno-stack-check   
Insert (or do not insert) a call to __msp_check after each stack adjustment. This is often used for kernel code.
-mstorem-bug
-mno-storem-bug   
-mstorem-bug
handles 29k processors which cannot handle the separation of a mtsrim insn and a storem instruction (most 29000 chips to date, but not the 29050).
-mno-reuse-arg-regs
-mreuse-arg-regs   
-mno-reuse-arg-regs
tells the compiler to only use incoming argument registers for copying out arguments. This helps detect calling a function with fewer arguments than those with which it was declared.
-mno-impure-text
-mimpure-text    
-mimpure-text
, used in addition to -shared, tells the compiler to not pass -assert pure-text to the linker when linking a shared object.
-msoft-float    
Generate output containing library calls for floating point.