summaryrefslogtreecommitdiffstats
path: root/llvm/lib/TableGen/Record.cpp
diff options
context:
space:
mode:
authorMatt Arsenault <Matthew.Arsenault@amd.com>2016-11-15 06:49:28 +0000
committerMatt Arsenault <Matthew.Arsenault@amd.com>2016-11-15 06:49:28 +0000
commit1c8d933881a9990d2463c1e7772b4f4ebdb2198a (patch)
tree1aae04528751923c6c756e1a9b5e8e2ef8f7eaed /llvm/lib/TableGen/Record.cpp
parent76dbf26599388196d5f82a492c8d6004559983f7 (diff)
downloadbcm5719-llvm-1c8d933881a9990d2463c1e7772b4f4ebdb2198a.tar.gz
bcm5719-llvm-1c8d933881a9990d2463c1e7772b4f4ebdb2198a.zip
TableGen: Add operator !or
llvm-svn: 286936
Diffstat (limited to 'llvm/lib/TableGen/Record.cpp')
-rw-r--r--llvm/lib/TableGen/Record.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/llvm/lib/TableGen/Record.cpp b/llvm/lib/TableGen/Record.cpp
index 7f02c3189f3..bffe27144cf 100644
--- a/llvm/lib/TableGen/Record.cpp
+++ b/llvm/lib/TableGen/Record.cpp
@@ -865,6 +865,7 @@ Init *BinOpInit::Fold(Record *CurRec, MultiClass *CurMultiClass) const {
}
case ADD:
case AND:
+ case OR:
case SHL:
case SRA:
case SRL: {
@@ -879,6 +880,7 @@ Init *BinOpInit::Fold(Record *CurRec, MultiClass *CurMultiClass) const {
default: llvm_unreachable("Bad opcode!");
case ADD: Result = LHSv + RHSv; break;
case AND: Result = LHSv & RHSv; break;
+ case OR: Result = LHSv | RHSv; break;
case SHL: Result = LHSv << RHSv; break;
case SRA: Result = LHSv >> RHSv; break;
case SRL: Result = (uint64_t)LHSv >> (uint64_t)RHSv; break;
@@ -906,6 +908,7 @@ std::string BinOpInit::getAsString() const {
case CONCAT: Result = "!con"; break;
case ADD: Result = "!add"; break;
case AND: Result = "!and"; break;
+ case OR: Result = "!or"; break;
case SHL: Result = "!shl"; break;
case SRA: Result = "!sra"; break;
case SRL: Result = "!srl"; break;
OpenPOWER on IntegriCloud