Issue 176655
Summary [GVN] Missing store to load forwarding for memset.pattern
Labels llvm:optimizations, missed-optimization
Assignees
Reporter nikic
    https://llvm.godbolt.org/z/GzehrjsxW
```llvm
define <8 x i32> @test_pattern(ptr %p) {
  call void @llvm.experimental.memset.pattern.p0.i32.i64(ptr %p, i32 42, i64 8, i1 false)
  %load = load <8 x i32>, ptr %p
  ret <8 x i32> %load
}

define <8 x i32> @test_plain(ptr %p) {
  call void @llvm.memset.pattern.p0.i64(ptr %p, i8 42, i64 32, i1 false)
  %load = load <8 x i32>, ptr %p
  ret <8 x i32> %load
}
```
The latter case forwards, the former does not.
_______________________________________________
llvm-bugs mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to