In the MS ABI, ctors return 'this'.  Patch by Dmitry Sokolov.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@164592 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/test/CodeGenCXX/microsoft-abi-constructors.cpp b/test/CodeGenCXX/microsoft-abi-constructors.cpp
index ac27f13..467f417 100644
--- a/test/CodeGenCXX/microsoft-abi-constructors.cpp
+++ b/test/CodeGenCXX/microsoft-abi-constructors.cpp
@@ -9,13 +9,17 @@
 void no_contstructor_destructor_infinite_recursion() {
   A a;
 
-// Make sure that the constructor doesn't call itself:
-// CHECK: define {{.*}} @"\01??0A@@QAE@XZ"
-// CHECK-NOT: call void @"\01??0A@@QAE@XZ"
-// CHECK: ret
+// CHECK:      define linkonce_odr x86_thiscallcc %class.A* @"\01??0A@@QAE@XZ"(%class.A* %this)
+// CHECK-NEXT: entry:
+// CHECK-NEXT:   %this.addr = alloca %class.A*, align 4
+// CHECK-NEXT:   store %class.A* %this, %class.A** %this.addr, align 4
+// CHECK-NEXT:   %this1 = load %class.A** %this.addr
+// CHECK-NEXT:   ret %class.A* %this1
+// CHECK-NEXT: }
 
 // Make sure that the destructor doesn't call itself:
 // CHECK: define {{.*}} @"\01??1A@@QAE@XZ"
 // CHECK-NOT: call void @"\01??1A@@QAE@XZ"
 // CHECK: ret
 }
+