[PATCH] D22112: Disambiguate a constant with both 0B prefix and H suffix.

Reid Kleckner via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 30 08:47:20 PDT 2016


rnk requested changes to this revision.
This revision now requires changes to proceed.

================
Comment at: lib/MC/MCParser/AsmLexer.cpp:354
@@ -317,3 +353,3 @@
 
-  if ((*CurPtr == 'x') || (*CurPtr == 'X')) {
+  if (!IsParsingMSInlineAsm && ((*CurPtr == 'x') || (*CurPtr == 'X'))) {
     ++CurPtr;
----------------
This doesn't seem correct, MSVC accepts this code and returns 16:
  int main() {
    __asm mov eax, 0x10
  }


================
Comment at: tools/clang/test/CodeGen/ms-inline-asm.c:43
@@ -42,3 +42,3 @@
 void t6(void) {
-  __asm int 0x2c
+  __asm int 2ch
 // CHECK: t6
----------------
We should test both the 0xNN and NNh variants. Leave some of the 0x tests in place for now.


https://reviews.llvm.org/D22112





More information about the llvm-commits mailing list