Commit graph

23705 commits

Author SHA1 Message Date
Unknown W. Brackets
905d2c2da6 irjit: Cleanup some invalid op handling.
And log blocks the same way as other backends.
2018-01-01 08:38:11 -08:00
Unknown W. Brackets
d8d174fa2b arm64jit: Avoid spilling an extra reg for lwl/lwr.
It's only needed for swl and swr.
2018-01-01 08:38:10 -08:00
Unknown W. Brackets
8ffb0101fe jit: Report blocks with uneaten VFPU prefixes.
There may be options to avoid, like continuing these blocks, especially if
they're likely or something.
2018-01-01 08:38:10 -08:00
Unknown W. Brackets
0039fa8c0a Logging: Use AndroidLogger for all mobile devices.
Noticed iOS wasn't logging, which seems non-ideal considering Android
does.  Might as well make them behave the same.
2018-01-01 08:37:26 -08:00
Henrik Rydgård
28acc2e9de
Merge pull request #10489 from KentuckyCompass/arc-fixes
Modernization of iOS Objective-C code to use Automatic Reference Counting
2018-01-01 09:49:29 +01:00
Henrik Rydgård
bf36965410
Merge pull request #10482 from unknownbrackets/irjit
irjit: Speed up icache block invalidation
2018-01-01 09:48:54 +01:00
Kentucky Compass
67c6ecdece nil out sharedViewController in case bindDefaultFBO is called again 2017-12-31 19:53:59 -08:00
Kentucky Compass
152dc2192f iOS: convert all obj-c source code to ARC 2017-12-31 19:36:47 -08:00
Kentucky Compass
4a119beb59 iOS: fix a reference counting bug that may have caused ViewController to never be deallocated 2017-12-31 17:57:39 -08:00
Kentucky Compass
c563166f9a Modernize property syntax and don't use viewDidUnload (deprecated in iOS 6) 2017-12-31 17:54:50 -08:00
Kentucky Compass
5b857f08ed Create AppDelegate the standard way instead of in PPSSPPUIApplication init 2017-12-31 16:02:01 -08:00
Unknown W. Brackets
3af78883c7 irjit: Speed up icache block invalidation.
Turns out, in games using a ton of small memcpys, this was causing perf
issues.
2017-12-31 10:37:09 -08:00
Henrik Rydgård
e82237bb0d
Merge pull request #10481 from KentuckyCompass/ios-audio-fix
iOS: handle audio session interruptions and improve micro-stutter
2017-12-31 10:11:44 +01:00
Kentucky Compass
ca5758f80b Change iOSCoreAudio from cpp to mm. Explicitly activate the audio session. Always set the same mDataByteSize. 2017-12-31 00:45:05 -08:00
Kentucky Compass
4cec3d1bf3 Add AVFoundation to linked frameworks on iOS 2017-12-31 00:37:22 -08:00
Kentucky Compass
d8b3f4af33 Handle iOS audio session interruptions by reinitializing audio 2017-12-31 00:37:20 -08:00
Unknown W. Brackets
8e1ab3f6ff
Merge pull request #10480 from KentuckyCompass/ios-build-fix
Fix building for iOS
2017-12-30 23:03:29 -08:00
Kentucky Compass
6a9a511337 add an include for PPSSPP_PLATFORM 2017-12-30 22:44:41 -08:00
Kentucky Compass
bcd19ee520 fix cmake when building for iOS in a path with spaces 2017-12-30 20:57:45 -08:00
Kentucky Compass
2a3c4408d2 Fix build on iOS (only iOS 9 and up support thread_local) 2017-12-30 20:57:45 -08:00
Henrik Rydgård
d565e23f4c Stencil copy: Avoid clearing the depth buffer. 2017-12-31 01:06:31 +01:00
Unknown W. Brackets
2f24ff85ee
Merge pull request #10479 from hrydgard/vulkan-renderpass-cache
Vulkan: Create renderpass objects on demand.
2017-12-30 15:58:01 -08:00
Henrik Rydgård
b9d0bf9842 Remove outdated comment. 2017-12-31 00:10:55 +01:00
Henrik Rydgård
cc0327137b Oops, forgot these. 2017-12-31 00:07:02 +01:00
Henrik Rydgård
b5e5d72a0a Complete the separation of depth and stencil renderpass flags 2017-12-30 22:52:22 +01:00
Henrik Rydgård
a0f718ace1 Start separating depth and stencil renderpass actions, only internally in the Vulkan code so far. 2017-12-30 22:40:57 +01:00
Henrik Rydgård
1e64919392 Vulkan: Create renderpass objects on demand. Just a refactoring to prepare for some later features/optimizations. 2017-12-30 22:35:43 +01:00
Henrik Rydgård
b9726245ac Vulkan: Use VK_KHR_DEDICATED_ALLOCATION for frame buffers for minor speedup on some GPUs. Check for the debug report extension before enabling it. 2017-12-30 21:31:43 +01:00
Henrik Rydgård
25a9573f8b Typo fix 2017-12-30 21:30:31 +01:00
Henrik Rydgård
191c4ddb0d Add a bit of logging to try to figure out #10477 2017-12-30 21:04:05 +01:00
Henrik Rydgård
f3ba540078
Merge pull request #10476 from unknownbrackets/arm64-jit
Statically allocate RA in arm64jit
2017-12-30 20:49:00 +01:00
Henrik Rydgård
5531afbaf4
Merge pull request #10475 from unknownbrackets/profiler
Make the profiler thread safe
2017-12-30 20:45:36 +01:00
Unknown W. Brackets
9ff812b313 arm64jit: Negate in ADDI2R/SUBI2R as well.
Should've done this at the same time as CMN.  It's not as common, mostly
catches addu calls, but it's good to have these generic for other uses.
2017-12-30 11:11:04 -08:00
Unknown W. Brackets
79a9018aac Debugger: Fix hang when viewing invalid RAM.
If you end up in disassembly near invalid RAM, bad things were happening,
since hitting bad RAM updates the debugger, which hits bad RAM, which...
2017-12-30 11:11:04 -08:00
Unknown W. Brackets
ae63628360 arm64jit: Statically allocate ra as well.
This doesn't seem to have a significant impact on performance, but it
improves bloat by about 5%.
2017-12-30 11:11:03 -08:00
Unknown W. Brackets
52c4293896 Profiler: Show the slowest thread's categories.
May or may not be ideal, but this was the easiest solution...
2017-12-30 10:45:51 -08:00
Unknown W. Brackets
4871b1eeb0 Profiler: Fix cat display on small screens. 2017-12-30 10:19:15 -08:00
Unknown W. Brackets
267b9a6598 Profiler: Separately track texture hashing.
Since it's slow and was lumped into updatestate.
2017-12-30 10:14:35 -08:00
Unknown W. Brackets
89cbf36611 arm64jit: Free up W23 for static alloc.
We shouldn't always reserve W23 for this uncommon case.
2017-12-30 07:51:27 -08:00
Unknown W. Brackets
e7ac672522 arm64jit: Cleanup method names, temp discard.
This way MapDirtyIn won't accidentally discard temps.
2017-12-30 07:51:27 -08:00
Henrik Rydgård
eb35e88288
Merge pull request #10471 from unknownbrackets/arm64-jit
More arm64jit improvements
2017-12-30 15:56:04 +01:00
Henrik Rydgård
364a2662fd
Merge pull request #10472 from unknownbrackets/ui-perms
UI: Only default focus visible things
2017-12-30 11:26:12 +01:00
Unknown W. Brackets
5ea54d991e UI: Fix dev menu scroll on small screens.
The scroll thought it could be as tall as the screen, due to FILL_PARENT.
Maybe that should always use a weight...
2017-12-30 01:10:17 -08:00
Unknown W. Brackets
b9cd883811 UI: Only default focus visible things.
Also, default focus perm button.
2017-12-29 17:55:40 -08:00
Unknown W. Brackets
0fc8274ec4 arm64jit: Enable safe memory for lwl/lwr. 2017-12-29 17:30:18 -08:00
Unknown W. Brackets
c00044c5d8 arm64jit: Avoid arithmetic movs.
ORR is the preferred encoding and may be faster on some chips.
2017-12-29 17:30:18 -08:00
Unknown W. Brackets
98ed6fab3f arm64jit: Fix spilling for more than one temp reg.
Otherwise we hang trying to spill the same reg over and over.
2017-12-29 17:30:17 -08:00
Unknown W. Brackets
ee236743f0 arm64jit: Use TBZ/TBNZ for vfpu branch as well. 2017-12-29 17:30:16 -08:00
Unknown W. Brackets
3b4917a308 arm64jit: Use TBZ/TBNZ for fp branches. 2017-12-29 17:30:15 -08:00
Unknown W. Brackets
c71285c970 arm64jit: Use CBZ/CBNZ for zero compare branches.
These are pretty common, so it reduces bloat decently.  Seems about the
same speed, though.
2017-12-29 17:30:15 -08:00