osprey/kgccfe/gnu/genattrtab.c File Reference

#include "hconfig.h"
#include "system.h"
#include "rtl.h"
#include "ggc.h"
#include "gensupport.h"
#include "obstack.h"
#include "errors.h"
#include "genattrtab.h"

Include dependency graph for genattrtab.c:

Go to the source code of this file.

Data Types

type  insn_def
type  insn_ent
type  attr_value
type  attr_desc
type  range
type  delay_desc
type  function_unit_op
type  function_unit
type  dimension
type  attr_hash

Defines

#define ATTR_IND_SIMPLIFIED_P(RTX)   (RTX_FLAG((RTX), unchanging))
#define ATTR_CURR_SIMPLIFIED_P(RTX)   (RTX_FLAG((RTX), in_struct))
#define ATTR_PERMANENT_P(RTX)   (RTX_FLAG((RTX), integrated))
#define ATTR_EQ_ATTR_P(RTX)   (RTX_FLAG((RTX), volatil))
#define MAX_DIGITS   (HOST_BITS_PER_INT * 3 / 10 + 3)
#define NULL_ATTR   (struct attr_desc *) NULL
#define MAX_ATTRS_INDEX   256
#define SIMPLIFY_TEST_EXP(EXP, INSN_CODE, INSN_INDEX)
#define SIMPLIFY_ALTERNATIVE(EXP)
#define oballoc(size)   obstack_alloc (hash_obstack, size)
#define RTL_HASH_SIZE   4093
#define RTL_HASH(RTL)   ((long) (RTL) & 0777777)
#define NUM_UNITOP_CUTOFF   20

Enumerations

enum  operator {
  PLUS_OP, MINUS_OP, POS_MINUS_OP, EQ_OP,
  OR_OP, ORX_OP, MAX_OP, MIN_OP,
  RANGE_OP, PLUS_OP, MINUS_OP, POS_MINUS_OP,
  EQ_OP, OR_OP, ORX_OP, MAX_OP,
  MIN_OP, RANGE_OP
}

Functions/Subroutines

static void attr_hash_add_rtx PARAMS ((int, rtx))
static void attr_hash_add_string PARAMS ((int, char *))
static rtx attr_rtx PARAMS ((enum rtx_code,...))
static rtx attr_rtx_1 PARAMS ((enum rtx_code, va_list))
static char *attr_string PARAMS ((const char *, int))
static rtx check_attr_value PARAMS ((rtx, struct attr_desc *))
static rtx
convert_set_attr_alternative 
PARAMS ((rtx, struct insn_def *))
static void check_defs PARAMS ((void))
static rtx make_canonical PARAMS ((struct attr_desc *, rtx))
static struct attr_value
*get_attr_value 
PARAMS ((rtx, struct attr_desc *, int))
static rtx copy_rtx_unchanging PARAMS ((rtx))
static rtx operate_exp PARAMS ((enum operator, rtx, rtx))
static rtx simplify_knowing PARAMS ((rtx, rtx))
static void fill_attr PARAMS ((struct attr_desc *))
static rtx substitute_address PARAMS ((rtx, rtx(*)(rtx), rtx(*)(rtx)))
static rtx simplify_cond PARAMS ((rtx, int, int))
static int
find_and_mark_used_attributes 
PARAMS ((rtx, rtx *, int *))
static void unmark_used_attributes PARAMS ((rtx, struct dimension *, int))
static int add_values_to_cover PARAMS ((struct dimension *))
static int increment_current_value PARAMS ((struct dimension *, int))
static int count_sub_rtxs PARAMS ((rtx, int))
static void remove_insn_ent PARAMS ((struct attr_value *, struct insn_ent *))
static rtx insert_right_side PARAMS ((enum rtx_code, rtx, rtx, int, int))
static rtx make_alternative_compare PARAMS ((int))
static int compute_alternative_mask PARAMS ((rtx, enum rtx_code))
static rtx evaluate_eq_attr PARAMS ((rtx, rtx, int, int))
static rtx simplify_and_tree PARAMS ((rtx, rtx *, int, int))
static int max_attr_value PARAMS ((rtx, int *))
static void write_attr_set PARAMS ((struct attr_desc *, int, rtx, const char *, const char *, rtx, int, int))
static void write_attr_case PARAMS ((struct attr_desc *, struct attr_value *, int, const char *, const char *, int, rtx))
static void write_unit_name PARAMS ((const char *, int, const char *))
static void write_attr_valueq PARAMS ((struct attr_desc *, const char *))
static void write_upcase PARAMS ((const char *))
static void write_complex_function PARAMS ((struct function_unit *, const char *, const char *))
static char *next_comma_elt PARAMS ((const char **))
static void extend_range PARAMS ((struct range *, int, int))
static rtx attr_eq PARAMS ((const char *, const char *))
static void attr_hash_add_rtx (int hashcode, rtx rtl)
static void attr_hash_add_string (int hashcode, char *str)
static rtx attr_rtx_1 (enum rtx_code code, va_list p)
static rtx attr_rtx VPARAMS ((enum rtx_code code,...))
char *attr_printf VPARAMS ((unsigned int len, const char *fmt,...))
static rtx attr_eq (char *name, char *value) const
static const char * attr_numeral (int n)
static char * attr_string (char *str, int len) const
static int attr_equal_p (rtx x, rtx y)
static rtx attr_copy_rtx (rtx orig)
rtx check_attr_test (rtx exp, int is_const, int lineno)
static rtx check_attr_value (rtx exp, struct attr_desc *attr)
static rtx convert_set_attr_alternative (rtx exp, struct insn_def *id)
static rtx convert_set_attr (rtx exp, struct insn_def *id)
static void check_defs ()
static rtx make_canonical (struct attr_desc *attr, rtx exp)
static rtx copy_boolean (rtx exp)
static struct attr_valueget_attr_value (rtx value, struct attr_desc *attr, int insn_code)
static void expand_delays ()
static rtx operate_exp (enum operator op, rtx left, rtx right)
static void expand_units ()
static rtx simplify_knowing (rtx exp, rtx known_true)
static rtx encode_units_mask (rtx x)
static void fill_attr (struct attr_desc *attr)
static rtx substitute_address (rtx exp, no_address_fn, address_fn)
static void make_length_attrs ()
static rtx identity_fn (rtx exp)
static rtx zero_fn (exp)
static rtx one_fn (exp)
static rtx max_fn (rtx exp)
static void write_length_unit_log ()
static rtx simplify_cond (rtx exp, int insn_code, int insn_index)
static void remove_insn_ent (struct attr_value *av, struct insn_ent *ie)
static void insert_insn_ent (struct attr_value *av, struct insn_ent *ie)
static rtx insert_right_side (enum rtx_code code, rtx exp, rtx term, int insn_code, int insn_index)
static int compute_alternative_mask (rtx exp, enum rtx_code code)
static rtx make_alternative_compare (int mask)
static rtx evaluate_eq_attr (rtx exp, rtx value, int insn_code, int insn_index)
static rtx simplify_and_tree (rtx exp, rtx *pterm, int insn_code, int insn_index)
static rtx simplify_or_tree (rtx exp, rtx *pterm, int insn_code, int insn_index)
static int attr_rtx_cost (rtx x)
static rtx simplify_test_exp_in_temp (rtx exp, int insn_code, int insn_index)
static rtx simplify_test_exp (rtx exp, int insn_code, int insn_index)
static void optimize_attrs ()
static rtx simplify_by_exploding (rtx exp)
static int find_and_mark_used_attributes (rtx exp, rtx *terms, int *nterms)
static void unmark_used_attributes (rtx list, struct dimension *space, int ndim)
static int add_values_to_cover (struct dimension *dim)
static int increment_current_value (struct dimension *space, int ndim)
static rtx test_for_current_value (struct dimension *space, int ndim)
static rtx simplify_with_current_value (rtx exp, struct dimension *space, int ndim)
static rtx simplify_with_current_value_aux (rtx exp)
static void clear_struct_flag (rtx x)
static int count_sub_rtxs (rtx x, int max)
static void gen_attr (rtx exp, int lineno)
static int count_alternatives (rtx exp)
static int compares_alternatives_p (rtx exp)
static int contained_in_p (rtx inner, rtx exp)
static void gen_insn (rtx exp, int lineno)
static void gen_delay (rtx def, int lineno)
static void gen_unit (rtx def, int lineno)
static void write_test_expr (rtx exp, int flags)
static int max_attr_value (rtx exp, int *unknownp)
static int or_attr_value (rtx exp, int *unknownp)
static void walk_attr_value (rtx exp)
static void write_attr_get (struct attr_desc *attr)
static rtx eliminate_known_true (rtx known_true, rtx exp, int insn_code, int insn_index)
static void write_attr_set (struct attr_desc *attr, int indent, rtx value, const char *prefix, const char *suffix, rtx known_true, int insn_code, int insn_index)
static void write_attr_case (struct attr_desc *attr, struct attr_value *av, int write_case_lines, const char *prefix, const char *suffix, int indent, rtx known_true)
static int write_expr_attr_cache (rtx p, struct attr_desc *attr)
static void write_toplevel_expr (rtx p)
static void write_unit_name (char *prefix, int num, const char *suffix) const
static void write_attr_valueq (struct attr_desc *attr, const char *s)
static void write_attr_value (struct attr_desc *attr, rtx value)
static void write_upcase (char *str) const
static void write_indent (int indent)
static void write_eligible_delay (char *kind) const
static void write_function_unit_info ()
static void write_complex_function (struct function_unit *unit, const char *name, const char *connection)
static char * next_comma_elt (char **pstr) const
static struct attr_descfind_attr (char *name, int create) const
void make_internal_attr (char *name, rtx value, int special) const
static struct attr_valuefind_most_used (struct attr_desc *attr)
static rtx find_single_value (struct attr_desc *attr)
rtx make_numeric_value (int n)
static void extend_range (struct range *range, int min, int max)
static rtx copy_rtx_unchanging (rtx orig)
static void write_const_num_delay_slots ()
int main PARAMS ((int, char **))
int main (int argc, char **argv)
const char * get_insn_name (code)

Variables

static struct obstack obstack1 obstack2
struct obstackhash_obstack = &obstack1
struct obstacktemp_obstack = &obstack2
static struct attr_descattrs [MAX_ATTRS_INDEX]
static struct insn_defdefs
static struct delay_descdelays
static struct function_unitunits
static int insn_code_number
static int insn_index_number
static int got_define_asm_attributes
static int must_extract
static int must_constrain
static int address_used
static int length_used
static int num_delays
static int have_annul_true
static int have_annul_false
static int num_units
static int num_unit_opclasses
static int num_insn_ents
int num_dfa_decls
static int * insn_n_alternatives
static int * insn_alternatives
static const char * current_alternative_string
static rtx true_rtx
static rtx false_rtx
static char * alternative_name
int reload_completed = 0
int optimize = 0
rtx global_rtl [GR_MAX]
rtx pic_offset_table_rtx
struct attr_hashattr_hash_table [RTL_HASH_SIZE]


Define Documentation

#define ATTR_CURR_SIMPLIFIED_P ( RTX   )     (RTX_FLAG((RTX), in_struct))

Definition at line 105 of file genattrtab.c.

#define ATTR_EQ_ATTR_P ( RTX   )     (RTX_FLAG((RTX), volatil))

Definition at line 107 of file genattrtab.c.

#define ATTR_IND_SIMPLIFIED_P ( RTX   )     (RTX_FLAG((RTX), unchanging))

Definition at line 104 of file genattrtab.c.

#define ATTR_PERMANENT_P ( RTX   )     (RTX_FLAG((RTX), integrated))

Definition at line 106 of file genattrtab.c.

#define MAX_ATTRS_INDEX   256

Definition at line 254 of file genattrtab.c.

#define MAX_DIGITS   (HOST_BITS_PER_INT * 3 / 10 + 3)

Definition at line 131 of file genattrtab.c.

#define NULL_ATTR   (struct attr_desc *) NULL

Definition at line 194 of file genattrtab.c.

#define NUM_UNITOP_CUTOFF   20

#define oballoc ( size   )     obstack_alloc (hash_obstack, size)

Definition at line 472 of file genattrtab.c.

#define RTL_HASH ( RTL   )     ((long) (RTL) & 0777777)

Definition at line 503 of file genattrtab.c.

#define RTL_HASH_SIZE   4093

Definition at line 498 of file genattrtab.c.

#define SIMPLIFY_ALTERNATIVE ( EXP   ) 

Value:

if (current_alternative_string        \
      && GET_CODE ((EXP)) == EQ_ATTR        \
      && XSTR ((EXP), 0) == alternative_name)     \
    (EXP) = (XSTR ((EXP), 1) == current_alternative_string  \
      ? true_rtx : false_rtx);

Definition at line 364 of file genattrtab.c.

#define SIMPLIFY_TEST_EXP ( EXP,
INSN_CODE,
INSN_INDEX   ) 

Value:

Definition at line 358 of file genattrtab.c.


Enumeration Type Documentation

enum operator

Enumerator:
PLUS_OP 
MINUS_OP 
POS_MINUS_OP 
EQ_OP 
OR_OP 
ORX_OP 
MAX_OP 
MIN_OP 
RANGE_OP 
PLUS_OP 
MINUS_OP 
POS_MINUS_OP 
EQ_OP 
OR_OP 
ORX_OP 
MAX_OP 
MIN_OP 
RANGE_OP 

Definition at line 321 of file genattrtab.c.


Function Documentation

static int add_values_to_cover ( struct dimension dim  )  [static]

static rtx attr_copy_rtx ( rtx  orig  )  [static]

static rtx attr_eq ( char *  name,
char *  value 
) const [static]

Definition at line 781 of file genattrtab.c.

References attr_rtx(), attr_string(), and strlen().

static int attr_equal_p ( rtx  x,
rtx  y 
) [static]

Definition at line 835 of file genattrtab.c.

References ATTR_PERMANENT_P, and rtx_equal_p().

static void attr_hash_add_rtx ( int  hashcode,
rtx  rtl 
) [static]

static void attr_hash_add_string ( int  hashcode,
char *  str 
) [static]

static const char* attr_numeral ( int  n  )  [static]

Definition at line 789 of file genattrtab.c.

References make_numeric_value(), and XSTR.

static rtx attr_rtx_1 ( enum rtx_code  code,
va_list  p 
) [static]

static int attr_rtx_cost ( rtx  x  )  [static]

static char* attr_string ( char *  str,
int  len 
) const [static]

rtx check_attr_test ( rtx  exp,
int  is_const,
int  lineno 
)

static rtx check_attr_value ( rtx  exp,
struct attr_desc attr 
) [static]

static void check_defs ( void   )  [static]

static void clear_struct_flag ( rtx  x  )  [static]

static int compares_alternatives_p ( rtx  exp  )  [static]

static int compute_alternative_mask ( rtx  exp,
enum rtx_code  code 
) [static]

Definition at line 2816 of file genattrtab.c.

References alternative_name, AND, atoi(), compute_alternative_mask(), GET_CODE, NOT, XEXP, and XSTR.

static int contained_in_p ( rtx  inner,
rtx  exp 
) [static]

static rtx convert_set_attr ( rtx  exp,
struct insn_def id 
) [static]

static rtx convert_set_attr_alternative ( rtx  exp,
struct insn_def id 
) [static]

static rtx copy_boolean ( rtx  exp  )  [static]

Definition at line 1538 of file genattrtab.c.

References AND, attr_rtx(), copy_boolean(), GET_CODE, and XEXP.

static rtx copy_rtx_unchanging ( rtx  orig  )  [static]

static int count_alternatives ( rtx  exp  )  [static]

static int count_sub_rtxs ( rtx  x,
int  max 
) [static]

Definition at line 4185 of file genattrtab.c.

References count_sub_rtxs(), GET_CODE, GET_RTX_FORMAT, GET_RTX_LENGTH, PC, REG, XEXP, XVECEXP, and XVECLEN.

static rtx eliminate_known_true ( rtx  known_true,
rtx  exp,
int  insn_code,
int  insn_index 
) [static]

static rtx encode_units_mask ( rtx  x  )  [static]

static rtx evaluate_eq_attr ( rtx  exp,
rtx  value,
int  insn_code,
int  insn_index 
) [static]

static void expand_delays ( void   )  [static]

static void expand_units (  )  [static]

static void extend_range ( struct range range,
int  min,
int  max 
) [static]

Definition at line 5973 of file genattrtab.c.

static void fill_attr ( struct attr_desc attr  )  [static]

static int find_and_mark_used_attributes ( rtx  exp,
rtx terms,
int *  nterms 
) [static]

static struct attr_desc* find_attr ( char *  name,
int  create 
) const [static, read]

static struct attr_value* find_most_used ( struct attr_desc attr  )  [static, read]

Definition at line 5907 of file genattrtab.c.

References attr_value::next, NULL, and attr_value::num_insns.

static rtx find_single_value ( struct attr_desc attr  )  [static]

Definition at line 5928 of file genattrtab.c.

References attr_value::next, NULL, attr_value::num_insns, and attr_value::value.

static void gen_attr ( rtx  exp,
int  lineno 
) [static]

static void gen_delay ( rtx  def,
int  lineno 
) [static]

static void gen_insn ( rtx  exp,
int  lineno 
) [static]

static void gen_unit ( rtx  def,
int  lineno 
) [static]

static struct attr_value* get_attr_value ( rtx  value,
struct attr_desc attr,
int  insn_code 
) [static, read]

const char* get_insn_name ( code   ) 

Definition at line 6297 of file genattrtab.c.

References NULL.

static rtx identity_fn ( rtx  exp  )  [static]

Definition at line 2520 of file genattrtab.c.

static int increment_current_value ( struct dimension space,
int  ndim 
) [static]

Definition at line 3975 of file genattrtab.c.

References XEXP.

static void insert_insn_ent ( struct attr_value av,
struct insn_ent ie 
) [static]

Definition at line 2727 of file genattrtab.c.

References insn_ent::insn_code, insn_ent::next, and num_insn_ents.

static rtx insert_right_side ( enum rtx_code  code,
rtx  exp,
rtx  term,
int  insn_code,
int  insn_index 
) [static]

int main ( int argc  ,
char **  argv 
)

static rtx make_alternative_compare ( int  mask  )  [static]

Definition at line 2846 of file genattrtab.c.

References alternative_name, ATTR_IND_SIMPLIFIED_P, attr_numeral(), and attr_rtx().

static rtx make_canonical ( struct attr_desc attr,
rtx  exp 
) [static]

void make_internal_attr ( char *  name,
rtx  value,
int  special 
) const

static void make_length_attrs ( void   )  [static]

rtx make_numeric_value ( int  n  ) 

Definition at line 5950 of file genattrtab.c.

References abort, attr_printf(), attr_rtx(), and MAX_DIGITS.

static int max_attr_value ( rtx  exp,
int *  unknownp 
) [static]

Definition at line 4845 of file genattrtab.c.

References atoi(), COND, GET_CODE, INT_MAX, max_attr_value(), n, XEXP, XSTR, XVECEXP, and XVECLEN.

static rtx max_fn ( rtx  exp  )  [static]

Definition at line 2541 of file genattrtab.c.

References make_numeric_value(), max_attr_value(), and unknown.

static char* next_comma_elt ( char **  pstr  )  const [static]

Definition at line 5827 of file genattrtab.c.

References attr_string(), NULL, scan_comma_elt(), and start.

static rtx one_fn ( exp   )  [static]

Definition at line 2534 of file genattrtab.c.

References make_numeric_value().

static rtx operate_exp ( enum operator  op,
rtx  left,
rtx  right 
) [static]

static void optimize_attrs ( void   )  [static]

static int or_attr_value ( rtx  exp,
int *  unknownp 
) [static]

Definition at line 4889 of file genattrtab.c.

References atoi(), COND, GET_CODE, or_attr_value(), XEXP, XSTR, XVECEXP, and XVECLEN.

int main PARAMS ( (int, char **)   ) 

static rtx attr_eq PARAMS ( (const char *, const char *)   )  [static]

static void extend_range PARAMS ( (struct range *, int, int)   )  [static]

static char* next_comma_elt PARAMS ( (const char **)   )  [static]

static void write_complex_function PARAMS ( (struct function_unit *, const char *, const char *)   )  [static]

static void write_upcase PARAMS ( (const char *)   )  [static, read]

Definition at line 635 of file mips-tfile.c.

static void write_attr_valueq PARAMS ( (struct attr_desc *, const char *)   )  [static]

static void write_unit_name PARAMS ( (const char *, int, const char *)   )  [static]

static void write_attr_case PARAMS ( (struct attr_desc *, struct attr_value *, int, const char *, const char *, int, rtx  )  [static]

static void write_attr_set PARAMS ( (struct attr_desc *, int, rtx, const char *, const char *, rtx, int, int)   )  [static]

static int max_attr_value PARAMS ( (rtx, int *)   )  [static]

static rtx simplify_and_tree PARAMS ( (rtx, rtx *, int, int)   )  [static]

static rtx evaluate_eq_attr PARAMS ( (rtx, rtx, int, int)   )  [static]

static int compute_alternative_mask PARAMS ( (rtx, enum rtx_code  )  [static]

static rtx make_alternative_compare PARAMS ( (int)   )  [static]

static rtx insert_right_side PARAMS ( (enum rtx_code, rtx, rtx, int, int)   )  [static]

static void remove_insn_ent PARAMS ( (struct attr_value *, struct insn_ent *)   )  [static]

static int count_sub_rtxs PARAMS ( (rtx, int)   )  [static]

static int increment_current_value PARAMS ( (struct dimension *, int)   )  [static]

static int add_values_to_cover PARAMS ( (struct dimension *)   )  [static]

static void unmark_used_attributes PARAMS ( (rtx, struct dimension *, int)   )  [static]

static int find_and_mark_used_attributes PARAMS ( (rtx, rtx *, int *)   )  [static]

static rtx simplify_cond PARAMS ( (rtx, int, int)   )  [static]

static rtx substitute_address PARAMS ( (rtx, rtx(*)(rtx), rtx(*)(rtx))   )  [static]

static void fill_attr PARAMS ( (struct attr_desc *)   )  [static]

static rtx simplify_knowing PARAMS ( (rtx, rtx  )  [static]

static rtx operate_exp PARAMS ( (enum operator, rtx, rtx  )  [static]

static rtx copy_rtx_unchanging PARAMS ( (rtx  )  [static]

static struct attr_value* get_attr_value PARAMS ( (rtx, struct attr_desc *, int)   )  [static, read]

static rtx make_canonical PARAMS ( (struct attr_desc *, rtx  )  [static]

static void check_defs PARAMS ( (void  )  [static, read]

Definition at line 77 of file cplus-dem.c.

static rtx convert_set_attr_alternative PARAMS ( (rtx, struct insn_def *)   )  [static]

static rtx check_attr_value PARAMS ( (rtx, struct attr_desc *)   )  [static]

static char* attr_string PARAMS ( (const char *, int)   )  [static]

static rtx attr_rtx_1 PARAMS ( (enum rtx_code, va_list  )  [static]

static rtx attr_rtx PARAMS ( (enum rtx_code,...)   )  [static]

static void attr_hash_add_string PARAMS ( (int, char *)   )  [static]

static void attr_hash_add_rtx PARAMS ( (int, rtx  )  [static]

static void remove_insn_ent ( struct attr_value av,
struct insn_ent ie 
) [static]

Definition at line 2702 of file genattrtab.c.

References insn_ent::insn_code, insn_ent::next, and num_insn_ents.

static rtx simplify_and_tree ( rtx  exp,
rtx pterm,
int  insn_code,
int  insn_index 
) [static]

static rtx simplify_by_exploding ( rtx  exp  )  [static]

static rtx simplify_cond ( rtx  exp,
int  insn_code,
int  insn_index 
) [static]

static rtx simplify_knowing ( rtx  exp,
rtx  known_true 
) [static]

static rtx simplify_or_tree ( rtx  exp,
rtx pterm,
int  insn_code,
int  insn_index 
) [static]

static rtx simplify_test_exp ( rtx  exp,
int  insn_code,
int  insn_index 
) [static]

static rtx simplify_test_exp_in_temp ( rtx  exp,
int  insn_code,
int  insn_index 
) [static]

Definition at line 3235 of file genattrtab.c.

References attr_copy_rtx(), ATTR_IND_SIMPLIFIED_P, rtl_obstack, simplify_test_exp(), and x.

static rtx simplify_with_current_value ( rtx  exp,
struct dimension space,
int  ndim 
) [static]

Definition at line 4015 of file genattrtab.c.

References ATTR_EQ_ATTR_P, GET_CODE, simplify_with_current_value_aux(), x, and XEXP.

static rtx simplify_with_current_value_aux ( rtx  exp  )  [static]

static rtx substitute_address ( rtx  exp,
no_address_fn  ,
address_fn   
) [static]

static rtx test_for_current_value ( struct dimension space,
int  ndim 
) [static]

Definition at line 3995 of file genattrtab.c.

References AND, insert_right_side(), true_rtx, and XEXP.

static void unmark_used_attributes ( rtx  list,
struct dimension space,
int  ndim 
) [static]

Definition at line 3887 of file genattrtab.c.

References ATTR_EQ_ATTR_P, GET_CODE, unmark_used_attributes(), values, and XEXP.

char* attr_printf VPARAMS ( (unsigned int len, const char *fmt,...)   ) 

Definition at line 753 of file genattrtab.c.

References abort, attr_string(), p, str, strlen(), VA_CLOSE, va_end, VA_FIXEDARG, VA_OPEN, VA_START, and vsprintf().

static rtx attr_rtx VPARAMS ( (enum rtx_code code,...)   )  [static]

Definition at line 726 of file genattrtab.c.

References attr_rtx_1(), p, result, VA_CLOSE, va_end, VA_FIXEDARG, VA_OPEN, and VA_START.

static void walk_attr_value ( rtx  exp  )  [static]

static void write_attr_case ( struct attr_desc attr,
struct attr_value av,
int  write_case_lines,
const char *  prefix,
const char *  suffix,
int  indent,
rtx  known_true 
) [static]

static void write_attr_get ( struct attr_desc attr  )  [static]

static void write_attr_set ( struct attr_desc attr,
int  indent,
rtx  value,
const char *  prefix,
const char *  suffix,
rtx  known_true,
int  insn_code,
int  insn_index 
) [static]

static void write_attr_value ( struct attr_desc attr,
rtx  value 
) [static]

static void write_attr_valueq ( struct attr_desc attr,
const char *  s 
) [static]

static void write_complex_function ( struct function_unit unit,
const char *  name,
const char *  connection 
) [static]

static void write_const_num_delay_slots ( void   )  [static]

static void write_eligible_delay ( char *  kind  )  const [static]

static int write_expr_attr_cache ( rtx  p,
struct attr_desc attr 
) [static]

static void write_function_unit_info (  )  [static]

static void write_indent ( int  indent  )  [static]

Definition at line 5511 of file genattrtab.c.

References printf().

static void write_length_unit_log ( void   )  [static]

static void write_test_expr ( rtx  exp,
int  flags 
) [static]

static void write_toplevel_expr ( rtx  p  )  [static]

static void write_unit_name ( char *  prefix,
int  num,
const char *  suffix 
) const [static]

Definition at line 5376 of file genattrtab.c.

References function_unit::name, function_unit::next, function_unit::num, and printf().

static void write_upcase ( char *  str  )  const [static]

Definition at line 5499 of file genattrtab.c.

References putchar(), and TOUPPER.

static rtx zero_fn ( exp   )  [static]

Definition at line 2527 of file genattrtab.c.

References make_numeric_value().


Variable Documentation

int address_used [static]

Definition at line 310 of file genattrtab.c.

char* alternative_name [static]

Definition at line 344 of file genattrtab.c.

struct attr_hash* attr_hash_table[RTL_HASH_SIZE]

Definition at line 499 of file genattrtab.c.

struct attr_desc* attrs[MAX_ATTRS_INDEX] [static]

Definition at line 255 of file genattrtab.c.

const char* current_alternative_string [static]

Definition at line 336 of file genattrtab.c.

struct insn_def* defs [static]

Definition at line 256 of file genattrtab.c.

Definition at line 257 of file genattrtab.c.

rtx false_rtx [static]

Definition at line 340 of file genattrtab.c.

rtx global_rtl[GR_MAX]

Definition at line 374 of file genattrtab.c.

Definition at line 307 of file genattrtab.c.

struct obstack* hash_obstack = &obstack1

Definition at line 127 of file genattrtab.c.

int have_annul_false [static]

Definition at line 313 of file genattrtab.c.

int have_annul_true [static]

Definition at line 313 of file genattrtab.c.

int* insn_alternatives [static]

Definition at line 330 of file genattrtab.c.

int insn_code_number [static]

Definition at line 305 of file genattrtab.c.

int insn_index_number [static]

Definition at line 306 of file genattrtab.c.

int* insn_n_alternatives [static]

Definition at line 325 of file genattrtab.c.

int length_used [static]

Definition at line 311 of file genattrtab.c.

int must_constrain [static]

Definition at line 309 of file genattrtab.c.

int must_extract [static]

Definition at line 308 of file genattrtab.c.

int num_delays [static]

Definition at line 312 of file genattrtab.c.

Definition at line 317 of file genattrtab.c.

int num_insn_ents [static]

Definition at line 315 of file genattrtab.c.

int num_unit_opclasses [static]

Definition at line 314 of file genattrtab.c.

int num_units [static]

Definition at line 314 of file genattrtab.c.

struct obstack obstack1 obstack2 [static]

Definition at line 126 of file genattrtab.c.

int optimize = 0

Definition at line 354 of file genattrtab.c.

Definition at line 375 of file genattrtab.c.

Definition at line 349 of file genattrtab.c.

Definition at line 128 of file genattrtab.c.

rtx true_rtx [static]

Definition at line 340 of file genattrtab.c.

Definition at line 258 of file genattrtab.c.


Generated on Wed Apr 8 15:33:30 2009 for Open64 by  doxygen 1.5.6