diff options
author | Bruno Cardoso Lopes <bruno.cardoso@gmail.com> | 2011-01-20 16:35:57 +0000 |
---|---|---|
committer | Bruno Cardoso Lopes <bruno.cardoso@gmail.com> | 2011-01-20 16:35:57 +0000 |
commit | cf99dc7eb96f5d2568fa46298d96b5f10a670cf0 (patch) | |
tree | 3b74ae8a0a8617913ff8520d8a3c029d1a48f172 /llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp | |
parent | 3f610c75de545d04cf016465f497ce9ae5ca9af6 (diff) | |
download | bcm5719-llvm-cf99dc7eb96f5d2568fa46298d96b5f10a670cf0.tar.gz bcm5719-llvm-cf99dc7eb96f5d2568fa46298d96b5f10a670cf0.zip |
Add mcr* and mr*c support to thumb targets
llvm-svn: 123917
Diffstat (limited to 'llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp')
-rw-r--r-- | llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp b/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp index 6a8b6582157..ba42b1ec103 100644 --- a/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp +++ b/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp @@ -1193,12 +1193,16 @@ GetMnemonicAcceptInfo(StringRef Mnemonic, bool &CanAcceptCarrySet, Mnemonic == "cps" || Mnemonic == "mcr2" || Mnemonic == "it" || Mnemonic == "mcrr2" || Mnemonic == "cbz" || Mnemonic == "cdp2" || Mnemonic == "trap" || Mnemonic == "mrc2" || Mnemonic == "mrrc2" || - Mnemonic == "dsb" || Mnemonic == "movs" || Mnemonic == "isb" || - (isThumb && Mnemonic == "bkpt")) { + Mnemonic == "dsb" || Mnemonic == "movs" || Mnemonic == "isb") { CanAcceptPredicationCode = false; } else { CanAcceptPredicationCode = true; } + + if (isThumb) + if (Mnemonic == "bkpt" || Mnemonic == "mcr" || Mnemonic == "mcrr" || + Mnemonic == "mrc" || Mnemonic == "mrrc") + CanAcceptPredicationCode = false; } /// Parse an arm instruction mnemonic followed by its operands. |