GCC Middle and Back End API Reference
genpeep.c File Reference

Data Structures

struct  link


static void gen_peephole (rtx, int)
static void match_rtx (rtx, struct link *, int)
static void print_path (struct link *)
static void print_code (RTX_CODE)
static void gen_peephole ()
static void match_rtx ()
static void print_path ()
static void print_code ()
int main (int, char **)
int main ()


static int max_opno
static int n_operands

Function Documentation

static void gen_peephole ( rtx  ,
static void gen_peephole ( )
         Walk the insn's pattern, remembering at all times the path
         down to the walking point.  
     We get this far if the pattern matches.
     Now test the extra condition.  
     If that matches, construct new pattern and put it in the first insn.
     This new pattern will never be matched.
     It exists only so that insn-extract can get the operands back.
     So use a simple regular form: a PARALLEL containing a vector
     of all the operands.  
     Record this define_peephole's insn code in the insn,
     as if it had been recognized to match this.  
     Delete the remaining insns.  
     See reload1.c for insertion of NOTE which guarantees that this
     cannot be zero.  
int main ( int  ,
char **   
int main ( )
     Early out: no peepholes for insns followed by barriers.  
     Read the machine description.  
static void match_rtx ( rtx  ,
struct link ,
static void match_rtx ( )
             Make sure that at run time `x' is the RTX we want to test.  
             Make sure that at run time `x' is the RTX we want to test.  
             Make sure that at run time `x' is the RTX we want to test.  
static void print_code ( RTX_CODE  )
static void print_code ( )
static void print_path ( struct link )
static void print_path ( )
   Given a PATH, representing a path down the instruction's
   pattern from the root to a certain point, output code to
   evaluate to the rtx at that point.  

Variable Documentation

int max_opno
int n_operands
   Number of operands used in current peephole definition.  

Referenced by default_different_addr_displacement_p().