ReinUsesLisp
f15e087454
gl_state: Move initializers from constructor to class declaration
6 years ago
ReinUsesLisp
902431adce
maxwell_3d/kepler_compute: Remove unused arguments in GetTexture
6 years ago
ReinUsesLisp
cea1214e5a
video_core/textures: Remove unused index entry in FullTextureInfo
6 years ago
ReinUsesLisp
cf7206fe7b
maxwell_3d: Remove unused method GetStageTextures
6 years ago
Fernando Sahmkow
5305d723c2
Video_Core: Implement texture format E5B9G9R9_SHAREDEXP.
This commit implements the E5B9G9R9 Texture format into the general
system and OpenGL backend.
6 years ago
ReinUsesLisp
15a52a86bd
maxwell_3d: Silence implicit conversion warnings
While we are at it, unify types for dirty reg pointers.
6 years ago
ReinUsesLisp
2140a0cadd
astc: Silence implicit conversion warnings
6 years ago
Fernando Sahmkow
ab86995cb9
Shader_IR: Address Feedback.
6 years ago
Fernando Sahmkow
094fa9ec6c
Shader_IR: Clang format
6 years ago
ReinUsesLisp
aab971bda3
gl_shader_cache: Implement locker variants invalidation
6 years ago
ReinUsesLisp
c37c37d4a2
gl_shader_disk_cache: Store and load fast BRX
6 years ago
ReinUsesLisp
9e0cf6034f
const_buffer_locker: Minor style changes
6 years ago
ReinUsesLisp
063d3e22d6
gl_shader_decompiler: Move entries to a separate function
6 years ago
Fernando Sahmkow
fb98059d10
Shader_IR: Implement Fast BRX and allow multi-branches in the CFG.
6 years ago
Fernando Sahmkow
8081235ddd
Shader_IR: Correct typo in Consistent method.
6 years ago
Fernando Sahmkow
4168b287c9
Shader_IR: allow lookup of texture samplers within the shader_ir for instructions that don't provide it
6 years ago
Fernando Sahmkow
683008bc59
Shader_IR: Implement Fast BRX and allow multi-branches in the CFG.
6 years ago
Fernando Sahmkow
2baf1e1ed4
Shader_Cache: setup connection of ConstBufferLocker
6 years ago
Fernando Sahmkow
d4da704ac5
VideoCore: Unify const buffer accessing along engines and provide ConstBufferLocker class to shaders.
6 years ago
Fernando Sahmkow
7d24270b5f
Shader_IR: Implement BRX tracking.
6 years ago
Lioncash
f1443d2b41
shader_bytecode: Make Matcher constexpr capable
Greatly shrinks the amount of generated code for GetDecodeTable().
Collapses an assembly output of 9000+ lines down to ~3621 with Clang,
and 6513 down to ~2616 with GCC, given it's now allowed to construct all
the entries as a sequence of constant data.
6 years ago
Lioncash
1f2a584d55
shader_ir: Use std::array with pair instead of unordered_map
Given the overall size of the maps are very small, we can use arrays of
pairs here instead of always heap allocating a new map every time the
functions are called. Given the small size of the maps, the difference
in container lookups are negligible, especially given the entries are
already sorted.
6 years ago
Lioncash
0a71f5d6f4
video_core/shader: Resolve instances of variable shadowing
Silences a few -Wshadow warnings.
6 years ago
Fernando Sahmkow
fdf9bbf112
Shader_Ir: Fix TLD4S from using a component mask.
TLD4S always outputs 4 values, the previous code checked a component
mask and omitted those values that weren't part of it. This commit
corrects that and makes sure all 4 values are set.
6 years ago
ReinUsesLisp
9b7ec9d1a0
shader_ir/memory: Ignore global memory when tracking fails
Ignore global memory operations instead of invoking undefined behaviour
when constant buffer tracking fails and we are blasting through asserts,
ignore the operation.
In the case of LDG this means filling the destination registers with
zeroes; for STG this means ignore the instruction as a whole.
The default behaviour is still to abort execution on failure.
6 years ago
ReinUsesLisp
94d32c3cd2
maxwell_3d: Reduce FlushMMEInlineDraw logging to Trace
6 years ago
bunnei
2b9c7a7dfe
core: Fix clang-format errors.
6 years ago
Nicolae-Andrei Cociorba
47765b4d61
Fix null pointer deref.
6 years ago
Lioncash
4e7dbc49f8
video_core/shader/ast: Make ShowCurrentState() and SanityCheck() const member functions
These can also trivially be made const member functions, with the
addition of a few consts.
6 years ago
Lioncash
4f4bfa0448
video_core/shader/ast: Make ASTManager::Print a const member function
Given all visiting functions never modify the nodes, we can trivially
make this a const member function.
6 years ago
Lioncash
98d64c9a04
video_core/shader/ast: Make ExprPrinter members private
This member already has an accessor, so there's no need for it to be
public.
6 years ago
Lioncash
c5c0af5aa7
video_core/shader/ast: Make Indent() return a string_view
The returned string is simply a substring of our constexpr tabs
string_view, so we can just use a string_view here as well, since the
original string_view is guaranteed to always exist.
Now the function is fully non-allocating.
6 years ago
Lioncash
3025e2110c
video_core/shader/ast: Make Indent() private
It's never used outside of this class, so we can narrow its scope down.
6 years ago
Lioncash
4f14102a05
video_core/shader/ast: Rename Ident() to Indent()
This can be confusing, given "ident" is generally used as a shorthand
for "identifier".
6 years ago
Lioncash
1a00cb5680
video_core/shader/ast: Make use of fmt where applicable
Makes a few strings nicer to read and also eliminates a bit of string
churn with operator+.
6 years ago
Lioncash
c4a874f338
vk_shader_decompiler: Mark operator() function parameters as const references
These parameters aren't actually modified in any way, so they can be
made const references.
6 years ago
Lioncash
4a7d680a7f
dmnt_cheat_vm: Correct register Restore and ClearRegs behavior
Previously these were performing the same behavior as the Save and
ClearSaved opcode types.
6 years ago
Lioncash
1733d2604c
hid/npad: Fix incorrect connection boolean value in ConnectAllDisconnectedControllers()
We should be setting the connection state to true, otherwise we aren't
actually making the controllers connected like the function name
indicates.
6 years ago
Lioncash
29fddba52e
hid/npad: Add missing break in default case
While not an issue, it does prevent fallthrough from occurring if
anything is ever added after this case (unlikely to occur, but this
turns a trivial "should not cause issues" into a definite "won't cause
issues).
6 years ago
Lioncash
060b33cfbe
hid/npad: Replace std::for_each with ranged for loops
Performs the same behavior, but is built into the core language itself.
No functional change.
6 years ago
Lioncash
22e917cd8e
hid/npad: Remove redundant non-const variant of IsControllerSupported()
The const qualified variant can also be called in non-const contexts, so
we can remove the non-const variant to eliminate a bit of code
duplication.
6 years ago
Lioncash
98b277dfae
hid/npad: Move function declarations
Clearly separate these from the variable declarations to make them more
visible.
6 years ago
Lioncash
2be8e9de58
video_core/macro_interpreter: Make definitions of most private enums/unions hidden
This allows the implementation of these types to change without
requiring a rebuild of everything that includes the macro interpreter
header.
6 years ago
Lioncash
7c4a4b4fc1
core/core: Resolve -Wreorder warnings
Amends the initializer lists to be ordered in the same manner that
they're declared within the class.
6 years ago
Lioncash
2b7f82e089
core/memory/cheat_engine: Resolve -Wreorder warnings
Amends the initializer lists to be ordered in the same manner that
they're declared within the class.
6 years ago
Lioncash
76157b0b04
apm/controller: Make SetPerformanceConfiguration() use an array of pairs over a map
While a map is an OK way to do lookups (and usually recommended in most
cases), this is a map that lives for the entire duration of the program
and only deallocates its contents when the program terminates.
Given the total size of the map is quite small, we can simply use a
std::array of pairs and utilize std::find_if to perform the same
behavior without loss of performance.
This eliminates a static constructor and places the data into the
read-only segment.
While we're at it, we can also handle malformed inputs instead of
directly dereferencing the resulting iterator.
6 years ago
Lioncash
756203599e
apm/controller: Make GetCurrentPerformanceMode() a const member function
This doesn't modify instance state, so it can be made const qualified.
6 years ago
Lioncash
e08002310a
video_core/surface: Add missing break in PixelFormatFromTextureFormat()
Prevents fallthrough into the following case.
6 years ago
Lioncash
51f34a27e9
vk_shader_decompiler: Resolve fallthrough within ExprDecompiler's ExprCondCode operator()
This would previously result in NeverExecute and UnusedIndex being
treated as regular predicates.
6 years ago
Lioncash
304cee41c4
gl_shader_decompiler: Resolve fallthrough within ExprDecompiler's ExprCondCode operator()
This would previously result in NeverExecute and UnusedIndex being
treated as regular predicates.
6 years ago