User Details
- User Since
- Feb 27 2022, 6:44 PM (82 w, 5 d)
Tue, Sep 26
Fix signedness handling of any_extend
Fri, Sep 22
Fix dereference issue + nits (reorganize logic + comments)
Extract signedness checking
Thu, Sep 21
Thanks -- the AMDGPUISD::PERM side LGTM
Wed, Sep 20
Can you please bring in tests from https://github.com/llvm/llvm-project/pull/66965
Disregard previous version of comment -- I did not see the most recent changes.
what is the best way to generalize the performOrCombine handling to support ISD::FSHR as well?
Tue, Sep 19
Fri, Sep 15
IsSigned tracks whether or not to produce an instruction with signed behavior. In some cases, we are able to determine this based on the semantics of the top-level instruction, however, in other cases, we need more information. For such cases, we must look to the tree itself.
Wed, Sep 13
Tue, Sep 12
Reopen for review as it has been reverted, now includes https://github.com/llvm/llvm-project/pull/65995
Thu, Sep 7
Abandon in favor of https://reviews.llvm.org/D155995
Wed, Sep 6
Abandoning since rules provides framework for closely fitting pipelines to user specifications.
Reopened due to commit reversion
Tue, Sep 5
Address comments + Add tests & change test structure of vni8-across-blocks
Address comments
ping
Thu, Aug 31
Aug 30 2023
Account for max scalar size of i256. Factor out common code.
Aug 28 2023
Aug 25 2023
Thanks, LGTM
Aug 24 2023
Address Comments
Include comments about dot*c, remove unintended changes to test
Add note for intrinsics
Aug 23 2023
Aug 22 2023
Rebase (for https://reviews.llvm.org/D158468) and lower with intrinsics.
Properly handle neg modifier
Aug 21 2023
Aug 17 2023
We have since taken the UI for this framework in a different direction. Most of what can be achieved through this UI can be achieved with already existing controls / interface (e.g. SGB). I don't see any need to pursue this further, will reopen if there are opposite opinions.
Aug 16 2023
Clean up getBitcasted* implementations
Fix non-determinism -- iteration order of DenseMap. Use SmallVector instead (worst case lookup is non factor due to size)
Aug 11 2023
Rebase + clean up code. Still running tests but no longer a WIP.
Naming + function API
Add getExtOrTrunc for Any/Z/S.
Aug 10 2023
RegUnitsToInvalidate
Convert RegsToInvalidate back to MCRegister as well.
Delete partial conversion to regunits
Always try to invalidate both the LastSeenUseInCopy and CopyInfo->MI.
Use LastSeenUseInCopy + use regunits in more places.
Aug 9 2023
Aug 8 2023
Fix Extract element id handling
Aug 4 2023
Remove remaining redundant code.
Address comments + remove redundant ValueSize checks and handling
Rebase + Extended algorithm for more complete coverage of potential trees.
SLP vectorization should be tuned but that seems like a separate issue. Trees corresponding to v_dot4 often have s/zext as the final dest is 32 bit, but the arithmetic operations involve 8 bit operands. By introducing s/zext into the tree, we confuse the SLP vectorization cost model as it thinks it is vectorizing 32bit operands. The main issue is that cost model only looks at one node of the vectorizable tree at a time to calculate cost, instead of also considering the sequence as a whole. If we were to vectorize, codegen may be significantly less complex for these.
Jul 28 2023
Jul 26 2023
Nothing necessarily planned at the moment, just want to block the review for now.
Jul 24 2023
passes psdb
Address comments + rework "hasEightBitAccesses".
Jul 21 2023
Fix some errors.
Will abandon if https://reviews.llvm.org/D155995 supersedes selection of these instructions.