20#ifndef GCC_GENSUPPORT_H
21#define GCC_GENSUPPORT_H
44#define OPTAB_CL(name, pat, c, b, l) name,
45#define OPTAB_CX(name, pat)
46#define OPTAB_CD(name, pat) name,
47#define OPTAB_NL(name, pat, c, b, s, l) name,
48#define OPTAB_NC(name, pat, c) name,
49#define OPTAB_NX(name, pat)
50#define OPTAB_VL(name, pat, c, b, s, l) name,
51#define OPTAB_VC(name, pat, c) name,
52#define OPTAB_VX(name, pat)
53#define OPTAB_DC(name, pat, c) name,
54#define OPTAB_D(name, pat) name,
136 bool (*)(
const char *));
170extern int cmp_c_test (
const void *,
const void *);
199#define FOR_ALL_PREDICATES(p) for (p = first_predicate; p; p = p->next)
Definition gensupport.h:30
file_location loc
Definition gensupport.h:36
rtx def
Definition gensupport.h:33
int index
Definition gensupport.h:41
struct rtx_def * rtx
Definition coretypes.h:57
struct rtvec_def * rtvec
Definition coretypes.h:91
#define NUM_RTX_CODE
Definition gengenrtl.cc:40
static predicate_id * add_predicate(const char *id)
Definition genmatch.cc:1448
void compute_test_codes(rtx exp, file_location loc, char *codes)
Definition gensupport.cc:227
optab_def optabs[]
Definition gensupport.cc:3796
unsigned int num_optabs
Definition gensupport.cc:3802
struct pred_data * lookup_predicate(const char *name)
Definition gensupport.cc:3499
unsigned int add_generator_output(vec< generator_output > &outputs, const char *name, bool partition_p)
Definition gensupport.cc:3943
const char * get_c_test(rtx x)
Definition gensupport.cc:3373
rtx add_implicit_parallel(rtvec vec)
Definition gensupport.cc:154
int count_patterns()
Definition gensupport.cc:3211
int insn_elision
Definition gensupport.cc:45
file_location get_file_location(rtx x)
Definition gensupport.cc:3353
hash_set< rtx > compact_syntax
Definition gensupport.cc:39
rtx_reader * init_rtx_reader_args(int argc, const char **argv)
Definition gensupport.cc:3204
unsigned int get_register_filter_id(const char *filter)
Definition gensupport.cc:417
bool find_optab(optab_pattern *p, const char *name)
Definition gensupport.cc:3917
void open_generator_outputs(vec< generator_output > &outputs)
Definition gensupport.cc:3961
unsigned int get_num_insn_codes()
Definition gensupport.cc:3364
int maybe_eval_c_test(const char *expr)
Definition gensupport.cc:3436
bool close_generator_outputs(const vec< generator_output > &outputs)
Definition gensupport.cc:3998
const char * get_emit_function(rtx x)
Definition gensupport.cc:3759
int cmp_c_test(const void *x, const void *y)
Definition gensupport.cc:3423
void add_predicate_code(struct pred_data *pred, enum rtx_code code)
Definition gensupport.cc:3509
rtx_reader * init_rtx_reader_args_cb(int argc, const char **argv, bool(*parse_opt)(const char *))
Definition gensupport.cc:3160
struct pred_data * first_predicate
Definition gensupport.cc:3482
vec< const char * > register_filters
Definition gensupport.cc:408
struct obstack * rtl_obstack
Definition gensupport.cc:48
bool read_md_rtx(md_rtx_info *info)
Definition gensupport.cc:3268
hashval_t hash_c_test(const void *x)
Definition gensupport.cc:3397
void get_pattern_stats(struct pattern_stats *stats, rtvec pattern)
Definition gensupport.cc:3732
void add_c_test(const char *expr, int value)
Definition gensupport.cc:3455
FILE * choose_output(const vec< generator_output > &outputs)
Definition gensupport.cc:3975
void traverse_c_tests(htab_trav callback, void *info)
Definition gensupport.cc:3472
unsigned int num_dependent_filters
Definition gensupport.cc:410
optab_tag
Definition gensupport.h:57
@ NUM_OPTABS
Definition gensupport.h:641
@ unknown_optab
Definition gensupport.h:58
rtx_code
Definition rtl.h:48
Definition gensupport.h:163
int value
Definition gensupport.h:165
const char * expr
Definition gensupport.h:164
Definition gensupport.h:239
FILE * file
Definition gensupport.h:241
const char * name
Definition gensupport.h:240
bool partition_p
Definition gensupport.h:242
Definition gensupport.h:77
const char * base
Definition gensupport.h:87
unsigned int kind
Definition gensupport.h:105
const char * suffix
Definition gensupport.h:88
const char * name
Definition gensupport.h:79
unsigned int op
Definition gensupport.h:92
const char * libcall
Definition gensupport.h:89
enum rtx_code rcode
Definition gensupport.h:98
enum rtx_code fcode
Definition gensupport.h:95
const char * pattern
Definition gensupport.h:83
Definition gensupport.h:118
unsigned int op
Definition gensupport.h:123
const char * name
Definition gensupport.h:120
unsigned int sort_num
Definition gensupport.h:131
unsigned int m1
Definition gensupport.h:127
unsigned int m2
Definition gensupport.h:127
Definition gensupport.h:202
int min_scratch_opno
Definition gensupport.h:211
int max_scratch_opno
Definition gensupport.h:212
int num_generator_args
Definition gensupport.h:219
int num_dups
Definition gensupport.h:216
int num_operand_vars
Definition gensupport.h:225
int max_dup_opno
Definition gensupport.h:208
int num_insn_operands
Definition gensupport.h:222
int max_opno
Definition gensupport.h:205
Definition gensupport.h:177
bool codes[NUM_RTX_CODE]
Definition gensupport.h:191
struct pred_data * next
Definition gensupport.h:178
bool allows_non_lvalue
Definition gensupport.h:189
rtx exp
Definition gensupport.h:184
bool special
Definition gensupport.h:180
const char * name
Definition gensupport.h:179
int num_codes
Definition gensupport.h:188
bool allows_non_const
Definition gensupport.h:190
const char * c_block
Definition gensupport.h:183
enum rtx_code singleton
Definition gensupport.h:187