[LLVMdev] [compiler-rt] is the arm lib complete?

liangh at codeaurora.org liangh at codeaurora.org
Thu Nov 15 18:33:27 PST 2012


Hi,

I'm trying to link my objs with compiler-rt built runtime lib for arm.
According to the compiler-rt doc, it should be able to replace libgcc.
However, if I replace "-lgcc" with "compiler-rt.a" for a static linking,
gcc linker complains about undefined functions. Using "nm -g", I compared
the functions in libgcc and compiler-rt.full-arm.a and found there are
many missing functions in compiler-rt, such as "__aeabi_dcmpeq"
"__sync_lock_release_1" "_interwork_call_via_fp", etc.

Although I can use compiler-rt.a via using "-allow-multiple-definition" to
override libgcc, this is an ugly solution.

Anybody know how to fully replace libgcc with compiler-rt? Do I need to
link some other lib to totally replace libgcc when using compiler-rt, or
compiler-rt cannot fully replace libgcc yet? I know Apple is using
compiler-rt built runtime libs. How did they link?

Thanks.
-Liang




More information about the llvm-dev mailing list