ARM: Make .unreq directives case-insensitive

Be case-insensitive when processing .unreq directives.

Patch by Lin Zuojian!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@203251 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Duncan P. N. Exon Smith 2014-03-07 16:16:52 +00:00
parent 1dd31112ff
commit ac4c4a8844
2 changed files with 21 additions and 1 deletions

View File

@ -8255,7 +8255,7 @@ bool ARMAsmParser::parseDirectiveUnreq(SMLoc L) {
Error(L, "unexpected input in .unreq directive."); Error(L, "unexpected input in .unreq directive.");
return false; return false;
} }
RegisterReqs.erase(Parser.getTok().getIdentifier()); RegisterReqs.erase(Parser.getTok().getIdentifier().lower());
Parser.Lex(); // Eat the identifier. Parser.Lex(); // Eat the identifier.
return false; return false;
} }

View File

@ -0,0 +1,20 @@
@ RUN: llvm-mc -triple=arm < %s | FileCheck %s
.syntax unified
_foo:
OBJECT .req r2
mov r4, OBJECT
mov r4, oBjEcT
.unreq oBJECT
_foo2:
OBJECT .req r5
mov r4, OBJECT
.unreq OBJECT
@ CHECK-LABEL: _foo:
@ CHECK: mov r4, r2
@ CHECK: mov r4, r2
@ CHECK-LABEL: _foo2:
@ CHECK: mov r4, r5