GCC Middle and Back End API Reference
|
#include "obstack.h"
Go to the source code of this file.
Data Structures | |
class | file_location |
struct | md_name |
struct | md_constant |
struct | enum_value |
struct | enum_type |
struct | overloaded_instance |
struct | overloaded_name |
class | md_reader |
struct | md_reader::ptr_loc |
struct | md_reader::file_name_list |
class | noop_reader |
class | rtx_reader |
Functions | |
int | read_char (void) |
void | unread_char (int ch) |
hashval_t | leading_string_hash (const void *) |
int | leading_string_eq_p (const void *, const void *) |
const char * | join_c_conditions (const char *, const char *) |
void | message_at (file_location, const char *,...) ATTRIBUTE_PRINTF_2 |
void | error_at (file_location, const char *,...) ATTRIBUTE_PRINTF_2 |
void | fatal_at (file_location, const char *,...) ATTRIBUTE_PRINTF_2 |
void | fatal_with_file_and_line (const char *,...) ATTRIBUTE_PRINTF_1 ATTRIBUTE_NORETURN |
void | fatal_expected_char (int, int) ATTRIBUTE_NORETURN |
int | read_skip_spaces (void) |
int | n_comma_elts (const char *) |
const char * | scan_comma_elt (const char **) |
void | upcase_string (char *) |
void | traverse_enum_types (htab_trav, void *) |
struct enum_type * | lookup_enum_type (const char *) |
Variables | |
md_reader * | md_reader_ptr |
rtx_reader * | rtx_reader_ptr |
void(* | include_callback )(const char *) |
|
extern |
Like message_at, but treat the condition as an error.
References ap, ggc_alloc(), have_error, and msg.
Referenced by md_reader::handle_enum(), md_reader::handle_include(), and md_reader::read_skip_construct().
|
extern |
Like message_at, but treat the condition as a fatal error.
References ap, ggc_alloc(), and msg.
|
extern |
Report that we found character ACTUAL when we expected to find character EXPECTED.
References fatal_with_file_and_line(), and ggc_alloc().
Referenced by md_reader::handle_constants(), md_reader::handle_file(), rtx_reader::read_rtx_operand(), md_reader::require_char(), and md_reader::require_char_ws().
A printf-like function for reporting an error against the current position in the MD file.
References ap, md_reader::get_colno(), md_reader::get_filename(), md_reader::get_lineno(), ggc_alloc(), i, md_reader_ptr, msg, read_char(), unread_char(), and vfprintf().
Referenced by add_constant(), add_mapping(), fatal_expected_char(), find_code(), find_mode(), function_reader::parse_function(), parse_note_insn_name(), parse_reg_note_name(), md_reader::read_braced_string(), read_flags(), md_reader::read_name(), md_reader::read_name_1(), rtx_reader::read_rtx_operand(), read_skip_spaces(), md_reader::read_string(), md_reader::require_word_ws(), rtx_reader::rtx_alloc_for_name(), validate_const_int(), and validate_const_wide_int().
Given two objects that start with char * name fields, return true if they have the same name.
References ggc_alloc().
Referenced by initialize_iterators(), and md_reader::md_reader().
Given an object that starts with a char * name field, return a hash code for its name.
References ggc_alloc().
Referenced by initialize_iterators(), and md_reader::md_reader().
|
extern |
A printf-like function for reporting a message against location LOC.
References ap, ggc_alloc(), and msg.
Referenced by add_constraint(), compute_test_codes(), gen_attr(), mdep_constraint_len(), note_constraint(), process_template(), validate_exp(), validate_optab_operands(), validate_pattern(), and VEC_safe_set_locstr().
Given a string, return the number of comma-separated elements in it. Return 0 for the null string.
Referenced by check_attr_test(), convert_set_attr(), and count_alternatives().
|
inline |
Read the next character from the MD file.
References md_reader_ptr, and md_reader::read_char().
Referenced by fatal_with_file_and_line(), read_flags(), and read_skip_spaces().
|
extern |
Read chars from the MD file until a non-whitespace char and return that. Comments, both Lisp style and C style, are treated as whitespace.
References fatal_with_file_and_line(), ggc_alloc(), read_char(), and unread_char().
Referenced by function_reader::extra_parsing_for_operand_code_0(), function_reader::handle_any_trailing_information(), md_reader::handle_constants(), md_reader::handle_enum(), md_reader::handle_file(), function_reader::maybe_read_location(), function_reader::parse_block(), function_reader::parse_edge(), function_reader::parse_function(), function_reader::parse_insn_chain(), md_reader::read_name_1(), rtx_reader::read_rtx_code(), rtx_reader::read_rtx_operand(), function_reader::read_rtx_operand_r(), rtx_reader::read_rtx_variadic(), md_reader::read_skip_construct(), md_reader::read_string(), rtx_reader::read_until(), and md_reader::require_char_ws().
Given a pointer to a (char *), return a pointer to the beginning of the next comma-separated element in the string. Advance the pointer given to the end of that element. Return NULL if at end of string. Caller is responsible for copying the string if necessary. White space between a comma and an element is ignored.
References ggc_alloc(), and NULL.
Referenced by compute_test_codes(), gen_attr(), gen_mnemonic_attr(), next_comma_elt(), write_match_code(), and write_match_code_switch().
|
inline |
Put back CH, which was the last character read from the MD file.
References md_reader_ptr, and md_reader::unread_char().
Referenced by fatal_with_file_and_line(), read_flags(), and read_skip_spaces().
Convert STRING to uppercase.
References ggc_alloc(), and i.
Referenced by md_reader::handle_enum(), and print_enum_type().
This callback will be invoked whenever an md include directive is processed. To be used for creation of the dependency file.
Referenced by md_reader::handle_include(), and main().
|
extern |
Global singleton; constrast with rtx_reader_ptr below.
Global singleton.
Referenced by fatal_with_file_and_line(), md_reader::md_reader(), read_char(), unread_char(), write_insn_preds_c(), write_tm_constrs_h(), write_tm_preds_h(), and md_reader::~md_reader().
|
extern |
Global singleton; constrast with md_reader_ptr above.
Global singleton.
Referenced by alter_test_for_insn(), attr_string(), def_target_insn(), emit_c_code(), find_int(), gen_attr(), gen_mnemonic_attr(), gen_mnemonic_setattr(), main(), mnemonic_htab_callback(), print_test(), process_rtx(), process_substs_on_one_elem(), process_template(), rtx_reader::rtx_reader(), write_attr_value(), write_init_reg_class_start_regs(), write_one_condition(), write_predicate_expr(), write_predicate_subfunction(), write_test_expr(), and rtx_reader::~rtx_reader().