Issue 131825
Summary llvm-reduce's ReduceOperandsToArgs transformation should try to replace load metadata with argument attribute equivalents
Labels llvm-reduce
Assignees
Reporter arsenm
    If we're reducing a case that looks like

```
  define void @foo(ptr %ptr) {
    %load = load i32, ptr %ptr, !range !{i32 0, i32 16}, !noundef !{}
 call void @bar(i32 %load)
    ret void
  }
```

to 
```
  define void @foo(ptr %ptr, i32 %load) {
    call void @bar(i32 %load)
    ret void
 }
```
We're losing the annotations which are potentially relevant to optimization. In these cases, we can substitute the noundef and range attributes for the original metadata 
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to