Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 22 Jan 2016 21:43:25 -0800
From:      Mark Millard <markmi@dsl-only.net>
To:        freebsd-arm <freebsd-arm@freebsd.org>, FreeBSD Toolchain <freebsd-toolchain@freebsd.org>
Subject:   projects/clang380-import -r294609: arm buildworld broken by picking up -r294499's disable of clang.lib.mk -mlong-calls use
Message-ID:  <87D952A4-1EA6-4CD4-85DB-DE5696FB34B5@dsl-only.net>

next in thread | raw e-mail | index | archive | help
When I tried an rpi2 buildworld for clang380-import -r294609 it failed =
with =E2=80=9Crelocation truncated=E2=80=9D problems. (arm7-a cortex-a7 =
no misaligned accesses as my context.)

It looks like this is from picking up base/head=E2=80=99s -r294499 as =
part of forming -r294599 in clang380-import. -r294499 commented out =
having -mlong-calls in /usr/src/lib/clang/clang.lib.mk:

> # more /usr/src/lib/clang/clang.lib.mk
> # $FreeBSD: projects/clang380-import/lib/clang/clang.lib.mk 294599 =
2016-01-22 20:41:56Z dim $
>=20
> LLVM_SRCS=3D ${.CURDIR}/../../../contrib/llvm
>=20
> .include "clang.build.mk"
>=20
> INTERNALLIB=3D
>=20
> .if ${MACHINE_CPUARCH} =3D=3D "arm"
> # This will need to be enabled to link clang 3.8
> #STATIC_CXXFLAGS+=3D -mlong-calls
> .endif
>=20
> .include <bsd.lib.mk>


The script=E2=80=99s buildworld records show:

> --- all_subdir_clang ---
> =
/usr/obj/clang/arm.armv6/usr/src/usr.bin/clang/clang/../../../lib/clang/li=
bclangfrontendtool/libclangfrontendtool.a(ExecuteCompilerInvocation.o): =
In function =
`clang::ExecuteCompilerInvocation(clang::CompilerInstance*)':
> =
/usr/src/lib/clang/libclangfrontendtool/../../../contrib/llvm/tools/clang/=
lib/FrontendTool/ExecuteCompilerInvocation.cpp:(.text+0x98): relocation =
truncated to fit: R_ARM_CALL against symbol =
`llvm::sys::DynamicLibrary::getPermanentLibrary(char const*, =
std::__1::basic_string<char, std::__1::char_traits<char>, =
std::__1::allocator<char> >*)' defined in .text section in =
/usr/obj/clang/arm.armv6/usr/src/usr.bin/clang/clang/../../../lib/clang/li=
bllvmsupport/libllvmsupport.a(DynamicLibrary.o)
> =
/usr/src/lib/clang/libclangfrontendtool/../../../contrib/llvm/tools/clang/=
lib/FrontendTool/ExecuteCompilerInvocation.cpp:(.text+0x120): relocation =
truncated to fit: R_ARM_CALL against symbol =
`std::__1::basic_string<char, std::__1::char_traits<char>, =
std::__1::allocator<char> >::~basic_string()' defined in =
.text._ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev[=
_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED5Ev] =
section in =
/usr/obj/clang/arm.armv6/usr/src/tmp/usr/lib/libc++.a(string.o)
> =
/usr/src/lib/clang/libclangfrontendtool/../../../contrib/llvm/tools/clang/=
lib/FrontendTool/ExecuteCompilerInvocation.cpp:(.text+0x1c4): relocation =
truncated to fit: R_ARM_CALL against symbol =
`std::__1::basic_string<char, std::__1::char_traits<char>, =
std::__1::allocator<char> >::~basic_string()' defined in =
.text._ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev[=
_ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED5Ev] =
section in =
/usr/obj/clang/arm.armv6/usr/src/tmp/usr/lib/libc++.a(string.o)
> =
/usr/src/lib/clang/libclangfrontendtool/../../../contrib/llvm/tools/clang/=
lib/FrontendTool/ExecuteCompilerInvocation.cpp:(.text+0x224): relocation =
truncated to fit: R_ARM_CALL against symbol `operator new[](unsigned =
int)' defined in .text section in =
/usr/obj/clang/arm.armv6/usr/src/tmp/usr/lib/libc++.a(new.o)
> =
/usr/src/lib/clang/libclangfrontendtool/../../../contrib/llvm/tools/clang/=
lib/FrontendTool/ExecuteCompilerInvocation.cpp:(.text+0x238): relocation =
truncated to fit: R_ARM_CALL against symbol `memset' defined in .text =
section in /usr/obj/clang/arm.armv6/usr/src/tmp/usr/lib/libc.a(memset.o)
> =
/usr/src/lib/clang/libclangfrontendtool/../../../contrib/llvm/tools/clang/=
lib/FrontendTool/ExecuteCompilerInvocation.cpp:(.text+0x294): relocation =
truncated to fit: R_ARM_CALL against symbol =
`llvm::cl::ParseCommandLineOptions(int, char const* const*, char =
const*)' defined in .text section in =
/usr/obj/clang/arm.armv6/usr/src/usr.bin/clang/clang/../../../lib/clang/li=
bllvmsupport/libllvmsupport.a(CommandLine.o)
> =
/usr/src/lib/clang/libclangfrontendtool/../../../contrib/llvm/tools/clang/=
lib/FrontendTool/ExecuteCompilerInvocation.cpp:(.text+0x29c): relocation =
truncated to fit: R_ARM_CALL against symbol `operator delete[](void*)' =
defined in .text section in =
/usr/obj/clang/arm.armv6/usr/src/tmp/usr/lib/libc++.a(new.o)
> =
/usr/src/lib/clang/libclangfrontendtool/../../../contrib/llvm/tools/clang/=
lib/FrontendTool/ExecuteCompilerInvocation.cpp:(.text+0x2dc): relocation =
truncated to fit: R_ARM_CALL against symbol `operator delete(void*)' =
defined in .text section in =
/usr/obj/clang/arm.armv6/usr/src/tmp/usr/lib/libc++.a(new.o)
> =
/usr/src/lib/clang/libclangfrontendtool/../../../contrib/llvm/tools/clang/=
lib/FrontendTool/ExecuteCompilerInvocation.cpp:(.text+0x2f8): relocation =
truncated to fit: R_ARM_CALL against symbol `llvm::outs()' defined in =
.text section in =
/usr/obj/clang/arm.armv6/usr/src/usr.bin/clang/clang/../../../lib/clang/li=
bllvmsupport/libllvmsupport.a(raw_ostream.o)
> --- all_subdir_usr.sbin ---
> --- auditdistd.debug ---
> --- all_subdir_usr.bin ---
> =
/usr/src/lib/clang/libclangfrontendtool/../../../contrib/llvm/tools/clang/=
lib/FrontendTool/ExecuteCompilerInvocation.cpp:(.text+0x340): relocation =
truncated to fit: R_ARM_CALL against symbol `operator delete(void*)' =
defined in .text section in =
/usr/obj/clang/arm.armv6/usr/src/tmp/usr/lib/libc++.a(new.o)
> =
/usr/src/lib/clang/libclangfrontendtool/../../../contrib/llvm/tools/clang/=
lib/FrontendTool/ExecuteCompilerInvocation.cpp:(.text+0x348): additional =
relocation overflows omitted from the output

=3D=3D=3D
Mark Millard
markmi at dsl-only.net




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?87D952A4-1EA6-4CD4-85DB-DE5696FB34B5>