Issue 168688
Summary Why is folding @llvm.assumes into operand bundle assumes behind --enable-knowledge-retention?
Labels new issue
Assignees
Reporter philnik777
    Currently you have to pass `-mllvm --enable-knowledge-retention` for LLVM to fold
```llvm
  %cmp = icmp ne ptr %ptr, null
  call void @llvm.assume(i1 %cmp)
```
into
```llvm
  call void @llvm.assume(i1 true) [ "nonnull"(ptr %ptr) ]
```

AFAICT the operand bundles seem to be strictly superior for optimization compared to an equivalent instruction based version. Is there a reason this fold isn't enabled by default/unconditionally?
_______________________________________________
llvm-bugs mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to