M32C Pragmas (Using the GNU Compiler Collection (GCC))

#### 6.5.4 M32C Pragmas ¶

`GCC memregs number` ¶

  Overrides the command-line option `-memregs=` for the current file. Use with care! This pragma must be before any function in the file, and mixing different memregs values in different objects may make them incompatible. This pragma is useful when a performance-critical function uses a memreg for temporary values, as it may allow you to reduce the number of memregs used.

`ADDRESS name address` ¶

  For any declared symbols matching name, this does three things to that symbol: it forces the symbol to be located at the given address (a number), it forces the symbol to be volatile, and it changes the symbol’s scope to be static. This pragma exists for compatibility with other compilers, but note that the common `1234H` numeric syntax is not supported (use `0x1234` instead). Example:

      #pragma ADDRESS port3 0x103
      char port3;