Liam
600f325d87
general: fix spelling mistakes
3 years ago
Liam
ed0319cfed
common/fiber: make fibers easier to use
4 years ago
Morph
99ceb03a1c
general: Convert source file copyright comments over to SPDX
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.
4 years ago
bunnei
8deaac8bd1
hle: kernel: Use std::mutex instead of spin locks for most kernel locking.
4 years ago
bunnei
f6de57c1a5
common: fiber: YieldTo: Avoid hard crash on nullptr previous_fiber.
- When the emulator crashes to desktop below, we don't even get this captured in a log, making such issues harder to debug.
4 years ago
MerryMage
59173ff7a7
fiber: Double default stack size
Stack overflow occurs with some guest applications
5 years ago
bunnei
8f7eb194af
common: Fiber: use a reference for YieldTo.
- Fixes another small leak.
5 years ago
bunnei
68ffac250a
common: fiber: Use weak_ptr when yielding.
- Avoids a memory leak, as taking a strong reference of the fiber here causes a circular reference.
- Supersedes #6006 with a more narrow fix.
5 years ago
bunnei
a5ab85ac37
Revert "core: Switch to unique_ptr for usage of Common::Fiber."
5 years ago
bunnei
51fb0a6f96
core: Switch to unique_ptr for usage of Common::Fiber.
- With using unique_ptr instead of shared_ptr, we have more explicit ownership of the context.
- Fixes a memory leak due to circular reference of the shared pointer.
5 years ago
bunnei
24cae76d16
common: fiber: Use VirtualBuffer for stack memory.
- This will be aligned by default, and helps memory usage.
5 years ago
bunnei
c042a89113
common: fiber: Use boost::context instead of native fibers on Windows.
5 years ago
Lioncash
00fb79b2f3
common/fiber: Move all member variables into impl class
Hides all of the implementation details for users of the class. This has
the benefit of reducing includes and also making the fiber classes
movable again.
5 years ago
Lioncash
4a4b685a04
common: Enable warnings as errors
Cleans up common so that we can enable warnings as errors.
5 years ago
ReinUsesLisp
cdb2480d39
common/fiber: Take shared_ptr<Fiber> by copy in YieldTo
YieldTo does not intend to modify the passed shared_ptrs.
Pass it by copy to keep a reference count while this function executes.
5 years ago
Fernando Sahmkow
2f8947583f
Core/Common: Address Feedback.
6 years ago
Fernando Sahmkow
e77ee67bfa
Common/Fiber: Address Feedback and Correct Memory leaks.
6 years ago
Fernando Sahmkow
b6655aa2e4
Common/Fiber: Implement Rewind on Boost Context.
6 years ago
Fernando Sahmkow
137d862d9b
Common/Fiber: Implement Rewinding.
6 years ago
Fernando Sahmkow
41013381d6
Common/Fiber: Additional corrections to f_context.
6 years ago
Fernando Sahmkow
7d2b1a6ec4
Common/Fiber: Correct f_context based Fibers.
6 years ago
Fernando Sahmkow
49a7e0984a
Core/HostTiming: Allow events to be advanced manually.
6 years ago
Fernando Sahmkow
1f7dd36499
Common/Tests: Address Feedback
6 years ago
Fernando Sahmkow
3398f701ee
Common: Make MinGW build use Windows Fibers instead of fcontext_t
6 years ago
Fernando Sahmkow
1bd706344e
Common/Tests: Clang Format.
6 years ago
Fernando Sahmkow
03e4f5dac4
Common: Correct fcontext fibers.
6 years ago
Fernando Sahmkow
be320a9e10
Common: Polish Fiber class, add comments, asserts and more tests.
6 years ago
Fernando Sahmkow
8d0e3c5422
Tests: Add tests for fibers and refactor/fix Fiber class
6 years ago
Fernando Sahmkow
bc266a9d98
Common: Implement a basic Fiber class.
6 years ago