Commit Graph
45601 Commits
Author SHA1 Message Date
Henrik Rydgård f58d4dfcfe Merge pull request #15372 from unknownbrackets/bmi2
Optimize jits with a bit of BMI2
2022-02-01 09:43:35 +01:00
Unknown W. Brackets c2dd59084d samplerjit: Optimize DXT calc using BMI2. 2022-02-01 00:18:56 -08:00
Henrik Rydgård c3ecd41e2c Merge pull request #15371 from unknownbrackets/flushbefore
softgpu: Avoid flush on END
2022-02-01 08:03:03 +01:00
Unknown W. Brackets 3e4afe2a0c samplerjit: Avoid RCX gymanstics with BMI2. 2022-01-31 22:33:09 -08:00
Unknown W. Brackets 4cadcea6da samplerjit: Decode colors with BMI2.
This only happens with nearest, though, so very small benefit.
2022-01-31 22:05:34 -08:00
Unknown W. Brackets 367525f875 softjit: Use PEXT to downsample colors.
This gives between 1-2% in many games.
2022-01-31 21:40:54 -08:00
Unknown W. Brackets 10bf375712 softjit: Use BMI2 to speed up dst color loads.
This is about 1% overall gain in some games.
2022-01-31 21:27:51 -08:00
Unknown W. Brackets ad43380ef6 softjit: Use BMI to simplify some masking. 2022-01-31 19:50:48 -08:00
Unknown W. Brackets 16dca4f69b x86jit: Use BMI2 for variable shifts.
We don't actually regalloc ECX, but this still saves a copy, and on modern
CPUs these seem to be pretty fast.
2022-01-31 19:38:17 -08:00
Unknown W. Brackets bd06569609 Merge pull request #15370 from hrydgard/remove-flushbefore
GPUCommon: Remove misleading flag FLUSHBEFORE.
2022-01-31 19:35:25 -08:00
Unknown W. Brackets be8c74cabe softgpu: Avoid flush on END.
We only, but always, flush when exiting list interp in FinishDeferred.
It's not necessary at END, and hurts for simple signals that don't stop
list processing.
2022-01-31 19:32:46 -08:00
Henrik Rydgård 2a82d392e3 Remove double flush in GE_CMD_END 2022-02-01 00:05:32 +01:00
Henrik Rydgård 6d31562ea7 GPUCommon: Remove misleading flag FLUSHBEFORE.
Fixes the new problem in #13967

Though of course doesn't fix the vertical lines.
2022-01-31 23:57:56 +01:00
Henrik Rydgård 748eef05d0 Merge pull request #15369 from unknownbrackets/include-cleanup
Global: Reduce includes of common headers
2022-01-31 15:23:21 +01:00
Unknown W. Brackets edcc1a7104 HLE: Fix some type convert warnings.
Almost missed these.
2022-01-30 22:06:54 -08:00
Unknown W. Brackets 2479d52202 Global: Reduce includes of common headers.
In many places, string, map, or Common.h were included but not needed.
2022-01-30 16:35:33 -08:00
Unknown W. Brackets 3df6cb704f Global: Fix some type conversion warnings.
Hidden by some warning disables.
2022-01-30 16:09:33 -08:00
Unknown W. Brackets 5e185f3d87 Common: Remove some unused files. 2022-01-30 15:11:57 -08:00
Henrik Rydgård cd7cea90a9 Merge pull request #15368 from unknownbrackets/display-stats
Refactor display stats, prevent flush while stepping
2022-01-31 00:08:44 +01:00
Unknown W. Brackets f24e255268 Core: Skip stats reset while stepping.
This way, you can use it to actually see the stats.
2022-01-30 11:53:48 -08:00
Unknown W. Brackets 129a603832 Display: Account for stepping time in graphs.
Frame times should count that as sleep too.
2022-01-30 11:53:48 -08:00
Unknown W. Brackets 48b597a1b9 Display: Move core counters/stats to HW file.
This separates things better, so not everything is pulling in HLE.
2022-01-30 11:53:48 -08:00
Unknown W. Brackets ad2e380987 Display: Move listeners to separate HW file.
Mixing this in with the HLE management funcs was messy.
2022-01-30 09:41:08 -08:00
Henrik Rydgård 9f9f86d468 Merge pull request #15367 from unknownbrackets/headless-speed
Improve the speed of headless tests
2022-01-30 17:49:17 +01:00
Unknown W. Brackets 7e814decc7 Headless: Improve total test time on Windows.
This improves it by almost 40%.
2022-01-30 08:27:22 -08:00
Unknown W. Brackets e062c31a82 Headless: Improve test init time. 2022-01-30 08:04:35 -08:00
Unknown W. Brackets 664d18cc9d Debugger: Encourage better meminfo accounting.
This makes MSVC generate a tighter loop and inline.
2022-01-30 08:03:54 -08:00
Henrik Rydgård 4a9ffb6b89 Merge pull request #15366 from unknownbrackets/unittest-fix
Build: Fix Windows unit tests
2022-01-30 16:42:15 +01:00
Unknown W. Brackets 693439b710 Build: Fix Windows unit tests. 2022-01-30 06:56:05 -08:00
Henrik Rydgård 77502db4c4 Merge pull request #15363 from unknownbrackets/softjit-unittest
Add unit test to verify compilation of sampler/pixel jits
2022-01-30 10:47:30 +01:00
Henrik Rydgård c50f5d7faf Merge pull request #15362 from unknownbrackets/actions-ccache
Build: Enable ccache for GitHub Actions
2022-01-30 10:46:35 +01:00
Henrik Rydgård 8dd059936e Merge pull request #15364 from unknownbrackets/warnings
Cleanup a few warnings
2022-01-30 10:46:24 +01:00
Henrik Rydgård 524486e342 Merge pull request #15365 from unknownbrackets/kernel-timing
Kernel: Adjust timings of LwMutex and EventFlag
2022-01-30 10:46:06 +01:00
Unknown W. Brackets 41da6d9f48 Kernel: Adjust timings of LwMutex and EventFlag.
This better matches tests on real firmware.  These funcs are sometimes
often used.  See #15348 - Corpse Party.
2022-01-29 23:19:53 -08:00
Unknown W. Brackets cb0bc8543b Build: Ignore nullable completeness on Android.
Gives a bunch of warning spam with Vulkan Memory Allocator.
2022-01-29 22:36:21 -08:00
Unknown W. Brackets 43819fcd16 UI: Cleanup some reference warnings. 2022-01-29 22:36:08 -08:00
Unknown W. Brackets 1b2cf52bfe samplerjit: Fix non-shared CLUT on Linux.
Oops, good that CI will catch this now - I've broken this more than once.
2022-01-29 22:20:46 -08:00
Unknown W. Brackets a40d32d581 samplerjit: Validate compile in a unit test. 2022-01-29 20:31:18 -08:00
Unknown W. Brackets 26a8d498d7 samplerjit: Correct level lookup in nearest. 2022-01-29 20:29:43 -08:00
Unknown W. Brackets 3387ab1711 samplerjit: Fix reg corruption in DXT funcs.
We'd cache something in a reg, but it'd no longer be there.
2022-01-29 20:29:08 -08:00
Unknown W. Brackets d200ef40de samplerjit: Compile sampler funcs together.
We can't have the cache clear between nearest/linear, because then we'll
call a bunch of int3's.
2022-01-29 20:28:20 -08:00
Unknown W. Brackets 0d93200faf softjit: Add tests for compile success. 2022-01-29 18:47:36 -08:00
Unknown W. Brackets e266eb78ad Common: Avoid assert hang in CI. 2022-01-29 18:39:21 -08:00
Unknown W. Brackets 3dde3efa9f softjit: Fix stencil bug running out of regs.
To apply the stencil test mask, we need another gen reg.
2022-01-29 18:31:40 -08:00
Unknown W. Brackets df454d2ce2 Build: Enable ccache for GitHub Actions. 2022-01-29 15:31:44 -08:00
Henrik Rydgård 078c61cfc9 Merge pull request #15360 from unknownbrackets/samplerjit-opt
Cleanup register usage a bit in samplerjit
2022-01-30 00:31:01 +01:00
Henrik Rydgård 00411320e2 Merge pull request #15361 from unknownbrackets/unittest
Run unit tests in GitHub Actions
2022-01-30 00:29:42 +01:00
Unknown W. Brackets 00e809341f Build: Run unit tests after build. 2022-01-29 14:07:26 -08:00
Unknown W. Brackets 9c695aea9a Headless: Remove stack corruption workaround.
This doesn't seem necessary anymore, was made static in 2013.
2022-01-29 14:07:26 -08:00
Unknown W. Brackets 1a787a2bca Headless: Add flag to run failing tests. 2022-01-29 14:07:26 -08:00