-
Notifications
You must be signed in to change notification settings - Fork 8
pre-commit: PR143677 #2717
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
pre-commit: PR143677 #2717
Conversation
Diff moderunner: ariselab-64c-docker 1207 files changed, 231465 insertions(+), 232883 deletions(-) 3 3 bench/abc/optimized/extraUtilCanon.ll |
|
The provided patch consists of various optimizations and transformations across multiple LLVM IR files. Here are the major changes observed:
These changes collectively aim to optimize the generated code by reducing redundancy, improving switch handling, and simplifying control flow, which can lead to better performance and smaller code size. model: qwen-plus-latest |
| %13 = add i64 %12, 9223372036854775807 | ||
| %14 = icmp ne i64 %13, 4 | ||
| tail call void @llvm.assume(i1 %14) | ||
| switch i64 %13, label %16 [ | ||
| i64 0, label %15 | ||
| i64 1, label %15 | ||
| i64 3, label %15 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Improvement, switch values turned smaller.
| %50 = add nsw i32 %49, -160 | ||
| %51 = getelementptr inbounds nuw i8, ptr %.0141.i, i64 2 | ||
| %52 = load i8, ptr %51, align 1 | ||
| switch i32 %50, label %58 [ | ||
| i32 1, label %53 | ||
| i32 3, label %53 | ||
| i32 4, label %53 | ||
| i32 5, label %53 | ||
| i32 8, label %53 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Improvement, possibly?
| %4 = add nsw i8 %3, -2 | ||
| %5 = icmp ne i8 %4, 2 | ||
| tail call void @llvm.assume(i1 %5) | ||
| switch i8 %4, label %6 [ | ||
| i8 0, label %7 | ||
| i8 1, label %8 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
add out, though smaller values.
| switch i32 %37, label %.thread138 [ | ||
| i32 12, label %69 | ||
| i32 8, label %69 | ||
| i32 0, label %.thread135 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Regression.
| .preheader64.i.i130: ; preds = %105 | ||
| %.not.us.i.i137187 = icmp eq i64 %107, 0 | ||
| br i1 %.not.us.i.i137187, label %.loopexit.i.i126, label %.lr.ph.preheader |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Regression.
|
/add-label reviewed |
Link: llvm/llvm-project#143677
Requested by: @antoniofrighetto