|
1 | | ---- trap-handler.h 2022-08-11 09:01:23.384000000 +0800 |
2 | | -+++ fixed-trap-handler.h 2022-08-11 09:09:15.352000000 +0800 |
3 | | -@@ -17,23 +17,7 @@ |
4 | | - namespace internal { |
5 | | - namespace trap_handler { |
6 | | - |
| 1 | +--- trap-handler.h |
| 2 | ++++ fixed-trap-handler.h |
| 3 | +@@ -18,43 +18,1 @@ |
7 | 4 | -// X64 on Linux, Windows, MacOS, FreeBSD. |
8 | 5 | -#if V8_HOST_ARCH_X64 && V8_TARGET_ARCH_X64 && \ |
9 | 6 | - ((V8_OS_LINUX && !V8_OS_ANDROID) || V8_OS_WIN || V8_OS_DARWIN || \ |
10 | 7 | - V8_OS_FREEBSD) |
11 | 8 | -#define V8_TRAP_HANDLER_SUPPORTED true |
12 | | --// Arm64 (non-simulator) on Mac. |
13 | | --#elif V8_TARGET_ARCH_ARM64 && V8_HOST_ARCH_ARM64 && V8_OS_DARWIN |
| 9 | +-// Arm64 native on Linux, Windows, MacOS. |
| 10 | +-#elif V8_TARGET_ARCH_ARM64 && V8_HOST_ARCH_ARM64 && \ |
| 11 | +- ((V8_OS_LINUX && !V8_OS_ANDROID) || V8_OS_WIN || V8_OS_DARWIN) |
14 | 12 | -#define V8_TRAP_HANDLER_SUPPORTED true |
| 13 | +-// For Linux and Mac, enable the simulator when it's been requested. |
| 14 | +-#if USE_SIMULATOR && ((V8_OS_LINUX && !V8_OS_ANDROID) || V8_OS_DARWIN) |
| 15 | +-#define V8_TRAP_HANDLER_VIA_SIMULATOR |
| 16 | +-#endif |
15 | 17 | -// Arm64 simulator on x64 on Linux, Mac, or Windows. |
| 18 | +-// |
| 19 | +-// The simulator case uses some inline assembly code, which cannot be |
| 20 | +-// compiled with MSVC, so don't enable the trap handler in that case. |
| 21 | +-// (MSVC #defines _MSC_VER, but so does Clang when targeting Windows, hence |
| 22 | +-// the check for __clang__.) |
16 | 23 | -#elif V8_TARGET_ARCH_ARM64 && V8_HOST_ARCH_X64 && \ |
17 | | -- (V8_OS_LINUX || V8_OS_DARWIN) |
| 24 | +- (V8_OS_LINUX || V8_OS_DARWIN || V8_OS_WIN) && \ |
| 25 | +- (!defined(_MSC_VER) || defined(__clang__)) |
| 26 | +-#define V8_TRAP_HANDLER_VIA_SIMULATOR |
| 27 | +-#define V8_TRAP_HANDLER_SUPPORTED true |
| 28 | +-// Loong64 (non-simulator) on Linux. |
| 29 | +-#elif V8_TARGET_ARCH_LOONG64 && V8_HOST_ARCH_LOONG64 && V8_OS_LINUX |
| 30 | +-#define V8_TRAP_HANDLER_SUPPORTED true |
| 31 | +-// Loong64 simulator on x64 on Linux |
| 32 | +-#elif V8_TARGET_ARCH_LOONG64 && V8_HOST_ARCH_X64 && V8_OS_LINUX |
| 33 | +-#define V8_TRAP_HANDLER_VIA_SIMULATOR |
| 34 | +-#define V8_TRAP_HANDLER_SUPPORTED true |
| 35 | +-// RISCV64 (non-simulator) on Linux. |
| 36 | +-#elif V8_TARGET_ARCH_RISCV64 && V8_HOST_ARCH_RISCV64 && V8_OS_LINUX && \ |
| 37 | +- !V8_OS_ANDROID |
| 38 | +-#define V8_TRAP_HANDLER_SUPPORTED true |
| 39 | +-// RISCV64 simulator on x64 on Linux |
| 40 | +-#elif V8_TARGET_ARCH_RISCV64 && V8_HOST_ARCH_X64 && V8_OS_LINUX |
18 | 41 | -#define V8_TRAP_HANDLER_VIA_SIMULATOR |
19 | 42 | -#define V8_TRAP_HANDLER_SUPPORTED true |
20 | 43 | -// Everything else is unsupported. |
21 | 44 | -#else |
22 | | - #define V8_TRAP_HANDLER_SUPPORTED false |
| 45 | +-#define V8_TRAP_HANDLER_SUPPORTED false |
23 | 46 | -#endif |
24 | | - |
25 | | - // Setup for shared library export. |
26 | | - #if defined(BUILDING_V8_SHARED) && defined(V8_OS_WIN) |
| 47 | ++#define V8_TRAP_HANDLER_SUPPORTED false |
0 commit comments