-
Notifications
You must be signed in to change notification settings - Fork 5
pre-commit: PR146714 #2530
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
base: main
Are you sure you want to change the base?
pre-commit: PR146714 #2530
Conversation
Diff moderunner: ariselab-64c-docker 2110 files changed, 1764296 insertions(+), 1774849 deletions(-)
15 14 bench/abc/optimized/acecRe.ll |
Here is a high-level summary of the most significant changes in this LLVM IR patch set:
These transformations generally point toward better scalar evolution analysis and improved lowering of pointer and array accesses into simpler integer arithmetic, which can lead to better register allocation, reduced memory usage, and faster execution. model: qwen-plus-latest |
%.not.i.i = icmp eq ptr %8, %25 | ||
br i1 %.not.i.i, label %33, label %26 | ||
%26 = select i1 %or.cond.i.i, i64 4, i64 3 | ||
%.not.i.i = icmp samesign eq i64 %7, %26 |
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.
%52 = sext i32 %46 to i64 | ||
%.idx64.i = shl nsw i64 %52, 4 | ||
%53 = add nsw i64 %.idx.i, -16 | ||
%.not4752.i = icmp slt i64 %53, %.idx64.i |
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.
Missing fold: https://alive2.llvm.org/ce/z/wpm9v2
%62 = add nuw nsw i64 %44, 10 | ||
%63 = add nuw nsw i64 %62, %.161 | ||
%64 = add nuw nsw i64 %63, %32 | ||
%.not72 = icmp samesign eq i64 %64, %3 |
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.
%56 = add nuw nsw i64 %55, %21 | ||
%57 = add nuw nsw i64 %56, %34 | ||
%58 = add nuw nsw i64 %57, %46 | ||
%59 = icmp samesign ugt i64 %58, %2 |
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.
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.
%13 = getelementptr inbounds nuw i8, ptr %1, i64 %2 one-use
%16 = getelementptr inbounds nuw i8, ptr %1, i64 8 multi-use
%20 = getelementptr inbounds nuw i8, ptr %16, i64 %18 multi-use
%33 = getelementptr inbounds nuw i8, ptr %20, i64 %22 multi-use
%45 = getelementptr inbounds nuw i8, ptr %33, i64 %35 one-use
%56 = getelementptr inbounds nuw i8, ptr %45, i64 %47 one-use
%57 = getelementptr inbounds nuw i8, ptr %56, i64 12 one-use
%58 = icmp ugt ptr %57, %13
->
%55 = add nuw nsw i64 %18, 20
%56 = add nuw nsw i64 %55, %22
%57 = add nuw nsw i64 %56, %35
%58 = add nuw nsw i64 %57, %47
%59 = icmp samesign ugt i64 %58, %2
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.
%indvars.iv = phi i64 [ 0, %59 ], [ %indvars.iv.next, %.critedge ] | ||
%.469123 = phi ptr [ %56, %59 ], [ %66, %.critedge ] | ||
%62 = add i64 %45, %46 | ||
%gepdiff106 = sub i64 %.neg116, %62 |
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.
Ptrdiff cannot reuse the precomputed offset.
Link: llvm/llvm-project#146714
Requested by: @dtcxzyw