On 16/05/2025 01:23, Paul Koning wrote:


On May 15, 2025, at 8:06 PM, Oleg Endo via Gcc <gcc@gcc.gnu.org> wrote:

Hi,

On Thu, 2025-05-15 at 17:41 +0100, Andrew Stubbs wrote:
Dear GCC Maintainers and Steering Committee,

I'm currently doing a feasibility study and effort estimate for
upstreaming the existing ARCv3 out-of-tree port [1].

Question: Is there likely to be any objection to adding a new "arc64"
port in addition to the existing "arc" port?

At this point, I would like to check that the general approach is likely
to be accepted at the end of the project. Or, at least not rejected for
this most fundamental of reasons.

The ARCv3 port has been written as a new backend because it is not just
a simple evolution of the ARC architecture and starting afresh made more
sense to the developers at the time.  I'm aware that there are some
precedents for this (sh64, ia64, aarch64), so I think it's probably
fine, right?


SH5/SH64 was actually part of the original SH port, not a separate
standalone port.  It made the port more complex and convoluted, but probably
made sense since the it was backwards compatible with the original SH ISA
(it was like ARM Thumb -- jump to select between classic SH ISA and new SH5
ISA, from what I remember).

Best regards,
Oleg Endo

Also: ia64 is a separate ISA.  If you were thinking about x86-64, that's part of i386 
("ia-32").  Similarly, "mips" is both flavors (and all four ABIs). So there are 
several examples in both directions.

Apparently I hallucinated the sh64 being a separate port, which is weird because I worked on that stuff (20 years ago). Probably it was separate in some other tool(?)

I'm aware that IA64 Itanium was "slightly" more different to IA32 than current x86_64 is, but still it kind of sits in this space.

Anyway, I don't think ARC/ARC64 is as different as IA32/IA64 but probably about the same amount of difference as Arm/AArch64. Unlike x86, you can't run v2 binaries on v3 hardware. I don't know the ISAs well, so I can't (yet) speak with authority on this point, but I'm very sure that (at this point) it'll be less work to keep arc64 independent, at least for GCC.

Andrew

Reply via email to