Repository navigation
Conversation
filzrev
force-pushed
the
chore-refactor-arm64valueaccumulator-logics
branch
from
October 16, 2026 20:16
6bd938b to
401f01d
Compare
filzrev
force-pushed
the
chore-refactor-arm64valueaccumulator-logics
branch
from
October 16, 2026 20:40
f0e7f03 to
1d43542
Compare
filzrev
force-pushed
the
chore-refactor-arm64valueaccumulator-logics
branch
from
October 16, 2026 21:37
1bf439e to
d545ca6
Compare
Collaborator
|
I'm looking to release 0.16.0 before Nov 1, do you think this will be ready before that @filzrev? |
This branch has not been deployed
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
This PR contains following changes.
What's changed in this PR
Reorganize exiting ValueAccumulator logics. and introduce following breaking changes.
Behavior Changes
1. ValueAccumulator return address as
ulongChange address Value type to
ulongto align AsmArm64.It's handled internally with
ulong + longrepresentation to support negative offset.2. Remove
expectedMovkShiftvariable.Existing implementation assume
LSL #16/#32/#48instructions in sequencial order.By this PR changes, It can accept MOVK instruction in any order and missing cases.
3. Broaden Arm64RegisterValueAccumulator tracking continuation
LookingForPossibleLdrreprocessesMOVZ/ADRPso a new constant load starts immediatelyTBZ/TBNZare treated as ignorable conditional branches (consistent withCBZ/CBNZ)ExpectingAddis included inHasValue, enabling address resolution foradrp; brtail callsdefaultbranch with reprocessing.4. Migrate
BelongToGrouphelper methods to use AsmArm64 implementation5. Add shifted immediate value support for
MOVZ/ADDinstructions