This is the mail archive of the
mailing list for the GCC project.
Re: syncing the GCC vax port
- From: Paul Koning <paulkoning at comcast dot net>
- To: coypu at sdf dot org
- Cc: gcc at gcc dot gnu dot org, port-vax at netbsd dot org
- Date: Sun, 31 Mar 2019 13:25:50 -0400
- Subject: Re: syncing the GCC vax port
- References: <20190330090306.GA29299@SDF.ORG>
> On Mar 30, 2019, at 5:03 AM, firstname.lastname@example.org wrote:
> hi folks,
> i was interesting in tackling some problems gcc netbsd/vax has.
> it has some ICEs which are in reload phase. searching around, the answer
> to that is "switch to LRA first". Now, I don't quite know what that is
> yet, but I know I need to try to do it.
That's not quite the whole story.
The answer is (1) switch from CC0 to CCmode condition code handling, which enables (2) switch from Reload to LRA.
(1) requires actual work, not terribly hard but not entirely trivial. (2) may take as little as switching the "use LRA" flag to "yes".
I did (1) as well as a tentative (2) for pdp11 last year. It was reasonably straightforward thanks to a pile of help from Eric Botcazou and his gcc wiki articles on the subject. You might find the pdp11 deltas for CCmode helpful as a source of ideas, since the two machines have a fair amount in common as far as condition codes goes. At least for the integer ops (pdp11 has separate floating point conditions, vax doesn't).