Some compilers we care about (mostly g++) do not support std::make_unique yet,
but we still want to use it in our codebase to make unique_ptr code more
readable. This commit introduces an implementation derivated from the libc++
code in the Dolphin codebase so we can use it right now everywhere.
Adapted from delroth's pull request.
We need to pull in function pointers for OpenGL 3.0 in order to use glAttribIPointer.
This isn't too big of an issue, and this code will be gone in the future when we change over to libepoxy.
Just need to push code upstream to libepoxy to support Android with GLES and GL first.
Set the x87 precision, even on x64. Since we are using x87 instructions
in the JIT now, we can't guarantee that x87 precision will never
influence Dolphin on x64.
The new NOP emitter breaks when called with a negative count. As it
turns out, it did happen when deoptimizing 8 bit MOVs because they are
only 4 bytes long and need no BSWAP.
This function isn't used any more and it shouldn't be used at all as it generates a sync request to the x11 server. So it has to wait for a complete round trip time.
Updates game inis for Serious Sam: Next Encounter (gc), CAPCOM VS. SNK 2
EO (gc), Baten Kaitos Origins (gc), Baten Kaitos Eternal Wings and the
Lost Ocean (gc), Sonic Adventure 2 Battle (gc), Sonic Riders (gc), Sonic
Adventure DX (gc), Mini Ninjas (wii), The Legend of Zelda Skyward Sword
(wii).
Fixes issues 7146 and 6440.
Interpreter::Helper_UpdateCR1 doesn't use the argument passed to UpdateCR1. It pulls its value from the FPSCR register.
Also there was a Interpreter::Helper_UpdateCR1(float) in addition to Helper_UpdateCR1(double) that hasn't ever existed. Remove the function
declaration.
The ARM insturction tables were missing addcox, addeox, and subfcox.
Implements support for addcox and addeox to the ArmJit, required little work since they are basically the same as addcx and addex.
They are semantically equivalent and according to Agner Fog they can run
on more execution ports than their floating point counterparts (at least
on Intel CPUs).