Mark Roszko
2b3ad808ea
Add the BTI C hint to libcontext arm64
2023-11-01 15:53:11 +00:00
Ian McInerney
20ec8ed303
Fix GitLab URLs to point to the correct project page
...
GitLab 16.0 removes support for URLs that don't contain /-/ after the
repository name, so the report bug feature and various links we had in
the source (including the git-fixes script) would lead to a 404 error.
See GitLab docs for deprecation/removal notice:
https://docs.gitlab.com/ee/update/deprecations.html?removal_milestone=16.0#legacy-urls-replaced-or-removed
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/14759
2023-05-17 11:23:00 +01:00
Marek Roszko
ca770c79ab
Make libcontext build statically
...
Fixes an issue combining cpp and obj files explicitly on arm64
2023-04-10 21:22:04 -04:00
Marek Roszko
32a747374f
Fix the #ifdef for the release_fcontext stub
...
As if the if def hell was easy to read
2023-04-10 19:12:27 -04:00
Marek Roszko
726b137fed
Fix libcontext arm64 build and purge winfiber
...
The winfiber implementation ran into memory leak issues as it didnt exit the stack jumps correctly
and lets not mislead anyone by keeping it
2023-04-10 18:07:35 -04:00
Marek Roszko
b4bb1f4b46
update vcpkg to get the arm64 compatible packages
2023-03-10 21:23:09 -05:00
Marek Roszko
65818bd4a3
Add windows arm64 support
2023-03-10 21:19:56 -05:00
alexfanqi
01f0aad7c0
Add riscv64 support for libcontext
...
modified to match function arguments different from upstream
Author: Andreas Schwab
2022-01-27 13:12:43 +00:00
Peng Peng
b7ab5330bf
Adding the LoongArch CPU support for libcontext
2021-10-27 19:46:52 +00:00
Seth Hillbrand
62b7239ed1
Adjust M1 alignment for better performance
2021-10-18 13:27:08 -07:00
Mark Roszko
27bf45417a
Fix typo in arch name
2021-03-12 15:05:38 +00:00
Marek Roszko
db1f457ff9
Add msvc flag definition for ARM64
2021-03-10 21:48:04 -05:00
Marek Roszko
204e615b49
Fix wrong offset in msys2 x64 libcontext implementation not saving fiber data pointer
...
This should have/may have been causing random crashes on calls into win32 api. fiber data is located at offset 0x20 of the stack not 0x18.
2021-03-07 15:55:23 -05:00
Marek Roszko
ccaf352a5e
Add /safeseh for 32bit msvc libcontext
...
Special flag thats default for modern platforms already
2021-03-04 22:20:58 -05:00
Marek Roszko
2bf488e0c7
Add cmake option to enable win32 fibers
2021-03-04 21:48:26 -05:00
Marek Roszko
bdb141da0a
Fix fiber local storage offset (crashfix)
2021-03-03 21:14:17 -05:00
Marek Roszko
320b519278
Add assembly based libcontext implementation for MSVC builds
2021-03-03 21:14:17 -05:00
Jiajie Chen
ce8039c327
libcontext: Initial support for Apple Silicon
...
The assembly for apple_arm64 is adapted from linux_arm64 target with small modifications:
1. Re-enable FPU conditional save/restore as apple_x86_64 does
2. Workaround limitation in relocation in assembly for clang
2021-01-08 19:51:28 +00:00
Ian McInerney
580293c7fa
libcontext: Call exit instead of random memory address on MSW x86_64
...
The original call would jump to a meaningless low address on error,
but the upstream Boost context and 32bit version of this function
call exit to properly terminate the code when this error occurs.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6820
2020-12-23 23:40:56 +00:00
Marek Roszko
f9e379c82a
Minor format
2020-08-28 02:30:04 +00:00
Marek Roszko
cb013604a9
jump_fcontext should set the outValue of fiber being switched to rather the one being switched from
...
Fixes #5162
2020-08-28 02:30:04 +00:00
Marek Roszko
3b1f1f7b6a
Use CreateFiberEx instead of CreateFiber, ConvertThreadToFiberEx instead of ConvertThreadToFiber
...
- Allows specifying FIBER_FLAG_FLOAT_SWITCH to save FP registers (it doesnt by default on win32 but does on win64)
- Specify a commit stack size one byte less than the reserve stack size or else Windows rounds up to the nearest allocation size above the desired size
2020-08-28 02:30:04 +00:00
Seth Hillbrand
acf4756e73
Remove extraneous build warning
2020-07-25 14:10:53 -07:00
Tomasz Wlostowski
151b4e4e5e
libcontext: clean up own's shit when coroutine call is over (MSVC only)
2020-07-22 16:57:54 +02:00
Ian McInerney
792e841ecf
Update readme for libcontext
...
Provide the background for why this library exists
2020-01-07 20:55:15 +00:00
Ian McInerney
3342055af6
Remove section changes inside libcontext _asm calls
...
Changing the section like this in inline assembly
is not supported, and leads to issues because code
following the inline assembly macro ends up in the
wrong assembly section. This was causing linking
errors on gcc.
The files appear to be compiled so that the stack
isn't executable anyway, so we don't need to manually
create the section to say that.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93190
2020-01-07 18:53:35 +00:00
Ian McInerney
5c0656d97f
Move potrace and libcontext into thirdparty directory
...
Part of the cleanup in #3637
2019-12-28 18:17:55 +00:00