unknown
2d755221e8
common/zstd_compression: Add Zstandard wrapper
2019-03-29 18:22:08 +01:00
unknown
8583ce229a
common: Link libzstd_static
2019-03-29 18:22:07 +01:00
unknown
27aac8d363
Addressed feedback
2019-03-29 18:12:42 +01:00
unknown
19f787cdea
gl_shader_disk_cache: Use better compression for transferable and precompiled shader disk chache files
2019-03-29 16:42:19 +01:00
unknown
96e14e0718
data_compression: Move LZ4 compression from video_core/gl_shader_disk_cache to common/data_compression
2019-03-29 16:42:19 +01:00
Fernando Sahmkow
1e7fd04059
Fixes and corrections on formatting.
2019-03-27 14:49:43 -04:00
Fernando Sahmkow
15307bc4d1
Fixes to multilevelqueue's iterator.
2019-03-27 14:34:33 -04:00
Fernando Sahmkow
19cec0236a
Use MultiLevelQueue instead of old ThreadQueueList
2019-03-27 14:34:32 -04:00
Fernando Sahmkow
10cedd8bd7
Implement intrinsics CountTrailingZeroes and test it.
2019-03-27 14:34:29 -04:00
Fernando Sahmkow
8c04ac69c5
Implement a MultiLevelQueue
2019-03-27 14:33:44 -04:00
bunnei
fabddcb962
Merge pull request #2256 from bunnei/gpu-vmm
...
gpu: Rewrite MemoryManager based on the VMManager implementation.
2019-03-22 18:41:12 -04:00
Lioncash
9d504a4f9b
common/bit_util: Fix bad merge duplicating the copy constructor
...
Introduced as a result of #2090 , we already define the copy constructor
further down below, so this isn't needed.
2019-03-20 23:48:37 -04:00
bunnei
2d7e3fe364
Merge pull request #2090 from FearlessTobi/port-4599
...
Port citra-emu/citra#4244 and citra-emu/citra#4599 : Changes to BitField
2019-03-20 23:44:20 -04:00
Lioncash
af52b092ef
common/uint128: Add missing header guard
2019-03-20 22:39:00 -04:00
Lioncash
b39d1b1beb
common/uint128: Add missing top-file source text
2019-03-20 22:38:25 -04:00
bunnei
fa405371ee
gpu: Rewrite virtual memory manager using PageTable.
2019-03-20 22:36:02 -04:00
bunnei
6f872bd580
gpu: Move GPUVAddr definition to common_types.
2019-03-20 22:36:02 -04:00
Lioncash
67bf0f88c4
common/CMakeLists: Amend boost dependency
...
When #2247 was created, thread_queue_list.h was the only user of
boost-related code, however #2252 moved the page table struct into
common, which makes use of Boost.ICL, so we need to add the dependency
to the common library's link interface again.
2019-03-20 21:42:13 -04:00
bunnei
0653cfa1a9
Merge pull request #2247 from lioncash/include
...
common/thread_queue_list: Remove unnecessary dependency on boost
2019-03-20 21:34:12 -04:00
bunnei
5840ce2950
core: Move PageTable struct into Common.
2019-03-16 22:05:40 -04:00
bunnei
2ad9af464a
Merge pull request #2129 from FernandoS27/cntpct
...
Correct CNTPCT from using CPU Cycles to using Clock Cycles
2019-03-16 21:58:59 -04:00
Lioncash
58312f2968
common/thread_queue_list: Remove unnecessary dependency on boost
...
We really don't need to pull in several headers of boost related
machinery just to perform the erase-remove idiom (particularly with
C++20 around the corner, which adds universal container std::erase and
std::erase_if, which we can just use instead).
With this, we don't need to link in anything boost-related into common.
2019-03-16 05:01:39 -04:00
bunnei
11ac277646
Merge pull request #2147 from ReinUsesLisp/texture-clean
...
shader_ir: Remove "extras" from the MetaTexture
2019-03-10 17:28:36 -04:00
Lioncash
b20657a36f
common/bit_field: Make BitField trivially copyable
...
This makes the class much more flexible and doesn't make performing
copies with classes that contain a bitfield member a pain.
Given BitField instances are only intended to be used within unions, the
fact the full storage value would be copied isn't a big concern (only
sizeof(union_type) would be copied anyways).
While we're at it, provide defaulted move constructors for consistency.
2019-03-07 17:05:44 -05:00
Lioncash
40167af31d
logging/backend: Make time_origin a class variable instead of a local static
...
Moves local global state into the Impl class itself and initializes it
at the creation of the instance instead of in the function.
This makes it nicer for weakly-ordered architectures, given the
CreateEntry() class won't need to have atomic loads executed for each
individual call to the CreateEntry class.
2019-03-02 14:44:24 -05:00
Lioncash
e52dbaf998
logging/backend: Move CreateEntry into the Impl class
...
This function is only ever used within this source file and makes it
easier to remove static state in the following change.
2019-03-02 14:44:24 -05:00
Lioncash
e59ae7210a
common/math_util: Move contents into the Common namespace
...
These types are within the common library, so they should be within the
Common namespace.
2019-02-27 03:38:39 -05:00
Lioncash
39eccc0286
common/vector_math: Move Vec[x] types into the Common namespace
...
These types are within the common library, so they should be using the
Common namespace.
2019-02-26 22:38:36 -05:00
Lioncash
63a8d9172f
common/quaternion: Move Quaternion into the Common namespace
...
Quaternion is within the common library, so it should be using the
Common namespace.
2019-02-26 22:31:17 -05:00
ReinUsesLisp
8a7efd22ec
shader/decode: Split memory and texture instructions decoding
2019-02-26 00:11:30 -03:00
tgsm
0db81dcf3b
Remove GCC version checks
...
Citra can't be compiled using GCC <7 because of required C++17 support, so these version checks don't need to exist anymore.
2019-02-24 15:24:06 +01:00
Fernando Sahmkow
f28935f37d
Corrections, documenting and fixes.
2019-02-16 16:52:24 -04:00
Fernando Sahmkow
435c39e867
Use u128 on Clock Cycles calculation.
2019-02-15 22:57:16 -04:00
Fernando Sahmkow
68927866e2
Implement 128 bits Unsigned Integer Multiplication and Division.
2019-02-15 22:55:31 -04:00
B3n30
b2636e4b03
Adressed review comments
2019-02-15 22:14:54 +01:00
B3n30
5334e20770
threadsafe_queue: Add WaitIfEmpty and use it in logging
2019-02-15 22:12:54 +01:00
bunnei
ec0b108910
Merge pull request #2113 from ReinUsesLisp/vulkan-base
...
vulkan: Add dependencies and device abstraction
2019-02-14 10:06:48 -05:00
fearlessTobi
8c9234f34c
Make bitfield assignment operator public
...
This change needs to be made to get the code compiling again. It was suggested after a conversation with Lioncash.
The conversation can be seen here: https://user-images.githubusercontent.com/20753089/45064197-b6107800-b0b2-11e8-9db8-f696299fb86a.PNG
2019-02-13 21:15:15 +01:00
Lioncash
15fc277325
threadsafe_queue: Use std::size_t for representing size
...
Makes it consistent with the regular standard containers in terms of
size representation. This also gets rid of dependence on our own
type aliases, removing the need for an include.
2019-02-12 22:39:53 -05:00
Lioncash
eb39267bc0
threadsafe_queue: Remove NeedSize template parameter
...
The necessity of this parameter is dubious at best, and in 2019 probably
offers completely negligible savings as opposed to just leaving this
enabled. This removes it and simplifies the overall interface.
2019-02-12 22:09:51 -05:00
ReinUsesLisp
0c7b5355c3
logging: Add Vulkan backend logging class type
2019-02-12 18:33:02 -03:00
ReinUsesLisp
0726b490dd
cmake: Fix title bar issue
2019-02-06 22:23:41 -03:00
Frederic L
bec5eeec31
cmake: Use CMAKE_COMMAND instead of "cmake"
...
Co-Authored-By: ReinUsesLisp <reinuseslisp@airmail.cc>
2019-02-06 22:23:41 -03:00
ReinUsesLisp
8b1a7aa19d
gl_shader_disk_cache: Invalidate shader cache changes with CMake hash
2019-02-06 22:20:57 -03:00
ReinUsesLisp
f75174d195
file_util: Add shader directory
2019-02-06 22:20:57 -03:00
Weiyi Wang
a2fa901591
common/bitfield: make it endianness-aware
2019-02-06 17:29:39 +01:00
Weiyi Wang
bed349ba51
common/swap: remove default value for swap type internal storage
...
This is compromise for swap type being used in union. A union has deleted default constructor if it has at least one variant member with non-trivial default constructor, and no variant member of T has a default member initializer. In the use case of Bitfield, all variant members will be the swap type on endianness mismatch, which would all have non-trivial default constructor if default value is specified, and non of them can have member initializer
2019-02-06 17:24:27 +01:00
Weiyi Wang
c3d5b4496b
common/swap: use template and tag for LE/BE specification
...
The tag can be useful for other type-generic templates like BitFields to forward the endianness specification
2019-02-06 17:24:13 +01:00
Weiyi Wang
3ab6c97fc7
common/swap: add swap template for enum
2019-02-06 17:21:15 +01:00
bunnei
25a218248a
Merge pull request #1928 from lioncash/caps
...
kernel: Handle kernel capability descriptors
2018-12-27 11:15:34 -05:00