diff options
author | Duncan P. N. Exon Smith <dexonsmith@apple.com> | 2016-04-05 21:10:45 +0000 |
---|---|---|
committer | Duncan P. N. Exon Smith <dexonsmith@apple.com> | 2016-04-05 21:10:45 +0000 |
commit | 1de3c7e79010c43300a2637c3020a1489a3dd0de (patch) | |
tree | 637d041245eb1fc7fee37ea9b5a5d14e9911e5f6 /llvm/lib/Transforms/Utils/Evaluator.cpp | |
parent | f880d35b80dd7fda9ddfffeff7383614318b1bdb (diff) | |
download | bcm5719-llvm-1de3c7e79010c43300a2637c3020a1489a3dd0de.tar.gz bcm5719-llvm-1de3c7e79010c43300a2637c3020a1489a3dd0de.zip |
IR: Introduce ConstantAggregate, NFC
Add a common parent class for ConstantArray, ConstantVector, and
ConstantStruct called ConstantAggregate. These are the aggregate
subclasses of Constant that take operands.
This is mainly a cleanup, adding common `isa` target and removing
duplicated code. However, it also simplifies caching which constants
point transitively at `GlobalValue` (a possible future direction).
llvm-svn: 265466
Diffstat (limited to 'llvm/lib/Transforms/Utils/Evaluator.cpp')
-rw-r--r-- | llvm/lib/Transforms/Utils/Evaluator.cpp | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/llvm/lib/Transforms/Utils/Evaluator.cpp b/llvm/lib/Transforms/Utils/Evaluator.cpp index 46e1dcc58dd..47cf5ff5b80 100644 --- a/llvm/lib/Transforms/Utils/Evaluator.cpp +++ b/llvm/lib/Transforms/Utils/Evaluator.cpp @@ -56,8 +56,7 @@ isSimpleEnoughValueToCommitHelper(Constant *C, return true; // Aggregate values are safe if all their elements are. - if (isa<ConstantArray>(C) || isa<ConstantStruct>(C) || - isa<ConstantVector>(C)) { + if (isa<ConstantAggregate>(C)) { for (Value *Op : C->operands()) if (!isSimpleEnoughValueToCommit(cast<Constant>(Op), SimpleConstants, DL)) return false; |