authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2020-12-24 13:31:41-07:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2020-12-24 13:31:41-07:00
log894434988d96f3246e0525000f281563c1febb73
tree9d8a872b308efc1c76f0a7adcf026b041083cb6d
parented26b3204a3028fbc7d05a03b7e995d2f0de7a75

libunwind: fix compile errors and warnings for 32-bit arm


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()
2020
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
3222
33// Pointer encodings documented at:23// Pointer encodings documented at:
34// http://refspecs.freestandards.org/LSB_1.3.0/gLSB/gLSB/ehframehdr.html24// 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");
8590
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}),