Commit Graph

80 Commits

Author SHA1 Message Date
Stenzek 6ee99d8b81 Build: Add ARM64 configurations 2024-06-14 17:06:45 +10:00
Stenzek 5c59288b39 3rdparty: Move rapidyaml v0.6.0 in-tree
Also c4core v0.2.0, fast-float v6.1.1.
2024-06-11 11:30:45 +10:00
Stenzek cf475d961a 3rdparty: Move fmt v10.2.1 in-tree 2024-06-11 11:30:45 +10:00
Stenzek d48f527d6d Common: Tidy up signal handlers
Move MacOS into its own file.
Fix assertion failure crash dumping.
2024-05-31 13:39:36 +10:00
Stenzek e768f1c93b MSBuild: Use AVX/AVX2 for 3rdparty as well 2024-04-25 11:55:41 +10:00
Stenzek caf0ade6f3 3rdparty: Remove jpgd 2024-04-06 13:17:22 +10:00
Stenzek dfa5fccec9 Build: Unify shared libraries across platforms
Use DLLs/shared libraries for:
 - libjpeg
 - libpng
 - libwebp
 - lz4
 - SDL
 - zlib
 - zstd
2024-04-06 13:17:22 +10:00
Stenzek 59d29b3648 Common: Rename General to HostSys
Actually fits what it's doing.
2023-12-27 13:55:35 +10:00
Stenzek 308f8c5112 x86emitter: Abstract MXCSR into a general FPControlRegister type 2023-12-27 13:55:35 +10:00
Stenzek f461bc9176 x86emitter: Purge x86caps
We can use cpuinfo for querying AVX/AVX2.
2023-12-27 13:55:35 +10:00
Stenzek 0bc9c7ffa1 Common: Replace x86_intrin.h with generic Intrin.h
For later Apple Silicon support.
2023-12-24 14:03:14 +10:00
Stenzek d9abe10308 Misc: Remove explicit PCH include, switch to SPDX 2023-12-24 14:03:14 +10:00
Stenzek c8e0390aaf MSBuild: Fix libpng warning 2023-10-10 18:01:30 +10:00
Stenzek 10b217e0c2 Image: Support loading webp files 2023-10-02 19:52:29 +10:00
Stenzek f8e1b9b11b Common: Add SmallString class 2023-09-03 12:42:30 +10:00
Stenzek 220117f07c MSBuild: Put all objects/libs together in build directory 2023-08-26 17:23:14 +10:00
Stenzek 2b4c7d12b6 Common: Merge MathUtils.h into BitUtils.h 2023-07-23 21:52:36 +10:00
Stenzek 088630a999 Misc: Replace bit_cast wrapper with std::bit_cast 2023-07-23 21:52:36 +10:00
Stenzek 8524fbbaf9 GS/HW: Decompress replacement textures to get alpha min/max 2023-07-11 13:30:47 +01:00
Stenzek 6beaec8ba1 Common: Remove Exceptions
The satisfaction is immeasurable.
2023-06-30 21:37:44 +10:00
Stenzek ab4592b8e9 Common: Add Error class 2023-06-30 21:37:44 +10:00
Stenzek 55e73bb4b9 MTGS: Convert to namespace 2023-06-25 12:54:14 +10:00
Stenzek 7c9c8e197c Common: Replace MemsetFast routines with C memset
And associated cleanup.

On most compilers these days, it'll either inline the memset with vector
fills or rep stosq, or outline with a call to memset.

I trust the compiler is probably going to make a better decision here,
than manual SSE intrinsics.

Ends up a couple of percent faster in FMV decoding.
2023-06-22 19:11:57 +10:00
Stenzek 03242a2953 Common: Move MemcpyFast routines to General.h
And add a trivially-copyable check, so nobody accidentially uses them
with non-POD types.
2023-06-16 18:26:28 +10:00
Stenzek 9613b43d50 Common: Purge SingleCoreAffinity
No longer used, never worked on Linux.
2023-06-16 18:26:28 +10:00
Stenzek 680affd1fe Common: Add ByteSwap.h
Provides a C++23-like std::byteswap implementation.
2023-05-25 16:47:36 +01:00
Stenzek 512d24cea6 Misc: More build system cleanups
Set UTF-8 source file format globally.
Set permissive/compliance mode globally.
Get rid of include of base 3rdparty directory, be explicit.
Get rid of duplicated properties.
Get rid of leftover plugin property files.
2023-05-16 12:58:19 +01:00
Stenzek c57d8980a1 GS: Move Vulkan helpers from common to GS 2023-05-06 03:40:00 +01:00
Stenzek 0ed418834a GS: Move OpenGL helpers from common to GS 2023-05-06 03:40:00 +01:00
Stenzek 083969a3d2 GS: Move DirectX helpers from common to GS 2023-05-06 03:40:00 +01:00
Stenzek 94226e83ba Common: Purge EventSource 2023-01-26 11:11:36 +00:00
Stenzek 4cf041f6cb Common: Move VirtualMemory related functionality to core
Also rewrites page fault handling to not use EventSource junk.
2023-01-26 11:11:36 +00:00
Stenzek ac3e7fbf44 MSBuild: Support building with clang-cl 2023-01-03 12:16:50 +00:00
Stenzek de7bbd6c37 Common: Add WAVWriter
To replace WAVFile with a questionable license history.
2022-12-28 11:02:53 +00:00
Connor McLaughlin 899eef18ec Common: Add DynamicLibrary 2022-12-22 04:27:30 +00:00
Connor McLaughlin ebeb88d425 Common: Add HeapArray 2022-12-18 03:47:00 +00:00
TellowKrinkle ea35619a78 Common: Add class for spinning GPUs 2022-10-24 14:33:17 +01:00
Connor McLaughlin e7c4894833 Common: Add MemorySettingsInterface 2022-10-20 19:43:29 +01:00
Silent 633eb45011 vs: Enable Function Level Linking solution-wide and AVX2 for Common project
Shrinks the AVX2 Qt binary by ~2.3MB.
2022-10-20 12:10:17 +01:00
Connor McLaughlin 375c0a02bb x86emitter: Add some AVX/AVX2 instructions and YMM registers 2022-10-14 20:54:39 +01:00
Connor McLaughlin af646e4496 Common: Add StringUtil::ToChars() wrapper 2022-09-25 14:49:48 +02:00
Connor McLaughlin f17a77c18e Common: Add HTTPDownloader implementation 2022-09-17 17:51:14 +01:00
Connor McLaughlin 9cce6945e6 Common: Add Image and Easing classes 2022-08-29 13:39:09 +01:00
Connor McLaughlin cbcfe37e28 Common: Add LRUCache 2022-07-24 16:22:37 +01:00
Connor McLaughlin ea051c6d5f Everything: Get rid of wx entirely from the Qt build 2022-05-22 13:58:56 +01:00
Connor McLaughlin 893b3c629d Everything: Remove a **lot** of wx, and px nonsense
- common has no wx left except for Path.
 - pcsx2core only has it in a few places (memory cards and path related
   stuff).
2022-05-22 13:58:56 +01:00
Connor McLaughlin f8dcff9fc4 Common: Remove references to pthreads4w
It's only needed for wx now.
2022-05-09 16:06:33 +01:00
Connor McLaughlin e5716922a3 Common/Threading: Move a bunch of unnecessary wrappers to gui 2022-05-09 16:06:33 +01:00
Connor McLaughlin 4baea67e75 Common: Remove RwMutex
It wasn't used, and if we need it, we can use std::shared_mutex.
2022-05-08 05:40:59 +01:00
Connor McLaughlin 1e8332f36a Misc: Move pxThread and friends to gui 2022-05-08 05:40:59 +01:00