6.62.4 MeP Pragmas
custom io_volatile (on|off)
-
Overrides the command-line option
-mio-volatile
for the current file. Note that for compatibility with future GCC releases, this option should only be used once before anyio
variables in each file. GCC coprocessor available registers
-
Specifies which coprocessor registers are available to the register allocator. registers may be a single register, register range separated by ellipses, or comma-separated list of those. Example:
#pragma GCC coprocessor available $c0...$c10, $c28
GCC coprocessor call_saved registers
-
Specifies which coprocessor registers are to be saved and restored by any function using them. registers may be a single register, register range separated by ellipses, or comma-separated list of those. Example:
#pragma GCC coprocessor call_saved $c4...$c6, $c31
GCC coprocessor subclass '(A|B|C|D)' = registers
-
Creates and defines a register class. These register classes can be used by inline
asm
constructs. registers may be a single register, register range separated by ellipses, or comma-separated list of those. Example:#pragma GCC coprocessor subclass 'B' = $c2, $c4, $c6 asm ("cpfoo %0" : "=B" (x));
GCC disinterrupt name , name …
-
For the named functions, the compiler adds code to disable interrupts for the duration of those functions. If any functions so named are not encountered in the source, a warning is emitted that the pragma is not used. Examples:
#pragma disinterrupt foo #pragma disinterrupt bar, grill int foo () { … }
GCC call name , name …
-
For the named functions, the compiler always uses a register-indirect call model when calling the named functions. Examples:
extern int foo (); #pragma call foo
Next: PRU Pragmas, Previous: M32C Pragmas, Up: Pragmas [Contents][Index]
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-10.2.0/gcc/MeP-Pragmas.html