Changeset 94404 in vbox for trunk/src/libs/openssl-3.0.2/crypto/async
- Timestamp:
- Mar 31, 2022 9:00:36 AM (3 years ago)
- svn:sync-xref-src-repo-rev:
- 150730
- Location:
- trunk/src/libs/openssl-3.0.2
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/libs/openssl-3.0.2
- Property svn:mergeinfo
-
old new 13 13 /vendor/openssl/1.1.1k:145841-145843 14 14 /vendor/openssl/3.0.1:150323-150324 15 /vendor/openssl/current:147554-150322 15 /vendor/openssl/3.0.2:150728-150729 16 /vendor/openssl/current:147554-150727
-
- Property svn:mergeinfo
-
trunk/src/libs/openssl-3.0.2/crypto/async/arch/async_posix.h
r94082 r94404 1 1 /* 2 * Copyright 2015-202 0The OpenSSL Project Authors. All Rights Reserved.2 * Copyright 2015-2022 The OpenSSL Project Authors. All Rights Reserved. 3 3 * 4 4 * Licensed under the Apache License 2.0 (the "License"). You may not use … … 26 26 # define ASYNC_ARCH 27 27 28 # if def __CET__28 # if defined(__CET__) || defined(__ia64__) 29 29 /* 30 30 * When Intel CET is enabled, makecontext will create a different … … 32 32 * use _longjmp. It must call swapcontext to swap shadow stack as 33 33 * well as normal stack. 34 * On IA64 the register stack engine is not saved across setjmp/longjmp. Here 35 * swapcontext() performs correctly. 36 */ 37 # define USE_SWAPCONTEXT 38 # endif 39 # if defined(__aarch64__) && defined(__clang__) \ 40 && defined(__ARM_FEATURE_BTI_DEFAULT) && __ARM_FEATURE_BTI_DEFAULT == 1 41 /* 42 * setjmp/longjmp don't currently work with BTI on all libc implementations 43 * when compiled by clang. This is because clang doesn't put a BTI after the 44 * call to setjmp where it returns the second time. This then fails on libc 45 * implementations - notably glibc - which use an indirect jump to there. 46 * So use the swapcontext implementation, which does work. 47 * See https://github.com/llvm/llvm-project/issues/48888. 34 48 */ 35 49 # define USE_SWAPCONTEXT
Note:
See TracChangeset
for help on using the changeset viewer.