mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Kyle Moffett <mrmacman_g4@mac.com>
To: Andi Kleen <ak@suse.de>
Cc: Adrian Bunk <bunk@stusta.de>,
	Roman Zippel <zippel@linux-m68k.org>,
	linux-kernel@vger.kernel.org
Subject: Re: Cleanup possibility in asm-i386/string.h
Date: Thu, 9 Feb 2006 20:00:44 -0500	[thread overview]
Message-ID: <CC2C8F34-4451-46B2-8887-15FF3D61AB41@mac.com> (raw)
In-Reply-To: <200602100123.36077.ak@suse.de>

On Feb 09, 2006, at 19:23, Andi Kleen wrote:
> On Friday 10 February 2006 01:05, Adrian Bunk wrote:
>> On Tue, Feb 07, 2006 at 01:39:50PM +0100, Roman Zippel wrote:
>>> Hi,
>>>
>>> On Tue, 7 Feb 2006, Andi Kleen wrote:
>>>
>>>>> This means you define a prototype for the builtin function and  
>>>>> not for the normal function. I'm not sure this is really intended.
>>>>
>>>> What good would be a prototype for a symbol that is defined to a  
>>>> different symbol?
>>>
>>> The point is you define a prototype for a builtin function, I'm  
>>> not sure that's a good thing to do. Actually I'd prefer to remove  
>>> -ffreestanding again, especially because it disables builtin  
>>> functions, which we have to painfully enable all again  one by  
>>> one, instead of leaving it just to gcc.
>>
>> I remember playing with using more gcc builtins in the kernel some  
>> time ago, and some gcc builtin used a different library function,  
>> which was a function the kernel did not supply.
>
> It works fine on x86-64. If something is missing it can be also  
> supplied.

I don't remember exactly, but I think the problem was something like  
this (even if not this exact case, it was similarly obscure):  If - 
ffreestanding was not specified, then the following code would  
generate an implicit call to memcpy() or some other library function.

struct a {
	[... large struct with lots of fields ...]
}

struct a first = { ..... };
[... more code ...];
struct a second = first; /* <== This line would generate implicit  
memcpy */

Cheers,
Kyle Moffett

--
Diplomacy involves walking softly and _carrying_ a big stick.   
Actually using the big stick means the diplomacy part failed.
   -- Rob Landley




  reply	other threads:[~2006-02-10  1:01 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-02-07 11:15 Andi Kleen
2006-02-07 12:00 ` Roman Zippel
2006-02-07 12:08   ` Andi Kleen
2006-02-07 12:39     ` Roman Zippel
2006-02-10  0:05       ` Adrian Bunk
2006-02-10  0:23         ` Andi Kleen
2006-02-10  1:00           ` Kyle Moffett [this message]
2006-02-10 13:02           ` Roman Zippel
2006-02-10 13:49             ` Andi Kleen
2006-02-10 14:46               ` Roman Zippel
2006-02-10 15:02                 ` Andi Kleen
2006-02-10  0:53         ` Roman Zippel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CC2C8F34-4451-46B2-8887-15FF3D61AB41@mac.com \
    --to=mrmacman_g4@mac.com \
    --cc=ak@suse.de \
    --cc=bunk@stusta.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=zippel@linux-m68k.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®