================
@@ -158,7 +158,7 @@ struct Derived : BFields {
 // CHECK-LABEL: call8
 // CHECK: [[A:%.*]] = alloca [4 x i32], align 4
 // CHECK-NEXT: [[Tmp:%.*]] = alloca %struct.Derived, align 1
-// CHECK-NEXT: call void @llvm.memcpy.p0.p0.i32(ptr align 1 [[Tmp]], ptr align 
1 %D, i32 19, i1 false)
+// CHECK: call void @llvm.memcpy.p0.p0.i32(ptr align 1 [[Tmp]], ptr align 1 
%D, i32 19, i1 false)
----------------
spall wrote:

I was just omitting an extra alloca and store which are being generated for 
debug information.
https://github.com/llvm/llvm-project/blob/1b2ccc16ce90b52ebd1f1629e5a95bc4203c1dc1/clang/lib/CodeGen/CGDecl.cpp#L2724
```
 %D.indirect_addr = alloca ptr, align 4
  %A = alloca [4 x i32], align 4
  %agg-temp = alloca %struct.Derived, align 1
  store ptr %D, ptr %D.indirect_addr, align 4
  call void @llvm.memcpy.p0.p0.i32(ptr align 1 %agg-temp, ptr align 1 %D, i32 
19, i1 false)
```

https://github.com/llvm/llvm-project/pull/190089
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to