2
0
mirror of https://github.com/boostorg/context.git synced 2026-01-19 04:02:17 +00:00

1143 Commits

Author SHA1 Message Date
Oliver Kowalke
6ff80e0575 Merge pull request #319 from erikbs/feature/improve-configuration-for-PowerPC
CMakeLists: improve detection of PowerPC architectures
boost-1.90.0
2025-10-29 21:21:03 +01:00
Erik Bråthen Solem
3335e8510d Add additional checks to detect more PowerPC architecture name variants 2025-10-29 03:23:54 +01:00
Erik Bråthen Solem
557b8f6291 Fix detection of PowerPC architectures 2025-10-29 03:23:03 +01:00
Oliver Kowalke
18aae90bf4 Merge pull request #314 from crueter/fix/armasm
[cmake] don't apply assembler options to armasm
2025-09-24 16:35:43 +02:00
Oliver Kowalke
230d5fe5a2 Merge pull request #315 from vask2108/feature/windows-arm64-libs-context-changes
Add Windows ARM64 support
2025-09-24 08:23:34 +02:00
Vasanth Karanam
68ea30dfd7 Add Windows ARM64 support
Currently we do not have fcontext related ASM files for Windows ARM64.
So we can use winfib context-impl only for Windows ARM64.

Fixes issue : https://github.com/boostorg/boost/issues/1070
Related to PR: https://github.com/boostorg/boost/pull/1077
2025-09-23 20:44:35 +01:00
Vasanth Karanam
28722d1c8b Add Windows ARM64 support
Fixes issue : https://github.com/boostorg/boost/issues/1070
Related to PR: https://github.com/boostorg/boost/pull/1077
2025-09-23 20:37:38 +01:00
Oliver Kowalke
8fed94c031 Merge pull request #316 from boostorg/feature/gha-windows
Add Windows jobs to ci.yml
2025-09-23 18:20:25 +02:00
Peter Dimov
85c95310e8 Add Windows jobs to ci.yml 2025-09-09 22:10:23 +03:00
crueter
71153912f0 [cmake] don't apply assembler options to armasm
MSVC armasm doesn't support /nologo, /quiet etc. so let's just not apply
any options period.

Signed-off-by: crueter <crueter@eden-emu.dev>
2025-09-08 12:39:15 -04:00
Oliver Kowalke
e9a7b968ec Merge pull request #312 from zaydr-al/bti-aarch64-fix
[AArch64][BTI] Add BTI hint + GNU property to fcontext trampolines
2025-08-26 13:22:23 +02:00
Zayd Rajab
1be6822473 [AArch64][BTI] Add BTI hint + GNU property to fcontext trampolines (ELF/GAS)
The AArch64 fcontext trampolines (jump_fcontext, make_fcontext, ontop_fcontext)
are indirect-entry-points. On BTI-enforcing systems they must begin with a BTI
or the first resume can trap with SIGILL.

Insert `bti c` (hint #34) at each entry under `__ARM_FEATURE_BTI_DEFAULT`, and
emit `GNU_PROPERTY_AARCH64_FEATURE_1_BTI` from each AArch64 assembly file so
linkers map the DSO with PROT_BTI without requiring -z force-bti.

Scope: ELF/GAS AArch64 trampolines only; +4 bytes per entry

Fixes #308
2025-08-15 22:13:10 +00:00
Oliver Kowalke
f5deda1181 Merge pull request #307 from lowkeyrossi/WoA_fix
CMake: Set correct assembler for MSVC ARM targets
2025-07-31 14:24:29 +02:00
Oliver Kowalke
39a9bcfe16 Merge pull request #309 from carlo-bramini/fix-cygwin-build-1
[CMAKE] CYGWIN: set correct binfmt and abi
2025-07-31 09:49:45 +02:00
Carlo Bramini
480f09eb38 [CMAKE] CYGWIN: set correct binfmt and abi
Compiling on CYGWIN prints this error:

[  4%] Building ASM-ATT object libs/context/CMakeFiles/boost_context.dir/src/asm/make_x86_64_sysv_elf_gas.S.o
/usr/bin/as: unrecognized option `-x'
make[2]: *** [libs/context/CMakeFiles/boost_context.dir/build.make:78: libs/context/CMakeFiles/boost_context.dir/src/asm/make_x86_64_sysv_elf_gas.S.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:3961: libs/context/CMakeFiles/boost_context.dir/all] Error 2
make: *** [Makefile:156: all] Error 2

This PR fixes the right assembly sources to build because sysv and elf are nonsense on CYGWIN.
After this patch, it correctly searches make_x86_64_ms_pe_gas.asm, although it still raises an error because unrecognized -x option.
2025-07-30 13:18:38 +02:00
newyork_loki
8b19d4f5e7 CMake: Set correct assembler for MSVC ARM targets 2025-07-10 18:15:18 +05:30
Oliver Kowalke
3af0091efa Merge pull request #303 from NaN-git/fix-#302
restore exception state after destruction of fiber
boost-1.90.0.beta1 boost-1.89.0
2025-05-25 16:34:41 +02:00
Oliver Kowalke
d6c1beb80b Merge pull request #305 from tkoecker/patch-1
fix build of ontop_sparc64_sysv_elf_gas.S
2025-05-25 16:30:46 +02:00
Oliver Kowalke
6ea12b1d30 Merge pull request #304 from grafikrobot/patch-1
Fix building with clang-win 32 bit.
2025-05-25 16:30:11 +02:00
tkoecker
12280a8b2b fix build of ontop_sparc64_sysv_elf_gas.S
Fix the symbol names used for .size
2025-05-16 12:35:25 +02:00
René Ferdinand Rivera Morell
3378976432 Add safeseh to clang-win building.
As an alternative msvc compiler the clang-win toolset needs the same seh flags.
2025-05-15 22:47:13 -05:00
René Ferdinand Rivera Morell
d65aff9e2d Test address model 32 for clang-cl. 2025-05-15 22:01:06 -05:00
Philipp Otterbein
c79564d0de restore exception state after destruction of fiber 2025-05-10 03:27:05 +02:00
Oliver Kowalke
3847230000 Merge pull request #300 from striezel-stash/fix-typos
Fix several typos
2025-05-02 06:49:43 +02:00
Oliver Kowalke
e3ab83ea8f Merge pull request #301 from striezel-stash/ci-ubuntu-20.04-deprecation
Remove Ubuntu 20.04 build from CI
2025-05-02 06:49:03 +02:00
Dirk Stolle
916eacab37 Remove Ubuntu 20.04 build from CI
The Ubuntu 20.04 image on GitHub Actions has been unavailable
since 2025-04-15. See <https://github.com/actions/runner-images/issues/11101>
for more information on the deprecation and removal.

Therefore all build jobs that use the Ubuntu 20.04 runner image
of GHA will fail and have to be replaced or removed.
2025-05-01 23:32:22 +02:00
Dirk Stolle
1775cebd4f Fix several typos 2025-05-01 23:26:37 +02:00
Oliver Kowalke
64630f7285 Merge pull request #299 from elfprince13/patch-1
Support gcc when building ASM on Darwin
2025-04-18 21:40:56 +02:00
Thomas Dickerson
35ddf2103e Support gcc when building ASM on Darwin
Parallel to #178 but for aarch64 instead of x86_64
2025-04-17 12:00:53 -04:00
Oliver Kowalke
ef39a898d3 Merge pull request #294 from Challanger524/fix_clang-cl_masm_combo
Fix `clang-cl` `MSVC` frontend received `GNU` flag on assembling
2025-04-17 06:22:19 +02:00
Daniil
628cefe0ca Fix clang-cl MSVC frontend received GNU flag on assembling 2025-02-22 20:38:31 +02:00
Oliver Kowalke
afd2ce3372 Merge pull request #291 from CBBBrother/fix_x86_64_tls_stack_protector
fix tls stack protector on x86_64
boost-1.88.0
2025-02-21 14:57:43 +01:00
Oliver Kowalke
0d9576592b Merge pull request #290 from ashtum/suppress-unused-variable-warning
Suppressed unused variable warning in fiber_fcontext.hpp
2025-02-21 14:56:11 +01:00
Oliver Kowalke
1fd62abbf4 Merge pull request #288 from Challanger524/suppress-odd-build-output
Suppress build: `masm` logo and `clang` warning argument unused during compilation
2025-02-21 14:55:45 +01:00
CBBBrother
7f5f436c0f fix tls staack protector on x86_64 2025-02-17 15:00:57 +03:00
Mohammad Nejati
618d7e0ae4 Suppressed unused variable warning in fiber_fcontext.hpp 2025-02-11 15:52:40 +00:00
Daniil
f6726cc39d Suppress build: masm logo and clang warning argument unused during compilation 2025-01-30 16:36:14 +02:00
Oliver Kowalke
8bf61aee56 Merge pull request #285 from anarthal/feature/remove-unused-warning
Suppressed unused variable warning in fiber_fcontext.hpp
2025-01-24 17:05:44 +01:00
Ruben Perez
cef5372547 Suppressed unused variable warning in fiber_fcontext.hpp
close #284
2025-01-24 15:55:59 +01:00
Oliver Kowalke
1cfab7798b Merge pull request #283 from iv-m/fix-loonarch64-build
Fix ABI detection for empty 'os.platform'
2025-01-24 05:47:12 +01:00
Ivan A. Melnikov
63996e427b Fix ABI detection for empty 'os.platform'
`in` operator in bjam always returns true if its first
argument has no elements[1]. This means that if `os.platform`
is empty (not detected), the construction introduced
in commit 9084161b87 sets
ABI to `aapcs` on all platforms where `os.platform` is
empty, including, e.g. loongarch64, and breaks build there.

This commit refactors the condition to use '=' operator,
to make sure that when `os.platform` is empty we get
the default ABI value, and thus fixes build on loongarch64.

See also 819c2d6423 for
similar fix that was somehow lost in refactorings. This
time a comment is added near the condition in hope
that future edits will not reintroduce the issue.

[1] https://www.boost.org/doc/libs/1_83_0/tools/build/doc/html/index.html#jam.language.flow_of_control

Fixes: 9084161b87
2025-01-23 15:39:21 +04:00
Oliver Kowalke
bf043e3baf Merge pull request #281 from nat-goodspeed/nat/fsx-libstdc++
On libstdc++, fiber_fcontext.hpp sets fiber-specific exception state.
2025-01-14 12:52:32 +01:00
Nat Goodspeed
53b175512c On libstdc++ fiber_fcontext.hpp sets fiber-specific exception state. 2025-01-13 11:32:26 -05:00
Peter Dimov
160bfe00f9 Update ci.yml 2025-01-07 16:50:36 +02:00
Peter Dimov
d11cbccc87 Merge pull request #280 from grisumbras/fix/feature-context-impl
move context-impl feature into a module
2025-01-07 16:39:38 +02:00
Dmitry Arkhipov
12ac945158 move context-impl feature into a module
This is now necessary to allow users to set it from the command line.
2025-01-07 16:11:34 +03:00
Oliver Kowalke
e4c91576d2 Merge pull request #277 from larskanis/fix-arm64-docs
Fix mistakes in documentation on Arm64 on Windows
2024-12-26 08:14:02 +01:00
Oliver Kowalke
fa35c154f7 Merge pull request #276 from MehdiChinoune/patch-1
Support building assembly files for mingw-w64 on arm64 with CMake.
2024-12-26 08:13:22 +01:00
Oliver Kowalke
b58fd91ac3 Merge pull request #275 from Windows-on-ARM-Experiments/mingw-arm-asm
Define assembler files for ARM64 + Windows + GCC combination
2024-12-26 08:12:42 +01:00
Oliver Kowalke
1bec595a07 Merge pull request #270 from Lastique/feature/fix_shadowstack_syscall
Fix shadowstack syscall number redefinition
2024-12-26 08:09:06 +01:00