Products
and Services Support
and Docs Training Partner Programs About Red
Hat
  download storecart
red hat logo
redhat.comredhat network

Red Hat Documentation

Thumb_options Contents|Index|Previous|Next
ARM THUMB options  

The following‘-m’ options are available on THUMB architectures.
-mthumb-interwork
    Generate code which supports calling between the THUMB and ARM instruction sets. Without this option, the two instruction sets cannot be reliably used inside one program. The default is ‘-mno-thumb-interwork’, since slightly smaller code is generated with this option.
-mtpcs-frame
    Generate a stack frame that is compliant with the THUMB Procedure Call Standard (TPCS; hence, tpcs) for all non-leaf functions. (A leaf function is one that does not call any other functions). The default is ‘-mno-apcs-frame’.
-mtpcs-leaf-frame
    Generate a stack frame that is compliant with the THUMB Procedure Call Standard (TPCS; hence, tpcs) for all leaf functions. (A leaf function is one that does not call any other functions). The default is ‘-mno-apcs-leaf-frame’.
-mlittle-endian
    Generate code for a processor running in little-endian mode. This is the default for all standard configurations.
-mbig-endian
    Generate code for a processor running in big-endian mode.
-mstructure-size-boundary=<n>
    The size of all structures and unions will be rounded up to a multiple of the number of bits (n) set by this option. Permissable values are 8 and 32. The default value varies for different toolchains. For the COFF targeted toolchain, the default value is 8. Specifying the larger number can produced faster, more effcient code, but can also increase the size of the program. The two values are potentially incompatible. Code compiled with one value cannot necessarily expect to work with code or libraries compiled with the other value, if they exchange information using structures or unions. Programmers are encouraged to use the 32 value as future versions of the toolchain may default to this value.
-mnop-fun-dllimport
    Disable the support for the dllimport attribute.
-mcallee-super-interworking
    Gives all externally visible functions in the file being compiled an ARM instruction set header which switches to Thumb mode before executing the rest of the function. This allows these functions to be called from non-interworking code.
-mcaller-super-interworking
    Allows calls via function pointers (including virtual functions) to execute correctly regardless of whether the target code has been compiled for interworking or not. There is a small overhead in the cost of executing a function pointer if this option is enabled.

Top|Contents|Index|Previous|Next
<

 

 


 
© 2001 Red Hat, Inc. All rights reserved.
About Red Hat  :  Legal statement  :  Privacy statement  :  Y2K statement  :  Contact Red Hat