2f45391ca5
Improve Integer Rounding Accuracy
...
Changes integer rounding to more closely meet the documentation
The documentation explains to round before doing any bounds checks
All this really does is make sure some exception bits won't be set wrong
This depends on the rounding mode, fixing cases such as:
- Round to even, (0x7fffffff, 0x7fffffff.8)
- Round to down, (0x7fffffff, 0x80000000)
This change also uses some standard functions for rounding
Previously using them was casting to an s32 directly, now keeps the f64
RoundToIntegerMode introduced due to roundeven not being part of C++17
Finally, it can change a >0x7fffffff to >=0x80000000, done because:
- It looks nicer now with integers (I liked 0s)
- It gives ever so slightly better codegen on Aarch64
Co-Authored-By: JosJuice <josjuice@gmail.com >
2024-09-03 11:17:24 -05:00
9ae560d8a0
Merge pull request #12947 from Dentomologist/qtutils_clearlayoutrecursively_fix_potential_crash
...
QtUtils/ClearLayoutRecursively: Fix potential crash
2024-08-07 03:29:52 +01:00
603c8fad85
Merge pull request #12961 from JosJuice/expression-parser-translation
...
InputCommon: Translate ExpressionParser error messages
2024-08-07 03:28:48 +01:00
e736d611fc
Merge pull request #12963 from JosJuice/i18n-2024-07-28
...
i18n: Add comments and improve source strings
2024-08-07 03:28:01 +01:00
56e7e37d4f
Merge pull request #12957 from Dentomologist/adjust_include_order_and_spacing
...
Adjust order and spacing of various #includes
2024-08-07 03:27:23 +01:00
513405b0ae
Merge pull request #12978 from Dentomologist/generalpane_fix_building_with_analytics_disabled
...
GeneralPane: Fix building with analytics disabled
2024-08-06 23:04:09 +01:00
316f7bfcbf
GeneralPane: Fix building with analytics disabled
...
Add #if statements to only create and set analytics descriptions if
analytics are enabled in the build settings.
2024-08-06 14:30:33 -07:00
0fe2abf53c
Merge pull request #12973 from Tilka/debugger
...
Debugger: keep breakpoints ordered by address
2024-08-06 19:58:24 +01:00
68fe6779eb
Merge pull request #12959 from SuperSamus/sysconf-dirty-fix
...
Config: Don't depend on `is_dirty` to save SYSCONF during restore
2024-08-05 11:42:56 -04:00
97af0e983a
Merge pull request #12958 from SuperSamus/ssf-remove-ini
...
SVX.ini: Replace `EFBToTextureEnable=False` with `ImmediateXFBEnable=False`
2024-08-05 11:42:05 -04:00
bc72226668
Merge pull request #12891 from Sintendo/jitarm64-subfic
...
JitArm64_Integer: Optimize subfic for zero
2024-08-04 23:27:40 +01:00
f1366a4546
Debugger: keep breakpoints ordered by address
...
Previously, breakpoints would move to the end of the list whenever
they were edited.
2024-08-04 19:36:20 +01:00
c824ee9758
Merge pull request #12829 from Dentomologist/generalpane_add_balloontips
...
GeneralPane: Add BalloonTips
2024-08-04 15:22:18 +02:00
7645cbff9a
Merge pull request #12967 from noahpistilli/taiwan-discord-rpc
...
Display Taiwanese covers for Taiwanese games
2024-08-03 12:52:05 -04:00
ebb6255441
Display Taiwanese covers for Taiwanese games
2024-08-01 14:42:52 -04:00
8a50676b83
Merge pull request #12952 from LillyJadeKatrin/retroachievements-change-discs-bug
...
Fixed achievements not working after a disc change.
2024-07-31 19:58:21 -04:00
0c18393691
Merge pull request #12965 from JosJuice/android-ndk-27
...
Android: Update to NDK 27.0.12077973
2024-07-30 13:09:53 -04:00
91a323df96
Android: Update to NDK 27.0.12077973
2024-07-30 18:24:48 +02:00
6a735f3758
GeneralPane: Add BalloonTip to generate new identity checkbox
2024-07-29 14:00:46 -07:00
5512b68020
GeneralPane: Add BalloonTip to enable analytics checkbox
2024-07-29 14:00:46 -07:00
bfbc4c8cc7
GeneralPane: Add BalloonTip to fallback region combobox
2024-07-29 14:00:46 -07:00
fa4803f38a
GeneralPane: Add BalloonTip to auto update combobox
2024-07-29 14:00:46 -07:00
427b85f2a1
GeneralPane: Add BalloonTip to speed limit combobox
2024-07-29 14:00:46 -07:00
809b8a683f
GeneralPane: Add BalloonTip to discord presence checkbox
2024-07-29 14:00:46 -07:00
ce0ab58dc9
GeneralPane: Add BalloonTip to auto disc change checkbox
2024-07-29 14:00:46 -07:00
755866b771
GeneralPane: Add BalloonTip to override region settings checkbox
2024-07-29 14:00:46 -07:00
d9336a5de0
GeneralPane: Add BalloonTip to cheats checkbox
2024-07-29 14:00:46 -07:00
b2107023ba
GeneralPane: Add BalloonTip to dualcore checkbox
2024-07-29 14:00:46 -07:00
75d49842c4
Merge pull request #12964 from mitaclaw/jit-profiling-android-correctness
...
MainAndroid: Thread Correctness In WriteJitBlockLogDump
2024-07-29 16:05:47 -04:00
4883483d09
MacUpdater: Don't set bundle name via a CMake variable
2024-07-29 12:17:08 -04:00
d4e6bd9d18
MacUpdater: Remove unused variables in CMakeLists
2024-07-29 12:16:13 -04:00
4f0954dd44
MainAndroid: Thread Correctness In WriteJitBlockLogDump
...
In a race condition, the core could shut down between the `JitInterface::GetCore` nullptr check and the `JitInterface::JitBlockLogDump` call which constructs a `CPUThreadGuard`. In this scenario, nothing horrible happens—`JitBlockLogDump` also checks for a nullptr—but it would be a failure to display the correct feedback to the user.
2024-07-28 16:10:59 -07:00
53d2311163
Merge pull request #12960 from mitaclaw/jni-false
...
MainAndroid: Use JNI_FALSE instead of static_cast<jboolean>(false)
2024-07-28 17:16:32 -04:00
de50309209
Merge pull request #12962 from MayImilae/tellitlikeitis
...
Dual Core Labeling Update
2024-07-28 16:16:05 -04:00
9d2f5245f4
i18n: Add comments and improve source strings
...
Most of these changes are to improve consistency in capitalization.
2024-07-28 14:38:20 +02:00
9a730bacce
Change Dual Core (speedup) to Dual Core (speedhack)
2024-07-28 03:56:58 -07:00
defc38b258
InputCommon: Translate ExpressionParser error messages
...
The _trans macro marks strings for translation but doesn't do anything
at runtime. For that, we need to use a function like GetStringT.
2024-07-28 12:09:15 +02:00
2849606518
Merge pull request #12956 from SuperSamus/nfs-nitro-defs
...
Add Bloom and DOF Definitions for Need for Speed: Nitro
2024-07-28 11:12:34 +02:00
7cafd78ffc
MainAndroid: Use JNI_FALSE instead of static_cast<jboolean>(false)
2024-07-27 20:22:25 -07:00
7215610dfe
Add Bloom definitions for Need for Speed: Nitro
2024-07-27 21:24:32 +02:00
991bce2d68
Config: Don't depend on is_dirty
to save SYSCONF during restore
...
`Layer::Save` only does its thing if the layer has `is_dirty == true`.
But SYSCONF could have been modified by other layers, so if the base layer wasn't made dirty by anything else, then it wouldn't be restored.
Fixes https://bugs.dolphin-emu.org/issues/13580
2024-07-27 16:45:33 +02:00
f9450f1460
GameINI: SVX.ini: Replace EFBToTextureEnable=False
with ImmediateXFBEnable=False
...
To fix flickering pre-rendered cutscenes, the former doesn't do anything anymore, while the latter does.
2024-07-27 15:42:12 +02:00
d627b78c46
Adjust order and spacing of various #includes
...
Move some #includes around to match the Contributing guidelines.
2024-07-26 14:28:34 -07:00
347aab7ab3
Fixed achievements not working after a disc change.
2024-07-25 20:46:46 -04:00
87b7009c12
Merge pull request #12723 from mitaclaw/cached-interpreter-2.0
...
Cached Interpreter 2.0
2024-07-24 01:36:39 -04:00
6c3024c3b1
CachedInterpreter: Combine Interpret, CheckDSI, CheckProgram, and WritePC
...
I tried making the new templated Interpret callback test only the relevant exceptions (EXCEPTION_DSI, EXCEPTION_PROGRAM, or both), but didn't find a significant performance boost in it. As I am learning, the biggest bottleneck is the number of callbacks emitted, not usually the actual contents of them.
2024-07-23 14:09:57 -07:00
ae43b10eff
CachedInterpreter: Use CodeOp::canEndBlock
...
This was a bigger performance boost than I expected.
2024-07-23 14:07:02 -07:00
818647d694
CachedInterpreter: WritePC optimizations
...
WritePC is now needed far less, only for instructions that end the block. Unfortunately, WritePC still needs to update `PowerPCState::npc` to support the false path of conditional branch instructions. Both drawbacks should be smoothed over by optimized cached instructions in the future.
2024-07-23 14:06:40 -07:00
0282fa7adb
CachedInterpreter: Exception Check Callback Micro-Optimization
...
This saves two register pushes / pops.
2024-07-23 14:06:22 -07:00
f79520a906
Cached Interpreter 2.0
...
It now supports variable-sized data payloads and memory range freeing. It's a little faster, too.
2024-07-23 14:06:21 -07:00