| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Replaces all instances of ankerl's unordered map/set with boost's
`unordered_flat_*` classes. This uses std::hash since boost::hash is
actually a lot slower.
Also adds an abstraction layer in `Common` so future changes are quicker
and easier.
Other implementation details:
- ankerl provided hash specializations for tuple and pair, so those were
ported here
- std::erase_if doesn't work on boost, so just used the ADL'd erase_if
This should be about equal or superior performance as unordered_dense for everything except iteration.
Signed-off-by: crueter <crueter@eden-emu.dev>
- [x] I have read and followed the [Contribution Guidelines](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/CONTRIBUTING.md#code-contributions).
- [x] I have read and followed the [AI Policy](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/docs/policies/AI.md)
- [x] I have read and followed the [Coding Guidelines](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/docs/policies/Coding.md) to the best of my ability.
-------------------
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4326
Reviewed-by: Lizzie and Samuel <lizzie@eden-emu.dev>
Reviewed-by: MaranBr <maranbr@eden-emu.dev>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ankerl::unordered_dense::map/set variants (#3442)
mainly doing this to reduce memory footprint; we all know how nice ankerl::unordered_dense is
in theory 4x faster - in practice these maps arent that "hot" anyways so not likely to have much perf gained
i just want to reduce mem fragmentation to ease my porting process, plus it helps other platforms as well (ahem weak Mediatek devices) :)
Signed-off-by: lizzie <lizzie@eden-emu.dev>
Co-authored-by: Caio Oliveira <caiooliveirafarias0@gmail.com>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3442
Reviewed-by: DraVee <dravee@eden-emu.dev>
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com>
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
| |
This formats all copyright comments according to SPDX formatting guidelines.
Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
|
| | |
|
| |\
| |
| | |
input_common: Remove battery duplicated struct and update every button press
|
| | | |
|
| | |
| |
| |
| | |
This completes the removal of the old UUID implementation.
|
| |/ |
|
| |
|
|
|
| |
The default constructor of a UUID instance doesn't initialize the
underlying array.
|
| |
|
|
| |
Avoids creating unnecessary 168 byte copies per callback invocation.
|
| | |
|
| |
|
|
|
| |
We can make use of try_emplace() to insert values only if they don't
already exist.
|
| |
|
|
| |
These types are part of the InputCommon namespace.
|
| |
|
|
|
|
| |
TriggerOnMotionChange()
Copies the BasicMotion instance once instead of twice.
|
| |
|
|
| |
Avoids copies where reasonably applicable
|
| |
|
|
| |
Avoids creating copies of the struct where not necessary.
|
| |
|
|
|
| |
We can allow the name to be moved into, allowing allocations to be
avoided.
|
| |
|
|
|
| |
The callback map is a member variable, so this will always be empty on
initial construction.
|
| |
|
|
| |
Silences -Wextra-semi warnings
|
| |
|
|
| |
This is a void function, so it doesn't need this.
|
| | |
|
| |
|
|
| |
Fix compiler bug
|
| | |
|
| |
|
|
| |
start lion review
|
| | |
|
| | |
|
| |
|