Skip to content

Commit f2f1845

Browse files
committed
Revert "Intrinsic: introduce minimumnum and maximumnum (#93841)"
As far as I can tell, this pull request was not approved, and did not go through an RFC on discourse. This reverts commit 8988148. This reverts commit 225d8fc.
1 parent 12c0281 commit f2f1845

File tree

65 files changed

+144
-1973
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

65 files changed

+144
-1973
lines changed

llvm/docs/LangRef.rst

Lines changed: 0 additions & 550 deletions
Large diffs are not rendered by default.

llvm/include/llvm/ADT/APFloat.h

Lines changed: 0 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1483,19 +1483,6 @@ inline APFloat minimum(const APFloat &A, const APFloat &B) {
14831483
return B < A ? B : A;
14841484
}
14851485

1486-
/// Implements IEEE 754-2019 minimumNumber semantics. Returns the smaller
1487-
/// of 2 arguments, not propagating NaNs and treating -0 as less than +0.
1488-
LLVM_READONLY
1489-
inline APFloat minimumnum(const APFloat &A, const APFloat &B) {
1490-
if (A.isNaN())
1491-
return B.isNaN() ? B.makeQuiet() : B;
1492-
if (B.isNaN())
1493-
return A;
1494-
if (A.isZero() && B.isZero() && (A.isNegative() != B.isNegative()))
1495-
return A.isNegative() ? A : B;
1496-
return B < A ? B : A;
1497-
}
1498-
14991486
/// Implements IEEE 754-2019 maximum semantics. Returns the larger of 2
15001487
/// arguments, propagating NaNs and treating -0 as less than +0.
15011488
LLVM_READONLY
@@ -1509,19 +1496,6 @@ inline APFloat maximum(const APFloat &A, const APFloat &B) {
15091496
return A < B ? B : A;
15101497
}
15111498

1512-
/// Implements IEEE 754-2019 maximumNumber semantics. Returns the larger
1513-
/// of 2 arguments, not propagating NaNs and treating -0 as less than +0.
1514-
LLVM_READONLY
1515-
inline APFloat maximumnum(const APFloat &A, const APFloat &B) {
1516-
if (A.isNaN())
1517-
return B.isNaN() ? B.makeQuiet() : B;
1518-
if (B.isNaN())
1519-
return A;
1520-
if (A.isZero() && B.isZero() && (A.isNegative() != B.isNegative()))
1521-
return A.isNegative() ? B : A;
1522-
return A < B ? B : A;
1523-
}
1524-
15251499
// We want the following functions to be available in the header for inlining.
15261500
// We cannot define them inline in the class definition of `DoubleAPFloat`
15271501
// because doing so would instantiate `std::unique_ptr<APFloat[]>` before

llvm/include/llvm/Analysis/TargetLibraryInfo.def

Lines changed: 0 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1347,39 +1347,6 @@ TLI_DEFINE_ENUM_INTERNAL(fminl)
13471347
TLI_DEFINE_STRING_INTERNAL("fminl")
13481348
TLI_DEFINE_SIG_INTERNAL(Floating, Same, Same)
13491349

1350-
// Calls to fmaximum_num and fminimum_num library functions expand to the llvm.maximumnum and
1351-
// llvm.minimumnum intrinsics with the correct parameter types for the arguments
1352-
// (all types must match).
1353-
/// double fmaximum_num(double x, double y);
1354-
TLI_DEFINE_ENUM_INTERNAL(fmaximum_num)
1355-
TLI_DEFINE_STRING_INTERNAL("fmaximum_num")
1356-
TLI_DEFINE_SIG_INTERNAL(Floating, Same, Same)
1357-
1358-
/// float fmaximum_numf(float x, float y);
1359-
TLI_DEFINE_ENUM_INTERNAL(fmaximum_numf)
1360-
TLI_DEFINE_STRING_INTERNAL("fmaximum_numf")
1361-
TLI_DEFINE_SIG_INTERNAL(Floating, Same, Same)
1362-
1363-
/// long double fmaximum_numl(long double x, long double y);
1364-
TLI_DEFINE_ENUM_INTERNAL(fmaximum_numl)
1365-
TLI_DEFINE_STRING_INTERNAL("fmaximum_numl")
1366-
TLI_DEFINE_SIG_INTERNAL(Floating, Same, Same)
1367-
1368-
/// double fminimum_num(double x, double y);
1369-
TLI_DEFINE_ENUM_INTERNAL(fminimum_num)
1370-
TLI_DEFINE_STRING_INTERNAL("fminimum_num")
1371-
TLI_DEFINE_SIG_INTERNAL(Floating, Same, Same)
1372-
1373-
/// float fminimum_numf(float x, float y);
1374-
TLI_DEFINE_ENUM_INTERNAL(fminimum_numf)
1375-
TLI_DEFINE_STRING_INTERNAL("fminimum_numf")
1376-
TLI_DEFINE_SIG_INTERNAL(Floating, Same, Same)
1377-
1378-
/// long double fminimum_numl(long double x, long double y);
1379-
TLI_DEFINE_ENUM_INTERNAL(fminimum_numl)
1380-
TLI_DEFINE_STRING_INTERNAL("fminimum_numl")
1381-
TLI_DEFINE_SIG_INTERNAL(Floating, Same, Same)
1382-
13831350
/// double fmod(double x, double y);
13841351
TLI_DEFINE_ENUM_INTERNAL(fmod)
13851352
TLI_DEFINE_STRING_INTERNAL("fmod")

llvm/include/llvm/CodeGen/BasicTTIImpl.h

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1690,8 +1690,6 @@ class BasicTTIImplBase : public TargetTransformInfoImplCRTPBase<T> {
16901690
case Intrinsic::vector_reduce_fmin:
16911691
case Intrinsic::vector_reduce_fmaximum:
16921692
case Intrinsic::vector_reduce_fminimum:
1693-
case Intrinsic::vector_reduce_fmaximumnum:
1694-
case Intrinsic::vector_reduce_fminimumnum:
16951693
case Intrinsic::vector_reduce_umax:
16961694
case Intrinsic::vector_reduce_umin: {
16971695
IntrinsicCostAttributes Attrs(IID, RetTy, Args[0]->getType(), FMF, I, 1);
@@ -2018,12 +2016,6 @@ class BasicTTIImplBase : public TargetTransformInfoImplCRTPBase<T> {
20182016
case Intrinsic::maximum:
20192017
ISD = ISD::FMAXIMUM;
20202018
break;
2021-
case Intrinsic::minimumnum:
2022-
ISD = ISD::FMINIMUMNUM;
2023-
break;
2024-
case Intrinsic::maximumnum:
2025-
ISD = ISD::FMAXIMUMNUM;
2026-
break;
20272019
case Intrinsic::copysign:
20282020
ISD = ISD::FCOPYSIGN;
20292021
break;
@@ -2105,8 +2097,6 @@ class BasicTTIImplBase : public TargetTransformInfoImplCRTPBase<T> {
21052097
case Intrinsic::vector_reduce_fmin:
21062098
case Intrinsic::vector_reduce_fmaximum:
21072099
case Intrinsic::vector_reduce_fminimum:
2108-
case Intrinsic::vector_reduce_fmaximumnum:
2109-
case Intrinsic::vector_reduce_fminimumnum:
21102100
return thisT()->getMinMaxReductionCost(getMinMaxReductionIntrinsicOp(IID),
21112101
VecOpTy, ICA.getFlags(), CostKind);
21122102
case Intrinsic::abs: {

llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -954,10 +954,8 @@ class CombinerHelper {
954954
///
955955
/// * G_FMAXNUM
956956
/// * G_FMAXIMUM
957-
/// * G_FMAXIMUMNUM
958957
/// * G_FMINNUM
959958
/// * G_FMINIMUM
960-
/// * G_FMINIMUMNUM
961959
///
962960
/// Helper function for matchFPSelectToMinMax.
963961
unsigned getFPMinMaxOpcForSelect(CmpInst::Predicate Pred, LLT DstTy,

llvm/include/llvm/CodeGen/GlobalISel/GenericMachineInstrs.h

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -553,8 +553,6 @@ class GVecReduce : public GenericMachineInstr {
553553
case TargetOpcode::G_VECREDUCE_FMIN:
554554
case TargetOpcode::G_VECREDUCE_FMAXIMUM:
555555
case TargetOpcode::G_VECREDUCE_FMINIMUM:
556-
case TargetOpcode::G_VECREDUCE_FMAXIMUMNUM:
557-
case TargetOpcode::G_VECREDUCE_FMINIMUMNUM:
558556
case TargetOpcode::G_VECREDUCE_ADD:
559557
case TargetOpcode::G_VECREDUCE_MUL:
560558
case TargetOpcode::G_VECREDUCE_AND:
@@ -593,12 +591,6 @@ class GVecReduce : public GenericMachineInstr {
593591
case TargetOpcode::G_VECREDUCE_FMINIMUM:
594592
ScalarOpc = TargetOpcode::G_FMINIMUM;
595593
break;
596-
case TargetOpcode::G_VECREDUCE_FMAXIMUMNUM:
597-
ScalarOpc = TargetOpcode::G_FMAXIMUMNUM;
598-
break;
599-
case TargetOpcode::G_VECREDUCE_FMINIMUMNUM:
600-
ScalarOpc = TargetOpcode::G_FMINIMUMNUM;
601-
break;
602594
case TargetOpcode::G_VECREDUCE_ADD:
603595
ScalarOpc = TargetOpcode::G_ADD;
604596
break;
@@ -679,8 +671,6 @@ class GBinOp : public GenericMachineInstr {
679671
case TargetOpcode::G_FMAXNUM_IEEE:
680672
case TargetOpcode::G_FMINIMUM:
681673
case TargetOpcode::G_FMAXIMUM:
682-
case TargetOpcode::G_FMINIMUMNUM:
683-
case TargetOpcode::G_FMAXIMUMNUM:
684674
case TargetOpcode::G_FADD:
685675
case TargetOpcode::G_FSUB:
686676
case TargetOpcode::G_FMUL:
@@ -731,8 +721,6 @@ class GFBinOp : public GBinOp {
731721
case TargetOpcode::G_FMAXNUM_IEEE:
732722
case TargetOpcode::G_FMINIMUM:
733723
case TargetOpcode::G_FMAXIMUM:
734-
case TargetOpcode::G_FMINIMUMNUM:
735-
case TargetOpcode::G_FMAXIMUMNUM:
736724
case TargetOpcode::G_FADD:
737725
case TargetOpcode::G_FSUB:
738726
case TargetOpcode::G_FMUL:

llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -403,7 +403,6 @@ class LegalizerHelper {
403403
LegalizeResult lowerMinMax(MachineInstr &MI);
404404
LegalizeResult lowerFCopySign(MachineInstr &MI);
405405
LegalizeResult lowerFMinNumMaxNum(MachineInstr &MI);
406-
LegalizeResult lowerFMinimumNumMaximumNum(MachineInstr &MI);
407406
LegalizeResult lowerFMad(MachineInstr &MI);
408407
LegalizeResult lowerIntrinsicRound(MachineInstr &MI);
409408
LegalizeResult lowerFFloor(MachineInstr &MI);

llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h

Lines changed: 0 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1723,18 +1723,6 @@ class MachineIRBuilder {
17231723
return buildInstr(TargetOpcode::G_FMAXNUM_IEEE, {Dst}, {Src0, Src1}, Flags);
17241724
}
17251725

1726-
MachineInstrBuilder
1727-
buildFMinimumnum(const DstOp &Dst, const SrcOp &Src0, const SrcOp &Src1,
1728-
std::optional<unsigned> Flags = std::nullopt) {
1729-
return buildInstr(TargetOpcode::G_FMINIMUMNUM, {Dst}, {Src0, Src1}, Flags);
1730-
}
1731-
1732-
MachineInstrBuilder
1733-
buildFMaximumnum(const DstOp &Dst, const SrcOp &Src0, const SrcOp &Src1,
1734-
std::optional<unsigned> Flags = std::nullopt) {
1735-
return buildInstr(TargetOpcode::G_FMAXIMUMNUM, {Dst}, {Src0, Src1}, Flags);
1736-
}
1737-
17381726
MachineInstrBuilder buildShl(const DstOp &Dst, const SrcOp &Src0,
17391727
const SrcOp &Src1,
17401728
std::optional<unsigned> Flags = std::nullopt) {
@@ -2086,18 +2074,6 @@ class MachineIRBuilder {
20862074
return buildInstr(TargetOpcode::G_VECREDUCE_FMINIMUM, {Dst}, {Src});
20872075
}
20882076

2089-
/// Build and insert \p Res = G_VECREDUCE_FMAXIMUMNUM \p Src
2090-
MachineInstrBuilder buildVecReduceFMaximumnum(const DstOp &Dst,
2091-
const SrcOp &Src) {
2092-
return buildInstr(TargetOpcode::G_VECREDUCE_FMAXIMUMNUM, {Dst}, {Src});
2093-
}
2094-
2095-
/// Build and insert \p Res = G_VECREDUCE_FMINIMUMNUM \p Src
2096-
MachineInstrBuilder buildVecReduceFMinimumnum(const DstOp &Dst,
2097-
const SrcOp &Src) {
2098-
return buildInstr(TargetOpcode::G_VECREDUCE_FMINIMUMNUM, {Dst}, {Src});
2099-
}
2100-
21012077
/// Build and insert \p Res = G_VECREDUCE_ADD \p Src
21022078
MachineInstrBuilder buildVecReduceAdd(const DstOp &Dst, const SrcOp &Src) {
21032079
return buildInstr(TargetOpcode::G_VECREDUCE_ADD, {Dst}, {Src});

llvm/include/llvm/CodeGen/GlobalISel/Utils.h

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -60,8 +60,6 @@ class APFloat;
6060
case TargetOpcode::G_VECREDUCE_FMIN: \
6161
case TargetOpcode::G_VECREDUCE_FMAXIMUM: \
6262
case TargetOpcode::G_VECREDUCE_FMINIMUM: \
63-
case TargetOpcode::G_VECREDUCE_FMAXIMUMNUM: \
64-
case TargetOpcode::G_VECREDUCE_FMINIMUMNUM: \
6563
case TargetOpcode::G_VECREDUCE_ADD: \
6664
case TargetOpcode::G_VECREDUCE_MUL: \
6765
case TargetOpcode::G_VECREDUCE_AND: \
@@ -79,8 +77,6 @@ class APFloat;
7977
case TargetOpcode::G_VECREDUCE_FMIN: \
8078
case TargetOpcode::G_VECREDUCE_FMAXIMUM: \
8179
case TargetOpcode::G_VECREDUCE_FMINIMUM: \
82-
case TargetOpcode::G_VECREDUCE_FMAXIMUMNUM: \
83-
case TargetOpcode::G_VECREDUCE_FMINIMUMNUM: \
8480
case TargetOpcode::G_VECREDUCE_ADD: \
8581
case TargetOpcode::G_VECREDUCE_MUL: \
8682
case TargetOpcode::G_VECREDUCE_AND: \

llvm/include/llvm/CodeGen/ISDOpcodes.h

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -436,8 +436,6 @@ enum NodeType {
436436
STRICT_LLRINT,
437437
STRICT_FMAXIMUM,
438438
STRICT_FMINIMUM,
439-
STRICT_FMAXIMUMNUM,
440-
STRICT_FMINIMUMNUM,
441439

442440
/// STRICT_FP_TO_[US]INT - Convert a floating point value to a signed or
443441
/// unsigned integer. These have the same semantics as fptosi and fptoui
@@ -1001,11 +999,6 @@ enum NodeType {
1001999
FMINIMUM,
10021000
FMAXIMUM,
10031001

1004-
/// FMINIMUMNUM/FMAXIMUMNUM - minimumnum/maximumnum that is same with
1005-
/// FMINNUM_IEEE and FMAXNUM_IEEE besides if either operand is sNaN.
1006-
FMINIMUMNUM,
1007-
FMAXIMUMNUM,
1008-
10091002
/// FSINCOS - Compute both fsin and fcos as a single operation.
10101003
FSINCOS,
10111004

@@ -1380,10 +1373,6 @@ enum NodeType {
13801373
/// llvm.minimum and llvm.maximum semantics.
13811374
VECREDUCE_FMAXIMUM,
13821375
VECREDUCE_FMINIMUM,
1383-
/// FMINIMUMNUM/FMAXIMUMNUM nodes don't propatate NaNs and signed zeroes using
1384-
/// the llvm.minimumnum and llvm.maximumnum semantics.
1385-
VECREDUCE_FMAXIMUMNUM,
1386-
VECREDUCE_FMINIMUMNUM,
13871376
/// Integer reductions may have a result type larger than the vector element
13881377
/// type. However, the reduction is performed using the vector element type
13891378
/// and the value in the top bits is unspecified.

llvm/include/llvm/CodeGen/TargetLowering.h

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2910,8 +2910,6 @@ class TargetLoweringBase {
29102910
case ISD::FMAXNUM_IEEE:
29112911
case ISD::FMINIMUM:
29122912
case ISD::FMAXIMUM:
2913-
case ISD::FMINIMUMNUM:
2914-
case ISD::FMAXIMUMNUM:
29152913
case ISD::AVGFLOORS:
29162914
case ISD::AVGFLOORU:
29172915
case ISD::AVGCEILS:
@@ -5132,8 +5130,6 @@ class TargetLowering : public TargetLoweringBase {
51325130
/// through to the default expansion/soften to libcall, we might introduce a
51335131
/// link-time dependency on libm into a file that originally did not have one.
51345132
SDValue createSelectForFMINNUM_FMAXNUM(SDNode *Node, SelectionDAG &DAG) const;
5135-
SDValue createSelectForFMINIMUMNUM_FMAXIMUMNUM(SDNode *Node,
5136-
SelectionDAG &DAG) const;
51375133

51385134
/// Return a reciprocal estimate value for the input operand.
51395135
/// \p Enabled is a ReciprocalEstimate enum with value either 'Unspecified' or
@@ -5265,9 +5261,6 @@ class TargetLowering : public TargetLoweringBase {
52655261
/// Expand fminimum/fmaximum into multiple comparison with selects.
52665262
SDValue expandFMINIMUM_FMAXIMUM(SDNode *N, SelectionDAG &DAG) const;
52675263

5268-
/// Expand fminimumnum/fmaximumnum into multiple comparison with selects.
5269-
SDValue expandFMINIMUMNUM_FMAXIMUMNUM(SDNode *N, SelectionDAG &DAG) const;
5270-
52715264
/// Expand FP_TO_[US]INT_SAT into FP_TO_[US]INT and selects or min/max.
52725265
/// \param N Node to expand
52735266
/// \returns The expansion result

llvm/include/llvm/IR/ConstrainedOps.def

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -86,8 +86,6 @@ DAG_FUNCTION(maxnum, 2, 0, experimental_constrained_maxnum, FMAXNUM
8686
DAG_FUNCTION(minnum, 2, 0, experimental_constrained_minnum, FMINNUM)
8787
DAG_FUNCTION(maximum, 2, 0, experimental_constrained_maximum, FMAXIMUM)
8888
DAG_FUNCTION(minimum, 2, 0, experimental_constrained_minimum, FMINIMUM)
89-
DAG_FUNCTION(maximumnum, 2, 0, experimental_constrained_maximumnum, FMAXIMUMNUM)
90-
DAG_FUNCTION(minimumnum, 2, 0, experimental_constrained_minimumnum, FMINIMUMNUM)
9189
DAG_FUNCTION(nearbyint, 1, 1, experimental_constrained_nearbyint, FNEARBYINT)
9290
DAG_FUNCTION(pow, 2, 1, experimental_constrained_pow, FPOW)
9391
DAG_FUNCTION(powi, 2, 1, experimental_constrained_powi, FPOWI)

llvm/include/llvm/IR/IRBuilder.h

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1016,18 +1016,6 @@ class IRBuilderBase {
10161016
return CreateBinaryIntrinsic(Intrinsic::maximum, LHS, RHS, nullptr, Name);
10171017
}
10181018

1019-
/// Create call to the minimumnum intrinsic.
1020-
Value *CreateMinimumNum(Value *LHS, Value *RHS, const Twine &Name = "") {
1021-
return CreateBinaryIntrinsic(Intrinsic::minimumnum, LHS, RHS, nullptr,
1022-
Name);
1023-
}
1024-
1025-
/// Create call to the maximum intrinsic.
1026-
Value *CreateMaximumNum(Value *LHS, Value *RHS, const Twine &Name = "") {
1027-
return CreateBinaryIntrinsic(Intrinsic::maximumnum, LHS, RHS, nullptr,
1028-
Name);
1029-
}
1030-
10311019
/// Create call to the copysign intrinsic.
10321020
Value *CreateCopySign(Value *LHS, Value *RHS,
10331021
Instruction *FMFSource = nullptr,

llvm/include/llvm/IR/IntrinsicInst.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -76,8 +76,6 @@ class IntrinsicInst : public CallInst {
7676
case Intrinsic::minnum:
7777
case Intrinsic::maximum:
7878
case Intrinsic::minimum:
79-
case Intrinsic::maximumnum:
80-
case Intrinsic::minimumnum:
8179
case Intrinsic::smax:
8280
case Intrinsic::smin:
8381
case Intrinsic::umax:

llvm/include/llvm/IR/Intrinsics.td

Lines changed: 0 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -1086,14 +1086,6 @@ def int_maximum : DefaultAttrsIntrinsic<[llvm_anyfloat_ty],
10861086
[LLVMMatchType<0>, LLVMMatchType<0>],
10871087
[IntrNoMem, IntrSpeculatable, IntrWillReturn, Commutative]
10881088
>;
1089-
def int_minimumnum : DefaultAttrsIntrinsic<[llvm_anyfloat_ty],
1090-
[LLVMMatchType<0>, LLVMMatchType<0>],
1091-
[IntrNoMem, IntrSpeculatable, IntrWillReturn, Commutative]
1092-
>;
1093-
def int_maximumnum : DefaultAttrsIntrinsic<[llvm_anyfloat_ty],
1094-
[LLVMMatchType<0>, LLVMMatchType<0>],
1095-
[IntrNoMem, IntrSpeculatable, IntrWillReturn, Commutative]
1096-
>;
10971089

10981090
// Internal interface for object size checking
10991091
def int_objectsize : DefaultAttrsIntrinsic<[llvm_anyint_ty],
@@ -1288,14 +1280,6 @@ let IntrProperties = [IntrInaccessibleMemOnly, IntrWillReturn, IntrStrictFP] in
12881280
[ LLVMMatchType<0>,
12891281
LLVMMatchType<0>,
12901282
llvm_metadata_ty ]>;
1291-
def int_experimental_constrained_maximumnum : DefaultAttrsIntrinsic<[ llvm_anyfloat_ty ],
1292-
[ LLVMMatchType<0>,
1293-
LLVMMatchType<0>,
1294-
llvm_metadata_ty ]>;
1295-
def int_experimental_constrained_minimumnum : DefaultAttrsIntrinsic<[ llvm_anyfloat_ty ],
1296-
[ LLVMMatchType<0>,
1297-
LLVMMatchType<0>,
1298-
llvm_metadata_ty ]>;
12991283
def int_experimental_constrained_ceil : DefaultAttrsIntrinsic<[ llvm_anyfloat_ty ],
13001284
[ LLVMMatchType<0>,
13011285
llvm_metadata_ty ]>;
@@ -2093,16 +2077,6 @@ let IntrProperties = [IntrNoMem, IntrNoSync, IntrWillReturn] in {
20932077
LLVMMatchType<0>,
20942078
LLVMScalarOrSameVectorWidth<0, llvm_i1_ty>,
20952079
llvm_i32_ty]>;
2096-
def int_vp_minimumnum : DefaultAttrsIntrinsic<[ llvm_anyvector_ty ],
2097-
[ LLVMMatchType<0>,
2098-
LLVMMatchType<0>,
2099-
LLVMScalarOrSameVectorWidth<0, llvm_i1_ty>,
2100-
llvm_i32_ty]>;
2101-
def int_vp_maximumnum : DefaultAttrsIntrinsic<[ llvm_anyvector_ty ],
2102-
[ LLVMMatchType<0>,
2103-
LLVMMatchType<0>,
2104-
LLVMScalarOrSameVectorWidth<0, llvm_i1_ty>,
2105-
llvm_i32_ty]>;
21062080
def int_vp_copysign : DefaultAttrsIntrinsic<[ llvm_anyvector_ty ],
21072081
[ LLVMMatchType<0>,
21082082
LLVMMatchType<0>,
@@ -2292,16 +2266,6 @@ let IntrProperties = [IntrNoMem, IntrNoSync, IntrWillReturn] in {
22922266
llvm_anyvector_ty,
22932267
LLVMScalarOrSameVectorWidth<0, llvm_i1_ty>,
22942268
llvm_i32_ty]>;
2295-
def int_vp_reduce_fmaximumnum : DefaultAttrsIntrinsic<[LLVMVectorElementType<0>],
2296-
[ LLVMVectorElementType<0>,
2297-
llvm_anyvector_ty,
2298-
LLVMScalarOrSameVectorWidth<0, llvm_i1_ty>,
2299-
llvm_i32_ty]>;
2300-
def int_vp_reduce_fminimumnum : DefaultAttrsIntrinsic<[LLVMVectorElementType<0>],
2301-
[ LLVMVectorElementType<0>,
2302-
llvm_anyvector_ty,
2303-
LLVMScalarOrSameVectorWidth<0, llvm_i1_ty>,
2304-
llvm_i32_ty]>;
23052269
}
23062270

23072271
let IntrProperties = [IntrNoMem, IntrNoSync, IntrWillReturn, ImmArg<ArgIndex<1>>] in {
@@ -2540,10 +2504,6 @@ let IntrProperties = [IntrNoMem, IntrSpeculatable] in {
25402504
[llvm_anyvector_ty]>;
25412505
def int_vector_reduce_fmaximum: DefaultAttrsIntrinsic<[LLVMVectorElementType<0>],
25422506
[llvm_anyvector_ty]>;
2543-
def int_vector_reduce_fminimumnum: DefaultAttrsIntrinsic<[LLVMVectorElementType<0>],
2544-
[llvm_anyvector_ty]>;
2545-
def int_vector_reduce_fmaximumnum: DefaultAttrsIntrinsic<[LLVMVectorElementType<0>],
2546-
[llvm_anyvector_ty]>;
25472507
}
25482508

25492509
//===----- Matrix intrinsics ---------------------------------------------===//

0 commit comments

Comments
 (0)