ARM: permit upper-case BE/LE on setend instruction
authorTim Northover <tnorthover@apple.com>
Fri, 31 May 2013 15:58:45 +0000 (15:58 +0000)
committerTim Northover <tnorthover@apple.com>
Fri, 31 May 2013 15:58:45 +0000 (15:58 +0000)
Patch by Amaury de la Vieuville.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183012 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/ARM/AsmParser/ARMAsmParser.cpp
test/MC/ARM/basic-arm-instructions.s

index 9fa389ab2c1dab581b165d79e4cdbc96aedb8dbd..c2871502283d050a01c16f069533952ea317bdbc 100644 (file)
@@ -3624,7 +3624,7 @@ parseSetEndImm(SmallVectorImpl<MCParsedAsmOperand*> &Operands) {
     Error(S, "'be' or 'le' operand expected");
     return MatchOperand_ParseFail;
   }
-  int Val = StringSwitch<int>(Tok.getString())
+  int Val = StringSwitch<int>(Tok.getString().lower())
     .Case("be", 1)
     .Case("le", 0)
     .Default(-1);
index 5227bdd2397f93f46b780a8a92d46359aa4a5fc0..4440ebd2609553414fcf24220c099ee1656671ec 100644 (file)
@@ -1745,9 +1745,13 @@ Lforward:
 @ SETEND
 @------------------------------------------------------------------------------
         setend be
+        setend BE
         setend le
+        setend LE
 
 @ CHECK: setend        be                      @ encoding: [0x00,0x02,0x01,0xf1]
+@ CHECK: setend        be                      @ encoding: [0x00,0x02,0x01,0xf1]
+@ CHECK: setend        le                      @ encoding: [0x00,0x00,0x01,0xf1]
 @ CHECK: setend        le                      @ encoding: [0x00,0x00,0x01,0xf1]