1e726c587SPhilip Reames; NOTE: Assertions have been autogenerated by utils/update_analyze_test_checks.py 26cd6bde3SShih-Po Hung; RUN: opt -passes="print<cost-model>" 2>&1 -disable-output -mtriple=riscv64 -mattr=+v,+f,+d,+zfh,+zvfh < %s | FileCheck %s 36cd6bde3SShih-Po Hung; RUN: opt -passes="print<cost-model>" 2>&1 -disable-output -mtriple=riscv64 -mcpu=sifive-x280 < %s | FileCheck %s --check-prefix=SIFIVE-X280 4e726c587SPhilip Reames; Check that we don't crash querying costs when vectors are not enabled. 5e726c587SPhilip Reames; RUN: opt -passes="print<cost-model>" 2>&1 -disable-output -mtriple=riscv64 6e726c587SPhilip Reames 7e726c587SPhilip Reamesdefine i32 @add() { 8e726c587SPhilip Reames; CHECK-LABEL: 'add' 9e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I16 = add i16 undef, undef 10e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I32 = add i32 undef, undef 11e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I64 = add i64 undef, undef 12e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I16 = add <1 x i16> undef, undef 13e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I16 = add <2 x i16> undef, undef 14e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I16 = add <4 x i16> undef, undef 15e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8I16 = add <8 x i16> undef, undef 16e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16I16 = add <16 x i16> undef, undef 17e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V32I16 = add <32 x i16> undef, undef 18e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I16 = add <vscale x 1 x i16> undef, undef 19e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV2I16 = add <vscale x 2 x i16> undef, undef 20e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV4I16 = add <vscale x 4 x i16> undef, undef 2173eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV8I16 = add <vscale x 8 x i16> undef, undef 2273eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV16I16 = add <vscale x 16 x i16> undef, undef 2373eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV32I16 = add <vscale x 32 x i16> undef, undef 24e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I32 = add <1 x i32> undef, undef 25e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I32 = add <2 x i32> undef, undef 26e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I32 = add <4 x i32> undef, undef 27e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8I32 = add <8 x i32> undef, undef 28e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16I32 = add <16 x i32> undef, undef 29e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I32 = add <vscale x 1 x i32> undef, undef 30e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV2I32 = add <vscale x 2 x i32> undef, undef 3173eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV4I32 = add <vscale x 4 x i32> undef, undef 3273eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV8I32 = add <vscale x 8 x i32> undef, undef 3373eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV16I32 = add <vscale x 16 x i32> undef, undef 34e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I64 = add <1 x i64> undef, undef 35e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I64 = add <2 x i64> undef, undef 36e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4I64 = add <4 x i64> undef, undef 37e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8I64 = add <8 x i64> undef, undef 38e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I64 = add <vscale x 1 x i64> undef, undef 3973eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV2I64 = add <vscale x 2 x i64> undef, undef 4073eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV4I64 = add <vscale x 4 x i64> undef, undef 4173eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV8I64 = add <vscale x 8 x i64> undef, undef 420a5d52a7SSergey Kachkov; CHECK-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 43e726c587SPhilip Reames; 446ac2ce7dSCraig Topper; SIFIVE-X280-LABEL: 'add' 456ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I16 = add i16 undef, undef 466ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I32 = add i32 undef, undef 476ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I64 = add i64 undef, undef 486ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I16 = add <1 x i16> undef, undef 496ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I16 = add <2 x i16> undef, undef 506ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I16 = add <4 x i16> undef, undef 516ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8I16 = add <8 x i16> undef, undef 526ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V16I16 = add <16 x i16> undef, undef 536ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V32I16 = add <32 x i16> undef, undef 546ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I16 = add <vscale x 1 x i16> undef, undef 556ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV2I16 = add <vscale x 2 x i16> undef, undef 566ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV4I16 = add <vscale x 4 x i16> undef, undef 576ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV8I16 = add <vscale x 8 x i16> undef, undef 586ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV16I16 = add <vscale x 16 x i16> undef, undef 596ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %NXV32I16 = add <vscale x 32 x i16> undef, undef 606ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I32 = add <1 x i32> undef, undef 616ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I32 = add <2 x i32> undef, undef 626ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I32 = add <4 x i32> undef, undef 636ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8I32 = add <8 x i32> undef, undef 646ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16I32 = add <16 x i32> undef, undef 656ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I32 = add <vscale x 1 x i32> undef, undef 666ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV2I32 = add <vscale x 2 x i32> undef, undef 676ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV4I32 = add <vscale x 4 x i32> undef, undef 686ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV8I32 = add <vscale x 8 x i32> undef, undef 696ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %NXV16I32 = add <vscale x 16 x i32> undef, undef 706ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I64 = add <1 x i64> undef, undef 716ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I64 = add <2 x i64> undef, undef 726ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I64 = add <4 x i64> undef, undef 736ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8I64 = add <8 x i64> undef, undef 746ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV1I64 = add <vscale x 1 x i64> undef, undef 756ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV2I64 = add <vscale x 2 x i64> undef, undef 766ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV4I64 = add <vscale x 4 x i64> undef, undef 776ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %NXV8I64 = add <vscale x 8 x i64> undef, undef 780a5d52a7SSergey Kachkov; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 796ac2ce7dSCraig Topper; 80e726c587SPhilip Reames %I16 = add i16 undef, undef 81e726c587SPhilip Reames %I32 = add i32 undef, undef 82e726c587SPhilip Reames %I64 = add i64 undef, undef 83e726c587SPhilip Reames 84e726c587SPhilip Reames %V1I16 = add <1 x i16> undef, undef 85e726c587SPhilip Reames %V2I16 = add <2 x i16> undef, undef 86e726c587SPhilip Reames %V4I16 = add <4 x i16> undef, undef 87e726c587SPhilip Reames %V8I16 = add <8 x i16> undef, undef 88e726c587SPhilip Reames %V16I16 = add <16 x i16> undef, undef 89e726c587SPhilip Reames %V32I16 = add <32 x i16> undef, undef 90e726c587SPhilip Reames 91e726c587SPhilip Reames %NXV1I16 = add <vscale x 1 x i16> undef, undef 92e726c587SPhilip Reames %NXV2I16 = add <vscale x 2 x i16> undef, undef 93e726c587SPhilip Reames %NXV4I16 = add <vscale x 4 x i16> undef, undef 94e726c587SPhilip Reames %NXV8I16 = add <vscale x 8 x i16> undef, undef 95e726c587SPhilip Reames %NXV16I16 = add <vscale x 16 x i16> undef, undef 96e726c587SPhilip Reames %NXV32I16 = add <vscale x 32 x i16> undef, undef 97e726c587SPhilip Reames 98e726c587SPhilip Reames %V1I32 = add <1 x i32> undef, undef 99e726c587SPhilip Reames %V2I32 = add <2 x i32> undef, undef 100e726c587SPhilip Reames %V4I32 = add <4 x i32> undef, undef 101e726c587SPhilip Reames %V8I32 = add <8 x i32> undef, undef 102e726c587SPhilip Reames %V16I32 = add <16 x i32> undef, undef 103e726c587SPhilip Reames 104e726c587SPhilip Reames %NXV1I32 = add <vscale x 1 x i32> undef, undef 105e726c587SPhilip Reames %NXV2I32 = add <vscale x 2 x i32> undef, undef 106e726c587SPhilip Reames %NXV4I32 = add <vscale x 4 x i32> undef, undef 107e726c587SPhilip Reames %NXV8I32 = add <vscale x 8 x i32> undef, undef 108e726c587SPhilip Reames %NXV16I32 = add <vscale x 16 x i32> undef, undef 109e726c587SPhilip Reames 110e726c587SPhilip Reames %V1I64 = add <1 x i64> undef, undef 111e726c587SPhilip Reames %V2I64 = add <2 x i64> undef, undef 112e726c587SPhilip Reames %V4I64 = add <4 x i64> undef, undef 113e726c587SPhilip Reames %V8I64 = add <8 x i64> undef, undef 114e726c587SPhilip Reames 115e726c587SPhilip Reames %NXV1I64 = add <vscale x 1 x i64> undef, undef 116e726c587SPhilip Reames %NXV2I64 = add <vscale x 2 x i64> undef, undef 117e726c587SPhilip Reames %NXV4I64 = add <vscale x 4 x i64> undef, undef 118e726c587SPhilip Reames %NXV8I64 = add <vscale x 8 x i64> undef, undef 119e726c587SPhilip Reames 120e726c587SPhilip Reames ret i32 undef 121e726c587SPhilip Reames} 122e726c587SPhilip Reames 123e726c587SPhilip Reamesdefine i32 @sub() { 124e726c587SPhilip Reames; CHECK-LABEL: 'sub' 125e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I16 = sub i16 undef, undef 126e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I32 = sub i32 undef, undef 127e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I64 = sub i64 undef, undef 128e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I16 = sub <1 x i16> undef, undef 129e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I16 = sub <2 x i16> undef, undef 130e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I16 = sub <4 x i16> undef, undef 131e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8I16 = sub <8 x i16> undef, undef 132e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16I16 = sub <16 x i16> undef, undef 133e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V32I16 = sub <32 x i16> undef, undef 134e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I16 = sub <vscale x 1 x i16> undef, undef 135e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV2I16 = sub <vscale x 2 x i16> undef, undef 136e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV4I16 = sub <vscale x 4 x i16> undef, undef 13773eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV8I16 = sub <vscale x 8 x i16> undef, undef 13873eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV16I16 = sub <vscale x 16 x i16> undef, undef 13973eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV32I16 = sub <vscale x 32 x i16> undef, undef 140e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I32 = sub <1 x i32> undef, undef 141e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I32 = sub <2 x i32> undef, undef 142e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I32 = sub <4 x i32> undef, undef 143e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8I32 = sub <8 x i32> undef, undef 144e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16I32 = sub <16 x i32> undef, undef 145e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I32 = sub <vscale x 1 x i32> undef, undef 146e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV2I32 = sub <vscale x 2 x i32> undef, undef 14773eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV4I32 = sub <vscale x 4 x i32> undef, undef 14873eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV8I32 = sub <vscale x 8 x i32> undef, undef 14973eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV16I32 = sub <vscale x 16 x i32> undef, undef 150e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I64 = sub <1 x i64> undef, undef 151e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I64 = sub <2 x i64> undef, undef 152e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4I64 = sub <4 x i64> undef, undef 153e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8I64 = sub <8 x i64> undef, undef 154e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I64 = sub <vscale x 1 x i64> undef, undef 15573eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV2I64 = sub <vscale x 2 x i64> undef, undef 15673eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV4I64 = sub <vscale x 4 x i64> undef, undef 15773eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV8I64 = sub <vscale x 8 x i64> undef, undef 1580a5d52a7SSergey Kachkov; CHECK-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 159e726c587SPhilip Reames; 1606ac2ce7dSCraig Topper; SIFIVE-X280-LABEL: 'sub' 1616ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I16 = sub i16 undef, undef 1626ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I32 = sub i32 undef, undef 1636ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I64 = sub i64 undef, undef 1646ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I16 = sub <1 x i16> undef, undef 1656ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I16 = sub <2 x i16> undef, undef 1666ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I16 = sub <4 x i16> undef, undef 1676ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8I16 = sub <8 x i16> undef, undef 1686ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V16I16 = sub <16 x i16> undef, undef 1696ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V32I16 = sub <32 x i16> undef, undef 1706ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I16 = sub <vscale x 1 x i16> undef, undef 1716ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV2I16 = sub <vscale x 2 x i16> undef, undef 1726ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV4I16 = sub <vscale x 4 x i16> undef, undef 1736ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV8I16 = sub <vscale x 8 x i16> undef, undef 1746ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV16I16 = sub <vscale x 16 x i16> undef, undef 1756ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %NXV32I16 = sub <vscale x 32 x i16> undef, undef 1766ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I32 = sub <1 x i32> undef, undef 1776ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I32 = sub <2 x i32> undef, undef 1786ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I32 = sub <4 x i32> undef, undef 1796ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8I32 = sub <8 x i32> undef, undef 1806ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16I32 = sub <16 x i32> undef, undef 1816ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I32 = sub <vscale x 1 x i32> undef, undef 1826ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV2I32 = sub <vscale x 2 x i32> undef, undef 1836ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV4I32 = sub <vscale x 4 x i32> undef, undef 1846ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV8I32 = sub <vscale x 8 x i32> undef, undef 1856ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %NXV16I32 = sub <vscale x 16 x i32> undef, undef 1866ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I64 = sub <1 x i64> undef, undef 1876ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I64 = sub <2 x i64> undef, undef 1886ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I64 = sub <4 x i64> undef, undef 1896ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8I64 = sub <8 x i64> undef, undef 1906ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV1I64 = sub <vscale x 1 x i64> undef, undef 1916ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV2I64 = sub <vscale x 2 x i64> undef, undef 1926ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV4I64 = sub <vscale x 4 x i64> undef, undef 1936ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %NXV8I64 = sub <vscale x 8 x i64> undef, undef 1940a5d52a7SSergey Kachkov; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1956ac2ce7dSCraig Topper; 196e726c587SPhilip Reames %I16 = sub i16 undef, undef 197e726c587SPhilip Reames %I32 = sub i32 undef, undef 198e726c587SPhilip Reames %I64 = sub i64 undef, undef 199e726c587SPhilip Reames 200e726c587SPhilip Reames %V1I16 = sub <1 x i16> undef, undef 201e726c587SPhilip Reames %V2I16 = sub <2 x i16> undef, undef 202e726c587SPhilip Reames %V4I16 = sub <4 x i16> undef, undef 203e726c587SPhilip Reames %V8I16 = sub <8 x i16> undef, undef 204e726c587SPhilip Reames %V16I16 = sub <16 x i16> undef, undef 205e726c587SPhilip Reames %V32I16 = sub <32 x i16> undef, undef 206e726c587SPhilip Reames 207e726c587SPhilip Reames %NXV1I16 = sub <vscale x 1 x i16> undef, undef 208e726c587SPhilip Reames %NXV2I16 = sub <vscale x 2 x i16> undef, undef 209e726c587SPhilip Reames %NXV4I16 = sub <vscale x 4 x i16> undef, undef 210e726c587SPhilip Reames %NXV8I16 = sub <vscale x 8 x i16> undef, undef 211e726c587SPhilip Reames %NXV16I16 = sub <vscale x 16 x i16> undef, undef 212e726c587SPhilip Reames %NXV32I16 = sub <vscale x 32 x i16> undef, undef 213e726c587SPhilip Reames 214e726c587SPhilip Reames %V1I32 = sub <1 x i32> undef, undef 215e726c587SPhilip Reames %V2I32 = sub <2 x i32> undef, undef 216e726c587SPhilip Reames %V4I32 = sub <4 x i32> undef, undef 217e726c587SPhilip Reames %V8I32 = sub <8 x i32> undef, undef 218e726c587SPhilip Reames %V16I32 = sub <16 x i32> undef, undef 219e726c587SPhilip Reames 220e726c587SPhilip Reames %NXV1I32 = sub <vscale x 1 x i32> undef, undef 221e726c587SPhilip Reames %NXV2I32 = sub <vscale x 2 x i32> undef, undef 222e726c587SPhilip Reames %NXV4I32 = sub <vscale x 4 x i32> undef, undef 223e726c587SPhilip Reames %NXV8I32 = sub <vscale x 8 x i32> undef, undef 224e726c587SPhilip Reames %NXV16I32 = sub <vscale x 16 x i32> undef, undef 225e726c587SPhilip Reames 226e726c587SPhilip Reames %V1I64 = sub <1 x i64> undef, undef 227e726c587SPhilip Reames %V2I64 = sub <2 x i64> undef, undef 228e726c587SPhilip Reames %V4I64 = sub <4 x i64> undef, undef 229e726c587SPhilip Reames %V8I64 = sub <8 x i64> undef, undef 230e726c587SPhilip Reames 231e726c587SPhilip Reames %NXV1I64 = sub <vscale x 1 x i64> undef, undef 232e726c587SPhilip Reames %NXV2I64 = sub <vscale x 2 x i64> undef, undef 233e726c587SPhilip Reames %NXV4I64 = sub <vscale x 4 x i64> undef, undef 234e726c587SPhilip Reames %NXV8I64 = sub <vscale x 8 x i64> undef, undef 235e726c587SPhilip Reames 236e726c587SPhilip Reames ret i32 undef 237e726c587SPhilip Reames} 238e726c587SPhilip Reames 239e726c587SPhilip Reamesdefine i32 @mul() { 240e726c587SPhilip Reames; CHECK-LABEL: 'mul' 241e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I16 = mul i16 undef, undef 242e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I32 = mul i32 undef, undef 243e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I64 = mul i64 undef, undef 244e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I16 = mul <1 x i16> undef, undef 245e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I16 = mul <2 x i16> undef, undef 246e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I16 = mul <4 x i16> undef, undef 247e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8I16 = mul <8 x i16> undef, undef 248e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16I16 = mul <16 x i16> undef, undef 249e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V32I16 = mul <32 x i16> undef, undef 250e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I16 = mul <vscale x 1 x i16> undef, undef 251e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV2I16 = mul <vscale x 2 x i16> undef, undef 252e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV4I16 = mul <vscale x 4 x i16> undef, undef 25373eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV8I16 = mul <vscale x 8 x i16> undef, undef 25473eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV16I16 = mul <vscale x 16 x i16> undef, undef 25573eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV32I16 = mul <vscale x 32 x i16> undef, undef 256e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I32 = mul <1 x i32> undef, undef 257e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I32 = mul <2 x i32> undef, undef 258e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I32 = mul <4 x i32> undef, undef 259e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8I32 = mul <8 x i32> undef, undef 260e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16I32 = mul <16 x i32> undef, undef 261e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I32 = mul <vscale x 1 x i32> undef, undef 262e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV2I32 = mul <vscale x 2 x i32> undef, undef 26373eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV4I32 = mul <vscale x 4 x i32> undef, undef 26473eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV8I32 = mul <vscale x 8 x i32> undef, undef 26573eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV16I32 = mul <vscale x 16 x i32> undef, undef 266e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I64 = mul <1 x i64> undef, undef 267e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I64 = mul <2 x i64> undef, undef 268e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4I64 = mul <4 x i64> undef, undef 269e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8I64 = mul <8 x i64> undef, undef 270e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I64 = mul <vscale x 1 x i64> undef, undef 27173eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV2I64 = mul <vscale x 2 x i64> undef, undef 27273eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV4I64 = mul <vscale x 4 x i64> undef, undef 27373eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV8I64 = mul <vscale x 8 x i64> undef, undef 2740a5d52a7SSergey Kachkov; CHECK-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 275e726c587SPhilip Reames; 2766ac2ce7dSCraig Topper; SIFIVE-X280-LABEL: 'mul' 2776ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I16 = mul i16 undef, undef 2786ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I32 = mul i32 undef, undef 2796ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I64 = mul i64 undef, undef 2806ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I16 = mul <1 x i16> undef, undef 2816ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I16 = mul <2 x i16> undef, undef 2826ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I16 = mul <4 x i16> undef, undef 2836ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8I16 = mul <8 x i16> undef, undef 2846ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V16I16 = mul <16 x i16> undef, undef 2856ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V32I16 = mul <32 x i16> undef, undef 2866ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I16 = mul <vscale x 1 x i16> undef, undef 2876ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV2I16 = mul <vscale x 2 x i16> undef, undef 2886ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV4I16 = mul <vscale x 4 x i16> undef, undef 2896ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV8I16 = mul <vscale x 8 x i16> undef, undef 2906ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV16I16 = mul <vscale x 16 x i16> undef, undef 2916ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %NXV32I16 = mul <vscale x 32 x i16> undef, undef 2926ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I32 = mul <1 x i32> undef, undef 2936ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I32 = mul <2 x i32> undef, undef 2946ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I32 = mul <4 x i32> undef, undef 2956ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8I32 = mul <8 x i32> undef, undef 2966ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16I32 = mul <16 x i32> undef, undef 2976ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I32 = mul <vscale x 1 x i32> undef, undef 2986ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV2I32 = mul <vscale x 2 x i32> undef, undef 2996ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV4I32 = mul <vscale x 4 x i32> undef, undef 3006ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV8I32 = mul <vscale x 8 x i32> undef, undef 3016ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %NXV16I32 = mul <vscale x 16 x i32> undef, undef 3026ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I64 = mul <1 x i64> undef, undef 3036ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I64 = mul <2 x i64> undef, undef 3046ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I64 = mul <4 x i64> undef, undef 3056ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8I64 = mul <8 x i64> undef, undef 3066ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV1I64 = mul <vscale x 1 x i64> undef, undef 3076ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV2I64 = mul <vscale x 2 x i64> undef, undef 3086ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV4I64 = mul <vscale x 4 x i64> undef, undef 3096ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %NXV8I64 = mul <vscale x 8 x i64> undef, undef 3100a5d52a7SSergey Kachkov; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 3116ac2ce7dSCraig Topper; 312e726c587SPhilip Reames %I16 = mul i16 undef, undef 313e726c587SPhilip Reames %I32 = mul i32 undef, undef 314e726c587SPhilip Reames %I64 = mul i64 undef, undef 315e726c587SPhilip Reames 316e726c587SPhilip Reames %V1I16 = mul <1 x i16> undef, undef 317e726c587SPhilip Reames %V2I16 = mul <2 x i16> undef, undef 318e726c587SPhilip Reames %V4I16 = mul <4 x i16> undef, undef 319e726c587SPhilip Reames %V8I16 = mul <8 x i16> undef, undef 320e726c587SPhilip Reames %V16I16 = mul <16 x i16> undef, undef 321e726c587SPhilip Reames %V32I16 = mul <32 x i16> undef, undef 322e726c587SPhilip Reames 323e726c587SPhilip Reames %NXV1I16 = mul <vscale x 1 x i16> undef, undef 324e726c587SPhilip Reames %NXV2I16 = mul <vscale x 2 x i16> undef, undef 325e726c587SPhilip Reames %NXV4I16 = mul <vscale x 4 x i16> undef, undef 326e726c587SPhilip Reames %NXV8I16 = mul <vscale x 8 x i16> undef, undef 327e726c587SPhilip Reames %NXV16I16 = mul <vscale x 16 x i16> undef, undef 328e726c587SPhilip Reames %NXV32I16 = mul <vscale x 32 x i16> undef, undef 329e726c587SPhilip Reames 330e726c587SPhilip Reames %V1I32 = mul <1 x i32> undef, undef 331e726c587SPhilip Reames %V2I32 = mul <2 x i32> undef, undef 332e726c587SPhilip Reames %V4I32 = mul <4 x i32> undef, undef 333e726c587SPhilip Reames %V8I32 = mul <8 x i32> undef, undef 334e726c587SPhilip Reames %V16I32 = mul <16 x i32> undef, undef 335e726c587SPhilip Reames 336e726c587SPhilip Reames %NXV1I32 = mul <vscale x 1 x i32> undef, undef 337e726c587SPhilip Reames %NXV2I32 = mul <vscale x 2 x i32> undef, undef 338e726c587SPhilip Reames %NXV4I32 = mul <vscale x 4 x i32> undef, undef 339e726c587SPhilip Reames %NXV8I32 = mul <vscale x 8 x i32> undef, undef 340e726c587SPhilip Reames %NXV16I32 = mul <vscale x 16 x i32> undef, undef 341e726c587SPhilip Reames 342e726c587SPhilip Reames %V1I64 = mul <1 x i64> undef, undef 343e726c587SPhilip Reames %V2I64 = mul <2 x i64> undef, undef 344e726c587SPhilip Reames %V4I64 = mul <4 x i64> undef, undef 345e726c587SPhilip Reames %V8I64 = mul <8 x i64> undef, undef 346e726c587SPhilip Reames 347e726c587SPhilip Reames %NXV1I64 = mul <vscale x 1 x i64> undef, undef 348e726c587SPhilip Reames %NXV2I64 = mul <vscale x 2 x i64> undef, undef 349e726c587SPhilip Reames %NXV4I64 = mul <vscale x 4 x i64> undef, undef 350e726c587SPhilip Reames %NXV8I64 = mul <vscale x 8 x i64> undef, undef 351e726c587SPhilip Reames 352e726c587SPhilip Reames ret i32 undef 353e726c587SPhilip Reames} 354e726c587SPhilip Reames 355e726c587SPhilip Reamesdefine i32 @shl() { 356e726c587SPhilip Reames; CHECK-LABEL: 'shl' 357e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I16 = shl i16 undef, undef 358e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I32 = shl i32 undef, undef 359e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I64 = shl i64 undef, undef 360e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I16 = shl <1 x i16> undef, undef 361e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I16 = shl <2 x i16> undef, undef 362e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I16 = shl <4 x i16> undef, undef 363e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8I16 = shl <8 x i16> undef, undef 364e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16I16 = shl <16 x i16> undef, undef 365e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V32I16 = shl <32 x i16> undef, undef 366e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I16 = shl <vscale x 1 x i16> undef, undef 367e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV2I16 = shl <vscale x 2 x i16> undef, undef 368e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV4I16 = shl <vscale x 4 x i16> undef, undef 36973eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV8I16 = shl <vscale x 8 x i16> undef, undef 37073eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV16I16 = shl <vscale x 16 x i16> undef, undef 37173eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV32I16 = shl <vscale x 32 x i16> undef, undef 372e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I32 = shl <1 x i32> undef, undef 373e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I32 = shl <2 x i32> undef, undef 374e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I32 = shl <4 x i32> undef, undef 375e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8I32 = shl <8 x i32> undef, undef 376e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16I32 = shl <16 x i32> undef, undef 377e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I32 = shl <vscale x 1 x i32> undef, undef 378e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV2I32 = shl <vscale x 2 x i32> undef, undef 37973eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV4I32 = shl <vscale x 4 x i32> undef, undef 38073eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV8I32 = shl <vscale x 8 x i32> undef, undef 38173eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV16I32 = shl <vscale x 16 x i32> undef, undef 382e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I64 = shl <1 x i64> undef, undef 383e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I64 = shl <2 x i64> undef, undef 384e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4I64 = shl <4 x i64> undef, undef 385e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8I64 = shl <8 x i64> undef, undef 386e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I64 = shl <vscale x 1 x i64> undef, undef 38773eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV2I64 = shl <vscale x 2 x i64> undef, undef 38873eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV4I64 = shl <vscale x 4 x i64> undef, undef 38973eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV8I64 = shl <vscale x 8 x i64> undef, undef 3900a5d52a7SSergey Kachkov; CHECK-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 391e726c587SPhilip Reames; 3926ac2ce7dSCraig Topper; SIFIVE-X280-LABEL: 'shl' 3936ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I16 = shl i16 undef, undef 3946ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I32 = shl i32 undef, undef 3956ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I64 = shl i64 undef, undef 3966ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I16 = shl <1 x i16> undef, undef 3976ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I16 = shl <2 x i16> undef, undef 3986ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I16 = shl <4 x i16> undef, undef 3996ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8I16 = shl <8 x i16> undef, undef 4006ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V16I16 = shl <16 x i16> undef, undef 4016ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V32I16 = shl <32 x i16> undef, undef 4026ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I16 = shl <vscale x 1 x i16> undef, undef 4036ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV2I16 = shl <vscale x 2 x i16> undef, undef 4046ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV4I16 = shl <vscale x 4 x i16> undef, undef 4056ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV8I16 = shl <vscale x 8 x i16> undef, undef 4066ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV16I16 = shl <vscale x 16 x i16> undef, undef 4076ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %NXV32I16 = shl <vscale x 32 x i16> undef, undef 4086ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I32 = shl <1 x i32> undef, undef 4096ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I32 = shl <2 x i32> undef, undef 4106ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I32 = shl <4 x i32> undef, undef 4116ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8I32 = shl <8 x i32> undef, undef 4126ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16I32 = shl <16 x i32> undef, undef 4136ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I32 = shl <vscale x 1 x i32> undef, undef 4146ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV2I32 = shl <vscale x 2 x i32> undef, undef 4156ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV4I32 = shl <vscale x 4 x i32> undef, undef 4166ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV8I32 = shl <vscale x 8 x i32> undef, undef 4176ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %NXV16I32 = shl <vscale x 16 x i32> undef, undef 4186ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I64 = shl <1 x i64> undef, undef 4196ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I64 = shl <2 x i64> undef, undef 4206ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I64 = shl <4 x i64> undef, undef 4216ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8I64 = shl <8 x i64> undef, undef 4226ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV1I64 = shl <vscale x 1 x i64> undef, undef 4236ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV2I64 = shl <vscale x 2 x i64> undef, undef 4246ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV4I64 = shl <vscale x 4 x i64> undef, undef 4256ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %NXV8I64 = shl <vscale x 8 x i64> undef, undef 4260a5d52a7SSergey Kachkov; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 4276ac2ce7dSCraig Topper; 428e726c587SPhilip Reames %I16 = shl i16 undef, undef 429e726c587SPhilip Reames %I32 = shl i32 undef, undef 430e726c587SPhilip Reames %I64 = shl i64 undef, undef 431e726c587SPhilip Reames 432e726c587SPhilip Reames %V1I16 = shl <1 x i16> undef, undef 433e726c587SPhilip Reames %V2I16 = shl <2 x i16> undef, undef 434e726c587SPhilip Reames %V4I16 = shl <4 x i16> undef, undef 435e726c587SPhilip Reames %V8I16 = shl <8 x i16> undef, undef 436e726c587SPhilip Reames %V16I16 = shl <16 x i16> undef, undef 437e726c587SPhilip Reames %V32I16 = shl <32 x i16> undef, undef 438e726c587SPhilip Reames 439e726c587SPhilip Reames %NXV1I16 = shl <vscale x 1 x i16> undef, undef 440e726c587SPhilip Reames %NXV2I16 = shl <vscale x 2 x i16> undef, undef 441e726c587SPhilip Reames %NXV4I16 = shl <vscale x 4 x i16> undef, undef 442e726c587SPhilip Reames %NXV8I16 = shl <vscale x 8 x i16> undef, undef 443e726c587SPhilip Reames %NXV16I16 = shl <vscale x 16 x i16> undef, undef 444e726c587SPhilip Reames %NXV32I16 = shl <vscale x 32 x i16> undef, undef 445e726c587SPhilip Reames 446e726c587SPhilip Reames %V1I32 = shl <1 x i32> undef, undef 447e726c587SPhilip Reames %V2I32 = shl <2 x i32> undef, undef 448e726c587SPhilip Reames %V4I32 = shl <4 x i32> undef, undef 449e726c587SPhilip Reames %V8I32 = shl <8 x i32> undef, undef 450e726c587SPhilip Reames %V16I32 = shl <16 x i32> undef, undef 451e726c587SPhilip Reames 452e726c587SPhilip Reames %NXV1I32 = shl <vscale x 1 x i32> undef, undef 453e726c587SPhilip Reames %NXV2I32 = shl <vscale x 2 x i32> undef, undef 454e726c587SPhilip Reames %NXV4I32 = shl <vscale x 4 x i32> undef, undef 455e726c587SPhilip Reames %NXV8I32 = shl <vscale x 8 x i32> undef, undef 456e726c587SPhilip Reames %NXV16I32 = shl <vscale x 16 x i32> undef, undef 457e726c587SPhilip Reames 458e726c587SPhilip Reames %V1I64 = shl <1 x i64> undef, undef 459e726c587SPhilip Reames %V2I64 = shl <2 x i64> undef, undef 460e726c587SPhilip Reames %V4I64 = shl <4 x i64> undef, undef 461e726c587SPhilip Reames %V8I64 = shl <8 x i64> undef, undef 462e726c587SPhilip Reames 463e726c587SPhilip Reames %NXV1I64 = shl <vscale x 1 x i64> undef, undef 464e726c587SPhilip Reames %NXV2I64 = shl <vscale x 2 x i64> undef, undef 465e726c587SPhilip Reames %NXV4I64 = shl <vscale x 4 x i64> undef, undef 466e726c587SPhilip Reames %NXV8I64 = shl <vscale x 8 x i64> undef, undef 467e726c587SPhilip Reames 468e726c587SPhilip Reames ret i32 undef 469e726c587SPhilip Reames} 470e726c587SPhilip Reames 471e726c587SPhilip Reamesdefine i32 @lshr() { 472e726c587SPhilip Reames; CHECK-LABEL: 'lshr' 473e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I16 = lshr i16 undef, undef 474e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I32 = lshr i32 undef, undef 475e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I64 = lshr i64 undef, undef 476e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I16 = lshr <1 x i16> undef, undef 477e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I16 = lshr <2 x i16> undef, undef 478e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I16 = lshr <4 x i16> undef, undef 479e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8I16 = lshr <8 x i16> undef, undef 480e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16I16 = lshr <16 x i16> undef, undef 481e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V32I16 = lshr <32 x i16> undef, undef 482e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I16 = lshr <vscale x 1 x i16> undef, undef 483e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV2I16 = lshr <vscale x 2 x i16> undef, undef 484e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV4I16 = lshr <vscale x 4 x i16> undef, undef 48573eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV8I16 = lshr <vscale x 8 x i16> undef, undef 48673eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV16I16 = lshr <vscale x 16 x i16> undef, undef 48773eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV32I16 = lshr <vscale x 32 x i16> undef, undef 488e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I32 = lshr <1 x i32> undef, undef 489e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I32 = lshr <2 x i32> undef, undef 490e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I32 = lshr <4 x i32> undef, undef 491e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8I32 = lshr <8 x i32> undef, undef 492e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16I32 = lshr <16 x i32> undef, undef 493e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I32 = lshr <vscale x 1 x i32> undef, undef 494e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV2I32 = lshr <vscale x 2 x i32> undef, undef 49573eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV4I32 = lshr <vscale x 4 x i32> undef, undef 49673eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV8I32 = lshr <vscale x 8 x i32> undef, undef 49773eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV16I32 = lshr <vscale x 16 x i32> undef, undef 498e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I64 = lshr <1 x i64> undef, undef 499e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I64 = lshr <2 x i64> undef, undef 500e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4I64 = lshr <4 x i64> undef, undef 501e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8I64 = lshr <8 x i64> undef, undef 502e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I64 = lshr <vscale x 1 x i64> undef, undef 50373eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV2I64 = lshr <vscale x 2 x i64> undef, undef 50473eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV4I64 = lshr <vscale x 4 x i64> undef, undef 50573eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV8I64 = lshr <vscale x 8 x i64> undef, undef 5060a5d52a7SSergey Kachkov; CHECK-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 507e726c587SPhilip Reames; 5086ac2ce7dSCraig Topper; SIFIVE-X280-LABEL: 'lshr' 5096ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I16 = lshr i16 undef, undef 5106ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I32 = lshr i32 undef, undef 5116ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I64 = lshr i64 undef, undef 5126ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I16 = lshr <1 x i16> undef, undef 5136ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I16 = lshr <2 x i16> undef, undef 5146ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I16 = lshr <4 x i16> undef, undef 5156ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8I16 = lshr <8 x i16> undef, undef 5166ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V16I16 = lshr <16 x i16> undef, undef 5176ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V32I16 = lshr <32 x i16> undef, undef 5186ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I16 = lshr <vscale x 1 x i16> undef, undef 5196ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV2I16 = lshr <vscale x 2 x i16> undef, undef 5206ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV4I16 = lshr <vscale x 4 x i16> undef, undef 5216ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV8I16 = lshr <vscale x 8 x i16> undef, undef 5226ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV16I16 = lshr <vscale x 16 x i16> undef, undef 5236ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %NXV32I16 = lshr <vscale x 32 x i16> undef, undef 5246ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I32 = lshr <1 x i32> undef, undef 5256ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I32 = lshr <2 x i32> undef, undef 5266ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I32 = lshr <4 x i32> undef, undef 5276ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8I32 = lshr <8 x i32> undef, undef 5286ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16I32 = lshr <16 x i32> undef, undef 5296ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I32 = lshr <vscale x 1 x i32> undef, undef 5306ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV2I32 = lshr <vscale x 2 x i32> undef, undef 5316ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV4I32 = lshr <vscale x 4 x i32> undef, undef 5326ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV8I32 = lshr <vscale x 8 x i32> undef, undef 5336ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %NXV16I32 = lshr <vscale x 16 x i32> undef, undef 5346ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I64 = lshr <1 x i64> undef, undef 5356ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I64 = lshr <2 x i64> undef, undef 5366ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I64 = lshr <4 x i64> undef, undef 5376ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8I64 = lshr <8 x i64> undef, undef 5386ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV1I64 = lshr <vscale x 1 x i64> undef, undef 5396ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV2I64 = lshr <vscale x 2 x i64> undef, undef 5406ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV4I64 = lshr <vscale x 4 x i64> undef, undef 5416ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %NXV8I64 = lshr <vscale x 8 x i64> undef, undef 5420a5d52a7SSergey Kachkov; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 5436ac2ce7dSCraig Topper; 544e726c587SPhilip Reames %I16 = lshr i16 undef, undef 545e726c587SPhilip Reames %I32 = lshr i32 undef, undef 546e726c587SPhilip Reames %I64 = lshr i64 undef, undef 547e726c587SPhilip Reames 548e726c587SPhilip Reames %V1I16 = lshr <1 x i16> undef, undef 549e726c587SPhilip Reames %V2I16 = lshr <2 x i16> undef, undef 550e726c587SPhilip Reames %V4I16 = lshr <4 x i16> undef, undef 551e726c587SPhilip Reames %V8I16 = lshr <8 x i16> undef, undef 552e726c587SPhilip Reames %V16I16 = lshr <16 x i16> undef, undef 553e726c587SPhilip Reames %V32I16 = lshr <32 x i16> undef, undef 554e726c587SPhilip Reames 555e726c587SPhilip Reames %NXV1I16 = lshr <vscale x 1 x i16> undef, undef 556e726c587SPhilip Reames %NXV2I16 = lshr <vscale x 2 x i16> undef, undef 557e726c587SPhilip Reames %NXV4I16 = lshr <vscale x 4 x i16> undef, undef 558e726c587SPhilip Reames %NXV8I16 = lshr <vscale x 8 x i16> undef, undef 559e726c587SPhilip Reames %NXV16I16 = lshr <vscale x 16 x i16> undef, undef 560e726c587SPhilip Reames %NXV32I16 = lshr <vscale x 32 x i16> undef, undef 561e726c587SPhilip Reames 562e726c587SPhilip Reames %V1I32 = lshr <1 x i32> undef, undef 563e726c587SPhilip Reames %V2I32 = lshr <2 x i32> undef, undef 564e726c587SPhilip Reames %V4I32 = lshr <4 x i32> undef, undef 565e726c587SPhilip Reames %V8I32 = lshr <8 x i32> undef, undef 566e726c587SPhilip Reames %V16I32 = lshr <16 x i32> undef, undef 567e726c587SPhilip Reames 568e726c587SPhilip Reames %NXV1I32 = lshr <vscale x 1 x i32> undef, undef 569e726c587SPhilip Reames %NXV2I32 = lshr <vscale x 2 x i32> undef, undef 570e726c587SPhilip Reames %NXV4I32 = lshr <vscale x 4 x i32> undef, undef 571e726c587SPhilip Reames %NXV8I32 = lshr <vscale x 8 x i32> undef, undef 572e726c587SPhilip Reames %NXV16I32 = lshr <vscale x 16 x i32> undef, undef 573e726c587SPhilip Reames 574e726c587SPhilip Reames %V1I64 = lshr <1 x i64> undef, undef 575e726c587SPhilip Reames %V2I64 = lshr <2 x i64> undef, undef 576e726c587SPhilip Reames %V4I64 = lshr <4 x i64> undef, undef 577e726c587SPhilip Reames %V8I64 = lshr <8 x i64> undef, undef 578e726c587SPhilip Reames 579e726c587SPhilip Reames %NXV1I64 = lshr <vscale x 1 x i64> undef, undef 580e726c587SPhilip Reames %NXV2I64 = lshr <vscale x 2 x i64> undef, undef 581e726c587SPhilip Reames %NXV4I64 = lshr <vscale x 4 x i64> undef, undef 582e726c587SPhilip Reames %NXV8I64 = lshr <vscale x 8 x i64> undef, undef 583e726c587SPhilip Reames 584e726c587SPhilip Reames ret i32 undef 585e726c587SPhilip Reames} 586e726c587SPhilip Reames 587e726c587SPhilip Reamesdefine i32 @ashr() { 588e726c587SPhilip Reames; CHECK-LABEL: 'ashr' 589e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I16 = ashr i16 undef, undef 590e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I32 = ashr i32 undef, undef 591e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I64 = ashr i64 undef, undef 592e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I16 = ashr <1 x i16> undef, undef 593e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I16 = ashr <2 x i16> undef, undef 594e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I16 = ashr <4 x i16> undef, undef 595e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8I16 = ashr <8 x i16> undef, undef 596e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16I16 = ashr <16 x i16> undef, undef 597e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V32I16 = ashr <32 x i16> undef, undef 598e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I16 = ashr <vscale x 1 x i16> undef, undef 599e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV2I16 = ashr <vscale x 2 x i16> undef, undef 600e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV4I16 = ashr <vscale x 4 x i16> undef, undef 60173eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV8I16 = ashr <vscale x 8 x i16> undef, undef 60273eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV16I16 = ashr <vscale x 16 x i16> undef, undef 60373eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV32I16 = ashr <vscale x 32 x i16> undef, undef 604e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I32 = ashr <1 x i32> undef, undef 605e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I32 = ashr <2 x i32> undef, undef 606e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I32 = ashr <4 x i32> undef, undef 607e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8I32 = ashr <8 x i32> undef, undef 608e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16I32 = ashr <16 x i32> undef, undef 609e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I32 = ashr <vscale x 1 x i32> undef, undef 610e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV2I32 = ashr <vscale x 2 x i32> undef, undef 61173eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV4I32 = ashr <vscale x 4 x i32> undef, undef 61273eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV8I32 = ashr <vscale x 8 x i32> undef, undef 61373eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV16I32 = ashr <vscale x 16 x i32> undef, undef 614e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I64 = ashr <1 x i64> undef, undef 615e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I64 = ashr <2 x i64> undef, undef 616e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4I64 = ashr <4 x i64> undef, undef 617e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8I64 = ashr <8 x i64> undef, undef 618e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I64 = ashr <vscale x 1 x i64> undef, undef 61973eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV2I64 = ashr <vscale x 2 x i64> undef, undef 62073eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV4I64 = ashr <vscale x 4 x i64> undef, undef 62173eacf94SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV8I64 = ashr <vscale x 8 x i64> undef, undef 6220a5d52a7SSergey Kachkov; CHECK-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 623e726c587SPhilip Reames; 6246ac2ce7dSCraig Topper; SIFIVE-X280-LABEL: 'ashr' 6256ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I16 = ashr i16 undef, undef 6266ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I32 = ashr i32 undef, undef 6276ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I64 = ashr i64 undef, undef 6286ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I16 = ashr <1 x i16> undef, undef 6296ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I16 = ashr <2 x i16> undef, undef 6306ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I16 = ashr <4 x i16> undef, undef 6316ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8I16 = ashr <8 x i16> undef, undef 6326ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V16I16 = ashr <16 x i16> undef, undef 6336ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V32I16 = ashr <32 x i16> undef, undef 6346ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I16 = ashr <vscale x 1 x i16> undef, undef 6356ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV2I16 = ashr <vscale x 2 x i16> undef, undef 6366ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV4I16 = ashr <vscale x 4 x i16> undef, undef 6376ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV8I16 = ashr <vscale x 8 x i16> undef, undef 6386ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV16I16 = ashr <vscale x 16 x i16> undef, undef 6396ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %NXV32I16 = ashr <vscale x 32 x i16> undef, undef 6406ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I32 = ashr <1 x i32> undef, undef 6416ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I32 = ashr <2 x i32> undef, undef 6426ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I32 = ashr <4 x i32> undef, undef 6436ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8I32 = ashr <8 x i32> undef, undef 6446ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16I32 = ashr <16 x i32> undef, undef 6456ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I32 = ashr <vscale x 1 x i32> undef, undef 6466ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV2I32 = ashr <vscale x 2 x i32> undef, undef 6476ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV4I32 = ashr <vscale x 4 x i32> undef, undef 6486ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV8I32 = ashr <vscale x 8 x i32> undef, undef 6496ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %NXV16I32 = ashr <vscale x 16 x i32> undef, undef 6506ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I64 = ashr <1 x i64> undef, undef 6516ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I64 = ashr <2 x i64> undef, undef 6526ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I64 = ashr <4 x i64> undef, undef 6536ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8I64 = ashr <8 x i64> undef, undef 6546ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV1I64 = ashr <vscale x 1 x i64> undef, undef 6556ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV2I64 = ashr <vscale x 2 x i64> undef, undef 6566ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV4I64 = ashr <vscale x 4 x i64> undef, undef 6576ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %NXV8I64 = ashr <vscale x 8 x i64> undef, undef 6580a5d52a7SSergey Kachkov; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 6596ac2ce7dSCraig Topper; 660e726c587SPhilip Reames %I16 = ashr i16 undef, undef 661e726c587SPhilip Reames %I32 = ashr i32 undef, undef 662e726c587SPhilip Reames %I64 = ashr i64 undef, undef 663e726c587SPhilip Reames 664e726c587SPhilip Reames %V1I16 = ashr <1 x i16> undef, undef 665e726c587SPhilip Reames %V2I16 = ashr <2 x i16> undef, undef 666e726c587SPhilip Reames %V4I16 = ashr <4 x i16> undef, undef 667e726c587SPhilip Reames %V8I16 = ashr <8 x i16> undef, undef 668e726c587SPhilip Reames %V16I16 = ashr <16 x i16> undef, undef 669e726c587SPhilip Reames %V32I16 = ashr <32 x i16> undef, undef 670e726c587SPhilip Reames 671e726c587SPhilip Reames %NXV1I16 = ashr <vscale x 1 x i16> undef, undef 672e726c587SPhilip Reames %NXV2I16 = ashr <vscale x 2 x i16> undef, undef 673e726c587SPhilip Reames %NXV4I16 = ashr <vscale x 4 x i16> undef, undef 674e726c587SPhilip Reames %NXV8I16 = ashr <vscale x 8 x i16> undef, undef 675e726c587SPhilip Reames %NXV16I16 = ashr <vscale x 16 x i16> undef, undef 676e726c587SPhilip Reames %NXV32I16 = ashr <vscale x 32 x i16> undef, undef 677e726c587SPhilip Reames 678e726c587SPhilip Reames %V1I32 = ashr <1 x i32> undef, undef 679e726c587SPhilip Reames %V2I32 = ashr <2 x i32> undef, undef 680e726c587SPhilip Reames %V4I32 = ashr <4 x i32> undef, undef 681e726c587SPhilip Reames %V8I32 = ashr <8 x i32> undef, undef 682e726c587SPhilip Reames %V16I32 = ashr <16 x i32> undef, undef 683e726c587SPhilip Reames 684e726c587SPhilip Reames %NXV1I32 = ashr <vscale x 1 x i32> undef, undef 685e726c587SPhilip Reames %NXV2I32 = ashr <vscale x 2 x i32> undef, undef 686e726c587SPhilip Reames %NXV4I32 = ashr <vscale x 4 x i32> undef, undef 687e726c587SPhilip Reames %NXV8I32 = ashr <vscale x 8 x i32> undef, undef 688e726c587SPhilip Reames %NXV16I32 = ashr <vscale x 16 x i32> undef, undef 689e726c587SPhilip Reames 690e726c587SPhilip Reames %V1I64 = ashr <1 x i64> undef, undef 691e726c587SPhilip Reames %V2I64 = ashr <2 x i64> undef, undef 692e726c587SPhilip Reames %V4I64 = ashr <4 x i64> undef, undef 693e726c587SPhilip Reames %V8I64 = ashr <8 x i64> undef, undef 694e726c587SPhilip Reames 695e726c587SPhilip Reames %NXV1I64 = ashr <vscale x 1 x i64> undef, undef 696e726c587SPhilip Reames %NXV2I64 = ashr <vscale x 2 x i64> undef, undef 697e726c587SPhilip Reames %NXV4I64 = ashr <vscale x 4 x i64> undef, undef 698e726c587SPhilip Reames %NXV8I64 = ashr <vscale x 8 x i64> undef, undef 699e726c587SPhilip Reames 700e726c587SPhilip Reames ret i32 undef 701e726c587SPhilip Reames} 702e726c587SPhilip Reames 703e726c587SPhilip Reamesdefine i32 @udiv() { 704e726c587SPhilip Reames; CHECK-LABEL: 'udiv' 705e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I16 = udiv i16 undef, undef 706e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I32 = udiv i32 undef, undef 707e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I64 = udiv i64 undef, undef 70822213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I16 = udiv <1 x i16> undef, undef 70922213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I16 = udiv <2 x i16> undef, undef 71022213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I16 = udiv <4 x i16> undef, undef 71122213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8I16 = udiv <8 x i16> undef, undef 7126cd6bde3SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16I16 = udiv <16 x i16> undef, undef 71322213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V32I16 = udiv <32 x i16> undef, undef 714e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I16 = udiv <vscale x 1 x i16> undef, undef 715e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV2I16 = udiv <vscale x 2 x i16> undef, undef 716e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV4I16 = udiv <vscale x 4 x i16> undef, undef 71722213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV8I16 = udiv <vscale x 8 x i16> undef, undef 71822213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV16I16 = udiv <vscale x 16 x i16> undef, undef 71922213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV32I16 = udiv <vscale x 32 x i16> undef, undef 72022213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I32 = udiv <1 x i32> undef, undef 72122213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I32 = udiv <2 x i32> undef, undef 72222213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I32 = udiv <4 x i32> undef, undef 7236cd6bde3SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8I32 = udiv <8 x i32> undef, undef 72422213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16I32 = udiv <16 x i32> undef, undef 725e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I32 = udiv <vscale x 1 x i32> undef, undef 726e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV2I32 = udiv <vscale x 2 x i32> undef, undef 72722213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV4I32 = udiv <vscale x 4 x i32> undef, undef 72822213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV8I32 = udiv <vscale x 8 x i32> undef, undef 72922213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV16I32 = udiv <vscale x 16 x i32> undef, undef 73022213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I64 = udiv <1 x i64> undef, undef 73122213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I64 = udiv <2 x i64> undef, undef 7326cd6bde3SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4I64 = udiv <4 x i64> undef, undef 73322213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8I64 = udiv <8 x i64> undef, undef 734e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I64 = udiv <vscale x 1 x i64> undef, undef 73522213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV2I64 = udiv <vscale x 2 x i64> undef, undef 73622213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV4I64 = udiv <vscale x 4 x i64> undef, undef 73722213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV8I64 = udiv <vscale x 8 x i64> undef, undef 7380a5d52a7SSergey Kachkov; CHECK-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 739e726c587SPhilip Reames; 7406ac2ce7dSCraig Topper; SIFIVE-X280-LABEL: 'udiv' 7416ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I16 = udiv i16 undef, undef 7426ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I32 = udiv i32 undef, undef 7436ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I64 = udiv i64 undef, undef 74422213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I16 = udiv <1 x i16> undef, undef 74522213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I16 = udiv <2 x i16> undef, undef 74622213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I16 = udiv <4 x i16> undef, undef 74722213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8I16 = udiv <8 x i16> undef, undef 74822213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V16I16 = udiv <16 x i16> undef, undef 7496ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V32I16 = udiv <32 x i16> undef, undef 7506ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I16 = udiv <vscale x 1 x i16> undef, undef 7516ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV2I16 = udiv <vscale x 2 x i16> undef, undef 75222213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV4I16 = udiv <vscale x 4 x i16> undef, undef 75322213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV8I16 = udiv <vscale x 8 x i16> undef, undef 75422213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV16I16 = udiv <vscale x 16 x i16> undef, undef 75522213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %NXV32I16 = udiv <vscale x 32 x i16> undef, undef 75622213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I32 = udiv <1 x i32> undef, undef 75722213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I32 = udiv <2 x i32> undef, undef 75822213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I32 = udiv <4 x i32> undef, undef 75922213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8I32 = udiv <8 x i32> undef, undef 7606ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16I32 = udiv <16 x i32> undef, undef 7616ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I32 = udiv <vscale x 1 x i32> undef, undef 76222213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV2I32 = udiv <vscale x 2 x i32> undef, undef 76322213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV4I32 = udiv <vscale x 4 x i32> undef, undef 76422213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV8I32 = udiv <vscale x 8 x i32> undef, undef 76522213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %NXV16I32 = udiv <vscale x 16 x i32> undef, undef 76622213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I64 = udiv <1 x i64> undef, undef 76722213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I64 = udiv <2 x i64> undef, undef 76822213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I64 = udiv <4 x i64> undef, undef 7696ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8I64 = udiv <8 x i64> undef, undef 77022213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV1I64 = udiv <vscale x 1 x i64> undef, undef 77122213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV2I64 = udiv <vscale x 2 x i64> undef, undef 77222213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV4I64 = udiv <vscale x 4 x i64> undef, undef 77322213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %NXV8I64 = udiv <vscale x 8 x i64> undef, undef 7740a5d52a7SSergey Kachkov; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 7756ac2ce7dSCraig Topper; 776e726c587SPhilip Reames %I16 = udiv i16 undef, undef 777e726c587SPhilip Reames %I32 = udiv i32 undef, undef 778e726c587SPhilip Reames %I64 = udiv i64 undef, undef 779e726c587SPhilip Reames 780e726c587SPhilip Reames %V1I16 = udiv <1 x i16> undef, undef 781e726c587SPhilip Reames %V2I16 = udiv <2 x i16> undef, undef 782e726c587SPhilip Reames %V4I16 = udiv <4 x i16> undef, undef 783e726c587SPhilip Reames %V8I16 = udiv <8 x i16> undef, undef 784e726c587SPhilip Reames %V16I16 = udiv <16 x i16> undef, undef 785e726c587SPhilip Reames %V32I16 = udiv <32 x i16> undef, undef 786e726c587SPhilip Reames 787e726c587SPhilip Reames %NXV1I16 = udiv <vscale x 1 x i16> undef, undef 788e726c587SPhilip Reames %NXV2I16 = udiv <vscale x 2 x i16> undef, undef 789e726c587SPhilip Reames %NXV4I16 = udiv <vscale x 4 x i16> undef, undef 790e726c587SPhilip Reames %NXV8I16 = udiv <vscale x 8 x i16> undef, undef 791e726c587SPhilip Reames %NXV16I16 = udiv <vscale x 16 x i16> undef, undef 792e726c587SPhilip Reames %NXV32I16 = udiv <vscale x 32 x i16> undef, undef 793e726c587SPhilip Reames 794e726c587SPhilip Reames %V1I32 = udiv <1 x i32> undef, undef 795e726c587SPhilip Reames %V2I32 = udiv <2 x i32> undef, undef 796e726c587SPhilip Reames %V4I32 = udiv <4 x i32> undef, undef 797e726c587SPhilip Reames %V8I32 = udiv <8 x i32> undef, undef 798e726c587SPhilip Reames %V16I32 = udiv <16 x i32> undef, undef 799e726c587SPhilip Reames 800e726c587SPhilip Reames %NXV1I32 = udiv <vscale x 1 x i32> undef, undef 801e726c587SPhilip Reames %NXV2I32 = udiv <vscale x 2 x i32> undef, undef 802e726c587SPhilip Reames %NXV4I32 = udiv <vscale x 4 x i32> undef, undef 803e726c587SPhilip Reames %NXV8I32 = udiv <vscale x 8 x i32> undef, undef 804e726c587SPhilip Reames %NXV16I32 = udiv <vscale x 16 x i32> undef, undef 805e726c587SPhilip Reames 806e726c587SPhilip Reames %V1I64 = udiv <1 x i64> undef, undef 807e726c587SPhilip Reames %V2I64 = udiv <2 x i64> undef, undef 808e726c587SPhilip Reames %V4I64 = udiv <4 x i64> undef, undef 809e726c587SPhilip Reames %V8I64 = udiv <8 x i64> undef, undef 810e726c587SPhilip Reames 811e726c587SPhilip Reames %NXV1I64 = udiv <vscale x 1 x i64> undef, undef 812e726c587SPhilip Reames %NXV2I64 = udiv <vscale x 2 x i64> undef, undef 813e726c587SPhilip Reames %NXV4I64 = udiv <vscale x 4 x i64> undef, undef 814e726c587SPhilip Reames %NXV8I64 = udiv <vscale x 8 x i64> undef, undef 815e726c587SPhilip Reames 816e726c587SPhilip Reames ret i32 undef 817e726c587SPhilip Reames} 818e726c587SPhilip Reames 819e726c587SPhilip Reamesdefine i32 @urem() { 820e726c587SPhilip Reames; CHECK-LABEL: 'urem' 821e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I16 = urem i16 undef, undef 822e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I32 = urem i32 undef, undef 823e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I64 = urem i64 undef, undef 82422213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I16 = urem <1 x i16> undef, undef 82522213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I16 = urem <2 x i16> undef, undef 82622213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I16 = urem <4 x i16> undef, undef 82722213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8I16 = urem <8 x i16> undef, undef 8286cd6bde3SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16I16 = urem <16 x i16> undef, undef 82922213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V32I16 = urem <32 x i16> undef, undef 830e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I16 = urem <vscale x 1 x i16> undef, undef 831e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV2I16 = urem <vscale x 2 x i16> undef, undef 832e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV4I16 = urem <vscale x 4 x i16> undef, undef 83322213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV8I16 = urem <vscale x 8 x i16> undef, undef 83422213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV16I16 = urem <vscale x 16 x i16> undef, undef 83522213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV32I16 = urem <vscale x 32 x i16> undef, undef 83622213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I32 = urem <1 x i32> undef, undef 83722213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I32 = urem <2 x i32> undef, undef 83822213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I32 = urem <4 x i32> undef, undef 8396cd6bde3SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8I32 = urem <8 x i32> undef, undef 84022213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16I32 = urem <16 x i32> undef, undef 841e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I32 = urem <vscale x 1 x i32> undef, undef 842e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV2I32 = urem <vscale x 2 x i32> undef, undef 84322213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV4I32 = urem <vscale x 4 x i32> undef, undef 84422213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV8I32 = urem <vscale x 8 x i32> undef, undef 84522213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV16I32 = urem <vscale x 16 x i32> undef, undef 84622213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I64 = urem <1 x i64> undef, undef 84722213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I64 = urem <2 x i64> undef, undef 8486cd6bde3SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4I64 = urem <4 x i64> undef, undef 84922213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8I64 = urem <8 x i64> undef, undef 850e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I64 = urem <vscale x 1 x i64> undef, undef 85122213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV2I64 = urem <vscale x 2 x i64> undef, undef 85222213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV4I64 = urem <vscale x 4 x i64> undef, undef 85322213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV8I64 = urem <vscale x 8 x i64> undef, undef 8540a5d52a7SSergey Kachkov; CHECK-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 855e726c587SPhilip Reames; 8566ac2ce7dSCraig Topper; SIFIVE-X280-LABEL: 'urem' 8576ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I16 = urem i16 undef, undef 8586ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I32 = urem i32 undef, undef 8596ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I64 = urem i64 undef, undef 86022213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I16 = urem <1 x i16> undef, undef 86122213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I16 = urem <2 x i16> undef, undef 86222213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I16 = urem <4 x i16> undef, undef 86322213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8I16 = urem <8 x i16> undef, undef 86422213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V16I16 = urem <16 x i16> undef, undef 8656ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V32I16 = urem <32 x i16> undef, undef 8666ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I16 = urem <vscale x 1 x i16> undef, undef 8676ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV2I16 = urem <vscale x 2 x i16> undef, undef 86822213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV4I16 = urem <vscale x 4 x i16> undef, undef 86922213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV8I16 = urem <vscale x 8 x i16> undef, undef 87022213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV16I16 = urem <vscale x 16 x i16> undef, undef 87122213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %NXV32I16 = urem <vscale x 32 x i16> undef, undef 87222213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I32 = urem <1 x i32> undef, undef 87322213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I32 = urem <2 x i32> undef, undef 87422213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I32 = urem <4 x i32> undef, undef 87522213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8I32 = urem <8 x i32> undef, undef 8766ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16I32 = urem <16 x i32> undef, undef 8776ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I32 = urem <vscale x 1 x i32> undef, undef 87822213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV2I32 = urem <vscale x 2 x i32> undef, undef 87922213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV4I32 = urem <vscale x 4 x i32> undef, undef 88022213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV8I32 = urem <vscale x 8 x i32> undef, undef 88122213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %NXV16I32 = urem <vscale x 16 x i32> undef, undef 88222213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I64 = urem <1 x i64> undef, undef 88322213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I64 = urem <2 x i64> undef, undef 88422213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I64 = urem <4 x i64> undef, undef 8856ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8I64 = urem <8 x i64> undef, undef 88622213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV1I64 = urem <vscale x 1 x i64> undef, undef 88722213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV2I64 = urem <vscale x 2 x i64> undef, undef 88822213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV4I64 = urem <vscale x 4 x i64> undef, undef 88922213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %NXV8I64 = urem <vscale x 8 x i64> undef, undef 8900a5d52a7SSergey Kachkov; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 8916ac2ce7dSCraig Topper; 892e726c587SPhilip Reames %I16 = urem i16 undef, undef 893e726c587SPhilip Reames %I32 = urem i32 undef, undef 894e726c587SPhilip Reames %I64 = urem i64 undef, undef 895e726c587SPhilip Reames 896e726c587SPhilip Reames %V1I16 = urem <1 x i16> undef, undef 897e726c587SPhilip Reames %V2I16 = urem <2 x i16> undef, undef 898e726c587SPhilip Reames %V4I16 = urem <4 x i16> undef, undef 899e726c587SPhilip Reames %V8I16 = urem <8 x i16> undef, undef 900e726c587SPhilip Reames %V16I16 = urem <16 x i16> undef, undef 901e726c587SPhilip Reames %V32I16 = urem <32 x i16> undef, undef 902e726c587SPhilip Reames 903e726c587SPhilip Reames %NXV1I16 = urem <vscale x 1 x i16> undef, undef 904e726c587SPhilip Reames %NXV2I16 = urem <vscale x 2 x i16> undef, undef 905e726c587SPhilip Reames %NXV4I16 = urem <vscale x 4 x i16> undef, undef 906e726c587SPhilip Reames %NXV8I16 = urem <vscale x 8 x i16> undef, undef 907e726c587SPhilip Reames %NXV16I16 = urem <vscale x 16 x i16> undef, undef 908e726c587SPhilip Reames %NXV32I16 = urem <vscale x 32 x i16> undef, undef 909e726c587SPhilip Reames 910e726c587SPhilip Reames %V1I32 = urem <1 x i32> undef, undef 911e726c587SPhilip Reames %V2I32 = urem <2 x i32> undef, undef 912e726c587SPhilip Reames %V4I32 = urem <4 x i32> undef, undef 913e726c587SPhilip Reames %V8I32 = urem <8 x i32> undef, undef 914e726c587SPhilip Reames %V16I32 = urem <16 x i32> undef, undef 915e726c587SPhilip Reames 916e726c587SPhilip Reames %NXV1I32 = urem <vscale x 1 x i32> undef, undef 917e726c587SPhilip Reames %NXV2I32 = urem <vscale x 2 x i32> undef, undef 918e726c587SPhilip Reames %NXV4I32 = urem <vscale x 4 x i32> undef, undef 919e726c587SPhilip Reames %NXV8I32 = urem <vscale x 8 x i32> undef, undef 920e726c587SPhilip Reames %NXV16I32 = urem <vscale x 16 x i32> undef, undef 921e726c587SPhilip Reames 922e726c587SPhilip Reames %V1I64 = urem <1 x i64> undef, undef 923e726c587SPhilip Reames %V2I64 = urem <2 x i64> undef, undef 924e726c587SPhilip Reames %V4I64 = urem <4 x i64> undef, undef 925e726c587SPhilip Reames %V8I64 = urem <8 x i64> undef, undef 926e726c587SPhilip Reames 927e726c587SPhilip Reames %NXV1I64 = urem <vscale x 1 x i64> undef, undef 928e726c587SPhilip Reames %NXV2I64 = urem <vscale x 2 x i64> undef, undef 929e726c587SPhilip Reames %NXV4I64 = urem <vscale x 4 x i64> undef, undef 930e726c587SPhilip Reames %NXV8I64 = urem <vscale x 8 x i64> undef, undef 931e726c587SPhilip Reames 932e726c587SPhilip Reames ret i32 undef 933e726c587SPhilip Reames} 934e726c587SPhilip Reames 935e726c587SPhilip Reamesdefine i32 @sdiv() { 936e726c587SPhilip Reames; CHECK-LABEL: 'sdiv' 937e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I16 = sdiv i16 undef, undef 938e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I32 = sdiv i32 undef, undef 939e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I64 = sdiv i64 undef, undef 94022213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I16 = sdiv <1 x i16> undef, undef 94122213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I16 = sdiv <2 x i16> undef, undef 94222213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I16 = sdiv <4 x i16> undef, undef 94322213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8I16 = sdiv <8 x i16> undef, undef 9446cd6bde3SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16I16 = sdiv <16 x i16> undef, undef 94522213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V32I16 = sdiv <32 x i16> undef, undef 946e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I16 = sdiv <vscale x 1 x i16> undef, undef 947e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV2I16 = sdiv <vscale x 2 x i16> undef, undef 948e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV4I16 = sdiv <vscale x 4 x i16> undef, undef 94922213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV8I16 = sdiv <vscale x 8 x i16> undef, undef 95022213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV16I16 = sdiv <vscale x 16 x i16> undef, undef 95122213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV32I16 = sdiv <vscale x 32 x i16> undef, undef 95222213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I32 = sdiv <1 x i32> undef, undef 95322213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I32 = sdiv <2 x i32> undef, undef 95422213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I32 = sdiv <4 x i32> undef, undef 9556cd6bde3SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8I32 = sdiv <8 x i32> undef, undef 95622213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16I32 = sdiv <16 x i32> undef, undef 957e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I32 = sdiv <vscale x 1 x i32> undef, undef 958e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV2I32 = sdiv <vscale x 2 x i32> undef, undef 95922213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV4I32 = sdiv <vscale x 4 x i32> undef, undef 96022213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV8I32 = sdiv <vscale x 8 x i32> undef, undef 96122213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV16I32 = sdiv <vscale x 16 x i32> undef, undef 96222213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I64 = sdiv <1 x i64> undef, undef 96322213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I64 = sdiv <2 x i64> undef, undef 9646cd6bde3SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4I64 = sdiv <4 x i64> undef, undef 96522213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8I64 = sdiv <8 x i64> undef, undef 966e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I64 = sdiv <vscale x 1 x i64> undef, undef 96722213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV2I64 = sdiv <vscale x 2 x i64> undef, undef 96822213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV4I64 = sdiv <vscale x 4 x i64> undef, undef 96922213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV8I64 = sdiv <vscale x 8 x i64> undef, undef 9700a5d52a7SSergey Kachkov; CHECK-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 971e726c587SPhilip Reames; 9726ac2ce7dSCraig Topper; SIFIVE-X280-LABEL: 'sdiv' 9736ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I16 = sdiv i16 undef, undef 9746ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I32 = sdiv i32 undef, undef 9756ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I64 = sdiv i64 undef, undef 97622213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I16 = sdiv <1 x i16> undef, undef 97722213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I16 = sdiv <2 x i16> undef, undef 97822213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I16 = sdiv <4 x i16> undef, undef 97922213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8I16 = sdiv <8 x i16> undef, undef 98022213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V16I16 = sdiv <16 x i16> undef, undef 9816ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V32I16 = sdiv <32 x i16> undef, undef 9826ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I16 = sdiv <vscale x 1 x i16> undef, undef 9836ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV2I16 = sdiv <vscale x 2 x i16> undef, undef 98422213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV4I16 = sdiv <vscale x 4 x i16> undef, undef 98522213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV8I16 = sdiv <vscale x 8 x i16> undef, undef 98622213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV16I16 = sdiv <vscale x 16 x i16> undef, undef 98722213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %NXV32I16 = sdiv <vscale x 32 x i16> undef, undef 98822213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I32 = sdiv <1 x i32> undef, undef 98922213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I32 = sdiv <2 x i32> undef, undef 99022213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I32 = sdiv <4 x i32> undef, undef 99122213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8I32 = sdiv <8 x i32> undef, undef 9926ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16I32 = sdiv <16 x i32> undef, undef 9936ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I32 = sdiv <vscale x 1 x i32> undef, undef 99422213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV2I32 = sdiv <vscale x 2 x i32> undef, undef 99522213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV4I32 = sdiv <vscale x 4 x i32> undef, undef 99622213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV8I32 = sdiv <vscale x 8 x i32> undef, undef 99722213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %NXV16I32 = sdiv <vscale x 16 x i32> undef, undef 99822213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I64 = sdiv <1 x i64> undef, undef 99922213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I64 = sdiv <2 x i64> undef, undef 100022213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I64 = sdiv <4 x i64> undef, undef 10016ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8I64 = sdiv <8 x i64> undef, undef 100222213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV1I64 = sdiv <vscale x 1 x i64> undef, undef 100322213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV2I64 = sdiv <vscale x 2 x i64> undef, undef 100422213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV4I64 = sdiv <vscale x 4 x i64> undef, undef 100522213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %NXV8I64 = sdiv <vscale x 8 x i64> undef, undef 10060a5d52a7SSergey Kachkov; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 10076ac2ce7dSCraig Topper; 1008e726c587SPhilip Reames %I16 = sdiv i16 undef, undef 1009e726c587SPhilip Reames %I32 = sdiv i32 undef, undef 1010e726c587SPhilip Reames %I64 = sdiv i64 undef, undef 1011e726c587SPhilip Reames 1012e726c587SPhilip Reames %V1I16 = sdiv <1 x i16> undef, undef 1013e726c587SPhilip Reames %V2I16 = sdiv <2 x i16> undef, undef 1014e726c587SPhilip Reames %V4I16 = sdiv <4 x i16> undef, undef 1015e726c587SPhilip Reames %V8I16 = sdiv <8 x i16> undef, undef 1016e726c587SPhilip Reames %V16I16 = sdiv <16 x i16> undef, undef 1017e726c587SPhilip Reames %V32I16 = sdiv <32 x i16> undef, undef 1018e726c587SPhilip Reames 1019e726c587SPhilip Reames %NXV1I16 = sdiv <vscale x 1 x i16> undef, undef 1020e726c587SPhilip Reames %NXV2I16 = sdiv <vscale x 2 x i16> undef, undef 1021e726c587SPhilip Reames %NXV4I16 = sdiv <vscale x 4 x i16> undef, undef 1022e726c587SPhilip Reames %NXV8I16 = sdiv <vscale x 8 x i16> undef, undef 1023e726c587SPhilip Reames %NXV16I16 = sdiv <vscale x 16 x i16> undef, undef 1024e726c587SPhilip Reames %NXV32I16 = sdiv <vscale x 32 x i16> undef, undef 1025e726c587SPhilip Reames 1026e726c587SPhilip Reames %V1I32 = sdiv <1 x i32> undef, undef 1027e726c587SPhilip Reames %V2I32 = sdiv <2 x i32> undef, undef 1028e726c587SPhilip Reames %V4I32 = sdiv <4 x i32> undef, undef 1029e726c587SPhilip Reames %V8I32 = sdiv <8 x i32> undef, undef 1030e726c587SPhilip Reames %V16I32 = sdiv <16 x i32> undef, undef 1031e726c587SPhilip Reames 1032e726c587SPhilip Reames %NXV1I32 = sdiv <vscale x 1 x i32> undef, undef 1033e726c587SPhilip Reames %NXV2I32 = sdiv <vscale x 2 x i32> undef, undef 1034e726c587SPhilip Reames %NXV4I32 = sdiv <vscale x 4 x i32> undef, undef 1035e726c587SPhilip Reames %NXV8I32 = sdiv <vscale x 8 x i32> undef, undef 1036e726c587SPhilip Reames %NXV16I32 = sdiv <vscale x 16 x i32> undef, undef 1037e726c587SPhilip Reames 1038e726c587SPhilip Reames %V1I64 = sdiv <1 x i64> undef, undef 1039e726c587SPhilip Reames %V2I64 = sdiv <2 x i64> undef, undef 1040e726c587SPhilip Reames %V4I64 = sdiv <4 x i64> undef, undef 1041e726c587SPhilip Reames %V8I64 = sdiv <8 x i64> undef, undef 1042e726c587SPhilip Reames 1043e726c587SPhilip Reames %NXV1I64 = sdiv <vscale x 1 x i64> undef, undef 1044e726c587SPhilip Reames %NXV2I64 = sdiv <vscale x 2 x i64> undef, undef 1045e726c587SPhilip Reames %NXV4I64 = sdiv <vscale x 4 x i64> undef, undef 1046e726c587SPhilip Reames %NXV8I64 = sdiv <vscale x 8 x i64> undef, undef 1047e726c587SPhilip Reames 1048e726c587SPhilip Reames ret i32 undef 1049e726c587SPhilip Reames} 1050e726c587SPhilip Reames 1051e726c587SPhilip Reamesdefine i32 @srem() { 1052e726c587SPhilip Reames; CHECK-LABEL: 'srem' 1053e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I16 = srem i16 undef, undef 1054e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I32 = srem i32 undef, undef 1055e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I64 = srem i64 undef, undef 105622213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I16 = srem <1 x i16> undef, undef 105722213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I16 = srem <2 x i16> undef, undef 105822213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I16 = srem <4 x i16> undef, undef 105922213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8I16 = srem <8 x i16> undef, undef 10606cd6bde3SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16I16 = srem <16 x i16> undef, undef 106122213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V32I16 = srem <32 x i16> undef, undef 1062e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I16 = srem <vscale x 1 x i16> undef, undef 1063e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV2I16 = srem <vscale x 2 x i16> undef, undef 1064e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV4I16 = srem <vscale x 4 x i16> undef, undef 106522213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV8I16 = srem <vscale x 8 x i16> undef, undef 106622213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV16I16 = srem <vscale x 16 x i16> undef, undef 106722213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV32I16 = srem <vscale x 32 x i16> undef, undef 106822213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I32 = srem <1 x i32> undef, undef 106922213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I32 = srem <2 x i32> undef, undef 107022213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I32 = srem <4 x i32> undef, undef 10716cd6bde3SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8I32 = srem <8 x i32> undef, undef 107222213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V16I32 = srem <16 x i32> undef, undef 1073e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I32 = srem <vscale x 1 x i32> undef, undef 1074e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV2I32 = srem <vscale x 2 x i32> undef, undef 107522213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV4I32 = srem <vscale x 4 x i32> undef, undef 107622213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV8I32 = srem <vscale x 8 x i32> undef, undef 107722213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV16I32 = srem <vscale x 16 x i32> undef, undef 107822213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I64 = srem <1 x i64> undef, undef 107922213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I64 = srem <2 x i64> undef, undef 10806cd6bde3SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V4I64 = srem <4 x i64> undef, undef 108122213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %V8I64 = srem <8 x i64> undef, undef 1082e726c587SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I64 = srem <vscale x 1 x i64> undef, undef 108322213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV2I64 = srem <vscale x 2 x i64> undef, undef 108422213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV4I64 = srem <vscale x 4 x i64> undef, undef 108522213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV8I64 = srem <vscale x 8 x i64> undef, undef 10860a5d52a7SSergey Kachkov; CHECK-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 1087e726c587SPhilip Reames; 10886ac2ce7dSCraig Topper; SIFIVE-X280-LABEL: 'srem' 10896ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I16 = srem i16 undef, undef 10906ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I32 = srem i32 undef, undef 10916ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %I64 = srem i64 undef, undef 109222213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I16 = srem <1 x i16> undef, undef 109322213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I16 = srem <2 x i16> undef, undef 109422213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I16 = srem <4 x i16> undef, undef 109522213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8I16 = srem <8 x i16> undef, undef 109622213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V16I16 = srem <16 x i16> undef, undef 10976ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V32I16 = srem <32 x i16> undef, undef 10986ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I16 = srem <vscale x 1 x i16> undef, undef 10996ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV2I16 = srem <vscale x 2 x i16> undef, undef 110022213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV4I16 = srem <vscale x 4 x i16> undef, undef 110122213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV8I16 = srem <vscale x 8 x i16> undef, undef 110222213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV16I16 = srem <vscale x 16 x i16> undef, undef 110322213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %NXV32I16 = srem <vscale x 32 x i16> undef, undef 110422213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I32 = srem <1 x i32> undef, undef 110522213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I32 = srem <2 x i32> undef, undef 110622213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I32 = srem <4 x i32> undef, undef 110722213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V8I32 = srem <8 x i32> undef, undef 11086ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V16I32 = srem <16 x i32> undef, undef 11096ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %NXV1I32 = srem <vscale x 1 x i32> undef, undef 111022213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV2I32 = srem <vscale x 2 x i32> undef, undef 111122213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV4I32 = srem <vscale x 4 x i32> undef, undef 111222213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV8I32 = srem <vscale x 8 x i32> undef, undef 111322213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %NXV16I32 = srem <vscale x 16 x i32> undef, undef 111422213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V1I64 = srem <1 x i64> undef, undef 111522213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V2I64 = srem <2 x i64> undef, undef 111622213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %V4I64 = srem <4 x i64> undef, undef 11176ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %V8I64 = srem <8 x i64> undef, undef 111822213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %NXV1I64 = srem <vscale x 1 x i64> undef, undef 111922213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %NXV2I64 = srem <vscale x 2 x i64> undef, undef 112022213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %NXV4I64 = srem <vscale x 4 x i64> undef, undef 112122213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %NXV8I64 = srem <vscale x 8 x i64> undef, undef 11220a5d52a7SSergey Kachkov; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 11236ac2ce7dSCraig Topper; 1124e726c587SPhilip Reames %I16 = srem i16 undef, undef 1125e726c587SPhilip Reames %I32 = srem i32 undef, undef 1126e726c587SPhilip Reames %I64 = srem i64 undef, undef 1127e726c587SPhilip Reames 1128e726c587SPhilip Reames %V1I16 = srem <1 x i16> undef, undef 1129e726c587SPhilip Reames %V2I16 = srem <2 x i16> undef, undef 1130e726c587SPhilip Reames %V4I16 = srem <4 x i16> undef, undef 1131e726c587SPhilip Reames %V8I16 = srem <8 x i16> undef, undef 1132e726c587SPhilip Reames %V16I16 = srem <16 x i16> undef, undef 1133e726c587SPhilip Reames %V32I16 = srem <32 x i16> undef, undef 1134e726c587SPhilip Reames 1135e726c587SPhilip Reames %NXV1I16 = srem <vscale x 1 x i16> undef, undef 1136e726c587SPhilip Reames %NXV2I16 = srem <vscale x 2 x i16> undef, undef 1137e726c587SPhilip Reames %NXV4I16 = srem <vscale x 4 x i16> undef, undef 1138e726c587SPhilip Reames %NXV8I16 = srem <vscale x 8 x i16> undef, undef 1139e726c587SPhilip Reames %NXV16I16 = srem <vscale x 16 x i16> undef, undef 1140e726c587SPhilip Reames %NXV32I16 = srem <vscale x 32 x i16> undef, undef 1141e726c587SPhilip Reames 1142e726c587SPhilip Reames %V1I32 = srem <1 x i32> undef, undef 1143e726c587SPhilip Reames %V2I32 = srem <2 x i32> undef, undef 1144e726c587SPhilip Reames %V4I32 = srem <4 x i32> undef, undef 1145e726c587SPhilip Reames %V8I32 = srem <8 x i32> undef, undef 1146e726c587SPhilip Reames %V16I32 = srem <16 x i32> undef, undef 1147e726c587SPhilip Reames 1148e726c587SPhilip Reames %NXV1I32 = srem <vscale x 1 x i32> undef, undef 1149e726c587SPhilip Reames %NXV2I32 = srem <vscale x 2 x i32> undef, undef 1150e726c587SPhilip Reames %NXV4I32 = srem <vscale x 4 x i32> undef, undef 1151e726c587SPhilip Reames %NXV8I32 = srem <vscale x 8 x i32> undef, undef 1152e726c587SPhilip Reames %NXV16I32 = srem <vscale x 16 x i32> undef, undef 1153e726c587SPhilip Reames 1154e726c587SPhilip Reames %V1I64 = srem <1 x i64> undef, undef 1155e726c587SPhilip Reames %V2I64 = srem <2 x i64> undef, undef 1156e726c587SPhilip Reames %V4I64 = srem <4 x i64> undef, undef 1157e726c587SPhilip Reames %V8I64 = srem <8 x i64> undef, undef 1158e726c587SPhilip Reames 1159e726c587SPhilip Reames %NXV1I64 = srem <vscale x 1 x i64> undef, undef 1160e726c587SPhilip Reames %NXV2I64 = srem <vscale x 2 x i64> undef, undef 1161e726c587SPhilip Reames %NXV4I64 = srem <vscale x 4 x i64> undef, undef 1162e726c587SPhilip Reames %NXV8I64 = srem <vscale x 8 x i64> undef, undef 1163e726c587SPhilip Reames 1164e726c587SPhilip Reames ret i32 undef 1165e726c587SPhilip Reames} 11663c9d2471SPhilip Reames 11673c9d2471SPhilip Reames 11683c9d2471SPhilip Reames; For constants, have to account for cost of materializing the constant itself 11693c9d2471SPhilip Reames; This test exercises a few interesting constant patterns at VLEN=128 11703c9d2471SPhilip Reamesdefine void @add_of_constant() { 11713c9d2471SPhilip Reames; CHECK-LABEL: 'add_of_constant' 11723c9d2471SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %1 = add <4 x i32> poison, undef 11733c9d2471SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %2 = add <4 x i32> undef, undef 11743c9d2471SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %3 = add <4 x i32> zeroinitializer, undef 11753c9d2471SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %4 = add <2 x i64> zeroinitializer, undef 1176*38fffa63SPaul Walker; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %5 = add <4 x i32> splat (i32 1), undef 1177*38fffa63SPaul Walker; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %6 = add <2 x i64> splat (i64 1), undef 1178*38fffa63SPaul Walker; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %7 = add <4 x i32> splat (i32 4096), undef 11797d82c994SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %8 = add <4 x i32> <i32 1, i32 1, i32 2, i32 1>, undef 11807d82c994SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %9 = add <4 x i32> <i32 2, i32 1, i32 1, i32 1>, undef 11817d82c994SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %10 = add <4 x i32> <i32 0, i32 1, i32 2, i32 3>, undef 11827d82c994SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %11 = add <4 x i32> <i32 1, i32 2, i32 3, i32 4>, undef 11837d82c994SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %12 = add <4 x i32> <i32 -1, i32 -2, i32 -3, i32 -4>, undef 11847d82c994SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %13 = add <4 x i32> <i32 2, i32 4, i32 6, i32 8>, undef 11857d82c994SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %14 = add <4 x i32> <i32 -1, i32 0, i32 2, i32 1>, undef 11867d82c994SPhilip Reames; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %15 = add <4 x i32> <i32 256, i32 4096, i32 57, i32 1>, undef 11870a5d52a7SSergey Kachkov; CHECK-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret void 11883c9d2471SPhilip Reames; 11896ac2ce7dSCraig Topper; SIFIVE-X280-LABEL: 'add_of_constant' 11906ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %1 = add <4 x i32> poison, undef 11916ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %2 = add <4 x i32> undef, undef 11926ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %3 = add <4 x i32> zeroinitializer, undef 11936ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %4 = add <2 x i64> zeroinitializer, undef 1194*38fffa63SPaul Walker; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %5 = add <4 x i32> splat (i32 1), undef 1195*38fffa63SPaul Walker; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %6 = add <2 x i64> splat (i64 1), undef 1196*38fffa63SPaul Walker; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %7 = add <4 x i32> splat (i32 4096), undef 11976ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %8 = add <4 x i32> <i32 1, i32 1, i32 2, i32 1>, undef 11986ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %9 = add <4 x i32> <i32 2, i32 1, i32 1, i32 1>, undef 11996ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %10 = add <4 x i32> <i32 0, i32 1, i32 2, i32 3>, undef 12006ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %11 = add <4 x i32> <i32 1, i32 2, i32 3, i32 4>, undef 12016ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %12 = add <4 x i32> <i32 -1, i32 -2, i32 -3, i32 -4>, undef 12026ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %13 = add <4 x i32> <i32 2, i32 4, i32 6, i32 8>, undef 12036ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %14 = add <4 x i32> <i32 -1, i32 0, i32 2, i32 1>, undef 12046ac2ce7dSCraig Topper; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %15 = add <4 x i32> <i32 256, i32 4096, i32 57, i32 1>, undef 12050a5d52a7SSergey Kachkov; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret void 12066ac2ce7dSCraig Topper; 12073c9d2471SPhilip Reames 12083c9d2471SPhilip Reames ; poison and undef 12093c9d2471SPhilip Reames add <4 x i32> poison, undef 12103c9d2471SPhilip Reames add <4 x i32> undef, undef 12113c9d2471SPhilip Reames 12123c9d2471SPhilip Reames ; Various splats 12133c9d2471SPhilip Reames add <4 x i32> zeroinitializer, undef 12143c9d2471SPhilip Reames add <2 x i64> zeroinitializer, undef 12153c9d2471SPhilip Reames add <4 x i32> <i32 1, i32 1, i32 1, i32 1>, undef 12163c9d2471SPhilip Reames add <2 x i64> <i64 1, i64 1>, undef 12173c9d2471SPhilip Reames add <4 x i32> <i32 4096, i32 4096, i32 4096, i32 4096>, undef 12183c9d2471SPhilip Reames 12193c9d2471SPhilip Reames ; Nearly splats 12203c9d2471SPhilip Reames add <4 x i32> <i32 1, i32 1, i32 2, i32 1>, undef 12213c9d2471SPhilip Reames add <4 x i32> <i32 2, i32 1, i32 1, i32 1>, undef 12223c9d2471SPhilip Reames 12233c9d2471SPhilip Reames ; Step vector functions 12243c9d2471SPhilip Reames add <4 x i32> <i32 0, i32 1, i32 2, i32 3>, undef 12253c9d2471SPhilip Reames add <4 x i32> <i32 1, i32 2, i32 3, i32 4>, undef 12263c9d2471SPhilip Reames add <4 x i32> <i32 -1, i32 -2, i32 -3, i32 -4>, undef 12273c9d2471SPhilip Reames add <4 x i32> <i32 2, i32 4, i32 6, i32 8>, undef 12283c9d2471SPhilip Reames 12293c9d2471SPhilip Reames ; General case 128 bit constants 12303c9d2471SPhilip Reames add <4 x i32> <i32 -1, i32 0, i32 2, i32 1>, undef 12313c9d2471SPhilip Reames add <4 x i32> <i32 256, i32 4096, i32 57, i32 1>, undef 12323c9d2471SPhilip Reames 12333c9d2471SPhilip Reames ret void 12343c9d2471SPhilip Reames} 123522213d58SShih-Po Hung 123622213d58SShih-Po Hungdefine i32 @and() { 123722213d58SShih-Po Hung; CHECK-LABEL: 'and' 123822213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %1 = and i1 undef, undef 123922213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %2 = and i16 undef, undef 124022213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %3 = and i32 undef, undef 124122213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %4 = and i64 undef, undef 124222213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %5 = and <1 x i1> undef, undef 124322213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %6 = and <2 x i1> undef, undef 124422213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %7 = and <4 x i1> undef, undef 124522213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %8 = and <8 x i1> undef, undef 124622213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %9 = and <16 x i1> undef, undef 124722213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %10 = and <32 x i1> undef, undef 124822213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %11 = and <1 x i16> undef, undef 124922213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %12 = and <2 x i16> undef, undef 125022213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %13 = and <4 x i16> undef, undef 125122213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %14 = and <8 x i16> undef, undef 125222213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %15 = and <16 x i16> undef, undef 125322213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %16 = and <32 x i16> undef, undef 125422213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %17 = and <1 x i32> undef, undef 125522213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %18 = and <2 x i32> undef, undef 125622213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %19 = and <4 x i32> undef, undef 125722213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %20 = and <8 x i32> undef, undef 125822213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %21 = and <16 x i32> undef, undef 125922213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %22 = and <1 x i64> undef, undef 126022213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %23 = and <2 x i64> undef, undef 126122213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %24 = and <4 x i64> undef, undef 126222213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %25 = and <8 x i64> undef, undef 126322213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %26 = and <vscale x 1 x i1> undef, undef 126422213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %27 = and <vscale x 2 x i1> undef, undef 126522213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %28 = and <vscale x 4 x i1> undef, undef 126622213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %29 = and <vscale x 8 x i1> undef, undef 126722213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %30 = and <vscale x 16 x i1> undef, undef 126822213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %31 = and <vscale x 32 x i1> undef, undef 126922213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %32 = and <vscale x 1 x i16> undef, undef 127022213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %33 = and <vscale x 2 x i16> undef, undef 127122213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %34 = and <vscale x 4 x i16> undef, undef 127222213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %35 = and <vscale x 8 x i16> undef, undef 127322213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %36 = and <vscale x 16 x i16> undef, undef 127422213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %37 = and <vscale x 32 x i16> undef, undef 127522213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %38 = and <vscale x 1 x i32> undef, undef 127622213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %39 = and <vscale x 2 x i32> undef, undef 127722213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %40 = and <vscale x 4 x i32> undef, undef 127822213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %41 = and <vscale x 8 x i32> undef, undef 127922213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %42 = and <vscale x 16 x i32> undef, undef 128022213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %43 = and <vscale x 1 x i64> undef, undef 128122213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %44 = and <vscale x 2 x i64> undef, undef 128222213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %45 = and <vscale x 4 x i64> undef, undef 128322213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %46 = and <vscale x 8 x i64> undef, undef 128422213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 128522213d58SShih-Po Hung; 128622213d58SShih-Po Hung; SIFIVE-X280-LABEL: 'and' 128722213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %1 = and i1 undef, undef 128822213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %2 = and i16 undef, undef 128922213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %3 = and i32 undef, undef 129022213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %4 = and i64 undef, undef 129122213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %5 = and <1 x i1> undef, undef 129222213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %6 = and <2 x i1> undef, undef 129322213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %7 = and <4 x i1> undef, undef 129422213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %8 = and <8 x i1> undef, undef 129522213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %9 = and <16 x i1> undef, undef 129622213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %10 = and <32 x i1> undef, undef 129722213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %11 = and <1 x i16> undef, undef 129822213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %12 = and <2 x i16> undef, undef 129922213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %13 = and <4 x i16> undef, undef 130022213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %14 = and <8 x i16> undef, undef 130122213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %15 = and <16 x i16> undef, undef 130222213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %16 = and <32 x i16> undef, undef 130322213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %17 = and <1 x i32> undef, undef 130422213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %18 = and <2 x i32> undef, undef 130522213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %19 = and <4 x i32> undef, undef 130622213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %20 = and <8 x i32> undef, undef 130722213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %21 = and <16 x i32> undef, undef 130822213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %22 = and <1 x i64> undef, undef 130922213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %23 = and <2 x i64> undef, undef 131022213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %24 = and <4 x i64> undef, undef 131122213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %25 = and <8 x i64> undef, undef 131222213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %26 = and <vscale x 1 x i1> undef, undef 131322213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %27 = and <vscale x 2 x i1> undef, undef 131422213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %28 = and <vscale x 4 x i1> undef, undef 131522213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %29 = and <vscale x 8 x i1> undef, undef 131622213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %30 = and <vscale x 16 x i1> undef, undef 131722213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %31 = and <vscale x 32 x i1> undef, undef 131822213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %32 = and <vscale x 1 x i16> undef, undef 131922213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %33 = and <vscale x 2 x i16> undef, undef 132022213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %34 = and <vscale x 4 x i16> undef, undef 132122213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %35 = and <vscale x 8 x i16> undef, undef 132222213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %36 = and <vscale x 16 x i16> undef, undef 132322213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %37 = and <vscale x 32 x i16> undef, undef 132422213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %38 = and <vscale x 1 x i32> undef, undef 132522213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %39 = and <vscale x 2 x i32> undef, undef 132622213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %40 = and <vscale x 4 x i32> undef, undef 132722213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %41 = and <vscale x 8 x i32> undef, undef 132822213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %42 = and <vscale x 16 x i32> undef, undef 132922213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %43 = and <vscale x 1 x i64> undef, undef 133022213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %44 = and <vscale x 2 x i64> undef, undef 133122213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %45 = and <vscale x 4 x i64> undef, undef 133222213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %46 = and <vscale x 8 x i64> undef, undef 133322213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 133422213d58SShih-Po Hung; 133522213d58SShih-Po Hung and i1 undef, undef 133622213d58SShih-Po Hung and i16 undef, undef 133722213d58SShih-Po Hung and i32 undef, undef 133822213d58SShih-Po Hung and i64 undef, undef 133922213d58SShih-Po Hung 134022213d58SShih-Po Hung and <1 x i1> undef, undef 134122213d58SShih-Po Hung and <2 x i1> undef, undef 134222213d58SShih-Po Hung and <4 x i1> undef, undef 134322213d58SShih-Po Hung and <8 x i1> undef, undef 134422213d58SShih-Po Hung and <16 x i1> undef, undef 134522213d58SShih-Po Hung and <32 x i1> undef, undef 134622213d58SShih-Po Hung 134722213d58SShih-Po Hung and <1 x i16> undef, undef 134822213d58SShih-Po Hung and <2 x i16> undef, undef 134922213d58SShih-Po Hung and <4 x i16> undef, undef 135022213d58SShih-Po Hung and <8 x i16> undef, undef 135122213d58SShih-Po Hung and <16 x i16> undef, undef 135222213d58SShih-Po Hung and <32 x i16> undef, undef 135322213d58SShih-Po Hung 135422213d58SShih-Po Hung and <1 x i32> undef, undef 135522213d58SShih-Po Hung and <2 x i32> undef, undef 135622213d58SShih-Po Hung and <4 x i32> undef, undef 135722213d58SShih-Po Hung and <8 x i32> undef, undef 135822213d58SShih-Po Hung and <16 x i32> undef, undef 135922213d58SShih-Po Hung 136022213d58SShih-Po Hung and <1 x i64> undef, undef 136122213d58SShih-Po Hung and <2 x i64> undef, undef 136222213d58SShih-Po Hung and <4 x i64> undef, undef 136322213d58SShih-Po Hung and <8 x i64> undef, undef 136422213d58SShih-Po Hung 136522213d58SShih-Po Hung and <vscale x 1 x i1> undef, undef 136622213d58SShih-Po Hung and <vscale x 2 x i1> undef, undef 136722213d58SShih-Po Hung and <vscale x 4 x i1> undef, undef 136822213d58SShih-Po Hung and <vscale x 8 x i1> undef, undef 136922213d58SShih-Po Hung and <vscale x 16 x i1> undef, undef 137022213d58SShih-Po Hung and <vscale x 32 x i1> undef, undef 137122213d58SShih-Po Hung 137222213d58SShih-Po Hung and <vscale x 1 x i16> undef, undef 137322213d58SShih-Po Hung and <vscale x 2 x i16> undef, undef 137422213d58SShih-Po Hung and <vscale x 4 x i16> undef, undef 137522213d58SShih-Po Hung and <vscale x 8 x i16> undef, undef 137622213d58SShih-Po Hung and <vscale x 16 x i16> undef, undef 137722213d58SShih-Po Hung and <vscale x 32 x i16> undef, undef 137822213d58SShih-Po Hung 137922213d58SShih-Po Hung and <vscale x 1 x i32> undef, undef 138022213d58SShih-Po Hung and <vscale x 2 x i32> undef, undef 138122213d58SShih-Po Hung and <vscale x 4 x i32> undef, undef 138222213d58SShih-Po Hung and <vscale x 8 x i32> undef, undef 138322213d58SShih-Po Hung and <vscale x 16 x i32> undef, undef 138422213d58SShih-Po Hung 138522213d58SShih-Po Hung and <vscale x 1 x i64> undef, undef 138622213d58SShih-Po Hung and <vscale x 2 x i64> undef, undef 138722213d58SShih-Po Hung and <vscale x 4 x i64> undef, undef 138822213d58SShih-Po Hung and <vscale x 8 x i64> undef, undef 138922213d58SShih-Po Hung ret i32 undef 139022213d58SShih-Po Hung} 139122213d58SShih-Po Hung 139222213d58SShih-Po Hungdefine i32 @or() { 139322213d58SShih-Po Hung; CHECK-LABEL: 'or' 139422213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %1 = or i1 undef, undef 139522213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %2 = or i16 undef, undef 139622213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %3 = or i32 undef, undef 139722213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %4 = or i64 undef, undef 139822213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %5 = or <1 x i1> undef, undef 139922213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %6 = or <2 x i1> undef, undef 140022213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %7 = or <4 x i1> undef, undef 140122213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %8 = or <8 x i1> undef, undef 140222213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %9 = or <16 x i1> undef, undef 140322213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %10 = or <32 x i1> undef, undef 140422213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %11 = or <1 x i16> undef, undef 140522213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %12 = or <2 x i16> undef, undef 140622213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %13 = or <4 x i16> undef, undef 140722213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %14 = or <8 x i16> undef, undef 140822213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %15 = or <16 x i16> undef, undef 140922213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %16 = or <32 x i16> undef, undef 141022213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %17 = or <1 x i32> undef, undef 141122213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %18 = or <2 x i32> undef, undef 141222213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %19 = or <4 x i32> undef, undef 141322213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %20 = or <8 x i32> undef, undef 141422213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %21 = or <16 x i32> undef, undef 141522213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %22 = or <1 x i64> undef, undef 141622213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %23 = or <2 x i64> undef, undef 141722213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %24 = or <4 x i64> undef, undef 141822213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %25 = or <8 x i64> undef, undef 141922213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %26 = or <vscale x 1 x i1> undef, undef 142022213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %27 = or <vscale x 2 x i1> undef, undef 142122213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %28 = or <vscale x 4 x i1> undef, undef 142222213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %29 = or <vscale x 8 x i1> undef, undef 142322213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %30 = or <vscale x 16 x i1> undef, undef 142422213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %31 = or <vscale x 32 x i1> undef, undef 142522213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %32 = or <vscale x 1 x i16> undef, undef 142622213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %33 = or <vscale x 2 x i16> undef, undef 142722213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %34 = or <vscale x 4 x i16> undef, undef 142822213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %35 = or <vscale x 8 x i16> undef, undef 142922213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %36 = or <vscale x 16 x i16> undef, undef 143022213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %37 = or <vscale x 32 x i16> undef, undef 143122213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %38 = or <vscale x 1 x i32> undef, undef 143222213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %39 = or <vscale x 2 x i32> undef, undef 143322213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %40 = or <vscale x 4 x i32> undef, undef 143422213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %41 = or <vscale x 8 x i32> undef, undef 143522213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %42 = or <vscale x 16 x i32> undef, undef 143622213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %43 = or <vscale x 1 x i64> undef, undef 143722213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %44 = or <vscale x 2 x i64> undef, undef 143822213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %45 = or <vscale x 4 x i64> undef, undef 143922213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %46 = or <vscale x 8 x i64> undef, undef 144022213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 144122213d58SShih-Po Hung; 144222213d58SShih-Po Hung; SIFIVE-X280-LABEL: 'or' 144322213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %1 = or i1 undef, undef 144422213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %2 = or i16 undef, undef 144522213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %3 = or i32 undef, undef 144622213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %4 = or i64 undef, undef 144722213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %5 = or <1 x i1> undef, undef 144822213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %6 = or <2 x i1> undef, undef 144922213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %7 = or <4 x i1> undef, undef 145022213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %8 = or <8 x i1> undef, undef 145122213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %9 = or <16 x i1> undef, undef 145222213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %10 = or <32 x i1> undef, undef 145322213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %11 = or <1 x i16> undef, undef 145422213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %12 = or <2 x i16> undef, undef 145522213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %13 = or <4 x i16> undef, undef 145622213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %14 = or <8 x i16> undef, undef 145722213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %15 = or <16 x i16> undef, undef 145822213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %16 = or <32 x i16> undef, undef 145922213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %17 = or <1 x i32> undef, undef 146022213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %18 = or <2 x i32> undef, undef 146122213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %19 = or <4 x i32> undef, undef 146222213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %20 = or <8 x i32> undef, undef 146322213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %21 = or <16 x i32> undef, undef 146422213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %22 = or <1 x i64> undef, undef 146522213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %23 = or <2 x i64> undef, undef 146622213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %24 = or <4 x i64> undef, undef 146722213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %25 = or <8 x i64> undef, undef 146822213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %26 = or <vscale x 1 x i1> undef, undef 146922213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %27 = or <vscale x 2 x i1> undef, undef 147022213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %28 = or <vscale x 4 x i1> undef, undef 147122213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %29 = or <vscale x 8 x i1> undef, undef 147222213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %30 = or <vscale x 16 x i1> undef, undef 147322213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %31 = or <vscale x 32 x i1> undef, undef 147422213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %32 = or <vscale x 1 x i16> undef, undef 147522213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %33 = or <vscale x 2 x i16> undef, undef 147622213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %34 = or <vscale x 4 x i16> undef, undef 147722213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %35 = or <vscale x 8 x i16> undef, undef 147822213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %36 = or <vscale x 16 x i16> undef, undef 147922213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %37 = or <vscale x 32 x i16> undef, undef 148022213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %38 = or <vscale x 1 x i32> undef, undef 148122213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %39 = or <vscale x 2 x i32> undef, undef 148222213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %40 = or <vscale x 4 x i32> undef, undef 148322213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %41 = or <vscale x 8 x i32> undef, undef 148422213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %42 = or <vscale x 16 x i32> undef, undef 148522213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %43 = or <vscale x 1 x i64> undef, undef 148622213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %44 = or <vscale x 2 x i64> undef, undef 148722213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %45 = or <vscale x 4 x i64> undef, undef 148822213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %46 = or <vscale x 8 x i64> undef, undef 148922213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 149022213d58SShih-Po Hung; 149122213d58SShih-Po Hung or i1 undef, undef 149222213d58SShih-Po Hung or i16 undef, undef 149322213d58SShih-Po Hung or i32 undef, undef 149422213d58SShih-Po Hung or i64 undef, undef 149522213d58SShih-Po Hung 149622213d58SShih-Po Hung or <1 x i1> undef, undef 149722213d58SShih-Po Hung or <2 x i1> undef, undef 149822213d58SShih-Po Hung or <4 x i1> undef, undef 149922213d58SShih-Po Hung or <8 x i1> undef, undef 150022213d58SShih-Po Hung or <16 x i1> undef, undef 150122213d58SShih-Po Hung or <32 x i1> undef, undef 150222213d58SShih-Po Hung 150322213d58SShih-Po Hung or <1 x i16> undef, undef 150422213d58SShih-Po Hung or <2 x i16> undef, undef 150522213d58SShih-Po Hung or <4 x i16> undef, undef 150622213d58SShih-Po Hung or <8 x i16> undef, undef 150722213d58SShih-Po Hung or <16 x i16> undef, undef 150822213d58SShih-Po Hung or <32 x i16> undef, undef 150922213d58SShih-Po Hung 151022213d58SShih-Po Hung or <1 x i32> undef, undef 151122213d58SShih-Po Hung or <2 x i32> undef, undef 151222213d58SShih-Po Hung or <4 x i32> undef, undef 151322213d58SShih-Po Hung or <8 x i32> undef, undef 151422213d58SShih-Po Hung or <16 x i32> undef, undef 151522213d58SShih-Po Hung 151622213d58SShih-Po Hung or <1 x i64> undef, undef 151722213d58SShih-Po Hung or <2 x i64> undef, undef 151822213d58SShih-Po Hung or <4 x i64> undef, undef 151922213d58SShih-Po Hung or <8 x i64> undef, undef 152022213d58SShih-Po Hung 152122213d58SShih-Po Hung or <vscale x 1 x i1> undef, undef 152222213d58SShih-Po Hung or <vscale x 2 x i1> undef, undef 152322213d58SShih-Po Hung or <vscale x 4 x i1> undef, undef 152422213d58SShih-Po Hung or <vscale x 8 x i1> undef, undef 152522213d58SShih-Po Hung or <vscale x 16 x i1> undef, undef 152622213d58SShih-Po Hung or <vscale x 32 x i1> undef, undef 152722213d58SShih-Po Hung 152822213d58SShih-Po Hung or <vscale x 1 x i16> undef, undef 152922213d58SShih-Po Hung or <vscale x 2 x i16> undef, undef 153022213d58SShih-Po Hung or <vscale x 4 x i16> undef, undef 153122213d58SShih-Po Hung or <vscale x 8 x i16> undef, undef 153222213d58SShih-Po Hung or <vscale x 16 x i16> undef, undef 153322213d58SShih-Po Hung or <vscale x 32 x i16> undef, undef 153422213d58SShih-Po Hung 153522213d58SShih-Po Hung or <vscale x 1 x i32> undef, undef 153622213d58SShih-Po Hung or <vscale x 2 x i32> undef, undef 153722213d58SShih-Po Hung or <vscale x 4 x i32> undef, undef 153822213d58SShih-Po Hung or <vscale x 8 x i32> undef, undef 153922213d58SShih-Po Hung or <vscale x 16 x i32> undef, undef 154022213d58SShih-Po Hung 154122213d58SShih-Po Hung or <vscale x 1 x i64> undef, undef 154222213d58SShih-Po Hung or <vscale x 2 x i64> undef, undef 154322213d58SShih-Po Hung or <vscale x 4 x i64> undef, undef 154422213d58SShih-Po Hung or <vscale x 8 x i64> undef, undef 154522213d58SShih-Po Hung ret i32 undef 154622213d58SShih-Po Hung} 154722213d58SShih-Po Hung 154822213d58SShih-Po Hungdefine i32 @xor() { 154922213d58SShih-Po Hung; CHECK-LABEL: 'xor' 155022213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %1 = xor i1 undef, undef 155122213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %2 = xor i16 undef, undef 155222213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %3 = xor i32 undef, undef 155322213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %4 = xor i64 undef, undef 155422213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %5 = xor <1 x i1> undef, undef 155522213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %6 = xor <2 x i1> undef, undef 155622213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %7 = xor <4 x i1> undef, undef 155722213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %8 = xor <8 x i1> undef, undef 155822213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %9 = xor <16 x i1> undef, undef 155922213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %10 = xor <32 x i1> undef, undef 156022213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %11 = xor <1 x i16> undef, undef 156122213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %12 = xor <2 x i16> undef, undef 156222213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %13 = xor <4 x i16> undef, undef 156322213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %14 = xor <8 x i16> undef, undef 156422213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %15 = xor <16 x i16> undef, undef 156522213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %16 = xor <32 x i16> undef, undef 156622213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %17 = xor <1 x i32> undef, undef 156722213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %18 = xor <2 x i32> undef, undef 156822213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %19 = xor <4 x i32> undef, undef 156922213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %20 = xor <8 x i32> undef, undef 157022213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %21 = xor <16 x i32> undef, undef 157122213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %22 = xor <1 x i64> undef, undef 157222213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %23 = xor <2 x i64> undef, undef 157322213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %24 = xor <4 x i64> undef, undef 157422213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %25 = xor <8 x i64> undef, undef 157522213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %26 = xor <vscale x 1 x i1> undef, undef 157622213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %27 = xor <vscale x 2 x i1> undef, undef 157722213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %28 = xor <vscale x 4 x i1> undef, undef 157822213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %29 = xor <vscale x 8 x i1> undef, undef 157922213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %30 = xor <vscale x 16 x i1> undef, undef 158022213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %31 = xor <vscale x 32 x i1> undef, undef 158122213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %32 = xor <vscale x 1 x i16> undef, undef 158222213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %33 = xor <vscale x 2 x i16> undef, undef 158322213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %34 = xor <vscale x 4 x i16> undef, undef 158422213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %35 = xor <vscale x 8 x i16> undef, undef 158522213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %36 = xor <vscale x 16 x i16> undef, undef 158622213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %37 = xor <vscale x 32 x i16> undef, undef 158722213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %38 = xor <vscale x 1 x i32> undef, undef 158822213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %39 = xor <vscale x 2 x i32> undef, undef 158922213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %40 = xor <vscale x 4 x i32> undef, undef 159022213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %41 = xor <vscale x 8 x i32> undef, undef 159122213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %42 = xor <vscale x 16 x i32> undef, undef 159222213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %43 = xor <vscale x 1 x i64> undef, undef 159322213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %44 = xor <vscale x 2 x i64> undef, undef 159422213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %45 = xor <vscale x 4 x i64> undef, undef 159522213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %46 = xor <vscale x 8 x i64> undef, undef 159622213d58SShih-Po Hung; CHECK-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 159722213d58SShih-Po Hung; 159822213d58SShih-Po Hung; SIFIVE-X280-LABEL: 'xor' 159922213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %1 = xor i1 undef, undef 160022213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %2 = xor i16 undef, undef 160122213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %3 = xor i32 undef, undef 160222213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %4 = xor i64 undef, undef 160322213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %5 = xor <1 x i1> undef, undef 160422213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %6 = xor <2 x i1> undef, undef 160522213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %7 = xor <4 x i1> undef, undef 160622213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %8 = xor <8 x i1> undef, undef 160722213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %9 = xor <16 x i1> undef, undef 160822213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %10 = xor <32 x i1> undef, undef 160922213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %11 = xor <1 x i16> undef, undef 161022213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %12 = xor <2 x i16> undef, undef 161122213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %13 = xor <4 x i16> undef, undef 161222213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %14 = xor <8 x i16> undef, undef 161322213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %15 = xor <16 x i16> undef, undef 161422213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %16 = xor <32 x i16> undef, undef 161522213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %17 = xor <1 x i32> undef, undef 161622213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %18 = xor <2 x i32> undef, undef 161722213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %19 = xor <4 x i32> undef, undef 161822213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %20 = xor <8 x i32> undef, undef 161922213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %21 = xor <16 x i32> undef, undef 162022213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %22 = xor <1 x i64> undef, undef 162122213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %23 = xor <2 x i64> undef, undef 162222213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %24 = xor <4 x i64> undef, undef 162322213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %25 = xor <8 x i64> undef, undef 162422213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %26 = xor <vscale x 1 x i1> undef, undef 162522213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %27 = xor <vscale x 2 x i1> undef, undef 162622213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %28 = xor <vscale x 4 x i1> undef, undef 162722213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %29 = xor <vscale x 8 x i1> undef, undef 162822213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %30 = xor <vscale x 16 x i1> undef, undef 162922213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %31 = xor <vscale x 32 x i1> undef, undef 163022213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %32 = xor <vscale x 1 x i16> undef, undef 163122213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %33 = xor <vscale x 2 x i16> undef, undef 163222213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %34 = xor <vscale x 4 x i16> undef, undef 163322213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %35 = xor <vscale x 8 x i16> undef, undef 163422213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %36 = xor <vscale x 16 x i16> undef, undef 163522213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %37 = xor <vscale x 32 x i16> undef, undef 163622213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 1 for instruction: %38 = xor <vscale x 1 x i32> undef, undef 163722213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %39 = xor <vscale x 2 x i32> undef, undef 163822213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %40 = xor <vscale x 4 x i32> undef, undef 163922213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %41 = xor <vscale x 8 x i32> undef, undef 164022213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %42 = xor <vscale x 16 x i32> undef, undef 164122213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 2 for instruction: %43 = xor <vscale x 1 x i64> undef, undef 164222213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 4 for instruction: %44 = xor <vscale x 2 x i64> undef, undef 164322213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 8 for instruction: %45 = xor <vscale x 4 x i64> undef, undef 164422213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 16 for instruction: %46 = xor <vscale x 8 x i64> undef, undef 164522213d58SShih-Po Hung; SIFIVE-X280-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret i32 undef 164622213d58SShih-Po Hung; 164722213d58SShih-Po Hung xor i1 undef, undef 164822213d58SShih-Po Hung xor i16 undef, undef 164922213d58SShih-Po Hung xor i32 undef, undef 165022213d58SShih-Po Hung xor i64 undef, undef 165122213d58SShih-Po Hung 165222213d58SShih-Po Hung xor <1 x i1> undef, undef 165322213d58SShih-Po Hung xor <2 x i1> undef, undef 165422213d58SShih-Po Hung xor <4 x i1> undef, undef 165522213d58SShih-Po Hung xor <8 x i1> undef, undef 165622213d58SShih-Po Hung xor <16 x i1> undef, undef 165722213d58SShih-Po Hung xor <32 x i1> undef, undef 165822213d58SShih-Po Hung 165922213d58SShih-Po Hung xor <1 x i16> undef, undef 166022213d58SShih-Po Hung xor <2 x i16> undef, undef 166122213d58SShih-Po Hung xor <4 x i16> undef, undef 166222213d58SShih-Po Hung xor <8 x i16> undef, undef 166322213d58SShih-Po Hung xor <16 x i16> undef, undef 166422213d58SShih-Po Hung xor <32 x i16> undef, undef 166522213d58SShih-Po Hung 166622213d58SShih-Po Hung xor <1 x i32> undef, undef 166722213d58SShih-Po Hung xor <2 x i32> undef, undef 166822213d58SShih-Po Hung xor <4 x i32> undef, undef 166922213d58SShih-Po Hung xor <8 x i32> undef, undef 167022213d58SShih-Po Hung xor <16 x i32> undef, undef 167122213d58SShih-Po Hung 167222213d58SShih-Po Hung xor <1 x i64> undef, undef 167322213d58SShih-Po Hung xor <2 x i64> undef, undef 167422213d58SShih-Po Hung xor <4 x i64> undef, undef 167522213d58SShih-Po Hung xor <8 x i64> undef, undef 167622213d58SShih-Po Hung 167722213d58SShih-Po Hung xor <vscale x 1 x i1> undef, undef 167822213d58SShih-Po Hung xor <vscale x 2 x i1> undef, undef 167922213d58SShih-Po Hung xor <vscale x 4 x i1> undef, undef 168022213d58SShih-Po Hung xor <vscale x 8 x i1> undef, undef 168122213d58SShih-Po Hung xor <vscale x 16 x i1> undef, undef 168222213d58SShih-Po Hung xor <vscale x 32 x i1> undef, undef 168322213d58SShih-Po Hung 168422213d58SShih-Po Hung xor <vscale x 1 x i16> undef, undef 168522213d58SShih-Po Hung xor <vscale x 2 x i16> undef, undef 168622213d58SShih-Po Hung xor <vscale x 4 x i16> undef, undef 168722213d58SShih-Po Hung xor <vscale x 8 x i16> undef, undef 168822213d58SShih-Po Hung xor <vscale x 16 x i16> undef, undef 168922213d58SShih-Po Hung xor <vscale x 32 x i16> undef, undef 169022213d58SShih-Po Hung 169122213d58SShih-Po Hung xor <vscale x 1 x i32> undef, undef 169222213d58SShih-Po Hung xor <vscale x 2 x i32> undef, undef 169322213d58SShih-Po Hung xor <vscale x 4 x i32> undef, undef 169422213d58SShih-Po Hung xor <vscale x 8 x i32> undef, undef 169522213d58SShih-Po Hung xor <vscale x 16 x i32> undef, undef 169622213d58SShih-Po Hung 169722213d58SShih-Po Hung xor <vscale x 1 x i64> undef, undef 169822213d58SShih-Po Hung xor <vscale x 2 x i64> undef, undef 169922213d58SShih-Po Hung xor <vscale x 4 x i64> undef, undef 170022213d58SShih-Po Hung xor <vscale x 8 x i64> undef, undef 170122213d58SShih-Po Hung ret i32 undef 170222213d58SShih-Po Hung} 1703