On Thu, Apr 22, 2021 at 1:22 AM Maciej W. Rozycki <ma...@orcam.me.uk> wrote: > > Hi, > > According to the plan discussed in the context of the recent switch to > MODE_CC of the VAX backend I have been looking into switching the backend > to LRA as well. > > It has turned out quite straightforward itself, with just a couple of > minor issues triggered with a flip to LRA, one causing a build failure > with target libatomic and another causing a C testsuite regression. Also > I have come across a piece of dead code which has never ever been used for > anything and it is unclear to me what its intended purpose was. > > I have come up with this small patch series then, bundled together for > easier reference although the individual changes are independent from each > other. > > I think 3/3 is worth backporting to GCC 11 at one point, perhaps 11.2, so > that it can be easily picked downstream, as it improves code generation > with old reload and we may not have another major release still using it. > > OTOH switching to LRA regresses code generation seriously, by making the > indexed and indirect VAX address modes severely underutilised, so while > with these changes in place the backend can be switched to LRA with just a > trivial to remove the redefinition of TARGET_LRA_P, I think it is not yet > the right time to do it. > > It is not a hard show-stopper though, so while I plan to look into LRA > now to figure out what is missing there that the old reload has to satisfy > the VAX backend, the switch to LRA can now be made anytime if so required > and I am preempted for whatever reason (and nobody else gets to it). > > Questions, comments, OK to apply?
Sounds like a reasonable stance to me. The patches look all good, thus they are OK to apply. Thanks, Richard. > > Maciej