forked from OSchip/llvm-project
[TableGen] Treat reg as isolated in reg$foo (but not in ${foo}reg)
D9844 fixed a problem where the ss suffix in the AsmString "cmp${cc}ss" was recognised as the X86 SS register, by only recognising a token as a register name if it is "isolated", i.e. surrounded by separator characters. In the AMDGPU backend there are many operands like $clamp which expand to an optional string " clamp" including the preceding space, so we want to have AsmStrings including sequences like "vcc$clamp" where vcc is a register name. This patch relaxes the rules for an isolated token, to say that it's OK if the token is immediately followed by a '$'. Differential Revision: https://reviews.llvm.org/D90315
This commit is contained in:
parent
772aaa6023
commit
b3dac4ee24
|
@ -1018,7 +1018,7 @@ void MatchableInfo::tokenizeAsmString(const AsmMatcherInfo &Info,
|
|||
|
||||
case '$': {
|
||||
if (InTok) {
|
||||
addAsmOperand(String.slice(Prev, i), false);
|
||||
addAsmOperand(String.slice(Prev, i), IsIsolatedToken);
|
||||
InTok = false;
|
||||
IsIsolatedToken = false;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue