From 08b25ce0a1efe4f71b557a131e764fb5fc97cbe7 Mon Sep 17 00:00:00 2001 From: Michael Ilseman Date: Wed, 12 Dec 2012 00:21:43 +0000 Subject: [PATCH] Remove FIXMEs surrounding Constant[Data]Vectors, instead git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169938 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/Support/PatternMatch.h | 54 ++++++++++------------------- 1 file changed, 19 insertions(+), 35 deletions(-) diff --git a/include/llvm/Support/PatternMatch.h b/include/llvm/Support/PatternMatch.h index 36b6db7a72c..094188082ef 100644 --- a/include/llvm/Support/PatternMatch.h +++ b/include/llvm/Support/PatternMatch.h @@ -98,19 +98,13 @@ struct apint_match { Res = &CI->getValue(); return true; } - // FIXME: Remove this. - if (ConstantVector *CV = dyn_cast(V)) - if (ConstantInt *CI = - dyn_cast_or_null(CV->getSplatValue())) { - Res = &CI->getValue(); - return true; - } - if (ConstantDataVector *CV = dyn_cast(V)) - if (ConstantInt *CI = - dyn_cast_or_null(CV->getSplatValue())) { - Res = &CI->getValue(); - return true; - } + if (V->getType()->isVectorTy()) + if (const Constant *C = dyn_cast(V)) + if (ConstantInt *CI = + dyn_cast_or_null(C->getSplatValue())) { + Res = &CI->getValue(); + return true; + } return false; } }; @@ -151,13 +145,11 @@ struct cst_pred_ty : public Predicate { bool match(ITy *V) { if (const ConstantInt *CI = dyn_cast(V)) return this->isValue(CI->getValue()); - // FIXME: Remove this. - if (const ConstantVector *CV = dyn_cast(V)) - if (ConstantInt *CI = dyn_cast_or_null(CV->getSplatValue())) - return this->isValue(CI->getValue()); - if (const ConstantDataVector *CV = dyn_cast(V)) - if (ConstantInt *CI = dyn_cast_or_null(CV->getSplatValue())) - return this->isValue(CI->getValue()); + if (V->getType()->isVectorTy()) + if (const Constant *C = dyn_cast(V)) + if (const ConstantInt *CI = + dyn_cast_or_null(C->getSplatValue())) + return this->isValue(CI->getValue()); return false; } }; @@ -175,21 +167,13 @@ struct api_pred_ty : public Predicate { Res = &CI->getValue(); return true; } - - // FIXME: remove. - if (const ConstantVector *CV = dyn_cast(V)) - if (ConstantInt *CI = dyn_cast_or_null(CV->getSplatValue())) - if (this->isValue(CI->getValue())) { - Res = &CI->getValue(); - return true; - } - - if (const ConstantDataVector *CV = dyn_cast(V)) - if (ConstantInt *CI = dyn_cast_or_null(CV->getSplatValue())) - if (this->isValue(CI->getValue())) { - Res = &CI->getValue(); - return true; - } + if (V->getType()->isVectorTy()) + if (const Constant *C = dyn_cast(V)) + if (ConstantInt *CI = dyn_cast_or_null(C->getSplatValue())) + if (this->isValue(CI->getValue())) { + Res = &CI->getValue(); + return true; + } return false; }