Open64 (mfef90, whirl2f, and IR tools)  TAG: version-openad; SVN changeset: 916
newinst.h File Reference

Go to the source code of this file.

Defines

#define fli_op   0x26
#define bcf_op   0x00
#define bct_op   0x01
#define bcfl_op   0x02
#define bctl_op   0x03
#define S_FMT   (cop_op+s_fmt)
#define D_FMT   (cop_op+d_fmt)
#define W_FMT   (cop_op+w_fmt)
#define E_FMT   (cop_op+e_fmt)
#define L_FMT   (cop_op+l_fmt)
#define Q_FMT   (cop_op+q_fmt)
#define PS_FMT   (cop_op+ps_fmt)
#define CASE_STORES
#define CASE_LOADS
#define CASE_FCMP
#define _is_inst_move(_inst)
#define _is_inst_uncondbr(_inst)
#define _is_inst_branch_and_link(_inst)
#define _is_inst_branch(_inst)

Define Documentation

#define _is_inst_branch (   _inst)
Value:
(_inst.i_format.opcode == beq_op ||  \
     _inst.i_format.opcode == bne_op ||  \
     _inst.i_format.opcode == blez_op ||  \
     _inst.i_format.opcode == bgtz_op ||  \
     _inst.i_format.opcode == beql_op ||  \
     _inst.i_format.opcode == bnel_op ||  \
     _inst.i_format.opcode == blezl_op ||  \
     _inst.i_format.opcode == bgtzl_op ||  \
     (_inst.i_format.opcode == bcond_op && \
      (_inst.i_format.rt == bltz_op ||  \
       _inst.i_format.rt == bgez_op ||  \
       _inst.i_format.rt == bltzl_op ||  \
       _inst.i_format.rt == bgezl_op ||  \
       _inst.i_format.rt == bltzal_op ||  \
       _inst.i_format.rt == bgezal_op ||  \
       _inst.i_format.rt == bltzall_op ||  \
       _inst.i_format.rt == bgezall_op)) ||  \
     ((_inst.i_format.opcode == cop0_op ||  \
       _inst.i_format.opcode == cop1_op ||  \
       _inst.i_format.opcode == cop3_op ||  \
       _inst.i_format.opcode == cop2_op) &&  \
      _inst.i_format.rs == bc_op))

Definition at line 133 of file newinst.h.

#define _is_inst_branch_and_link (   _inst)
Value:
(_inst.i_format.opcode == bcond_op &&  \
     (_inst.i_format.rt == bltzal_op ||  \
      _inst.i_format.rt == bgezal_op ||  \
      _inst.i_format.rt == bltzall_op ||  \
      _inst.i_format.rt == bgezall_op))

Definition at line 125 of file newinst.h.

#define _is_inst_move (   _inst)
Value:
(_inst.r_format.opcode == spec_op &&  \
     (_inst.r_format.func == addu_op ||  \
      _inst.r_format.func == daddu_op ||  \
      _inst.r_format.func == or_op) &&  \
     _inst.r_format.rt == 0)

Definition at line 112 of file newinst.h.

#define _is_inst_uncondbr (   _inst)
Value:
(_inst.i_format.opcode == beq_op &&  \
     _inst.i_format.rs == 0 &&  \
     _inst.i_format.rt == 0)

Definition at line 119 of file newinst.h.

#define bcf_op   0x00

Definition at line 41 of file newinst.h.

#define bcfl_op   0x02

Definition at line 43 of file newinst.h.

#define bct_op   0x01

Definition at line 42 of file newinst.h.

#define bctl_op   0x03

Definition at line 44 of file newinst.h.

#define CASE_FCMP
Value:
case fcmp_op+0: \
        case fcmp_op+1: \
        case fcmp_op+2: \
        case fcmp_op+3: \
        case fcmp_op+4: \
        case fcmp_op+5: \
        case fcmp_op+6: \
        case fcmp_op+7: \
        case fcmp_op+8: \
        case fcmp_op+9: \
        case fcmp_op+10: \
        case fcmp_op+11: \
        case fcmp_op+12: \
        case fcmp_op+13: \
        case fcmp_op+14: \
        case fcmp_op+15

Definition at line 93 of file newinst.h.

#define CASE_LOADS
Value:
case lb_op: \
        case lbu_op: \
        case lh_op: \
        case lhu_op: \
        case lw_op: \
        case lwu_op: \
        case lwl_op: \
        case lwr_op: \
        case ll_op: \
        case ld_op: \
        case ldl_op: \
        case ldr_op: \
        case lld_op: \
        case lwc1_op: \
        case ldc1_op: \
        case lwc2_op: \
        case ldc2_op

Definition at line 73 of file newinst.h.

#define CASE_STORES
Value:
case sb_op: \
        case sh_op: \
        case sw_op: \
        case sc_op: \
        case swl_op: \
        case swr_op: \
        case sd_op: \
        case swc1_op: \
        case sdc1_op: \
        case swc2_op: \
        case sdc2_op: \
        case sdl_op: \
        case sdr_op: \
        case scd_op

Definition at line 55 of file newinst.h.

#define D_FMT   (cop_op+d_fmt)

Definition at line 48 of file newinst.h.

#define E_FMT   (cop_op+e_fmt)

Definition at line 50 of file newinst.h.

#define fli_op   0x26

Definition at line 37 of file newinst.h.

#define L_FMT   (cop_op+l_fmt)

Definition at line 51 of file newinst.h.

#define PS_FMT   (cop_op+ps_fmt)

Definition at line 53 of file newinst.h.

#define Q_FMT   (cop_op+q_fmt)

Definition at line 52 of file newinst.h.

#define S_FMT   (cop_op+s_fmt)

Definition at line 47 of file newinst.h.

#define W_FMT   (cop_op+w_fmt)

Definition at line 49 of file newinst.h.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines