This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH, rs6000] Fix order of TDmode in FPRs in little-endian mode
- From: "Ulrich Weigand" <uweigand at de dot ibm dot com>
- To: dje dot gcc at gmail dot com (David Edelsohn)
- Cc: gcc-patches at gcc dot gnu dot org (GCC Patches)
- Date: Wed, 20 Nov 2013 17:30:38 +0100 (CET)
- Subject: Re: [PATCH, rs6000] Fix order of TDmode in FPRs in little-endian mode
- Authentication-results: sourceware.org; auth=none
David Edelsohn wrote:
> On Mon, Nov 18, 2013 at 3:07 PM, Ulrich Weigand <uweigand@de.ibm.com> wrote:
> > Also note that this patch does not change how TDmode values are loaded
> > into GPRs: on little-endian, this means we do get the usual LE subreg
> > order there (least significant word in lowest-numbered register). This
> > does still seem the right thing to do, because there are no instructions
> > that operate on DFP values in GPRs, and because this allows us to keep
> > using subregs on GPRs in that case, and it allows moving TDmode between
> > memory and GPRs (e.g. for vararg arguments) in the usual way.
>
> Does this require special support in GDB so that it understands how to
> interpret this type in different classes of registers? However, the
> interpretation always will be consistent for a particular class of
> register.
Ah, good point. Yes, GDB will need to be changed, but this looks
to be straightforward. GDB already uses "pseudo" registers to
represent _Decimal128 in FPR pairs, they simply need to be glued
together the right way on little-endian. I'll fix this.
Bye,
Ulrich
--
Dr. Ulrich Weigand
GNU/Linux compilers and toolchain
Ulrich.Weigand@de.ibm.com