summaryrefslogtreecommitdiffstats
path: root/backends/ppc_regs.c
diff options
context:
space:
mode:
authorRoland McGrath <[email protected]>2007-12-15 23:39:34 +0000
committerRoland McGrath <[email protected]>2007-12-15 23:39:34 +0000
commit1a2e8f4f5bd2ca2aaed78d1cea3842eff2fa5295 (patch)
treee40bba1bc6f5279da0642656b88a0eb029863cb5 /backends/ppc_regs.c
parente7717c4101dc82f0f1a30b0abf997f0068fb4b64 (diff)
backends/
2007-12-15 Roland McGrath <[email protected]> * ppc_regs.c (ppc_register_info): Return "spefscr", not "spr512". tests/ 2007-12-15 Roland McGrath <[email protected]> * run-allregs.sh: Change expected output for powerpc spefscr.
Diffstat (limited to 'backends/ppc_regs.c')
-rw-r--r--backends/ppc_regs.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/backends/ppc_regs.c b/backends/ppc_regs.c
index cc7d84fa..637c25d1 100644
--- a/backends/ppc_regs.c
+++ b/backends/ppc_regs.c
@@ -42,7 +42,7 @@ ppc_register_info (Ebl *ebl __attribute__ ((unused)),
if (name == NULL)
return 1156;
- if (regno < 0 || regno > 1155 || namelen < 7)
+ if (regno < 0 || regno > 1155 || namelen < 8)
return -1;
*prefix = NULL;
@@ -58,7 +58,7 @@ ppc_register_info (Ebl *ebl __attribute__ ((unused)),
if (ebl->machine != EM_PPC64 && regno < 64)
*bits = 64;
}
- else if (regno == 67 || regno == 356 || regno >= 1124)
+ else if (regno == 67 || regno == 356 || regno == 612 || regno >= 1124)
{
*setname = "vector";
*bits = regno >= 1124 ? 128 : 32;
@@ -132,6 +132,8 @@ ppc_register_info (Ebl *ebl __attribute__ ((unused)),
return stpcpy (name, "dec") + 1 - name;
case 356:
return stpcpy (name, "vrsave") + 1 - name;
+ case 612:
+ return stpcpy (name, "spefscr") + 1 - name;
case 100:
if (*bits == 32)
return stpcpy (name, "mq") + 1 - name;
@@ -156,7 +158,8 @@ ppc_register_info (Ebl *ebl __attribute__ ((unused)),
break;
case 200 ... 355:
- case 357 ... 999:
+ case 357 ... 611:
+ case 613 ... 999:
name[0] = 's';
name[1] = 'p';
name[2] = 'r';