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
// 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]])
vararg(x);
// CHECK: ret void
}
-