[PATCH] D104195: [ms] [llvm-ml] When parsing MASM, "jmp short" instructions are case insensitive

Eric Astor via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Jun 13 15:37:14 PDT 2021


This revision was automatically updated to reflect the committed changes.
Closed by commit rGf09e200b31f4: [ms] [llvm-ml] When parsing MASM, "jmp short" instructions are case insensitive (authored by epastor).

Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D104195/new/

https://reviews.llvm.org/D104195

Files:
  llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
  llvm/test/tools/llvm-ml/jmp_short.asm


Index: llvm/test/tools/llvm-ml/jmp_short.asm
===================================================================
--- /dev/null
+++ llvm/test/tools/llvm-ml/jmp_short.asm
@@ -0,0 +1,21 @@
+; RUN: llvm-ml -filetype=s %s /Fo - | FileCheck %s
+
+.code
+
+t1:
+  jmp short t1_label
+  jmp SHORT t1_label
+  JmP Short t1_label
+  JMP SHORT t1_label
+  mov eax, eax
+t1_label:
+  ret
+
+; CHECK-LABEL: t1:
+; CHECK-NEXT: jmp t1_label
+; CHECK-NEXT: jmp t1_label
+; CHECK-NEXT: jmp t1_label
+; CHECK-NEXT: jmp t1_label
+; CHECK-NEXT: mov eax, eax
+
+end
Index: llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
===================================================================
--- llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
+++ llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
@@ -3105,7 +3105,8 @@
        (PatchedName.startswith("j") &&
         ParseConditionCode(PatchedName.substr(1)) != X86::COND_INVALID))) {
     StringRef NextTok = Parser.getTok().getString();
-    if (NextTok == "short") {
+    if (Parser.isParsingMasm() ? NextTok.equals_lower("short")
+                               : NextTok == "short") {
       SMLoc NameEndLoc =
           NameLoc.getFromPointer(NameLoc.getPointer() + Name.size());
       // Eat the short keyword.


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D104195.351749.patch
Type: text/x-patch
Size: 1243 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210613/49552882/attachment.bin>


More information about the llvm-commits mailing list