b029fb598a
existing libunwind used '0' in lsda_encoding as 'not present,' whereas that is a valid encoding and does occur and would be ignored. a missing encoding is actually 0xff. The commit that addresses this is: commit 8d4b51028d1a12b58d616f4b605254a877caafcf Author: joerg <joerg> Date: Tue Mar 11 23:52:17 2014 +0000 0 is a valid LSDA encoding and can be seen in statically linked programs. Initialize lsdaEncoding to DW_EH_PE_omit and check for that value to decide whether a value should be decoded. more bugfixes are necessary. this update is up to: commit b1f513eedd332426d88acbb118b6e9070966dcb9 Author: joerg <joerg> Date: Wed May 14 22:13:36 2014 +0000 Lazy VFP processing works a lot better if the functions contain a return instruction.
21 lines
533 B
Makefile
21 lines
533 B
Makefile
# $NetBSD: Makefile.inc,v 1.5 2014/03/19 16:46:23 joerg Exp $
|
|
|
|
.PATH: ${NETBSDSRCDIR}/sys/lib/libunwind
|
|
|
|
SRCS+= libunwind.cxx \
|
|
unwind_registers.S
|
|
|
|
INCS+= unwind.h
|
|
|
|
.if ${HAVE_GCC:U48} == "4"
|
|
CLEANFILES+= cstdint
|
|
DPSRCS+= cstdint
|
|
|
|
cstdint:
|
|
echo '#include <stdint.h>' > ${.TARGET}
|
|
|
|
COPTS.libunwind.cxx+= "-D__builtin_unreachable()=abort()"
|
|
.else
|
|
COPTS.libunwind.cxx+= ${${ACTIVE_CXX} == "gcc":? -std=c++0x : -std=c++11 }
|
|
.endif
|
|
COPTS.libunwind.cxx+= -funwind-tables -fno-rtti -fno-exceptions -fvisibility=hidden -Wno-old-style-cast
|