gcc: MeP Pragmas
1
1 6.61.4 MeP Pragmas
1 ------------------
1
1 'custom io_volatile (on|off)'
1 Overrides the command-line option '-mio-volatile' for the current
1 file. Note that for compatibility with future GCC releases, this
1 option should only be used once before any 'io' variables in each
1 file.
1
1 'GCC coprocessor available REGISTERS'
1 Specifies which coprocessor registers are available to the register
1 allocator. REGISTERS may be a single register, register range
1 separated by ellipses, or comma-separated list of those. Example:
1
1 #pragma GCC coprocessor available $c0...$c10, $c28
1
1 'GCC coprocessor call_saved REGISTERS'
1 Specifies which coprocessor registers are to be saved and restored
1 by any function using them. REGISTERS may be a single register,
1 register range separated by ellipses, or comma-separated list of
1 those. Example:
1
1 #pragma GCC coprocessor call_saved $c4...$c6, $c31
1
1 'GCC coprocessor subclass '(A|B|C|D)' = REGISTERS'
1 Creates and defines a register class. These register classes can
1 be used by inline 'asm' constructs. REGISTERS may be a single
1 register, register range separated by ellipses, or comma-separated
1 list of those. Example:
1
1 #pragma GCC coprocessor subclass 'B' = $c2, $c4, $c6
1
1 asm ("cpfoo %0" : "=B" (x));
1
1 'GCC disinterrupt NAME , NAME ...'
1 For the named functions, the compiler adds code to disable
1 interrupts for the duration of those functions. If any functions
1 so named are not encountered in the source, a warning is emitted
1 that the pragma is not used. Examples:
1
1 #pragma disinterrupt foo
1 #pragma disinterrupt bar, grill
1 int foo () { ... }
1
1 'GCC call NAME , NAME ...'
1 For the named functions, the compiler always uses a
1 register-indirect call model when calling the named functions.
1 Examples:
1
1 extern int foo ();
1 #pragma call foo
1