Lines Matching defs:BO
7890 ok = BO[2] | ((CTR[0] != 0) ^ BO[1])
7894 static IRExpr* /* :: Ity_I32 */ branch_ctr_ok( UInt BO )
7899 if ((BO >> 2) & 1) { // independent of ctr
7902 if ((BO >> 1) & 1) { // ctr == 0 ?
7919 Branch helper function cond_ok = BO[4] | (CR[BI] == BO[3])
7923 static IRExpr* /* :: Ity_I32 */ branch_cond_ok( UInt BO, UInt BI )
7929 if ((BO >> 4) & 1) {
7932 // ok = (CR[BI] == BO[3]) Note, the following relies on
7937 if ((BO >> 3) & 1) {
7962 UChar BO = ifieldRegDS(theInstr);
7983 DIP("bcl 0x%x, 0x%x (a.k.a mr lr,cia+4)\n", BO, BI);
8030 flag_LK ? "l" : "", flag_AA ? "a" : "", BO, BI, BD);
8032 if (!(BO & 0x4)) {
8043 assign( ctr_ok, branch_ctr_ok( BO ) );
8044 assign( cond_ok, branch_cond_ok( BO, BI ) );
8077 if ((BO & 0x4) == 0) { // "decr and test CTR" option invalid
8078 vex_printf("dis_int_branch(ppc)(bcctr,BO)\n");
8081 DIP("bcctr%s 0x%x, 0x%x\n", flag_LK ? "l" : "", BO, BI);
8083 assign( cond_ok, branch_cond_ok( BO, BI ) );
8108 if ((BO & 0x14 /* 1z1zz */) == 0x14 && flag_LK == 0) {
8112 DIP("bclr%s 0x%x, 0x%x\n", flag_LK ? "l" : "", BO, BI);
8115 if (!(BO & 0x4)) {
8122 assign( ctr_ok, branch_ctr_ok( BO ) );
8123 assign( cond_ok, branch_cond_ok( BO, BI ) );