-
Notifications
You must be signed in to change notification settings - Fork 10.7k
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
[NewPM][Hexagon] Add HexagonPassRegistry.def #86244
Conversation
Prepare for dag-isel, also migrate some test case
863fac3
to
628020e
Compare
The test case llvm-project/llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp Lines 2413 to 2416 in 90454a6
The condition is always true when invoke opt -march=hexagon -hexagon-loop-idiom . 😕
|
yeah it does seem like we should remove that check. the pass should only be added for hexagon backends anyway |
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.
the existing tests don't seem to great, but this patch on its own is good
@@ -1,4 +1,4 @@ | |||
; RUN: opt -S -hexagon-loop-idiom < %s | opt -S -passes='loop(loop-deletion),gvn' | |||
; RUN: opt -mtriple hexagon-- -S -passes='loop(hexagon-loop-idiom,loop-deletion),gvn' | |||
; REQUIRES: asserts |
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.
this REQUIRES doesn't make sense, we should run it under all configurations...
same for the other tests here
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.
Yes, this test should be run under all configurations. REQUIRES should be removed.
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.
agreed, but should be done in a separate PR
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.
Sure, I'll push a patch to remove REQUIRES.
@@ -1,4 +1,4 @@ | |||
; RUN: opt -S -hexagon-loop-idiom < %s | opt -S -passes='loop(loop-deletion),gvn' | |||
; RUN: opt -mtriple hexagon-- -S -passes='loop(hexagon-loop-idiom,loop-deletion),gvn' | |||
; REQUIRES: asserts | |||
|
|||
; This tests that the HexagonLoopIdiom pass does not mark LCSSA information |
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.
this is an issue. the new PM loop infra assumes that loops are always in LCSSA form. either the pass needs to ensure the loops are in LCSSA form, or perhaps it can just call a helper method
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.
I'll push a patch to make sure LCSSA form is preserved.
@@ -1,4 +1,5 @@ | |||
; RUN: opt -march=hexagon -hexagon-loop-idiom -S < %s | FileCheck %s | |||
; RUN: opt -march=hexagon -p hexagon-loop-idiom -S < %s | FileCheck %s | |||
; REQUIRES: asserts |
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.
Same here. Please remove REQUIRES.
Prepare for dag-isel, also migrate some test case