Commit graph

43586 commits

Author SHA1 Message Date
Tabitha
3a09ad32ab
Update ci.yml 2025-02-03 15:13:44 -05:00
Tabitha
bc0fe7755f
Update ci.yml 2025-02-03 15:06:52 -05:00
Tabitha
481e7b5ce9
Update ci.yml 2025-02-03 15:06:38 -05:00
Tabitha
445d7d0d8f
Update cpack_package_description.txt 2025-02-03 15:03:38 -05:00
Tabitha
a55a1f0113
Update ci.yml 2025-01-27 02:19:33 -05:00
Tabitha
692fe0e58f
Update ci.yml 2025-01-27 02:16:58 -05:00
Tabitha
28a5560ac0
Update ci.yml 2025-01-27 02:15:07 -05:00
Tabitha
ecdba6cae1
Update ci.yml 2025-01-27 02:12:43 -05:00
Tabitha
f0c40fbcca
Update ci.yml 2025-01-27 02:10:12 -05:00
Nayla Hanegan
5d65d316ec Merge branch 'master' of https://github.com/MarioPartyNetplay/Dolphin-MPN 2025-01-16 12:01:14 -05:00
Nayla Hanegan
599635e347 minor chanege 2025-01-16 12:01:09 -05:00
Nayla Hanegan
92812b9fb0 dx shiz 2025-01-16 11:25:03 -05:00
Tabitha
094e48419c
Update RM8E01.ini 2025-01-11 10:49:25 -05:00
Tabitha
3c9919beff
Update GMPE01.ini 2025-01-11 07:59:45 -05:00
Nayla Hanegan
9dcc090b6e derp 2025-01-08 15:49:03 -05:00
Nayla Hanegan
0a53480f3f manta rings code + macos fixes 2025-01-08 15:24:15 -05:00
Nayla Hanegan
6c346d12de Merge branch 'master' of https://github.com/MarioPartyNetplay/Dolphin-MPN 2025-01-07 22:36:29 -05:00
Nayla Hanegan
d6fcef7fe1 macos please 2025-01-07 22:36:15 -05:00
Tabitha
a6fbd2cfbf
Update CMakeLists.txt 2025-01-07 18:00:27 -05:00
Nayla Hanegan
512e9e3fbc Merge branch 'master' of https://github.com/MarioPartyNetplay/Dolphin-MPN 2025-01-07 17:41:52 -05:00
Nayla Hanegan
5259ec5fc9 updater works 2025-01-07 17:41:42 -05:00
Nayla Hanegan
e37df05d75 initial updater work 2025-01-07 00:29:02 -05:00
Tabitha
fed9d28ca8
Update GP5E01.ini 2025-01-06 20:20:04 -05:00
CasualPokePlayer
7fb997c95c Add SYSCONF country code to DTM
Recently there was some issues in TASVideos trying to sync a Donkey Kong Country Returns TAS. It eventually was synced by directly using the config from the TAS author. The exact setting which caused the desync was narrowed down to being in SYSCONF, with the country code. The TAS author lives in the US, so the country code matched the US country code, while the person attempting to sync the TAS did not live in the US.

Adding SYSCONF country code to the DTM should avoid this being an issue for future Dolphin versions.
2025-01-06 13:54:08 +00:00
Sintendo
cc5628fdfb JitArm64_Integer: addzex - Optimize InHostCarry case for 0
Before:
0x5280000d   mov    w13, #0x0                 ; =0
0x1a1f01ae   adc    w14, w13, wzr

After:
0x1a9f37ee   cset   w14, hs
2025-01-06 13:54:08 +00:00
Sintendo
24fadb873a JitArm64_Integer: addzex - Optimize InPPCState case for 0
Before:
0x52800019   mov    w25, #0x0                 ; =0
0x394bd3b8   ldrb   w24, [x29, #0x2f4]
0x2b180339   adds   w25, w25, w24

After:
0x394bd3b9   ldrb   w25, [x29, #0x2f4]
2025-01-06 13:54:08 +00:00
Sintendo
46d4409b66 JitArm64_Integer: addzex - Optimize ConstantFalse and ConstantTrue
When the input register and carry flags are known, we can always
precompute the result.

We still materialize the immediate when the condition register
needs to be updated, but this seems to be a general problem. I might
look into that one day, but for now this'll do.

- ConstantFalse
Before:
0x52800119   mov    w25, #0x8                 ; =8
0x2a1903fa   mov    w26, w25

After:
N/A

- ConstantTrue
Before:
0x52800119   mov    w25, #0x8                 ; =8
0x1100073a   add    w26, w25, #0x1

After:
N/A
2025-01-06 13:54:08 +00:00
Sintendo
c54bd258f9 JitArm64_Integer: addex - Optimize InHostCarry for -1
Same thing we did for subfex.

Before:
0x1280001a   mov    w26, #-0x1                ; =-1
0x1a1f035a   adc    w26, w26, wzr

After:
0x5a9f23fa   csetm  w26, lo
2025-01-06 13:54:08 +00:00
Sintendo
4bc03c635e JitArm64_Integer: addex - Optimize InHostCarry for 0
Similar to what we did for subfex, but for 0.

Before:
0x5280001b   mov    w27, #0x0                 ; =0
0x1a1f037b   adc    w27, w27, wzr

After:
0x1a9f37fb   cset   w27, hs
2025-01-06 13:54:08 +00:00
Sintendo
77d62b217e JitArm64_Integer: addex - Optimize InPPCState case for 0
Same optimization we did for subfex. Skip loading the carry flag into a
temporary register first when we're dealing with zero.

Before:
0x394bd3b8   ldrb   w24, [x29, #0x2f4]
0x2a1803f9   mov    w25, w24

After:
0x394bd3b9   ldrb   w25, [x29, #0x2f4]
2025-01-06 13:54:08 +00:00
Sintendo
9269d53c92 JitArm64_Integer: subfzex - Constant folding
When both the input register and the carry flag are constants, the
result can be precomputed.

Before:
0x52800016   mov    w22, #0x0                 ; =0
0x2a3603f6   mvn    w22, w22

After:
2025-01-06 13:54:08 +00:00
Sintendo
4869ef64c1 JitArm64_Integer: subfex - Optimize InHostCarry case for -1
The result is either -1 or 0 depending on the state of the carry flag.
This can be done with a csetm instruction.

Before:
0x1280001a   mov    w26, #-0x1                ; =-1
0x1a1f035a   adc    w26, w26, wzr

After:
0x5a9f23fa   csetm  w26, lo
2025-01-06 13:54:08 +00:00
Sintendo
34c85e4865 JitArm64_Integer: subfex - Optimize InPPCState case for 0
When the immediate is zero, we can load the carry flag from memory
directly to the destination register.

Before:
0x394bd3b8   ldrb   w24, [x29, #0x2f4]
0x2a1803f9   mov    w25, w24

After:
0x394bd3b9   ldrb   w25, [x29, #0x2f4]
2025-01-06 13:54:08 +00:00
Sintendo
033bb1a593 JitArm64_Integer: Refactor subfex 2025-01-06 13:54:08 +00:00
Sintendo
ce503e69c0 JitBase: Improve const-correctness 2025-01-06 13:54:08 +00:00
Sintendo
671fe29ebe JitBase: Add HasConstantCarry helper 2025-01-06 13:54:08 +00:00
Sintendo
4572b075cd JitArm64_LoadStore: Small dcbx optimization
MUL and SUB can be combined in one instruction.

Before:
0x1b1a7c01   mul    w1, w0, w26
0x4b010318   sub    w24, w24, w1

After:
0x1b1ae018   msub   w24, w0, w26, w24
2025-01-06 13:54:08 +00:00
OatmealDome
24fc34fd83 ScmRevGen: Don't generate Info.plist files directly
Some generators (like Unix Makefiles and Xcode) copy an app's Info.plist at configure time.
This causes a problem when we need to generate the Info.plist at build time, like how we
currently do it with ScmRevGen. Instead of generating the Info.plist directly in ScmRevGen,
provide an Info.plist without any version information to CMake at configure time, have
ScmRevGen generate a separate plist file with the version information at build time, and
then merge the two together to create the final Info.plist.
2025-01-06 07:54:07 +00:00
OatmealDome
0355d4fd46 DolphinQt: Use TARGET_BUNDLE_DIR generator expression instead of specifying the bundle path ourselves 2025-01-06 07:54:07 +00:00
Tabitha
ec4316c265
Update GP7E01.ini 2025-01-05 16:33:07 -05:00
Tabitha
4d0e93de74
Update GP6E01.ini 2025-01-05 16:31:29 -05:00
Tabitha
485a84e047
fix shop mod 2025-01-05 08:35:55 -05:00
TryTwo
d048e6a373 Frame Dumping: Change lossless codec from FFV1 to Ut Video.
Ut Video is faster and more compatible with editing programs, but produces larger files.
2025-01-05 07:54:07 +00:00
pull[bot]
ac5b253d8c
Merge pull request #70 from dolphin-emu/master
[pull] master from dolphin-emu:master
2025-01-04 07:54:07 +00:00
Tabitha
3eaa3f546b
Update RM8E01.ini 2025-01-03 21:51:43 -05:00
JosJuice
30bcb2b8dd JitArm64: Drop GetCRFieldBit's negate parameter
No caller is using it anymore.
2025-01-04 01:54:07 +00:00
JosJuice
6ecd292db4 JitArm64: Use BIC/EON/ORN in crXXX
This lets us save an instruction in certain scenarios.
2025-01-04 01:54:07 +00:00
JosJuice
123aa3b9ec JitArm64: Add negate parameter to SetCRFieldBit
Unlike on x64, inverting EQ or GT in SetCRFieldBit saves us one
instruction. Also unlike on x64, inverting SO or LT in GetCRFieldBit
requires an extra instruction (just like in SetCRFieldBit). Due to this,
replacing an invert in GetCRFieldBit with an invert in SetCRFieldBit
when possible is either equally good or better - never worse.
2025-01-04 01:54:07 +00:00
JosJuice
77a5739333 JitArm64: Port some crXXX optimizations from Jit64 2025-01-04 01:54:07 +00:00
JosJuice
120a28e9d4 JitArm64: Refactor CR bit manipulation code
This brings JitArm64 more in line with Jit64, and makes the next commit
easier to implement. No functional change.
2025-01-04 01:54:07 +00:00