r309510 - [x86][inline-asm][ms-compat] legalize the use of "jc/jz short <op>"

Coby Tayree via cfe-commits cfe-commits at lists.llvm.org
Sun Jul 30 04:13:46 PDT 2017


Author: coby
Date: Sun Jul 30 04:13:46 2017
New Revision: 309510

URL: http://llvm.org/viewvc/llvm-project?rev=309510&view=rev
Log:
[x86][inline-asm][ms-compat] legalize the use of "jc/jz short <op>"

MS ignores the keyword "short" when used after a jc/jz instruction, LLVM ought to do the same.
llvm: D35892

Differential Revision: https://reviews.llvm.org/D35893

Modified:
    cfe/trunk/test/CodeGen/ms-inline-asm.c

Modified: cfe/trunk/test/CodeGen/ms-inline-asm.c
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGen/ms-inline-asm.c?rev=309510&r1=309509&r2=309510&view=diff
==============================================================================
--- cfe/trunk/test/CodeGen/ms-inline-asm.c (original)
+++ cfe/trunk/test/CodeGen/ms-inline-asm.c Sun Jul 30 04:13:46 2017
@@ -704,10 +704,12 @@ void label5() {
 void label6(){
   __asm {
       jmp short label
+      jc  short label
+      jz  short label
     label:
   }
   // CHECK-LABEL: define void @label6
-  // CHECK: call void asm sideeffect inteldialect "jmp {{.*}}__MSASMLABEL_.${:uid}__label\0A\09{{.*}}__MSASMLABEL_.${:uid}__label:", "~{dirflag},~{fpsr},~{flags}"()
+  // CHECK: jmp {{.*}}__MSASMLABEL_.${:uid}__label\0A\09jc {{.*}}__MSASMLABEL_.${:uid}__label\0A\09jz {{.*}}__MSASMLABEL_.${:uid}__label\0A\09{{.*}}__MSASMLABEL_.${:uid}__label:"
 }
 
 // Don't include mxcsr in the clobber list.




More information about the cfe-commits mailing list