summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen
diff options
context:
space:
mode:
authorTim Northover <tnorthover@apple.com>2014-06-24 12:07:44 +0000
committerTim Northover <tnorthover@apple.com>2014-06-24 12:07:44 +0000
commit6ea28bdef5724ea1a6e2785789b829bbab0a36b0 (patch)
tree241563baabe914f81930cee52e6b67fe30b9b034 /clang/lib/CodeGen
parent8717fec9af49d5a2a8930f6b50b09b7f1d74b0db (diff)
downloadbcm5719-llvm-6ea28bdef5724ea1a6e2785789b829bbab0a36b0.tar.gz
bcm5719-llvm-6ea28bdef5724ea1a6e2785789b829bbab0a36b0.zip
ARM: remove dead CodeGen functions.
These two are no longer being used by NEON codegen. llvm-svn: 211586
Diffstat (limited to 'clang/lib/CodeGen')
-rw-r--r--clang/lib/CodeGen/CGBuiltin.cpp30
-rw-r--r--clang/lib/CodeGen/CodeGenFunction.h3
2 files changed, 0 insertions, 33 deletions
diff --git a/clang/lib/CodeGen/CGBuiltin.cpp b/clang/lib/CodeGen/CGBuiltin.cpp
index a177fd71c70..608e9d9a16d 100644
--- a/clang/lib/CodeGen/CGBuiltin.cpp
+++ b/clang/lib/CodeGen/CGBuiltin.cpp
@@ -1786,36 +1786,6 @@ Value *CodeGenFunction::EmitNeonRShiftImm(Value *Vec, Value *Shift,
return Builder.CreateAShr(Vec, Shift, name);
}
-Value *CodeGenFunction::EmitConcatVectors(Value *Lo, Value *Hi,
- llvm::Type *ArgTy) {
- unsigned NumElts = ArgTy->getVectorNumElements();
- SmallVector<Constant *, 16> Indices;
- for (unsigned i = 0; i < 2 * NumElts; ++i)
- Indices.push_back(ConstantInt::get(Int32Ty, i));
-
- Constant *Mask = ConstantVector::get(Indices);
- Value *LoCast = Builder.CreateBitCast(Lo, ArgTy);
- Value *HiCast = Builder.CreateBitCast(Hi, ArgTy);
- return Builder.CreateShuffleVector(LoCast, HiCast, Mask, "concat");
-}
-
-Value *CodeGenFunction::EmitExtractHigh(Value *Vec, llvm::Type *ResTy) {
- unsigned NumElts = ResTy->getVectorNumElements();
- SmallVector<Constant *, 8> Indices;
-
- llvm::Type *InTy = llvm::VectorType::get(ResTy->getVectorElementType(),
- NumElts * 2);
- Value *VecCast = Builder.CreateBitCast(Vec, InTy);
-
- // extract_high is a shuffle on the second half of the input indices: E.g. 4,
- // 5, 6, 7 if we're extracting <4 x i16> from <8 x i16>.
- for (unsigned i = 0; i < NumElts; ++i)
- Indices.push_back(ConstantInt::get(Int32Ty, NumElts + i));
-
- Constant *Mask = ConstantVector::get(Indices);
- return Builder.CreateShuffleVector(VecCast, VecCast, Mask, "concat");
-}
-
/// GetPointeeAlignment - Given an expression with a pointer type, find the
/// alignment of the type referenced by the pointer. Skip over implicit
/// casts.
diff --git a/clang/lib/CodeGen/CodeGenFunction.h b/clang/lib/CodeGen/CodeGenFunction.h
index a222f646c61..1ce89642ff0 100644
--- a/clang/lib/CodeGen/CodeGenFunction.h
+++ b/clang/lib/CodeGen/CodeGenFunction.h
@@ -2234,9 +2234,6 @@ public:
bool negateForRightShift);
llvm::Value *EmitNeonRShiftImm(llvm::Value *Vec, llvm::Value *Amt,
llvm::Type *Ty, bool usgn, const char *name);
- llvm::Value *EmitConcatVectors(llvm::Value *Lo, llvm::Value *Hi,
- llvm::Type *ArgTy);
- llvm::Value *EmitExtractHigh(llvm::Value *In, llvm::Type *ResTy);
// Helper functions for EmitAArch64BuiltinExpr.
llvm::Value *vectorWrapScalar8(llvm::Value *Op);
llvm::Value *vectorWrapScalar16(llvm::Value *Op);
OpenPOWER on IntegriCloud