summaryrefslogtreecommitdiffstats
path: root/llvm/lib/IR
diff options
context:
space:
mode:
authorUriel Korach <uriel.korach@intel.com>2017-09-10 09:07:21 +0000
committerUriel Korach <uriel.korach@intel.com>2017-09-10 09:07:21 +0000
commit01dfd3d1e3809cd9e8013bd7e514b085f13190e8 (patch)
tree722ce24cd0cb15a4d7f1397ad5c5ba7cb3e795de /llvm/lib/IR
parent3eb10a79e589512fd542981dc68037231de1af5e (diff)
downloadbcm5719-llvm-01dfd3d1e3809cd9e8013bd7e514b085f13190e8.tar.gz
bcm5719-llvm-01dfd3d1e3809cd9e8013bd7e514b085f13190e8.zip
Revert "adding autoUpgrade support to broadcast[f|i]32x2 intrinsics"
This reverts commit r312879 - An accidental partial commit. llvm-svn: 312880
Diffstat (limited to 'llvm/lib/IR')
-rw-r--r--llvm/lib/IR/AutoUpgrade.cpp21
1 files changed, 1 insertions, 20 deletions
diff --git a/llvm/lib/IR/AutoUpgrade.cpp b/llvm/lib/IR/AutoUpgrade.cpp
index 188fdcf6cd5..6184ce59dc1 100644
--- a/llvm/lib/IR/AutoUpgrade.cpp
+++ b/llvm/lib/IR/AutoUpgrade.cpp
@@ -72,9 +72,7 @@ static bool ShouldUpgradeX86Intrinsic(Function *F, StringRef Name) {
// like to use this information to remove upgrade code for some older
// intrinsics. It is currently undecided how we will determine that future
// point.
- if (Name.startswith("avx512.mask.broadcastf32x2") || // Added in 6.0
- Name.startswith("avx512.mask.broadcasti32x2") || // Added in 6.0
- Name.startswith("sse2.pcmpeq.") || // Added in 3.1
+ if (Name.startswith("sse2.pcmpeq.") || // Added in 3.1
Name.startswith("sse2.pcmpgt.") || // Added in 3.1
Name.startswith("avx2.pcmpeq.") || // Added in 3.1
Name.startswith("avx2.pcmpgt.") || // Added in 3.1
@@ -805,20 +803,6 @@ static Value *upgradeIntMinMax(IRBuilder<> &Builder, CallInst &CI,
return Res;
}
-static Value *upgradeBroadcastf32x2(IRBuilder<> &Builder, CallInst &CI) {
- Value *Op0 = CI.getArgOperand(0);
- Value *RetArg = CI.getReturnedArgOperand();
-
- llvm::VectorType *Ty = RetArg->getType();
- unsigned NumElts = Ty->getVectorNumElements();
- uint32_t Indices[NumElts];
- for(unsigned i = 0; i < NumElts; ++i)
- Indices[i] = i % 2;
-
- Value *Res = Builder.CreateShuffleVector(Op0,UndefValue::get(Ty),Indices);
- return EmitX86Select(Builder, CI.getArgOperand(2), Res, CI.getArgOperand(1));
-}
-
static Value *upgradeMaskedCompare(IRBuilder<> &Builder, CallInst &CI,
unsigned CC, bool Signed) {
Value *Op0 = CI.getArgOperand(0);
@@ -1075,9 +1059,6 @@ void llvm::UpgradeIntrinsicCall(CallInst *CI, Function *NewFn) {
Name.startswith("avx2.pmaxs") ||
Name.startswith("avx512.mask.pmaxs"))) {
Rep = upgradeIntMinMax(Builder, *CI, ICmpInst::ICMP_SGT);
- } else if (IsX86 && (Name.startswith("avx512.mask.broadcastf32x2") ||
- Name.startswith("avx512.mask.broadcasti32x2"))) {
- Rep =upgradeBroadcastf32x2(Builder, *CI);
} else if (IsX86 && (Name == "sse2.pmaxu.b" ||
Name == "sse41.pmaxuw" ||
Name == "sse41.pmaxud" ||
OpenPOWER on IntegriCloud