Unknown W. Brackets
259734bd47
irjit: Fix likely delay slot breakpoints.
2023-09-03 12:27:10 -07:00
Unknown W. Brackets
e1a1f56f4c
irjit: Cleanup breakpoint ops.
2023-09-03 12:27:10 -07:00
Unknown W. Brackets
7607280837
arm64jit: Implement just the most basic ops.
...
This improves the slowness a good bit.
2023-09-03 12:20:16 -07:00
Unknown W. Brackets
1b756ff8c1
arm64jit: Add initial base for IR jit.
...
This works, but very slowly at this point.
2023-09-03 12:14:28 -07:00
Henrik Rydgård
8a5e4d3591
Merge pull request #18054 from unknownbrackets/memblockinfo
...
HLE: Capture better allocation names
2023-09-03 10:38:03 +02:00
Unknown W. Brackets
c7304eccdb
x86jit: Avoid R15 for jitbase if near ctxreg.
2023-09-02 23:05:56 -07:00
Unknown W. Brackets
32feb82d16
HLE: Capture better allocation names.
...
We know which FPL, so don't just say "FPL".
2023-09-02 22:55:45 -07:00
Henrik Rydgård
f6c1493373
Merge pull request #18048 from unknownbrackets/irjit-vec4
...
IR: Add a pass to keep things in vec4 more
2023-09-02 15:11:06 +02:00
Henrik Rydgård
20dedec07e
Merge pull request #18046 from unknownbrackets/x86-jit-reduce
...
x86jit: Reduce bloat further
2023-09-02 13:37:20 +02:00
Unknown W. Brackets
739e474957
irjit: Improve dot and store vec4 interaction.
2023-09-01 22:35:59 -07:00
Unknown W. Brackets
becad54923
x86jit: Maintain Vec4 on FMov extract.
2023-09-01 22:35:59 -07:00
Unknown W. Brackets
2ca638868c
irjit: Remove Vec4Scale/Vec4Dot aliasing in pass.
2023-09-01 22:35:59 -07:00
Unknown W. Brackets
96c90c19c6
irjit: Reduce unnecessary shuffles.
...
If it's never used as a Vec4 again, it's often not worth it.
2023-09-01 22:35:59 -07:00
Unknown W. Brackets
5f84887dea
irjit: Add a pass to keep Vec4s in Vec4s.
2023-09-01 22:35:59 -07:00
Unknown W. Brackets
9bac755491
x86jit: Avoid pointerify if clobbered.
...
For x86, it's not worth it for one.
2023-09-01 22:34:22 -07:00
Unknown W. Brackets
b370a89ef2
x86jit: Reduce block link padding.
...
Reduces bloat a good bit.
2023-09-01 22:33:02 -07:00
Unknown W. Brackets
c5d0e1d0cc
x86jit: Implement float to integer.
2023-09-01 22:31:25 -07:00
Unknown W. Brackets
c85886c11e
irjit: Use enum for rounding modes.
2023-09-01 22:29:24 -07:00
iota97
01083c87ea
Analog stick gesture
2023-09-01 09:32:21 +02:00
Henrik Rydgård
ce47055860
Touch controls: Add an option for "Sticky D-Pad".
...
Will make it a lot easier to pull off certain moves in fighting games.
Should help #17950
2023-08-31 22:37:11 +02:00
Henrik Rydgård
7a3eab9bfd
Merge pull request #18027 from unknownbrackets/memblockinfo
...
Debugger: Reduce cost of small copy tracking
2023-08-31 13:17:27 +02:00
Henrik Rydgård
ad1f378902
Also simplify __CtrlUpdateButtons to only do a single read and write to the global.
2023-08-31 11:10:02 +02:00
Unknown W. Brackets
d5c91fa02c
Debugger: Reduce cost of small copy tracking.
...
This uses another 400KB RAM and does a bit more writing, but makes lookups
faster.
2023-08-31 00:17:30 -07:00
Henrik Rydgård
351de6eb25
Merge pull request #18026 from unknownbrackets/x86-jit-float
...
x86jit: Fix vsat0 saturate
2023-08-31 08:28:50 +02:00
Henrik Rydgård
fbc1fc417e
Merge pull request #18025 from unknownbrackets/x86-jit-regcache
...
x86jit: Fix a vec4 clobber issue
2023-08-31 08:20:01 +02:00
Unknown W. Brackets
bcac804cc5
x86jit: Fix vsat0 saturate.
2023-08-30 23:07:57 -07:00
Unknown W. Brackets
d5a51da95e
x86jit: Fix pointer modify when masked.
2023-08-30 22:04:26 -07:00
Unknown W. Brackets
742dc0a0c7
x86jit: Fix vec4 clobber issue.
2023-08-30 22:04:25 -07:00
Henrik Rydgård
3d0051f34b
Fix enabling of native keyboard input on Switch
2023-08-30 18:14:17 +02:00
Henrik Rydgård
5321cb97fd
Merge pull request #18007 from unknownbrackets/x86-jit-lsu
...
x86jit: Implement CondStore
2023-08-29 09:06:43 +02:00
Unknown W. Brackets
8233fdfd91
x86jit: Implement CondStore.
2023-08-28 23:32:49 -07:00
Unknown W. Brackets
181adde6f1
x86jit: Implement float saturates.
2023-08-28 23:11:46 -07:00
Unknown W. Brackets
c4d13e522b
x86jit: Use a literal pool to avoid rip checks.
2023-08-28 23:11:46 -07:00
Unknown W. Brackets
eab05e32a7
x86jit: Implement FCvtScaledSW.
2023-08-28 23:11:46 -07:00
Unknown W. Brackets
2b6bd01417
x86jit: Optimize FMul.
2023-08-28 23:11:46 -07:00
Henrik Rydgård
ae0af175de
Merge pull request #18004 from unknownbrackets/x86-jit-minor
...
x86jit: Small cleanup and tweaks, downcountInRegster, GetFPRLaneCount bugfix
2023-08-29 08:01:47 +02:00
Unknown W. Brackets
0cb6a17ea3
x86jit: Small Clz codesize optimization.
2023-08-28 21:17:06 -07:00
Unknown W. Brackets
14d871730f
x86jit: Optimize slow memory.
2023-08-28 21:16:38 -07:00
Unknown W. Brackets
1bfa054a41
irjit: Correct GetFPRLaneCount().
...
Oops, this was just wrong...
2023-08-28 21:09:56 -07:00
Unknown W. Brackets
75e20af886
x86jit: Fix default prefix on core switch.
2023-08-28 21:09:56 -07:00
Unknown W. Brackets
8e8605935e
irjit: Detect subtract-to-zero as constant.
2023-08-28 21:09:56 -07:00
Unknown W. Brackets
0a5eafa3de
x86jit: Another small LEA optimization.
2023-08-28 21:09:56 -07:00
Unknown W. Brackets
289cb71790
x86jit: Small tweaks to fixed code.
2023-08-28 21:09:56 -07:00
Unknown W. Brackets
ee5381917a
x86jit: Implement downcount in register.
2023-08-28 21:09:56 -07:00
Unknown W. Brackets
7f3e2e55b5
x86jit: Small opt for Sltu.
2023-08-28 21:09:56 -07:00
Unknown W. Brackets
4e90bd5070
x86jit: Use NEG more automatically for Sub x,0,y.
2023-08-28 21:09:56 -07:00
Henrik Rydgård
9291a4e52a
Merge pull request #17998 from hrydgard/minor-fixes
...
Minor: Correct RA login retry behavior if disabled, improved logging in CLUTLoad case
2023-08-28 16:09:34 +02:00
Henrik Rydgård
9e708fc82d
Don't show RetroAchievements login failures (and don't retry) if the user has disabled them.
2023-08-28 14:38:32 +02:00
Henrik Rydgård
b637a9c42e
Upgrade rcheevos to latest
...
The timer issue has been fixed upstream. Hopefully nothing will regress on
32-bit Android this time.
See #17631
2023-08-28 14:09:46 +02:00
Henrik Rydgård
26af6eb569
RetroAchievements: More connection notifications
...
Trying to make it harder for a user to accidentally run without achievements enabled.
2023-08-28 12:15:24 +02:00
Henrik Rydgård
dddf63d057
Merge pull request #17993 from unknownbrackets/x86-jit-minor
...
x86jit: Replacements, expose for profiling better
2023-08-28 10:23:00 +02:00
Henrik Rydgård
0ecfb6b112
Merge pull request #17992 from unknownbrackets/x86-jit-float
...
x86jit: Implement trig instructions, couple other FPU
2023-08-28 10:20:38 +02:00
Henrik Rydgård
54ebe461fc
Merge pull request #17994 from unknownbrackets/x86-jit-lea
...
x86: Use LEA in a few sensible places
2023-08-28 10:17:13 +02:00
Henrik Rydgård
24e0cb013b
Merge pull request #17991 from unknownbrackets/x86-jit-dot
...
x86jit: Improve vdot performance
2023-08-28 10:15:03 +02:00
Henrik Rydgård
3489ff5143
Merge pull request #17990 from unknownbrackets/x86-jit-alu
...
x86jit: Implement divides and a couple more ALUs
2023-08-28 10:12:31 +02:00
Unknown W. Brackets
f10444eb42
x86jit: Special case broadcast shuffles.
2023-08-27 23:24:30 -07:00
Unknown W. Brackets
61a99b4bac
x86jit: Implement trig/reciprocals.
2023-08-27 23:24:30 -07:00
Unknown W. Brackets
4b1c809886
x86jit: Implement a few more float ops, shuffle.
2023-08-27 23:24:30 -07:00
Unknown W. Brackets
479ebaea11
x86: Use LEA in a few sensible places.
2023-08-27 13:59:19 -07:00
Unknown W. Brackets
8b77114da6
x86jit: Remove outdated file.
2023-08-27 13:01:22 -07:00
Unknown W. Brackets
2e64abd2a0
x86jit: Improve some debug labels.
...
Helps when running a profiler that reads these.
2023-08-27 12:51:29 -07:00
Unknown W. Brackets
303aa0548c
x86jit: Handle replacements directly.
2023-08-27 12:51:24 -07:00
Unknown W. Brackets
35fe15d718
x86jit: Do not use Vec4Dot for vdot.t.
...
It was much slower to do so in LittleBigPlanet.
2023-08-27 12:39:21 -07:00
Unknown W. Brackets
1abd3ac361
x86jit: Use a faster vdot than DPPS.
2023-08-27 12:39:08 -07:00
Unknown W. Brackets
497fc09c29
x86jit: Implement divides.
2023-08-27 12:34:58 -07:00
Unknown W. Brackets
1b25f854a1
x86jit: Reduce code size a tiny bit.
2023-08-27 12:34:58 -07:00
Unknown W. Brackets
2231fb807b
x86jit: Implement Clz, Not, XorConst.
2023-08-27 12:34:58 -07:00
Unknown W. Brackets
7d8dc0f8ab
irjit: Detect clobber in lane change.
2023-08-27 12:27:05 -07:00
Unknown W. Brackets
6507251e83
irjit: Consider temps clobbered by block end.
2023-08-27 12:26:42 -07:00
Unknown W. Brackets
f263698897
irjit: Cleanup temp purging on exit.
...
We were sometimes considering it read by exit and not purging.
2023-08-27 12:26:05 -07:00
Henrik Rydgård
def25100df
RetroAchievements: Warn the user if has token and not logged in.
2023-08-26 13:27:10 +02:00
Henrik Rydgård
5779e37f55
Merge pull request #17982 from ANR2ME/adhoc
...
[Adhoc] An attempt to fix winsock error 10022 on Monster Hunter Freedom
2023-08-26 07:14:13 +02:00
ANR2ME
270943dd59
Show socket id in Info Log when successfully created/accepted.
2023-08-26 06:43:24 +07:00
ANR2ME
47efec2782
Treat WSAEINVAL similar to WSAEALREADY during connect for backward-compatibility to Winsock 1.1, but might confuses with an actual invalid argument error on newer Winsock.
2023-08-26 06:25:09 +07:00
Henrik Rydgård
a70b36671a
Show the RetroAchievements icon in a bunch of notifications
2023-08-25 16:36:29 +02:00
Henrik Rydgård
6d28ccbd8e
Add HTTP log channel, and make ACHIEVEMENTS a proper one.
2023-08-25 13:53:46 +02:00
Henrik Rydgård
c59e9e51b2
Non-change to see if CI fixes itself..
2023-08-25 12:39:19 +02:00
Henrik Rydgård
1025bbcf89
Log level/type: Use enum class instead of the awkward namespace trick.
...
Just a small cleanup I've wanted to do for a long time.
2023-08-25 11:48:59 +02:00
Henrik Rydgård
308e983a99
Merge pull request #17975 from unknownbrackets/x86-jit-ir
...
More x86 IR JIT
2023-08-25 09:41:38 +02:00
Unknown W. Brackets
be4fe52796
x86jit: A few more float ops.
2023-08-25 00:01:03 -07:00
Unknown W. Brackets
d021706eb3
x86jit: Implement conditional assigns.
2023-08-25 00:01:03 -07:00
Unknown W. Brackets
d1a30334bf
x86jit: Implement multiplies.
2023-08-25 00:01:03 -07:00
Unknown W. Brackets
363f2b68e1
x86jit: Implement shifts.
2023-08-25 00:01:03 -07:00
Unknown W. Brackets
601bf344c1
x86jit: Implement vdot.
2023-08-25 00:01:03 -07:00
Unknown W. Brackets
bfb8df8472
x86jit: Implement fneg/abs.
2023-08-25 00:01:02 -07:00
Unknown W. Brackets
004c35cf76
x86jit: Implement syscalls and some system.
2023-08-25 00:01:02 -07:00
Unknown W. Brackets
2fbdc42a5c
x86jit: Reduce code a bit in SETcc paths.
2023-08-25 00:00:35 -07:00
Henrik Rydgård
dfe187df1e
Allow disabling HTTPS through the config file
...
Simply set:
```ini
[General]
DisableHTTPS = True
```
Added to help debug issue #17969
2023-08-24 21:28:30 +02:00
Henrik Rydgård
d2d8688e47
Add "Create frame dump" to the in-game developer menu (that can be enabled in dev settings)
...
Makes it possible to create one without connecting the websocket
debugger, even on non-Windows platforms.
2023-08-24 14:41:35 +02:00
Henrik Rydgård
fb84444043
Merge pull request #17965 from hrydgard/load-clut-old-framebuffers
...
Add compat flag to not load CLUTs from old framebuffers
2023-08-24 14:24:24 +02:00
Henrik Rydgård
0e56ed1f38
Android: Fix bug where autoconfigure for unknown pad types didn't do anything, instead of just doing the defaults.
2023-08-24 11:08:52 +02:00
Henrik Rydgård
16d073c4ad
Add compat flag to not load CLUTs from old framebuffers
2023-08-24 10:30:37 +02:00
Henrik Rydgård
ca40de852a
Merge pull request #17960 from hrydgard/control-mapping-fixes
...
Controls: Make the analog/digital mapping clash resolution more gentle.
2023-08-24 09:52:40 +02:00
Henrik Rydgård
30016bc0d6
Merge pull request #17962 from hrydgard/toggle-wlan-switch
...
Add mappable key to toggle networking
2023-08-24 09:52:29 +02:00
Unknown W. Brackets
e2c6011906
x86jit: Implement VFPU Fcmp.
2023-08-23 22:17:55 -07:00
Unknown W. Brackets
00155790d6
x86jit: Add some notes for vector calls.
...
Let's avoid the thunks to be more similar to other backends.
2023-08-23 22:17:55 -07:00
Unknown W. Brackets
ef93b7547e
x86jit: Add vmin/vmax.
2023-08-23 22:17:55 -07:00
Unknown W. Brackets
931c84f835
x86jit: Implement FCmp.
2023-08-23 22:17:55 -07:00
Unknown W. Brackets
d86f6ae618
x86jit: Implement set less thans.
2023-08-23 22:17:55 -07:00
Unknown W. Brackets
5473a5c698
x86jit: Add low MapWithFlags for Ext8to32.
2023-08-23 22:17:55 -07:00
Unknown W. Brackets
0b1953e5fd
x86jit: Handle more Vec4 ops, some related.
2023-08-23 22:17:50 -07:00
Henrik Rydgård
feb0ea245e
Add mappable key to toggle networking
...
Fixes #17352
Requested in #17343
2023-08-23 22:14:51 +02:00
Henrik Rydgård
797f88bf31
Fix ordering problem with screenshots that was causing crashes.
...
Fixes #17781
2023-08-23 19:03:33 +02:00
Henrik Rydgård
be2f81c3eb
Controls: Make the analog/digital mapping clash resolution more gentle.
...
Now takes the time into account, so clashing digital input will only shrink
analog inputs once it's a few seconds old.
Also fixes a bug where if there are both inputs, it was hard to reach
the limits because the digital input itself ended up getting shrunk.
This might help #17860
2023-08-23 18:51:27 +02:00
Henrik Rydgård
a07079bdf9
Timestamp control inputs
2023-08-23 17:52:30 +02:00
Unknown W. Brackets
269a57a8b8
irjit: Fix vmin/vmax NAN handling.
...
Oops, this needs to be signed.
2023-08-23 06:50:42 -07:00
Henrik Rydgård
77355a1568
Merge pull request #17954 from unknownbrackets/x86-jit-ir
...
x86jit: Fix Ext8to32/Ext16to32, some reg issues
2023-08-23 08:50:02 +02:00
Unknown W. Brackets
efaf14a19f
x86jit: Fix spilling zero register.
...
We can't flush it, but it's likely not to get "clobbered".
2023-08-22 23:29:13 -07:00
Unknown W. Brackets
c397e2e4da
x86jit: Flush reg if dirty on map as ptr.
2023-08-22 23:29:13 -07:00
Unknown W. Brackets
a1bddd880d
x86jit: Fix sign extension.
2023-08-22 23:29:13 -07:00
Unknown W. Brackets
74e5e43fdc
jit: Skip known prefix writes.
...
If we already know what's in memory and it's default, we can skip
overwriting with default values. This is common, actually.
2023-08-22 23:26:31 -07:00
Henrik Rydgård
6a3840d9b6
Implement bswap just because
2023-08-22 16:18:03 +02:00
Henrik Rydgård
7384d3d49f
Debug mode buildfix
2023-08-22 16:15:07 +02:00
Henrik Rydgård
c5a076487e
Disable extends on x86-32
2023-08-22 16:09:45 +02:00
Henrik Rydgård
b67741509c
Implement a few ALU ops in the x86 JIT-from-IR.
2023-08-22 16:08:12 +02:00
Unknown W. Brackets
11c40e6889
x86: Implement a few basic float/vec4 ops.
2023-08-22 10:39:46 +02:00
Unknown W. Brackets
521b63dd2b
x86jit: Implement FMul.
2023-08-22 10:39:46 +02:00
Unknown W. Brackets
edcb156897
x86jit: Add Vec4 and Float load/store.
2023-08-22 10:39:46 +02:00
Henrik Rydgård
951c35ba71
Merge pull request #17948 from unknownbrackets/x86-ir
...
x86jit: Fix some issues in 32-bit
2023-08-22 09:41:10 +02:00
Unknown W. Brackets
07fa1ed573
x86jit: Automatically flush incompatible regs.
2023-08-21 21:16:54 -07:00
Unknown W. Brackets
55654f52b2
x86jit: Fix Store8 on i386.
...
Require an 8-bit capable register in mapping.
2023-08-21 21:05:51 -07:00
Unknown W. Brackets
db34b85107
irjit: Allow flag-based allocation order.
...
Sometimes backends have needs, like XMM0/v0-only, or similar.
2023-08-21 20:46:05 -07:00
Unknown W. Brackets
bea74ba162
x86jit: Avoid negative offset warning.
2023-08-21 20:38:56 -07:00
ANR2ME
3c66523f04
A quick fix for Metal Gear Acid due to adhocctl's busy state never reset to false when there are no adhocctl's handler.
2023-08-22 04:29:07 +07:00
Unknown W. Brackets
1ccc2d5d2f
x86jit: Fix address offsets with memview mask.
2023-08-21 09:03:10 -07:00
Unknown W. Brackets
40b3ff9573
x86jit: Fix spill issue.
2023-08-21 08:23:58 -07:00
Henrik Rydgård
1e269c1d3c
Merge pull request #17943 from unknownbrackets/x86-ir
...
Add an x86/x64 backend for IR
2023-08-21 09:21:37 +02:00
Unknown W. Brackets
538832940a
x86jit: Implement some shifts.
2023-08-21 00:07:42 -07:00
Henrik Rydgård
61bf366d30
Merge pull request #17942 from unknownbrackets/irjit-clobber
...
irjit: Fix regalloc clobber on exit
2023-08-21 08:04:50 +02:00
Unknown W. Brackets
2b914046ff
x86jit: Implement most exits.
2023-08-20 22:28:54 -07:00
Unknown W. Brackets
104b6d8c15
x86jit: Implement some basic arithmetic.
2023-08-20 22:28:54 -07:00
Unknown W. Brackets
5045cf012e
x86jit: Fix flushing of zero register.
2023-08-20 22:28:54 -07:00
Unknown W. Brackets
08ea31f405
x86jit: Improve debug disasm.
2023-08-20 22:28:54 -07:00
Unknown W. Brackets
4e7f8cf213
x86jit: Implement load/store.
2023-08-20 22:28:54 -07:00
Unknown W. Brackets
a47b4424e5
x86jit: Fix some silly mistakes.
2023-08-20 22:28:54 -07:00
Unknown W. Brackets
4e3f3860f9
x86jit: Stub out op categories to files.
2023-08-20 22:28:54 -07:00
Unknown W. Brackets
622c69dbb9
x86jit: Expose option to select new IR based jit.
2023-08-20 22:28:54 -07:00
Unknown W. Brackets
c491f701ba
x86jit: Add initial IR-based jit backend.
...
It works, but pretty slow in some parts with everything stubbed.
2023-08-20 22:28:54 -07:00
Unknown W. Brackets
81e24a9fee
irjit: Fix regalloc clobber on exit.
2023-08-20 22:12:52 -07:00
Unknown W. Brackets
8dfc2f04d7
riscv: Use a single reg for LO/HI.
...
This is the same optimization we have for arm64, basically.
2023-08-20 14:49:09 -07:00
Henrik Rydgård
629d46ef5b
Merge pull request #17938 from unknownbrackets/riscv-centralize
...
Centralize IR regcache from RISC-V
2023-08-20 23:47:02 +02:00
Henrik Rydgård
6554b3eb75
Merge pull request #17939 from unknownbrackets/ir-vec-minor
...
irjit: Implement vtfm 4x4 using dots
2023-08-20 23:40:04 +02:00
Unknown W. Brackets
82fb41cba0
irjit: Implement vtfm 4x4 using dots.
2023-08-20 13:50:02 -07:00
Unknown W. Brackets
36b6aa4728
riscv: Allow GPR "SIMD" without FPR SIMD.
2023-08-20 12:42:11 -07:00
Unknown W. Brackets
6a75e6712e
riscv: Use automapping for special cases too.
2023-08-20 12:42:11 -07:00
Unknown W. Brackets
a190793ad2
riscv: Simplify mapping for more instructions.
2023-08-20 12:42:11 -07:00
Unknown W. Brackets
cc4bc406d5
riscv: Cleanup VfpuCtrlToReg meta, use auto-map.
2023-08-20 12:42:11 -07:00
Unknown W. Brackets
e40ae60029
riscv: Mark normalized32 after mapping.
...
It's less confusing to separate it.
2023-08-20 12:42:11 -07:00
Unknown W. Brackets
f9bf7de701
riscv: Use a single reg cache.
2023-08-20 12:42:11 -07:00
Unknown W. Brackets
e30fb82a64
riscv: Remove some unused reg funcs.
2023-08-20 12:42:11 -07:00
Unknown W. Brackets
a23ade8f75
riscv: Map IR regs based on metadata.
...
Only doing this in places without GPR/FPR mix or FPR/Vec overlap for now.
2023-08-20 12:42:11 -07:00
Unknown W. Brackets
32d8f6196f
irjit: Cut time flushing imm regs.
2023-08-20 08:59:47 -07:00
Unknown W. Brackets
552cd88938
irjit: Skip some work in PurgeTemps.
2023-08-20 08:59:47 -07:00
Unknown W. Brackets
57123e8f9e
irjit: Reserve some arrays that churn.
...
Improves IR compile time by around 20-30%.
2023-08-20 08:59:47 -07:00
Henrik Rydgård
cd1c5beb60
Merge pull request #17934 from unknownbrackets/riscv-centralize
...
RISC-V: Centralize IR regcaches
2023-08-20 14:49:18 +02:00
Henrik Rydgård
efcd380842
Merge pull request #17935 from unknownbrackets/ir-long-inst
...
irjit: Cleanup Write() calls with extra const
2023-08-20 09:19:48 +02:00
Unknown W. Brackets
161465ab66
riscv: Centralize register FlushAll().
2023-08-19 21:30:03 -07:00
Unknown W. Brackets
f3d4bd8c11
riscv: Centralize reg-as-pointer.
2023-08-19 21:24:36 -07:00
Unknown W. Brackets
bd1d93ae6f
irjit: Cleanup Write() calls with extra const.
...
Some instructions, such as Vec4Blend, are encoded requiring the const
field, and this interface was designed when we used a pool.
2023-08-19 16:23:42 -07:00
Unknown W. Brackets
92f7374c89
riscv: Centralize reg mapping itself.
2023-08-19 16:15:49 -07:00
Unknown W. Brackets
83946eeef8
Core: Reduce log spam on exit.
...
This doesn't need to be INFO.
2023-08-19 16:15:49 -07:00
Unknown W. Brackets
718a1b3944
riscv: Centralize MarkDirty flagging.
2023-08-19 16:15:49 -07:00
Henrik Rydgård
88b3bdf857
Merge pull request #15840 from sum2012/Font-ltn12-hack
...
Hack to Fix Earth Saver Plus font
2023-08-18 15:41:46 +02:00
Henrik Rydgård
d8f8dcbc17
Merge pull request #17928 from hrydgard/unify-path-creation
...
Unify memstick PSP/subdirectory creation
2023-08-18 15:40:39 +02:00
Henrik Rydgård
94752ea7cf
Android: On some newer devices with 32-bit userland, default to Vulkan.
...
We already default to Vulkan on all recent 64-bit devices, but there are
some 32-bit devices that benefit, so let's set a high lower bound
for OS version.
2023-08-18 15:13:58 +02:00
Henrik Rydgård
f3b2cb6fca
Remove outdated hack for vsync parameter on Android.
2023-08-18 15:07:10 +02:00
Henrik Rydgård
5b76615463
Cleanup and more sensible defaults for current directory
2023-08-18 15:04:20 +02:00
Henrik Rydgård
7a4efb1a0a
Call CreateSysDirectories on all platforms.
2023-08-18 14:03:38 +02:00
Henrik Rydgård
44d602ca7d
Move InitSysDirectories to where it belongs and rename it. Plus warning fixes.
2023-08-18 13:03:32 +02:00
Henrik Rydgård
6f6ea4595a
Windows: Split out Create... from InitSysDirectories, fixup uses
2023-08-18 12:46:40 +02:00
Unknown W. Brackets
4e41f83ecc
riscv: Centralize IR reg cache metadata checks.
...
These are all largely the same between backends.
2023-08-17 23:03:31 -07:00
Unknown W. Brackets
ebab0e1591
riscv: Centralize reg allocation.
2023-08-17 18:50:33 -07:00
Henrik Rydgård
7f3f93a25b
Merge pull request #17919 from hrydgard/gamedatainstall_minor
...
GamedataInstall: Add simple progress bar
2023-08-18 00:57:50 +02:00
Henrik Rydgård
8a6e288fcc
Add checkboxes in developer tools to allow disabling ubershaders.
...
Might be helpful to diagnose performance problems on user devices.
Additionally, moves the texture replacement controls to the top. They
should probably be moved somewhere else entirely...
See #17918
2023-08-17 20:16:04 +02:00
Henrik Rydgård
731d9b6d59
Merge branch 'master' into Font-ltn12-hack
2023-08-17 14:47:46 +02:00
Henrik Rydgård
1cf2a161a0
Replace the notifications with a bare-bones progress bar
2023-08-17 14:42:25 +02:00
sum2012
e00a41702c
Add GamedataInstall of osm
...
fix #14688
2023-08-17 14:22:30 +02:00
Unknown W. Brackets
b30daa5760
riscv: Centralize state of regcaches.
2023-08-15 21:51:38 -07:00
Henrik Rydgård
ef2d7a810a
Add comments, move some stuff around, get rid of some indentation. No functionality change.
2023-08-15 18:34:06 +02:00
Henrik Rydgård
b9b7342ffd
Merge pull request #17350 from basharast/master
...
UWP Improvements
2023-08-14 15:54:04 +02:00
Henrik Rydgård
d1b6aa7faa
SoftGPU headless crashfix
2023-08-14 11:23:28 +02:00
Henrik Rydgård
1b2cffe632
Address feedback
2023-08-14 11:06:20 +02:00
Henrik Rydgård
aadb700505
Fix turning off VSync on Android, logic fix
2023-08-14 11:02:29 +02:00
Henrik Rydgård
ff6e118fff
Get rid of a lot of ifdefs around presentation mode. Instead, set things dynamically.
2023-08-14 11:02:29 +02:00
Henrik Rydgård
bec9c5611e
Rename PresentationMode to PresentMode
2023-08-14 11:02:29 +02:00
Henrik Rydgård
1beb01af6a
Merge pull request #17905 from unknownbrackets/irjit-opt
...
irjit: Implement some missing, handle partial Vec4s more
2023-08-14 07:49:45 +02:00
Henrik Rydgård
63b3b31feb
Merge pull request #17906 from unknownbrackets/riscv-blocklink
...
riscv: Fix crash on clear icache
2023-08-14 07:42:38 +02:00
Henrik Rydgård
a7bc70834c
Merge pull request #17907 from unknownbrackets/riscv-minor
...
riscv: Implement vs2i
2023-08-14 07:41:45 +02:00
Unknown W. Brackets
52cc38bf2a
riscv: Implement vs2i.
2023-08-13 18:27:19 -07:00
Unknown W. Brackets
3f8f8d36d9
riscv: Fix crash on clear icache.
...
Oops, can't avoid marking all blocks invalid. Luckily a syscall should
always take more bytes than the bail invalidated block code.
2023-08-13 18:25:46 -07:00
Unknown W. Brackets
159b41a0fa
irjit: Fuse unaligned svl.q/svr.q together.
...
They're almost never used outside paired, which we can do on most
platforms easily.
2023-08-13 18:10:40 -07:00
Unknown W. Brackets
5729de90d2
irjit: Use more partial Vec4s / Vec4Blend.
2023-08-13 18:10:40 -07:00
Unknown W. Brackets
2e6dbab5fa
irjit: Add flag to prefer Vec4, use for add/sub.
...
This will improve things when using SIMD.
2023-08-13 18:10:40 -07:00
Unknown W. Brackets
e0be6858b8
irjit: Implement vcrs.t.
...
As used in Jeanne d'Arc.
2023-08-13 18:10:12 -07:00
Unknown W. Brackets
217a1837ed
irjit: Allow typical prefixes in vdiv/vasin/etc.
...
Some of these behave strangely, but there are some common usages that work
fine.
2023-08-13 18:10:07 -07:00
Bashar Astifan
07c119a80c
Merge branch 'master' of https://github.com/hrydgard/ppsspp
2023-08-14 02:45:28 +04:00
Unknown W. Brackets
87668a5720
Merge pull request #17902 from hrydgard/ui-bugfixes
...
Some debug overlays don't make sense when not in-game, disable them
2023-08-13 13:13:16 -07:00
Henrik Rydgård
dc4de340b3
Some debug overlays don't make sense when not in-game, disable them. Minor feedback fixes.
2023-08-13 21:54:24 +02:00
Henrik Rydgård
5a9a2bf6fe
Merge pull request #17779 from EmulatorJS/master
...
Cleanup emscripten libretro target
2023-08-13 21:40:24 +02:00
Henrik Rydgård
2cdcc413b7
Merge pull request #17898 from unknownbrackets/irjit-vfputemps
...
irjit: Cleanup/purge FPU/VFPU temps
2023-08-13 21:08:00 +02:00
Henrik Rydgård
5dcd14b17a
Merge pull request #17901 from unknownbrackets/riscv-disasm
...
riscv: Add debug log of block disasm
2023-08-13 21:07:37 +02:00
Unknown W. Brackets
f03cd0b2ad
Merge pull request #17899 from unknownbrackets/riscv-minor
...
Minor RISC-V cleanups, frame profiler fix
2023-08-13 11:19:42 -07:00
Henrik Rydgård
d6cdb6e5d9
Merge pull request #17900 from unknownbrackets/irjit-vsgelt
...
irjit: Implement vsge/vslt
2023-08-13 19:59:14 +02:00
Unknown W. Brackets
23c79f8e7f
irjit: Implement vsge/vslt.
...
These are not ideal especially for SIMD, but they do work.
Improves performance in Silent Hill on RISC-V by like 20%.
2023-08-13 10:40:47 -07:00
Unknown W. Brackets
5d20f2aabd
irjit: Simplify VecDo3.
2023-08-13 10:40:47 -07:00
Unknown W. Brackets
2b36e0a625
irjit: ZeroFpCond -> FpCondFromReg.
...
We already have a zero reg, so this is more useful and symmetrical.
2023-08-13 10:40:47 -07:00
Unknown W. Brackets
2bb67db43c
riscv: Switch to the logBlocks model for disasm.
2023-08-13 10:37:21 -07:00
Unknown W. Brackets
8c036a889d
riscv: Add debug log of block disasm.
2023-08-13 10:32:04 -07:00
Unknown W. Brackets
7cc6c5fa62
riscv: Fix load error w/o pointerify.
2023-08-13 10:20:28 -07:00
Unknown W. Brackets
be938a850b
riscv: Remove FMul safety check.
...
Let's just see if everything's right, this bloats multiplies a lot.
Doesn't seem to impact perf a lot, though.
2023-08-13 10:20:20 -07:00
Unknown W. Brackets
fa53b80574
irjit: Cleanup/purge FPU/VFPU temps.
...
A lot of cases are followed by an FMov that just moved the temp to a
regular register, from VFPU instructions playing safe about overlaps.
2023-08-13 10:14:10 -07:00
Henrik Rydgård
7bb1914fd3
Add FrameTiming.cpp/h (with no real contents)
2023-08-13 17:57:43 +02:00
Henrik Rydgård
2a74a0b98a
Merge pull request #17893 from unknownbrackets/riscv-blocklink
...
riscv: Enable block linking
2023-08-13 12:40:39 +02:00
Ethan O'Brien
8426b35a80
Cleanup emscripten libretro build target
2023-08-12 14:38:35 -05:00
Unknown W. Brackets
81f67c717c
riscv: Fix block link for prev blocks.
...
Oops, was just reversed so never linking.
2023-08-12 10:48:39 -07:00
Unknown W. Brackets
fcc90095f7
riscv: Enable block linking.
2023-08-12 09:37:02 -07:00
Unknown W. Brackets
247788806a
irjit: Add direct helper for start PC.
...
It's annoying always fetching length too.
2023-08-12 09:37:02 -07:00
Unknown W. Brackets
b3cdf06c5a
riscv: Write fixup on block invalidation.
2023-08-12 09:37:02 -07:00
Unknown W. Brackets
3757ebca2d
irjit: Invalidate/finalize target blocks.
...
Doesn't actually do anything yet, but adds plumbing.
2023-08-12 09:37:02 -07:00
Henrik Rydgård
1ea11c233c
Remove "SwapBuffers" from the GraphicsContext interface.
...
Buildfixes
More buildfix
headless buildfix
One more buildfix
2023-08-11 01:57:02 +02:00
Henrik Rydgård
7c60022979
Fix hang after exiting a game. After running a game, coreState is POWERDOWN which counts as stepping.
2023-08-10 23:52:24 +02:00
Henrik Rydgård
779a156251
PortManager warning fix. The #pragma pack stuff was redundant anyway
2023-08-10 17:15:57 +02:00
Henrik Rydgård
4b0ac494d0
Even more simplification
2023-08-10 17:15:57 +02:00
Henrik Rydgård
0477ba8c78
Core.cpp: Some slight simplifications
2023-08-10 17:15:56 +02:00
Henrik Rydgård
be708e3e02
Move KeepScreenAwake to platform specific code.
2023-08-10 16:12:12 +02:00
Henrik Rydgård
50ea506b6a
Revert "Regression experiment: Temporarily revert to returning 0 from bad achievement memory accesses."
...
This reverts commit a044d8ccc2
.
2023-08-09 16:16:39 +02:00
Henrik Rydgård
2342c4522c
Merge pull request #17875 from unknownbrackets/riscv-jit
...
RISC-V: Implement a few more ops
2023-08-09 09:30:15 +02:00
Henrik Rydgård
bac4e8d42d
Merge pull request #17874 from unknownbrackets/irjit-exits
...
IR: Simplify exits to ExitToConst when viable
2023-08-09 09:11:52 +02:00
Henrik Rydgård
6758675054
Merge pull request #17873 from unknownbrackets/irjit-shuffle
...
IR: Fix vqmul / Vec4Shuffle overlap
2023-08-09 09:10:03 +02:00
Unknown W. Brackets
2c13b6d973
riscv: Implement vc2i.
2023-08-08 23:17:32 -07:00
Unknown W. Brackets
28c58c1d24
irjit: Allow more forms of vmidt.
...
Mildly worth it.
2023-08-08 23:17:32 -07:00
Unknown W. Brackets
4b9011e475
riscv: Reduce call bloat using temps.
2023-08-08 23:17:32 -07:00
Unknown W. Brackets
ddf3d02a3c
riscv: Implement vi2uc.
2023-08-08 23:17:32 -07:00
Unknown W. Brackets
268adf1aa1
riscv: Implement scaled float/int convert.
2023-08-08 23:17:32 -07:00
Unknown W. Brackets
0b4e7d60f9
riscv: Implement ReverseBits in jit.
2023-08-08 23:17:32 -07:00
Unknown W. Brackets
ad4cbbab8e
riscv: Don't cache mipState on backend.
...
Bad sign if we're trying to use it, anyway.
2023-08-08 23:17:32 -07:00
Unknown W. Brackets
31ff23746c
irjit: Prefer ExitToConst over ExitToReg.
2023-08-08 23:14:01 -07:00
Unknown W. Brackets
3f97545f99
irjit: Reduce exits from constants.
...
This reduces bloat a bit, and may help with common funcs that enter short
loops.
2023-08-08 23:05:14 -07:00
Unknown W. Brackets
5f9a8fd1a1
irjit: Rename IRRegCache to IRImmRegCache.
...
For clarity, since it's not a native regcache.
2023-08-08 23:05:14 -07:00
Unknown W. Brackets
1a92027810
riscv: Make Vec4Shuffle overlap safe.
2023-08-08 23:00:45 -07:00
Unknown W. Brackets
e73c203984
irjit: Fix Vec4Shuffle overlap issue.
2023-08-08 23:00:39 -07:00
Henrik Rydgård
ac269aaa4b
rcheevos: revert to before #17806
...
PR #17806 upgraded rcheevos, after which a regression is reported in
issue #17631 .
Experimentally revert to confirm.
2023-08-08 15:38:22 +02:00
Henrik Rydgård
a044d8ccc2
Regression experiment: Temporarily revert to returning 0 from bad achievement memory accesses.
2023-08-08 15:33:46 +02:00
Henrik Rydgård
5ee04ce403
SDL: Break out event processing from main loop
...
Makes things a bit easier to work with.
2023-08-08 12:28:42 +02:00
Henrik Rydgård
bcae36d8cb
Merge NativeUpdate and NativeRender, we always call them together.
2023-08-07 22:50:57 +02:00
Henrik Rydgård
096c168dd7
Add yield() function to tell the CPU that we're busy-waiting (rare) ( #17862 )
...
* Add yield() function to tell the CPU that we're busy-waiting (rare)
Use it only for the busy-wait in lag sync, which only happens in
Windows.
* Buildfix attempt
2023-08-07 21:38:03 +02:00
Henrik Rydgård
e9431d0d1e
Merge pull request #17859 from unknownbrackets/irjit-vec4
...
irjit: Use Vec4 a bit more
2023-08-06 23:05:33 +02:00
Unknown W. Brackets
3dc71cff75
irjit: Keep a couple more ops in Vec4.
2023-08-06 13:46:24 -07:00
Unknown W. Brackets
6a1dbd4cde
irjit: Allow Vec4 to be used with masks.
2023-08-06 13:46:24 -07:00
Unknown W. Brackets
2b964fd3b0
irjit: Handle more common Vec4 prefix cases.
2023-08-06 13:38:00 -07:00