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
[AArch64] Implements loadstores with AArch64 #1723
Merged
Sonicadvance1
merged 7 commits into
dolphin-emu:master
from
Sonicadvance1:AArch64_loadstores
Dec 22, 2014
Merged
[AArch64] Implements loadstores with AArch64 #1723
Sonicadvance1
merged 7 commits into
dolphin-emu:master
from
Sonicadvance1:AArch64_loadstores
Dec 22, 2014
Conversation
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
Sonicadvance1
added a commit
to Sonicadvance1/dolphin
that referenced
this pull request
Dec 20, 2014
…gain. This requires PR dolphin-emu#1705 and dolphin-emu#1723 prior to merging.
Sonicadvance1
added a commit
to Sonicadvance1/dolphin
that referenced
this pull request
Dec 20, 2014
Requires PR dolphin-emu#1723 prior to merging.
Sonicadvance1
added a commit
to Sonicadvance1/dolphin
that referenced
this pull request
Dec 20, 2014
This requires PR dolphin-emu#1723 prior to merging.
Generic flag disables the ability to have backpatching supporting. Also compiles Dolphin with CRC instructions enabled.
Adds the ability to flush the cache and maintain state. Adds the BindToRegister ability. Sorts register usage as callee saved used first, reduces dumping pressure when jumping to external routines/interpreter. Adds a function to store a register, for use when flushing a register that won't be used during the rest of a block.
Moves the backpatch flags and struct to a common location for ARM. I'm sure there will be more things that use this common ARM location in the future.
This is in a global location now which conflicts with this one.
…dy in PC. This will be used with idle skipping later.
Sonicadvance1
force-pushed
the
AArch64_loadstores
branch
from
December 21, 2014 01:36
1be762c
to
54bdea2
Compare
Sonicadvance1
added a commit
to Sonicadvance1/dolphin
that referenced
this pull request
Dec 21, 2014
…gain. This requires PR dolphin-emu#1705 and dolphin-emu#1723 prior to merging.
Sonicadvance1
added a commit
to Sonicadvance1/dolphin
that referenced
this pull request
Dec 21, 2014
Requires PR dolphin-emu#1723 prior to merging.
Sonicadvance1
added a commit
to Sonicadvance1/dolphin
that referenced
this pull request
Dec 21, 2014
This requires PR dolphin-emu#1723 prior to merging.
Sonicadvance1
changed the title
Implements loadstores with AArch64
[AArch64] Implements loadstores with AArch64
Dec 21, 2014
Currently supports only integer loadstores. Floating point loadstores will come later. This system is semi based on the ARMv7 backpatching routine, where we need to initialize our backpatch routine sizes prior to actually using them so we know we won't be overwriting any memory.
These instructions are all implemented with fastmem support. Currently loads with update are disabled due to an issue that I've yet to figure out. I'm sure I'll figure that out later.
Sonicadvance1
force-pushed
the
AArch64_loadstores
branch
from
December 22, 2014 01:44
54bdea2
to
4247506
Compare
Sonicadvance1
added a commit
that referenced
this pull request
Dec 22, 2014
[AArch64] Implements loadstores with AArch64
Sonicadvance1
added a commit
to Sonicadvance1/dolphin
that referenced
this pull request
Dec 22, 2014
Requires PR dolphin-emu#1723 prior to merging.
Sonicadvance1
added a commit
to Sonicadvance1/dolphin
that referenced
this pull request
Dec 22, 2014
Requires PR dolphin-emu#1723 prior to merging.
Buddybenj
pushed a commit
to Buddybenj/dolphin
that referenced
this pull request
Dec 22, 2014
…gain. This requires PR dolphin-emu#1705 and dolphin-emu#1723 prior to merging.
Buddybenj
pushed a commit
to Buddybenj/dolphin
that referenced
this pull request
Dec 22, 2014
This requires PR dolphin-emu#1723 prior to merging.
Buddybenj
pushed a commit
to Buddybenj/dolphin
that referenced
this pull request
Dec 22, 2014
Requires PR dolphin-emu#1723 prior to merging.
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 implements loadstores instructions on the AArch64 recompiler.
They are implemented as both fastmem and slowmem routines, supporting the full range of integer loadstores for PowerPC.
Currently load instructions with update are disabled while I investigate why they don't work, but I don't want it holding back this PR.
This relies on PR #1705 to be merged prior to this.