simplify the hacks around jrcxz.
authorChris Lattner <sabre@nondot.org>
Mon, 6 Sep 2010 20:10:12 +0000 (20:10 +0000)
committerChris Lattner <sabre@nondot.org>
Mon, 6 Sep 2010 20:10:12 +0000 (20:10 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113167 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/X86/AsmParser/X86AsmParser.cpp

index 54288769a091ea9175528acf76689a18a5bb9bd2..52ca15ba1a6c0d57dd3f5bcdb7d40108eb6d786f 100644 (file)
@@ -622,9 +622,6 @@ ParseInstruction(StringRef Name, SMLoc NameLoc,
     // FIXME: We can do jcxz/jecxz, we just don't have the encoding right yet.
     if (Name == "jcxz" || Name == "jecxz")
       return Error(NameLoc, Name + " cannot be encoded in 64-bit mode");
-  } else {
-    if (Name == "jrcxz")
-      return Error(NameLoc, "jrcxz cannot be encoded in 32-bit mode");
   }
 
   // FIXME: Hack to recognize "sal..." and "rep..." for now. We need a way to
@@ -652,7 +649,7 @@ ParseInstruction(StringRef Name, SMLoc NameLoc,
     // jecxz requires an AdSize prefix but jecxz does not have a prefix in
     // 32-bit mode.
     .Case("jecxz", "jcxz")
-    .Case("jrcxz", "jcxz")
+    .Case("jrcxz", Is64Bit ? "jcxz" : "jrcxz")
     .Case("jna", "jbe")
     .Case("jnae", "jb")
     .Case("jnb", "jae")