diff options
| author | Roland McGrath <[email protected]> | 2007-04-25 03:09:33 +0000 |
|---|---|---|
| committer | Roland McGrath <[email protected]> | 2007-04-25 03:09:33 +0000 |
| commit | 4be1524398af8e24011cfdfa77c66832f8654a56 (patch) | |
| tree | 84d4745346b459516ec67743a1b86b47793f146f /backends | |
| parent | 89d6b4c552a469482d2a358fb492d39eb22beb13 (diff) | |
2007-04-24 Roland McGrath <[email protected]>
* run-strip-test.sh: When we saved the debug info, test unstrip too.
Diffstat (limited to 'backends')
| -rw-r--r-- | backends/ChangeLog | 9 | ||||
| -rw-r--r-- | backends/i386_regs.c | 4 | ||||
| -rw-r--r-- | backends/ppc_regs.c | 35 | ||||
| -rw-r--r-- | backends/x86_64_regs.c | 1 |
4 files changed, 43 insertions, 6 deletions
diff --git a/backends/ChangeLog b/backends/ChangeLog index e9f34158..646e8110 100644 --- a/backends/ChangeLog +++ b/backends/ChangeLog @@ -1,3 +1,12 @@ +2007-04-22 Roland McGrath <[email protected]> + + * ppc_regs.c (ppc_register_info): Use some names instead of sprNNN: + mq, xer, lr, ctr, dsisr, dar, dec, vrsave. + Set *BITS to 64 for FPU registers. + + * i386_regs.c (i386_register_info): Set *BITS to 16 for fctrl, fstat. + * x86_64_regs.c (x86_64_register_info): Likewise for fcw, fsw. + 2007-04-01 Roland McGrath <[email protected]> * x86_64_regs.c (x86_64_register_info): Add more registers from newer diff --git a/backends/i386_regs.c b/backends/i386_regs.c index a63c5439..5cf0d810 100644 --- a/backends/i386_regs.c +++ b/backends/i386_regs.c @@ -1,5 +1,5 @@ /* Register names and numbers for i386 DWARF. - Copyright (C) 2005, 2006 Red Hat, Inc. + Copyright (C) 2005, 2006, 2007 Red Hat, Inc. This file is part of Red Hat elfutils. Red Hat elfutils is free software; you can redistribute it and/or modify @@ -125,8 +125,10 @@ i386_register_info (Ebl *ebl __attribute__ ((unused)), break; case 37: + *bits = 16; return stpcpy (name, "fctrl") + 1 - name; case 38: + *bits = 16; return stpcpy (name, "fstat") + 1 - name; case 39: return stpcpy (name, "mxcsr") + 1 - name; diff --git a/backends/ppc_regs.c b/backends/ppc_regs.c index 3d47d3d0..4cf5abc6 100644 --- a/backends/ppc_regs.c +++ b/backends/ppc_regs.c @@ -1,5 +1,5 @@ /* Register names and numbers for PowerPC DWARF. - Copyright (C) 2005, 2006 Red Hat, Inc. + Copyright (C) 2005, 2006, 2007 Red Hat, Inc. This file is part of Red Hat elfutils. Red Hat elfutils is free software; you can redistribute it and/or modify @@ -53,7 +53,11 @@ ppc_register_info (Ebl *ebl __attribute__ ((unused)), if (regno < 32 || regno == 64 || regno == 66) *setname = "integer"; else if (regno < 64 || regno == 65) - *setname = "FPU"; + { + *setname = "FPU"; + if (ebl->machine != EM_PPC64 && regno < 64) + *bits = 64; + } else if (regno < 1124) *setname = "privileged"; else @@ -112,7 +116,25 @@ ppc_register_info (Ebl *ebl __attribute__ ((unused)), namelen = 4; break; - case 100 ... 109: + case 101: + return stpcpy (name, "xer") + 1 - name; + case 108: + return stpcpy (name, "lr") + 1 - name; + case 109: + return stpcpy (name, "ctr") + 1 - name; + case 118: + return stpcpy (name, "dsisr") + 1 - name; + case 119: + return stpcpy (name, "dar") + 1 - name; + case 122: + return stpcpy (name, "dec") + 1 - name; + case 356: + return stpcpy (name, "vrsave") + 1 - name; + case 100: + if (*bits == 32) + return stpcpy (name, "mq") + 1 - name; + + case 102 ... 107: name[0] = 's'; name[1] = 'p'; name[2] = 'r'; @@ -120,7 +142,9 @@ ppc_register_info (Ebl *ebl __attribute__ ((unused)), namelen = 4; break; - case 110 ... 199: + case 110 ... 117: + case 120 ... 121: + case 123 ... 199: name[0] = 's'; name[1] = 'p'; name[2] = 'r'; @@ -129,7 +153,8 @@ ppc_register_info (Ebl *ebl __attribute__ ((unused)), namelen = 5; break; - case 200 ... 999: + case 200 ... 355: + case 357 ... 999: name[0] = 's'; name[1] = 'p'; name[2] = 'r'; diff --git a/backends/x86_64_regs.c b/backends/x86_64_regs.c index c17af85e..cfa40508 100644 --- a/backends/x86_64_regs.c +++ b/backends/x86_64_regs.c @@ -165,6 +165,7 @@ x86_64_register_info (Ebl *ebl __attribute__ ((unused)), return stpcpy (name, "mxcsr") + 1 - name; case 65 ... 66: + *bits = 16; name[0] = 'f'; name[1] = "cs"[regno - 65]; name[2] = 'w'; |
