Henrik Rydgård
39bf5b1f55
Minor naming and init cleanups in VulkanTexture
2018-02-26 10:50:29 +01:00
Henrik Rydgård
eb73cc23cd
Some log level changes.
2018-02-26 10:48:29 +01:00
Henrik Rydgård
e1852321a0
Vulkan: Remove the old method of uploading images.
2018-02-25 12:15:29 +01:00
Henrik Rydgård
eb014e8c6b
Try to be more consistent when initializing vulkan structs.
2018-02-25 12:15:29 +01:00
Henrik Rydgård
5f8118b82b
Separate T3DCreate* into its own header to avoid including Windows.h etc in some cases.
2018-02-25 10:27:59 +01:00
Unknown W. Brackets
0e2a586c1b
Global: Fix some type comparison/shadow warnings.
2018-02-11 07:03:23 -08:00
Unknown W. Brackets
2bec3bf3ac
Windows: Trigger StopThread() on shutdown.
...
Otherwise, we end up hanging in the loop waiting for emuThreadState to
become STOPPED. It actually has, but ThreadFrame() will block until a new
frame is queued... while will never happen, because the emuthread has
stopped.
2018-02-10 16:55:44 -08:00
Henrik Rydgård
c3629b4a53
Warning fixes
2018-02-04 13:42:04 +01:00
Henrik Rydgård
67b8c4527d
b.sh: Add a build option for address sanitizer. When enabled, we turn on some compatibility options to make it work right.
2018-01-31 14:29:23 +01:00
Henrik Rydgård
22e28e218b
Merge pull request #10411 from hrydgard/gl-render-manager
...
GL render manager - new faster GL multithreading
2018-01-31 12:22:07 +01:00
Henrik Rydgård
c60c8ed68a
Debug visualization for the Vulkan memory allocator. Shows some interesting behaviour.
2018-01-29 19:38:10 +01:00
Henrik Rydgård
fdca06d208
More work on shutdown, still hanging though.
2018-01-27 15:10:17 +01:00
Henrik Rydgård
57615344e4
Fix for deletes, add some debugging stuff
2018-01-27 15:10:17 +01:00
Henrik Rydgård
af6431986d
OpenGL: Now run GL on a secondary thread. Sync issues remain.
2018-01-27 15:10:17 +01:00
Henrik Rydgård
2656ad7d40
Vulkan: Use push_back instead of resize(+1)
2018-01-27 15:10:17 +01:00
Henrik Rydgård
42f2312030
Remove the old CPU threading remains, start redesigning interfaces.
2018-01-27 15:10:17 +01:00
Henrik Rydgård
60a966c5ec
PushBuffer added. Thin3d works now on top of GLRenderManager, except framebuffers.
2018-01-27 15:10:17 +01:00
Henrik Rydgård
133bef575a
Split Android graphics context implementations into their own files.
2018-01-20 21:47:16 +01:00
Greg V
025c382b9b
Check for Vulkan Xlib/Wayland surface support before enabling
...
The Vulkan loader will error if a requested extension is not available,
and the nvidia proprietary driver does not support the Wayland one.
2018-01-12 22:18:58 +03: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
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