Index: llvm/trunk/lib/Target/X86/AsmParser/X86AsmParser.cpp =================================================================== --- llvm/trunk/lib/Target/X86/AsmParser/X86AsmParser.cpp +++ llvm/trunk/lib/Target/X86/AsmParser/X86AsmParser.cpp @@ -1689,7 +1689,10 @@ .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) Index: llvm/trunk/test/MC/X86/intel-syntax.s =================================================================== --- llvm/trunk/test/MC/X86/intel-syntax.s +++ llvm/trunk/test/MC/X86/intel-syntax.s @@ -693,11 +693,13 @@ // CHECK: fadds "?half@?0??bar@@YAXXZ@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 @@ // 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)