https://bugs.llvm.org/show_bug.cgi?id=35922
Bug ID: 35922
Summary: Link error: undefined reference to `__mulodi4' with
Clang 32-bit (x86-64 works)
Product: new-bugs
Version: 4.0
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: new bugs
Assignee: unassignedb...@nondot.org
Reporter: lukebe...@hotmail.com
CC: llvm-bugs@lists.llvm.org
The following commit
https://cgit.freedesktop.org/libreoffice/core/commit/?id=4f0b226600fdad4e5aef9313fe8754c765cfee42
causes the following error:
/core/workdir/CxxObject/tools/source/generic/fract.o: In function
`Fraction::operator*=(Fraction const&)':
/core/tools/source/generic/fract.cxx:(.text+0x695): undefined reference to
`__mulodi4'
/core/tools/source/generic/fract.cxx:(.text+0x70a): undefined reference to
`__mulodi4'
[build CXX] svl/source/config/asiancfg.cxx
clang-5.0: error: linker command failed with exit code 1 (use -v to see
invocation)
/core/tools/Library_tl.mk:20: recipe for target
'/core/instdir/program/libtllo.so' failed
make[1]: *** [/core/instdir/program/libtllo.so] Error 1
The problem is this code:
#elif (defined __GNUC__ && __GNUC__ >= 5) ||
(__has_builtin(__builtin_mul_overflow))
template<typename T> inline bool checked_multiply(T a, T b, T& result)
{
return __builtin_mul_overflow(a, b, &result);
}
Steps to reproduce on with 32-bit clang machine:
1. $ git clone git://anongit.freedesktop.org/libreoffice/core
2. $ apt-get build-dep libreoffice
3. create file autogen.input with CC=clang and CXX=clang++
4 ./autogen.sh && make ENVCFLAGS="-mllvm -no-x86-call-frame-opt"
ENVCFLAGSCXX="-mllvm -no-x86-call-frame-opt"
--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs