memcpy(a,b,CONST) is not inlined by gcc 3.4.1 in Linux kernel

Nathan Sidwell nathan@codesourcery.com
Tue Mar 29 15:42:00 GMT 2005


Denis Vlasenko wrote:

> Disassembly of section .text:
> 

>    e:   e8 fc ff ff ff          call   f <f3+0xf>
>                         f: R_386_PC32   memcpy

> #define memcpy(t, f, n) \
> (__builtin_constant_p(n) ? \
>  __constant_memcpy((t),(f),(n)) : \
>  __memcpy((t),(f),(n)))

given this #define, how can 'memcpy' appear in the object file?  It appears
that something odd is happening with preprocessing.  Check the .i files are
as you expect. -dD and -E options will be helpful to you.

nathan

-- 
Nathan Sidwell    ::   http://www.codesourcery.com   ::     CodeSourcery LLC
nathan@codesourcery.com    ::     http://www.planetfall.pwp.blueyonder.co.uk



More information about the Gcc mailing list