Commit Graph
47140 Commits
Author SHA1 Message Date
Henrik Rydgård 0ffc4286c7 Merge pull request #15185 from CarterLi/master
CMake: Allow use system miniUPnPc and ( on macOS ) system glew
2021-11-30 09:04:40 +01:00
Henrik Rydgård bed1b5a823 Merge pull request #15181 from unknownbrackets/softjit-args
softjit: Centralize argument register allocation
2021-11-30 09:03:55 +01:00
Henrik Rydgård d45c6bcd75 Merge pull request #15186 from CarterLi/vulkan
ext: Update vulkan headers & binaries
2021-11-30 09:02:57 +01:00
李通洲 fee3b71449 ext: Update vulkan headers 2021-11-30 15:04:44 +08:00
李通洲 0c3c89a093 ext: Allow use system glew with system ffmpeg (macOS) 2021-11-30 14:40:32 +08:00
李通洲 521b04452e ext: Support building with system miniUPnPc 2021-11-30 14:40:32 +08:00
orbea c05c699eaf cmake: Generate git-version.cpp in the build dir 2021-11-29 10:16:50 -08:00
orbea dd795605cf ext/SPIRV-Cross-build: Update cmake version
This matches the upstream SPIRV-Cross CMakeLists.txt.

Also silences a warning.

CMake Deprecation Warning at ext/SPIRV-Cross-build/CMakeLists.txt:15 (cmake_minimum_required):
  Compatibility with CMake < 2.8.12 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.
2021-11-29 08:24:35 -08:00
Unknown W. Brackets bfe82e417d softjit: Fix locked stencil reg. 2021-11-28 20:26:01 -08:00
Unknown W. Brackets 0ef1df79b9 headless: Enable softgpu jit for tests. 2021-11-28 15:54:48 -08:00
Unknown W. Brackets 99c213f244 softjit: Centralize argument register allocation. 2021-11-28 15:53:24 -08:00
Henrik Rydgård 2a9300698e Merge pull request #15180 from unknownbrackets/softjit-args
Refactor software renderer jit cache to be shared
2021-11-28 22:12:29 +01:00
Henrik Rydgård dbb711bf1d Merge pull request #15175 from unknownbrackets/mips-shutdown
jit: More atomically update pointer
2021-11-28 21:57:04 +01:00
Unknown W. Brackets 7aea6d2ab0 softjit: Fix fog typo causing locking bug. 2021-11-28 12:26:23 -08:00
Unknown W. Brackets b8ab7f39df jit: Lock around changes to the jit pointer. 2021-11-28 10:04:22 -08:00
Unknown W. Brackets 9653c33d9c softjit: Fix PixelFuncID arg on non-Windows x64.
Oops, this is of course not put on the stack, it's in R8.
2021-11-28 08:54:36 -08:00
Unknown W. Brackets 2d8fdd8cf4 Math3D: Allow construction from NEON vectors.
This makes it match SSE and easier to keep things generic.  Will impact
alignment of non-packed Vec2/Vec3.
2021-11-28 08:24:53 -08:00
Unknown W. Brackets 96a7554053 sofjit: Move common types to reg cache header.
This makes it easier to use vectors elsewhere.
2021-11-28 08:03:15 -08:00
Unknown W. Brackets 3d5bced296 softjit: Rename reg cache so it can be reused.
Intentionally just the name changes in this commit.
2021-11-28 08:03:15 -08:00
Unknown W. Brackets 4703b6cb56 softjit: Cleanup, add other arch types to regcache. 2021-11-28 08:03:15 -08:00
Unknown W. Brackets c1882fa1c0 softjit: Disallow use of register after unlock. 2021-11-28 08:03:14 -08:00
Unknown W. Brackets 2f039abd13 softjit: Simplify regcache usage as purpose only.
Dealing with types was annoying, and this helps validate the right
register is released.
2021-11-28 08:03:14 -08:00
Unknown W. Brackets 722c04c5e2 samplerjit: Allow disabling linear too, oops. 2021-11-28 08:03:14 -08:00
Unknown W. Brackets cc099c73f1 softjit: Decide stack offset on compile.
This makes it easier to compile different entries or push regs.
2021-11-28 08:03:14 -08:00
Unknown W. Brackets e1ed49a3e4 softjit: Ensure all regs are released. 2021-11-28 08:03:14 -08:00
Unknown W. Brackets d53e13b862 softjit: Manage args in the register cache. 2021-11-28 08:03:13 -08:00
Henrik Rydgård aa12c9b391 Merge pull request #15163 from unknownbrackets/softjit
Implement a jit for drawing pixels in the software renderer
2021-11-28 08:26:05 +01:00
Henrik Rydgård cf6e11e1d1 Merge pull request #15176 from unknownbrackets/sdl-inflight
SDL: Respect inflight frames setting in GL
2021-11-27 23:06:05 +01:00
Unknown W. Brackets 6fbcf67093 softjit: Fix disabled cache. 2021-11-27 11:32:47 -08:00
Unknown W. Brackets 12b790bb81 ThreadManager: Protect against teardown hang/leak.
Make sure we lock during canceled checks/updates, and also try to free
tasks queued on threads that didn't end up running.
2021-11-27 08:57:19 -08:00
Unknown W. Brackets de9a4dcede ThreadManager: Lock notify on global queue add.
Otherwise, it's possible the chosen thread might not wake up, and then it
may wait for another task to be enqueued - potentially causing a hang.
2021-11-27 08:57:19 -08:00
Unknown W. Brackets d15af6e9d9 ThreadManager: Use atomic task optimistically.
This makes EnqueueTaskOnThread take priority as well.
Gives about 1% improvement in softgpu, reducing overhead a bit.
2021-11-27 08:07:12 -08:00
Unknown W. Brackets f8e50b1dc7 SDL: Respect inflight frames setting in GL. 2021-11-27 06:57:26 -08:00
Unknown W. Brackets 0c6c2fb47a jit: More atomically update pointer. 2021-11-27 06:00:18 -08:00
iota97 6d38ea31df Make CRT animation speed configurable 2021-11-27 10:53:28 +01:00
Unknown W. Brackets 1cb48a7bd2 softjit: Reduce jit pool size a bit. 2021-11-26 10:30:00 -08:00
Unknown W. Brackets 1f9dc3a568 softjit: Precalculate write mask and dither.
This is slightly abusing PixelFuncID, but the intent is to provide some
memory that's easily accessible from the jit func, but still associated
with that calculation (i.e. not global.)
2021-11-26 10:12:54 -08:00
Unknown W. Brackets 4e6a5ce760 softjit: Log any failed compiles. 2021-11-26 09:30:49 -08:00
Unknown W. Brackets 446eec0dff softjit: Keep color 16-bit when useful.
Reuse it expanded where we can, in case of dither+fog+blend, etc.
2021-11-26 09:30:48 -08:00
Unknown W. Brackets c62457bb33 softjit: Optimize common blend inverse alpha case. 2021-11-26 09:30:48 -08:00
Unknown W. Brackets 1fa4e6ba2c softjit: Add alpha blending factors. 2021-11-26 09:30:48 -08:00
Unknown W. Brackets bc8d5ad372 softjit: Cache zero vector to avoid recreating. 2021-11-26 09:30:48 -08:00
Unknown W. Brackets a07017dbb0 softjit: Prefer easier to refill regs. 2021-11-26 09:30:47 -08:00
Unknown W. Brackets 932481d3cd softjit: Minor tweak to reg order for XCHG.
It's easier to use it in these places, but seems it stalls longer on the
dest reg.
2021-11-26 09:30:47 -08:00
Unknown W. Brackets 7f167c3660 softjit: Implement min/max/absdiff blending.
Alpha not yet implemented.
2021-11-26 09:30:47 -08:00
Unknown W. Brackets 771d459025 softjit: Use SSE4.1 for fog and dither a bit. 2021-11-26 08:42:17 -08:00
Unknown W. Brackets cf888257ab softjit: Fix dithering bug. 2021-11-26 08:21:15 -08:00
Unknown W. Brackets 3f3e0ea8cf softjit: Optimize typical alpha/depth test.
Messed with SSE4 then realized there's no point, just use SHR.
2021-11-26 08:21:14 -08:00
Unknown W. Brackets 6644c4225c softjit: Apply logic ops. 2021-11-26 08:21:14 -08:00
Unknown W. Brackets 961273fcf5 softjit: Apply color write mask. 2021-11-26 08:21:14 -08:00