[LLVMdev] Prevent clang from replacing code with library calls

David Sela
Tue, 05 Aug 2014 07:01:03 -0000

Hi Jim,
I have tried "-fno-builtin" but it didn't help.
Thanks,
David


On Tue, Aug 5, 2014 at 12:12 AM, Jim Grosbach <grosbach at apple.com>
wrote:

> Hi David,
>
> "-fno-builtin” is probably what you want.
>
> -Jim
>
> On Aug 4, 2014, at 2:19 AM, David Sela <sela.david at gmail.com>
wrote:
>
> Clang optimizes code by replacing some parts with efficient library
> functions.
>
> For example the following code:
>
> for (i=0;i<size;++i)
>        dest[i]=src[i];
>
> will be compiled to (target=ARM assembly):
>
> bl      __aeabi_memcpy(PLT)
>
> The compile cmd:
>
> /usr/share/android-arm-l14-toolchain/bin/clang31 -cc1 -triple
> arm-none-linux-androideabi -S -target-abi aapcs-linux -target-cpu arm1022e
> -backend-option -arm-enable-ehabi -backend-option
> -arm-enable-ehabi-descriptors -backend-option -arm-ignore-has-ras
> -internal-isystem
> /usr/share/android-arm-l14-toolchain/lib/clang/3.1/include
> -internal-externc-isystem
> /usr/share/android-arm-l14-toolchain/bin/../sysroot/usr/include -o
> myMemcpy.s -x c myMemcpy.c
>
>
> Is there a flag or some other way to prevent the compiler from replacing
> the code with library calls?
>
>
> Thanks in advance,
> David
>
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<http://lists.llvm.org/pipermail/llvm-dev/attachments/20140805/96e949f1/attachment.html>