7.5.2 CP0 Register Field Definitions
When the CP0 register definitions header file is included from either an Assembly or
a C/C++ file, three #defines
exist for each of the CP0 register
fields.
_CP0_register_name_field_name_POSITION
– the starting bit location
_CP0_register_name_field_name_MASK
– the bits that are part of this
field are set
_CP0_register_name_field_name_LENGTH
– the number of bits that this
field occupies
For example, the vector spacing field of the IntCtl
register has the
following defines:
#define _CP0_INTCTL_VS_POSITION 0x00000005
#define _CP0_INTCTL_VS_MASK 0x000003E0
#define _CP0_INTCTL_VS_LENGTH 0x00000005