[PATCH] D30165: AArch64AsmParser: don't try to parse “[1]” for non-vector register operands
Sjoerd Meijer via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Feb 20 07:05:45 PST 2017
SjoerdMeijer created this revision.
Herald added subscribers: rengolin, aemerson.
Hi Tim,
Do you think we can remove this code? It is not covered by tests, i.e. it never gets executed. But more importantly, it tries to parse “[1]” for non-vector register operands but I don't think that there are any instructions allowing this. The comments are suggesting FMOV, but this accepts [1] only for vector operands.
Cheers,
Sjoerd.
https://reviews.llvm.org/D30165
Files:
lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
Index: lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
===================================================================
--- lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
+++ lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
@@ -2745,7 +2745,6 @@
/// parseRegister - Parse a non-vector register operand.
bool AArch64AsmParser::parseRegister(OperandVector &Operands) {
- MCAsmParser &Parser = getParser();
SMLoc S = getLoc();
// Try for a vector register.
if (!tryParseVectorRegister(Operands))
@@ -2758,30 +2757,6 @@
Operands.push_back(
AArch64Operand::CreateReg(Reg, false, S, getLoc(), getContext()));
- // A small number of instructions (FMOVXDhighr, for example) have "[1]"
- // as a string token in the instruction itself.
- SMLoc LBracS = getLoc();
- const AsmToken &Tok = Parser.getTok();
- if (parseOptionalToken(AsmToken::LBrac)) {
- if (Tok.is(AsmToken::Integer)) {
- SMLoc IntS = getLoc();
- int64_t Val = Tok.getIntVal();
- if (Val == 1) {
- Parser.Lex();
- SMLoc RBracS = getLoc();
- if (parseOptionalToken(AsmToken::RBrac)) {
- Operands.push_back(
- AArch64Operand::CreateToken("[", false, LBracS, getContext()));
- Operands.push_back(
- AArch64Operand::CreateToken("1", false, IntS, getContext()));
- Operands.push_back(
- AArch64Operand::CreateToken("]", false, RBracS, getContext()));
- return false;
- }
- }
- }
- }
-
return false;
}
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D30165.89114.patch
Type: text/x-patch
Size: 1527 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170220/5a5b589a/attachment.bin>
More information about the llvm-commits
mailing list