nikic wrote:
I'm not sure whether this is related to the Windows issue or not, but I've
found one miscompile in the interaction with callCapturesBefore:
```
; RUN: opt -S -passes=memcpyopt < %s
declare void @foo(ptr)
define void @test(ptr noalias writable dereferenceable(4) %p) {
%a = alloca i32
%ret = call ptr @foo(ptr %a, ptr captures(ret: address, provenance) %p)
nounwind
call void @llvm.memcpy(ptr align 4 %p, ptr %a, i64 4, i1 false)
ret void
}
```
This performs call slot optimization, while it shouldn't.
https://github.com/llvm/llvm-project/pull/125880
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits