dragora-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Dragora-users] [musl] Darkcrusade 2017Jan05 (cross compiler set)


From: Matias A. Fonzo
Subject: Re: [Dragora-users] [musl] Darkcrusade 2017Jan05 (cross compiler set)
Date: Tue, 10 Jan 2017 18:15:41 -0300

Hi Szabolcs,

I'm sorry I did not come back quickly to you.

I've made the change[1].

[1] http://dragora.org/repo.fsl/info/7918f35cc0bfc75d

I want to say thanks for all of your information, asking to you about
aarch64.  What options for GCC is needed to have aarch64?.

On Sun, 8 Jan 2017 03:10:07 +0100
Szabolcs Nagy <address@hidden> wrote:

> * Matias A. Fonzo <address@hidden> [2017-01-07 19:55:38 -0300]:
> > On Sat, 7 Jan 2017 15:57:38 +0100
> > Szabolcs Nagy <address@hidden> wrote:  
> > > * Matias A. Fonzo <address@hidden> [2017-01-06 20:31:34
> > > -0300]:  
> > > > Thanks! -- I've removed the target file for armv7hl.
> > > >     
> > > 
> > > i think you should keep the armv7hl and remove the armv8hl one.  
> > 
> > Are you sure?:
> > 
> > armv8hl has the following options for GCC:
> > 
> > "--with-arch=armv7-a --with-float=hard --with-fpu=neon
> > --with-tune=cortex-a8"
> > 
> > meanwhile armv7hl was:
> > 
> > "--with-arch=armv7-a --with-float=hard --with-fpu=neon"
> > 
> > 'armv8hl' is like "it can run on the armv7-a but armv8-a has the
> > honor".
> > 
> > This is confusing, so.. only 64bit is capable of armv8-a?.  
> 
> in armvX-a the X is an architecture version (the -a means
> application profile, there are m and r profiles as well)
> 
> the latest architecture version is 8 (it has revisions 8.1,
> 8.2 and 8.3 introducing various extensions)
> 
> the armv8-a architecture has two execution states: aarch32
> and aarch64, the former is 32bit and backward compatible with
> armv7-a, the later is 64bit.
> 
> i think an armv8-a implemetation has to support both aarch32
> and aarch64 execution states (so an armv8-a core can run
> 64bit and 32bit binaries, just like a 64bit x86 cpu)
> 
> the 32bit and 64bit toolchains needed different naming since
> they are clearly not abi compatible, for 32bit the old scheme
> was kept: armv8 in a triplet or elf platform string means 32bit,
> while the 64bit toolchain naming uses aarch64 now (various
> projects did not like that and call it arm64 which is visually
> easy to confuse with amd64 and trips up scripts that matched
> arm* for 32bit arm so there is a lot of mess around naming).
> 
> cortex-aX is a micro-architecture, it's a cpu core design that
> conforms to an arm architecture version (designed by arm, there
> are other cores not desiged by arm), the X is pretty random,
> cortex-a8 happens to be an old armv7-a core. (cores are usually
> part of a soc that is designed by some vendor who sells the chip)
> 
> (older arm cores were called arm7xx, arm8xx,.. arm11xx with
> random xx to add further confusion when somebody talks about
> arm7 or arm8 cpus.)
> 
> so calling a cortex-a8 tuned toolchain armv8hl is misleading
> (and not very useful to maintain separately if you have a generic
> armv7-a toolchain anyway: in linux distro land you want a generic
> toolchain so the built binaries are useful for many devices, in
> the mobile world binaries are often tuned for a particular
> microarchitecture because the vendor provides those with the
> device)

Attachment: pgpbIS3deDoF2.pgp
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]