2 Copyright 1988-2022 Free Software Foundation, Inc.
3 This is part of the GCC manual.
4 For copying conditions, see the copyright.rst file.
6 .. _other-mips-built-in-functions:
8 Other MIPS Built-in Functions
9 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
11 GCC provides other MIPS-specific built-in functions:
13 .. function:: void __builtin_mips_cache (int op, const volatile void *addr)
15 Insert a :samp:`cache` instruction with operands :samp:`{op}` and :samp:`{addr}`.
16 GCC defines the preprocessor macro ``___GCC_HAVE_BUILTIN_MIPS_CACHE``
17 when this function is available.
19 .. function:: unsigned int __builtin_mips_get_fcsr (void)
20 .. function:: void __builtin_mips_set_fcsr (unsigned int value)
22 Get and set the contents of the floating-point control and status register
23 (FPU control register 31). These functions are only available in hard-float
24 code but can be called in both MIPS16 and non-MIPS16 contexts.
26 ``__builtin_mips_set_fcsr`` can be used to change any bit of the
27 register except the condition codes, which GCC assumes are preserved.