This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH, ARM] stop changing signedness in PROMOTE_MODE
- From: Michael Matz <matz at suse dot de>
- To: Jim Wilson <jim dot wilson at linaro dot org>
- Cc: Richard Earnshaw <Richard dot Earnshaw at foss dot arm dot com>, Richard Biener <richard dot guenther at gmail dot com>, Jeff Law <law at redhat dot com>, "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>
- Date: Wed, 15 Jul 2015 15:04:23 +0200 (CEST)
- Subject: Re: [PATCH, ARM] stop changing signedness in PROMOTE_MODE
- Authentication-results: sourceware.org; auth=none
- References: <CABXYE2VXjy7=5Y=c1TCxLE8KuwLtwBYBhTB24xrWDvWAeiBwbQ at mail dot gmail dot com> <559BEB2D dot 7040800 at redhat dot com> <CABXYE2UbBP24fBEgDJp5+S1fhFpNHPJgjM=SypsWbc4hV1xbbw at mail dot gmail dot com> <DDEC7CC8-74EE-4ACF-97C8-EE5A7D53CDB6 at gmail dot com> <CABXYE2X4OhMvyK-z+yQvDkcT0TgKUc2Nv+YdhXWZnJDNDMeJqg at mail dot gmail dot com> <CAFiYyc1M4OqAs9tEhNObnXyC6xsBtFE8XeMrGPV1WoCc-VKY-g at mail dot gmail dot com> <alpine dot LSU dot 2 dot 20 dot 1507131651560 dot 23227 at wotan dot suse dot de> <55A53519 dot 6040305 at foss dot arm dot com> <CABXYE2VKvB70mvYTrV5fgH4z+h4+G0cFM8Q+X-UL=aCb+-ZPFA at mail dot gmail dot com>
Hi,
On Tue, 14 Jul 2015, Jim Wilson wrote:
> Now that we do have the problem, we can't fix it without an ARM port ABI
> change, which is undesirable, so we may have to fix it with a MI change.
What's the ABI implication of fixing the inconsistency?
> There were two MI changes suggested, one was fixing the out-of-ssa pass
> to handle SUBREG_PROMOTED_P promotions. The other was to disallow
> creating PHI nodes between parms and locals. I haven't had a chance to
> try implementing the second one yet; I hope to work on that today.
Don't bother with the latter, it doesn't have a chance of being accepted.
If the terrible hack in outof-ssa really will be necessary (and I really
really hope it won't) then I think I prefer the approach you partly tried
in comment #12 of PR 65932 already. Let partition_to_pseudo[] refer to
the promoted subreg and deal with that situation in emit_partition_copy;
I'd then hope that the unsignedsrcp parameter could go away (unfortunately
the sizeexp will have to stay).
Ciao,
Michael.