From: Hans Wennborg Date: Mon, 29 Sep 2014 23:45:00 +0000 (+0000) Subject: Try to fix non-asserts CodeGenCXX/vararg-non-pod-ms-compat.cpp X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=33797209f4e57cc0fd303962060b8c0eae247e3d;p=clang Try to fix non-asserts CodeGenCXX/vararg-non-pod-ms-compat.cpp There are two GEP's in the function, and it seems the X64 CHECK was matching the wrong one. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@218645 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/test/CodeGenCXX/vararg-non-pod-ms-compat.cpp b/test/CodeGenCXX/vararg-non-pod-ms-compat.cpp index da05c0b524..0d468aac57 100644 --- a/test/CodeGenCXX/vararg-non-pod-ms-compat.cpp +++ b/test/CodeGenCXX/vararg-non-pod-ms-compat.cpp @@ -15,7 +15,8 @@ void test(X x) { // X86: %[[argmem:[^ ]*]] = alloca inalloca <{ %struct.X }> // X86: call void (<{ %struct.X }>*, ...)* bitcast (void (...)* @"\01?vararg@@YAXZZ" to void (<{ %struct.X }>*, ...)*)(<{ %struct.X }>* inalloca %[[argmem]]) - // X64: %[[valptr:[^ ]*]] = getelementptr %struct.X* %{{[^ ]*}}, i32 0, i32 0 + // X64: %[[agg:[^ ]*]] = alloca %struct.X + // X64: %[[valptr:[^ ]*]] = getelementptr %struct.X* %[[agg]], i32 0, i32 0 // X64: %[[val:[^ ]*]] = load i32* %[[valptr]] // X64: call void (...)* @"\01?vararg@@YAXZZ"(i32 %[[val]]) @@ -23,4 +24,3 @@ void test(X x) { vararg(x); // CHECK: ret void } -