ameerj
37ac7d7841
tests: Add ScratchBuffer tests
3 years ago
ameerj
ff76a433ab
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
80c173aba5
common: add make_unique_for_overwrite
3 years ago
Matías Locatti
7479b381fa
Enable compiler optimizations and enforce x86-64-v2 on GCC/Clang ( #9442 )
* Testing LTO (#4 )
* Testing LTO
* clang
* linux
* Added the rest of Blinkhawk's optimizations
* Unlikely asserts
* Removing LTO from Linux builds - GCC
* Removing LTO from Linux builds - Clang
3 years ago
Chloe Marcec
27a7d5a11a
Set: Allow setting device nickname
3 years ago
Liam
47a89280bf
memory: correct semantics of data cache management operations
3 years ago
Liam
292cc68b75
video_core: Integrate SMAA
Co-authored-by: goldenx86 <goldenx86@users.noreply.github.com>
Co-authored-by: BreadFish64 <breadfish64@users.noreply.github.com>
3 years ago
Liam
08d81c9726
general: improve handling of system startup failure
3 years ago
Alexandre Bouvier
325a016cd2
cmake: prefer system libraries
3 years ago
Liam
dfc09df118
core: add option to break on unmapped access
3 years ago
ameerj
fb155dbffc
CMake: Consolidate common PCH headers
3 years ago
ameerj
04a6ddddfb
string_util: Fix Mingw compile error
Co-Authored-By: liamwhite <9658600+liamwhite@users.noreply.github.com>
3 years ago
ameerj
bbf3e7f313
CMake: Use precompiled headers
3 years ago
Liam
acc4a150ef
video_core: add null backend
3 years ago
Lioncash
7c051067f6
common/cache_management: Amend header includes
Narrows the include in the header to <cstddef>, since that's what houses
size_t's definition, meanwhile the <cstdint> include can be moved into
the cpp file.
3 years ago
Lioncash
0862aabdc6
common/input: Add helpers functions for creating input and output devices
Avoids the redundancy of needing to explictly specify the common
namespace and the type.
3 years ago
Lioncash
c005d24e1e
common/input: Pass ParamPackage by const reference in CreateDevice
This was previously being passed by value, which was unnecessary and
created more allocations than necessary.
3 years ago
Matías Locatti
71055c8e90
Oops
3 years ago
Matías Locatti
492fabc9b2
Replace GLSL as the default OpenGL shader backend
GLASM is not very compatible with the latest games, and too many people have the special superpower to break their Vulkan support.
3 years ago
lat9nq
1c5379fef9
settings: Reset FSR sharpening global state with the others
3 years ago
Matías Locatti
8e19421f84
FSR Sharpening Slider part 1 - only a global slider
3 years ago
Liam
5a712bb51a
general: fix compile for Apple Clang
3 years ago
ameerj
19ca666e9f
Configuration: Add per-game input profiles
3 years ago
Kyle Kienapfel
d886438754
Add break for default cases
Visual Studio has an option to search all files in a solution, so I
did a search in there for "default:" looking for any missing break
statements.
I've left out default statements that return something, and that throw
something, even if via ThrowInvalidType. UNREACHABLE leads towards throw
R_THROW macro leads towards a return
3 years ago
Liam
10751ff536
common: add cache management functions
3 years ago
Matías Locatti
6b465c859b
Add CPU core count to log files
3 years ago
Liam
9509fb30a4
Initial ARM64 support
3 years ago
Enrico Mancuso
3efb76498a
Add break statement in default cases
According to the contributing page (https://github.com/yuzu-emu/yuzu/wiki/Contributing ) the default cases should have a break statement
default:
// Yes, even break for the last case
break;
3 years ago
Morph
89ace6c367
concepts: Use the std::contiguous_iterator concept
This also covers std::span, which does not have a const iterator.
Also renames IsSTLContainer to IsContiguousContainer to explicitly convey its semantics.
3 years ago
Morph
9a8db147b2
CMakeLists: Disable C4100 and C4324
Disabling C4100 is similar to -Wno-unused-parameter
3 years ago
Morph
dc61af8eb1
CMakeLists: Remove redundant warnings
These warnings are already included in /W3.
3 years ago
Morph
ea5b59b539
CMakeLists: Treat MSVC warnings as errors
3 years ago
Morph
9fba74d245
general: Enforce C4800 everywhere except in video_core
3 years ago
Morph
4bad20dc5f
CMakeLists: Remove all redundant warnings
These are already explicitly or implicitly set in src/CMakeLists.txt
3 years ago
german77
96881efdc3
input_common: cache vibration tests
3 years ago
Lioncash
d28572d4b8
fixed_point: Mark default constructor as constexpr
Ensures that a fixed-point value is always initialized
This likely also fixes several cases of uninitialized values being
operated on, since we have multiple areas in the codebase where the
default constructor is being used like:
Common::FixedPoint<50, 14> current_sample{};
and is then followed up with an arithmetic operation like += or
something else, which operates directly on FixedPoint's internal data
member, which would previously be uninitialized.
3 years ago
Lioncash
9cc6234265
fixed_point: Mark copy/move assignment operators and constructors as constexpr
Given these are just moving a raw value around, these can sensibly be
made constexpr to make the interface more useful.
3 years ago
Lioncash
278826ce5b
fixed_point: Mark std::swap and move constructor as noexcept
These shouldn't throw and can influence how some standard algorithms
will work.
3 years ago
Lioncash
3ba285f09e
fixed_point: Mark relevant member function [[nodiscard]]
Marks member functions as discard, where ignoring the return value would
be indicative of a bug or dead code.
3 years ago
Lioncash
62d3f2021b
fixed_point: Make to_uint() non-const
This calls round_up(), which is a non-const member function, so if a
fixed-point instantiation ever calls to_uint(), it'll result in a
compiler error.
This allows the member function to work.
While we're at it, we can actually mark to_long_floor() as const, since
it's not modifying any member state.
3 years ago
Lioncash
801b7a6652
fixed_point: Use defaulted comparisons
Collapses all of the comparison functions down to a single line.
3 years ago
Lioncash
3b07fadfe3
fixed_point: Use variable templates and concepts where applicable
Makes a few things a little less noisy and removes the need for SFINAE
in quite a few functions.
3 years ago
Morph
4b35f9e78e
fixed_point: Replace CONSTEXPR14 with constexpr
As we require the latest C++ standards to compile yuzu, checking for C++14 constexpr is not needed.
3 years ago
Morph
6a22ed905b
general: Add missing pragma once
3 years ago
Kyle Kienapfel
c16b8f5f59
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
Morph
98c792dbf4
settings: Update aspect_ratio range
Since 16:10 was added, the maximum value is now 4.
3 years ago
german77
36d02d1fc3
input_common: have an unique vector in callback status
3 years ago
Fernando Sahmkow
1595e77913
General: address feedback
4 years ago
Liam
d8009fb2d1
general: rework usages of UNREACHABLE macro
4 years ago
Morph
6a6b22b67d
address_space: Rename va_start to virt_start
Avoids conflicting with the va_start macro
4 years ago