summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorDaniel Sanders <daniel.sanders@imgtec.com>2016-03-14 12:44:44 +0000
committerDaniel Sanders <daniel.sanders@imgtec.com>2016-03-14 12:44:44 +0000
commit127d2d2b4650aa99a0ef3bdeb838d18d04c85378 (patch)
treee7e537f77c9317dba3fc94032ff737b715d323ea /llvm/lib
parente641cb4807d569a9ddf32e289a40df539f75940d (diff)
downloadbcm5719-llvm-127d2d2b4650aa99a0ef3bdeb838d18d04c85378.tar.gz
bcm5719-llvm-127d2d2b4650aa99a0ef3bdeb838d18d04c85378.zip
[mips] Range check uimm16_64
Summary: Reviewers: vkalintiris Subscribers: llvm-commits, dsanders Differential Revision: http://reviews.llvm.org/D17725 llvm-svn: 263427
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/Target/Mips/MipsInstrInfo.td15
1 files changed, 8 insertions, 7 deletions
diff --git a/llvm/lib/Target/Mips/MipsInstrInfo.td b/llvm/lib/Target/Mips/MipsInstrInfo.td
index 5b4c4c812f6..e72d0b96bed 100644
--- a/llvm/lib/Target/Mips/MipsInstrInfo.td
+++ b/llvm/lib/Target/Mips/MipsInstrInfo.td
@@ -658,7 +658,7 @@ def uimm6_lsl2 : Operand<OtherVT> {
foreach I = {16} in
def uimm # I : Operand<i32> {
- let PrintMethod = "printUImm<16>";
+ let PrintMethod = "printUImm<" # I # ">";
let ParserMatchClass =
!cast<AsmOperandClass>("UImm" # I # "AsmOperandClass");
}
@@ -672,16 +672,17 @@ def uimm16_relaxed : Operand<i32> {
foreach I = {5} in
def uimm # I # _64 : Operand<i64> {
- let PrintMethod = "printUImm<5>";
+ let PrintMethod = "printUImm<" # I # ">";
let ParserMatchClass =
!cast<AsmOperandClass>("ConstantUImm" # I # "AsmOperandClass");
}
-def uimm16_64 : Operand<i64> {
- let PrintMethod = "printUImm<16>";
- let ParserMatchClass =
- !cast<AsmOperandClass>("UImm16AsmOperandClass");
-}
+foreach I = {16} in
+ def uimm # I # _64 : Operand<i64> {
+ let PrintMethod = "printUImm<" # I # ">";
+ let ParserMatchClass =
+ !cast<AsmOperandClass>("UImm" # I # "AsmOperandClass");
+ }
// Like uimm16_64 but coerces simm16 to uimm16.
def uimm16_64_relaxed : Operand<i64> {
OpenPOWER on IntegriCloud