diff --git a/llvm/test/Analysis/CostModel/AArch64/arith-fp-sve.ll b/llvm/test/Analysis/CostModel/AArch64/arith-fp-sve.ll --- a/llvm/test/Analysis/CostModel/AArch64/arith-fp-sve.ll +++ b/llvm/test/Analysis/CostModel/AArch64/arith-fp-sve.ll @@ -134,3 +134,29 @@ ret void } + +define void @frem() { +; CHECK-LABEL: 'frem' +; CHECK-NEXT: Cost Model: Invalid cost for instruction: %V4F16 = frem undef, undef +; CHECK-NEXT: Cost Model: Invalid cost for instruction: %V8F16 = frem undef, undef +; CHECK-NEXT: Cost Model: Invalid cost for instruction: %V16F16 = frem undef, undef +; CHECK-NEXT: Cost Model: Invalid cost for instruction: %V2F32 = frem undef, undef +; CHECK-NEXT: Cost Model: Invalid cost for instruction: %V4F32 = frem undef, undef +; CHECK-NEXT: Cost Model: Invalid cost for instruction: %V8F32 = frem undef, undef +; CHECK-NEXT: Cost Model: Invalid cost for instruction: %V2F64 = frem undef, undef +; CHECK-NEXT: Cost Model: Invalid cost for instruction: %V4F64 = frem undef, undef +; CHECK-NEXT: Cost Model: Found an estimated cost of 0 for instruction: ret void +; + %V4F16 = frem undef, undef + %V8F16 = frem undef, undef + %V16F16 = frem undef, undef + + %V2F32 = frem undef, undef + %V4F32 = frem undef, undef + %V8F32 = frem undef, undef + + %V2F64 = frem undef, undef + %V4F64 = frem undef, undef + + ret void +}