From: Craig Topper Date: Tue, 10 Apr 2018 18:43:44 +0000 (+0000) Subject: [X86] Add test case for llvm change r329734 X-Git-Tag: llvmorg-7.0.0-rc1~8489 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=298e1712d827a05b2cbb2936a9fc67745fa68c13;p=platform%2Fupstream%2Fllvm.git [X86] Add test case for llvm change r329734 This test ensures the popfd instruction in MS inline assembly can properly find a clobber name for the dirflag register. Previously the register was named 'DF', but it needs to be named 'dirflag' to match the name in the GCC register name list. llvm-svn: 329738 --- diff --git a/clang/test/CodeGen/ms-inline-asm.c b/clang/test/CodeGen/ms-inline-asm.c index 5c3e3ff..edcbaa8 100644 --- a/clang/test/CodeGen/ms-inline-asm.c +++ b/clang/test/CodeGen/ms-inline-asm.c @@ -754,6 +754,13 @@ void mxcsr() { // CHECK-LABEL: define void @mxcsr // CHECK: call void asm sideeffect inteldialect "fxrstor $0", "=*m,~{dirflag},~{fpsr},~{flags}" +// Make sure we can find the register for the dirflag for popfd +void dirflag() { + __asm popfd +} +// CHECK-LABEL: define void @dirflag +// CHECK: call void asm sideeffect inteldialect "popfd", "~{dirflag},~{flags},~{esp},~{dirflag},~{fpsr},~{flags}" + typedef union _LARGE_INTEGER { struct { unsigned int LowPart;