Lines Matching refs:RA
1586 (ins (memri $D, $RA):$addr), "bctrl\n\tlwz 2, $addr", IIC_BrB,
1595 (ins (memri $D, $RA):$addr), "bctrl\n\tlwz 2, $addr", IIC_BrB,
1682 def DCBA : DCB_Form<758, 0, (outs), (ins (memrr $RA, $RB):$addr), "dcba $addr",
1685 def DCBI : DCB_Form<470, 0, (outs), (ins (memrr $RA, $RB):$addr), "dcbi $addr",
1688 def DCBST : DCB_Form<54, 0, (outs), (ins (memrr $RA, $RB):$addr), "dcbst $addr",
1691 def DCBZ : DCB_Form<1014, 0, (outs), (ins (memrr $RA, $RB):$addr), "dcbz $addr",
1694 def DCBZL : DCB_Form<1014, 1, (outs), (ins (memrr $RA, $RB):$addr), "dcbzl $addr",
1698 def DCBF : DCB_Form_hint<86, (outs), (ins u3imm:$TH, (memrr $RA, $RB):$addr),
1703 def DCBT : DCB_Form_hint<278, (outs), (ins u5imm:$TH, (memrr $RA, $RB):$addr),
1706 def DCBTST : DCB_Form_hint<246, (outs), (ins u5imm:$TH, (memrr $RA, $RB):$addr),
1711 def ICBLC : XForm_icbt<31, 230, (outs), (ins u4imm:$CT, (memrr $RA, $RB):$addr),
1713 def ICBLQ : XForm_icbt<31, 198, (outs), (ins u4imm:$CT, (memrr $RA, $RB):$addr),
1715 def ICBT : XForm_icbt<31, 22, (outs), (ins u4imm:$CT, (memrr $RA, $RB):$addr),
1717 def ICBTLS : XForm_icbt<31, 486, (outs), (ins u4imm:$CT, (memrr $RA, $RB):$addr),
1867 def LBARX : XForm_1_memOp<31, 52, (outs gprc:$RST), (ins (memrr $RA, $RB):$addr),
1871 def LHARX : XForm_1_memOp<31, 116, (outs gprc:$RST), (ins (memrr $RA, $RB):$addr),
1875 def LWARX : XForm_1_memOp<31, 20, (outs gprc:$RST), (ins (memrr $RA, $RB):$addr),
1880 def LBARXL : XForm_1_memOp<31, 52, (outs gprc:$RST), (ins (memrr $RA, $RB):$addr),
1884 def LHARXL : XForm_1_memOp<31, 116, (outs gprc:$RST), (ins (memrr $RA, $RB):$addr),
1888 def LWARXL : XForm_1_memOp<31, 20, (outs gprc:$RST), (ins (memrr $RA, $RB):$addr),
1894 def LWAT : X_RD5_RS5_IM5<31, 582, (outs gprc:$RST), (ins gprc:$RA, u5imm:$RB),
1895 "lwat $RST, $RA, $RB", IIC_LdStLoad>,
1900 def STBCX : XForm_1_memOp<31, 694, (outs), (ins gprc:$RST, (memrr $RA, $RB):$addr),
1904 def STHCX : XForm_1_memOp<31, 726, (outs), (ins gprc:$RST, (memrr $RA, $RB):$addr),
1908 def STWCX : XForm_1_memOp<31, 150, (outs), (ins gprc:$RST, (memrr $RA, $RB):$addr),
1913 def STWAT : X_RD5_RS5_IM5<31, 710, (outs), (ins gprc:$RST, gprc:$RA, u5imm:$RB),
1914 "stwat $RST, $RA, $RB", IIC_LdStStore>,
1920 def TWI : DForm_base<3, (outs), (ins u5imm:$RST, gprc:$RA, s16imm:$D, variable_ops),
1921 "twi $RST, $RA, $D", IIC_IntTrapW, []>;
1922 def TW : XForm_1<31, 4, (outs), (ins u5imm:$RST, gprc:$RA, gprc:$RB, variable_ops),
1923 "tw $RST, $RA, $RB", IIC_IntTrapW, []>;
1924 def TDI : DForm_base<2, (outs), (ins u5imm:$RST, g8rc:$RA, s16imm:$D, variable_ops),
1925 "tdi $RST, $RA, $D", IIC_IntTrapD, []>;
1926 def TD : XForm_1<31, 68, (outs), (ins u5imm:$RST, g8rc:$RA, g8rc:$RB, variable_ops),
1927 "td $RST, $RA, $RB", IIC_IntTrapD, []>;
1929 def POPCNTB : XForm_11<31, 122, (outs gprc:$RA), (ins gprc:$RST),
1930 "popcntb $RA, $RST", IIC_IntGeneral,
1931 [(set i32:$RA, (int_ppc_popcntb i32:$RST))]>;
1933 def CDTBCD : XForm_11<31, 282, (outs gprc:$RA), (ins gprc:$RST),
1934 "cdtbcd $RA, $RST", IIC_IntGeneral, []>;
1935 def CBCDTD : XForm_11<31, 314, (outs gprc:$RA), (ins gprc:$RST),
1936 "cbcdtd $RA, $RST", IIC_IntGeneral, []>;
1938 def ADDG6S : XOForm_1<31, 74, 0, (outs gprc:$RT), (ins gprc:$RA, gprc:$RB),
1939 "addg6s $RT, $RA, $RB", IIC_IntGeneral, []>;
1947 def LBZ : DForm_1<34, (outs gprc:$RST), (ins (memri $D, $RA):$addr),
1951 def LHA : DForm_1<42, (outs gprc:$RST), (ins (memri $D, $RA):$addr),
1955 def LHZ : DForm_1<40, (outs gprc:$RST), (ins (memri $D, $RA):$addr),
1959 def LWZ : DForm_1<32, (outs gprc:$RST), (ins (memri $D, $RA):$addr),
1964 def LFS : DForm_1<48, (outs f4rc:$RST), (ins (memri $D, $RA):$addr),
1967 def LFD : DForm_1<50, (outs f8rc:$RST), (ins (memri $D, $RA):$addr),
1975 def LBZU : DForm_1<35, (outs gprc:$RST, ptr_rc_nor0:$ea_result), (ins (memri $D, $RA):$addr),
1977 []>, RegConstraint<"$RA = $ea_result">;
1979 def LHAU : DForm_1<43, (outs gprc:$RST, ptr_rc_nor0:$ea_result), (ins (memri $D, $RA):$addr),
1984 def LHZU : DForm_1<41, (outs gprc:$RST, ptr_rc_nor0:$ea_result), (ins (memri $D, $RA):$addr),
1989 def LWZU : DForm_1<33, (outs gprc:$RST, ptr_rc_nor0:$ea_result), (ins (memri $D, $RA):$addr),
1995 def LFSU : DForm_1<49, (outs f4rc:$RST, ptr_rc_nor0:$ea_result), (ins (memri $D, $RA):$addr),
2000 def LFDU : DForm_1<51, (outs f8rc:$RST, ptr_rc_nor0:$ea_result), (ins (memri $D, $RA):$addr),
2009 (ins (memrr $RA, $RB):$addr),
2015 (ins (memrr $RA, $RB):$addr),
2021 (ins (memrr $RA, $RB):$addr),
2027 (ins (memrr $RA, $RB):$addr),
2034 (ins (memrr $RA, $RB):$addr),
2040 (ins (memrr $RA, $RB):$addr),
2051 def LBZX : XForm_1_memOp<31, 87, (outs gprc:$RST), (ins (memrr $RA, $RB):$addr),
2055 def LHAX : XForm_1_memOp<31, 343, (outs gprc:$RST), (ins (memrr $RA, $RB):$addr),
2059 def LHZX : XForm_1_memOp<31, 279, (outs gprc:$RST), (ins (memrr $RA, $RB):$addr),
2063 def LWZX : XForm_1_memOp<31, 23, (outs gprc:$RST), (ins (memrr $RA, $RB):$addr),
2066 def LHBRX : XForm_1_memOp<31, 790, (outs gprc:$RST), (ins (memrr $RA, $RB):$addr),
2069 def LWBRX : XForm_1_memOp<31, 534, (outs gprc:$RST), (ins (memrr $RA, $RB):$addr),
2074 def LFSX : XForm_25_memOp<31, 535, (outs f4rc:$RST), (ins (memrr $RA, $RB):$addr),
2077 def LFDX : XForm_25_memOp<31, 599, (outs f8rc:$RST), (ins (memrr $RA, $RB):$addr),
2081 def LFIWAX : XForm_25_memOp<31, 855, (outs f8rc:$RST), (ins (memrr $RA, $RB):$addr),
2084 def LFIWZX : XForm_25_memOp<31, 887, (outs f8rc:$RST), (ins (memrr $RA, $RB):$addr),
2092 def LMW : DForm_1<46, (outs gprc:$RST), (ins (memri $D, $RA):$src),
2101 def STB : DForm_1<38, (outs), (ins gprc:$RST, (memri $D, $RA):$dst),
2104 def STH : DForm_1<44, (outs), (ins gprc:$RST, (memri $D, $RA):$dst),
2107 def STW : DForm_1<36, (outs), (ins gprc:$RST, (memri $D, $RA):$dst),
2111 def STFS : DForm_1<52, (outs), (ins f4rc:$RST, (memri $D, $RA):$dst),
2114 def STFD : DForm_1<54, (outs), (ins f8rc:$RST, (memri $D, $RA):$dst),
2122 def STBU : DForm_1<39, (outs ptr_rc_nor0:$ea_res), (ins gprc:$RST, (memri $D, $RA):$dst),
2125 def STHU : DForm_1<45, (outs ptr_rc_nor0:$ea_res), (ins gprc:$RST, (memri $D, $RA):$dst),
2128 def STWU : DForm_1<37, (outs ptr_rc_nor0:$ea_res), (ins gprc:$RST, (memri $D, $RA):$dst),
2132 def STFSU : DForm_1<53, (outs ptr_rc_nor0:$ea_res), (ins f4rc:$RST, (memri $D, $RA):$dst),
2135 def STFDU : DForm_1<55, (outs ptr_rc_nor0:$ea_res), (ins f8rc:$RST, (memri $D, $RA):$dst),
2157 def STBX : XForm_8_memOp<31, 215, (outs), (ins gprc:$RST, (memrr $RA, $RB):$addr),
2161 def STHX : XForm_8_memOp<31, 407, (outs), (ins gprc:$RST, (memrr $RA, $RB):$addr),
2165 def STWX : XForm_8_memOp<31, 151, (outs), (ins gprc:$RST, (memrr $RA, $RB):$addr),
2170 def STHBRX: XForm_8_memOp<31, 918, (outs), (ins gprc:$RST, (memrr $RA, $RB):$addr),
2174 def STWBRX: XForm_8_memOp<31, 662, (outs), (ins gprc:$RST, (memrr $RA, $RB):$addr),
2180 def STFIWX: XForm_28_memOp<31, 983, (outs), (ins f8rc:$RST, (memrr $RA, $RB):$addr),
2184 def STFSX : XForm_28_memOp<31, 663, (outs), (ins f4rc:$RST, (memrr $RA, $RB):$addr),
2187 def STFDX : XForm_28_memOp<31, 727, (outs), (ins f8rc:$RST, (memrr $RA, $RB):$addr),
2196 (ins gprc:$RST, (memrr $RA, $RB):$addr),
2202 (ins gprc:$RST, (memrr $RA, $RB):$addr),
2208 (ins gprc:$RST, (memrr $RA, $RB):$addr),
2215 (ins f4rc:$RST, (memrr $RA, $RB):$addr),
2221 (ins f8rc:$RST, (memrr $RA, $RB):$addr),
2247 def STMW : DForm_1<47, (outs), (ins gprc:$RST, (memri $D, $RA):$dst),
2283 def ADDI : DForm_2<14, (outs gprc:$RST), (ins gprc_nor0:$RA, s16imm:$D),
2284 "addi $RST, $RA, $D", IIC_IntSimple,
2285 [(set i32:$RST, (add i32:$RA, imm32SExt16:$D))]>;
2288 def ADDIC : DForm_2<12, (outs gprc:$RST), (ins gprc:$RA, s16imm:$D),
2289 "addic $RST, $RA, $D", IIC_IntGeneral,
2290 [(set i32:$RST, (addc i32:$RA, imm32SExt16:$D))]>,
2293 def ADDIC_rec : DForm_2<13, (outs gprc:$RST), (ins gprc:$RA, s16imm:$D),
2294 "addic. $RST, $RA, $D", IIC_IntGeneral,
2297 def ADDIS : DForm_2<15, (outs gprc:$RST), (ins gprc_nor0:$RA, s17imm:$D),
2298 "addis $RST, $RA, $D", IIC_IntSimple,
2299 [(set i32:$RST, (add i32:$RA, imm16ShiftedSExt:$D))]>;
2301 def LA : DForm_2<14, (outs gprc:$RST), (ins gprc_nor0:$RA, s16imm:$D),
2302 "la $RST, $D($RA)", IIC_IntGeneral,
2303 [(set i32:$RST, (add i32:$RA,
2305 def MULLI : DForm_2< 7, (outs gprc:$RST), (ins gprc:$RA, s16imm:$D),
2306 "mulli $RST, $RA, $D", IIC_IntMulLI,
2307 [(set i32:$RST, (mul i32:$RA, imm32SExt16:$D))]>;
2309 def SUBFIC : DForm_2< 8, (outs gprc:$RST), (ins gprc:$RA, s16imm:$D),
2310 "subfic $RST, $RA, $D", IIC_IntGeneral,
2311 [(set i32:$RST, (subc imm32SExt16:$D, i32:$RA))]>;
2328 def ANDI_rec : DForm_4<28, (outs gprc:$RA), (ins gprc:$RST, u16imm:$D),
2329 "andi. $RA, $RST, $D", IIC_IntGeneral,
2330 [(set i32:$RA, (and i32:$RST, immZExt16:$D))]>,
2332 def ANDIS_rec : DForm_4<29, (outs gprc:$RA), (ins gprc:$RST, u16imm:$D),
2333 "andis. $RA, $RST, $D", IIC_IntGeneral,
2334 [(set i32:$RA, (and i32:$RST, imm16ShiftedZExt:$D))]>,
2337 def ORI : DForm_4<24, (outs gprc:$RA), (ins gprc:$RST, u16imm:$D),
2338 "ori $RA, $RST, $D", IIC_IntSimple,
2339 [(set i32:$RA, (or i32:$RST, immZExt16:$D))]>;
2340 def ORIS : DForm_4<25, (outs gprc:$RA), (ins gprc:$RST, u16imm:$D),
2341 "oris $RA, $RST, $D", IIC_IntSimple,
2342 [(set i32:$RA, (or i32:$RST, imm16ShiftedZExt:$D))]>;
2343 def XORI : DForm_4<26, (outs gprc:$RA), (ins gprc:$RST, u16imm:$D),
2344 "xori $RA, $RST, $D", IIC_IntSimple,
2345 [(set i32:$RA, (xor i32:$RST, immZExt16:$D))]>;
2346 def XORIS : DForm_4<27, (outs gprc:$RA), (ins gprc:$RST, u16imm:$D),
2347 "xoris $RA, $RST, $D", IIC_IntSimple,
2348 [(set i32:$RA, (xor i32:$RST, imm16ShiftedZExt:$D))]>;
2361 def CMPWI : DForm_5_ext<11, (outs crrc:$BF), (ins gprc:$RA, s16imm:$D),
2362 "cmpwi $BF, $RA, $D", IIC_IntCompare>;
2363 def CMPLWI : DForm_6_ext<10, (outs crrc:$BF), (ins gprc:$RA, u16imm:$D),
2364 "cmplwi $BF, $RA, $D", IIC_IntCompare>;
2366 (ins u1imm:$L, gprc:$RA, gprc:$RB),
2367 "cmprb $BF, $L, $RA, $RB", IIC_IntCompare, []>,
2374 defm NAND : XForm_6r<31, 476, (outs gprc:$RA), (ins gprc:$RST, gprc:$RB),
2375 "nand", "$RA, $RST, $RB", IIC_IntSimple,
2376 [(set i32:$RA, (not (and i32:$RST, i32:$RB)))]>;
2377 defm AND : XForm_6r<31, 28, (outs gprc:$RA), (ins gprc:$RST, gprc:$RB),
2378 "and", "$RA, $RST, $RB", IIC_IntSimple,
2379 [(set i32:$RA, (and i32:$RST, i32:$RB))]>;
2381 defm ANDC : XForm_6r<31, 60, (outs gprc:$RA), (ins gprc:$RST, gprc:$RB),
2382 "andc", "$RA, $RST, $RB", IIC_IntSimple,
2383 [(set i32:$RA, (and i32:$RST, (not i32:$RB)))]>;
2385 defm OR : XForm_6r<31, 444, (outs gprc:$RA), (ins gprc:$RST, gprc:$RB),
2386 "or", "$RA, $RST, $RB", IIC_IntSimple,
2387 [(set i32:$RA, (or i32:$RST, i32:$RB))]>;
2388 defm NOR : XForm_6r<31, 124, (outs gprc:$RA), (ins gprc:$RST, gprc:$RB),
2389 "nor", "$RA, $RST, $RB", IIC_IntSimple,
2390 [(set i32:$RA, (not (or i32:$RST, i32:$RB)))]>;
2392 defm ORC : XForm_6r<31, 412, (outs gprc:$RA), (ins gprc:$RST, gprc:$RB),
2393 "orc", "$RA, $RST, $RB", IIC_IntSimple,
2394 [(set i32:$RA, (or i32:$RST, (not i32:$RB)))]>;
2396 defm EQV : XForm_6r<31, 284, (outs gprc:$RA), (ins gprc:$RST, gprc:$RB),
2397 "eqv", "$RA, $RST, $RB", IIC_IntSimple,
2398 [(set i32:$RA, (not (xor i32:$RST, i32:$RB)))]>;
2399 defm XOR : XForm_6r<31, 316, (outs gprc:$RA), (ins gprc:$RST, gprc:$RB),
2400 "xor", "$RA, $RST, $RB", IIC_IntSimple,
2401 [(set i32:$RA, (xor i32:$RST, i32:$RB))]>;
2403 defm SLW : XForm_6r<31, 24, (outs gprc:$RA), (ins gprc:$RST, gprc:$RB),
2404 "slw", "$RA, $RST, $RB", IIC_IntGeneral,
2405 [(set i32:$RA, (PPCshl i32:$RST, i32:$RB))]>, ZExt32To64;
2406 defm SRW : XForm_6r<31, 536, (outs gprc:$RA), (ins gprc:$RST, gprc:$RB),
2407 "srw", "$RA, $RST, $RB", IIC_IntGeneral,
2408 [(set i32:$RA, (PPCsrl i32:$RST, i32:$RB))]>, ZExt32To64;
2409 defm SRAW : XForm_6rc<31, 792, (outs gprc:$RA), (ins gprc:$RST, gprc:$RB),
2410 "sraw", "$RA, $RST, $RB", IIC_IntShift,
2411 [(set i32:$RA, (PPCsra i32:$RST, i32:$RB))]>, SExt32To64;
2424 defm SRAWI : XForm_10rc<31, 824, (outs gprc:$RA), (ins gprc:$RST, u5imm:$RB),
2425 "srawi", "$RA, $RST, $RB", IIC_IntShift,
2426 [(set i32:$RA, (sra i32:$RST, (i32 imm:$RB)))]>,
2428 defm CNTLZW : XForm_11r<31, 26, (outs gprc:$RA), (ins gprc:$RST),
2429 "cntlzw", "$RA, $RST", IIC_IntGeneral,
2430 [(set i32:$RA, (ctlz i32:$RST))]>, ZExt32To64;
2431 defm CNTTZW : XForm_11r<31, 538, (outs gprc:$RA), (ins gprc:$RST),
2432 "cnttzw", "$RA, $RST", IIC_IntGeneral,
2433 [(set i32:$RA, (cttz i32:$RST))]>, Requires<[IsISA3_0]>,
2435 defm EXTSB : XForm_11r<31, 954, (outs gprc:$RA), (ins gprc:$RST),
2436 "extsb", "$RA, $RST", IIC_IntSimple,
2437 [(set i32:$RA, (sext_inreg i32:$RST, i8))]>, SExt32To64;
2438 defm EXTSH : XForm_11r<31, 922, (outs gprc:$RA), (ins gprc:$RST),
2439 "extsh", "$RA, $RST", IIC_IntSimple,
2440 [(set i32:$RA, (sext_inreg i32:$RST, i16))]>, SExt32To64;
2443 def CMPB : XForm_6<31, 508, (outs gprc:$RA), (ins gprc:$RST, gprc:$RB),
2444 "cmpb $RA, $RST, $RB", IIC_IntGeneral,
2445 [(set i32:$RA, (PPCcmpb i32:$RST, i32:$RB))]>;
2448 def CMPW : XForm_16_ext<31, 0, (outs crrc:$BF), (ins gprc:$RA, gprc:$RB),
2449 "cmpw $BF, $RA, $RB", IIC_IntCompare>;
2450 def CMPLW : XForm_16_ext<31, 32, (outs crrc:$BF), (ins gprc:$RA, gprc:$RB),
2451 "cmplw $BF, $RA, $RB", IIC_IntCompare>;
2456 def FCMPUS : XForm_17<63, 0, (outs crrc:$BF), (ins f4rc:$RA, f4rc:$RB),
2457 "fcmpu $BF, $RA, $RB", IIC_FPCompare>;
2458 def FCMPOS : XForm_17<63, 32, (outs crrc:$BF), (ins f4rc:$RA, f4rc:$RB),
2459 "fcmpo $BF, $RA, $RB", IIC_FPCompare>;
2461 def FCMPUD : XForm_17<63, 0, (outs crrc:$BF), (ins f8rc:$RA, f8rc:$RB),
2462 "fcmpu $BF, $RA, $RB", IIC_FPCompare>;
2463 def FCMPOD : XForm_17<63, 32, (outs crrc:$BF), (ins f8rc:$RA, f8rc:$RB),
2464 "fcmpo $BF, $RA, $RB", IIC_FPCompare>;
2468 def FTDIV: XForm_17<63, 128, (outs crrc:$BF), (ins f8rc:$RA, f8rc:$RB),
2469 "ftdiv $BF, $RA, $RB", IIC_FPCompare>;
2566 defm FCPSGNS : XForm_28r<63, 8, (outs f4rc:$RST), (ins f4rc:$RA, f4rc:$RB),
2567 "fcpsgn", "$RST, $RA, $RB", IIC_FPGeneral,
2568 [(set f32:$RST, (fcopysign f32:$RB, f32:$RA))]>;
2570 defm FCPSGND : XForm_28r<63, 8, (outs f8rc:$RST), (ins f8rc:$RA, f8rc:$RB),
2571 "fcpsgn", "$RST, $RA, $RB", IIC_FPGeneral,
2572 [(set f64:$RST, (fcopysign f64:$RB, f64:$RA))]>;
2883 def MODSW : XForm_8<31, 779, (outs gprc:$RST), (ins gprc:$RA, gprc:$RB),
2884 "modsw $RST, $RA, $RB", IIC_IntDivW,
2885 [(set i32:$RST, (srem i32:$RA, i32:$RB))]>;
2886 def MODUW : XForm_8<31, 267, (outs gprc:$RST), (ins gprc:$RA, gprc:$RB),
2887 "moduw $RST, $RA, $RB", IIC_IntDivW,
2888 [(set i32:$RST, (urem i32:$RA, i32:$RB))]>;
2891 (ins gprc:$RA, gprc:$RB, u2imm:$CY),
2892 "addex $RT, $RA, $RB, $CY", IIC_IntGeneral, []>;
2898 defm ADD4 : XOForm_1rx<31, 266, (outs gprc:$RT), (ins gprc:$RA, gprc:$RB),
2899 "add", "$RT, $RA, $RB", IIC_IntSimple,
2900 [(set i32:$RT, (add i32:$RA, i32:$RB))]>;
2902 def ADD4TLS : XOForm_1<31, 266, 0, (outs gprc:$RT), (ins gprc:$RA, tlsreg32:$RB),
2903 "add $RT, $RA, $RB", IIC_IntSimple,
2904 [(set i32:$RT, (add i32:$RA, tglobaltlsaddr:$RB))]>;
2906 defm ADDC : XOForm_1rc<31, 10, 0, (outs gprc:$RT), (ins gprc:$RA, gprc:$RB),
2907 "addc", "$RT, $RA, $RB", IIC_IntGeneral,
2908 [(set i32:$RT, (addc i32:$RA, i32:$RB))]>,
2911 defm DIVW : XOForm_1rcr<31, 491, 0, (outs gprc:$RT), (ins gprc:$RA, gprc:$RB),
2912 "divw", "$RT, $RA, $RB", IIC_IntDivW,
2913 [(set i32:$RT, (sdiv i32:$RA, i32:$RB))]>;
2914 defm DIVWU : XOForm_1rcr<31, 459, 0, (outs gprc:$RT), (ins gprc:$RA, gprc:$RB),
2915 "divwu", "$RT, $RA, $RB", IIC_IntDivW,
2916 [(set i32:$RT, (udiv i32:$RA, i32:$RB))]>;
2917 defm DIVWE : XOForm_1rcr<31, 427, 0, (outs gprc:$RT), (ins gprc:$RA, gprc:$RB),
2918 "divwe", "$RT, $RA, $RB", IIC_IntDivW,
2919 [(set i32:$RT, (int_ppc_divwe gprc:$RA, gprc:$RB))]>,
2921 defm DIVWEU : XOForm_1rcr<31, 395, 0, (outs gprc:$RT), (ins gprc:$RA, gprc:$RB),
2922 "divweu", "$RT, $RA, $RB", IIC_IntDivW,
2923 [(set i32:$RT, (int_ppc_divweu gprc:$RA, gprc:$RB))]>,
2926 defm MULHW : XOForm_1r<31, 75, 0, (outs gprc:$RT), (ins gprc:$RA, gprc:$RB),
2927 "mulhw", "$RT, $RA, $RB", IIC_IntMulHW,
2928 [(set i32:$RT, (mulhs i32:$RA, i32:$RB))]>;
2929 defm MULHWU : XOForm_1r<31, 11, 0, (outs gprc:$RT), (ins gprc:$RA, gprc:$RB),
2930 "mulhwu", "$RT, $RA, $RB", IIC_IntMulHWU,
2931 [(set i32:$RT, (mulhu i32:$RA, i32:$RB))]>;
2932 defm MULLW : XOForm_1rx<31, 235, (outs gprc:$RT), (ins gprc:$RA, gprc:$RB),
2933 "mullw", "$RT, $RA, $RB", IIC_IntMulHW,
2934 [(set i32:$RT, (mul i32:$RA, i32:$RB))]>;
2936 defm SUBF : XOForm_1rx<31, 40, (outs gprc:$RT), (ins gprc:$RA, gprc:$RB),
2937 "subf", "$RT, $RA, $RB", IIC_IntGeneral,
2938 [(set i32:$RT, (sub i32:$RB, i32:$RA))]>;
2939 defm SUBFC : XOForm_1rc<31, 8, 0, (outs gprc:$RT), (ins gprc:$RA, gprc:$RB),
2940 "subfc", "$RT, $RA, $RB", IIC_IntGeneral,
2941 [(set i32:$RT, (subc i32:$RB, i32:$RA))]>,
2943 defm NEG : XOForm_3r<31, 104, 0, (outs gprc:$RT), (ins gprc:$RA),
2944 "neg", "$RT, $RA", IIC_IntSimple,
2945 [(set i32:$RT, (ineg i32:$RA))]>;
2948 defm ADDE : XOForm_1rc<31, 138, 0, (outs gprc:$RT), (ins gprc:$RA, gprc:$RB),
2949 "adde", "$RT, $RA, $RB", IIC_IntGeneral,
2950 [(set i32:$RT, (adde i32:$RA, i32:$RB))]>;
2951 defm ADDME : XOForm_3rc<31, 234, 0, (outs gprc:$RT), (ins gprc:$RA),
2952 "addme", "$RT, $RA", IIC_IntGeneral,
2953 [(set i32:$RT, (adde i32:$RA, -1))]>;
2954 defm ADDZE : XOForm_3rc<31, 202, 0, (outs gprc:$RT), (ins gprc:$RA),
2955 "addze", "$RT, $RA", IIC_IntGeneral,
2956 [(set i32:$RT, (adde i32:$RA, 0))]>;
2957 defm SUBFE : XOForm_1rc<31, 136, 0, (outs gprc:$RT), (ins gprc:$RA, gprc:$RB),
2958 "subfe", "$RT, $RA, $RB", IIC_IntGeneral,
2959 [(set i32:$RT, (sube i32:$RB, i32:$RA))]>;
2960 defm SUBFME : XOForm_3rc<31, 232, 0, (outs gprc:$RT), (ins gprc:$RA),
2961 "subfme", "$RT, $RA", IIC_IntGeneral,
2962 [(set i32:$RT, (sube -1, i32:$RA))]>;
2963 defm SUBFZE : XOForm_3rc<31, 200, 0, (outs gprc:$RT), (ins gprc:$RA),
2964 "subfze", "$RT, $RA", IIC_IntGeneral,
2965 [(set i32:$RT, (sube 0, i32:$RA))]>;
3077 (outs gprc:$RT), (ins gprc_nor0:$RA, gprc:$RB, crbitrc:$COND),
3078 "isel $RT, $RA, $RB, $COND", IIC_IntISEL,
3087 defm RLWIMI : MForm_2r<20, (outs gprc:$RA),
3089 u5imm:$ME), "rlwimi", "$RA, $RS, $SH, $MB, $ME",
3091 RegConstraint<"$RAi = $RA">, NoEncode<"$RAi">;
3095 (outs gprc:$RA), (ins gprc:$RS, u5imm:$SH, u5imm:$MB, u5imm:$ME),
3096 "rlwinm $RA, $RS, $SH, $MB, $ME", IIC_IntGeneral,
3100 (outs gprc:$RA), (ins gprc:$RS, u5imm:$SH, u5imm:$MB, u5imm:$ME),
3101 "rlwinm. $RA, $RS, $SH, $MB, $ME", IIC_IntGeneral,
3104 defm RLWNM : MForm_1r<23, (outs gprc:$RA),
3106 "rlwnm", "$RA, $RS, $RB, $MB, $ME", IIC_IntGeneral,
4222 (ins gprc:$RA, u5imm:$RB),
4223 "lswi $RST, $RA, $RB", IIC_LdStLoad, []>;
4228 (ins gprc:$RST, gprc:$RA, u5imm:$RB),
4229 "stswi $RST, $RA, $RB", IIC_LdStLoad, []>;
4234 def ICBI : XForm_1a<31, 982, (outs), (ins (memrr $RA, $RB):$addr),
4271 def DCCCI : XForm_tlb<454, (outs), (ins gprc:$RA, gprc:$RB),
4272 "dccci $RA, $RB", IIC_LdStLoad>, Requires<[IsPPC4xx]>;
4273 def ICCCI : XForm_tlb<966, (outs), (ins gprc:$RA, gprc:$RB),
4274 "iccci $RA, $RB", IIC_LdStLoad>, Requires<[IsPPC4xx]>;
4354 def TLBSX : XForm_tlb<914, (outs), (ins gprc:$RA, gprc:$RB), "tlbsx $RA, $RB",
4357 def TLBIVAX : XForm_tlb<786, (outs), (ins gprc:$RA, gprc:$RB), "tlbivax $RA, $RB",
4360 def TLBILX : XForm_tlbilx<18, (outs), (ins u2imm:$T, gprc:$RA, gprc:$RB),
4361 "tlbilx $T, $RA, $RB", IIC_LdStLoad>, Requires<[IsBookE]>;
4369 def TLBRE2 : XForm_tlbws<31, 946, (outs gprc:$RST), (ins gprc:$RA, i1imm:$WS),
4370 "tlbre $RST, $RA, $WS", IIC_LdStLoad, []>, Requires<[IsPPC4xx]>;
4372 def TLBWE2 : XForm_tlbws<31, 978, (outs), (ins gprc:$RST, gprc:$RA, i1imm:$WS),
4373 "tlbwe $RST, $RA, $WS", IIC_LdStLoad, []>, Requires<[IsPPC4xx]>;
4375 def TLBSX2 : XForm_base_r3xo<31, 914, (outs), (ins gprc:$RST, gprc:$RA, gprc:$RB),
4376 "tlbsx $RST, $RA, $RB", IIC_LdStLoad, []>,
4379 (ins gprc:$RST, gprc:$RA, gprc:$RB),
4380 "tlbsx. $RST, $RA, $RB", IIC_LdStLoad, []>,
4406 (ins gprc:$RA, gprc:$RB),
4407 "lbzcix $RST, $RA, $RB", IIC_LdStLoad, []>;
4409 (ins gprc:$RA, gprc:$RB),
4410 "lhzcix $RST, $RA, $RB", IIC_LdStLoad, []>;
4412 (ins gprc:$RA, gprc:$RB),
4413 "lwzcix $RST, $RA, $RB", IIC_LdStLoad, []>;
4415 (ins gprc:$RA, gprc:$RB),
4416 "ldcix $RST, $RA, $RB", IIC_LdStLoad, []>;
4419 (ins gprc:$RST, gprc:$RA, gprc:$RB),
4420 "stbcix $RST, $RA, $RB", IIC_LdStLoad, []>;
4422 (ins gprc:$RST, gprc:$RA, gprc:$RB),
4423 "sthcix $RST, $RA, $RB", IIC_LdStLoad, []>;
4425 (ins gprc:$RST, gprc:$RA, gprc:$RB),
4426 "stwcix $RST, $RA, $RB", IIC_LdStLoad, []>;
4428 (ins gprc:$RST, gprc:$RA, gprc:$RB),
4429 "stdcix $RST, $RA, $RB", IIC_LdStLoad, []>;
4433 def LBEPX : XForm_1<31, 95, (outs gprc:$RST), (ins (memrr $RA, $RB):$addr),
4437 def LFDEPX : XForm_25<31, 607, (outs f8rc:$RST), (ins (memrr $RA, $RB):$addr),
4441 def LHEPX : XForm_1<31, 287, (outs gprc:$RST), (ins (memrr $RA, $RB):$addr),
4445 def LWEPX : XForm_1<31, 31, (outs gprc:$RST), (ins (memrr $RA, $RB):$addr),
4449 def STBEPX : XForm_8<31, 223, (outs), (ins gprc:$RST, (memrr $RA, $RB):$addr),
4453 def STFDEPX : XForm_28_memOp<31, 735, (outs), (ins f8rc:$RST, (memrr $RA, $RB):$addr),
4457 def STHEPX : XForm_8<31, 415, (outs), (ins gprc:$RST, (memrr $RA, $RB):$addr),
4461 def STWEPX : XForm_8<31, 159, (outs), (ins gprc:$RST, (memrr $RA, $RB):$addr),
4465 def DCBFEP : DCB_Form<127, 0, (outs), (ins (memrr $RA, $RB):$addr), "dcbfep $addr",
4468 def DCBSTEP : DCB_Form<63, 0, (outs), (ins (memrr $RA, $RB):$addr), "dcbstep $addr",
4471 def DCBTEP : DCB_Form_hint<319, (outs), (ins (memrr $RA, $RB):$addr, u5imm:$TH),
4475 def DCBTSTEP : DCB_Form_hint<255, (outs), (ins (memrr $RA, $RB):$addr, u5imm:$TH),
4479 def DCBZEP : DCB_Form<1023, 0, (outs), (ins (memrr $RA, $RB):$addr), "dcbzep $addr",
4482 def DCBZLEP : DCB_Form<1023, 1, (outs), (ins (memrr $RA, $RB):$addr), "dcbzlep $addr",
4485 def ICBIEP : XForm_1a<31, 991, (outs), (ins (memrr $RA, $RB):$addr), "icbiep $addr",
4711 def : InstAlias<"tlbilxva $RA, $RB", (TLBILX 3, gprc:$RA, gprc:$RB)>,
5074 def : InstAlias<"paste. $RA, $RB", (CP_PASTE_rec gprc:$RA, gprc:$RB, 1)>;
5260 (ins gprc:$RB, (memrihash $D, $RA):$addr),
5263 (ins gprc:$RB, (memrihash $D, $RA):$addr),
5273 (ins gprc:$RB, (memrihash $D, $RA):$addr),
5276 (ins gprc:$RB, (memrihash $D, $RA):$addr),