[ 
https://issues.apache.org/jira/browse/IMPALA-12563?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17792171#comment-17792171
 ] 

ASF subversion and git services commented on IMPALA-12563:
----------------------------------------------------------

Commit 0d21776502538ca2ea861825f7168daa60a1e0d4 in impala's branch 
refs/heads/master from Michael Smith
[ https://gitbox.apache.org/repos/asf?p=impala.git;h=0d2177650 ]

IMPALA-12563: Fix UBSAN on ARM

Links gcc after all other libraries when building with UBSAN. On ARM,
several symbols are included that aren't present in libclang_rt (enabled
by -rtlib=compiler-rt for UBSAN builds) or in libgcc_s.so (needed with
the alternate rtlib); linking libgcc.a after all other libraries ensures
the symbols are present. There may be other repercussions, so this is
only done for UBSAN builds.

Skips FE tests with UBSAN on ARM due to increased use of thread-local
storage on ARM that exceeds some implementation-defined limit.
Setting '-XX:ThreadStackSize=16m' didn't help.

Change-Id: I799bedd1cc73c852b0edb928dc71166e534918ba
Reviewed-on: http://gerrit.cloudera.org:8080/20721
Reviewed-by: Michael Smith <[email protected]>
Tested-by: Michael Smith <[email protected]>


> ARM UBSAN build fails with undefined reference to aarch symbols
> ---------------------------------------------------------------
>
>                 Key: IMPALA-12563
>                 URL: https://issues.apache.org/jira/browse/IMPALA-12563
>             Project: IMPALA
>          Issue Type: Task
>            Reporter: Michael Smith
>            Assignee: Michael Smith
>            Priority: Major
>             Fix For: Impala 4.4.0
>
>
> Building with UBSAN on ARM fails with
> {code}
> /data/jenkins/workspace/impala-private-basic-parameterized/Impala-Toolchain/toolchain-packages-gcc10.4.0/glog-0.3.5-p3/lib/libglog.a(libglog_la-raw_logging.o):raw_logging.cc:function
>  google::RawLog__(int, char const*, int, char const*, ...): error: undefined 
> reference to '__aarch64_cas1_sync'
> /data/jenkins/workspace/impala-private-basic-parameterized/Impala-Toolchain/toolchain-packages-gcc10.4.0/protobuf-3.14.0-clangcompat-p2/lib/libprotobuf.a(common.o):common.cc:function
>  google::protobuf::LogSilencer::LogSilencer(): error: undefined reference to 
> '__aarch64_ldadd4_acq_rel'
> /data/jenkins/workspace/impala-private-basic-parameterized/Impala-Toolchain/toolchain-packages-gcc10.4.0/protobuf-3.14.0-clangcompat-p2/lib/libprotobuf.a(common.o):common.cc:function
>  google::protobuf::LogSilencer::~LogSilencer(): error: undefined reference to 
> '__aarch64_ldadd4_acq_rel'
> /data/jenkins/workspace/impala-private-basic-parameterized/Impala-Toolchain/toolchain-packages-gcc10.4.0/protobuf-3.14.0-clangcompat-p2/lib/libprotobuf.a(arena.o):arena.cc:function
>  google::protobuf::internal::ArenaImpl::Init(bool): error: undefined 
> reference to '__aarch64_ldadd8_relax'
> /data/jenkins/workspace/impala-private-basic-parameterized/Impala-Toolchain/toolchain-packages-gcc10.4.0/protobuf-3.14.0-clangcompat-p2/lib/libprotobuf.a(arena.o):arena.cc:function
>  google::protobuf::internal::ArenaImpl::NewBuffer(unsigned long, unsigned 
> long): error: undefined reference to '__aarch64_ldadd8_relax'
> /data/jenkins/workspace/impala-private-basic-parameterized/Impala-Toolchain/toolchain-packages-gcc10.4.0/protobuf-3.14.0-clangcompat-p2/lib/libprotobuf.a(arena.o):arena.cc:function
>  google::protobuf::internal::ArenaImpl::GetSerialArenaFallback(void*): error: 
> undefined reference to '__aarch64_cas8_rel'
> clang-5.0: error: linker command failed with exit code 1 (use -v to see 
> invocation)
> {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to