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

core/arm: Improve timing accuracy before service calls in JIT #3184

Merged
merged 2 commits into from Dec 6, 2017

Conversation

Projects
None yet
4 participants
@MerryMage
Copy link
Member

MerryMage commented Dec 3, 2017

We also correct the CPU JIT's implementation of Step while we're at it.

The JIT now does the equivalent of following when executing a SVC instruction:

CoreTiming::AddTicks(ticks_executed);
SVC::CallSVC(imm32);
ticks_to_execute = std::max(CoreTiming::GetDowncount(), 0);

This change is Reviewable

core/arm: Improve timing accuracy before service calls in JIT
We also correct the CPU JIT's implementation of Step.

@MerryMage MerryMage referenced this pull request Dec 3, 2017

Closed

[WIP] dynarmic updates #3153

@bunnei

bunnei approved these changes Dec 4, 2017

@Subv

Subv approved these changes Dec 4, 2017

@bunnei bunnei merged commit e165b5b into citra-emu:master Dec 6, 2017

2 checks passed

continuous-integration/appveyor/pr AppVeyor build succeeded
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details

@MerryMage MerryMage deleted the MerryMage:timing branch Dec 6, 2017

@FearlessTobi FearlessTobi referenced this pull request Jan 16, 2018

Closed

Things that should be ported over from Citra #40

34 of 35 tasks complete

N00byKing added a commit to N00byKing/yuzu that referenced this pull request Feb 25, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment