|
GCC Middle and Back End API Reference
|

Data Fields | |
| asm_node * | node |
| unsigned | asm_definition: 1 |
| class constraint_data * | next_this_letter |
| file_location | loc |
| unsigned int | namelen |
| char | name [1] |
| class constraint_data * | next_textual |
| const char * | name |
| const char * | c_name |
| size_t | namelen |
| const char * | regclass |
| rtx | exp |
| const char * | filter |
| int | dependent_filter_ref_opno |
| unsigned int | is_register: 1 |
| unsigned int | is_const_int: 1 |
| unsigned int | is_const_dbl: 1 |
| unsigned int | is_extra: 1 |
| unsigned int | is_memory: 1 |
| unsigned int | is_special_memory: 1 |
| unsigned int | is_relaxed_memory: 1 |
| unsigned int | is_address: 1 |
| unsigned int | maybe_allows_reg: 1 |
| unsigned int | maybe_allows_mem: 1 |
Helper struct for walk_through_constraints.
Constraints fall into two categories: register constraints (define_register_constraint), and others (define_constraint, define_memory_constraint, define_special_memory_constraint, define_relaxed_memory_constraint, define_address_constraint). We work out automatically which of the various old-style macros they correspond to, and produce appropriate code. They all go in the same hash table so we can verify that there are no duplicate names.
All data from one constraint definition.
| unsigned constraint_data::asm_definition |
| const char* constraint_data::c_name |
| int constraint_data::dependent_filter_ref_opno |
Referenced by write_dependent_filter_helpers_h().
| rtx constraint_data::exp |
| const char* constraint_data::filter |
Referenced by add_constraint(), and write_dependent_filter_functions_c().
| unsigned int constraint_data::is_address |
Referenced by add_constraint().
| unsigned int constraint_data::is_const_dbl |
Referenced by add_constraint().
| unsigned int constraint_data::is_const_int |
Referenced by add_constraint().
| unsigned int constraint_data::is_extra |
| unsigned int constraint_data::is_memory |
Referenced by add_constraint().
| unsigned int constraint_data::is_register |
| unsigned int constraint_data::is_relaxed_memory |
Referenced by add_constraint().
| unsigned int constraint_data::is_special_memory |
Referenced by add_constraint().
| file_location constraint_data::loc |
Referenced by add_constraint(), mdep_constraint_len(), and note_constraint().
| unsigned int constraint_data::maybe_allows_mem |
| unsigned int constraint_data::maybe_allows_reg |
| char constraint_data::name[1] |
Referenced by add_constraint(), mangle(), mdep_constraint_len(), note_constraint(), and write_range_function().
| const char* constraint_data::name |
| unsigned int constraint_data::namelen |
Referenced by add_constraint(), mdep_constraint_len(), note_constraint(), and write_insn_constraint_len().
| size_t constraint_data::namelen |
| class constraint_data* constraint_data::next_textual |
| class constraint_data * constraint_data::next_this_letter |
Referenced by add_constraint(), mdep_constraint_len(), note_constraint(), and write_insn_constraint_len().
| asm_node* constraint_data::node |
Referenced by gdbhooks.TreePrinter::to_string().
| const char* constraint_data::regclass |