Liam
ddda76f9b0
core: track separate heap allocation for linux
2023-12-25 23:30:56 -05:00
Alexandre Bouvier
d2bb9e9729
cmake: prefer system gamemode library
2023-11-30 16:54:00 +01:00
liamwhite
3a12fe5d13
Merge pull request #12227 from jbeich/gamemode
...
cmake: unbreak build on FreeBSD by re-enabling gamemode
2023-11-30 09:21:19 -05:00
liamwhite
57a391e71d
Merge pull request #12074 from GPUCode/yuwu-on-the-metal
...
Implement Native Code Execution (NCE)
2023-11-30 09:20:55 -05:00
Jan Beich
df96caec79
cmake: sync gamemode conditionals with code after 5eec980a2d
...
FAILED: bin/yuzu
ld: error: unable to find library -lgamemode
FAILED: bin/yuzu-cmd
ld: error: undefined symbol: Common::Linux::StartGamemode()
>>> referenced by yuzu.cpp
>>> src/yuzu_cmd/CMakeFiles/yuzu-cmd.dir/yuzu.cpp.o:(main)
ld: error: undefined symbol: Common::Linux::StopGamemode()
>>> referenced by yuzu.cpp
>>> src/yuzu_cmd/CMakeFiles/yuzu-cmd.dir/yuzu.cpp.o:(main)
2023-11-30 00:05:11 +01:00
Liam
5eec980a2d
general: conditionally compile gamemode on linux only
2023-11-29 14:26:11 -05:00
amazingfate
a76a8fb5fe
qt: add cpu_backend configuration
2023-11-26 20:44:07 -05:00
flodavid
40644d43f7
yuzu: create linux group in general settings
...
- Create files dedicated to starting and stopping gamemode functions
- Use them in yuzu and yuzu_cmd modules
2023-11-25 19:30:37 +01:00
--author=Liam
29e7d79a86
common: Add free region manager
...
* Abstraction for placeholder region tracking in host_memory
2023-11-25 00:46:15 -05:00
GPUCode
20011dfeb8
common: Add libc sigaction hook
2023-11-25 00:46:15 -05:00
Alexandre Bouvier
79ba5d9c26
cmake: prefer system stb headers
2023-10-25 21:47:32 +02:00
Liam
21bc2c14bc
common: add arm64 native clock
2023-10-08 12:54:23 -04:00
Kelebek1
67e2d5c28b
Reimplement HardwareOpus
2023-09-16 11:56:25 -04:00
liamwhite
ce5320c49f
Merge pull request #11447 from xcfrg/portable-compile-out
...
common: add a compile time option to allow disabling portable mode
2023-09-12 09:17:50 -04:00
xcfrg
a02d641042
add a compile time option to allow disabling portable mode
2023-09-06 18:53:39 -04:00
Danila Malyutin
785e480b62
msvc: set warning level to /W4 globally
...
And fix a bunch of warnings
2023-09-03 18:42:10 +04:00
lat9nq
267f3c7905
settings: Cleanup
...
Addresses review feedback
Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com>
2023-07-21 10:56:55 -04:00
lat9nq
fdbeb84168
settings,uisettings: Remove leading underscore
2023-07-21 10:56:55 -04:00
lat9nq
3f0cc544cf
common,yuzu-qt: Avoid explicit instantiation on old clang
...
Clang versions < 15 have compile issues with explicit instantiation.
Disable it for these versions.
2023-07-21 10:56:55 -04:00
lat9nq
11e7e1b8ce
settings: Move some simple data to BasicSetting
...
Reduces the need for the compiler to duplicate this code, by about
100KB executable size.
2023-07-21 10:56:54 -04:00
lat9nq
04d4b6ab80
(ui,)settings: Use explicit instantiation
...
Reduces compile times a tad on clang.
2023-07-21 10:56:54 -04:00
lat9nq
88d3de4e85
settings: Split enums to new file
2023-07-21 10:56:07 -04:00
Morph
dd12dd4c67
x64: Deduplicate RDTSC usage
2023-06-07 21:44:42 -04:00
Liam
b19754c73f
common: link libandroid on android
2023-06-03 00:05:43 -07:00
bunnei
ef605f7d8f
android: Implement SAF support & migrate to SDK 31. ( #4 )
2023-06-03 00:05:29 -07:00
Morph
27c33ab73f
x64: Add MicroSleep
...
MicroSleep allows the processor to pause for a "short" amount of time (in the microsecond range). This is useful for spin-waiting that does not require nanosecond precision.
This uses the new TPAUSE instruction introduced on Intel's newest processors as part of the waitpkg instructions. For CPUs that do not support waitpkg instructions, this is equivalent to yield().
Co-Authored-By: liamwhite <liamwhite@users.noreply.github.com>
2023-03-27 17:45:22 -04:00
Morph
9971cd1d55
common: Port boost's hash_value implementation
...
Ports a small subset of boost's hash_value implementation (<= 1.80.0).
2023-03-25 23:52:25 -04:00
Liam
fb49ec19c1
kernel: use KTypedAddress for addresses
2023-03-22 09:35:16 -04:00
Liam
d45ac00d48
kernel: avoid signed overflow UB on MSVC
2023-03-07 19:46:48 -05:00
Morph
1ed49f92dd
common: Implement a method to change the Windows timer resolution
...
This utilizes undocumented NtDll functions to change the current timer resolution from the default of 1ms.
2023-03-05 01:41:28 -05:00
Morph
bd09c82521
common: Implement a high resolution steady clock
...
This implementation provides a consistent, high performance, and high resolution clock where/when std::chrono::steady_clock does not provide sufficient precision.
2023-03-05 01:41:19 -05:00
Alexandre Bouvier
57fd8b1f45
cmake: use correct boost imported targets
2023-02-28 17:56:01 +01:00
Alexandre Bouvier
34b1ea9c19
cmake: prefer system llvm library
2023-01-23 06:23:00 +01:00
Kelebek1
ce0b8d618d
Move demangle impl to cpp
2023-01-14 05:12:41 +00:00
Kelebek1
80a55c1663
Add stacktrace symbol demangling
2023-01-14 04:43:21 +00:00
Fernando Sahmkow
18637766ef
MacroHLE: Reduce massive calculations on sizing estimation.
2023-01-01 16:43:57 -05:00
ameerj
cfc34dd41d
common: Add ScratchBuffer class
...
This class creates a default initialized heap allocated buffer for cases where value initializing members during allocation or resize
is redundant.
2022-12-19 18:07:51 -05:00
ameerj
88ba5a7f22
common: add make_unique_for_overwrite
2022-12-19 18:07:42 -05:00
Liam
ed37192441
memory: correct semantics of data cache management operations
2022-12-11 12:46:34 -05:00
Alexandre Bouvier
8e17b5469f
cmake: prefer system libraries
2022-12-04 17:09:25 +01:00
ameerj
5b5612c1cc
CMake: Consolidate common PCH headers
2022-11-30 18:30:30 -05:00
ameerj
37bc5118ea
CMake: Use precompiled headers
2022-11-29 18:50:49 -05:00
Liam
70ea1c2000
common: add cache management functions
2022-11-12 11:26:56 -05:00
Morph
cae108404a
CMakeLists: Remove redundant warnings
...
These warnings are already included in /W3.
2022-10-22 15:02:04 -04:00
Morph
f3c40f4a20
CMakeLists: Treat MSVC warnings as errors
2022-10-22 15:02:04 -04:00
Morph
e6ab1f673b
general: Enforce C4800 everywhere except in video_core
2022-10-22 15:02:04 -04:00
Morph
93297d14d8
CMakeLists: Remove all redundant warnings
...
These are already explicitly or implicitly set in src/CMakeLists.txt
2022-10-22 15:02:04 -04:00
Kyle Kienapfel
40af1111c2
CMake: Try add library "LZ4::lz4_shared" if "lz4::lz4" is unavailable
...
Right now this looks like a distro specific problem, but we'll have to see.
Over on Gentoo: with lz4 1.9.3 there is a lz4::lz4 library target, with 1.9.4 it's no longer
mentioned in the cmake files provided by the package. (/usr/lib64/cmake/lz4)
arch and openSUSE have lz4 1.9.4 available so I checked there,
they only have .pc files for pkg-config, so asking for "lz4::lz4" works as usual
MSVC does require "lz4::lz4" to be asked for
2022-10-13 17:23:47 -07:00
Fernando Sahmkow
feb49c822d
NVDRV: Remake ASGPU
2022-10-06 21:00:52 +02:00
Fernando Sahmkow
b617874724
Common: implement MultiLevelPageTable.
2022-10-06 21:00:51 +02:00