-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
[x86] Separate vector instruction selection and CodeGen passes #6884
Open
rootjalex
wants to merge
65
commits into
main
Choose a base branch
from
rootjalex/x86-optimize
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
65 commits
Select commit
Hold shift + click to select a range
85e8c69
create VectorIntrininsic node
rootjalex f0931c6
update IRMatch for VectorIntrinsic node
rootjalex ac5b6f2
implement optimize_x86_instructions
rootjalex 09193f4
fix typo
rootjalex 24f74a9
clang-format
rootjalex 58ff01b
add VectorIntrinsic comment
rootjalex 0d30b56
format
rootjalex e9029a2
add missing horizontal_add x86Intrinsics
rootjalex 9d2deb4
fix bfloat16 abs issue
rootjalex 1a51b83
fix unhandled bitwise_or in IRMatch.h
rootjalex 614b7ea
missing paren
rootjalex a5b7e72
fix buildbot failures (I hope?)
rootjalex c58f85e
clang-format
rootjalex c9efd32
add empty Expr return to Deinterleaver::visic(const VectorIntrinsic*)
rootjalex 0e94961
fix horizontal_add references
rootjalex fb538e3
fix bfloat16 abs issue (again)
rootjalex c2a6175
fix instruction selection location
rootjalex 78edb81
clang format
rootjalex 53c560b
fix virtual function hidden error
rootjalex 2cfc0c1
fix absd codegen bug
rootjalex 0675e86
attempt to fix x86 vector-reduction splitting
rootjalex 6471226
clang tidy
rootjalex fb82166
fix MSVC templating bug
rootjalex f092606
implement Andrew's requested changes
rootjalex d660816
Merge branch 'main' of github.com:halide/Halide into rootjalex/x86-op…
rootjalex 339b6b7
undef -> poison
rootjalex 17c9924
fully remove saturating_pmulhrs
rootjalex 6c74a63
clang format
rootjalex 11690d7
disable UB for VectorInstruction node
rootjalex 3648ca6
implement a base class for instruction selection
rootjalex 870af00
fix merge conflict + implement psadbw
rootjalex c21bec5
clang format
rootjalex e6502f8
fix last remnants of vector intrinsic -> vector instruction renaming
rootjalex 6d2bfd1
fix virtual func hidden error
rootjalex fa2d4e2
remove 'implement VI visitor' error msg
rootjalex ec2cd4e
address nits
rootjalex 0e5cfcf
temporary HVX/CSE fix
rootjalex b3b3551
fix case without WITH_X86
rootjalex 40f575c
fix x86 saturating_narrow pattern mistake
rootjalex 545fbe8
lower mod in InstructionSelector too
rootjalex cd0fe8a
clang format
rootjalex 6e67ddf
implement pattern matching for SapphireRapids
rootjalex 7cc3b64
Merge branch 'main' of github.com:halide/Halide into rootjalex/x86-op…
rootjalex 9da91da
Merge branch 'rootjalex/x86-optimize' of github.com:halide/Halide int…
rootjalex 19b2c5e
rm stray 'protected'
rootjalex 258b72c
merge conflict
rootjalex a98f268
update x86 saturating_cast rules using intrinsic
rootjalex 22d17e7
fix namespace issue
rootjalex bbfefd2
Merge branch 'main' of github.com:halide/Halide into rootjalex/x86-op…
rootjalex e2045bf
place Expr constants on the stack
rootjalex dc4d1f7
i8 -> u8 bugfix
rootjalex 9a5327c
add better type checking in IRMatch for SpecificExpr cases
rootjalex 292d8e5
clang format
rootjalex 5258627
Merge branch 'main' of github.com:halide/Halide into rootjalex/x86-op…
rootjalex 3b0dc43
missing &&
rootjalex 1eb0e94
clang format
rootjalex f6eb2bf
update SpecificExpr comment + remove dangling TODO comments
rootjalex a57e022
Merge branch 'main' of github.com:halide/Halide into rootjalex/x86-op…
rootjalex 6a342ba
Merge branch 'main' of github.com:halide/Halide into rootjalex/x86-op…
rootjalex 95e5070
fix signed absd lowering on x86
rootjalex 7aaf9a7
add type assertion to Optimize_X86::mutate
rootjalex b4e2e42
use shuffle for deinterleave on VectorInstruction
rootjalex 15e1a8c
do not try to extract when a vector is a simple extract_element
rootjalex cc2fac7
don't call 'simplify' in deinterleave on extract_lane
rootjalex f36d75d
resolve merge conflicts
rootjalex File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.
Please elaborate on this comment, also nit: lines in the block comment should start with *