public inbox for gentoo-dev@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Michał Górny" <mgorny@gentoo.org>
To: gentoo-dev@lists.gentoo.org
Cc: mips@gentoo.org, gentoo-mips@lists.gentoo.org
Subject: Re: [gentoo-dev] Monthly mips@ project status for April 2018
Date: Mon, 02 Apr 2018 22:32:28 +0200	[thread overview]
Message-ID: <1522701148.21713.5.camel@gentoo.org> (raw)
In-Reply-To: <84e8aeb1-797e-a727-abe8-232dfc02d4af@gentoo.org>

W dniu pon, 02.04.2018 o godzinie 13∶27 -0400, użytkownik Joshua Kinard
napisał:
> On 4/2/2018 5:41 AM, Michał Górny wrote:
> > W dniu nie, 01.04.2018 o godzinie 20∶40 -0700, użytkownik Matt Turner
> > napisał:
> > 
> > > My plan is to add stable 17.0 mips profiles when the keywording is
> > > sorted out and kill two birds with one stone.
> > 
> > Does it involve fixing the CHOST inconsistency so that we can finally
> > get LLVM keyworded?
> 
> Bug #515694, right?  Based on a very quick re-read, there are two
> issues/blockers here:
> 
> 1) Current Gentoo/MIPS support was originally based on gcc, thus, we've used
> CHOST tuples that are recognized by gcc.

As far as I'm aware GCC doesn't really care about which triplet is used.
It's all controlled by --with-abi= option (I may have mistyped its
name).

> 2) clang lacks a CHOST tuple that defaults to n32.  n32 is the "ideal" ABI for
> a 64-bit platform that doesn't need full 64bit (n64) binary support.
> 
> As far as I can tell, we need to fix #2 before we can do anything about #1.
> Once clang has a discrete CHOST tuple for n32, that'll put it on parity with
> gcc, which itself appears to have a batch of more specific tuples to select
> different ABIs.  You might want to just push upstream any patches you have that
> adds this support first.

It's chicken-egg problem. Before I can submit a patch upstream, I need
someone with MIPS hardware and a proper profile (using disjoint,
consistent triplets) to test it. Not to mention Gentoo needs to decide
on the triplet in the first place.

> 
> ---
> 
> Having been around in the Very Beginning, I can tell you that one doesn't
> change CHOSTs lightly on MIPS.  There are a LOT of upstream projects that don't
> use newer autotools and thus won't recognize the more specific CHOSTs.  And
> there are a few projects, like Perl, that use their own custom build system and
> might need special fixes on top to use the more-specific tuples.
> 
> That said, none of this addresses the issue of the multiple C library options
> available.  As far as I know, using different ABIs with uclibc-ng or musl
> requires setting either a build or config option, or passing -mabi=xxx, along
> with a gcc-like CHOST tuple.  E.g., for my uclibc-ng chroot on my Octane, I am
> sticking w/ o32 and thus use a CHOST of mips-unknown-linux-uclibc.  If
> clang/llvm can co-exist with C libraries other than glibc, this is likely an
> additional complexity to consider.
> 
> Also, last I checked, clang/llvm didn't have full support for the "old" MIPS
> ISAs, namely mips3 and only part of mips4.  It also has no knowledge of
> scheduling for the old CPU families, like R10K.  I helped write the current
> R10K scheduling code for gcc a few years ago, so maybe could do something for
> clang/llvm, though I have no idea how they implement CPU scheduling logic.
> 

-- 
Best regards,
Michał Górny



  reply	other threads:[~2018-04-02 20:32 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-04-02  3:40 [gentoo-dev] Monthly mips@ project status for April 2018 Matt Turner
2018-04-02  7:37 ` [gentoo-dev] Re: [gentoo-mips] " Joshua Kinard
2018-04-02  7:39   ` Joshua Kinard
2018-04-02 11:28     ` Anthony G. Basile
2018-04-02  9:41 ` [gentoo-dev] " Michał Górny
2018-04-02 17:27   ` Joshua Kinard
2018-04-02 20:32     ` Michał Górny [this message]
2018-04-03  5:23       ` Joshua Kinard

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=1522701148.21713.5.camel@gentoo.org \
    --to=mgorny@gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    --cc=gentoo-mips@lists.gentoo.org \
    --cc=mips@gentoo.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