Port-arm archive

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

Re: GCC default CPUs



On 30/10/2018 21:13, coypu%sdf.org@localhost wrote:
hi port-arm,

i'm upstreaming the netbsd eabi target to gcc upstream.
a question came up about our choice of platform triplets (or is it
fourlets?:)), there are quite many.

armv4--netbsdelf-eabi
armv6--netbsdelf-eabi
armv7--netbsdelf-eabi
arm*--netbsdelf-eabi ??

also,
arm--netbsdelf, for OABI.

The first part should affect default cpu for the configuration.
In base and in upstream, given the current patch, it will be:


ISA ver		|	Base GCC		| upstream GCC
--------------------------------------------------------------------
v4		|	strongarm		| strongarm
v6		|	arm1176jzf-s		| arm1176jzf-s
v7		|	cortex-a8		| generic-armv7-a[1]
else		|	arm6 ? (not 100% sure)	| strongarm[2]


Did you see

http://src.illumos.org/source/xref/netbsd-src/external/gpl3/gcc/dist/gcc/config/arm/netbsd-elf.h#30

30 /* Default EABI to armv5t so that thumb shared libraries work.
31    The ARM926EH-S core is the default for armv5te, so set
32    SUBTARGET_CPU_DEFAULT to achieve this.  */
33
34 #define SUBTARGET_CPU_DEFAULT \
35 	(ARM_DEFAULT_ABI != ARM_ABI_APCS && ARM_DEFAULT_ABI != ARM_ABI_ATPCS \
36 	    ? TARGET_CPU_arm926ejs : TARGET_CPU_arm6)


the question was: why did we make these choices?

I assume a CPU with Thumb support in each architecture version. I see rearnshaw mostly agrees with the choices in the gcc list discussion.


if i had to come up with a policy, it'd be "create a target for every
time ARM decides you can break ISA compatibility, use -mcpu otherwise".

We have enough targets already. I don't think we need more.



i guess armv6 exists for RPI1 alone and people did not want to
compromise for everything else?

arm6 != armv6. I theory acorn32 runs on arm6.


Please send patches to port-arm for approval if there is a change to base to match proposed upstream.

Nick


Home | Main Index | Thread Index | Old Index