aboutsummaryrefslogtreecommitdiffstats
path: root/lib/CodeGen
diff options
context:
space:
mode:
authorRichard Sandiford <rsandifo@linux.vnet.ibm.com>2013-05-24 14:14:38 +0000
committerRichard Sandiford <rsandifo@linux.vnet.ibm.com>2013-05-24 14:14:38 +0000
commitf386961da34426d12de8558ad04ad7f22c71489a (patch)
treeee154f09d98ed37fceb0db03187a00606b5acd97 /lib/CodeGen
parent7ab9fb02f821806de5e27d01a123260dca799575 (diff)
downloadexternal_llvm-f386961da34426d12de8558ad04ad7f22c71489a.tar.gz
external_llvm-f386961da34426d12de8558ad04ad7f22c71489a.tar.bz2
external_llvm-f386961da34426d12de8558ad04ad7f22c71489a.zip
[SystemZ] Improve AsmParser register parsing
The idea is to make sure that: (1) "register expected" is restricted to cases where ParseRegister() is called and the token obviously isn't a register. (2) "invalid register" is restricted to cases where a register-like "%..." sequence is found, but the "..." makes no sense. (3) the generic "invalid operand for instruction" is used in cases where the wrong register type is used (GPR instead of FPR, etc.). (4) the new "invalid register pair" is used if the register has the right type, but is not a valid register pair. Testing of (1)-(3) is now restricted to regs-bad.s. It uses a representative instruction for each register class to make sure that only registers from that class are accepted. (4) is tested by both regs-bad.s (which checks all invalid register pairs) and insn-bad.s (which tests one invalid pair for each instruction that requires a pair). While there, I changed "Number" to "Num" for consistency with the operand class. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182643 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen')
0 files changed, 0 insertions, 0 deletions