[llvm] r314410 - [x86][AsmParser] Allow some more MS size directives

Coby Tayree via llvm-commits llvm-commits at lists.llvm.org
Thu Sep 28 04:04:08 PDT 2017


Author: coby
Date: Thu Sep 28 04:04:08 2017
New Revision: 314410

URL: http://llvm.org/viewvc/llvm-project?rev=314410&view=rev
Log:
[x86][AsmParser] Allow some more MS size directives
MS allows the following size directives: float/double and long as synonymous to dword/qword and dword, respectively.
Differential Revision: https://reviews.llvm.org/D37190

Modified:
    llvm/trunk/lib/Target/X86/AsmParser/X86AsmParser.cpp
    llvm/trunk/test/MC/X86/intel-syntax.s

Modified: llvm/trunk/lib/Target/X86/AsmParser/X86AsmParser.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/AsmParser/X86AsmParser.cpp?rev=314410&r1=314409&r2=314410&view=diff
==============================================================================
--- llvm/trunk/lib/Target/X86/AsmParser/X86AsmParser.cpp (original)
+++ llvm/trunk/lib/Target/X86/AsmParser/X86AsmParser.cpp Thu Sep 28 04:04:08 2017
@@ -1689,7 +1689,10 @@ bool X86AsmParser::ParseIntelMemoryOpera
     .Cases("BYTE", "byte", 8)
     .Cases("WORD", "word", 16)
     .Cases("DWORD", "dword", 32)
+    .Cases("FLOAT", "float", 32)
+    .Cases("LONG", "long", 32)
     .Cases("FWORD", "fword", 48)
+    .Cases("DOUBLE", "double", 64)
     .Cases("QWORD", "qword", 64)
     .Cases("MMWORD","mmword", 64)
     .Cases("XWORD", "xword", 80)

Modified: llvm/trunk/test/MC/X86/intel-syntax.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/X86/intel-syntax.s?rev=314410&r1=314409&r2=314410&view=diff
==============================================================================
--- llvm/trunk/test/MC/X86/intel-syntax.s (original)
+++ llvm/trunk/test/MC/X86/intel-syntax.s Thu Sep 28 04:04:08 2017
@@ -693,11 +693,13 @@ fadd   dword ptr "?half@?0??bar@@YAXXZ at 4
 // CHECK: fadds   "?half@?0??bar@@YAXXZ at 4NA"@IMGREL
 
 inc qword ptr [rax]
+inc long ptr [rax]
 inc dword ptr [rax]
 inc word ptr [rax]
 inc byte ptr [rax]
 // CHECK: incq (%rax)
 // CHECK: incl (%rax)
+// CHECK: incl (%rax)
 // CHECK: incw (%rax)
 // CHECK: incb (%rax)
 
@@ -807,6 +809,11 @@ fbstp tbyte ptr [eax]
 // CHECK: fbld (%eax)
 // CHECK: fbstp (%eax)
 
+fld float ptr [rax]
+fld double ptr [rax]
+// CHECK: flds (%rax)
+// CHECK: fldl (%rax)
+
 fcomip st, st(2)
 fucomip st, st(2)
 // CHECK: fcompi  %st(2)




More information about the llvm-commits mailing list