t895
e7c4c8b993
android: Move JNI setup and helpers to common
2 years ago
Fernando Sahmkow
01ba6cf610
Common: Introduce Range Sets
2 years ago
Fernando Sahmkow
4841dc0b74
VideoCore: Move Slot Vector to Common
2 years ago
Liam
8f848f43e9
smmu: use new range mutex construction for protecting counters
2 years ago
Kelebek1
da410506a4
Move time services to new IPC.
Add some fixes/improvements to usage with the new IPC
2 years ago
Liam
ddda76f9b0
core: track separate heap allocation for linux
2 years ago
Alexandre Bouvier
d2bb9e9729
cmake: prefer system gamemode library
2 years ago
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)
2 years ago
Liam
5eec980a2d
general: conditionally compile gamemode on linux only
2 years ago
amazingfate
a76a8fb5fe
qt: add cpu_backend configuration
2 years ago
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
2 years ago
--author=Liam
29e7d79a86
common: Add free region manager
* Abstraction for placeholder region tracking in host_memory
2 years ago
GPUCode
20011dfeb8
common: Add libc sigaction hook
2 years ago
Alexandre Bouvier
79ba5d9c26
cmake: prefer system stb headers
2 years ago
Liam
21bc2c14bc
common: add arm64 native clock
2 years ago
Kelebek1
67e2d5c28b
Reimplement HardwareOpus
2 years ago
xcfrg
a02d641042
add a compile time option to allow disabling portable mode
2 years ago
Danila Malyutin
785e480b62
msvc: set warning level to /W4 globally
And fix a bunch of warnings
2 years ago
lat9nq
267f3c7905
settings: Cleanup
Addresses review feedback
Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com>
2 years ago
lat9nq
fdbeb84168
settings,uisettings: Remove leading underscore
3 years ago
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.
3 years ago
lat9nq
11e7e1b8ce
settings: Move some simple data to BasicSetting
Reduces the need for the compiler to duplicate this code, by about
100KB executable size.
3 years ago
lat9nq
04d4b6ab80
(ui,)settings: Use explicit instantiation
Reduces compile times a tad on clang.
3 years ago
lat9nq
88d3de4e85
settings: Split enums to new file
3 years ago
Morph
dd12dd4c67
x64: Deduplicate RDTSC usage
3 years ago
Liam
b19754c73f
common: link libandroid on android
3 years ago
bunnei
ef605f7d8f
android: Implement SAF support & migrate to SDK 31. ( #4 )
3 years ago
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>
3 years ago
Morph
9971cd1d55
common: Port boost's hash_value implementation
Ports a small subset of boost's hash_value implementation (<= 1.80.0).
3 years ago
Liam
fb49ec19c1
kernel: use KTypedAddress for addresses
3 years ago
Liam
d45ac00d48
kernel: avoid signed overflow UB on MSVC
3 years ago
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.
3 years ago
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.
3 years ago
Alexandre Bouvier
57fd8b1f45
cmake: use correct boost imported targets
3 years ago
Alexandre Bouvier
34b1ea9c19
cmake: prefer system llvm library
3 years ago
Kelebek1
ce0b8d618d
Move demangle impl to cpp
3 years ago
Kelebek1
80a55c1663
Add stacktrace symbol demangling
3 years ago
Fernando Sahmkow
18637766ef
MacroHLE: Reduce massive calculations on sizing estimation.
3 years ago
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.
3 years ago
ameerj
88ba5a7f22
common: add make_unique_for_overwrite
3 years ago
Liam
ed37192441
memory: correct semantics of data cache management operations
3 years ago
Alexandre Bouvier
8e17b5469f
cmake: prefer system libraries
3 years ago
ameerj
5b5612c1cc
CMake: Consolidate common PCH headers
3 years ago
ameerj
37bc5118ea
CMake: Use precompiled headers
3 years ago
Liam
70ea1c2000
common: add cache management functions
3 years ago
Morph
cae108404a
CMakeLists: Remove redundant warnings
These warnings are already included in /W3.
3 years ago
Morph
f3c40f4a20
CMakeLists: Treat MSVC warnings as errors
3 years ago
Morph
e6ab1f673b
general: Enforce C4800 everywhere except in video_core
3 years ago
Morph
93297d14d8
CMakeLists: Remove all redundant warnings
These are already explicitly or implicitly set in src/CMakeLists.txt
3 years ago
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
3 years ago