Commit Graph

1370 Commits

Author SHA1 Message Date
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
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
b59c0d0b45 arm64jit: Use CMN for CMPI2R if possible.
It's not hit all that often, but it is hit.
2017-12-29 17:30:13 -08:00
Unknown W. Brackets
1ecce2a2e1 arm64jit: Reuse code in I2R funcs. 2017-12-29 17:30:07 -08:00
Unknown W. Brackets
b21af3321a arm64jit: Allow ANDI2R/etc. with zero.
Since they're all possible anyway, and it's easy to forget to special case
0.
2017-12-28 14:36:37 -08:00
Unknown W. Brackets
6fd17fb026 arm64jit: Use reg sum for LDR/STR.
Skips an add, and should be less ops anyway.
2017-12-28 10:19:55 -08:00
Unknown W. Brackets
257a4fdd12 arm64jit: Reprotect fixed code after icache flush. 2017-12-27 19:33:04 -08:00
Unknown W. Brackets
4a27e99ee9 arm64jit: Remove buggy icache invalidate.
This is always of size 0, and crashes on iOS anyway...
2017-12-27 19:30:10 -08:00
Greg V
52234dae91 Remove VULKAN_STATIC 2017-12-26 16:09:31 +03:00
Greg V
f3783bdb44 Add support for Vulkan on Wayland 2017-12-26 16:09:27 +03:00
Unknown W. Brackets
a7b3a1eb96 Vulkan: Decimate the texture allocator.
Thin3D wasn't calling Begin/End, which lead to leaks eventually and OOM.

Was causing softgpu to crash.
2017-12-24 10:39:42 -08:00
Henrik Rydgård
7f758d52dc Statically link a vulkan loader on Linux. Use to to init vulkan on X11. Unfortunately, it's broken. 2017-12-21 11:02:11 +01:00
Henrik Rydgård
ea387b2a48 WIP vulkan on linux stuff 2017-12-21 10:48:00 +01:00
Henrik Rydgård
b0528f3794 Vulkan: Fix bug where we'd do the initial layout transition for an image before binding memory to it. Should help the issue uncovered in #10413 2017-12-20 16:40:09 +01:00
Henrik Rydgård
2250ef799c Avoid including platform-specific headers in VulkanContext.h 2017-12-18 12:54:25 +01:00
Henrik Rydgård
ef66892f70 Update vulkan headers, add linux .so loader lib for easy builds, like Sascha does. 2017-12-15 16:40:38 +01:00
Henrik Rydgård
e488227398 Just some log cleanup 2017-12-15 16:33:49 +01:00
Henrik Rydgård
b4a44c5e02 Another buildfix, sigh. Also extend the safe region a little bit to the thing from a couple commits ago. 2017-12-13 22:28:30 +01:00
Henrik Rydgård
d2fe5abb84 Add a tiny bit of safety margin to the RipAccessible check. Should be enough for 128-bit SSE data. 2017-12-13 22:00:59 +01:00
Henrik Rydgård
aaba38259a Oops, buildfix 2017-12-13 20:51:17 +01:00
Henrik Rydgård
6f0b382d9e Move vulkan debug callback out from WindowsVulkanContext into a file that can be shared with other platforms later. 2017-12-13 19:29:42 +01:00
Henrik Rydgård
cca4e0b2ca Fix another case where we trusted std::move to clear the origin, which is not guaranteed. 2017-12-10 14:37:28 +01:00
Henrik Rydgård
91b089d90d Tweak logging and asserts in VulkanDeviceMemory::Destroy 2017-12-10 14:22:35 +01:00
Henrik Rydgård
e07861991b Apply a fix to the ARM64 emitter ported over from Dolphin 2017-12-10 02:05:25 +01:00
Henrik Rydgård
bd40479224 Vulkan: Add facility to auto-generate mipmap levels. Not yet used.
Intended for replacement textures and optional quality improvements
later.
2017-12-07 09:28:18 +01:00
Henrik Rydgård
2ebae034a4 Vulkan: Show samplers in "shader debug" 2017-12-07 09:28:18 +01:00
Henrik Rydgård
aa0cc6712f Clip block transfer destinations. Should fix crash in #10011. Stats: Invent some sort of usage metric for device memory allocators. 2017-12-03 15:00:25 +01:00
Henrik Rydgård
6a2f0f4191 Revert "Fix memory-scan bug in VulkanDeviceAllocator that probably causes some fragmentation."
This reverts commit ac6b491287.
2017-12-03 11:31:25 +01:00
Henrik Rydgård
ac6b491287 Fix memory-scan bug in VulkanDeviceAllocator that probably causes some fragmentation. 2017-12-03 11:10:40 +01:00
Henrik Rydgård
1bf44b7ca3 Shutdown fix. 2017-12-03 11:02:49 +01:00
Henrik Rydgård
6abdbde47e Fix bugs in VulkanImage allocator support 2017-12-03 10:50:25 +01:00
Henrik Rydgård
5d53f5e24c Add another assert, which gets hit.. Hm. Something is wrong.. 2017-12-03 10:42:19 +01:00
Henrik Rydgård
ff264efe7e Change some Crash() to asserts in VulkanDeviceAllocator 2017-12-03 10:35:34 +01:00
Henrik Rydgård
d0c248368d Use a VulkanDeviceAllocator for thin3d textures. Many devices have a hard limit on the total number of allocs and it's unnecessary to have the UI put pressure on that. 2017-12-03 10:29:41 +01:00
Unknown W. Brackets
8a58bf6596 Hashmaps: Another cleanup. 2017-12-02 11:55:54 -08:00
Unknown W. Brackets
668b17febf Hashmaps: Reset count on clear. 2017-12-02 10:45:46 -08:00
Unknown W. Brackets
bbb4987cc0 Hashmaps: Reset state when growing.
std::move() is by no means guaranteed to clear.
2017-12-02 09:47:15 -08:00
Unknown W. Brackets
e9a7bda2d5 Hashmaps: Change some crashes to asserts.
Silence is not golden.
2017-12-02 09:46:48 -08:00
LunaMoo
95a14ca830 Add hotkey to toggle audio and video dumping together in sync. 2017-12-01 23:48:58 +01:00
Henrik Rydgård
4129459495 Avoid an assert in ARM64 emitter, seen in Google Play crash logs 2017-11-29 21:31:42 +01:00
Henrik Rydgård
04913be779 Move pushbuffer map/unmap to the .cpp file to avoid inlining (for stack traces) 2017-11-29 20:13:38 +01:00
Henrik Rydgård
dc3363e885
Merge pull request #10185 from jbeich/bsd
Minor BSD fixes
2017-11-26 23:38:24 +01:00
Henrik Rydgård
b9bad7431a Add ability to simulate a few kinds of Vulkan initialization failures, to test the GL fallback. 2017-11-26 16:13:04 +01:00
Unknown W. Brackets
bd1ed897cf Global: Fix some warnings. 2017-11-25 14:08:49 -08:00
Unknown W. Brackets
9eccea2d5e Windows: Fix error formatting with % signs. 2017-11-25 12:00:14 -08:00
Jan Beich
7a16cff6de Common: implement GetExeDirectory on NetBSD 2017-11-24 14:46:07 +00:00
Henrik Rydgård
cc3ba1bbf7 Fix _assert_ on Android to assert properly 2017-11-24 13:52:53 +01:00
Henrik Rydgård
b6911d2764 Add a hidden debug option [Graphics]GfxDebugSplitSubmit to try to narrow down some Vulkan issues, see #10163. Also improve some asserts. 2017-11-22 10:47:04 +01:00
Henrik Rydgård
acdb89c898 Make our release mode asserts actually fire properly in release mode again... 2017-11-21 21:06:57 +01:00
Henrik Rydgård
2e9d59ad10 Android: Use __android_log_assert facility to get pretty message-asserts into crash dumps. 2017-11-21 18:06:26 +01:00