Conversation
Diff moderunner: ariselab-64c-docker 6972 files changed, 16132942 insertions(+), 16930863 deletions(-) +24 cmake/cmSystemTools.ll |
|
This patch introduces several targeted optimizations across many benchmarks, primarily focused on improving bit-test efficiency and cleaning up redundant operations. Here are the five major changes:
model: qwen-plus-latest |
|
|
||
| Abc_TtNot.exit: ; preds = %.lr.ph.i122, %Abc_TtExpand.exit113, %Abc_TtMux.exit | ||
| %401 = phi i32 [ 0, %Abc_TtExpand.exit113 ], [ 0, %Abc_TtMux.exit ], [ 1, %.lr.ph.i122 ] | ||
| %401 = phi i32 [ 0, %Abc_TtExpand.exit113 ], [ %.mux, %Abc_TtMux.exit ], [ 1, %.lr.ph.i122 ] |
There was a problem hiding this comment.
Perhaps we can infer the constant in computeKnownBitsFromCond.
| %.not156.i = trunc i16 %.pre.i to i1 | ||
| %85 = and i32 %84, 16 | ||
| %.not157.i = icmp eq i32 %85, 0 | ||
| %or.cond170.i = and i1 %.not157.i, %.not156.i |
There was a problem hiding this comment.
the pattern that was handed in that PR was icmp eq (trunc to iX) , 0
but this pattern hade been handled if the the zext was not there as decomposeBitTestICmp do not look through that
Link: llvm/llvm-project#178977
Requested by: @andjo403