GCC Middle and Back End API Reference
|
#include <lra-int.h>
Data Fields | |
const char * | constraint |
ENUM_BITFIELD(machine_mode) mode ENUM_BITFIELD(op_type) type unsigned int | strict_low: 1 |
unsigned int | is_operator: 1 |
unsigned int | early_clobber: 1 |
unsigned int | is_address: 1 |
Static info about each insn operand (common for all insns with the same ICODE). Warning: if the structure definition is changed, the initializer for debug_operand_data in lra.c should be changed too.
const char* lra_operand_data::constraint |
The machine description constraint string of the operand.
Referenced by init_op_alt_data(), and valid_address_p().
unsigned int lra_operand_data::early_clobber |
True if there is an early clobber alternative for this operand. This field is set up every time when corresponding operand_alternative in lra_static_insn_data is set up.
Referenced by process_alt_operands().
unsigned int lra_operand_data::is_address |
True if the operand is an address.
Referenced by init_op_alt_data().
unsigned int lra_operand_data::is_operator |
True if the operand is an operator.
Referenced by init_op_alt_data().
ENUM_BITFIELD (machine_mode) mode ENUM_BITFIELD (op_type) type unsigned int lra_operand_data::strict_low |
It is taken only from machine description (which is different from recog_data.operand_mode) and can be of VOIDmode. The type of the operand (in/out/inout). Through if accessed through STRICT_LOW.
Referenced by init_op_alt_data(), and process_alt_operands().