This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Disable building with i386-*, -march=i386 or -mcpu=i386.


On 04/12/2013 04:25 PM, Roland McGrath wrote: 
>>> 3. Something involving --with-cpu.
>>
>> I like this better than compiler rules the roost.
> 
> Elaborate.

No need to, I agree with your argument about compiler rules the
roost given that it includes CC variants. I wasn't sure at the time
which is why I asked you for clarification.

>> If you agree about that my assumption about compiler rules the roost
>> also includes setting CC to compiler for a specific ABI/hardware
>> target then I would agree.
> 
> Since that is indeed what I meant, then I guess you agree, in which case
> you need not elaborate on your disagreement. ;-)

Yes :}

>> It has been a long long time since target ruled the roost, and the
>> target name is a fragile thing that unfortunately has been misused
>> or poorly used by users and developers. I don't see us recapturing
>> the use of target triplets for our purposes.
> 
> Agreed (with s/target/host/g since we're not a compiler).
> 
>>> We don't have the arch vs tune distinction in our submachine sysdeps
>>> layouts today.  We might consider adding that in some fashion.  For
>>> example, today some i386/foo.S and i386/i686/foo.S files don't differ
>>> in the set of instructions they use, just in tuning choices.
>>
>> Could expand your kernel of a thought here a little more? I don't quite
>> see what you mean by arch vs. tune distinction?
> 
> -march=i586 -mtune=i686 produces code that executes correctly on an i586 as
> well as an i686, but executes optimally only on an i686.  sysdeps/i386/i686
> contains some code that won't execute correctly on an i586, but mostly
> actually contains code that is just optimized for an i686.

OK, so what might we do here? Explain clearly that sysdeps/i386/i686 is
free to use instructions what would not work on i586? I figured that was
already true. Am I still missing the point?

Cheers,
Carlos.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]