Mai
f23e20a630
Merge pull request #9415 from liamwhite/dc
...
memory: correct semantics of data cache management operations
2022-12-11 21:09:31 +00:00
Mai
745d0d8bfc
Merge pull request #9416 from liamwhite/penicillin
...
cmake: enable faster linkers if available
2022-12-10 20:43:03 +00:00
Mai
70c9f6000d
Merge pull request #9417 from liamwhite/debug-assert
...
memory: remove DEBUG_ASSERT pointer test
2022-12-10 19:08:45 +00:00
Mai
c3857200a3
Merge pull request #9418 from liamwhite/implicitly-deleted
...
audio_core: remove explicitly defaulted and implicitly deleted constructors
2022-12-10 19:04:57 +00:00
Lioncash
1ad43e68da
configure_graphics: Make SPIRV backend string translatable
...
The parenthetical needs to be translatable, like with GLASM
2022-12-06 00:13:07 -05:00
Lioncash
6922ed4fad
reporter: Pass by const reference where applicable
...
Same behavior, but without memory churn.
2022-12-05 21:48:42 -05:00
Lioncash
97fd619312
reporter: Eliminate undefined behavior in SaveErrorReport
...
The optionals are unconditionally dereferenced when setting the custom
error text, and in a few cases this function is called using the default
value of the optionals.
This means we'd be dereferencing uninitialized storage.
Since they're used unconditionally, we can use value_or to set a default
when storage is uninitialized.
2022-12-05 21:31:34 -05:00
Lioncash
a3e4ad2cf5
applets/controller: Use aliases for callbacks
2022-12-05 19:06:04 -05:00
Lioncash
038b746678
applets/error: Use aliases for callbacks
2022-12-05 19:06:04 -05:00
Lioncash
a346b1270a
applets/mii_edit: Use aliases for callbacks
2022-12-05 19:06:04 -05:00
Lioncash
259307a152
applets/profile_select: Use aliases for callbacks
...
Deduplicates callback definitions and situates it in one place.
2022-12-05 19:06:04 -05:00
Lioncash
5012cd2057
applets/web_browser: Use aliases for callbacks
...
Deduplicates a lot of long callback declarations
2022-12-05 19:06:04 -05:00
Lioncash
047c256fe4
applets/software_keyboard: Use aliases for callbacks
...
Deduplicates really long std::function declarations to make the
interface nicer to read.
2022-12-05 19:06:01 -05:00
Lioncash
7a349e99ee
emulated_controller: Remove unused parameter in GetMappedDevices()
...
This isn't used, so it can be removed to make the function a little
nicer.
2022-12-05 18:27:18 -05:00
Lioncash
68d9621a8b
emulated_controller: Use std::move() in GetMappedDevices()
...
Avoids churning allocations in a loop.
2022-12-05 18:27:15 -05:00
Lioncash
1c9f02790c
emulated_console: Amend cast in SetTouch()
...
id is an int value, not a u32.
2022-12-05 18:15:23 -05:00
Lioncash
53eb9406f0
emulated_console: std::move() ParamPackages and callbacks where applicable
2022-12-05 18:15:19 -05:00
Lioncash
e3a192826f
CMakeLists: Remove version specifier for lz4
...
Currently the exported version of lz4 provided by vcpkg is malformed and
is "unknown". This makes querying for a specific version broken.
Fixes configuring CMake with the use of vcpkg.
2022-12-05 16:56:45 -05:00
Lioncash
7ed6f9d6fd
kernel/k_shared_memory: Ensure device_memory is always initialized
2022-12-05 15:27:57 -05:00
Lioncash
0435142f58
kernel/k_memory_block: Ensure members are always initialized
2022-12-05 15:27:47 -05:00
Lioncash
4c5de31093
kernel/physical_core: Ensure is_interrupted is always initialized
2022-12-05 15:19:37 -05:00
Lioncash
6fea145402
kernel/thread: Ensure stack_top and argument are always initialized
2022-12-05 15:19:36 -05:00
Lioncash
8b8320be4a
kernel/kernel: Ensure shutdown threads are always initialized
2022-12-05 15:19:36 -05:00
Mai
0dd3742763
Merge pull request #9381 from liamwhite/uninit
...
service_thread: fix uninitialized memory usage
2022-12-04 22:30:16 +00:00
Mai
5c30d15166
Merge pull request #9366 from zhaobot/tx-update-20221201025957
...
Update translations (2022-12-01)
2022-12-01 03:00:45 +00:00
Lioncash
225f5ba19f
host1x/syncpoint_manager: Eliminate unnecessary std::function construction
...
We can just pass the function object through, and if it's a valid
function, then it will automatically be converted.
2022-11-29 08:58:50 -05:00
Lioncash
b03305859e
host1x/syncpoint_manager: Pass DeregisterAction() handle as const-ref
...
The handle is only compared against and not modified in any way, so we
can pass it by const reference.
This also allows us to mark the respective parameters for
DeregisterGuestAction() and DeregisterHostAction() as const references
as well.
2022-11-29 08:55:33 -05:00
Lioncash
a3ed3c8340
maxwell_3d: Mark shifted value as unsigned
...
Otherwise this is technically creating a signed int result that gets
converted. Just a consistency change.
While we're in the area, we can mark Samples() as const.
2022-11-29 08:39:33 -05:00
Lioncash
0d9c723df4
engines: Remove unnecessary casts
...
In a few cases we have some casts that can be trivially removed.
2022-11-29 08:38:46 -05:00
Lioncash
789c33dc48
video_core/surface: Eliminate casts in GetFormatType()
...
We can just compare directly and get rid of verbose casting.
2022-11-28 20:25:44 -05:00
Lioncash
ccec899cd8
producer_listener: Add virtual destructor to IProducerListener
...
Several member variables are shared_ptr's to this base class. Even
though producer listeners are still unimplemented, this ensures we
always have consistent deletion behavior once this ends up being used
polymorphically.
2022-11-28 19:39:13 -05:00
Lioncash
93f287c79b
buffer_item_consumer: Pass fence by const-ref in ReleaseBuffer()
...
This isn't directly modified.
Also allows rvalues to be used with it.
2022-11-28 19:16:20 -05:00
Lioncash
7d9d432ff4
buffer_queue_consumer: std::move std::shared_ptr in Connect()
...
Avoids an unnecessary reference count increment and decrement
2022-11-28 19:12:26 -05:00
Lioncash
f5def4b9c5
consumer_base: Pass shared_ptr by const reference
...
Avoids churning atomic reference count increments and decrements.
2022-11-28 19:09:44 -05:00
Lioncash
bde42f6767
consumer_base: Remove redundant virtual
...
override already serves this purpose
2022-11-28 19:06:34 -05:00
Lioncash
eb1bdc5ed4
syncpoint_manager: Mark IsSyncpointAllocated() as const
...
This doesn't modify class state at all.
2022-11-28 16:08:21 -05:00
Lioncash
8409b91f2e
syncpoint_manager: Reduce number of bounds checks
...
The only time we need to check bounds is on the first access.
2022-11-28 16:06:01 -05:00
Lioncash
e621ee9ec6
nvdrv: Simplify builder declarations
...
We can just use auto here. If one of these ever happens to not be
derived from nvdevice, then this will cause a compilation error.
We can also move the devices into the collection to get rid of an
unnecessary atomic reference count increment and decrement.
2022-11-28 10:43:48 -05:00
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.
2022-11-28 10:19:53 -05:00
Lioncash
23e85d2d85
input_common/helpers: Mark analog property structs members as static constexpr
...
These are const with no dependency on any other data members, so we can
make these static constexpr to reduce the overall object size.
2022-11-28 10:10:37 -05:00
Lioncash
a9892677ed
core/hid/emulated_controller: Use ranges version of transform
...
Makes the transform calls much nicer to read.
2022-11-28 10:00:42 -05:00
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.
2022-11-28 10:00:37 -05:00
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.
2022-11-28 09:11:58 -05:00
Lioncash
72cfd9cb9b
yuzu/main: Merge variable declaration into ifdef
...
This is only used in the non-Windows path.
2022-11-28 08:40:41 -05:00
Lioncash
8c35c8c4a6
service: Make use of buffer element count helpers
2022-11-23 13:43:20 -05:00
Lioncash
ff19204dc6
hle_ipc: Add helper functions for getting number of buffer elements
2022-11-23 13:15:19 -05:00
Lioncash
ce329764a2
hle_ipc: Mark relevant member functions as [[nodiscard]]
...
Will allow the compiler to complain about cases where ignoring the
return value would be a bug.
2022-11-23 13:08:52 -05:00
Lioncash
71d5db9354
k_handle_table: Remove cast to void* in GetObjectForIpc
...
This was used to get around the KProcess class being incomplete. We can
just move this to the cpp file and eliminate the cast entirely, letting
the compiler do its work.
2022-11-22 13:58:42 -05:00
Mai
f2cd2e82ae
Merge pull request #9250 from v1993/patch-10
...
externals: microprofileui: Remove unused variables
2022-11-16 21:03:59 +00:00
Mai
6837ff99a8
Merge pull request #9247 from lat9nq/verbose-del-warn
...
configure_profile_manager: Use a custom dialog when deleting a profile
2022-11-16 02:26:20 +00:00
Mai
28aaaaf02e
Merge pull request #9231 from goldenx86/corecount
...
Add CPU core count to log files
2022-11-12 03:19:26 +00:00
Mai
09093559ae
Merge pull request #9180 from Docteh/remove_stuff
...
UI: split up strings relating to content removal
2022-11-11 00:42:40 +00:00
Mai
88bc773b13
Merge pull request #9217 from HidroSaphire/patch-1
...
Add break statement in default cases
2022-11-11 00:42:04 +00:00
Mai
6e1d939554
Merge pull request #9199 from liamwhite/service-oops
...
service_thread: fix deletion
2022-11-09 03:25:53 +00:00
Mai
fad55204fb
Merge pull request #9181 from jbeich/freebsd-qt-parity
...
Qt: enable recent Linux features on BSDs
2022-11-04 17:54:17 +00:00
Mai
7ff44a2454
Merge pull request #9178 from jbeich/freebsd-include
...
network: unbreak on BSDs due to missing include
2022-11-04 17:52:01 +00:00
Lioncash
a8b7993c88
audio_in/out_system: Pass Initialize members by value where applicable
...
applet_resource_user_id isn't actually modified and is just assigned to
a member variable, so this doesn't need to be a mutable reference.
Similarly, the device name itself isn't modified and is only moved. We
pass by value here, since we can still perform the move, but eliminate a
sneaky set of calls that can unintentionally destroy the original
string. Given how nested the calls are, it's good to get rid of this
potential vector for a use-after-move bug.
2022-10-26 11:21:48 -04:00
Mai
049bf101cd
Merge pull request #9131 from Morph1984/contiguous
...
concepts: Use the std::contiguous_iterator concept
2022-10-26 15:12:48 +00:00
Lioncash
47160b51fb
k_session_request: Add missing override specifier
2022-10-21 01:56:14 -04:00
Lioncash
4432989177
k_session_request: Turn C-style array into std::array
...
Makes for stronger typing and allows tooling bounds checks provided by
the standard library for debugging purposes.
2022-10-21 01:54:34 -04:00
Lioncash
6057b801cf
k_session_request: Simplify constructor initialization
2022-10-21 01:53:10 -04:00
Lioncash
32ce4a4821
hid/npad: Fix copy size in GetSupportedNpadIdTypes
...
Previously this was passing the size of the vector into memcpy rather
than the size in bytes to copy, which would result in a partial read.
Thankfully, this function isn't used yet, so this gets rid of a bug
before it's able to do anything.
2022-10-21 00:09:22 -04:00
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.
2022-10-18 16:06:50 -04:00
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.
2022-10-18 16:06:50 -04:00
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.
2022-10-18 16:06:50 -04:00
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.
2022-10-18 16:06:50 -04:00
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.
2022-10-18 16:06:50 -04:00
Lioncash
801b7a6652
fixed_point: Use defaulted comparisons
...
Collapses all of the comparison functions down to a single line.
2022-10-18 16:06:50 -04:00
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.
2022-10-18 16:06:46 -04:00
Mai
2abc9f5f3d
Merge pull request #9065 from liamwhite/result-mess
...
result: enforce reference check specialization
2022-10-13 19:54:10 +00:00
Mai
fba0cbc327
Merge pull request #9033 from liamwhite/stub-fsp
...
fsp_srv: stub GetCacheStorageSize
2022-10-08 16:33:13 -04:00
Mai
acdb716777
Merge pull request #9016 from liamwhite/drunken-schedule
...
vk_scheduler: wait for command processing to complete
2022-10-07 20:27:16 -04:00
Mai
94f9ffc111
Merge pull request #8932 from abouvier/cmake-pkgconfig
...
cmake: Fix FindPkgConfig
2022-10-07 20:25:51 -04:00
Mai
c78c3cb46c
Merge pull request #9030 from Morph1984/api-disable
...
configure_graphics: Fix graphics API selection when a game is running
2022-10-07 20:25:23 -04:00
Mai
ba07cb942b
Merge pull request #9004 from zhaobot/tx-update-20221001041028
...
Update translations (2022-10-01)
2022-10-01 07:37:24 -04:00
Lioncash
a260c09deb
sockets: Make fd member variable protected
...
Other things shouldn't be able to directly mess around with the
descriptor
2022-09-22 08:20:54 -04:00
Lioncash
17a8113847
audio_renderer: Make GetCommandBuffer() take a u32
...
This function is only ever called with unsigned types, and all of the
other interface functions take session_id as a u32, so this makes the
class a little more consistent.
2022-09-21 10:00:57 -04:00
Lioncash
b224cf3809
audio_manager: Forward declare result type
...
Moves the include into the cpp file to lessen header dependencies.
2022-09-21 09:43:59 -04:00
Lioncash
bf679951d1
audio_manager: Remove redundant cast in ThreadFunc()
...
We can just use a local here to get rid of a second cast.
2022-09-21 09:35:22 -04:00
Lioncash
d268f6fc9e
audio_manager: move std::functions in SetOutManager/SetInManager
...
Prevents unnecessary reallocations in the event the captured variables
are larger than the internal std::function buffer.
2022-09-21 09:32:15 -04:00
Lioncash
6ac5fbc81b
audio_manager: Remove unused forward declarations
...
Allows us to get rid of some unnecessary forward declarations and
includes.
2022-09-21 09:29:35 -04:00
Lioncash
d10f7af6cb
audio_manager: Remove unused sessions_started member variable
...
This isn't used, so it can be removed.
2022-09-21 09:28:05 -04:00
Lioncash
1019e52885
audio_manager: Remove dependence on system state
...
This isn't used by the class, so this can be removed for the time being.
2022-09-21 09:26:42 -04:00
Lioncash
98396de8f3
audio_renderer: Pass command buffer by const reference
...
This is just being copied and isn't modified at all.
2022-09-16 10:06:53 -04:00
Lioncash
d4623d8dc8
sink_stream: Mark GetQueueSize as const
2022-09-16 10:00:52 -04:00
Lioncash
80bcd1a873
node_states: Mark relevant member functions as const
2022-09-16 09:59:56 -04:00
Lioncash
f7da76494b
i3dl2/reverb: Mark relevant member functions as const
...
These two don't modify member state.
2022-09-16 09:58:49 -04:00
Lioncash
5629e0e145
behavior_info: Mark CopyErrorInfo as const
...
This doesn't modify member state.
We can also mark the parameter of AppendError as const as well, since it
isn't modified.
2022-09-16 09:55:17 -04:00
Lioncash
a66000f077
audio_device: Mark GetDeviceVolume as const
...
This doesn't modify instance state.
2022-09-16 09:52:34 -04:00
Lioncash
7ed5490b2f
audio_render_manager: Mark several functions as const
2022-09-16 09:50:32 -04:00
Lioncash
7ee4876f17
audio_in: Mark several functions as const
...
These functions don't modify class state, so we can mark them as such
2022-09-16 09:45:54 -04:00
Lioncash
1e6ce3d3c9
audio_out: Mark several functions as const
...
These don't affect class state, so we can mark them as such.
2022-09-16 09:45:51 -04:00
Lioncash
12b4a200e9
audio_buffers: Pass by const-ref in AppendBuffers
...
This function doesn't modify the passed in buffer, so we can make that
explicit.
2022-09-16 09:36:03 -04:00
Lioncash
f726bcbf56
device_session: Convert for loop into ranged for in AppendBuffers
...
Simplifies the indexing code a little bit.
2022-09-16 09:32:57 -04:00
Lioncash
0bf42e31e4
device_session: Pass arguments by const-ref in relevant functions
...
These functions don't modify the passed in audio buffers, so we can
signify that in the interface.
2022-09-16 09:31:33 -04:00
Lioncash
af8ce57e18
audio_core: Amend documentation tags
...
Resolves a wackload of -Wdocumentation warnings due to mismatching tags
and whatnot.
2022-09-15 09:47:23 -04:00
Mai
2163fc3eae
Merge pull request #8904 from liushuyu/fix-xbyak-linkage
...
common: do not link to xbyak on non-amd64 architectures
2022-09-15 09:44:57 -04:00
Lioncash
1747b5ae6c
audio_device: Mark member functions as const where applicable
...
These member functions don't modify any internal state.
2022-09-15 09:06:17 -04:00
Lioncash
0f1024b334
audio_device: Make AudioDeviceName constructor constexpr
...
These are used as read-only arrays, so we can make the data read-only
and available at compile-time.
Now constructing an AudioDevice no longer needs to initialize some
tables
2022-09-15 09:03:40 -04:00
Lioncash
b3c364d18b
compressor: Simplify memset in InitializeCompressorEffect
...
Provides equivalent behavior while being significantly smaller.
2022-09-13 13:34:58 -04:00