| author | |
| committer | |
| log | 894434988d96f3246e0525000f281563c1febb73 |
| tree | 9d8a872b308efc1c76f0a7adcf026b041083cb6d |
| parent | ed26b3204a3028fbc7d05a03b7e995d2f0de7a75 |
2 files changed, 5 insertions(+), 10 deletions(-)
lib/libunwind/src/gcc_personality_v0.c-10| ... | @@ -19,16 +19,6 @@ | ... | @@ -19,16 +19,6 @@ |
| 19 | #define compilerrt_abort() __builtin_unreachable() | 19 | #define compilerrt_abort() __builtin_unreachable() |
| 20 | 20 | ||
| 21 | #include <unwind.h> | 21 | #include <unwind.h> |
| 22 | #if defined(__arm__) && !defined(__ARM_DWARF_EH__) && \ | ||
| 23 | !defined(__USING_SJLJ_EXCEPTIONS__) | ||
| 24 | // When building with older compilers (e.g. clang <3.9), it is possible that we | ||
| 25 | // have a version of unwind.h which does not provide the EHABI declarations | ||
| 26 | // which are quired for the C personality to conform to the specification. In | ||
| 27 | // order to provide forward compatibility for such compilers, we re-declare the | ||
| 28 | // necessary interfaces in the helper to permit a standalone compilation of the | ||
| 29 | // builtins (which contains the C unwinding personality for historical reasons). | ||
| 30 | #include "unwind-ehabi-helpers.h" | ||
| 31 | #endif | ||
| 32 | 22 | ||
| 33 | // Pointer encodings documented at: | 23 | // Pointer encodings documented at: |
| 34 | // http://refspecs.freestandards.org/LSB_1.3.0/gLSB/gLSB/ehframehdr.html | 24 | // http://refspecs.freestandards.org/LSB_1.3.0/gLSB/gLSB/ehframehdr.html |
src/libunwind.zig+5| ... | @@ -81,7 +81,12 @@ pub fn buildStaticLib(comp: *Compilation) !void { | ... | @@ -81,7 +81,12 @@ pub fn buildStaticLib(comp: *Compilation) !void { |
| 81 | if (comp.bin_file.options.single_threaded) { | 81 | if (comp.bin_file.options.single_threaded) { |
| 82 | try cflags.append("-D_LIBUNWIND_HAS_NO_THREADS"); | 82 | try cflags.append("-D_LIBUNWIND_HAS_NO_THREADS"); |
| 83 | } | 83 | } |
| 84 | if (target.cpu.arch.isARM() and target.abi.floatAbi() == .hard) { | ||
| 85 | try cflags.append("-DCOMPILER_RT_ARMHF_TARGET"); | ||
| 86 | } | ||
| 84 | try cflags.append("-Wno-bitwise-conditional-parentheses"); | 87 | try cflags.append("-Wno-bitwise-conditional-parentheses"); |
| 88 | try cflags.append("-Wno-visibility"); | ||
| 89 | try cflags.append("-Wno-incompatible-pointer-types"); | ||
| 85 | 90 | ||
| 86 | c_source_files[i] = .{ | 91 | c_source_files[i] = .{ |
| 87 | .src_path = try comp.zig_lib_directory.join(arena, &[_][]const u8{unwind_src}), | 92 | .src_path = try comp.zig_lib_directory.join(arena, &[_][]const u8{unwind_src}), |