From: Andrew Cagney <ac131313@redhat.com>
To: cgd@broadcom.com
Cc: Kevin Buettner <kevinb@redhat.com>, gdb-patches@sources.redhat.com
Subject: Re: [WIP/RFC] MIPS registers overhaul
Date: Tue, 17 Jun 2003 14:27:00 -0000 [thread overview]
Message-ID: <3EEF253D.9060502@redhat.com> (raw)
In-Reply-To: <yov5znkhe1m7.fsf@ldt-sj3-010.sj.broadcom.com>
> Careful. If the ABI is o32, and FR == 0/..., then there should be
>> only 16 floating point registers in use. The original MIPS 1, and
>> r5900 ABIs would both allow use of all 32 32 bit floating point
>> registers.
>
>
> I don't know that that is correct, at least about the "original MIPS
> 1" behaviour.
Sigh, yes: B 3.3 Formatted Operand Layout of [3.2]:
FPU instructions that operate on formatted operand values specify the
floating-point register (FPR) that holds a value. An FPR is not
necessarily the same as a CP1 general register because an FPR is 64 bits
wide; if this is wider than the CP1 general registers, an aligned set of
adjacent CP1 general registers is used as the FPR. The 32-bit register
model provides 16 FPRs specified by the even CP1 general register
numbers. The 64-bit register model provides 32 FPRs, one per CP1 general
register. Operands that are only 32 bits wide (W and S formats), use
only half the space in an FPR. The FPR organization and the way that
operand data is stored in them is shown in the following figures. A
summary of the data transfer instructions can be found in section B 6.1
on page B-19.
The key bit being that the terminology differentaties between a 32 bit
CP1 register and a 64 bit FPR.
This also suggests a better way of representing the registers to the user:
MIPS I:
$cp0, $cp1, ...: 32/64 bit raw co-processor registers
MIPS I:
$fp0, $fp2, ...: 64 bit co-processor registers
note that these are little word ordered
and contain 32 and 64 bit float values
(This was suggested to me in a second hand
off line discussion :-()
MIPS III:
$fp0, $fp1, ...: 64 bit floating point registers
Andrew
next prev parent reply other threads:[~2003-06-17 14:27 UTC|newest]
Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-05-10 0:25 Kevin Buettner
2003-05-10 20:30 ` Andrew Cagney
2003-05-10 20:40 ` Daniel Jacobowitz
2003-05-14 22:00 ` Kevin Buettner
[not found] ` <mailpost.1052949911.28802@news-sj1-1>
2003-05-14 23:35 ` cgd
2003-05-15 0:07 ` Kevin Buettner
2003-05-15 0:15 ` Daniel Jacobowitz
2003-05-15 22:01 ` Kevin Buettner
2003-05-16 3:24 ` Andrew Cagney
2003-05-16 4:00 ` Andrew Cagney
2003-05-16 17:20 ` Kevin Buettner
[not found] ` <mailpost.1053057614.17325@news-sj1-1>
2003-05-16 22:25 ` cgd
[not found] ` <mailpost.1053123913.16634@news-sj1-1>
2003-05-16 22:50 ` cgd
2003-05-16 23:05 ` Kevin Buettner
[not found] ` <mailpost.1053126410.17856@news-sj1-1>
2003-05-16 23:24 ` cgd
2003-05-17 0:41 ` Kevin Buettner
2003-05-17 20:59 ` Daniel Jacobowitz
2003-05-20 20:18 ` Always remote: " Andrew Cagney
2003-05-20 20:26 ` Daniel Jacobowitz
[not found] ` <mailpost.1053132070.20348@news-sj1-1>
2003-05-20 20:37 ` cgd
2003-05-20 20:51 ` Kevin Buettner
2003-05-20 20:52 ` Andrew Cagney
2003-05-20 21:57 ` cgd
2003-05-21 15:34 ` Andrew Cagney
2003-05-21 15:41 ` Daniel Jacobowitz
2003-05-21 16:38 ` Andrew Cagney
2003-05-21 16:58 ` Daniel Jacobowitz
2003-05-21 18:32 ` Kevin Buettner
2003-05-21 19:15 ` Andrew Cagney
2003-05-21 19:45 ` Kevin Buettner
2003-05-22 0:32 ` Daniel Jacobowitz
2003-05-23 18:39 ` Andrew Cagney
2003-05-23 19:02 ` Daniel Jacobowitz
2003-05-23 20:45 ` Andrew Cagney
2003-05-20 20:25 ` Andrew Cagney
2003-05-20 20:32 ` cgd
2003-05-21 15:40 ` Andrew Cagney
2003-06-15 1:44 ` Andrew Cagney
2003-06-16 18:06 ` cgd
2003-06-16 18:47 ` Andrew Cagney
2003-06-15 17:23 ` Andrew Cagney
2003-06-16 20:06 ` cgd
2003-06-16 20:41 ` Andrew Cagney
[not found] ` <mailpost.1055796186.4097@news-sj1-1>
2003-06-17 5:04 ` cgd
2003-06-17 14:27 ` Andrew Cagney [this message]
[not found] ` <mailpost.1055860052.3406@news-sj1-1>
2003-06-17 16:27 ` cgd
2003-05-21 20:58 David Anderson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3EEF253D.9060502@redhat.com \
--to=ac131313@redhat.com \
--cc=cgd@broadcom.com \
--cc=gdb-patches@sources.redhat.com \
--cc=kevinb@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox