Lines Matching refs:Pat

504 def : Pat<(shl (sext Int32Regs:$a), (i32 Int5Const:$b)),
507 def : Pat<(shl (zext Int32Regs:$a), (i32 Int5Const:$b)),
511 def : Pat<(shl (sext Int16Regs:$a), (i16 Int4Const:$b)),
514 def : Pat<(shl (zext Int16Regs:$a), (i16 Int4Const:$b)),
518 def : Pat<(mul (sext Int32Regs:$a), (sext Int32Regs:$b)),
521 def : Pat<(mul (sext Int32Regs:$a), (i64 SInt32Const:$b)),
525 def : Pat<(mul (zext Int32Regs:$a), (zext Int32Regs:$b)),
528 def : Pat<(mul (zext Int32Regs:$a), (i64 UInt32Const:$b)),
532 def : Pat<(mul (sext Int16Regs:$a), (sext Int16Regs:$b)),
535 def : Pat<(mul (sext Int16Regs:$a), (i32 SInt16Const:$b)),
539 def : Pat<(mul (zext Int16Regs:$a), (zext Int16Regs:$b)),
542 def : Pat<(mul (zext Int16Regs:$a), (i32 UInt16Const:$b)),
554 def : Pat<(i32 (mul_wide_signed Int16Regs:$a, Int16Regs:$b)),
557 def : Pat<(i32 (mul_wide_signed Int16Regs:$a, imm:$b)),
560 def : Pat<(i32 (mul_wide_unsigned Int16Regs:$a, Int16Regs:$b)),
563 def : Pat<(i32 (mul_wide_unsigned Int16Regs:$a, imm:$b)),
568 def : Pat<(i64 (mul_wide_signed Int32Regs:$a, Int32Regs:$b)),
571 def : Pat<(i64 (mul_wide_signed Int32Regs:$a, imm:$b)),
574 def : Pat<(i64 (mul_wide_unsigned Int32Regs:$a, Int32Regs:$b)),
577 def : Pat<(i64 (mul_wide_unsigned Int32Regs:$a, imm:$b)),
860 def: Pat<(fdiv FloatConst1, (int_nvvm_sqrt_f Float32Regs:$b)),
933 def : Pat<(frem Float32Regs:$x, Float32Regs:$y),
938 def : Pat<(frem Float32Regs:$x, fpimm:$y),
945 def : Pat<(frem Float32Regs:$x, Float32Regs:$y),
949 def : Pat<(frem Float32Regs:$x, fpimm:$y),
955 def : Pat<(frem Float64Regs:$x, Float64Regs:$y),
959 def : Pat<(frem Float64Regs:$x, fpimm:$y),
1144 def : Pat<(rotl Int32Regs:$src, (i32 imm:$amt)),
1147 def : Pat<(rotr Int32Regs:$src, (i32 imm:$amt)),
1195 def : Pat<(rotl Int64Regs:$src, (i32 imm:$amt)),
1197 def : Pat<(rotr Int64Regs:$src, (i32 imm:$amt)),
1471 def : Pat<(i32 (Wrapper texternalsym:$dst)), (IMOV32ri texternalsym:$dst)>;
1505 def : Pat<(i1 (OpNode Int16Regs:$a, Int16Regs:$b)),
1507 def : Pat<(i1 (OpNode Int16Regs:$a, imm:$b)),
1509 def : Pat<(i1 (OpNode imm:$a, Int16Regs:$b)),
1512 def : Pat<(i1 (OpNode Int32Regs:$a, Int32Regs:$b)),
1514 def : Pat<(i1 (OpNode Int32Regs:$a, imm:$b)),
1516 def : Pat<(i1 (OpNode imm:$a, Int32Regs:$b)),
1519 def : Pat<(i1 (OpNode Int64Regs:$a, Int64Regs:$b)),
1521 def : Pat<(i1 (OpNode Int64Regs:$a, imm:$b)),
1523 def : Pat<(i1 (OpNode imm:$a, Int64Regs:$b)),
1527 def : Pat<(i32 (OpNode Int16Regs:$a, Int16Regs:$b)),
1529 def : Pat<(i32 (OpNode Int16Regs:$a, imm:$b)),
1531 def : Pat<(i32 (OpNode imm:$a, Int16Regs:$b)),
1534 def : Pat<(i32 (OpNode Int32Regs:$a, Int32Regs:$b)),
1536 def : Pat<(i32 (OpNode Int32Regs:$a, imm:$b)),
1538 def : Pat<(i32 (OpNode imm:$a, Int32Regs:$b)),
1541 def : Pat<(i32 (OpNode Int64Regs:$a, Int64Regs:$b)),
1543 def : Pat<(i32 (OpNode Int64Regs:$a, imm:$b)),
1545 def : Pat<(i32 (OpNode imm:$a, Int64Regs:$b)),
1587 def : Pat<(setne Int1Regs:$a, Int1Regs:$b),
1589 def : Pat<(setune Int1Regs:$a, Int1Regs:$b),
1592 def : Pat<(seteq Int1Regs:$a, Int1Regs:$b),
1594 def : Pat<(setueq Int1Regs:$a, Int1Regs:$b),
1598 def : Pat<(i32 (setne Int1Regs:$a, Int1Regs:$b)),
1600 def : Pat<(i32 (setne Int1Regs:$a, Int1Regs:$b)),
1607 def : Pat<(i1 (OpNode Float32Regs:$a, Float32Regs:$b)),
1610 def : Pat<(i1 (OpNode Float32Regs:$a, Float32Regs:$b)),
1612 def : Pat<(i1 (OpNode Float32Regs:$a, fpimm:$b)),
1615 def : Pat<(i1 (OpNode Float32Regs:$a, fpimm:$b)),
1617 def : Pat<(i1 (OpNode fpimm:$a, Float32Regs:$b)),
1620 def : Pat<(i1 (OpNode fpimm:$a, Float32Regs:$b)),
1624 def : Pat<(i1 (OpNode Float64Regs:$a, Float64Regs:$b)),
1626 def : Pat<(i1 (OpNode Float64Regs:$a, fpimm:$b)),
1628 def : Pat<(i1 (OpNode fpimm:$a, Float64Regs:$b)),
1632 def : Pat<(i32 (OpNode Float32Regs:$a, Float32Regs:$b)),
1635 def : Pat<(i32 (OpNode Float32Regs:$a, Float32Regs:$b)),
1637 def : Pat<(i32 (OpNode Float32Regs:$a, fpimm:$b)),
1640 def : Pat<(i32 (OpNode Float32Regs:$a, fpimm:$b)),
1642 def : Pat<(i32 (OpNode fpimm:$a, Float32Regs:$b)),
1645 def : Pat<(i32 (OpNode fpimm:$a, Float32Regs:$b)),
1649 def : Pat<(i32 (OpNode Float64Regs:$a, Float64Regs:$b)),
1651 def : Pat<(i32 (OpNode Float64Regs:$a, fpimm:$b)),
1653 def : Pat<(i32 (OpNode fpimm:$a, Float64Regs:$b)),
2336 def : Pat<(f32 (sint_to_fp Int1Regs:$a)),
2338 def : Pat<(f32 (sint_to_fp Int16Regs:$a)),
2340 def : Pat<(f32 (sint_to_fp Int32Regs:$a)),
2342 def : Pat<(f32 (sint_to_fp Int64Regs:$a)),
2346 def : Pat<(f32 (uint_to_fp Int1Regs:$a)),
2348 def : Pat<(f32 (uint_to_fp Int16Regs:$a)),
2350 def : Pat<(f32 (uint_to_fp Int32Regs:$a)),
2352 def : Pat<(f32 (uint_to_fp Int64Regs:$a)),
2356 def : Pat<(f64 (sint_to_fp Int1Regs:$a)),
2358 def : Pat<(f64 (sint_to_fp Int16Regs:$a)),
2360 def : Pat<(f64 (sint_to_fp Int32Regs:$a)),
2362 def : Pat<(f64 (sint_to_fp Int64Regs:$a)),
2366 def : Pat<(f64 (uint_to_fp Int1Regs:$a)),
2368 def : Pat<(f64 (uint_to_fp Int16Regs:$a)),
2370 def : Pat<(f64 (uint_to_fp Int32Regs:$a)),
2372 def : Pat<(f64 (uint_to_fp Int64Regs:$a)),
2377 def : Pat<(i1 (fp_to_sint Float32Regs:$a)),
2379 def : Pat<(i16 (fp_to_sint Float32Regs:$a)),
2381 def : Pat<(i16 (fp_to_sint Float32Regs:$a)),
2383 def : Pat<(i32 (fp_to_sint Float32Regs:$a)),
2385 def : Pat<(i32 (fp_to_sint Float32Regs:$a)),
2387 def : Pat<(i64 (fp_to_sint Float32Regs:$a)),
2389 def : Pat<(i64 (fp_to_sint Float32Regs:$a)),
2393 def : Pat<(i1 (fp_to_uint Float32Regs:$a)),
2395 def : Pat<(i16 (fp_to_uint Float32Regs:$a)),
2397 def : Pat<(i16 (fp_to_uint Float32Regs:$a)),
2399 def : Pat<(i32 (fp_to_uint Float32Regs:$a)),
2401 def : Pat<(i32 (fp_to_uint Float32Regs:$a)),
2403 def : Pat<(i64 (fp_to_uint Float32Regs:$a)),
2405 def : Pat<(i64 (fp_to_uint Float32Regs:$a)),
2409 def : Pat<(i1 (fp_to_sint Float64Regs:$a)),
2411 def : Pat<(i16 (fp_to_sint Float64Regs:$a)),
2413 def : Pat<(i32 (fp_to_sint Float64Regs:$a)),
2415 def : Pat<(i64 (fp_to_sint Float64Regs:$a)),
2419 def : Pat<(i1 (fp_to_uint Float64Regs:$a)),
2421 def : Pat<(i16 (fp_to_uint Float64Regs:$a)),
2423 def : Pat<(i32 (fp_to_uint Float64Regs:$a)),
2425 def : Pat<(i64 (fp_to_uint Float64Regs:$a)),
2429 def : Pat<(i16 (sext Int1Regs:$a)),
2431 def : Pat<(i32 (sext Int1Regs:$a)),
2433 def : Pat<(i64 (sext Int1Regs:$a)),
2437 def : Pat<(i16 (zext Int1Regs:$a)),
2439 def : Pat<(i32 (zext Int1Regs:$a)),
2441 def : Pat<(i64 (zext Int1Regs:$a)),
2445 def : Pat<(i16 (anyext Int1Regs:$a)),
2447 def : Pat<(i32 (anyext Int1Regs:$a)),
2449 def : Pat<(i64 (anyext Int1Regs:$a)),
2453 def : Pat<(i32 (sext Int16Regs:$a)),
2455 def : Pat<(i64 (sext Int16Regs:$a)),
2459 def : Pat<(i32 (zext Int16Regs:$a)),
2461 def : Pat<(i64 (zext Int16Regs:$a)),
2465 def : Pat<(i32 (anyext Int16Regs:$a)),
2467 def : Pat<(i64 (anyext Int16Regs:$a)),
2471 def : Pat<(i64 (sext Int32Regs:$a)),
2475 def : Pat<(i64 (zext Int32Regs:$a)),
2479 def : Pat<(i64 (anyext Int32Regs:$a)),
2484 def : Pat<(i32 (trunc Int64Regs:$a)),
2486 def : Pat<(i16 (trunc Int64Regs:$a)),
2488 def : Pat<(i1 (trunc Int64Regs:$a)),
2492 def : Pat<(i16 (trunc Int32Regs:$a)),
2494 def : Pat<(i1 (trunc Int32Regs:$a)),
2498 def : Pat<(i1 (trunc Int16Regs:$a)),
2502 def : Pat<(sext_inreg Int16Regs:$a, i8), (CVT_INREG_s16_s8 Int16Regs:$a)>;
2503 def : Pat<(sext_inreg Int32Regs:$a, i8), (CVT_INREG_s32_s8 Int32Regs:$a)>;
2504 def : Pat<(sext_inreg Int32Regs:$a, i16), (CVT_INREG_s32_s16 Int32Regs:$a)>;
2505 def : Pat<(sext_inreg Int64Regs:$a, i8), (CVT_INREG_s64_s8 Int64Regs:$a)>;
2506 def : Pat<(sext_inreg Int64Regs:$a, i16), (CVT_INREG_s64_s16 Int64Regs:$a)>;
2507 def : Pat<(sext_inreg Int64Regs:$a, i32), (CVT_INREG_s64_s32 Int64Regs:$a)>;
2511 def : Pat<(select Int32Regs:$pred, Int16Regs:$a, Int16Regs:$b),
2514 def : Pat<(select Int32Regs:$pred, Int32Regs:$a, Int32Regs:$b),
2517 def : Pat<(select Int32Regs:$pred, Int64Regs:$a, Int64Regs:$b),
2520 def : Pat<(select Int32Regs:$pred, Float32Regs:$a, Float32Regs:$b),
2523 def : Pat<(select Int32Regs:$pred, Float64Regs:$a, Float64Regs:$b),
2575 def : Pat<(ctlz Int32Regs:$a),
2577 def : Pat<(ctlz_zero_undef Int32Regs:$a),
2582 def : Pat<(ctlz Int64Regs:$a),
2584 def : Pat<(ctlz_zero_undef Int64Regs:$a),
2591 def : Pat<(ctlz Int16Regs:$a),
2595 def : Pat<(ctlz_zero_undef Int16Regs:$a),
2609 def : Pat<(ctpop Int32Regs:$a),
2614 def : Pat<(ctpop Int64Regs:$a),
2620 def : Pat<(ctpop Int16Regs:$a),
2625 def : Pat<(f32 (fround Float64Regs:$a)),
2627 def : Pat<(f32 (fround Float64Regs:$a)),
2631 def : Pat<(f64 (fextend Float32Regs:$a)),
2633 def : Pat<(f64 (fextend Float32Regs:$a)),
2662 def : Pat<(brcond Int32Regs:$a, bb:$target),
2672 def : Pat<(brcond (i1 (setne Int1Regs:$a, -1)), bb:$target),
2695 def : Pat<(call tglobaladdr:$dst),
2697 def : Pat<(call texternalsym:$dst),