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
Don't add segfault handler in interpreter mode #328
Conversation
|
(Fixed build on non-x86.) |
|
Is there a nice way to fix the warning about "packet >> iCPUCore"? (This is a serious problem, so don't merge this PR yet.) |
|
@dolphin-emu-bot rebuild |
|
@Tilka I'm not sure of a good way. Maybe specify the underlying type of the enum? Worst case, you could call the correct sf::Packet::operator>>(whatever) explicitly. |
|
Instead of having the startupparameter value for the CPU core be a enum object, couldn't we just have it be a u8 and compare it to the enums instead? |
|
Oh, you can also specialize the operator implementation, which is probably the "proper" way to do it, although I'm not a huge fan. Something like http://stackoverflow.com/questions/1297609/overloading-friend-operator-for-template-class |
| @@ -82,6 +82,15 @@ enum Hotkey | |||
| NUM_HOTKEYS, | |||
| }; | |||
|
|
|||
| enum CPUBackend | |||
This comment was marked as off-topic.
This comment was marked as off-topic.
Sorry, something went wrong.
This comment was marked as off-topic.
This comment was marked as off-topic.
Sorry, something went wrong.
This comment was marked as off-topic.
This comment was marked as off-topic.
Sorry, something went wrong.
|
Changed to |
|
Ready to merge from my side. |
| @@ -83,6 +83,15 @@ enum Hotkey | |||
| NUM_HOTKEYS, | |||
| }; | |||
|
|
|||
| enum CPUBackend : u8 | |||
This comment was marked as off-topic.
This comment was marked as off-topic.
Sorry, something went wrong.
This comment was marked as off-topic.
This comment was marked as off-topic.
Sorry, something went wrong.
This comment was marked as off-topic.
This comment was marked as off-topic.
Sorry, something went wrong.
|
Apart from the things I pointed out, LGTM. |
|
Resolved merge conflict and addressed all remaining comments. |
|
@Tilka: This comment grants you the permission to merge this pull request whenever you think it is ready. After addressing the remaining comments, click this link to merge. @dolphin-emu-bot allowmerge |
Don't add segfault handler in interpreter mode
|
I am getting a 10 to 20 % performance regression overall after this merge (tried DKC returns and Super Mario galaxy, DKC went from 72 fps to 55 fps in the overall map for example). |
|
Are you sure about this? As far as I can see, this branch doesn't change the behavior of JIT code at all. |
|
Yes i am pretty sure about this. Also it has another issue too, if i change the cpu engine, close and restart dolphin the cpu core will always be set to interpreter. |
|
Perhaps it uses jitil instead of jit or something? That might be an explanation of the performance regression. |
|
@Linktothepast Can't reproduce the config issue. Can you be more detailed? Did you start any games in-between? |
|
It is quite easy to reproduce, change the cpu engine to jitil and close dolphin (i didn't need to boot any games and by closing i mean the program altogether). Start dolphin again and see the default choice being set to interpreter instead. |
|
Never mind, I see the problem. (It's quite embarrassing lol.) |
...and use enum constants instead of plain numbers for referring to CPU backends.