
780054d3ff18075a6bc433029f336931792b1d2d added support for `ISD::AssertNoFPClass`. This ISD node can be used with the `ppc_fp128` type, which is really just two `f64s` and requires expanding when used with `ISD::AssertNoFPClass`. Without the support for expanding the result, we get an assertion because the legalizer does not know how to expand the results of `ppc_fp128` with `ISD::AssertNoFPClass`. ``` ExpandFloatResult #0: t7: ppcf128 = AssertNoFPClass t5, TargetConstant:i32<3> LLVM ERROR: Do not know how to expand the result of this operator! ``` Thus, this patch aims to add support for the expand so we no longer assert. This fixes #151375.
16 lines
561 B
LLVM
16 lines
561 B
LLVM
; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 5
|
|
; RUN: llc -mtriple=powerpc64le-unknown-linux-gnu < %s | FileCheck %s
|
|
; RUN: llc -mtriple=powerpc64-ibm-aix-xcoff < %s | FileCheck %s
|
|
|
|
; TODO: Update this test after adding the proper expansion of nofpclass for
|
|
; ppc_fp128 to test with more masks and to demonstrate preserving nofpclass
|
|
; after legalization.
|
|
|
|
define ppc_fp128 @f(ppc_fp128 nofpclass(nan) %s) {
|
|
; CHECK-LABEL: f:
|
|
; CHECK: # %bb.0: # %entry
|
|
; CHECK-NEXT: blr
|
|
entry:
|
|
ret ppc_fp128 %s
|
|
}
|