This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCHv2, MIPS] Add support for O32 FPXX and program header based ABI information
- From: Richard Sandiford <rdsandiford at googlemail dot com>
- To: "Joseph S. Myers" <joseph at codesourcery dot com>
- Cc: Matthew Fortune <Matthew dot Fortune at imgtec dot com>, Will Newton <will dot newton at linaro dot org>, Andrew Pinski <pinskia at gmail dot com>, Rich Fuhler <Rich dot Fuhler at imgtec dot com>, "macro\ at codesourcery dot com" <macro at codesourcery dot com>, "libc-alpha\ at sourceware dot org" <libc-alpha at sourceware dot org>
- Date: Tue, 03 Jun 2014 08:25:11 +0100
- Subject: Re: [PATCHv2, MIPS] Add support for O32 FPXX and program header based ABI information
- Authentication-results: sourceware.org; auth=none
- References: <6D39441BF12EF246A7ABCE6654B0235352F38D at LEMAIL01 dot le dot imgtec dot org> <Pine dot LNX dot 4 dot 64 dot 1405141549300 dot 16785 at digraph dot polyomino dot org dot uk> <6D39441BF12EF246A7ABCE6654B0235352FF45 at LEMAIL01 dot le dot imgtec dot org> <Pine dot LNX dot 4 dot 64 dot 1405142119340 dot 21615 at digraph dot polyomino dot org dot uk> <6D39441BF12EF246A7ABCE6654B0235353041B at LEMAIL01 dot le dot imgtec dot org> <Pine dot LNX dot 4 dot 64 dot 1405151517380 dot 3155 at digraph dot polyomino dot org dot uk> <6D39441BF12EF246A7ABCE6654B02353531C1D at LEMAIL01 dot le dot imgtec dot org> <Pine dot LNX dot 4 dot 64 dot 1405152012500 dot 911 at digraph dot polyomino dot org dot uk> <6D39441BF12EF246A7ABCE6654B02353532EB3 at LEMAIL01 dot le dot imgtec dot org> <Pine dot LNX dot 4 dot 64 dot 1405161523480 dot 18605 at digraph dot polyomino dot org dot uk> <87ppj2f9g6 dot fsf at talisman dot default> <Pine dot LNX dot 4 dot 64 dot 1406021726390 dot 19591 at digraph dot polyomino dot org dot uk> <87lhtf9pgq dot fsf at sandifor-thinkpad dot stglab dot manchester dot uk dot ibm dot com> <Pine dot LNX dot 4 dot 64 dot 1406022157570 dot 27099 at digraph dot polyomino dot org dot uk>
"Joseph S. Myers" <joseph@codesourcery.com> writes:
> On Mon, 2 Jun 2014, Richard Sandiford wrote:
>
>> > - are you saying there is some existing Solaris-style check somewhere
>> > (where?) that disallows such a combination from executing on hardware
>> > lacking the features for all of the objects, even if the relevant
>> > instructions are only executed conditionally? Or that some other
>> > combinations get disallowed at static link time?
>>
>> No, I was arguing that taking the superset was the right behaviour.
>> You seemed to be saying that we should allow -mmsa to be used for
>> individual objects without marking the linked output as -mmsa
>> (because the functions in the -mmsa input object might all be
>> protected by a runtime check for MSA).
>
> I'm talking about the overall effect for the toolchain as a whole: that it
> should allow building and running code using such runtime checks, without
> requiring it to use IFUNCs.
OK, but my point was that that AFAIK has never been the case for MIPS
when using command-line options. You have never been able to compile
a TU with -march=sb1, a TU with -mips64r2 and a TU with -march=octeon
and link them together. And I think there are good reasons for that.
Similarly if you link -mmdmx and -mno-mdmx code together you get an
-mmdmx output.
Personally I'm not convinced we should change the behaviour, but if we
did, I think we should do it consistently for all ISAs and ISA extensions
(whether from processor-specific extensions or ASEs). I don't think MSA
should be a special case.
Thanks,
Richard