summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry V. Levin <ldv@altlinux.org>2006-10-17 20:42:23 +0000
committerDmitry V. Levin <ldv@altlinux.org>2006-10-17 21:47:00 +0000
commit03573fff13b99aebc1fc85262dfe91112344b0f1 (patch)
tree30c3a5f2c7a11185ce711dc83e8feac6b4d1f616
parent6ed4181bde4cfb24f696f872953907ba5427cca7 (diff)
downloadelfutils-03573fff13b99aebc1fc85262dfe91112344b0f1.tar.gz
0.124-alt10.124-alt1
- Updated to 0.124.
-rw-r--r--elfutils-0.124-alt-warnings.patch148
-rw-r--r--elfutils.spec12
-rw-r--r--elfutils/ChangeLog4
-rw-r--r--elfutils/Makefile.in11
-rw-r--r--elfutils/NEWS10
-rw-r--r--elfutils/aclocal.m429
-rw-r--r--elfutils/backends/ChangeLog27
-rw-r--r--elfutils/backends/Makefile.am2
-rw-r--r--elfutils/backends/Makefile.in14
-rw-r--r--elfutils/backends/i386_init.c4
-rw-r--r--elfutils/backends/i386_regs.c42
-rw-r--r--elfutils/backends/ia64_init.c2
-rw-r--r--elfutils/backends/ia64_regs.c28
-rw-r--r--elfutils/backends/ia64_symbol.c11
-rw-r--r--elfutils/backends/ppc64_init.c4
-rw-r--r--elfutils/backends/ppc_init.c4
-rw-r--r--elfutils/backends/ppc_regs.c18
-rw-r--r--elfutils/backends/s390_init.c2
-rw-r--r--elfutils/backends/s390_regs.c25
-rw-r--r--elfutils/backends/sparc_init.c5
-rw-r--r--elfutils/backends/sparc_regs.c50
-rw-r--r--elfutils/backends/sparc_retval.c154
-rw-r--r--elfutils/backends/x86_64_init.c4
-rw-r--r--elfutils/backends/x86_64_regs.c33
-rw-r--r--elfutils/config/Makefile.in9
-rw-r--r--elfutils/config/elfutils.spec.in6
-rwxr-xr-xelfutils/configure58
-rw-r--r--elfutils/configure.ac3
-rw-r--r--elfutils/elfutils.spec8
-rw-r--r--elfutils/lib/Makefile.in9
-rw-r--r--elfutils/libasm/ChangeLog4
-rw-r--r--elfutils/libasm/Makefile.am4
-rw-r--r--elfutils/libasm/Makefile.in11
-rw-r--r--elfutils/libcpu/Makefile.in9
-rw-r--r--elfutils/libdw/ChangeLog12
-rw-r--r--elfutils/libdw/Makefile.am4
-rw-r--r--elfutils/libdw/Makefile.in11
-rw-r--r--elfutils/libdw/libdw.h5
-rw-r--r--elfutils/libdw/libdwP.h13
-rw-r--r--elfutils/libdw/libdw_alloc.c14
-rw-r--r--elfutils/libdwfl/ChangeLog5
-rw-r--r--elfutils/libdwfl/Makefile.in9
-rw-r--r--elfutils/libdwfl/derelocate.c4
-rw-r--r--elfutils/libdwfl/dwfl_module_register_names.c16
-rw-r--r--elfutils/libdwfl/libdwfl.h3
-rw-r--r--elfutils/libebl/ChangeLog14
-rw-r--r--elfutils/libebl/Makefile.am2
-rw-r--r--elfutils/libebl/Makefile.in15
-rw-r--r--elfutils/libebl/ebl-hooks.h5
-rw-r--r--elfutils/libebl/eblopenbackend.c15
-rw-r--r--elfutils/libebl/eblreginfo.c (renamed from elfutils/libebl/eblregname.c)10
-rw-r--r--elfutils/libebl/libebl.h7
-rw-r--r--elfutils/libelf-po/libelf.pot2
-rw-r--r--elfutils/libelf/ChangeLog8
-rw-r--r--elfutils/libelf/Makefile.am2
-rw-r--r--elfutils/libelf/Makefile.in11
-rw-r--r--elfutils/libelf/elf32_getphdr.c61
-rw-r--r--elfutils/m4/Makefile.in9
-rw-r--r--elfutils/po/elfutils.pot2
-rw-r--r--elfutils/src/ChangeLog10
-rw-r--r--elfutils/src/Makefile.am2
-rw-r--r--elfutils/src/Makefile.in11
-rw-r--r--elfutils/src/elflint.c2
-rw-r--r--elfutils/src/readelf.c2
-rw-r--r--elfutils/tests/ChangeLog20
-rw-r--r--elfutils/tests/Makefile.in9
-rw-r--r--elfutils/tests/allregs.c58
-rwxr-xr-xelfutils/tests/run-allregs.sh3767
-rwxr-xr-xelfutils/tests/run-arextract.sh8
-rwxr-xr-xelfutils/tests/run-arsymtest.sh12
-rwxr-xr-xelfutils/tests/run-native-test.sh3
-rwxr-xr-xelfutils/tests/run-strings-test.sh5
72 files changed, 3391 insertions, 1541 deletions
diff --git a/elfutils-0.124-alt-warnings.patch b/elfutils-0.124-alt-warnings.patch
new file mode 100644
index 00000000..4829e7b9
--- /dev/null
+++ b/elfutils-0.124-alt-warnings.patch
@@ -0,0 +1,148 @@
+--- elfutils-0.124.orig/libdwfl/find-debuginfo.c
++++ elfutils-0.124/libdwfl/find-debuginfo.c
+@@ -64,11 +64,20 @@ try_open (const char *dir, const char *s
+ if (dir == NULL && subdir == NULL)
+ fname = strdup (debuglink);
+ else if (subdir == NULL)
+- asprintf (&fname, "%s/%s", dir, debuglink);
++ {
++ if (asprintf (&fname, "%s/%s", dir, debuglink) < 0)
++ fname = NULL;
++ }
+ else if (dir == NULL)
+- asprintf (&fname, "%s/%s", subdir, debuglink);
++ {
++ if (asprintf (&fname, "%s/%s", subdir, debuglink) < 0)
++ fname = NULL;
++ }
+ else
+- asprintf (&fname, "%s/%s/%s", dir, subdir, debuglink);
++ {
++ if (asprintf (&fname, "%s/%s/%s", dir, subdir, debuglink) < 0)
++ fname = NULL;
++ }
+
+ if (fname == NULL)
+ return -1;
+--- elfutils-0.124.orig/libdwfl/linux-kernel-modules.c
++++ elfutils-0.124/libdwfl/linux-kernel-modules.c
+@@ -122,17 +122,21 @@ report_kernel (Dwfl *dwfl, const char *r
+ if (dwfl == NULL)
+ return -1;
+
+- char *fname = NULL;
++ char *fname;
+ if (release[0] == '/')
+- asprintf (&fname, "%s/vmlinux", release);
++ {
++ if (asprintf (&fname, "%s/vmlinux", release) < 0)
++ return ENOMEM;
++ }
+ else
+- asprintf (&fname, "/boot/vmlinux-%s", release);
++ if (asprintf (&fname, "/boot/vmlinux-%s", release) < 0)
++ return ENOMEM;
+ int fd = try_kernel_name (dwfl, &fname);
+ if (fd < 0 && release[0] != '/')
+ {
+ free (fname);
+- fname = NULL;
+- asprintf (&fname, MODULEDIRFMT "/vmlinux", release);
++ if (asprintf (&fname, MODULEDIRFMT "/vmlinux", release) < 0)
++ return ENOMEM;
+ fd = try_kernel_name (dwfl, &fname);
+ }
+
+@@ -195,8 +199,7 @@ dwfl_linux_kernel_report_offline (Dwfl *
+ modulesdir[0] = (char *) release;
+ else
+ {
+- asprintf (&modulesdir[0], MODULEDIRFMT "/kernel", release);
+- if (modulesdir[0] == NULL)
++ if (asprintf (&modulesdir[0], MODULEDIRFMT "/kernel", release) < 0)
+ return errno;
+ }
+
+@@ -310,8 +313,7 @@ dwfl_linux_kernel_find_elf (Dwfl_Module
+ /* Do "find /lib/modules/`uname -r`/kernel -name MODULE_NAME.ko". */
+
+ char *modulesdir[] = { NULL, NULL };
+- asprintf (&modulesdir[0], MODULEDIRFMT "/kernel", release);
+- if (modulesdir[0] == NULL)
++ if (asprintf (&modulesdir[0], MODULEDIRFMT "/kernel", release) < 0)
+ return -1;
+
+ FTS *fts = fts_open (modulesdir, FTS_LOGICAL | FTS_NOSTAT, NULL);
+@@ -417,9 +419,8 @@ (Dwfl_Module *mod __attribute__ ((unused
+ const GElf_Shdr *shdr __attribute__ ((unused)),
+ Dwarf_Addr *addr)
+ {
+- char *sysfile = NULL;
+- asprintf (&sysfile, SECADDRDIRFMT "%s", modname, secname);
+- if (sysfile == NULL)
++ char *sysfile;
++ if (asprintf (&sysfile, SECADDRDIRFMT "%s", modname, secname) < 0)
+ return ENOMEM;
+
+ FILE *f = fopen (sysfile, "r");
+@@ -453,9 +454,7 @@ (Dwfl_Module *mod __attribute__ ((unused
+ const bool is_init = !strncmp (secname, ".init", 5);
+ if (is_init)
+ {
+- sysfile = NULL;
+- asprintf (&sysfile, SECADDRDIRFMT "_%s", modname, &secname[1]);
+- if (sysfile == NULL)
++ if (asprintf (&sysfile, SECADDRDIRFMT "_%s", modname, &secname[1]) < 0)
+ return ENOMEM;
+ f = fopen (sysfile, "r");
+ free (sysfile);
+@@ -469,10 +468,9 @@ (Dwfl_Module *mod __attribute__ ((unused
+ size_t namelen = strlen (secname);
+ if (namelen >= MODULE_SECT_NAME_LEN)
+ {
+- sysfile = NULL;
+ int len = asprintf (&sysfile, SECADDRDIRFMT "%s",
+ modname, secname);
+- if (sysfile == NULL)
++ if (len < 0)
+ return ENOMEM;
+ char *end = sysfile + len;
+ do
+--- elfutils-0.124.orig/libdwfl/linux-proc-maps.c
++++ elfutils-0.124/libdwfl/linux-proc-maps.c
+@@ -72,9 +72,8 @@ #define PROCAUXVFMT "/proc/%d/auxv"
+ static int
+ find_sysinfo_ehdr (pid_t pid, GElf_Addr *sysinfo_ehdr)
+ {
+- char *fname = NULL;
+- asprintf (&fname, PROCAUXVFMT, pid);
+- if (fname == NULL)
++ char *fname;
++ if (asprintf (&fname, PROCAUXVFMT, pid) < 0)
+ return ENOMEM;
+
+ int fd = open64 (fname, O_RDONLY);
+@@ -243,9 +242,8 @@ dwfl_linux_proc_report (Dwfl *dwfl, pid_
+ if (result != 0)
+ return result;
+
+- char *fname = NULL;
+- asprintf (&fname, PROCMAPSFMT, pid);
+- if (fname == NULL)
++ char *fname;
++ if (asprintf (&fname, PROCMAPSFMT, pid) < 0)
+ return ENOMEM;
+
+ FILE *f = fopen (fname, "r");
+@@ -312,9 +310,8 @@ dwfl_linux_proc_find_elf (Dwfl_Module *m
+ {
+ /* Special case for in-memory ELF image. */
+
+- char *fname = NULL;
+- asprintf (&fname, PROCMEMFMT, pid);
+- if (fname == NULL)
++ char *fname;
++ if (asprintf (&fname, PROCMEMFMT, pid) < 0)
+ return -1;
+
+ int fd = open64 (fname, O_RDONLY);
diff --git a/elfutils.spec b/elfutils.spec
index c4f5efe3..79be868e 100644
--- a/elfutils.spec
+++ b/elfutils.spec
@@ -1,5 +1,5 @@
Name: elfutils
-Version: 0.123
+Version: 0.124
Release: alt1
Summary: A collection of utilities and DSOs to handle compiled objects
@@ -8,8 +8,9 @@ Group: Development/C
Packager: Dmitry V. Levin <ldv@altlinux.org>
Source: %name-%version.tar
-Patch1: %name-0.115-rh-portability.patch
-Patch2: %name-0.122-rh-robustify.patch
+Patch1: elfutils-0.115-rh-portability.patch
+Patch2: elfutils-0.122-rh-robustify.patch
+Patch3: elfutils-0.124-alt-warnings.patch
Requires: libelf = %version-%release
@@ -78,6 +79,7 @@ object file format, so you can see the different sections of an ELF file.
%setup -q
%patch1 -p1
%patch2 -p1
+%patch3 -p1
%__subst -p 's/ -Werror / /' tests/Makefile*
%build
@@ -149,6 +151,10 @@ mkdir -p %buildroot%prefix
%endif
%changelog
+* Wed Oct 18 2006 Dmitry V. Levin <ldv@altlinux.org> 0.124-alt1
+- Updated to 0.124.
+- Fixed build with -D_FORTIFY_SOURCE=2 -Werror.
+
* Sat Sep 16 2006 Dmitry V. Levin <ldv@altlinux.org> 0.123-alt1
- Updated to 0.123.
diff --git a/elfutils/ChangeLog b/elfutils/ChangeLog
index aa95ce23..a4eb6e48 100644
--- a/elfutils/ChangeLog
+++ b/elfutils/ChangeLog
@@ -1,3 +1,7 @@
+2006-08-29 Roland McGrath <roland@redhat.com>
+
+ * configure.ac: Use AM_MAINTAINER_MODE.
+
2006-07-12 Ulrich Drepper <drepper@redhat.com>
* configure.ac (internal_function): Don't use internal visibility.
diff --git a/elfutils/Makefile.in b/elfutils/Makefile.in
index 45ad72ba..93efcb24 100644
--- a/elfutils/Makefile.in
+++ b/elfutils/Makefile.in
@@ -114,6 +114,9 @@ LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LOCALEDIR = @LOCALEDIR@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
MAKEINFO = @MAKEINFO@
MKINSTALLDIRS = @MKINSTALLDIRS@
MODVERSION = @MODVERSION@
@@ -204,7 +207,7 @@ all: config.h
.SUFFIXES:
am--refresh:
@:
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
@@ -231,9 +234,9 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
$(SHELL) ./config.status --recheck
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(srcdir) && $(AUTOCONF)
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
config.h: stamp-h1
@@ -245,7 +248,7 @@ config.h: stamp-h1
stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
@rm -f stamp-h1
cd $(top_builddir) && $(SHELL) ./config.status config.h
-$(srcdir)/config.h.in: $(am__configure_deps)
+$(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_srcdir) && $(AUTOHEADER)
rm -f stamp-h1
touch $@
diff --git a/elfutils/NEWS b/elfutils/NEWS
index 5d22c737..d8fce778 100644
--- a/elfutils/NEWS
+++ b/elfutils/NEWS
@@ -1,3 +1,13 @@
+Version 0.124:
+
+libebl: sparc backend support for return value location
+
+libebl, libdwfl: backend register name support extended with more info
+
+libelf, libdw: bug fixes for unaligned accesses on machines that care
+
+readelf, elflint: trivial bugs fixed
+
Version 0.123:
libebl: Backend build fixes, thanks to Stepan Kasal.
diff --git a/elfutils/aclocal.m4 b/elfutils/aclocal.m4
index 3eb556f9..0739649a 100644
--- a/elfutils/aclocal.m4
+++ b/elfutils/aclocal.m4
@@ -510,6 +510,35 @@ if test "$LEX" = :; then
LEX=${am_missing_run}flex
fi])
+# Add --enable-maintainer-mode option to configure. -*- Autoconf -*-
+# From Jim Meyering
+
+# Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004, 2005
+# Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 4
+
+AC_DEFUN([AM_MAINTAINER_MODE],
+[AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
+ dnl maintainer-mode is disabled by default
+ AC_ARG_ENABLE(maintainer-mode,
+[ --enable-maintainer-mode enable make rules and dependencies not useful
+ (and sometimes confusing) to the casual installer],
+ USE_MAINTAINER_MODE=$enableval,
+ USE_MAINTAINER_MODE=no)
+ AC_MSG_RESULT([$USE_MAINTAINER_MODE])
+ AM_CONDITIONAL(MAINTAINER_MODE, [test $USE_MAINTAINER_MODE = yes])
+ MAINT=$MAINTAINER_MODE_TRUE
+ AC_SUBST(MAINT)dnl
+]
+)
+
+AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE])
+
# Check to see how 'make' treats includes. -*- Autoconf -*-
# Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc.
diff --git a/elfutils/backends/ChangeLog b/elfutils/backends/ChangeLog
index 34ec4cfd..86ac44b9 100644
--- a/elfutils/backends/ChangeLog
+++ b/elfutils/backends/ChangeLog
@@ -1,3 +1,30 @@
+2006-10-09 Roland McGrath <roland@redhat.com>
+
+ * ia64_symbol.c (ia64_reloc_simple_type): Treat SECREL types as simple.
+
+2006-08-29 Roland McGrath <roland@redhat.com>
+
+ * sparc_retval.c: New file.
+ * Makefile.am (sparc_SRCS): Add it.
+ * sparc_init.c (sparc_init): Initialize return_value_location hook.
+
+2006-08-22 Roland McGrath <roland@redhat.com>
+
+ * i386_regs.c (i386_register_name): Renamed i386_register_info.
+ Take new args, yield more info.
+ * i386_init.c (i386_init): Update initializer.
+ * ia64_regs.c (ia64_register_name): Likewise.
+ * ia64_init.c (ia64_init): Likewise.
+ * ppc_regs.c (ppc_register_name): Likewise.
+ * ppc64_init.c (ppc64_init): Likewise.
+ * ppc_init.c (ppc_init): Likewise.
+ * s390_regs.c (s390_register_name): Likewise.
+ * s390_init.c (s390_init): Likewise.
+ * sparc_regs.c (sparc_register_name): Likewise.
+ * sparc_init.c (sparc_init): Likewise.
+ * x86_64_regs.c (x86_64_register_name): Likewise.
+ * x86_64_init.c (x86_64_init): Likewise.
+
2006-08-08 Roland McGrath <roland@redhat.com>
* Makefile.am (%.os): Don't depend on %.o, since we don't actually
diff --git a/elfutils/backends/Makefile.am b/elfutils/backends/Makefile.am
index a81c90e9..8af59139 100644
--- a/elfutils/backends/Makefile.am
+++ b/elfutils/backends/Makefile.am
@@ -95,7 +95,7 @@ arm_SRCS = arm_init.c arm_symbol.c
libebl_arm_pic_a_SOURCES = $(arm_SRCS)
am_libebl_arm_pic_a_OBJECTS = $(arm_SRCS:.c=.os)
-sparc_SRCS = sparc_init.c sparc_symbol.c sparc_regs.c
+sparc_SRCS = sparc_init.c sparc_symbol.c sparc_regs.c sparc_retval.c
libebl_sparc_pic_a_SOURCES = $(sparc_SRCS)
am_libebl_sparc_pic_a_OBJECTS = $(sparc_SRCS:.c=.os)
diff --git a/elfutils/backends/Makefile.in b/elfutils/backends/Makefile.in
index 924e1fc6..195075a2 100644
--- a/elfutils/backends/Makefile.in
+++ b/elfutils/backends/Makefile.in
@@ -94,7 +94,7 @@ libebl_sh_pic_a_OBJECTS = $(am_libebl_sh_pic_a_OBJECTS)
libebl_sparc_pic_a_AR = $(AR) $(ARFLAGS)
libebl_sparc_pic_a_LIBADD =
am__objects_9 = sparc_init.$(OBJEXT) sparc_symbol.$(OBJEXT) \
- sparc_regs.$(OBJEXT)
+ sparc_regs.$(OBJEXT) sparc_retval.$(OBJEXT)
libebl_sparc_pic_a_OBJECTS = $(am_libebl_sparc_pic_a_OBJECTS)
libebl_x86_64_pic_a_AR = $(AR) $(ARFLAGS)
libebl_x86_64_pic_a_LIBADD =
@@ -167,6 +167,9 @@ LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LOCALEDIR = @LOCALEDIR@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
MAKEINFO = @MAKEINFO@
MKINSTALLDIRS = @MKINSTALLDIRS@
MODVERSION = @MODVERSION@
@@ -282,7 +285,7 @@ am_libebl_alpha_pic_a_OBJECTS = $(alpha_SRCS:.c=.os)
arm_SRCS = arm_init.c arm_symbol.c
libebl_arm_pic_a_SOURCES = $(arm_SRCS)
am_libebl_arm_pic_a_OBJECTS = $(arm_SRCS:.c=.os)
-sparc_SRCS = sparc_init.c sparc_symbol.c sparc_regs.c
+sparc_SRCS = sparc_init.c sparc_symbol.c sparc_regs.c sparc_retval.c
libebl_sparc_pic_a_SOURCES = $(sparc_SRCS)
am_libebl_sparc_pic_a_OBJECTS = $(sparc_SRCS:.c=.os)
ppc_SRCS = ppc_init.c ppc_symbol.c ppc_retval.c ppc_regs.c
@@ -304,7 +307,7 @@ all: all-am
.SUFFIXES:
.SUFFIXES: .c .o .obj
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
@@ -329,9 +332,9 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
clean-noinstLIBRARIES:
@@ -412,6 +415,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sh_symbol.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sparc_init.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sparc_regs.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sparc_retval.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sparc_symbol.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/x86_64_corenote.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/x86_64_init.Po@am__quote@
diff --git a/elfutils/backends/i386_init.c b/elfutils/backends/i386_init.c
index e0742b70..9f240075 100644
--- a/elfutils/backends/i386_init.c
+++ b/elfutils/backends/i386_init.c
@@ -1,5 +1,5 @@
/* Initialization of i386 specific backend library.
- Copyright (C) 2000, 2001, 2002, 2005 Red Hat, Inc.
+ Copyright (C) 2000, 2001, 2002, 2005, 2006 Red Hat, Inc.
This file is part of Red Hat elfutils.
Written by Ulrich Drepper <drepper@redhat.com>, 2000.
@@ -55,7 +55,7 @@ i386_init (elf, machine, eh, ehlen)
generic_debugscn_p = eh->debugscn_p;
HOOK (eh, debugscn_p);
HOOK (eh, return_value_location);
- HOOK (eh, register_name);
+ HOOK (eh, register_info);
return MODVERSION;
}
diff --git a/elfutils/backends/i386_regs.c b/elfutils/backends/i386_regs.c
index 248700b6..a63c5439 100644
--- a/elfutils/backends/i386_regs.c
+++ b/elfutils/backends/i386_regs.c
@@ -28,14 +28,16 @@
#endif
#include <string.h>
+#include <dwarf.h>
#define BACKEND i386_
#include "libebl_CPU.h"
ssize_t
-i386_register_name (Ebl *ebl __attribute__ ((unused)),
+i386_register_info (Ebl *ebl __attribute__ ((unused)),
int regno, char *name, size_t namelen,
- const char **prefix, const char **setname)
+ const char **prefix, const char **setname,
+ int *bits, int *type)
{
if (name == NULL)
return 46;
@@ -44,18 +46,37 @@ i386_register_name (Ebl *ebl __attribute__ ((unused)),
return -1;
*prefix = "%";
+ *bits = 32;
+ *type = DW_ATE_unsigned;
if (regno < 11)
- *setname = "integer";
+ {
+ *setname = "integer";
+ if (regno < 9)
+ *type = DW_ATE_signed;
+ }
else if (regno < 19)
- *setname = "x87";
+ {
+ *setname = "x87";
+ *type = DW_ATE_float;
+ *bits = 80;
+ }
else if (regno < 29)
- *setname = "SSE";
+ {
+ *setname = "SSE";
+ *bits = 128;
+ }
else if (regno < 37)
- *setname = "MMX";
+ {
+ *setname = "MMX";
+ *bits = 64;
+ }
else if (regno < 40)
*setname = "FPU-control";
else
- *setname = "segment";
+ {
+ *setname = "segment";
+ *bits = 16;
+ }
switch (regno)
{
@@ -64,7 +85,12 @@ i386_register_name (Ebl *ebl __attribute__ ((unused)),
"ax", "cx", "dx", "bx", "sp", "bp", "si", "di", "ip"
};
- case 0 ... 8:
+ case 4:
+ case 5:
+ case 8:
+ *type = DW_ATE_address;
+ case 0 ... 3:
+ case 6 ... 7:
name[0] = 'e';
name[1] = baseregs[regno][0];
name[2] = baseregs[regno][1];
diff --git a/elfutils/backends/ia64_init.c b/elfutils/backends/ia64_init.c
index 490c774a..acae2346 100644
--- a/elfutils/backends/ia64_init.c
+++ b/elfutils/backends/ia64_init.c
@@ -55,7 +55,7 @@ ia64_init (elf, machine, eh, ehlen)
HOOK (eh, dynamic_tag_name);
HOOK (eh, dynamic_tag_check);
HOOK (eh, machine_flag_check);
- HOOK (eh, register_name);
+ HOOK (eh, register_info);
HOOK (eh, return_value_location);
return MODVERSION;
diff --git a/elfutils/backends/ia64_regs.c b/elfutils/backends/ia64_regs.c
index 076609db..0460739c 100644
--- a/elfutils/backends/ia64_regs.c
+++ b/elfutils/backends/ia64_regs.c
@@ -28,14 +28,16 @@
#endif
#include <string.h>
+#include <dwarf.h>
#define BACKEND i386_
#include "libebl_CPU.h"
ssize_t
-ia64_register_name (Ebl *ebl __attribute__ ((unused)),
+ia64_register_info (Ebl *ebl __attribute__ ((unused)),
int regno, char *name, size_t namelen,
- const char **prefix, const char **setname)
+ const char **prefix, const char **setname,
+ int *bits, int *type)
{
if (name == NULL)
return 687 + 64;
@@ -45,6 +47,8 @@ ia64_register_name (Ebl *ebl __attribute__ ((unused)),
*prefix = "ar.";
*setname = "application";
+ *bits = 64;
+ *type = DW_ATE_signed;
switch (regno)
{
case 0 ... 9:
@@ -78,6 +82,8 @@ ia64_register_name (Ebl *ebl __attribute__ ((unused)),
name[0] = 'f';
name[1] = (regno - 128) + '0';
namelen = 2;
+ *type = DW_ATE_float;
+ *bits = 128;
*setname = "FPU";
*prefix = "";
break;
@@ -97,6 +103,8 @@ ia64_register_name (Ebl *ebl __attribute__ ((unused)),
name[2] = (regno - 128 - 100) / 10 + '0';
name[3] = (regno - 128) % 10 + '0';
namelen = 4;
+ *type = DW_ATE_float;
+ *bits = 128;
*setname = "FPU";
*prefix = "";
break;
@@ -105,6 +113,7 @@ ia64_register_name (Ebl *ebl __attribute__ ((unused)),
name[0] = 'b';
name[1] = (regno - 320) + '0';
namelen = 2;
+ *type = DW_ATE_address;
*setname = "branch";
*prefix = "";
break;
@@ -117,12 +126,14 @@ ia64_register_name (Ebl *ebl __attribute__ ((unused)),
};
*setname = "special";
*prefix = "";
+ *type = regno == 331 ? DW_ATE_address : DW_ATE_unsigned;
return stpcpy (name, named_special[regno - 328]) + 1 - name;
}
case 590:
*setname = "special";
*prefix = "";
+ *type = DW_ATE_unsigned;
return stpcpy (name, "bof") + 1 - name;
case 334 + 0 ... 334 + 7:
@@ -158,6 +169,9 @@ ia64_register_name (Ebl *ebl __attribute__ ((unused)),
[66 - 8] = "ec",
};
const size_t idx = regno - (334 + 8);
+ *type = DW_ATE_unsigned;
+ if (idx == 1 || idx == 2)
+ *type = DW_ATE_address;
if (idx < sizeof named_ar / sizeof named_ar[0]
&& named_ar[idx][0] != '\0')
return stpcpy (name, named_ar[idx]) + 1 - name;
@@ -193,6 +207,8 @@ ia64_register_name (Ebl *ebl __attribute__ ((unused)),
name[3] = (regno - 462) + '0';
namelen = 4;
*setname = "NAT";
+ *type = DW_ATE_boolean;
+ *bits = 1;
*prefix = "";
break;
@@ -204,6 +220,8 @@ ia64_register_name (Ebl *ebl __attribute__ ((unused)),
name[4] = (regno - 462) % 10 + '0';
namelen = 5;
*setname = "NAT";
+ *type = DW_ATE_boolean;
+ *bits = 1;
*prefix = "";
break;
@@ -216,6 +234,8 @@ ia64_register_name (Ebl *ebl __attribute__ ((unused)),
name[5] = (regno - 462) % 10 + '0';
namelen = 6;
*setname = "NAT";
+ *type = DW_ATE_boolean;
+ *bits = 1;
*prefix = "";
break;
@@ -224,6 +244,8 @@ ia64_register_name (Ebl *ebl __attribute__ ((unused)),
name[1] = (regno - 687) + '0';
namelen = 2;
*setname = "predicate";
+ *type = DW_ATE_boolean;
+ *bits = 1;
*prefix = "";
break;
@@ -233,6 +255,8 @@ ia64_register_name (Ebl *ebl __attribute__ ((unused)),
name[2] = (regno - 687) % 10 + '0';
namelen = 3;
*setname = "predicate";
+ *type = DW_ATE_boolean;
+ *bits = 1;
*prefix = "";
break;
diff --git a/elfutils/backends/ia64_symbol.c b/elfutils/backends/ia64_symbol.c
index d7caaf38..4faec0c9 100644
--- a/elfutils/backends/ia64_symbol.c
+++ b/elfutils/backends/ia64_symbol.c
@@ -1,5 +1,5 @@
/* IA-64 specific symbolic name handling.
- Copyright (C) 2002, 2003, 2005 Red Hat, Inc.
+ Copyright (C) 2002, 2003, 2005, 2006 Red Hat, Inc.
This file is part of Red Hat elfutils.
Written by Ulrich Drepper <drepper@redhat.com>, 2002.
@@ -109,18 +109,27 @@ ia64_reloc_simple_type (Ebl *ebl, int type)
{
switch (type)
{
+ /* The SECREL types when used with non-allocated sections
+ like .debug_* are the same as direct absolute relocs
+ applied to those sections, since a 0 section address is assumed.
+ So we treat them the same here. */
+
+ case R_IA64_SECREL32MSB:
case R_IA64_DIR32MSB:
if (ebl->data == ELFDATA2MSB)
return ELF_T_WORD;
break;
+ case R_IA64_SECREL32LSB:
case R_IA64_DIR32LSB:
if (ebl->data == ELFDATA2LSB)
return ELF_T_WORD;
break;
case R_IA64_DIR64MSB:
+ case R_IA64_SECREL64MSB:
if (ebl->data == ELFDATA2MSB)
return ELF_T_XWORD;
break;
+ case R_IA64_SECREL64LSB:
case R_IA64_DIR64LSB:
if (ebl->data == ELFDATA2LSB)
return ELF_T_XWORD;
diff --git a/elfutils/backends/ppc64_init.c b/elfutils/backends/ppc64_init.c
index 1d4e8304..8cd75357 100644
--- a/elfutils/backends/ppc64_init.c
+++ b/elfutils/backends/ppc64_init.c
@@ -1,5 +1,5 @@
/* Initialization of PPC64 specific backend library.
- Copyright (C) 2004, 2005 Red Hat, Inc.
+ Copyright (C) 2004, 2005, 2006 Red Hat, Inc.
This file is part of Red Hat elfutils.
Written by Ulrich Drepper <drepper@redhat.com>, 2004.
@@ -57,7 +57,7 @@ ppc64_init (elf, machine, eh, ehlen)
HOOK (eh, check_special_symbol);
HOOK (eh, bss_plt_p);
HOOK (eh, return_value_location);
- HOOK (eh, register_name);
+ HOOK (eh, register_info);
return MODVERSION;
}
diff --git a/elfutils/backends/ppc_init.c b/elfutils/backends/ppc_init.c
index 1663258c..1dfd5ec9 100644
--- a/elfutils/backends/ppc_init.c
+++ b/elfutils/backends/ppc_init.c
@@ -1,5 +1,5 @@
/* Initialization of PPC specific backend library.
- Copyright (C) 2004, 2005 Red Hat, Inc.
+ Copyright (C) 2004, 2005, 2006 Red Hat, Inc.
This file is part of Red Hat elfutils.
Written by Ulrich Drepper <drepper@redhat.com>, 2004.
@@ -56,7 +56,7 @@ ppc_init (elf, machine, eh, ehlen)
HOOK (eh, check_special_symbol);
HOOK (eh, bss_plt_p);
HOOK (eh, return_value_location);
- HOOK (eh, register_name);
+ HOOK (eh, register_info);
return MODVERSION;
}
diff --git a/elfutils/backends/ppc_regs.c b/elfutils/backends/ppc_regs.c
index bea8d357..3d47d3d0 100644
--- a/elfutils/backends/ppc_regs.c
+++ b/elfutils/backends/ppc_regs.c
@@ -28,14 +28,16 @@
#endif
#include <string.h>
+#include <dwarf.h>
#define BACKEND ppc_
#include "libebl_CPU.h"
ssize_t
-ppc_register_name (Ebl *ebl __attribute__ ((unused)),
+ppc_register_info (Ebl *ebl __attribute__ ((unused)),
int regno, char *name, size_t namelen,
- const char **prefix, const char **setname)
+ const char **prefix, const char **setname,
+ int *bits, int *type)
{
if (name == NULL)
return 1156;
@@ -44,6 +46,9 @@ ppc_register_name (Ebl *ebl __attribute__ ((unused)),
return -1;
*prefix = NULL;
+ *bits = ebl->machine == EM_PPC64 ? 64 : 32;
+ *type = (regno < 32 ? DW_ATE_signed
+ : regno < 64 ? DW_ATE_float : DW_ATE_unsigned);
if (regno < 32 || regno == 64 || regno == 66)
*setname = "integer";
@@ -52,7 +57,10 @@ ppc_register_name (Ebl *ebl __attribute__ ((unused)),
else if (regno < 1124)
*setname = "privileged";
else
- *setname = "vector";
+ {
+ *setname = "vector";
+ *bits = 128;
+ }
switch (regno)
{
@@ -155,5 +163,5 @@ ppc_register_name (Ebl *ebl __attribute__ ((unused)),
return namelen;
}
-__typeof (ppc_register_name)
- ppc64_register_name __attribute__ ((alias ("ppc_register_name")));
+__typeof (ppc_register_info)
+ ppc64_register_info __attribute__ ((alias ("ppc_register_info")));
diff --git a/elfutils/backends/s390_init.c b/elfutils/backends/s390_init.c
index 80cbb832..05ffce60 100644
--- a/elfutils/backends/s390_init.c
+++ b/elfutils/backends/s390_init.c
@@ -50,7 +50,7 @@ s390_init (elf, machine, eh, ehlen)
eh->name = "IBM S/390";
s390_init_reloc (eh);
HOOK (eh, reloc_simple_type);
- HOOK (eh, register_name);
+ HOOK (eh, register_info);
HOOK (eh, return_value_location);
/* Only the 64-bit format uses the incorrect hash table entry size. */
diff --git a/elfutils/backends/s390_regs.c b/elfutils/backends/s390_regs.c
index 28b79898..7e8113a2 100644
--- a/elfutils/backends/s390_regs.c
+++ b/elfutils/backends/s390_regs.c
@@ -28,6 +28,7 @@
#endif
#include <string.h>
+#include <dwarf.h>
#define BACKEND s390_
#include "libebl_CPU.h"
@@ -50,9 +51,10 @@ zseries (64)
ssize_t
-s390_register_name (Ebl *ebl __attribute__ ((unused)),
+s390_register_info (Ebl *ebl __attribute__ ((unused)),
int regno, char *name, size_t namelen,
- const char **prefix, const char **setname)
+ const char **prefix, const char **setname,
+ int *bits, int *type)
{
if (name == NULL)
return 66;
@@ -62,14 +64,26 @@ s390_register_name (Ebl *ebl __attribute__ ((unused)),
*prefix = "%";
+ *bits = ebl->class == ELFCLASS64 ? 64 : 32;
+ *type = DW_ATE_unsigned;
if (regno < 16)
- *setname = "integer";
+ {
+ *setname = "integer";
+ *type = DW_ATE_signed;
+ }
else if (regno < 32)
- *setname = "FPU";
+ {
+ *setname = "FPU";
+ *type = DW_ATE_float;
+ *bits = 64;
+ }
else if (regno < 48 || regno > 63)
*setname = "control";
else
- *setname = "access";
+ {
+ *setname = "access";
+ *bits = 32;
+ }
switch (regno)
{
@@ -116,6 +130,7 @@ s390_register_name (Ebl *ebl __attribute__ ((unused)),
case 64:
return stpcpy (name, "pswm") + 1 - name;
case 65:
+ *type = DW_ATE_address;
return stpcpy (name, "pswa") + 1 - name;
default:
diff --git a/elfutils/backends/sparc_init.c b/elfutils/backends/sparc_init.c
index 3767c1a8..ba0e08a3 100644
--- a/elfutils/backends/sparc_init.c
+++ b/elfutils/backends/sparc_init.c
@@ -1,5 +1,5 @@
/* Initialization of SPARC specific backend library.
- Copyright (C) 2002, 2005 Red Hat, Inc.
+ Copyright (C) 2002, 2005, 2006 Red Hat, Inc.
This file is part of Red Hat elfutils.
Red Hat elfutils is free software; you can redistribute it and/or modify
@@ -56,7 +56,8 @@ sparc_init (elf, machine, eh, ehlen)
sparc_init_reloc (eh);
HOOK (eh, reloc_simple_type);
//HOOK (eh, core_note);
- HOOK (eh, register_name);
+ HOOK (eh, register_info);
+ HOOK (eh, return_value_location);
return MODVERSION;
}
diff --git a/elfutils/backends/sparc_regs.c b/elfutils/backends/sparc_regs.c
index 820878e1..b3e9e201 100644
--- a/elfutils/backends/sparc_regs.c
+++ b/elfutils/backends/sparc_regs.c
@@ -28,45 +28,77 @@
#endif
#include <string.h>
+#include <dwarf.h>
#define BACKEND sparc_
#include "libebl_CPU.h"
ssize_t
-sparc_register_name (Ebl *ebl,
+sparc_register_info (Ebl *ebl,
int regno, char *name, size_t namelen,
- const char **prefix, const char **setname)
+ const char **prefix, const char **setname,
+ int *bits, int *type)
{
- const int nfp = ebl->machine == EM_SPARC ? 32 : 64;
+ const int nfp = 32 + (ebl->machine == EM_SPARC ? 0 : 16);
+ const int nspec = ebl->machine == EM_SPARC ? 8 : 6;
if (name == NULL)
- return 32 + nfp;
+ return 32 + nfp + nspec;
- if (regno < 0 || regno >= 32 + nfp || namelen < 4)
+ if (regno < 0 || regno >= 32 + nfp + nspec || namelen < 6)
return -1;
+ *bits = ebl->machine == EM_SPARC ? 32 : 64;
+ *type = DW_ATE_signed;
+
*prefix = "%";
+ if (regno >= 32 + nfp)
+ {
+ regno -= 32 + nfp;
+ static const char names[2][8][6] =
+ {
+ { "y", "psr", "wim", "tbr", "pc", "npc", "fsr", "csr" }, /* v8 */
+ { "pc", "npc", "state", "fsr", "fprs", "y" } /* v9 */
+ };
+ *setname = "control";
+ *type = DW_ATE_unsigned;
+ if ((ebl->machine != EM_SPARC ? 0 : 4) + 1 - (unsigned int) regno <= 1)
+ *type = DW_ATE_address;
+ return stpncpy (name, names[ebl->machine != EM_SPARC][regno],
+ namelen) + 1 - name;
+ }
+
if (regno < 32)
{
*setname = "integer";
name[0] = "goli"[regno >> 3];
name[1] = (regno & 7) + '0';
namelen = 2;
+ if ((regno & 8) && (regno & 7) == 6)
+ *type = DW_ATE_address;
}
else
{
*setname = "FPU";
+ *type = DW_ATE_float;
+
+ regno -= 32;
+ if (regno >= 32)
+ regno = 32 + 2 * (regno - 32);
+ else
+ *bits = 32;
+
name[0] = 'f';
- if (regno < 32 + 10)
+ if (regno < 10)
{
- name[1] = (regno - 32) + '0';
+ name[1] = regno + '0';
namelen = 2;
}
else
{
- name[1] = (regno - 32) / 10 + '0';
- name[2] = (regno - 32) % 10 + '0';
+ name[1] = regno / 10 + '0';
+ name[2] = regno % 10 + '0';
namelen = 3;
}
}
diff --git a/elfutils/backends/sparc_retval.c b/elfutils/backends/sparc_retval.c
new file mode 100644
index 00000000..cfde0d2f
--- /dev/null
+++ b/elfutils/backends/sparc_retval.c
@@ -0,0 +1,154 @@
+/* Function return value location for SPARC.
+ Copyright (C) 2006 Red Hat, Inc.
+
+ This program is Open Source software; you can redistribute it and/or
+ modify it under the terms of the Open Software License version 1.0 as
+ published by the Open Source Initiative.
+
+ You should have received a copy of the Open Software License along
+ with this program; if not, you may obtain a copy of the Open Software
+ License version 1.0 from http://www.opensource.org/licenses/osl.php or
+ by writing the Open Source Initiative c/o Lawrence Rosen, Esq.,
+ 3001 King Ranch Road, Ukiah, CA 95482. */
+
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
+#include <assert.h>
+#include <dwarf.h>
+
+#define BACKEND sparc_
+#include "libebl_CPU.h"
+
+
+/* %o0, or pair %o0, %o1. */
+static const Dwarf_Op loc_intreg[] =
+ {
+ { .atom = DW_OP_reg8 }, { .atom = DW_OP_piece, .number = 4 },
+ { .atom = DW_OP_reg9 }, { .atom = DW_OP_piece, .number = 4 },
+ };
+#define nloc_intreg 1
+#define nloc_intregpair 4
+
+/* %f0 or pair %f0, %f1, or quad %f0..%f3. */
+static const Dwarf_Op loc_fpreg[] =
+ {
+ { .atom = DW_OP_regx, .number = 32 }, { .atom = DW_OP_piece, .number = 4 },
+ { .atom = DW_OP_regx, .number = 33 }, { .atom = DW_OP_piece, .number = 4 },
+ { .atom = DW_OP_regx, .number = 34 }, { .atom = DW_OP_piece, .number = 4 },
+ { .atom = DW_OP_regx, .number = 35 }, { .atom = DW_OP_piece, .number = 4 },
+ };
+#define nloc_fpreg 1
+#define nloc_fpregpair 4
+#define nloc_fpregquad 8
+
+/* The return value is a structure and is actually stored in stack space
+ passed in a hidden argument by the caller. But, the compiler
+ helpfully returns the address of that space in %o0. */
+static const Dwarf_Op loc_aggregate[] =
+ {
+ { .atom = DW_OP_breg8, .number = 0 }
+ };
+#define nloc_aggregate 1
+
+int
+sparc_return_value_location (Dwarf_Die *functypedie, const Dwarf_Op **locp)
+{
+ /* Start with the function's type, and get the DW_AT_type attribute,
+ which is the type of the return value. */
+
+ Dwarf_Attribute attr_mem;
+ Dwarf_Attribute *attr = dwarf_attr (functypedie, DW_AT_type, &attr_mem);
+ if (attr == NULL)
+ /* The function has no return value, like a `void' function in C. */
+ return 0;
+
+ Dwarf_Die die_mem;
+ Dwarf_Die *typedie = dwarf_formref_die (attr, &die_mem);
+ int tag = dwarf_tag (typedie);
+
+ /* Follow typedefs and qualifiers to get to the actual type. */
+ while (tag == DW_TAG_typedef
+ || tag == DW_TAG_const_type || tag == DW_TAG_volatile_type
+ || tag == DW_TAG_restrict_type || tag == DW_TAG_mutable_type)
+ {
+ attr = dwarf_attr (typedie, DW_AT_type, &attr_mem);
+ typedie = dwarf_formref_die (attr, &die_mem);
+ tag = dwarf_tag (typedie);
+ }
+
+ Dwarf_Word size;
+ switch (tag)
+ {
+ case -1:
+ return -1;
+
+ case DW_TAG_subrange_type:
+ if (! dwarf_hasattr (typedie, DW_AT_byte_size))
+ {
+ attr = dwarf_attr (typedie, DW_AT_type, &attr_mem);
+ typedie = dwarf_formref_die (attr, &die_mem);
+ tag = dwarf_tag (typedie);
+ }
+ /* Fall through. */
+
+ case DW_TAG_base_type:
+ case DW_TAG_enumeration_type:
+ case DW_TAG_pointer_type:
+ case DW_TAG_ptr_to_member_type:
+ if (dwarf_formudata (dwarf_attr (typedie, DW_AT_byte_size,
+ &attr_mem), &size) != 0)
+ {
+ uint8_t asize;
+ Dwarf_Die cudie;
+ if ((tag == DW_TAG_pointer_type || tag == DW_TAG_ptr_to_member_type)
+ && dwarf_diecu (typedie, &cudie, &asize, NULL) != NULL)
+ size = asize;
+ else
+ return -1;
+ }
+ if (tag == DW_TAG_base_type)
+ {
+ Dwarf_Word encoding;
+ if (dwarf_formudata (dwarf_attr (typedie, DW_AT_encoding,
+ &attr_mem), &encoding) != 0)
+ return -1;
+ if (encoding == DW_ATE_float)
+ {
+ *locp = loc_fpreg;
+ if (size <= 4)
+ return nloc_fpreg;
+ if (size <= 8)
+ return nloc_fpregpair;
+ if (size <= 16)
+ return nloc_fpregquad;
+ }
+ }
+ if (size <= 8)
+ {
+ intreg:
+ *locp = loc_intreg;
+ return size <= 4 ? nloc_intreg : nloc_intregpair;
+ }
+
+ aggregate:
+ *locp = loc_aggregate;
+ return nloc_aggregate;
+
+ case DW_TAG_structure_type:
+ case DW_TAG_class_type:
+ case DW_TAG_union_type:
+ case DW_TAG_array_type:
+ if (dwarf_formudata (dwarf_attr (typedie, DW_AT_byte_size,
+ &attr_mem), &size) == 0
+ && size > 0 && size <= 8)
+ goto intreg;
+ goto aggregate;
+ }
+
+ /* XXX We don't have a good way to return specific errors from ebl calls.
+ This value means we do not understand the type, but it is well-formed
+ DWARF and might be valid. */
+ return -2;
+}
diff --git a/elfutils/backends/x86_64_init.c b/elfutils/backends/x86_64_init.c
index 4951e1c7..476f4ed2 100644
--- a/elfutils/backends/x86_64_init.c
+++ b/elfutils/backends/x86_64_init.c
@@ -1,5 +1,5 @@
/* Initialization of x86-64 specific backend library.
- Copyright (C) 2002, 2005 Red Hat, Inc.
+ Copyright (C) 2002, 2005, 2006 Red Hat, Inc.
This file is part of Red Hat elfutils.
Written by Ulrich Drepper <drepper@redhat.com>, 2002.
@@ -54,7 +54,7 @@ x86_64_init (elf, machine, eh, ehlen)
HOOK (eh, reloc_simple_type);
HOOK (eh, core_note);
HOOK (eh, return_value_location);
- HOOK (eh, register_name);
+ HOOK (eh, register_info);
return MODVERSION;
}
diff --git a/elfutils/backends/x86_64_regs.c b/elfutils/backends/x86_64_regs.c
index 45ef94ea..1128a352 100644
--- a/elfutils/backends/x86_64_regs.c
+++ b/elfutils/backends/x86_64_regs.c
@@ -1,5 +1,5 @@
/* Register names and numbers for x86-64 DWARF.
- Copyright (C) 2005 Red Hat, Inc.
+ Copyright (C) 2005, 2006 Red Hat, Inc.
This file is part of Red Hat elfutils.
Red Hat elfutils is free software; you can redistribute it and/or modify
@@ -34,9 +34,10 @@
#include "libebl_CPU.h"
ssize_t
-x86_64_register_name (Ebl *ebl __attribute__ ((unused)),
+x86_64_register_info (Ebl *ebl __attribute__ ((unused)),
int regno, char *name, size_t namelen,
- const char **prefix, const char **setname)
+ const char **prefix, const char **setname,
+ int *bits, int *type)
{
if (name == NULL)
return 49;
@@ -45,14 +46,32 @@ x86_64_register_name (Ebl *ebl __attribute__ ((unused)),
return -1;
*prefix = "%";
+ *bits = 64;
+ *type = DW_ATE_unsigned;
if (regno < 17)
- *setname = "integer";
+ {
+ *setname = "integer";
+ if (regno == 16 || regno == 6 || regno == 7)
+ *type = DW_ATE_address;
+ else
+ *type = DW_ATE_signed;
+ }
else if (regno < 33)
- *setname = "SSE";
+ {
+ *setname = "SSE";
+ *bits = 128;
+ }
else if (regno < 41)
- *setname = "x87";
+ {
+ *setname = "x87";
+ *type = DW_ATE_float;
+ *bits = 80;
+ }
else
- *setname = "MMX";
+ {
+ *setname = "MMX";
+ *bits = 64;
+ }
switch (regno)
{
diff --git a/elfutils/config/Makefile.in b/elfutils/config/Makefile.in
index 538669c6..afff925d 100644
--- a/elfutils/config/Makefile.in
+++ b/elfutils/config/Makefile.in
@@ -92,6 +92,9 @@ LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LOCALEDIR = @LOCALEDIR@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
MAKEINFO = @MAKEINFO@
MKINSTALLDIRS = @MKINSTALLDIRS@
MODVERSION = @MODVERSION@
@@ -166,7 +169,7 @@ EXTRA_DIST = elfutils.spec.in
all: all-am
.SUFFIXES:
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
@@ -191,9 +194,9 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
uninstall-info-am:
tags: TAGS
diff --git a/elfutils/config/elfutils.spec.in b/elfutils/config/elfutils.spec.in
index 05a2f5e3..57756158 100644
--- a/elfutils/config/elfutils.spec.in
+++ b/elfutils/config/elfutils.spec.in
@@ -154,6 +154,12 @@ rm -rf ${RPM_BUILD_ROOT}
%{_libdir}/libelf.so
%changelog
+* Tue Oct 10 2006 Ulrich Drepper <drepper@redhat.com> 0.124-1
+- libebl: sparc backend support for return value location
+- libebl, libdwfl: backend register name support extended with more info
+- libelf, libdw: bug fixes for unaligned accesses on machines that care
+- readelf, elflint: trivial bugs fixed
+
* Mon Aug 14 2006 Roland McGrath <roland@redhat.com> 0.123-1
- libebl: Backend build fixes, thanks to Stepan Kasal.
- libebl: ia64 backend support for register names, return value location
diff --git a/elfutils/configure b/elfutils/configure
index 4ce18f59..00c3c6f1 100755
--- a/elfutils/configure
+++ b/elfutils/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.59 for Red Hat elfutils 0.123.
+# Generated by GNU Autoconf 2.59 for Red Hat elfutils 0.124.
#
# Report bugs to <http://bugzilla.redhat.com/bugzilla/>.
#
@@ -271,12 +271,12 @@ SHELL=${CONFIG_SHELL-/bin/sh}
# Identity of this package.
PACKAGE_NAME='Red Hat elfutils'
PACKAGE_TARNAME='elfutils'
-PACKAGE_VERSION='0.123'
-PACKAGE_STRING='Red Hat elfutils 0.123'
+PACKAGE_VERSION='0.124'
+PACKAGE_STRING='Red Hat elfutils 0.124'
PACKAGE_BUGREPORT='http://bugzilla.redhat.com/bugzilla/'
ac_unique_file="libelf/libelf.h"
-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar MODVERSION build build_cpu build_vendor build_os host host_cpu host_vendor host_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE RANLIB ac_ct_RANLIB YACC LEX LEXLIB LEX_OUTPUT_ROOT LOCALEDIR DATADIRNAME NATIVE_LD_TRUE NATIVE_LD_FALSE base_cpu NEVER_TRUE NEVER_FALSE MUDFLAP_TRUE MUDFLAP_FALSE GPROF_TRUE GPROF_FALSE GCOV_TRUE GCOV_FALSE BUILD_STATIC_TRUE BUILD_STATIC_FALSE TESTS_RPATH_TRUE TESTS_RPATH_FALSE LIBEBL_SUBDIR HAVE_LIBASM_TRUE HAVE_LIBASM_FALSE STANDALONE_TRUE STANDALONE_FALSE USE_NLS MKINSTALLDIRS MSGFMT GMSGFMT XGETTEXT MSGMERGE LIBOBJS LTLIBOBJS'
+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT MODVERSION build build_cpu build_vendor build_os host host_cpu host_vendor host_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE RANLIB ac_ct_RANLIB YACC LEX LEXLIB LEX_OUTPUT_ROOT LOCALEDIR DATADIRNAME NATIVE_LD_TRUE NATIVE_LD_FALSE base_cpu NEVER_TRUE NEVER_FALSE MUDFLAP_TRUE MUDFLAP_FALSE GPROF_TRUE GPROF_FALSE GCOV_TRUE GCOV_FALSE BUILD_STATIC_TRUE BUILD_STATIC_FALSE TESTS_RPATH_TRUE TESTS_RPATH_FALSE LIBEBL_SUBDIR HAVE_LIBASM_TRUE HAVE_LIBASM_FALSE STANDALONE_TRUE STANDALONE_FALSE USE_NLS MKINSTALLDIRS MSGFMT GMSGFMT XGETTEXT MSGMERGE LIBOBJS LTLIBOBJS'
ac_subst_files=''
# Initialize some variables set by options.
@@ -741,7 +741,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures Red Hat elfutils 0.123 to adapt to many kinds of systems.
+\`configure' configures Red Hat elfutils 0.124 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -807,13 +807,15 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of Red Hat elfutils 0.123:";;
+ short | recursive ) echo "Configuration of Red Hat elfutils 0.124:";;
esac
cat <<\_ACEOF
Optional Features:
--disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
--enable-FEATURE[=ARG] include FEATURE [ARG=yes]
+ --enable-maintainer-mode enable make rules and dependencies not useful
+ (and sometimes confusing) to the casual installer
--enable-tls enable use of thread local storage
--disable-dependency-tracking speeds up one-time build
--enable-dependency-tracking do not reject slow dependency extractors
@@ -933,7 +935,7 @@ fi
test -n "$ac_init_help" && exit 0
if $ac_init_version; then
cat <<\_ACEOF
-Red Hat elfutils configure 0.123
+Red Hat elfutils configure 0.124
generated by GNU Autoconf 2.59
Copyright (C) 2003 Free Software Foundation, Inc.
@@ -949,7 +951,7 @@ cat >&5 <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by Red Hat elfutils $as_me 0.123, which was
+It was created by Red Hat elfutils $as_me 0.124, which was
generated by GNU Autoconf 2.59. Invocation command line was
$ $0 $@
@@ -1598,7 +1600,7 @@ fi
# Define the identity of the package.
PACKAGE='elfutils'
- VERSION='0.123'
+ VERSION='0.124'
cat >>confdefs.h <<_ACEOF
@@ -1728,6 +1730,30 @@ am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'
+echo "$as_me:$LINENO: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo $ECHO_N "checking whether to enable maintainer-specific portions of Makefiles... $ECHO_C" >&6
+ # Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
+if test "${enable_maintainer_mode+set}" = set; then
+ enableval="$enable_maintainer_mode"
+ USE_MAINTAINER_MODE=$enableval
+else
+ USE_MAINTAINER_MODE=no
+fi;
+ echo "$as_me:$LINENO: result: $USE_MAINTAINER_MODE" >&5
+echo "${ECHO_T}$USE_MAINTAINER_MODE" >&6
+
+
+if test $USE_MAINTAINER_MODE = yes; then
+ MAINTAINER_MODE_TRUE=
+ MAINTAINER_MODE_FALSE='#'
+else
+ MAINTAINER_MODE_TRUE='#'
+ MAINTAINER_MODE_FALSE=
+fi
+
+ MAINT=$MAINTAINER_MODE_TRUE
+
+
MODVERSION="Build on $(hostname) $(date +%FT%R:%S%z)"
@@ -4319,6 +4345,13 @@ LIBOBJS=$ac_libobjs
LTLIBOBJS=$ac_ltlibobjs
+if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then
+ { { echo "$as_me:$LINENO: error: conditional \"MAINTAINER_MODE\" was never defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"MAINTAINER_MODE\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+ { (exit 1); exit 1; }; }
+fi
if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then
{ { echo "$as_me:$LINENO: error: conditional \"AMDEP\" was never defined.
Usually this means the macro was only invoked conditionally." >&5
@@ -4667,7 +4700,7 @@ _ASBOX
} >&5
cat >&5 <<_CSEOF
-This file was extended by Red Hat elfutils $as_me 0.123, which was
+This file was extended by Red Hat elfutils $as_me 0.124, which was
generated by GNU Autoconf 2.59. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -4730,7 +4763,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF
ac_cs_version="\\
-Red Hat elfutils config.status 0.123
+Red Hat elfutils config.status 0.124
configured by $0, generated by GNU Autoconf 2.59,
with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
@@ -4973,6 +5006,9 @@ s,@am__leading_dot@,$am__leading_dot,;t t
s,@AMTAR@,$AMTAR,;t t
s,@am__tar@,$am__tar,;t t
s,@am__untar@,$am__untar,;t t
+s,@MAINTAINER_MODE_TRUE@,$MAINTAINER_MODE_TRUE,;t t
+s,@MAINTAINER_MODE_FALSE@,$MAINTAINER_MODE_FALSE,;t t
+s,@MAINT@,$MAINT,;t t
s,@MODVERSION@,$MODVERSION,;t t
s,@build@,$build,;t t
s,@build_cpu@,$build_cpu,;t t
diff --git a/elfutils/configure.ac b/elfutils/configure.ac
index 06d44283..f3644f36 100644
--- a/elfutils/configure.ac
+++ b/elfutils/configure.ac
@@ -16,7 +16,7 @@ dnl You should have received a copy of the GNU General Public License
dnl along with this program; if not, write to the Free Software Foundation,
dnl Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
dnl
-AC_INIT([Red Hat elfutils],[0.123],[http://bugzilla.redhat.com/bugzilla/],
+AC_INIT([Red Hat elfutils],[0.124],[http://bugzilla.redhat.com/bugzilla/],
[elfutils])
AC_CONFIG_AUX_DIR([config])
@@ -26,6 +26,7 @@ AC_COPYRIGHT([Copyright (C) 1996-2003, 2004, 2005, 2006 Red Hat, Inc.])
AC_PREREQ(2.59) dnl Minimum Autoconf version required.
AM_INIT_AUTOMAKE([gnits 1.7])
+AM_MAINTAINER_MODE
dnl Unique ID for this build.
MODVERSION="Build on $(hostname) $(date +%FT%R:%S%z)"
diff --git a/elfutils/elfutils.spec b/elfutils/elfutils.spec
index 691eeea4..a0157338 100644
--- a/elfutils/elfutils.spec
+++ b/elfutils/elfutils.spec
@@ -1,7 +1,7 @@
# -*- rpm-spec-*-
Summary: A collection of utilities and DSOs to handle compiled objects.
Name: elfutils
-Version: 0.123
+Version: 0.124
Release: 1
License: GPL
Group: Development/Tools
@@ -154,6 +154,12 @@ rm -rf ${RPM_BUILD_ROOT}
%{_libdir}/libelf.so
%changelog
+* Tue Oct 10 2006 Ulrich Drepper <drepper@redhat.com> 0.124-1
+- libebl: sparc backend support for return value location
+- libebl, libdwfl: backend register name support extended with more info
+- libelf, libdw: bug fixes for unaligned accesses on machines that care
+- readelf, elflint: trivial bugs fixed
+
* Mon Aug 14 2006 Roland McGrath <roland@redhat.com> 0.123-1
- libebl: Backend build fixes, thanks to Stepan Kasal.
- libebl: ia64 backend support for register names, return value location
diff --git a/elfutils/lib/Makefile.in b/elfutils/lib/Makefile.in
index 9bd19fb1..180943f3 100644
--- a/elfutils/lib/Makefile.in
+++ b/elfutils/lib/Makefile.in
@@ -111,6 +111,9 @@ LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LOCALEDIR = @LOCALEDIR@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
MAKEINFO = @MAKEINFO@
MKINSTALLDIRS = @MKINSTALLDIRS@
MODVERSION = @MODVERSION@
@@ -197,7 +200,7 @@ all: all-am
.SUFFIXES:
.SUFFIXES: .c .o .obj
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
@@ -222,9 +225,9 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
clean-noinstLIBRARIES:
diff --git a/elfutils/libasm/ChangeLog b/elfutils/libasm/ChangeLog
index 56d2961e..99fb5e4f 100644
--- a/elfutils/libasm/ChangeLog
+++ b/elfutils/libasm/ChangeLog
@@ -1,3 +1,7 @@
+2006-08-29 Roland McGrath <roland@redhat.com>
+
+ * Makefile.am (CLEANFILES): Add libasm.so.$(VERSION).
+
2005-11-13 Roland McGrath <roland@redhat.com>
* Makefile.am (INCLUDES): Search in libdw.
diff --git a/elfutils/libasm/Makefile.am b/elfutils/libasm/Makefile.am
index 3b2b1812..3bea3747 100644
--- a/elfutils/libasm/Makefile.am
+++ b/elfutils/libasm/Makefile.am
@@ -1,6 +1,6 @@
## Process this file with automake to create Makefile.in
##
-## Copyright (C) 2002, 2004, 2005 Red Hat, Inc.
+## Copyright (C) 2002, 2004, 2005, 2006 Red Hat, Inc.
## This file is part of Red Hat elfutils.
##
## Red Hat elfutils is free software; you can redistribute it and/or modify
@@ -99,4 +99,4 @@ endif
noinst_HEADERS = libasmP.h symbolhash.h
EXTRA_DIST = libasm.map
-CLEANFILES = $(am_libasm_pic_a_OBJECTS) *.gcno *.gcda
+CLEANFILES = $(am_libasm_pic_a_OBJECTS) *.gcno *.gcda libasm.so.$(VERSION)
diff --git a/elfutils/libasm/Makefile.in b/elfutils/libasm/Makefile.in
index 6db5babe..a9872b0e 100644
--- a/elfutils/libasm/Makefile.in
+++ b/elfutils/libasm/Makefile.in
@@ -144,6 +144,9 @@ LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LOCALEDIR = @LOCALEDIR@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
MAKEINFO = @MAKEINFO@
MKINSTALLDIRS = @MKINSTALLDIRS@
MODVERSION = @MODVERSION@
@@ -248,12 +251,12 @@ libasm_a_SOURCES = asm_begin.c asm_abort.c asm_end.c asm_error.c \
@MUDFLAP_FALSE@libasm_so_SOURCES =
noinst_HEADERS = libasmP.h symbolhash.h
EXTRA_DIST = libasm.map
-CLEANFILES = $(am_libasm_pic_a_OBJECTS) *.gcno *.gcda
+CLEANFILES = $(am_libasm_pic_a_OBJECTS) *.gcno *.gcda libasm.so.$(VERSION)
all: all-am
.SUFFIXES:
.SUFFIXES: .c .o .obj
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
@@ -278,9 +281,9 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
install-libLIBRARIES: $(lib_LIBRARIES)
@$(NORMAL_INSTALL)
diff --git a/elfutils/libcpu/Makefile.in b/elfutils/libcpu/Makefile.in
index 2ef2937e..3f2febcf 100644
--- a/elfutils/libcpu/Makefile.in
+++ b/elfutils/libcpu/Makefile.in
@@ -107,6 +107,9 @@ LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LOCALEDIR = @LOCALEDIR@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
MAKEINFO = @MAKEINFO@
MKINSTALLDIRS = @MKINSTALLDIRS@
MODVERSION = @MODVERSION@
@@ -185,7 +188,7 @@ all: all-am
.SUFFIXES:
.SUFFIXES: .c .o .obj
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
@@ -210,9 +213,9 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
clean-noinstLIBRARIES:
diff --git a/elfutils/libdw/ChangeLog b/elfutils/libdw/ChangeLog
index 69c160a2..88a0c06d 100644
--- a/elfutils/libdw/ChangeLog
+++ b/elfutils/libdw/ChangeLog
@@ -1,3 +1,15 @@
+2006-08-29 Roland McGrath <roland@redhat.com>
+
+ * Makefile.am (CLEANFILES): Add libdw.so.$(VERSION).
+
+ * libdw.h (dwarf_diecu): Add __nonnull_attribute__.
+ (dwarf_child): Don't list arg 1 in __nonnull_attribute__.
+
+ * libdw_alloc.c (__libdw_allocate): Take new ALIGN argument, make sure
+ result is aligned. Adjust NEWP->remaining here for this allocation.
+ * libdwP.h: Update decl.
+ (libdw_alloc): Update caller.
+
2006-07-12 Ulrich Drepper <drepper@redhat.com>
* dwarf_child.c: Adjust for internal_function_def removal.
diff --git a/elfutils/libdw/Makefile.am b/elfutils/libdw/Makefile.am
index 5058dcf8..04d15bbf 100644
--- a/elfutils/libdw/Makefile.am
+++ b/elfutils/libdw/Makefile.am
@@ -1,6 +1,6 @@
## Process this file with automake to create Makefile.in
##
-## Copyright (C) 2002, 2003, 2004, 2005 Red Hat, Inc.
+## Copyright (C) 2002, 2003, 2004, 2005, 2006 Red Hat, Inc.
## This file is part of Red Hat elfutils.
##
## Red Hat elfutils is free software; you can redistribute it and/or modify
@@ -128,4 +128,4 @@ noinst_HEADERS = libdwP.h memory-access.h dwarf_abbrev_hash.h
EXTRA_DIST = libdw.map
-CLEANFILES = $(am_libdw_pic_a_OBJECTS) *.gcno *.gcda
+CLEANFILES = $(am_libdw_pic_a_OBJECTS) *.gcno *.gcda libdw.so.$(VERSION)
diff --git a/elfutils/libdw/Makefile.in b/elfutils/libdw/Makefile.in
index a117455e..8f68c953 100644
--- a/elfutils/libdw/Makefile.in
+++ b/elfutils/libdw/Makefile.in
@@ -184,6 +184,9 @@ LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LOCALEDIR = @LOCALEDIR@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
MAKEINFO = @MAKEINFO@
MKINSTALLDIRS = @MKINSTALLDIRS@
MODVERSION = @MODVERSION@
@@ -309,12 +312,12 @@ libdw_a_SOURCES = dwarf_begin.c dwarf_begin_elf.c dwarf_end.c dwarf_getelf.c \
libdw_a_LIBADD = $(addprefix ../libdwfl/,$(shell $(AR) t ../libdwfl/libdwfl.a))
noinst_HEADERS = libdwP.h memory-access.h dwarf_abbrev_hash.h
EXTRA_DIST = libdw.map
-CLEANFILES = $(am_libdw_pic_a_OBJECTS) *.gcno *.gcda
+CLEANFILES = $(am_libdw_pic_a_OBJECTS) *.gcno *.gcda libdw.so.$(VERSION)
all: all-am
.SUFFIXES:
.SUFFIXES: .c .o .obj
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
@@ -339,9 +342,9 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
install-libLIBRARIES: $(lib_LIBRARIES)
@$(NORMAL_INSTALL)
diff --git a/elfutils/libdw/libdw.h b/elfutils/libdw/libdw.h
index 0758a38d..d44f427d 100644
--- a/elfutils/libdw/libdw.h
+++ b/elfutils/libdw/libdw.h
@@ -232,7 +232,8 @@ extern Dwarf_Off dwarf_cuoffset (Dwarf_Die *die);
/* Return CU DIE containing given DIE. */
extern Dwarf_Die *dwarf_diecu (Dwarf_Die *die, Dwarf_Die *result,
- uint8_t *address_sizep, uint8_t *offset_sizep);
+ uint8_t *address_sizep, uint8_t *offset_sizep)
+ __nonnull_attribute__ (2);
/* Return CU DIE containing given address. */
extern Dwarf_Die *dwarf_addrdie (Dwarf *dbg, Dwarf_Addr addr,
@@ -240,7 +241,7 @@ extern Dwarf_Die *dwarf_addrdie (Dwarf *dbg, Dwarf_Addr addr,
/* Return child of current DIE. */
extern int dwarf_child (Dwarf_Die *die, Dwarf_Die *result)
- __nonnull_attribute__ (1, 2);
+ __nonnull_attribute__ (2);
/* Return sibling of given DIE. */
extern int dwarf_siblingof (Dwarf_Die *die, Dwarf_Die *result)
diff --git a/elfutils/libdw/libdwP.h b/elfutils/libdw/libdwP.h
index d4ee3036..8baa3fa3 100644
--- a/elfutils/libdw/libdwP.h
+++ b/elfutils/libdw/libdwP.h
@@ -1,5 +1,5 @@
/* Internal definitions for libdwarf.
- Copyright (C) 2002, 2003, 2004, 2005 Red Hat, Inc.
+ Copyright (C) 2002, 2003, 2004, 2005, 2006 Red Hat, Inc.
This file is part of Red Hat elfutils.
Written by Ulrich Drepper <drepper@redhat.com>, 2002.
@@ -283,7 +283,7 @@ struct Dwarf_CU
void *locs;
};
-#define CUDIE(fromcu) \
+#define CUDIE(fromcu) \
((Dwarf_Die) \
{ \
.cu = (fromcu), \
@@ -323,23 +323,20 @@ extern void __libdw_seterrno (int value) internal_function;
- ((uintptr_t) _result & (__alignof (type) - 1))) \
& (__alignof (type) - 1)); \
if (unlikely (_tail->remaining < _required + _padding)) \
- { \
- _result = (type *) __libdw_allocate (dbg, _required); \
- _tail = (dbg)->mem_tail; \
- } \
+ _result = (type *) __libdw_allocate (dbg, _required, __alignof (type));\
else \
{ \
_required += _padding; \
_result = (type *) ((char *) _result + _padding); \
+ _tail->remaining -= _required; \
} \
- _tail->remaining -= _required; \
_result; })
#define libdw_typed_alloc(dbg, type) \
libdw_alloc (dbg, type, sizeof (type), 1)
/* Callback to allocate more. */
-extern void *__libdw_allocate (Dwarf *dbg, size_t minsize)
+extern void *__libdw_allocate (Dwarf *dbg, size_t minsize, size_t align)
__attribute__ ((__malloc__)) __nonnull_attribute__ (1);
/* Default OOM handler. */
diff --git a/elfutils/libdw/libdw_alloc.c b/elfutils/libdw/libdw_alloc.c
index 1518ef62..917cb309 100644
--- a/elfutils/libdw/libdw_alloc.c
+++ b/elfutils/libdw/libdw_alloc.c
@@ -1,5 +1,5 @@
/* Memory handling for libdw.
- Copyright (C) 2003, 2004 Red Hat, Inc.
+ Copyright (C) 2003, 2004, 2006 Red Hat, Inc.
This file is part of Red Hat elfutils.
Written by Ulrich Drepper <drepper@redhat.com>, 2003.
@@ -60,20 +60,24 @@
void *
-__libdw_allocate (Dwarf *dbg, size_t minsize)
+__libdw_allocate (Dwarf *dbg, size_t minsize, size_t align)
{
size_t size = MAX (dbg->mem_default_size,
- 2 * minsize + offsetof (struct libdw_memblock, mem));
+ (align - 1 +
+ 2 * minsize + offsetof (struct libdw_memblock, mem)));
struct libdw_memblock *newp = malloc (size);
if (newp == NULL)
dbg->oom_handler ();
- newp->size = newp->remaining = size - offsetof (struct libdw_memblock, mem);
+ uintptr_t result = ((uintptr_t) newp->mem + align - 1) & ~(align - 1);
+
+ newp->size = size - offsetof (struct libdw_memblock, mem);
+ newp->remaining = (uintptr_t) newp + size - (result + minsize);
newp->prev = dbg->mem_tail;
dbg->mem_tail = newp;
- return newp->mem;
+ return (void *) result;
}
diff --git a/elfutils/libdwfl/ChangeLog b/elfutils/libdwfl/ChangeLog
index 0e3ac136..7dea9438 100644
--- a/elfutils/libdwfl/ChangeLog
+++ b/elfutils/libdwfl/ChangeLog
@@ -1,3 +1,8 @@
+2006-09-05 Roland McGrath <roland@redhat.com>
+
+ * derelocate.c (cache_sections): Use alloca instead of variable-sized
+ auto array, in function already alloca.
+
2006-08-14 Roland McGrath <roland@redhat.com>
* linux-kernel-modules.c (try_kernel_name): If the call to
diff --git a/elfutils/libdwfl/Makefile.in b/elfutils/libdwfl/Makefile.in
index 2861c199..f54bf451 100644
--- a/elfutils/libdwfl/Makefile.in
+++ b/elfutils/libdwfl/Makefile.in
@@ -144,6 +144,9 @@ LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LOCALEDIR = @LOCALEDIR@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
MAKEINFO = @MAKEINFO@
MKINSTALLDIRS = @MKINSTALLDIRS@
MODVERSION = @MODVERSION@
@@ -266,7 +269,7 @@ all: all-am
.SUFFIXES:
.SUFFIXES: .c .o .obj
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
@@ -291,9 +294,9 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
clean-noinstLIBRARIES:
diff --git a/elfutils/libdwfl/derelocate.c b/elfutils/libdwfl/derelocate.c
index 89a2de8b..c26be8d8 100644
--- a/elfutils/libdwfl/derelocate.c
+++ b/elfutils/libdwfl/derelocate.c
@@ -1,5 +1,5 @@
/* Recover relocatibility for addresses computed from debug information.
- Copyright (C) 2005 Red Hat, Inc.
+ Copyright (C) 2005, 2006 Red Hat, Inc.
This file is part of Red Hat elfutils.
Red Hat elfutils is free software; you can redistribute it and/or modify
@@ -124,7 +124,7 @@ cache_sections (Dwfl_Module *mod)
return -1;
}
- struct secref *sortrefs[nrefs];
+ struct secref **sortrefs = alloca (nrefs * sizeof sortrefs[0]);
for (size_t i = nrefs; i-- > 0; refs = refs->next)
sortrefs[i] = refs;
assert (refs == NULL);
diff --git a/elfutils/libdwfl/dwfl_module_register_names.c b/elfutils/libdwfl/dwfl_module_register_names.c
index 9004b6b4..79a874a8 100644
--- a/elfutils/libdwfl/dwfl_module_register_names.c
+++ b/elfutils/libdwfl/dwfl_module_register_names.c
@@ -1,5 +1,5 @@
/* Enumerate DWARF register numbers and their names.
- Copyright (C) 2005 Red Hat, Inc.
+ Copyright (C) 2005, 2006 Red Hat, Inc.
This file is part of Red Hat elfutils.
Red Hat elfutils is free software; you can redistribute it and/or modify
@@ -54,7 +54,8 @@ int
dwfl_module_register_names (mod, func, arg)
Dwfl_Module *mod;
int (*func) (void *, int regno, const char *setname,
- const char *prefix, const char *regname);
+ const char *prefix, const char *regname,
+ int bits, int type);
void *arg;
{
if (unlikely (mod == NULL))
@@ -70,15 +71,18 @@ dwfl_module_register_names (mod, func, arg)
}
}
- int nregs = ebl_register_name (mod->ebl, -1, NULL, 0, NULL, NULL);
+ int nregs = ebl_register_info (mod->ebl, -1, NULL, 0,
+ NULL, NULL, NULL, NULL);
int result = 0;
for (int regno = 0; regno < nregs && likely (result == 0); ++regno)
{
char name[32];
const char *setname = NULL;
const char *prefix = NULL;
- ssize_t len = ebl_register_name (mod->ebl, regno, name, sizeof name,
- &prefix, &setname);
+ int bits = -1;
+ int type = -1;
+ ssize_t len = ebl_register_info (mod->ebl, regno, name, sizeof name,
+ &prefix, &setname, &bits, &type);
if (unlikely (len < 0))
{
__libdwfl_seterrno (DWFL_E_LIBEBL);
@@ -88,7 +92,7 @@ dwfl_module_register_names (mod, func, arg)
if (likely (len > 0))
{
assert (len > 1); /* Backend should never yield "". */
- result = (*func) (arg, regno, setname, prefix, name);
+ result = (*func) (arg, regno, setname, prefix, name, bits, type);
}
}
diff --git a/elfutils/libdwfl/libdwfl.h b/elfutils/libdwfl/libdwfl.h
index ce85a6bb..a7e8caee 100644
--- a/elfutils/libdwfl/libdwfl.h
+++ b/elfutils/libdwfl/libdwfl.h
@@ -426,7 +426,8 @@ extern int dwfl_module_register_names (Dwfl_Module *mod,
int regno,
const char *setname,
const char *prefix,
- const char *regname),
+ const char *regname,
+ int bits, int type),
void *arg);
diff --git a/elfutils/libebl/ChangeLog b/elfutils/libebl/ChangeLog
index c4f5c65a..33fde08b 100644
--- a/elfutils/libebl/ChangeLog
+++ b/elfutils/libebl/ChangeLog
@@ -1,3 +1,17 @@
+2006-09-04 Roland McGrath <roland@redhat.com>
+
+ * ebl-hooks.h: Replace register_name hook with register_info.
+ Also yield natural bit width and base type encoding.
+ * eblopenbackend.c (default_register_name): Renamed
+ default_register_info, new args added.
+ (fill_defaults): Update initialization.
+ * eblregname.c: File renamed ...
+ * eblreginfo.c: ... to this.
+ (ebl_register_name): Renamed to ebl_register_info, new args added.
+ * libebl.h: Update decl.
+
+ * Makefile.am (gen_SOURCES): Update list.
+
2006-07-06 Ulrich Drepper <drepper@redhat.com>
* ebldynamictagname.c: Add support for DT_GNU_HASH.
diff --git a/elfutils/libebl/Makefile.am b/elfutils/libebl/Makefile.am
index 278d93e0..48042d9f 100644
--- a/elfutils/libebl/Makefile.am
+++ b/elfutils/libebl/Makefile.am
@@ -56,7 +56,7 @@ gen_SOURCES = eblopenbackend.c eblclosebackend.c eblstrtab.c \
eblgotpcreloccheck.c eblcopyrelocp.c eblsectionstripp.c \
eblelfclass.c eblelfdata.c eblelfmachine.c \
ebl_check_special_symbol.c eblbsspltp.c eblretval.c \
- eblregname.c eblnonerelocp.c eblrelativerelocp.c \
+ eblreginfo.c eblnonerelocp.c eblrelativerelocp.c \
eblsysvhashentrysize.c
libebl_a_SOURCES = $(gen_SOURCES)
diff --git a/elfutils/libebl/Makefile.in b/elfutils/libebl/Makefile.in
index 12e4abd3..372393c8 100644
--- a/elfutils/libebl/Makefile.in
+++ b/elfutils/libebl/Makefile.in
@@ -78,7 +78,7 @@ am__objects_1 = eblopenbackend.$(OBJEXT) eblclosebackend.$(OBJEXT) \
eblcopyrelocp.$(OBJEXT) eblsectionstripp.$(OBJEXT) \
eblelfclass.$(OBJEXT) eblelfdata.$(OBJEXT) \
eblelfmachine.$(OBJEXT) ebl_check_special_symbol.$(OBJEXT) \
- eblbsspltp.$(OBJEXT) eblretval.$(OBJEXT) eblregname.$(OBJEXT) \
+ eblbsspltp.$(OBJEXT) eblretval.$(OBJEXT) eblreginfo.$(OBJEXT) \
eblnonerelocp.$(OBJEXT) eblrelativerelocp.$(OBJEXT) \
eblsysvhashentrysize.$(OBJEXT)
am_libebl_a_OBJECTS = $(am__objects_1)
@@ -139,6 +139,9 @@ LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LOCALEDIR = @LOCALEDIR@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
MAKEINFO = @MAKEINFO@
MKINSTALLDIRS = @MKINSTALLDIRS@
MODVERSION = @MODVERSION@
@@ -231,7 +234,7 @@ gen_SOURCES = eblopenbackend.c eblclosebackend.c eblstrtab.c \
eblgotpcreloccheck.c eblcopyrelocp.c eblsectionstripp.c \
eblelfclass.c eblelfdata.c eblelfmachine.c \
ebl_check_special_symbol.c eblbsspltp.c eblretval.c \
- eblregname.c eblnonerelocp.c eblrelativerelocp.c \
+ eblreginfo.c eblnonerelocp.c eblrelativerelocp.c \
eblsysvhashentrysize.c
libebl_a_SOURCES = $(gen_SOURCES)
@@ -241,7 +244,7 @@ all: all-am
.SUFFIXES:
.SUFFIXES: .c .o .obj
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
@@ -266,9 +269,9 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
install-libLIBRARIES: $(lib_LIBRARIES)
@$(NORMAL_INSTALL)
@@ -333,7 +336,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eblobjnotetypename.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eblopenbackend.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eblosabiname.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eblregname.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eblreginfo.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eblrelativerelocp.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eblrelocsimpletype.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eblreloctypecheck.Po@am__quote@
diff --git a/elfutils/libebl/ebl-hooks.h b/elfutils/libebl/ebl-hooks.h
index e4923b2e..944e6404 100644
--- a/elfutils/libebl/ebl-hooks.h
+++ b/elfutils/libebl/ebl-hooks.h
@@ -135,9 +135,10 @@ int EBLHOOK(return_value_location) (Dwarf_Die *functypedie,
const Dwarf_Op **locp);
/* Return register name information. */
-ssize_t EBLHOOK(register_name) (Ebl *ebl,
+ssize_t EBLHOOK(register_info) (Ebl *ebl,
int regno, char *name, size_t namelen,
- const char **prefix, const char **setname);
+ const char **prefix, const char **setname,
+ int *bits, int *type);
/* Destructor for ELF backend handle. */
diff --git a/elfutils/libebl/eblopenbackend.c b/elfutils/libebl/eblopenbackend.c
index 5916e0de..dba22ba1 100644
--- a/elfutils/libebl/eblopenbackend.c
+++ b/elfutils/libebl/eblopenbackend.c
@@ -55,6 +55,7 @@
#include <dlfcn.h>
#include <error.h>
#include <libelfP.h>
+#include <dwarf.h>
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
@@ -199,10 +200,11 @@ static bool default_check_special_symbol (Elf *elf, GElf_Ehdr *ehdr,
static bool default_bss_plt_p (Elf *elf, GElf_Ehdr *ehdr);
static int default_return_value_location (Dwarf_Die *functypedie,
const Dwarf_Op **locops);
-static ssize_t default_register_name (Ebl *ebl,
+static ssize_t default_register_info (Ebl *ebl,
int regno, char *name, size_t namelen,
const char **prefix,
- const char **setname);
+ const char **setname,
+ int *bits, int *type);
static void
@@ -236,7 +238,7 @@ fill_defaults (Ebl *result)
result->check_special_symbol = default_check_special_symbol;
result->bss_plt_p = default_bss_plt_p;
result->return_value_location = default_return_value_location;
- result->register_name = default_register_name;
+ result->register_info = default_register_info;
result->destr = default_destr;
result->sysvhash_entrysize = sizeof (Elf32_Word);
}
@@ -657,15 +659,18 @@ default_return_value_location (Dwarf_Die *functypedie __attribute__ ((unused)),
}
static ssize_t
-default_register_name (Ebl *ebl __attribute__ ((unused)),
+default_register_info (Ebl *ebl __attribute__ ((unused)),
int regno, char *name, size_t namelen,
const char **prefix,
- const char **setname)
+ const char **setname,
+ int *bits, int *type)
{
if (name == NULL)
return 0;
*setname = "???";
*prefix = "";
+ *bits = -1;
+ *type = DW_ATE_void;
return snprintf (name, namelen, "reg%d", regno);
}
diff --git a/elfutils/libebl/eblregname.c b/elfutils/libebl/eblreginfo.c
index 212e375f..8fc4abfa 100644
--- a/elfutils/libebl/eblregname.c
+++ b/elfutils/libebl/eblreginfo.c
@@ -1,5 +1,5 @@
/* Return register name information.
- Copyright (C) 2005 Red Hat, Inc.
+ Copyright (C) 2005, 2006 Red Hat, Inc.
This file is part of Red Hat elfutils.
Red Hat elfutils is free software; you can redistribute it and/or modify
@@ -56,14 +56,16 @@
ssize_t
-ebl_register_name (ebl, regno, name, namelen, prefix, setname)
+ebl_register_info (ebl, regno, name, namelen, prefix, setname, bits, type)
Ebl *ebl;
int regno;
char *name;
size_t namelen;
const char **prefix;
const char **setname;
+ int *bits;
+ int *type;
{
- return ebl == NULL ? -1 : ebl->register_name (ebl, regno, name, namelen,
- prefix, setname);
+ return ebl == NULL ? -1 : ebl->register_info (ebl, regno, name, namelen,
+ prefix, setname, bits, type);
}
diff --git a/elfutils/libebl/libebl.h b/elfutils/libebl/libebl.h
index 6969c550..3375525d 100644
--- a/elfutils/libebl/libebl.h
+++ b/elfutils/libebl/libebl.h
@@ -219,7 +219,7 @@ extern int ebl_return_value_location (Ebl *ebl,
Dwarf_Die *functypedie,
const Dwarf_Op **locops);
-/* Fill in register name information given DWARF register numbers.
+/* Fill in register information given DWARF register numbers.
If NAME is null, return the maximum REGNO + 1 that has a name.
Otherwise, store in NAME the name for DWARF register number REGNO
and return the number of bytes written (including '\0' terminator).
@@ -229,9 +229,10 @@ extern int ebl_return_value_location (Ebl *ebl,
fit for "%s registers" title display, and *PREFIX to the string
that precedes NAME in canonical assembler syntax (e.g. "%" or "$").
The NAME string contains identifier characters only (maybe just digits). */
-extern ssize_t ebl_register_name (Ebl *ebl,
+extern ssize_t ebl_register_info (Ebl *ebl,
int regno, char *name, size_t namelen,
- const char **prefix, const char **setname);
+ const char **prefix, const char **setname,
+ int *bits, int *type);
/* ELF string table handling. */
diff --git a/elfutils/libelf-po/libelf.pot b/elfutils/libelf-po/libelf.pot
index 99a97ce6..b95338dd 100644
--- a/elfutils/libelf-po/libelf.pot
+++ b/elfutils/libelf-po/libelf.pot
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-08-14 22:47-0700\n"
+"POT-Creation-Date: 2006-10-10 08:37-0700\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
diff --git a/elfutils/libelf/ChangeLog b/elfutils/libelf/ChangeLog
index 029923c0..81c6057c 100644
--- a/elfutils/libelf/ChangeLog
+++ b/elfutils/libelf/ChangeLog
@@ -1,3 +1,11 @@
+2006-08-29 Roland McGrath <roland@redhat.com>
+
+ * elf32_getphdr.c: Don't byteswap phdr fields when EI_DATA matches
+ MY_ELFDATA on !ALLOW_UNALIGNED machines.
+ Reported by Christian Aichinger <Greek0@gmx.net>.
+
+ * Makefile.am (CLEANFILES): Add libelf.so.$(VERSION).
+
2006-08-08 Ulrich Drepper <drepper@redhat.com>
* elf.h (DT_VALNUM): Update.
diff --git a/elfutils/libelf/Makefile.am b/elfutils/libelf/Makefile.am
index 1c2e69a2..f27d4f0b 100644
--- a/elfutils/libelf/Makefile.am
+++ b/elfutils/libelf/Makefile.am
@@ -135,4 +135,4 @@ noinst_HEADERS = elf.h abstract.h common.h exttypes.h gelf_xlate.h libelfP.h \
version_xlate.h gnuhash_xlate.h dl-hash.h
EXTRA_DIST = libelf.map
-CLEANFILES = $(am_libelf_pic_a_OBJECTS) *.gcno *.gcda
+CLEANFILES = $(am_libelf_pic_a_OBJECTS) *.gcno *.gcda libelf.so.$(VERSION)
diff --git a/elfutils/libelf/Makefile.in b/elfutils/libelf/Makefile.in
index c573becd..8c2270e1 100644
--- a/elfutils/libelf/Makefile.in
+++ b/elfutils/libelf/Makefile.in
@@ -187,6 +187,9 @@ LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LOCALEDIR = @LOCALEDIR@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
MAKEINFO = @MAKEINFO@
MKINSTALLDIRS = @MKINSTALLDIRS@
MODVERSION = @MODVERSION@
@@ -326,12 +329,12 @@ noinst_HEADERS = elf.h abstract.h common.h exttypes.h gelf_xlate.h libelfP.h \
version_xlate.h gnuhash_xlate.h dl-hash.h
EXTRA_DIST = libelf.map
-CLEANFILES = $(am_libelf_pic_a_OBJECTS) *.gcno *.gcda
+CLEANFILES = $(am_libelf_pic_a_OBJECTS) *.gcno *.gcda libelf.so.$(VERSION)
all: all-am
.SUFFIXES:
.SUFFIXES: .c .o .obj
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
@@ -356,9 +359,9 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
install-libLIBRARIES: $(lib_LIBRARIES)
@$(NORMAL_INSTALL)
diff --git a/elfutils/libelf/elf32_getphdr.c b/elfutils/libelf/elf32_getphdr.c
index bb7c66de..69087245 100644
--- a/elfutils/libelf/elf32_getphdr.c
+++ b/elfutils/libelf/elf32_getphdr.c
@@ -1,5 +1,5 @@
/* Get ELF program header table.
- Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2005 Red Hat, Inc.
+ Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2005, 2006 Red Hat, Inc.
This file is part of Red Hat elfutils.
Written by Ulrich Drepper <drepper@redhat.com>, 1998.
@@ -55,6 +55,7 @@
#include <errno.h>
#include <stdlib.h>
#include <unistd.h>
+#include <assert.h>
#include <system.h>
#include "libelfP.h"
@@ -116,14 +117,14 @@ elfw2(LIBELFBITS,getphdr) (elf)
if (elf->map_address != NULL)
{
/* All the data is already mapped. Use it. */
+ void *file_phdr = ((char *) elf->map_address
+ + elf->start_offset + ehdr->e_phoff);
if (ehdr->e_ident[EI_DATA] == MY_ELFDATA
&& (ALLOW_UNALIGNED
- || ((((uintptr_t) elf->map_address + elf->start_offset
- + ehdr->e_phoff)
- & (__alignof__ (ElfW2(LIBELFBITS,Phdr)) - 1)) == 0)))
+ || ((uintptr_t) file_phdr
+ & (__alignof__ (ElfW2(LIBELFBITS,Phdr)) - 1)) == 0))
/* Simply use the mapped data. */
- elf->state.ELFW(elf,LIBELFBITS).phdr = (ElfW2(LIBELFBITS,Phdr) *)
- ((char *) elf->map_address + elf->start_offset + ehdr->e_phoff);
+ elf->state.ELFW(elf,LIBELFBITS).phdr = file_phdr;
else
{
ElfW2(LIBELFBITS,Phdr) *notcvt;
@@ -143,31 +144,35 @@ elfw2(LIBELFBITS,getphdr) (elf)
/* Now copy the data and at the same time convert the
byte order. */
- if (ALLOW_UNALIGNED
- || ((((uintptr_t) elf->map_address + elf->start_offset
- + ehdr->e_phoff)
- & (__alignof__ (ElfW2(LIBELFBITS,Phdr)) - 1)) == 0))
- notcvt = (ElfW2(LIBELFBITS,Phdr) *)
- ((char *) elf->map_address
- + elf->start_offset + ehdr->e_phoff);
- else
+
+ if (ehdr->e_ident[EI_DATA] == MY_ELFDATA)
{
- notcvt = (ElfW2(LIBELFBITS,Phdr) *) alloca (size);
- memcpy (notcvt, ((char *) elf->map_address +
- elf->start_offset + ehdr->e_phoff),
- size);
+ assert (! ALLOW_UNALIGNED);
+ memcpy (phdr, file_phdr, size);
}
-
- for (size_t cnt = 0; cnt < phnum; ++cnt)
+ else
{
- CONVERT_TO (phdr[cnt].p_type, notcvt[cnt].p_type);
- CONVERT_TO (phdr[cnt].p_offset, notcvt[cnt].p_offset);
- CONVERT_TO (phdr[cnt].p_vaddr, notcvt[cnt].p_vaddr);
- CONVERT_TO (phdr[cnt].p_paddr, notcvt[cnt].p_paddr);
- CONVERT_TO (phdr[cnt].p_filesz, notcvt[cnt].p_filesz);
- CONVERT_TO (phdr[cnt].p_memsz, notcvt[cnt].p_memsz);
- CONVERT_TO (phdr[cnt].p_flags, notcvt[cnt].p_flags);
- CONVERT_TO (phdr[cnt].p_align, notcvt[cnt].p_align);
+ if (ALLOW_UNALIGNED
+ || ((uintptr_t) file_phdr
+ & (__alignof__ (ElfW2(LIBELFBITS,Phdr)) - 1)) == 0)
+ notcvt = file_phdr;
+ else
+ {
+ notcvt = (ElfW2(LIBELFBITS,Phdr) *) alloca (size);
+ memcpy (notcvt, file_phdr, size);
+ }
+
+ for (size_t cnt = 0; cnt < phnum; ++cnt)
+ {
+ CONVERT_TO (phdr[cnt].p_type, notcvt[cnt].p_type);
+ CONVERT_TO (phdr[cnt].p_offset, notcvt[cnt].p_offset);
+ CONVERT_TO (phdr[cnt].p_vaddr, notcvt[cnt].p_vaddr);
+ CONVERT_TO (phdr[cnt].p_paddr, notcvt[cnt].p_paddr);
+ CONVERT_TO (phdr[cnt].p_filesz, notcvt[cnt].p_filesz);
+ CONVERT_TO (phdr[cnt].p_memsz, notcvt[cnt].p_memsz);
+ CONVERT_TO (phdr[cnt].p_flags, notcvt[cnt].p_flags);
+ CONVERT_TO (phdr[cnt].p_align, notcvt[cnt].p_align);
+ }
}
}
}
diff --git a/elfutils/m4/Makefile.in b/elfutils/m4/Makefile.in
index b6b26086..80edb286 100644
--- a/elfutils/m4/Makefile.in
+++ b/elfutils/m4/Makefile.in
@@ -90,6 +90,9 @@ LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LOCALEDIR = @LOCALEDIR@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
MAKEINFO = @MAKEINFO@
MKINSTALLDIRS = @MKINSTALLDIRS@
MODVERSION = @MODVERSION@
@@ -164,7 +167,7 @@ EXTRA_DIST = codeset.m4 gettext.m4 iconv.m4 lcmessage.m4 progtest.m4
all: all-am
.SUFFIXES:
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
@@ -189,9 +192,9 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
uninstall-info-am:
tags: TAGS
diff --git a/elfutils/po/elfutils.pot b/elfutils/po/elfutils.pot
index c0afd9dc..0646c4b4 100644
--- a/elfutils/po/elfutils.pot
+++ b/elfutils/po/elfutils.pot
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-08-14 22:47-0700\n"
+"POT-Creation-Date: 2006-10-10 08:37-0700\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
diff --git a/elfutils/src/ChangeLog b/elfutils/src/ChangeLog
index 5a12ac62..cbee068b 100644
--- a/elfutils/src/ChangeLog
+++ b/elfutils/src/ChangeLog
@@ -1,3 +1,13 @@
+2006-08-29 Roland McGrath <roland@redhat.com>
+
+ * Makefile.am (MAINTAINERCLEANFILES): New variable.
+
+ * readelf.c (handle_relocs_rel): Typo fix, test DESTSHDR properly.
+ Reported by Christian Aichinger <Greek0@gmx.net>.
+
+ * elflint.c (valid_e_machine): Add EM_ALPHA.
+ Reported by Christian Aichinger <Greek0@gmx.net>.
+
2006-08-08 Ulrich Drepper <drepper@redhat.com>
* elflint.c (check_dynamic): Don't require DT_HASH for DT_SYMTAB.
diff --git a/elfutils/src/Makefile.am b/elfutils/src/Makefile.am
index 604483ab..470a6b3a 100644
--- a/elfutils/src/Makefile.am
+++ b/elfutils/src/Makefile.am
@@ -172,3 +172,5 @@ installcheck-binPROGRAMS: $(bin_PROGRAMS)
done; rm -f c$${pid}_.???; exit $$bad
CLEANFILES = none_ld.os $(ld_modules:.c=.os) *.gcno *.gcda *.gconv
+
+MAINTAINERCLEANFILES = ldlex.c ldscript.c ldscript.h
diff --git a/elfutils/src/Makefile.in b/elfutils/src/Makefile.in
index a76b6373..5d41b670 100644
--- a/elfutils/src/Makefile.in
+++ b/elfutils/src/Makefile.in
@@ -210,6 +210,9 @@ LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LOCALEDIR = @LOCALEDIR@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
MAKEINFO = @MAKEINFO@
MKINSTALLDIRS = @MKINSTALLDIRS@
MODVERSION = @MODVERSION@
@@ -347,11 +350,12 @@ ldlex_no_Werror = yes
@NATIVE_LD_FALSE@am_libld_elf_i386_pic_a_OBJECTS = i386_ld.os
@NATIVE_LD_FALSE@libld_elf_i386_so_SOURCES =
CLEANFILES = none_ld.os $(ld_modules:.c=.os) *.gcno *.gcda *.gconv
+MAINTAINERCLEANFILES = ldlex.c ldscript.c ldscript.h
all: all-am
.SUFFIXES:
.SUFFIXES: .c .l .o .obj .y
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
@@ -376,9 +380,9 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
clean-noinstLIBRARIES:
@@ -638,6 +642,7 @@ maintainer-clean-generic:
@echo "it deletes files that may require special tools to rebuild."
-rm -f ldlex.c
-rm -f ldscript.c
+ -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
clean: clean-am
clean-am: clean-binPROGRAMS clean-generic clean-noinstLIBRARIES \
diff --git a/elfutils/src/elflint.c b/elfutils/src/elflint.c
index c96e8ab0..57dd716a 100644
--- a/elfutils/src/elflint.c
+++ b/elfutils/src/elflint.c
@@ -331,7 +331,7 @@ static const int valid_e_machine[] =
EM_68HC16, EM_68HC11, EM_68HC08, EM_68HC05, EM_SVX, EM_ST19, EM_VAX,
EM_CRIS, EM_JAVELIN, EM_FIREPATH, EM_ZSP, EM_MMIX, EM_HUANY, EM_PRISM,
EM_AVR, EM_FR30, EM_D10V, EM_D30V, EM_V850, EM_M32R, EM_MN10300,
- EM_MN10200, EM_PJ, EM_OPENRISC, EM_ARC_A5, EM_XTENSA
+ EM_MN10200, EM_PJ, EM_OPENRISC, EM_ARC_A5, EM_XTENSA, EM_ALPHA
};
#define nvalid_e_machine \
(sizeof (valid_e_machine) / sizeof (valid_e_machine[0]))
diff --git a/elfutils/src/readelf.c b/elfutils/src/readelf.c
index ac313d00..b592c72b 100644
--- a/elfutils/src/readelf.c
+++ b/elfutils/src/readelf.c
@@ -1418,7 +1418,7 @@ handle_relocs_rel (Ebl *ebl, Elf_Scn *scn, GElf_Shdr *shdr)
? xndx : sym->st_shndx),
&destshdr_mem);
- if (shdr == NULL)
+ if (destshdr == NULL)
printf (" %#0*" PRIx64 " %-20s <%s %ld>\n",
class == ELFCLASS32 ? 10 : 18, rel->r_offset,
ebl_reloc_type_check (ebl, GELF_R_TYPE (rel->r_info))
diff --git a/elfutils/tests/ChangeLog b/elfutils/tests/ChangeLog
index fc795084..44b0bb4a 100644
--- a/elfutils/tests/ChangeLog
+++ b/elfutils/tests/ChangeLog
@@ -1,3 +1,23 @@
+2006-09-05 Roland McGrath <roland@redhat.com>
+
+ * run-strings-test.sh: Export LC_ALL=C for the test.
+
+2006-08-29 Roland McGrath <roland@redhat.com>
+
+ * run-arextract.sh: Use testrun, tempfiles functions from test-subr.sh.
+ * run-arsymtest.sh: Likewise.
+
+ * run-native-test.sh (native.c compilation): Add some braces.
+
+2006-08-22 Roland McGrath <roland@redhat.com>
+
+ * allregs.c (dwarf_encoding_string): New function, swiped from readelf.
+ (struct reginfo): New members bits, type.
+ (one_register, match_register): Update to take new args,
+ record and display new info.
+ (main): Display new info.
+ * run-allregs.sh: Update expected results.
+
2006-08-03 Roland McGrath <roland@redhat.com>
* run-allregs.sh: Add sparc cases.
diff --git a/elfutils/tests/Makefile.in b/elfutils/tests/Makefile.in
index f0910c40..159b6674 100644
--- a/elfutils/tests/Makefile.in
+++ b/elfutils/tests/Makefile.in
@@ -295,6 +295,9 @@ LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LOCALEDIR = @LOCALEDIR@
LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
MAKEINFO = @MAKEINFO@
MKINSTALLDIRS = @MKINSTALLDIRS@
MODVERSION = @MODVERSION@
@@ -495,7 +498,7 @@ all: all-am
.SUFFIXES:
.SUFFIXES: .c .o .obj
-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
@@ -520,9 +523,9 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(top_srcdir)/configure: $(am__configure_deps)
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
clean-noinstPROGRAMS:
diff --git a/elfutils/tests/allregs.c b/elfutils/tests/allregs.c
index baec94ed..f1856dfd 100644
--- a/elfutils/tests/allregs.c
+++ b/elfutils/tests/allregs.c
@@ -34,8 +34,45 @@
#include <argp.h>
#include <assert.h>
#include ELFUTILS_HEADER(dwfl)
+#include <dwarf.h>
+static const char *
+dwarf_encoding_string (unsigned int code)
+{
+ static const char *known[] =
+ {
+ [DW_ATE_void] = "void",
+ [DW_ATE_address] = "address",
+ [DW_ATE_boolean] = "boolean",
+ [DW_ATE_complex_float] = "complex_float",
+ [DW_ATE_float] = "float",
+ [DW_ATE_signed] = "signed",
+ [DW_ATE_signed_char] = "signed_char",
+ [DW_ATE_unsigned] = "unsigned",
+ [DW_ATE_unsigned_char] = "unsigned_char",
+ [DW_ATE_imaginary_float] = "imaginary_float",
+ [DW_ATE_packed_decimal] = "packed_decimal",
+ [DW_ATE_numeric_string] = "numeric_string",
+ [DW_ATE_edited] = "edited",
+ [DW_ATE_signed_fixed] = "signed_fixed",
+ [DW_ATE_unsigned_fixed] = "unsigned_fixed",
+ [DW_ATE_decimal_float] = "decimal_float",
+ };
+
+ if (code < sizeof (known) / sizeof (known[0]))
+ return known[code];
+
+ if (code >= DW_ATE_lo_user && code <= DW_ATE_hi_user)
+ {
+ static char buf[30];
+ snprintf (buf, sizeof (buf), "lo_user+%u", code - DW_ATE_lo_user);
+ return buf;
+ }
+
+ return "???";
+}
+
static int
first_module (Dwfl_Module *mod,
void **userdatap __attribute__ ((unused)),
@@ -62,6 +99,8 @@ struct reginfo
{
const char *set, *pfx;
int regno;
+ int bits;
+ int type;
char name[32];
};
@@ -87,7 +126,8 @@ one_register (void *arg,
int regno,
const char *setname,
const char *prefix,
- const char *regname)
+ const char *regname,
+ int bits, int type)
{
struct state *state = arg;
@@ -103,6 +143,8 @@ one_register (void *arg,
state->info[regno].regno = regno;
state->info[regno].set = setname;
state->info[regno].pfx = prefix;
+ state->info[regno].bits = bits;
+ state->info[regno].type = type;
assert (strlen (regname) < sizeof state->info[regno].name);
strcpy (state->info[regno].name, regname);
@@ -115,10 +157,13 @@ match_register (void *arg,
int regno,
const char *setname,
const char *prefix,
- const char *regname)
+ const char *regname,
+ int bits, int type)
{
if (regno == *(int *) arg)
- printf ("%5d => %s register %s%s\n", regno, setname, prefix, regname);
+ printf ("%5d => %s register %s%s %s %d bits\n",
+ regno, setname, prefix, regname,
+ dwarf_encoding_string (type), bits);
return DWARF_CB_ABORT;
}
@@ -158,9 +203,12 @@ main (int argc, char **argv)
printf ("%s registers:\n", state.info[i].set);
set = state.info[i].set;
- printf ("\t%3d: %s%s (%s)\n", state.info[i].regno,
+ printf ("\t%3d: %s%s (%s), %s %d bits\n",
+ state.info[i].regno,
state.info[i].pfx ?: "", state.info[i].name,
- state.info[i].name);
+ state.info[i].name,
+ dwarf_encoding_string (state.info[i].type),
+ state.info[i].bits);
}
}
else
diff --git a/elfutils/tests/run-allregs.sh b/elfutils/tests/run-allregs.sh
index bdd1ca23..46503f20 100755
--- a/elfutils/tests/run-allregs.sh
+++ b/elfutils/tests/run-allregs.sh
@@ -36,1376 +36,2471 @@ regs_test()
regs_test testfile11 <<\EOF
integer registers:
- 0: %eax (eax)
- 1: %ecx (ecx)
- 2: %edx (edx)
- 3: %ebx (ebx)
- 4: %esp (esp)
- 5: %ebp (ebp)
- 6: %esi (esi)
- 7: %edi (edi)
- 8: %eip (eip)
- 9: %eflags (eflags)
- 10: %trapno (trapno)
+ 0: %eax (eax), signed 32 bits
+ 1: %ecx (ecx), signed 32 bits
+ 2: %edx (edx), signed 32 bits
+ 3: %ebx (ebx), signed 32 bits
+ 4: %esp (esp), address 32 bits
+ 5: %ebp (ebp), address 32 bits
+ 6: %esi (esi), signed 32 bits
+ 7: %edi (edi), signed 32 bits
+ 8: %eip (eip), address 32 bits
+ 9: %eflags (eflags), unsigned 32 bits
+ 10: %trapno (trapno), unsigned 32 bits
FPU-control registers:
- 37: %fctrl (fctrl)
- 38: %fstat (fstat)
- 39: %mxcsr (mxcsr)
+ 37: %fctrl (fctrl), unsigned 32 bits
+ 38: %fstat (fstat), unsigned 32 bits
+ 39: %mxcsr (mxcsr), unsigned 32 bits
MMX registers:
- 29: %mm0 (mm0)
- 30: %mm1 (mm1)
- 31: %mm2 (mm2)
- 32: %mm3 (mm3)
- 33: %mm4 (mm4)
- 34: %mm5 (mm5)
- 35: %mm6 (mm6)
- 36: %mm7 (mm7)
+ 29: %mm0 (mm0), unsigned 64 bits
+ 30: %mm1 (mm1), unsigned 64 bits
+ 31: %mm2 (mm2), unsigned 64 bits
+ 32: %mm3 (mm3), unsigned 64 bits
+ 33: %mm4 (mm4), unsigned 64 bits
+ 34: %mm5 (mm5), unsigned 64 bits
+ 35: %mm6 (mm6), unsigned 64 bits
+ 36: %mm7 (mm7), unsigned 64 bits
SSE registers:
- 21: %xmm0 (xmm0)
- 22: %xmm1 (xmm1)
- 23: %xmm2 (xmm2)
- 24: %xmm3 (xmm3)
- 25: %xmm4 (xmm4)
- 26: %xmm5 (xmm5)
- 27: %xmm6 (xmm6)
- 28: %xmm7 (xmm7)
+ 21: %xmm0 (xmm0), unsigned 128 bits
+ 22: %xmm1 (xmm1), unsigned 128 bits
+ 23: %xmm2 (xmm2), unsigned 128 bits
+ 24: %xmm3 (xmm3), unsigned 128 bits
+ 25: %xmm4 (xmm4), unsigned 128 bits
+ 26: %xmm5 (xmm5), unsigned 128 bits
+ 27: %xmm6 (xmm6), unsigned 128 bits
+ 28: %xmm7 (xmm7), unsigned 128 bits
segment registers:
- 40: %es (es)
- 41: %cs (cs)
- 42: %ss (ss)
- 43: %ds (ds)
- 44: %fs (fs)
- 45: %gs (gs)
+ 40: %es (es), unsigned 16 bits
+ 41: %cs (cs), unsigned 16 bits
+ 42: %ss (ss), unsigned 16 bits
+ 43: %ds (ds), unsigned 16 bits
+ 44: %fs (fs), unsigned 16 bits
+ 45: %gs (gs), unsigned 16 bits
x87 registers:
- 11: %st0 (st0)
- 12: %st1 (st1)
- 13: %st2 (st2)
- 14: %st3 (st3)
- 15: %st4 (st4)
- 16: %st5 (st5)
- 17: %st6 (st6)
- 18: %st7 (st7)
+ 11: %st0 (st0), float 80 bits
+ 12: %st1 (st1), float 80 bits
+ 13: %st2 (st2), float 80 bits
+ 14: %st3 (st3), float 80 bits
+ 15: %st4 (st4), float 80 bits
+ 16: %st5 (st5), float 80 bits
+ 17: %st6 (st6), float 80 bits
+ 18: %st7 (st7), float 80 bits
EOF
regs_test testfile12 <<\EOF
integer registers:
- 0: %rax (rax)
- 1: %rdx (rdx)
- 2: %rcx (rcx)
- 3: %rbx (rbx)
- 4: %rsi (rsi)
- 5: %rdi (rdi)
- 6: %rbp (rbp)
- 7: %rsp (rsp)
- 8: %r8 (r8)
- 9: %r9 (r9)
- 10: %r10 (r10)
- 11: %r11 (r11)
- 12: %r12 (r12)
- 13: %r13 (r13)
- 14: %r14 (r14)
- 15: %r15 (r15)
- 16: %rip (rip)
+ 0: %rax (rax), signed 64 bits
+ 1: %rdx (rdx), signed 64 bits
+ 2: %rcx (rcx), signed 64 bits
+ 3: %rbx (rbx), signed 64 bits
+ 4: %rsi (rsi), signed 64 bits
+ 5: %rdi (rdi), signed 64 bits
+ 6: %rbp (rbp), address 64 bits
+ 7: %rsp (rsp), address 64 bits
+ 8: %r8 (r8), signed 64 bits
+ 9: %r9 (r9), signed 64 bits
+ 10: %r10 (r10), signed 64 bits
+ 11: %r11 (r11), signed 64 bits
+ 12: %r12 (r12), signed 64 bits
+ 13: %r13 (r13), signed 64 bits
+ 14: %r14 (r14), signed 64 bits
+ 15: %r15 (r15), signed 64 bits
+ 16: %rip (rip), address 64 bits
MMX registers:
- 41: %mm0 (mm0)
- 42: %mm1 (mm1)
- 43: %mm2 (mm2)
- 44: %mm3 (mm3)
- 45: %mm4 (mm4)
- 46: %mm5 (mm5)
- 47: %mm6 (mm6)
- 48: %mm7 (mm7)
+ 41: %mm0 (mm0), unsigned 64 bits
+ 42: %mm1 (mm1), unsigned 64 bits
+ 43: %mm2 (mm2), unsigned 64 bits
+ 44: %mm3 (mm3), unsigned 64 bits
+ 45: %mm4 (mm4), unsigned 64 bits
+ 46: %mm5 (mm5), unsigned 64 bits
+ 47: %mm6 (mm6), unsigned 64 bits
+ 48: %mm7 (mm7), unsigned 64 bits
SSE registers:
- 17: %xmm0 (xmm0)
- 18: %xmm1 (xmm1)
- 19: %xmm2 (xmm2)
- 20: %xmm3 (xmm3)
- 21: %xmm4 (xmm4)
- 22: %xmm5 (xmm5)
- 23: %xmm6 (xmm6)
- 24: %xmm7 (xmm7)
- 25: %xmm8 (xmm8)
- 26: %xmm9 (xmm9)
- 27: %xmm10 (xmm10)
- 28: %xmm11 (xmm11)
- 29: %xmm12 (xmm12)
- 30: %xmm13 (xmm13)
- 31: %xmm14 (xmm14)
- 32: %xmm15 (xmm15)
+ 17: %xmm0 (xmm0), unsigned 128 bits
+ 18: %xmm1 (xmm1), unsigned 128 bits
+ 19: %xmm2 (xmm2), unsigned 128 bits
+ 20: %xmm3 (xmm3), unsigned 128 bits
+ 21: %xmm4 (xmm4), unsigned 128 bits
+ 22: %xmm5 (xmm5), unsigned 128 bits
+ 23: %xmm6 (xmm6), unsigned 128 bits
+ 24: %xmm7 (xmm7), unsigned 128 bits
+ 25: %xmm8 (xmm8), unsigned 128 bits
+ 26: %xmm9 (xmm9), unsigned 128 bits
+ 27: %xmm10 (xmm10), unsigned 128 bits
+ 28: %xmm11 (xmm11), unsigned 128 bits
+ 29: %xmm12 (xmm12), unsigned 128 bits
+ 30: %xmm13 (xmm13), unsigned 128 bits
+ 31: %xmm14 (xmm14), unsigned 128 bits
+ 32: %xmm15 (xmm15), unsigned 128 bits
x87 registers:
- 33: %st0 (st0)
- 34: %st1 (st1)
- 35: %st2 (st2)
- 36: %st3 (st3)
- 37: %st4 (st4)
- 38: %st5 (st5)
- 39: %st6 (st6)
- 40: %st7 (st7)
+ 33: %st0 (st0), float 80 bits
+ 34: %st1 (st1), float 80 bits
+ 35: %st2 (st2), float 80 bits
+ 36: %st3 (st3), float 80 bits
+ 37: %st4 (st4), float 80 bits
+ 38: %st5 (st5), float 80 bits
+ 39: %st6 (st6), float 80 bits
+ 40: %st7 (st7), float 80 bits
EOF
-regs_test testfile2 testfile23 <<\EOF
+regs_test testfile2 <<\EOF
integer registers:
- 0: r0 (r0)
- 1: r1 (r1)
- 2: r2 (r2)
- 3: r3 (r3)
- 4: r4 (r4)
- 5: r5 (r5)
- 6: r6 (r6)
- 7: r7 (r7)
- 8: r8 (r8)
- 9: r9 (r9)
- 10: r10 (r10)
- 11: r11 (r11)
- 12: r12 (r12)
- 13: r13 (r13)
- 14: r14 (r14)
- 15: r15 (r15)
- 16: r16 (r16)
- 17: r17 (r17)
- 18: r18 (r18)
- 19: r19 (r19)
- 20: r20 (r20)
- 21: r21 (r21)
- 22: r22 (r22)
- 23: r23 (r23)
- 24: r24 (r24)
- 25: r25 (r25)
- 26: r26 (r26)
- 27: r27 (r27)
- 28: r28 (r28)
- 29: r29 (r29)
- 30: r30 (r30)
- 31: r31 (r31)
- 64: cr (cr)
- 66: msr (msr)
+ 0: r0 (r0), signed 32 bits
+ 1: r1 (r1), signed 32 bits
+ 2: r2 (r2), signed 32 bits
+ 3: r3 (r3), signed 32 bits
+ 4: r4 (r4), signed 32 bits
+ 5: r5 (r5), signed 32 bits
+ 6: r6 (r6), signed 32 bits
+ 7: r7 (r7), signed 32 bits
+ 8: r8 (r8), signed 32 bits
+ 9: r9 (r9), signed 32 bits
+ 10: r10 (r10), signed 32 bits
+ 11: r11 (r11), signed 32 bits
+ 12: r12 (r12), signed 32 bits
+ 13: r13 (r13), signed 32 bits
+ 14: r14 (r14), signed 32 bits
+ 15: r15 (r15), signed 32 bits
+ 16: r16 (r16), signed 32 bits
+ 17: r17 (r17), signed 32 bits
+ 18: r18 (r18), signed 32 bits
+ 19: r19 (r19), signed 32 bits
+ 20: r20 (r20), signed 32 bits
+ 21: r21 (r21), signed 32 bits
+ 22: r22 (r22), signed 32 bits
+ 23: r23 (r23), signed 32 bits
+ 24: r24 (r24), signed 32 bits
+ 25: r25 (r25), signed 32 bits
+ 26: r26 (r26), signed 32 bits
+ 27: r27 (r27), signed 32 bits
+ 28: r28 (r28), signed 32 bits
+ 29: r29 (r29), signed 32 bits
+ 30: r30 (r30), signed 32 bits
+ 31: r31 (r31), signed 32 bits
+ 64: cr (cr), unsigned 32 bits
+ 66: msr (msr), unsigned 32 bits
FPU registers:
- 32: f0 (f0)
- 33: f1 (f1)
- 34: f2 (f2)
- 35: f3 (f3)
- 36: f4 (f4)
- 37: f5 (f5)
- 38: f6 (f6)
- 39: f7 (f7)
- 40: f8 (f8)
- 41: f9 (f9)
- 42: f10 (f10)
- 43: f11 (f11)
- 44: f12 (f12)
- 45: f13 (f13)
- 46: f14 (f14)
- 47: f15 (f15)
- 48: f16 (f16)
- 49: f17 (f17)
- 50: f18 (f18)
- 51: f19 (f19)
- 52: f20 (f20)
- 53: f21 (f21)
- 54: f22 (f22)
- 55: f23 (f23)
- 56: f24 (f24)
- 57: f25 (f25)
- 58: f26 (f26)
- 59: f27 (f27)
- 60: f28 (f28)
- 61: f29 (f29)
- 62: f30 (f30)
- 63: f31 (f31)
- 65: fpscr (fpscr)
+ 32: f0 (f0), float 32 bits
+ 33: f1 (f1), float 32 bits
+ 34: f2 (f2), float 32 bits
+ 35: f3 (f3), float 32 bits
+ 36: f4 (f4), float 32 bits
+ 37: f5 (f5), float 32 bits
+ 38: f6 (f6), float 32 bits
+ 39: f7 (f7), float 32 bits
+ 40: f8 (f8), float 32 bits
+ 41: f9 (f9), float 32 bits
+ 42: f10 (f10), float 32 bits
+ 43: f11 (f11), float 32 bits
+ 44: f12 (f12), float 32 bits
+ 45: f13 (f13), float 32 bits
+ 46: f14 (f14), float 32 bits
+ 47: f15 (f15), float 32 bits
+ 48: f16 (f16), float 32 bits
+ 49: f17 (f17), float 32 bits
+ 50: f18 (f18), float 32 bits
+ 51: f19 (f19), float 32 bits
+ 52: f20 (f20), float 32 bits
+ 53: f21 (f21), float 32 bits
+ 54: f22 (f22), float 32 bits
+ 55: f23 (f23), float 32 bits
+ 56: f24 (f24), float 32 bits
+ 57: f25 (f25), float 32 bits
+ 58: f26 (f26), float 32 bits
+ 59: f27 (f27), float 32 bits
+ 60: f28 (f28), float 32 bits
+ 61: f29 (f29), float 32 bits
+ 62: f30 (f30), float 32 bits
+ 63: f31 (f31), float 32 bits
+ 65: fpscr (fpscr), unsigned 32 bits
privileged registers:
- 70: sr0 (sr0)
- 71: sr1 (sr1)
- 72: sr2 (sr2)
- 73: sr3 (sr3)
- 74: sr4 (sr4)
- 75: sr5 (sr5)
- 76: sr6 (sr6)
- 77: sr7 (sr7)
- 78: sr8 (sr8)
- 79: sr9 (sr9)
- 80: sr10 (sr10)
- 81: sr11 (sr11)
- 82: sr12 (sr12)
- 83: sr13 (sr13)
- 84: sr14 (sr14)
- 85: sr15 (sr15)
- 100: spr0 (spr0)
- 101: spr1 (spr1)
- 102: spr2 (spr2)
- 103: spr3 (spr3)
- 104: spr4 (spr4)
- 105: spr5 (spr5)
- 106: spr6 (spr6)
- 107: spr7 (spr7)
- 108: spr8 (spr8)
- 109: spr9 (spr9)
- 110: spr10 (spr10)
- 111: spr11 (spr11)
- 112: spr12 (spr12)
- 113: spr13 (spr13)
- 114: spr14 (spr14)
- 115: spr15 (spr15)
- 116: spr16 (spr16)
- 117: spr17 (spr17)
- 118: spr18 (spr18)
- 119: spr19 (spr19)
- 120: spr20 (spr20)
- 121: spr21 (spr21)
- 122: spr22 (spr22)
- 123: spr23 (spr23)
- 124: spr24 (spr24)
- 125: spr25 (spr25)
- 126: spr26 (spr26)
- 127: spr27 (spr27)
- 128: spr28 (spr28)
- 129: spr29 (spr29)
- 130: spr30 (spr30)
- 131: spr31 (spr31)
- 132: spr32 (spr32)
- 133: spr33 (spr33)
- 134: spr34 (spr34)
- 135: spr35 (spr35)
- 136: spr36 (spr36)
- 137: spr37 (spr37)
- 138: spr38 (spr38)
- 139: spr39 (spr39)
- 140: spr40 (spr40)
- 141: spr41 (spr41)
- 142: spr42 (spr42)
- 143: spr43 (spr43)
- 144: spr44 (spr44)
- 145: spr45 (spr45)
- 146: spr46 (spr46)
- 147: spr47 (spr47)
- 148: spr48 (spr48)
- 149: spr49 (spr49)
- 150: spr50 (spr50)
- 151: spr51 (spr51)
- 152: spr52 (spr52)
- 153: spr53 (spr53)
- 154: spr54 (spr54)
- 155: spr55 (spr55)
- 156: spr56 (spr56)
- 157: spr57 (spr57)
- 158: spr58 (spr58)
- 159: spr59 (spr59)
- 160: spr60 (spr60)
- 161: spr61 (spr61)
- 162: spr62 (spr62)
- 163: spr63 (spr63)
- 164: spr64 (spr64)
- 165: spr65 (spr65)
- 166: spr66 (spr66)
- 167: spr67 (spr67)
- 168: spr68 (spr68)
- 169: spr69 (spr69)
- 170: spr70 (spr70)
- 171: spr71 (spr71)
- 172: spr72 (spr72)
- 173: spr73 (spr73)
- 174: spr74 (spr74)
- 175: spr75 (spr75)
- 176: spr76 (spr76)
- 177: spr77 (spr77)
- 178: spr78 (spr78)
- 179: spr79 (spr79)
- 180: spr80 (spr80)
- 181: spr81 (spr81)
- 182: spr82 (spr82)
- 183: spr83 (spr83)
- 184: spr84 (spr84)
- 185: spr85 (spr85)
- 186: spr86 (spr86)
- 187: spr87 (spr87)
- 188: spr88 (spr88)
- 189: spr89 (spr89)
- 190: spr90 (spr90)
- 191: spr91 (spr91)
- 192: spr92 (spr92)
- 193: spr93 (spr93)
- 194: spr94 (spr94)
- 195: spr95 (spr95)
- 196: spr96 (spr96)
- 197: spr97 (spr97)
- 198: spr98 (spr98)
- 199: spr99 (spr99)
- 200: spr100 (spr100)
- 201: spr101 (spr101)
- 202: spr102 (spr102)
- 203: spr103 (spr103)
- 204: spr104 (spr104)
- 205: spr105 (spr105)
- 206: spr106 (spr106)
- 207: spr107 (spr107)
- 208: spr108 (spr108)
- 209: spr109 (spr109)
- 210: spr110 (spr110)
- 211: spr111 (spr111)
- 212: spr112 (spr112)
- 213: spr113 (spr113)
- 214: spr114 (spr114)
- 215: spr115 (spr115)
- 216: spr116 (spr116)
- 217: spr117 (spr117)
- 218: spr118 (spr118)
- 219: spr119 (spr119)
- 220: spr120 (spr120)
- 221: spr121 (spr121)
- 222: spr122 (spr122)
- 223: spr123 (spr123)
- 224: spr124 (spr124)
- 225: spr125 (spr125)
- 226: spr126 (spr126)
- 227: spr127 (spr127)
- 228: spr128 (spr128)
- 229: spr129 (spr129)
- 230: spr130 (spr130)
- 231: spr131 (spr131)
- 232: spr132 (spr132)
- 233: spr133 (spr133)
- 234: spr134 (spr134)
- 235: spr135 (spr135)
- 236: spr136 (spr136)
- 237: spr137 (spr137)
- 238: spr138 (spr138)
- 239: spr139 (spr139)
- 240: spr140 (spr140)
- 241: spr141 (spr141)
- 242: spr142 (spr142)
- 243: spr143 (spr143)
- 244: spr144 (spr144)
- 245: spr145 (spr145)
- 246: spr146 (spr146)
- 247: spr147 (spr147)
- 248: spr148 (spr148)
- 249: spr149 (spr149)
- 250: spr150 (spr150)
- 251: spr151 (spr151)
- 252: spr152 (spr152)
- 253: spr153 (spr153)
- 254: spr154 (spr154)
- 255: spr155 (spr155)
- 256: spr156 (spr156)
- 257: spr157 (spr157)
- 258: spr158 (spr158)
- 259: spr159 (spr159)
- 260: spr160 (spr160)
- 261: spr161 (spr161)
- 262: spr162 (spr162)
- 263: spr163 (spr163)
- 264: spr164 (spr164)
- 265: spr165 (spr165)
- 266: spr166 (spr166)
- 267: spr167 (spr167)
- 268: spr168 (spr168)
- 269: spr169 (spr169)
- 270: spr170 (spr170)
- 271: spr171 (spr171)
- 272: spr172 (spr172)
- 273: spr173 (spr173)
- 274: spr174 (spr174)
- 275: spr175 (spr175)
- 276: spr176 (spr176)
- 277: spr177 (spr177)
- 278: spr178 (spr178)
- 279: spr179 (spr179)
- 280: spr180 (spr180)
- 281: spr181 (spr181)
- 282: spr182 (spr182)
- 283: spr183 (spr183)
- 284: spr184 (spr184)
- 285: spr185 (spr185)
- 286: spr186 (spr186)
- 287: spr187 (spr187)
- 288: spr188 (spr188)
- 289: spr189 (spr189)
- 290: spr190 (spr190)
- 291: spr191 (spr191)
- 292: spr192 (spr192)
- 293: spr193 (spr193)
- 294: spr194 (spr194)
- 295: spr195 (spr195)
- 296: spr196 (spr196)
- 297: spr197 (spr197)
- 298: spr198 (spr198)
- 299: spr199 (spr199)
- 300: spr200 (spr200)
- 301: spr201 (spr201)
- 302: spr202 (spr202)
- 303: spr203 (spr203)
- 304: spr204 (spr204)
- 305: spr205 (spr205)
- 306: spr206 (spr206)
- 307: spr207 (spr207)
- 308: spr208 (spr208)
- 309: spr209 (spr209)
- 310: spr210 (spr210)
- 311: spr211 (spr211)
- 312: spr212 (spr212)
- 313: spr213 (spr213)
- 314: spr214 (spr214)
- 315: spr215 (spr215)
- 316: spr216 (spr216)
- 317: spr217 (spr217)
- 318: spr218 (spr218)
- 319: spr219 (spr219)
- 320: spr220 (spr220)
- 321: spr221 (spr221)
- 322: spr222 (spr222)
- 323: spr223 (spr223)
- 324: spr224 (spr224)
- 325: spr225 (spr225)
- 326: spr226 (spr226)
- 327: spr227 (spr227)
- 328: spr228 (spr228)
- 329: spr229 (spr229)
- 330: spr230 (spr230)
- 331: spr231 (spr231)
- 332: spr232 (spr232)
- 333: spr233 (spr233)
- 334: spr234 (spr234)
- 335: spr235 (spr235)
- 336: spr236 (spr236)
- 337: spr237 (spr237)
- 338: spr238 (spr238)
- 339: spr239 (spr239)
- 340: spr240 (spr240)
- 341: spr241 (spr241)
- 342: spr242 (spr242)
- 343: spr243 (spr243)
- 344: spr244 (spr244)
- 345: spr245 (spr245)
- 346: spr246 (spr246)
- 347: spr247 (spr247)
- 348: spr248 (spr248)
- 349: spr249 (spr249)
- 350: spr250 (spr250)
- 351: spr251 (spr251)
- 352: spr252 (spr252)
- 353: spr253 (spr253)
- 354: spr254 (spr254)
- 355: spr255 (spr255)
- 356: spr256 (spr256)
- 357: spr257 (spr257)
- 358: spr258 (spr258)
- 359: spr259 (spr259)
- 360: spr260 (spr260)
- 361: spr261 (spr261)
- 362: spr262 (spr262)
- 363: spr263 (spr263)
- 364: spr264 (spr264)
- 365: spr265 (spr265)
- 366: spr266 (spr266)
- 367: spr267 (spr267)
- 368: spr268 (spr268)
- 369: spr269 (spr269)
- 370: spr270 (spr270)
- 371: spr271 (spr271)
- 372: spr272 (spr272)
- 373: spr273 (spr273)
- 374: spr274 (spr274)
- 375: spr275 (spr275)
- 376: spr276 (spr276)
- 377: spr277 (spr277)
- 378: spr278 (spr278)
- 379: spr279 (spr279)
- 380: spr280 (spr280)
- 381: spr281 (spr281)
- 382: spr282 (spr282)
- 383: spr283 (spr283)
- 384: spr284 (spr284)
- 385: spr285 (spr285)
- 386: spr286 (spr286)
- 387: spr287 (spr287)
- 388: spr288 (spr288)
- 389: spr289 (spr289)
- 390: spr290 (spr290)
- 391: spr291 (spr291)
- 392: spr292 (spr292)
- 393: spr293 (spr293)
- 394: spr294 (spr294)
- 395: spr295 (spr295)
- 396: spr296 (spr296)
- 397: spr297 (spr297)
- 398: spr298 (spr298)
- 399: spr299 (spr299)
- 400: spr300 (spr300)
- 401: spr301 (spr301)
- 402: spr302 (spr302)
- 403: spr303 (spr303)
- 404: spr304 (spr304)
- 405: spr305 (spr305)
- 406: spr306 (spr306)
- 407: spr307 (spr307)
- 408: spr308 (spr308)
- 409: spr309 (spr309)
- 410: spr310 (spr310)
- 411: spr311 (spr311)
- 412: spr312 (spr312)
- 413: spr313 (spr313)
- 414: spr314 (spr314)
- 415: spr315 (spr315)
- 416: spr316 (spr316)
- 417: spr317 (spr317)
- 418: spr318 (spr318)
- 419: spr319 (spr319)
- 420: spr320 (spr320)
- 421: spr321 (spr321)
- 422: spr322 (spr322)
- 423: spr323 (spr323)
- 424: spr324 (spr324)
- 425: spr325 (spr325)
- 426: spr326 (spr326)
- 427: spr327 (spr327)
- 428: spr328 (spr328)
- 429: spr329 (spr329)
- 430: spr330 (spr330)
- 431: spr331 (spr331)
- 432: spr332 (spr332)
- 433: spr333 (spr333)
- 434: spr334 (spr334)
- 435: spr335 (spr335)
- 436: spr336 (spr336)
- 437: spr337 (spr337)
- 438: spr338 (spr338)
- 439: spr339 (spr339)
- 440: spr340 (spr340)
- 441: spr341 (spr341)
- 442: spr342 (spr342)
- 443: spr343 (spr343)
- 444: spr344 (spr344)
- 445: spr345 (spr345)
- 446: spr346 (spr346)
- 447: spr347 (spr347)
- 448: spr348 (spr348)
- 449: spr349 (spr349)
- 450: spr350 (spr350)
- 451: spr351 (spr351)
- 452: spr352 (spr352)
- 453: spr353 (spr353)
- 454: spr354 (spr354)
- 455: spr355 (spr355)
- 456: spr356 (spr356)
- 457: spr357 (spr357)
- 458: spr358 (spr358)
- 459: spr359 (spr359)
- 460: spr360 (spr360)
- 461: spr361 (spr361)
- 462: spr362 (spr362)
- 463: spr363 (spr363)
- 464: spr364 (spr364)
- 465: spr365 (spr365)
- 466: spr366 (spr366)
- 467: spr367 (spr367)
- 468: spr368 (spr368)
- 469: spr369 (spr369)
- 470: spr370 (spr370)
- 471: spr371 (spr371)
- 472: spr372 (spr372)
- 473: spr373 (spr373)
- 474: spr374 (spr374)
- 475: spr375 (spr375)
- 476: spr376 (spr376)
- 477: spr377 (spr377)
- 478: spr378 (spr378)
- 479: spr379 (spr379)
- 480: spr380 (spr380)
- 481: spr381 (spr381)
- 482: spr382 (spr382)
- 483: spr383 (spr383)
- 484: spr384 (spr384)
- 485: spr385 (spr385)
- 486: spr386 (spr386)
- 487: spr387 (spr387)
- 488: spr388 (spr388)
- 489: spr389 (spr389)
- 490: spr390 (spr390)
- 491: spr391 (spr391)
- 492: spr392 (spr392)
- 493: spr393 (spr393)
- 494: spr394 (spr394)
- 495: spr395 (spr395)
- 496: spr396 (spr396)
- 497: spr397 (spr397)
- 498: spr398 (spr398)
- 499: spr399 (spr399)
- 500: spr400 (spr400)
- 501: spr401 (spr401)
- 502: spr402 (spr402)
- 503: spr403 (spr403)
- 504: spr404 (spr404)
- 505: spr405 (spr405)
- 506: spr406 (spr406)
- 507: spr407 (spr407)
- 508: spr408 (spr408)
- 509: spr409 (spr409)
- 510: spr410 (spr410)
- 511: spr411 (spr411)
- 512: spr412 (spr412)
- 513: spr413 (spr413)
- 514: spr414 (spr414)
- 515: spr415 (spr415)
- 516: spr416 (spr416)
- 517: spr417 (spr417)
- 518: spr418 (spr418)
- 519: spr419 (spr419)
- 520: spr420 (spr420)
- 521: spr421 (spr421)
- 522: spr422 (spr422)
- 523: spr423 (spr423)
- 524: spr424 (spr424)
- 525: spr425 (spr425)
- 526: spr426 (spr426)
- 527: spr427 (spr427)
- 528: spr428 (spr428)
- 529: spr429 (spr429)
- 530: spr430 (spr430)
- 531: spr431 (spr431)
- 532: spr432 (spr432)
- 533: spr433 (spr433)
- 534: spr434 (spr434)
- 535: spr435 (spr435)
- 536: spr436 (spr436)
- 537: spr437 (spr437)
- 538: spr438 (spr438)
- 539: spr439 (spr439)
- 540: spr440 (spr440)
- 541: spr441 (spr441)
- 542: spr442 (spr442)
- 543: spr443 (spr443)
- 544: spr444 (spr444)
- 545: spr445 (spr445)
- 546: spr446 (spr446)
- 547: spr447 (spr447)
- 548: spr448 (spr448)
- 549: spr449 (spr449)
- 550: spr450 (spr450)
- 551: spr451 (spr451)
- 552: spr452 (spr452)
- 553: spr453 (spr453)
- 554: spr454 (spr454)
- 555: spr455 (spr455)
- 556: spr456 (spr456)
- 557: spr457 (spr457)
- 558: spr458 (spr458)
- 559: spr459 (spr459)
- 560: spr460 (spr460)
- 561: spr461 (spr461)
- 562: spr462 (spr462)
- 563: spr463 (spr463)
- 564: spr464 (spr464)
- 565: spr465 (spr465)
- 566: spr466 (spr466)
- 567: spr467 (spr467)
- 568: spr468 (spr468)
- 569: spr469 (spr469)
- 570: spr470 (spr470)
- 571: spr471 (spr471)
- 572: spr472 (spr472)
- 573: spr473 (spr473)
- 574: spr474 (spr474)
- 575: spr475 (spr475)
- 576: spr476 (spr476)
- 577: spr477 (spr477)
- 578: spr478 (spr478)
- 579: spr479 (spr479)
- 580: spr480 (spr480)
- 581: spr481 (spr481)
- 582: spr482 (spr482)
- 583: spr483 (spr483)
- 584: spr484 (spr484)
- 585: spr485 (spr485)
- 586: spr486 (spr486)
- 587: spr487 (spr487)
- 588: spr488 (spr488)
- 589: spr489 (spr489)
- 590: spr490 (spr490)
- 591: spr491 (spr491)
- 592: spr492 (spr492)
- 593: spr493 (spr493)
- 594: spr494 (spr494)
- 595: spr495 (spr495)
- 596: spr496 (spr496)
- 597: spr497 (spr497)
- 598: spr498 (spr498)
- 599: spr499 (spr499)
- 600: spr500 (spr500)
- 601: spr501 (spr501)
- 602: spr502 (spr502)
- 603: spr503 (spr503)
- 604: spr504 (spr504)
- 605: spr505 (spr505)
- 606: spr506 (spr506)
- 607: spr507 (spr507)
- 608: spr508 (spr508)
- 609: spr509 (spr509)
- 610: spr510 (spr510)
- 611: spr511 (spr511)
- 612: spr512 (spr512)
- 613: spr513 (spr513)
- 614: spr514 (spr514)
- 615: spr515 (spr515)
- 616: spr516 (spr516)
- 617: spr517 (spr517)
- 618: spr518 (spr518)
- 619: spr519 (spr519)
- 620: spr520 (spr520)
- 621: spr521 (spr521)
- 622: spr522 (spr522)
- 623: spr523 (spr523)
- 624: spr524 (spr524)
- 625: spr525 (spr525)
- 626: spr526 (spr526)
- 627: spr527 (spr527)
- 628: spr528 (spr528)
- 629: spr529 (spr529)
- 630: spr530 (spr530)
- 631: spr531 (spr531)
- 632: spr532 (spr532)
- 633: spr533 (spr533)
- 634: spr534 (spr534)
- 635: spr535 (spr535)
- 636: spr536 (spr536)
- 637: spr537 (spr537)
- 638: spr538 (spr538)
- 639: spr539 (spr539)
- 640: spr540 (spr540)
- 641: spr541 (spr541)
- 642: spr542 (spr542)
- 643: spr543 (spr543)
- 644: spr544 (spr544)
- 645: spr545 (spr545)
- 646: spr546 (spr546)
- 647: spr547 (spr547)
- 648: spr548 (spr548)
- 649: spr549 (spr549)
- 650: spr550 (spr550)
- 651: spr551 (spr551)
- 652: spr552 (spr552)
- 653: spr553 (spr553)
- 654: spr554 (spr554)
- 655: spr555 (spr555)
- 656: spr556 (spr556)
- 657: spr557 (spr557)
- 658: spr558 (spr558)
- 659: spr559 (spr559)
- 660: spr560 (spr560)
- 661: spr561 (spr561)
- 662: spr562 (spr562)
- 663: spr563 (spr563)
- 664: spr564 (spr564)
- 665: spr565 (spr565)
- 666: spr566 (spr566)
- 667: spr567 (spr567)
- 668: spr568 (spr568)
- 669: spr569 (spr569)
- 670: spr570 (spr570)
- 671: spr571 (spr571)
- 672: spr572 (spr572)
- 673: spr573 (spr573)
- 674: spr574 (spr574)
- 675: spr575 (spr575)
- 676: spr576 (spr576)
- 677: spr577 (spr577)
- 678: spr578 (spr578)
- 679: spr579 (spr579)
- 680: spr580 (spr580)
- 681: spr581 (spr581)
- 682: spr582 (spr582)
- 683: spr583 (spr583)
- 684: spr584 (spr584)
- 685: spr585 (spr585)
- 686: spr586 (spr586)
- 687: spr587 (spr587)
- 688: spr588 (spr588)
- 689: spr589 (spr589)
- 690: spr590 (spr590)
- 691: spr591 (spr591)
- 692: spr592 (spr592)
- 693: spr593 (spr593)
- 694: spr594 (spr594)
- 695: spr595 (spr595)
- 696: spr596 (spr596)
- 697: spr597 (spr597)
- 698: spr598 (spr598)
- 699: spr599 (spr599)
- 700: spr600 (spr600)
- 701: spr601 (spr601)
- 702: spr602 (spr602)
- 703: spr603 (spr603)
- 704: spr604 (spr604)
- 705: spr605 (spr605)
- 706: spr606 (spr606)
- 707: spr607 (spr607)
- 708: spr608 (spr608)
- 709: spr609 (spr609)
- 710: spr610 (spr610)
- 711: spr611 (spr611)
- 712: spr612 (spr612)
- 713: spr613 (spr613)
- 714: spr614 (spr614)
- 715: spr615 (spr615)
- 716: spr616 (spr616)
- 717: spr617 (spr617)
- 718: spr618 (spr618)
- 719: spr619 (spr619)
- 720: spr620 (spr620)
- 721: spr621 (spr621)
- 722: spr622 (spr622)
- 723: spr623 (spr623)
- 724: spr624 (spr624)
- 725: spr625 (spr625)
- 726: spr626 (spr626)
- 727: spr627 (spr627)
- 728: spr628 (spr628)
- 729: spr629 (spr629)
- 730: spr630 (spr630)
- 731: spr631 (spr631)
- 732: spr632 (spr632)
- 733: spr633 (spr633)
- 734: spr634 (spr634)
- 735: spr635 (spr635)
- 736: spr636 (spr636)
- 737: spr637 (spr637)
- 738: spr638 (spr638)
- 739: spr639 (spr639)
- 740: spr640 (spr640)
- 741: spr641 (spr641)
- 742: spr642 (spr642)
- 743: spr643 (spr643)
- 744: spr644 (spr644)
- 745: spr645 (spr645)
- 746: spr646 (spr646)
- 747: spr647 (spr647)
- 748: spr648 (spr648)
- 749: spr649 (spr649)
- 750: spr650 (spr650)
- 751: spr651 (spr651)
- 752: spr652 (spr652)
- 753: spr653 (spr653)
- 754: spr654 (spr654)
- 755: spr655 (spr655)
- 756: spr656 (spr656)
- 757: spr657 (spr657)
- 758: spr658 (spr658)
- 759: spr659 (spr659)
- 760: spr660 (spr660)
- 761: spr661 (spr661)
- 762: spr662 (spr662)
- 763: spr663 (spr663)
- 764: spr664 (spr664)
- 765: spr665 (spr665)
- 766: spr666 (spr666)
- 767: spr667 (spr667)
- 768: spr668 (spr668)
- 769: spr669 (spr669)
- 770: spr670 (spr670)
- 771: spr671 (spr671)
- 772: spr672 (spr672)
- 773: spr673 (spr673)
- 774: spr674 (spr674)
- 775: spr675 (spr675)
- 776: spr676 (spr676)
- 777: spr677 (spr677)
- 778: spr678 (spr678)
- 779: spr679 (spr679)
- 780: spr680 (spr680)
- 781: spr681 (spr681)
- 782: spr682 (spr682)
- 783: spr683 (spr683)
- 784: spr684 (spr684)
- 785: spr685 (spr685)
- 786: spr686 (spr686)
- 787: spr687 (spr687)
- 788: spr688 (spr688)
- 789: spr689 (spr689)
- 790: spr690 (spr690)
- 791: spr691 (spr691)
- 792: spr692 (spr692)
- 793: spr693 (spr693)
- 794: spr694 (spr694)
- 795: spr695 (spr695)
- 796: spr696 (spr696)
- 797: spr697 (spr697)
- 798: spr698 (spr698)
- 799: spr699 (spr699)
- 800: spr700 (spr700)
- 801: spr701 (spr701)
- 802: spr702 (spr702)
- 803: spr703 (spr703)
- 804: spr704 (spr704)
- 805: spr705 (spr705)
- 806: spr706 (spr706)
- 807: spr707 (spr707)
- 808: spr708 (spr708)
- 809: spr709 (spr709)
- 810: spr710 (spr710)
- 811: spr711 (spr711)
- 812: spr712 (spr712)
- 813: spr713 (spr713)
- 814: spr714 (spr714)
- 815: spr715 (spr715)
- 816: spr716 (spr716)
- 817: spr717 (spr717)
- 818: spr718 (spr718)
- 819: spr719 (spr719)
- 820: spr720 (spr720)
- 821: spr721 (spr721)
- 822: spr722 (spr722)
- 823: spr723 (spr723)
- 824: spr724 (spr724)
- 825: spr725 (spr725)
- 826: spr726 (spr726)
- 827: spr727 (spr727)
- 828: spr728 (spr728)
- 829: spr729 (spr729)
- 830: spr730 (spr730)
- 831: spr731 (spr731)
- 832: spr732 (spr732)
- 833: spr733 (spr733)
- 834: spr734 (spr734)
- 835: spr735 (spr735)
- 836: spr736 (spr736)
- 837: spr737 (spr737)
- 838: spr738 (spr738)
- 839: spr739 (spr739)
- 840: spr740 (spr740)
- 841: spr741 (spr741)
- 842: spr742 (spr742)
- 843: spr743 (spr743)
- 844: spr744 (spr744)
- 845: spr745 (spr745)
- 846: spr746 (spr746)
- 847: spr747 (spr747)
- 848: spr748 (spr748)
- 849: spr749 (spr749)
- 850: spr750 (spr750)
- 851: spr751 (spr751)
- 852: spr752 (spr752)
- 853: spr753 (spr753)
- 854: spr754 (spr754)
- 855: spr755 (spr755)
- 856: spr756 (spr756)
- 857: spr757 (spr757)
- 858: spr758 (spr758)
- 859: spr759 (spr759)
- 860: spr760 (spr760)
- 861: spr761 (spr761)
- 862: spr762 (spr762)
- 863: spr763 (spr763)
- 864: spr764 (spr764)
- 865: spr765 (spr765)
- 866: spr766 (spr766)
- 867: spr767 (spr767)
- 868: spr768 (spr768)
- 869: spr769 (spr769)
- 870: spr770 (spr770)
- 871: spr771 (spr771)
- 872: spr772 (spr772)
- 873: spr773 (spr773)
- 874: spr774 (spr774)
- 875: spr775 (spr775)
- 876: spr776 (spr776)
- 877: spr777 (spr777)
- 878: spr778 (spr778)
- 879: spr779 (spr779)
- 880: spr780 (spr780)
- 881: spr781 (spr781)
- 882: spr782 (spr782)
- 883: spr783 (spr783)
- 884: spr784 (spr784)
- 885: spr785 (spr785)
- 886: spr786 (spr786)
- 887: spr787 (spr787)
- 888: spr788 (spr788)
- 889: spr789 (spr789)
- 890: spr790 (spr790)
- 891: spr791 (spr791)
- 892: spr792 (spr792)
- 893: spr793 (spr793)
- 894: spr794 (spr794)
- 895: spr795 (spr795)
- 896: spr796 (spr796)
- 897: spr797 (spr797)
- 898: spr798 (spr798)
- 899: spr799 (spr799)
- 900: spr800 (spr800)
- 901: spr801 (spr801)
- 902: spr802 (spr802)
- 903: spr803 (spr803)
- 904: spr804 (spr804)
- 905: spr805 (spr805)
- 906: spr806 (spr806)
- 907: spr807 (spr807)
- 908: spr808 (spr808)
- 909: spr809 (spr809)
- 910: spr810 (spr810)
- 911: spr811 (spr811)
- 912: spr812 (spr812)
- 913: spr813 (spr813)
- 914: spr814 (spr814)
- 915: spr815 (spr815)
- 916: spr816 (spr816)
- 917: spr817 (spr817)
- 918: spr818 (spr818)
- 919: spr819 (spr819)
- 920: spr820 (spr820)
- 921: spr821 (spr821)
- 922: spr822 (spr822)
- 923: spr823 (spr823)
- 924: spr824 (spr824)
- 925: spr825 (spr825)
- 926: spr826 (spr826)
- 927: spr827 (spr827)
- 928: spr828 (spr828)
- 929: spr829 (spr829)
- 930: spr830 (spr830)
- 931: spr831 (spr831)
- 932: spr832 (spr832)
- 933: spr833 (spr833)
- 934: spr834 (spr834)
- 935: spr835 (spr835)
- 936: spr836 (spr836)
- 937: spr837 (spr837)
- 938: spr838 (spr838)
- 939: spr839 (spr839)
- 940: spr840 (spr840)
- 941: spr841 (spr841)
- 942: spr842 (spr842)
- 943: spr843 (spr843)
- 944: spr844 (spr844)
- 945: spr845 (spr845)
- 946: spr846 (spr846)
- 947: spr847 (spr847)
- 948: spr848 (spr848)
- 949: spr849 (spr849)
- 950: spr850 (spr850)
- 951: spr851 (spr851)
- 952: spr852 (spr852)
- 953: spr853 (spr853)
- 954: spr854 (spr854)
- 955: spr855 (spr855)
- 956: spr856 (spr856)
- 957: spr857 (spr857)
- 958: spr858 (spr858)
- 959: spr859 (spr859)
- 960: spr860 (spr860)
- 961: spr861 (spr861)
- 962: spr862 (spr862)
- 963: spr863 (spr863)
- 964: spr864 (spr864)
- 965: spr865 (spr865)
- 966: spr866 (spr866)
- 967: spr867 (spr867)
- 968: spr868 (spr868)
- 969: spr869 (spr869)
- 970: spr870 (spr870)
- 971: spr871 (spr871)
- 972: spr872 (spr872)
- 973: spr873 (spr873)
- 974: spr874 (spr874)
- 975: spr875 (spr875)
- 976: spr876 (spr876)
- 977: spr877 (spr877)
- 978: spr878 (spr878)
- 979: spr879 (spr879)
- 980: spr880 (spr880)
- 981: spr881 (spr881)
- 982: spr882 (spr882)
- 983: spr883 (spr883)
- 984: spr884 (spr884)
- 985: spr885 (spr885)
- 986: spr886 (spr886)
- 987: spr887 (spr887)
- 988: spr888 (spr888)
- 989: spr889 (spr889)
- 990: spr890 (spr890)
- 991: spr891 (spr891)
- 992: spr892 (spr892)
- 993: spr893 (spr893)
- 994: spr894 (spr894)
- 995: spr895 (spr895)
- 996: spr896 (spr896)
- 997: spr897 (spr897)
- 998: spr898 (spr898)
- 999: spr899 (spr899)
+ 70: sr0 (sr0), unsigned 32 bits
+ 71: sr1 (sr1), unsigned 32 bits
+ 72: sr2 (sr2), unsigned 32 bits
+ 73: sr3 (sr3), unsigned 32 bits
+ 74: sr4 (sr4), unsigned 32 bits
+ 75: sr5 (sr5), unsigned 32 bits
+ 76: sr6 (sr6), unsigned 32 bits
+ 77: sr7 (sr7), unsigned 32 bits
+ 78: sr8 (sr8), unsigned 32 bits
+ 79: sr9 (sr9), unsigned 32 bits
+ 80: sr10 (sr10), unsigned 32 bits
+ 81: sr11 (sr11), unsigned 32 bits
+ 82: sr12 (sr12), unsigned 32 bits
+ 83: sr13 (sr13), unsigned 32 bits
+ 84: sr14 (sr14), unsigned 32 bits
+ 85: sr15 (sr15), unsigned 32 bits
+ 100: spr0 (spr0), unsigned 32 bits
+ 101: spr1 (spr1), unsigned 32 bits
+ 102: spr2 (spr2), unsigned 32 bits
+ 103: spr3 (spr3), unsigned 32 bits
+ 104: spr4 (spr4), unsigned 32 bits
+ 105: spr5 (spr5), unsigned 32 bits
+ 106: spr6 (spr6), unsigned 32 bits
+ 107: spr7 (spr7), unsigned 32 bits
+ 108: spr8 (spr8), unsigned 32 bits
+ 109: spr9 (spr9), unsigned 32 bits
+ 110: spr10 (spr10), unsigned 32 bits
+ 111: spr11 (spr11), unsigned 32 bits
+ 112: spr12 (spr12), unsigned 32 bits
+ 113: spr13 (spr13), unsigned 32 bits
+ 114: spr14 (spr14), unsigned 32 bits
+ 115: spr15 (spr15), unsigned 32 bits
+ 116: spr16 (spr16), unsigned 32 bits
+ 117: spr17 (spr17), unsigned 32 bits
+ 118: spr18 (spr18), unsigned 32 bits
+ 119: spr19 (spr19), unsigned 32 bits
+ 120: spr20 (spr20), unsigned 32 bits
+ 121: spr21 (spr21), unsigned 32 bits
+ 122: spr22 (spr22), unsigned 32 bits
+ 123: spr23 (spr23), unsigned 32 bits
+ 124: spr24 (spr24), unsigned 32 bits
+ 125: spr25 (spr25), unsigned 32 bits
+ 126: spr26 (spr26), unsigned 32 bits
+ 127: spr27 (spr27), unsigned 32 bits
+ 128: spr28 (spr28), unsigned 32 bits
+ 129: spr29 (spr29), unsigned 32 bits
+ 130: spr30 (spr30), unsigned 32 bits
+ 131: spr31 (spr31), unsigned 32 bits
+ 132: spr32 (spr32), unsigned 32 bits
+ 133: spr33 (spr33), unsigned 32 bits
+ 134: spr34 (spr34), unsigned 32 bits
+ 135: spr35 (spr35), unsigned 32 bits
+ 136: spr36 (spr36), unsigned 32 bits
+ 137: spr37 (spr37), unsigned 32 bits
+ 138: spr38 (spr38), unsigned 32 bits
+ 139: spr39 (spr39), unsigned 32 bits
+ 140: spr40 (spr40), unsigned 32 bits
+ 141: spr41 (spr41), unsigned 32 bits
+ 142: spr42 (spr42), unsigned 32 bits
+ 143: spr43 (spr43), unsigned 32 bits
+ 144: spr44 (spr44), unsigned 32 bits
+ 145: spr45 (spr45), unsigned 32 bits
+ 146: spr46 (spr46), unsigned 32 bits
+ 147: spr47 (spr47), unsigned 32 bits
+ 148: spr48 (spr48), unsigned 32 bits
+ 149: spr49 (spr49), unsigned 32 bits
+ 150: spr50 (spr50), unsigned 32 bits
+ 151: spr51 (spr51), unsigned 32 bits
+ 152: spr52 (spr52), unsigned 32 bits
+ 153: spr53 (spr53), unsigned 32 bits
+ 154: spr54 (spr54), unsigned 32 bits
+ 155: spr55 (spr55), unsigned 32 bits
+ 156: spr56 (spr56), unsigned 32 bits
+ 157: spr57 (spr57), unsigned 32 bits
+ 158: spr58 (spr58), unsigned 32 bits
+ 159: spr59 (spr59), unsigned 32 bits
+ 160: spr60 (spr60), unsigned 32 bits
+ 161: spr61 (spr61), unsigned 32 bits
+ 162: spr62 (spr62), unsigned 32 bits
+ 163: spr63 (spr63), unsigned 32 bits
+ 164: spr64 (spr64), unsigned 32 bits
+ 165: spr65 (spr65), unsigned 32 bits
+ 166: spr66 (spr66), unsigned 32 bits
+ 167: spr67 (spr67), unsigned 32 bits
+ 168: spr68 (spr68), unsigned 32 bits
+ 169: spr69 (spr69), unsigned 32 bits
+ 170: spr70 (spr70), unsigned 32 bits
+ 171: spr71 (spr71), unsigned 32 bits
+ 172: spr72 (spr72), unsigned 32 bits
+ 173: spr73 (spr73), unsigned 32 bits
+ 174: spr74 (spr74), unsigned 32 bits
+ 175: spr75 (spr75), unsigned 32 bits
+ 176: spr76 (spr76), unsigned 32 bits
+ 177: spr77 (spr77), unsigned 32 bits
+ 178: spr78 (spr78), unsigned 32 bits
+ 179: spr79 (spr79), unsigned 32 bits
+ 180: spr80 (spr80), unsigned 32 bits
+ 181: spr81 (spr81), unsigned 32 bits
+ 182: spr82 (spr82), unsigned 32 bits
+ 183: spr83 (spr83), unsigned 32 bits
+ 184: spr84 (spr84), unsigned 32 bits
+ 185: spr85 (spr85), unsigned 32 bits
+ 186: spr86 (spr86), unsigned 32 bits
+ 187: spr87 (spr87), unsigned 32 bits
+ 188: spr88 (spr88), unsigned 32 bits
+ 189: spr89 (spr89), unsigned 32 bits
+ 190: spr90 (spr90), unsigned 32 bits
+ 191: spr91 (spr91), unsigned 32 bits
+ 192: spr92 (spr92), unsigned 32 bits
+ 193: spr93 (spr93), unsigned 32 bits
+ 194: spr94 (spr94), unsigned 32 bits
+ 195: spr95 (spr95), unsigned 32 bits
+ 196: spr96 (spr96), unsigned 32 bits
+ 197: spr97 (spr97), unsigned 32 bits
+ 198: spr98 (spr98), unsigned 32 bits
+ 199: spr99 (spr99), unsigned 32 bits
+ 200: spr100 (spr100), unsigned 32 bits
+ 201: spr101 (spr101), unsigned 32 bits
+ 202: spr102 (spr102), unsigned 32 bits
+ 203: spr103 (spr103), unsigned 32 bits
+ 204: spr104 (spr104), unsigned 32 bits
+ 205: spr105 (spr105), unsigned 32 bits
+ 206: spr106 (spr106), unsigned 32 bits
+ 207: spr107 (spr107), unsigned 32 bits
+ 208: spr108 (spr108), unsigned 32 bits
+ 209: spr109 (spr109), unsigned 32 bits
+ 210: spr110 (spr110), unsigned 32 bits
+ 211: spr111 (spr111), unsigned 32 bits
+ 212: spr112 (spr112), unsigned 32 bits
+ 213: spr113 (spr113), unsigned 32 bits
+ 214: spr114 (spr114), unsigned 32 bits
+ 215: spr115 (spr115), unsigned 32 bits
+ 216: spr116 (spr116), unsigned 32 bits
+ 217: spr117 (spr117), unsigned 32 bits
+ 218: spr118 (spr118), unsigned 32 bits
+ 219: spr119 (spr119), unsigned 32 bits
+ 220: spr120 (spr120), unsigned 32 bits
+ 221: spr121 (spr121), unsigned 32 bits
+ 222: spr122 (spr122), unsigned 32 bits
+ 223: spr123 (spr123), unsigned 32 bits
+ 224: spr124 (spr124), unsigned 32 bits
+ 225: spr125 (spr125), unsigned 32 bits
+ 226: spr126 (spr126), unsigned 32 bits
+ 227: spr127 (spr127), unsigned 32 bits
+ 228: spr128 (spr128), unsigned 32 bits
+ 229: spr129 (spr129), unsigned 32 bits
+ 230: spr130 (spr130), unsigned 32 bits
+ 231: spr131 (spr131), unsigned 32 bits
+ 232: spr132 (spr132), unsigned 32 bits
+ 233: spr133 (spr133), unsigned 32 bits
+ 234: spr134 (spr134), unsigned 32 bits
+ 235: spr135 (spr135), unsigned 32 bits
+ 236: spr136 (spr136), unsigned 32 bits
+ 237: spr137 (spr137), unsigned 32 bits
+ 238: spr138 (spr138), unsigned 32 bits
+ 239: spr139 (spr139), unsigned 32 bits
+ 240: spr140 (spr140), unsigned 32 bits
+ 241: spr141 (spr141), unsigned 32 bits
+ 242: spr142 (spr142), unsigned 32 bits
+ 243: spr143 (spr143), unsigned 32 bits
+ 244: spr144 (spr144), unsigned 32 bits
+ 245: spr145 (spr145), unsigned 32 bits
+ 246: spr146 (spr146), unsigned 32 bits
+ 247: spr147 (spr147), unsigned 32 bits
+ 248: spr148 (spr148), unsigned 32 bits
+ 249: spr149 (spr149), unsigned 32 bits
+ 250: spr150 (spr150), unsigned 32 bits
+ 251: spr151 (spr151), unsigned 32 bits
+ 252: spr152 (spr152), unsigned 32 bits
+ 253: spr153 (spr153), unsigned 32 bits
+ 254: spr154 (spr154), unsigned 32 bits
+ 255: spr155 (spr155), unsigned 32 bits
+ 256: spr156 (spr156), unsigned 32 bits
+ 257: spr157 (spr157), unsigned 32 bits
+ 258: spr158 (spr158), unsigned 32 bits
+ 259: spr159 (spr159), unsigned 32 bits
+ 260: spr160 (spr160), unsigned 32 bits
+ 261: spr161 (spr161), unsigned 32 bits
+ 262: spr162 (spr162), unsigned 32 bits
+ 263: spr163 (spr163), unsigned 32 bits
+ 264: spr164 (spr164), unsigned 32 bits
+ 265: spr165 (spr165), unsigned 32 bits
+ 266: spr166 (spr166), unsigned 32 bits
+ 267: spr167 (spr167), unsigned 32 bits
+ 268: spr168 (spr168), unsigned 32 bits
+ 269: spr169 (spr169), unsigned 32 bits
+ 270: spr170 (spr170), unsigned 32 bits
+ 271: spr171 (spr171), unsigned 32 bits
+ 272: spr172 (spr172), unsigned 32 bits
+ 273: spr173 (spr173), unsigned 32 bits
+ 274: spr174 (spr174), unsigned 32 bits
+ 275: spr175 (spr175), unsigned 32 bits
+ 276: spr176 (spr176), unsigned 32 bits
+ 277: spr177 (spr177), unsigned 32 bits
+ 278: spr178 (spr178), unsigned 32 bits
+ 279: spr179 (spr179), unsigned 32 bits
+ 280: spr180 (spr180), unsigned 32 bits
+ 281: spr181 (spr181), unsigned 32 bits
+ 282: spr182 (spr182), unsigned 32 bits
+ 283: spr183 (spr183), unsigned 32 bits
+ 284: spr184 (spr184), unsigned 32 bits
+ 285: spr185 (spr185), unsigned 32 bits
+ 286: spr186 (spr186), unsigned 32 bits
+ 287: spr187 (spr187), unsigned 32 bits
+ 288: spr188 (spr188), unsigned 32 bits
+ 289: spr189 (spr189), unsigned 32 bits
+ 290: spr190 (spr190), unsigned 32 bits
+ 291: spr191 (spr191), unsigned 32 bits
+ 292: spr192 (spr192), unsigned 32 bits
+ 293: spr193 (spr193), unsigned 32 bits
+ 294: spr194 (spr194), unsigned 32 bits
+ 295: spr195 (spr195), unsigned 32 bits
+ 296: spr196 (spr196), unsigned 32 bits
+ 297: spr197 (spr197), unsigned 32 bits
+ 298: spr198 (spr198), unsigned 32 bits
+ 299: spr199 (spr199), unsigned 32 bits
+ 300: spr200 (spr200), unsigned 32 bits
+ 301: spr201 (spr201), unsigned 32 bits
+ 302: spr202 (spr202), unsigned 32 bits
+ 303: spr203 (spr203), unsigned 32 bits
+ 304: spr204 (spr204), unsigned 32 bits
+ 305: spr205 (spr205), unsigned 32 bits
+ 306: spr206 (spr206), unsigned 32 bits
+ 307: spr207 (spr207), unsigned 32 bits
+ 308: spr208 (spr208), unsigned 32 bits
+ 309: spr209 (spr209), unsigned 32 bits
+ 310: spr210 (spr210), unsigned 32 bits
+ 311: spr211 (spr211), unsigned 32 bits
+ 312: spr212 (spr212), unsigned 32 bits
+ 313: spr213 (spr213), unsigned 32 bits
+ 314: spr214 (spr214), unsigned 32 bits
+ 315: spr215 (spr215), unsigned 32 bits
+ 316: spr216 (spr216), unsigned 32 bits
+ 317: spr217 (spr217), unsigned 32 bits
+ 318: spr218 (spr218), unsigned 32 bits
+ 319: spr219 (spr219), unsigned 32 bits
+ 320: spr220 (spr220), unsigned 32 bits
+ 321: spr221 (spr221), unsigned 32 bits
+ 322: spr222 (spr222), unsigned 32 bits
+ 323: spr223 (spr223), unsigned 32 bits
+ 324: spr224 (spr224), unsigned 32 bits
+ 325: spr225 (spr225), unsigned 32 bits
+ 326: spr226 (spr226), unsigned 32 bits
+ 327: spr227 (spr227), unsigned 32 bits
+ 328: spr228 (spr228), unsigned 32 bits
+ 329: spr229 (spr229), unsigned 32 bits
+ 330: spr230 (spr230), unsigned 32 bits
+ 331: spr231 (spr231), unsigned 32 bits
+ 332: spr232 (spr232), unsigned 32 bits
+ 333: spr233 (spr233), unsigned 32 bits
+ 334: spr234 (spr234), unsigned 32 bits
+ 335: spr235 (spr235), unsigned 32 bits
+ 336: spr236 (spr236), unsigned 32 bits
+ 337: spr237 (spr237), unsigned 32 bits
+ 338: spr238 (spr238), unsigned 32 bits
+ 339: spr239 (spr239), unsigned 32 bits
+ 340: spr240 (spr240), unsigned 32 bits
+ 341: spr241 (spr241), unsigned 32 bits
+ 342: spr242 (spr242), unsigned 32 bits
+ 343: spr243 (spr243), unsigned 32 bits
+ 344: spr244 (spr244), unsigned 32 bits
+ 345: spr245 (spr245), unsigned 32 bits
+ 346: spr246 (spr246), unsigned 32 bits
+ 347: spr247 (spr247), unsigned 32 bits
+ 348: spr248 (spr248), unsigned 32 bits
+ 349: spr249 (spr249), unsigned 32 bits
+ 350: spr250 (spr250), unsigned 32 bits
+ 351: spr251 (spr251), unsigned 32 bits
+ 352: spr252 (spr252), unsigned 32 bits
+ 353: spr253 (spr253), unsigned 32 bits
+ 354: spr254 (spr254), unsigned 32 bits
+ 355: spr255 (spr255), unsigned 32 bits
+ 356: spr256 (spr256), unsigned 32 bits
+ 357: spr257 (spr257), unsigned 32 bits
+ 358: spr258 (spr258), unsigned 32 bits
+ 359: spr259 (spr259), unsigned 32 bits
+ 360: spr260 (spr260), unsigned 32 bits
+ 361: spr261 (spr261), unsigned 32 bits
+ 362: spr262 (spr262), unsigned 32 bits
+ 363: spr263 (spr263), unsigned 32 bits
+ 364: spr264 (spr264), unsigned 32 bits
+ 365: spr265 (spr265), unsigned 32 bits
+ 366: spr266 (spr266), unsigned 32 bits
+ 367: spr267 (spr267), unsigned 32 bits
+ 368: spr268 (spr268), unsigned 32 bits
+ 369: spr269 (spr269), unsigned 32 bits
+ 370: spr270 (spr270), unsigned 32 bits
+ 371: spr271 (spr271), unsigned 32 bits
+ 372: spr272 (spr272), unsigned 32 bits
+ 373: spr273 (spr273), unsigned 32 bits
+ 374: spr274 (spr274), unsigned 32 bits
+ 375: spr275 (spr275), unsigned 32 bits
+ 376: spr276 (spr276), unsigned 32 bits
+ 377: spr277 (spr277), unsigned 32 bits
+ 378: spr278 (spr278), unsigned 32 bits
+ 379: spr279 (spr279), unsigned 32 bits
+ 380: spr280 (spr280), unsigned 32 bits
+ 381: spr281 (spr281), unsigned 32 bits
+ 382: spr282 (spr282), unsigned 32 bits
+ 383: spr283 (spr283), unsigned 32 bits
+ 384: spr284 (spr284), unsigned 32 bits
+ 385: spr285 (spr285), unsigned 32 bits
+ 386: spr286 (spr286), unsigned 32 bits
+ 387: spr287 (spr287), unsigned 32 bits
+ 388: spr288 (spr288), unsigned 32 bits
+ 389: spr289 (spr289), unsigned 32 bits
+ 390: spr290 (spr290), unsigned 32 bits
+ 391: spr291 (spr291), unsigned 32 bits
+ 392: spr292 (spr292), unsigned 32 bits
+ 393: spr293 (spr293), unsigned 32 bits
+ 394: spr294 (spr294), unsigned 32 bits
+ 395: spr295 (spr295), unsigned 32 bits
+ 396: spr296 (spr296), unsigned 32 bits
+ 397: spr297 (spr297), unsigned 32 bits
+ 398: spr298 (spr298), unsigned 32 bits
+ 399: spr299 (spr299), unsigned 32 bits
+ 400: spr300 (spr300), unsigned 32 bits
+ 401: spr301 (spr301), unsigned 32 bits
+ 402: spr302 (spr302), unsigned 32 bits
+ 403: spr303 (spr303), unsigned 32 bits
+ 404: spr304 (spr304), unsigned 32 bits
+ 405: spr305 (spr305), unsigned 32 bits
+ 406: spr306 (spr306), unsigned 32 bits
+ 407: spr307 (spr307), unsigned 32 bits
+ 408: spr308 (spr308), unsigned 32 bits
+ 409: spr309 (spr309), unsigned 32 bits
+ 410: spr310 (spr310), unsigned 32 bits
+ 411: spr311 (spr311), unsigned 32 bits
+ 412: spr312 (spr312), unsigned 32 bits
+ 413: spr313 (spr313), unsigned 32 bits
+ 414: spr314 (spr314), unsigned 32 bits
+ 415: spr315 (spr315), unsigned 32 bits
+ 416: spr316 (spr316), unsigned 32 bits
+ 417: spr317 (spr317), unsigned 32 bits
+ 418: spr318 (spr318), unsigned 32 bits
+ 419: spr319 (spr319), unsigned 32 bits
+ 420: spr320 (spr320), unsigned 32 bits
+ 421: spr321 (spr321), unsigned 32 bits
+ 422: spr322 (spr322), unsigned 32 bits
+ 423: spr323 (spr323), unsigned 32 bits
+ 424: spr324 (spr324), unsigned 32 bits
+ 425: spr325 (spr325), unsigned 32 bits
+ 426: spr326 (spr326), unsigned 32 bits
+ 427: spr327 (spr327), unsigned 32 bits
+ 428: spr328 (spr328), unsigned 32 bits
+ 429: spr329 (spr329), unsigned 32 bits
+ 430: spr330 (spr330), unsigned 32 bits
+ 431: spr331 (spr331), unsigned 32 bits
+ 432: spr332 (spr332), unsigned 32 bits
+ 433: spr333 (spr333), unsigned 32 bits
+ 434: spr334 (spr334), unsigned 32 bits
+ 435: spr335 (spr335), unsigned 32 bits
+ 436: spr336 (spr336), unsigned 32 bits
+ 437: spr337 (spr337), unsigned 32 bits
+ 438: spr338 (spr338), unsigned 32 bits
+ 439: spr339 (spr339), unsigned 32 bits
+ 440: spr340 (spr340), unsigned 32 bits
+ 441: spr341 (spr341), unsigned 32 bits
+ 442: spr342 (spr342), unsigned 32 bits
+ 443: spr343 (spr343), unsigned 32 bits
+ 444: spr344 (spr344), unsigned 32 bits
+ 445: spr345 (spr345), unsigned 32 bits
+ 446: spr346 (spr346), unsigned 32 bits
+ 447: spr347 (spr347), unsigned 32 bits
+ 448: spr348 (spr348), unsigned 32 bits
+ 449: spr349 (spr349), unsigned 32 bits
+ 450: spr350 (spr350), unsigned 32 bits
+ 451: spr351 (spr351), unsigned 32 bits
+ 452: spr352 (spr352), unsigned 32 bits
+ 453: spr353 (spr353), unsigned 32 bits
+ 454: spr354 (spr354), unsigned 32 bits
+ 455: spr355 (spr355), unsigned 32 bits
+ 456: spr356 (spr356), unsigned 32 bits
+ 457: spr357 (spr357), unsigned 32 bits
+ 458: spr358 (spr358), unsigned 32 bits
+ 459: spr359 (spr359), unsigned 32 bits
+ 460: spr360 (spr360), unsigned 32 bits
+ 461: spr361 (spr361), unsigned 32 bits
+ 462: spr362 (spr362), unsigned 32 bits
+ 463: spr363 (spr363), unsigned 32 bits
+ 464: spr364 (spr364), unsigned 32 bits
+ 465: spr365 (spr365), unsigned 32 bits
+ 466: spr366 (spr366), unsigned 32 bits
+ 467: spr367 (spr367), unsigned 32 bits
+ 468: spr368 (spr368), unsigned 32 bits
+ 469: spr369 (spr369), unsigned 32 bits
+ 470: spr370 (spr370), unsigned 32 bits
+ 471: spr371 (spr371), unsigned 32 bits
+ 472: spr372 (spr372), unsigned 32 bits
+ 473: spr373 (spr373), unsigned 32 bits
+ 474: spr374 (spr374), unsigned 32 bits
+ 475: spr375 (spr375), unsigned 32 bits
+ 476: spr376 (spr376), unsigned 32 bits
+ 477: spr377 (spr377), unsigned 32 bits
+ 478: spr378 (spr378), unsigned 32 bits
+ 479: spr379 (spr379), unsigned 32 bits
+ 480: spr380 (spr380), unsigned 32 bits
+ 481: spr381 (spr381), unsigned 32 bits
+ 482: spr382 (spr382), unsigned 32 bits
+ 483: spr383 (spr383), unsigned 32 bits
+ 484: spr384 (spr384), unsigned 32 bits
+ 485: spr385 (spr385), unsigned 32 bits
+ 486: spr386 (spr386), unsigned 32 bits
+ 487: spr387 (spr387), unsigned 32 bits
+ 488: spr388 (spr388), unsigned 32 bits
+ 489: spr389 (spr389), unsigned 32 bits
+ 490: spr390 (spr390), unsigned 32 bits
+ 491: spr391 (spr391), unsigned 32 bits
+ 492: spr392 (spr392), unsigned 32 bits
+ 493: spr393 (spr393), unsigned 32 bits
+ 494: spr394 (spr394), unsigned 32 bits
+ 495: spr395 (spr395), unsigned 32 bits
+ 496: spr396 (spr396), unsigned 32 bits
+ 497: spr397 (spr397), unsigned 32 bits
+ 498: spr398 (spr398), unsigned 32 bits
+ 499: spr399 (spr399), unsigned 32 bits
+ 500: spr400 (spr400), unsigned 32 bits
+ 501: spr401 (spr401), unsigned 32 bits
+ 502: spr402 (spr402), unsigned 32 bits
+ 503: spr403 (spr403), unsigned 32 bits
+ 504: spr404 (spr404), unsigned 32 bits
+ 505: spr405 (spr405), unsigned 32 bits
+ 506: spr406 (spr406), unsigned 32 bits
+ 507: spr407 (spr407), unsigned 32 bits
+ 508: spr408 (spr408), unsigned 32 bits
+ 509: spr409 (spr409), unsigned 32 bits
+ 510: spr410 (spr410), unsigned 32 bits
+ 511: spr411 (spr411), unsigned 32 bits
+ 512: spr412 (spr412), unsigned 32 bits
+ 513: spr413 (spr413), unsigned 32 bits
+ 514: spr414 (spr414), unsigned 32 bits
+ 515: spr415 (spr415), unsigned 32 bits
+ 516: spr416 (spr416), unsigned 32 bits
+ 517: spr417 (spr417), unsigned 32 bits
+ 518: spr418 (spr418), unsigned 32 bits
+ 519: spr419 (spr419), unsigned 32 bits
+ 520: spr420 (spr420), unsigned 32 bits
+ 521: spr421 (spr421), unsigned 32 bits
+ 522: spr422 (spr422), unsigned 32 bits
+ 523: spr423 (spr423), unsigned 32 bits
+ 524: spr424 (spr424), unsigned 32 bits
+ 525: spr425 (spr425), unsigned 32 bits
+ 526: spr426 (spr426), unsigned 32 bits
+ 527: spr427 (spr427), unsigned 32 bits
+ 528: spr428 (spr428), unsigned 32 bits
+ 529: spr429 (spr429), unsigned 32 bits
+ 530: spr430 (spr430), unsigned 32 bits
+ 531: spr431 (spr431), unsigned 32 bits
+ 532: spr432 (spr432), unsigned 32 bits
+ 533: spr433 (spr433), unsigned 32 bits
+ 534: spr434 (spr434), unsigned 32 bits
+ 535: spr435 (spr435), unsigned 32 bits
+ 536: spr436 (spr436), unsigned 32 bits
+ 537: spr437 (spr437), unsigned 32 bits
+ 538: spr438 (spr438), unsigned 32 bits
+ 539: spr439 (spr439), unsigned 32 bits
+ 540: spr440 (spr440), unsigned 32 bits
+ 541: spr441 (spr441), unsigned 32 bits
+ 542: spr442 (spr442), unsigned 32 bits
+ 543: spr443 (spr443), unsigned 32 bits
+ 544: spr444 (spr444), unsigned 32 bits
+ 545: spr445 (spr445), unsigned 32 bits
+ 546: spr446 (spr446), unsigned 32 bits
+ 547: spr447 (spr447), unsigned 32 bits
+ 548: spr448 (spr448), unsigned 32 bits
+ 549: spr449 (spr449), unsigned 32 bits
+ 550: spr450 (spr450), unsigned 32 bits
+ 551: spr451 (spr451), unsigned 32 bits
+ 552: spr452 (spr452), unsigned 32 bits
+ 553: spr453 (spr453), unsigned 32 bits
+ 554: spr454 (spr454), unsigned 32 bits
+ 555: spr455 (spr455), unsigned 32 bits
+ 556: spr456 (spr456), unsigned 32 bits
+ 557: spr457 (spr457), unsigned 32 bits
+ 558: spr458 (spr458), unsigned 32 bits
+ 559: spr459 (spr459), unsigned 32 bits
+ 560: spr460 (spr460), unsigned 32 bits
+ 561: spr461 (spr461), unsigned 32 bits
+ 562: spr462 (spr462), unsigned 32 bits
+ 563: spr463 (spr463), unsigned 32 bits
+ 564: spr464 (spr464), unsigned 32 bits
+ 565: spr465 (spr465), unsigned 32 bits
+ 566: spr466 (spr466), unsigned 32 bits
+ 567: spr467 (spr467), unsigned 32 bits
+ 568: spr468 (spr468), unsigned 32 bits
+ 569: spr469 (spr469), unsigned 32 bits
+ 570: spr470 (spr470), unsigned 32 bits
+ 571: spr471 (spr471), unsigned 32 bits
+ 572: spr472 (spr472), unsigned 32 bits
+ 573: spr473 (spr473), unsigned 32 bits
+ 574: spr474 (spr474), unsigned 32 bits
+ 575: spr475 (spr475), unsigned 32 bits
+ 576: spr476 (spr476), unsigned 32 bits
+ 577: spr477 (spr477), unsigned 32 bits
+ 578: spr478 (spr478), unsigned 32 bits
+ 579: spr479 (spr479), unsigned 32 bits
+ 580: spr480 (spr480), unsigned 32 bits
+ 581: spr481 (spr481), unsigned 32 bits
+ 582: spr482 (spr482), unsigned 32 bits
+ 583: spr483 (spr483), unsigned 32 bits
+ 584: spr484 (spr484), unsigned 32 bits
+ 585: spr485 (spr485), unsigned 32 bits
+ 586: spr486 (spr486), unsigned 32 bits
+ 587: spr487 (spr487), unsigned 32 bits
+ 588: spr488 (spr488), unsigned 32 bits
+ 589: spr489 (spr489), unsigned 32 bits
+ 590: spr490 (spr490), unsigned 32 bits
+ 591: spr491 (spr491), unsigned 32 bits
+ 592: spr492 (spr492), unsigned 32 bits
+ 593: spr493 (spr493), unsigned 32 bits
+ 594: spr494 (spr494), unsigned 32 bits
+ 595: spr495 (spr495), unsigned 32 bits
+ 596: spr496 (spr496), unsigned 32 bits
+ 597: spr497 (spr497), unsigned 32 bits
+ 598: spr498 (spr498), unsigned 32 bits
+ 599: spr499 (spr499), unsigned 32 bits
+ 600: spr500 (spr500), unsigned 32 bits
+ 601: spr501 (spr501), unsigned 32 bits
+ 602: spr502 (spr502), unsigned 32 bits
+ 603: spr503 (spr503), unsigned 32 bits
+ 604: spr504 (spr504), unsigned 32 bits
+ 605: spr505 (spr505), unsigned 32 bits
+ 606: spr506 (spr506), unsigned 32 bits
+ 607: spr507 (spr507), unsigned 32 bits
+ 608: spr508 (spr508), unsigned 32 bits
+ 609: spr509 (spr509), unsigned 32 bits
+ 610: spr510 (spr510), unsigned 32 bits
+ 611: spr511 (spr511), unsigned 32 bits
+ 612: spr512 (spr512), unsigned 32 bits
+ 613: spr513 (spr513), unsigned 32 bits
+ 614: spr514 (spr514), unsigned 32 bits
+ 615: spr515 (spr515), unsigned 32 bits
+ 616: spr516 (spr516), unsigned 32 bits
+ 617: spr517 (spr517), unsigned 32 bits
+ 618: spr518 (spr518), unsigned 32 bits
+ 619: spr519 (spr519), unsigned 32 bits
+ 620: spr520 (spr520), unsigned 32 bits
+ 621: spr521 (spr521), unsigned 32 bits
+ 622: spr522 (spr522), unsigned 32 bits
+ 623: spr523 (spr523), unsigned 32 bits
+ 624: spr524 (spr524), unsigned 32 bits
+ 625: spr525 (spr525), unsigned 32 bits
+ 626: spr526 (spr526), unsigned 32 bits
+ 627: spr527 (spr527), unsigned 32 bits
+ 628: spr528 (spr528), unsigned 32 bits
+ 629: spr529 (spr529), unsigned 32 bits
+ 630: spr530 (spr530), unsigned 32 bits
+ 631: spr531 (spr531), unsigned 32 bits
+ 632: spr532 (spr532), unsigned 32 bits
+ 633: spr533 (spr533), unsigned 32 bits
+ 634: spr534 (spr534), unsigned 32 bits
+ 635: spr535 (spr535), unsigned 32 bits
+ 636: spr536 (spr536), unsigned 32 bits
+ 637: spr537 (spr537), unsigned 32 bits
+ 638: spr538 (spr538), unsigned 32 bits
+ 639: spr539 (spr539), unsigned 32 bits
+ 640: spr540 (spr540), unsigned 32 bits
+ 641: spr541 (spr541), unsigned 32 bits
+ 642: spr542 (spr542), unsigned 32 bits
+ 643: spr543 (spr543), unsigned 32 bits
+ 644: spr544 (spr544), unsigned 32 bits
+ 645: spr545 (spr545), unsigned 32 bits
+ 646: spr546 (spr546), unsigned 32 bits
+ 647: spr547 (spr547), unsigned 32 bits
+ 648: spr548 (spr548), unsigned 32 bits
+ 649: spr549 (spr549), unsigned 32 bits
+ 650: spr550 (spr550), unsigned 32 bits
+ 651: spr551 (spr551), unsigned 32 bits
+ 652: spr552 (spr552), unsigned 32 bits
+ 653: spr553 (spr553), unsigned 32 bits
+ 654: spr554 (spr554), unsigned 32 bits
+ 655: spr555 (spr555), unsigned 32 bits
+ 656: spr556 (spr556), unsigned 32 bits
+ 657: spr557 (spr557), unsigned 32 bits
+ 658: spr558 (spr558), unsigned 32 bits
+ 659: spr559 (spr559), unsigned 32 bits
+ 660: spr560 (spr560), unsigned 32 bits
+ 661: spr561 (spr561), unsigned 32 bits
+ 662: spr562 (spr562), unsigned 32 bits
+ 663: spr563 (spr563), unsigned 32 bits
+ 664: spr564 (spr564), unsigned 32 bits
+ 665: spr565 (spr565), unsigned 32 bits
+ 666: spr566 (spr566), unsigned 32 bits
+ 667: spr567 (spr567), unsigned 32 bits
+ 668: spr568 (spr568), unsigned 32 bits
+ 669: spr569 (spr569), unsigned 32 bits
+ 670: spr570 (spr570), unsigned 32 bits
+ 671: spr571 (spr571), unsigned 32 bits
+ 672: spr572 (spr572), unsigned 32 bits
+ 673: spr573 (spr573), unsigned 32 bits
+ 674: spr574 (spr574), unsigned 32 bits
+ 675: spr575 (spr575), unsigned 32 bits
+ 676: spr576 (spr576), unsigned 32 bits
+ 677: spr577 (spr577), unsigned 32 bits
+ 678: spr578 (spr578), unsigned 32 bits
+ 679: spr579 (spr579), unsigned 32 bits
+ 680: spr580 (spr580), unsigned 32 bits
+ 681: spr581 (spr581), unsigned 32 bits
+ 682: spr582 (spr582), unsigned 32 bits
+ 683: spr583 (spr583), unsigned 32 bits
+ 684: spr584 (spr584), unsigned 32 bits
+ 685: spr585 (spr585), unsigned 32 bits
+ 686: spr586 (spr586), unsigned 32 bits
+ 687: spr587 (spr587), unsigned 32 bits
+ 688: spr588 (spr588), unsigned 32 bits
+ 689: spr589 (spr589), unsigned 32 bits
+ 690: spr590 (spr590), unsigned 32 bits
+ 691: spr591 (spr591), unsigned 32 bits
+ 692: spr592 (spr592), unsigned 32 bits
+ 693: spr593 (spr593), unsigned 32 bits
+ 694: spr594 (spr594), unsigned 32 bits
+ 695: spr595 (spr595), unsigned 32 bits
+ 696: spr596 (spr596), unsigned 32 bits
+ 697: spr597 (spr597), unsigned 32 bits
+ 698: spr598 (spr598), unsigned 32 bits
+ 699: spr599 (spr599), unsigned 32 bits
+ 700: spr600 (spr600), unsigned 32 bits
+ 701: spr601 (spr601), unsigned 32 bits
+ 702: spr602 (spr602), unsigned 32 bits
+ 703: spr603 (spr603), unsigned 32 bits
+ 704: spr604 (spr604), unsigned 32 bits
+ 705: spr605 (spr605), unsigned 32 bits
+ 706: spr606 (spr606), unsigned 32 bits
+ 707: spr607 (spr607), unsigned 32 bits
+ 708: spr608 (spr608), unsigned 32 bits
+ 709: spr609 (spr609), unsigned 32 bits
+ 710: spr610 (spr610), unsigned 32 bits
+ 711: spr611 (spr611), unsigned 32 bits
+ 712: spr612 (spr612), unsigned 32 bits
+ 713: spr613 (spr613), unsigned 32 bits
+ 714: spr614 (spr614), unsigned 32 bits
+ 715: spr615 (spr615), unsigned 32 bits
+ 716: spr616 (spr616), unsigned 32 bits
+ 717: spr617 (spr617), unsigned 32 bits
+ 718: spr618 (spr618), unsigned 32 bits
+ 719: spr619 (spr619), unsigned 32 bits
+ 720: spr620 (spr620), unsigned 32 bits
+ 721: spr621 (spr621), unsigned 32 bits
+ 722: spr622 (spr622), unsigned 32 bits
+ 723: spr623 (spr623), unsigned 32 bits
+ 724: spr624 (spr624), unsigned 32 bits
+ 725: spr625 (spr625), unsigned 32 bits
+ 726: spr626 (spr626), unsigned 32 bits
+ 727: spr627 (spr627), unsigned 32 bits
+ 728: spr628 (spr628), unsigned 32 bits
+ 729: spr629 (spr629), unsigned 32 bits
+ 730: spr630 (spr630), unsigned 32 bits
+ 731: spr631 (spr631), unsigned 32 bits
+ 732: spr632 (spr632), unsigned 32 bits
+ 733: spr633 (spr633), unsigned 32 bits
+ 734: spr634 (spr634), unsigned 32 bits
+ 735: spr635 (spr635), unsigned 32 bits
+ 736: spr636 (spr636), unsigned 32 bits
+ 737: spr637 (spr637), unsigned 32 bits
+ 738: spr638 (spr638), unsigned 32 bits
+ 739: spr639 (spr639), unsigned 32 bits
+ 740: spr640 (spr640), unsigned 32 bits
+ 741: spr641 (spr641), unsigned 32 bits
+ 742: spr642 (spr642), unsigned 32 bits
+ 743: spr643 (spr643), unsigned 32 bits
+ 744: spr644 (spr644), unsigned 32 bits
+ 745: spr645 (spr645), unsigned 32 bits
+ 746: spr646 (spr646), unsigned 32 bits
+ 747: spr647 (spr647), unsigned 32 bits
+ 748: spr648 (spr648), unsigned 32 bits
+ 749: spr649 (spr649), unsigned 32 bits
+ 750: spr650 (spr650), unsigned 32 bits
+ 751: spr651 (spr651), unsigned 32 bits
+ 752: spr652 (spr652), unsigned 32 bits
+ 753: spr653 (spr653), unsigned 32 bits
+ 754: spr654 (spr654), unsigned 32 bits
+ 755: spr655 (spr655), unsigned 32 bits
+ 756: spr656 (spr656), unsigned 32 bits
+ 757: spr657 (spr657), unsigned 32 bits
+ 758: spr658 (spr658), unsigned 32 bits
+ 759: spr659 (spr659), unsigned 32 bits
+ 760: spr660 (spr660), unsigned 32 bits
+ 761: spr661 (spr661), unsigned 32 bits
+ 762: spr662 (spr662), unsigned 32 bits
+ 763: spr663 (spr663), unsigned 32 bits
+ 764: spr664 (spr664), unsigned 32 bits
+ 765: spr665 (spr665), unsigned 32 bits
+ 766: spr666 (spr666), unsigned 32 bits
+ 767: spr667 (spr667), unsigned 32 bits
+ 768: spr668 (spr668), unsigned 32 bits
+ 769: spr669 (spr669), unsigned 32 bits
+ 770: spr670 (spr670), unsigned 32 bits
+ 771: spr671 (spr671), unsigned 32 bits
+ 772: spr672 (spr672), unsigned 32 bits
+ 773: spr673 (spr673), unsigned 32 bits
+ 774: spr674 (spr674), unsigned 32 bits
+ 775: spr675 (spr675), unsigned 32 bits
+ 776: spr676 (spr676), unsigned 32 bits
+ 777: spr677 (spr677), unsigned 32 bits
+ 778: spr678 (spr678), unsigned 32 bits
+ 779: spr679 (spr679), unsigned 32 bits
+ 780: spr680 (spr680), unsigned 32 bits
+ 781: spr681 (spr681), unsigned 32 bits
+ 782: spr682 (spr682), unsigned 32 bits
+ 783: spr683 (spr683), unsigned 32 bits
+ 784: spr684 (spr684), unsigned 32 bits
+ 785: spr685 (spr685), unsigned 32 bits
+ 786: spr686 (spr686), unsigned 32 bits
+ 787: spr687 (spr687), unsigned 32 bits
+ 788: spr688 (spr688), unsigned 32 bits
+ 789: spr689 (spr689), unsigned 32 bits
+ 790: spr690 (spr690), unsigned 32 bits
+ 791: spr691 (spr691), unsigned 32 bits
+ 792: spr692 (spr692), unsigned 32 bits
+ 793: spr693 (spr693), unsigned 32 bits
+ 794: spr694 (spr694), unsigned 32 bits
+ 795: spr695 (spr695), unsigned 32 bits
+ 796: spr696 (spr696), unsigned 32 bits
+ 797: spr697 (spr697), unsigned 32 bits
+ 798: spr698 (spr698), unsigned 32 bits
+ 799: spr699 (spr699), unsigned 32 bits
+ 800: spr700 (spr700), unsigned 32 bits
+ 801: spr701 (spr701), unsigned 32 bits
+ 802: spr702 (spr702), unsigned 32 bits
+ 803: spr703 (spr703), unsigned 32 bits
+ 804: spr704 (spr704), unsigned 32 bits
+ 805: spr705 (spr705), unsigned 32 bits
+ 806: spr706 (spr706), unsigned 32 bits
+ 807: spr707 (spr707), unsigned 32 bits
+ 808: spr708 (spr708), unsigned 32 bits
+ 809: spr709 (spr709), unsigned 32 bits
+ 810: spr710 (spr710), unsigned 32 bits
+ 811: spr711 (spr711), unsigned 32 bits
+ 812: spr712 (spr712), unsigned 32 bits
+ 813: spr713 (spr713), unsigned 32 bits
+ 814: spr714 (spr714), unsigned 32 bits
+ 815: spr715 (spr715), unsigned 32 bits
+ 816: spr716 (spr716), unsigned 32 bits
+ 817: spr717 (spr717), unsigned 32 bits
+ 818: spr718 (spr718), unsigned 32 bits
+ 819: spr719 (spr719), unsigned 32 bits
+ 820: spr720 (spr720), unsigned 32 bits
+ 821: spr721 (spr721), unsigned 32 bits
+ 822: spr722 (spr722), unsigned 32 bits
+ 823: spr723 (spr723), unsigned 32 bits
+ 824: spr724 (spr724), unsigned 32 bits
+ 825: spr725 (spr725), unsigned 32 bits
+ 826: spr726 (spr726), unsigned 32 bits
+ 827: spr727 (spr727), unsigned 32 bits
+ 828: spr728 (spr728), unsigned 32 bits
+ 829: spr729 (spr729), unsigned 32 bits
+ 830: spr730 (spr730), unsigned 32 bits
+ 831: spr731 (spr731), unsigned 32 bits
+ 832: spr732 (spr732), unsigned 32 bits
+ 833: spr733 (spr733), unsigned 32 bits
+ 834: spr734 (spr734), unsigned 32 bits
+ 835: spr735 (spr735), unsigned 32 bits
+ 836: spr736 (spr736), unsigned 32 bits
+ 837: spr737 (spr737), unsigned 32 bits
+ 838: spr738 (spr738), unsigned 32 bits
+ 839: spr739 (spr739), unsigned 32 bits
+ 840: spr740 (spr740), unsigned 32 bits
+ 841: spr741 (spr741), unsigned 32 bits
+ 842: spr742 (spr742), unsigned 32 bits
+ 843: spr743 (spr743), unsigned 32 bits
+ 844: spr744 (spr744), unsigned 32 bits
+ 845: spr745 (spr745), unsigned 32 bits
+ 846: spr746 (spr746), unsigned 32 bits
+ 847: spr747 (spr747), unsigned 32 bits
+ 848: spr748 (spr748), unsigned 32 bits
+ 849: spr749 (spr749), unsigned 32 bits
+ 850: spr750 (spr750), unsigned 32 bits
+ 851: spr751 (spr751), unsigned 32 bits
+ 852: spr752 (spr752), unsigned 32 bits
+ 853: spr753 (spr753), unsigned 32 bits
+ 854: spr754 (spr754), unsigned 32 bits
+ 855: spr755 (spr755), unsigned 32 bits
+ 856: spr756 (spr756), unsigned 32 bits
+ 857: spr757 (spr757), unsigned 32 bits
+ 858: spr758 (spr758), unsigned 32 bits
+ 859: spr759 (spr759), unsigned 32 bits
+ 860: spr760 (spr760), unsigned 32 bits
+ 861: spr761 (spr761), unsigned 32 bits
+ 862: spr762 (spr762), unsigned 32 bits
+ 863: spr763 (spr763), unsigned 32 bits
+ 864: spr764 (spr764), unsigned 32 bits
+ 865: spr765 (spr765), unsigned 32 bits
+ 866: spr766 (spr766), unsigned 32 bits
+ 867: spr767 (spr767), unsigned 32 bits
+ 868: spr768 (spr768), unsigned 32 bits
+ 869: spr769 (spr769), unsigned 32 bits
+ 870: spr770 (spr770), unsigned 32 bits
+ 871: spr771 (spr771), unsigned 32 bits
+ 872: spr772 (spr772), unsigned 32 bits
+ 873: spr773 (spr773), unsigned 32 bits
+ 874: spr774 (spr774), unsigned 32 bits
+ 875: spr775 (spr775), unsigned 32 bits
+ 876: spr776 (spr776), unsigned 32 bits
+ 877: spr777 (spr777), unsigned 32 bits
+ 878: spr778 (spr778), unsigned 32 bits
+ 879: spr779 (spr779), unsigned 32 bits
+ 880: spr780 (spr780), unsigned 32 bits
+ 881: spr781 (spr781), unsigned 32 bits
+ 882: spr782 (spr782), unsigned 32 bits
+ 883: spr783 (spr783), unsigned 32 bits
+ 884: spr784 (spr784), unsigned 32 bits
+ 885: spr785 (spr785), unsigned 32 bits
+ 886: spr786 (spr786), unsigned 32 bits
+ 887: spr787 (spr787), unsigned 32 bits
+ 888: spr788 (spr788), unsigned 32 bits
+ 889: spr789 (spr789), unsigned 32 bits
+ 890: spr790 (spr790), unsigned 32 bits
+ 891: spr791 (spr791), unsigned 32 bits
+ 892: spr792 (spr792), unsigned 32 bits
+ 893: spr793 (spr793), unsigned 32 bits
+ 894: spr794 (spr794), unsigned 32 bits
+ 895: spr795 (spr795), unsigned 32 bits
+ 896: spr796 (spr796), unsigned 32 bits
+ 897: spr797 (spr797), unsigned 32 bits
+ 898: spr798 (spr798), unsigned 32 bits
+ 899: spr799 (spr799), unsigned 32 bits
+ 900: spr800 (spr800), unsigned 32 bits
+ 901: spr801 (spr801), unsigned 32 bits
+ 902: spr802 (spr802), unsigned 32 bits
+ 903: spr803 (spr803), unsigned 32 bits
+ 904: spr804 (spr804), unsigned 32 bits
+ 905: spr805 (spr805), unsigned 32 bits
+ 906: spr806 (spr806), unsigned 32 bits
+ 907: spr807 (spr807), unsigned 32 bits
+ 908: spr808 (spr808), unsigned 32 bits
+ 909: spr809 (spr809), unsigned 32 bits
+ 910: spr810 (spr810), unsigned 32 bits
+ 911: spr811 (spr811), unsigned 32 bits
+ 912: spr812 (spr812), unsigned 32 bits
+ 913: spr813 (spr813), unsigned 32 bits
+ 914: spr814 (spr814), unsigned 32 bits
+ 915: spr815 (spr815), unsigned 32 bits
+ 916: spr816 (spr816), unsigned 32 bits
+ 917: spr817 (spr817), unsigned 32 bits
+ 918: spr818 (spr818), unsigned 32 bits
+ 919: spr819 (spr819), unsigned 32 bits
+ 920: spr820 (spr820), unsigned 32 bits
+ 921: spr821 (spr821), unsigned 32 bits
+ 922: spr822 (spr822), unsigned 32 bits
+ 923: spr823 (spr823), unsigned 32 bits
+ 924: spr824 (spr824), unsigned 32 bits
+ 925: spr825 (spr825), unsigned 32 bits
+ 926: spr826 (spr826), unsigned 32 bits
+ 927: spr827 (spr827), unsigned 32 bits
+ 928: spr828 (spr828), unsigned 32 bits
+ 929: spr829 (spr829), unsigned 32 bits
+ 930: spr830 (spr830), unsigned 32 bits
+ 931: spr831 (spr831), unsigned 32 bits
+ 932: spr832 (spr832), unsigned 32 bits
+ 933: spr833 (spr833), unsigned 32 bits
+ 934: spr834 (spr834), unsigned 32 bits
+ 935: spr835 (spr835), unsigned 32 bits
+ 936: spr836 (spr836), unsigned 32 bits
+ 937: spr837 (spr837), unsigned 32 bits
+ 938: spr838 (spr838), unsigned 32 bits
+ 939: spr839 (spr839), unsigned 32 bits
+ 940: spr840 (spr840), unsigned 32 bits
+ 941: spr841 (spr841), unsigned 32 bits
+ 942: spr842 (spr842), unsigned 32 bits
+ 943: spr843 (spr843), unsigned 32 bits
+ 944: spr844 (spr844), unsigned 32 bits
+ 945: spr845 (spr845), unsigned 32 bits
+ 946: spr846 (spr846), unsigned 32 bits
+ 947: spr847 (spr847), unsigned 32 bits
+ 948: spr848 (spr848), unsigned 32 bits
+ 949: spr849 (spr849), unsigned 32 bits
+ 950: spr850 (spr850), unsigned 32 bits
+ 951: spr851 (spr851), unsigned 32 bits
+ 952: spr852 (spr852), unsigned 32 bits
+ 953: spr853 (spr853), unsigned 32 bits
+ 954: spr854 (spr854), unsigned 32 bits
+ 955: spr855 (spr855), unsigned 32 bits
+ 956: spr856 (spr856), unsigned 32 bits
+ 957: spr857 (spr857), unsigned 32 bits
+ 958: spr858 (spr858), unsigned 32 bits
+ 959: spr859 (spr859), unsigned 32 bits
+ 960: spr860 (spr860), unsigned 32 bits
+ 961: spr861 (spr861), unsigned 32 bits
+ 962: spr862 (spr862), unsigned 32 bits
+ 963: spr863 (spr863), unsigned 32 bits
+ 964: spr864 (spr864), unsigned 32 bits
+ 965: spr865 (spr865), unsigned 32 bits
+ 966: spr866 (spr866), unsigned 32 bits
+ 967: spr867 (spr867), unsigned 32 bits
+ 968: spr868 (spr868), unsigned 32 bits
+ 969: spr869 (spr869), unsigned 32 bits
+ 970: spr870 (spr870), unsigned 32 bits
+ 971: spr871 (spr871), unsigned 32 bits
+ 972: spr872 (spr872), unsigned 32 bits
+ 973: spr873 (spr873), unsigned 32 bits
+ 974: spr874 (spr874), unsigned 32 bits
+ 975: spr875 (spr875), unsigned 32 bits
+ 976: spr876 (spr876), unsigned 32 bits
+ 977: spr877 (spr877), unsigned 32 bits
+ 978: spr878 (spr878), unsigned 32 bits
+ 979: spr879 (spr879), unsigned 32 bits
+ 980: spr880 (spr880), unsigned 32 bits
+ 981: spr881 (spr881), unsigned 32 bits
+ 982: spr882 (spr882), unsigned 32 bits
+ 983: spr883 (spr883), unsigned 32 bits
+ 984: spr884 (spr884), unsigned 32 bits
+ 985: spr885 (spr885), unsigned 32 bits
+ 986: spr886 (spr886), unsigned 32 bits
+ 987: spr887 (spr887), unsigned 32 bits
+ 988: spr888 (spr888), unsigned 32 bits
+ 989: spr889 (spr889), unsigned 32 bits
+ 990: spr890 (spr890), unsigned 32 bits
+ 991: spr891 (spr891), unsigned 32 bits
+ 992: spr892 (spr892), unsigned 32 bits
+ 993: spr893 (spr893), unsigned 32 bits
+ 994: spr894 (spr894), unsigned 32 bits
+ 995: spr895 (spr895), unsigned 32 bits
+ 996: spr896 (spr896), unsigned 32 bits
+ 997: spr897 (spr897), unsigned 32 bits
+ 998: spr898 (spr898), unsigned 32 bits
+ 999: spr899 (spr899), unsigned 32 bits
vector registers:
- 1124: vr0 (vr0)
- 1125: vr1 (vr1)
- 1126: vr2 (vr2)
- 1127: vr3 (vr3)
- 1128: vr4 (vr4)
- 1129: vr5 (vr5)
- 1130: vr6 (vr6)
- 1131: vr7 (vr7)
- 1132: vr8 (vr8)
- 1133: vr9 (vr9)
- 1134: vr10 (vr10)
- 1135: vr11 (vr11)
- 1136: vr12 (vr12)
- 1137: vr13 (vr13)
- 1138: vr14 (vr14)
- 1139: vr15 (vr15)
- 1140: vr16 (vr16)
- 1141: vr17 (vr17)
- 1142: vr18 (vr18)
- 1143: vr19 (vr19)
- 1144: vr20 (vr20)
- 1145: vr21 (vr21)
- 1146: vr22 (vr22)
- 1147: vr23 (vr23)
- 1148: vr24 (vr24)
- 1149: vr25 (vr25)
- 1150: vr26 (vr26)
- 1151: vr27 (vr27)
- 1152: vr28 (vr28)
- 1153: vr29 (vr29)
- 1154: vr30 (vr30)
- 1155: vr31 (vr31)
+ 1124: vr0 (vr0), unsigned 128 bits
+ 1125: vr1 (vr1), unsigned 128 bits
+ 1126: vr2 (vr2), unsigned 128 bits
+ 1127: vr3 (vr3), unsigned 128 bits
+ 1128: vr4 (vr4), unsigned 128 bits
+ 1129: vr5 (vr5), unsigned 128 bits
+ 1130: vr6 (vr6), unsigned 128 bits
+ 1131: vr7 (vr7), unsigned 128 bits
+ 1132: vr8 (vr8), unsigned 128 bits
+ 1133: vr9 (vr9), unsigned 128 bits
+ 1134: vr10 (vr10), unsigned 128 bits
+ 1135: vr11 (vr11), unsigned 128 bits
+ 1136: vr12 (vr12), unsigned 128 bits
+ 1137: vr13 (vr13), unsigned 128 bits
+ 1138: vr14 (vr14), unsigned 128 bits
+ 1139: vr15 (vr15), unsigned 128 bits
+ 1140: vr16 (vr16), unsigned 128 bits
+ 1141: vr17 (vr17), unsigned 128 bits
+ 1142: vr18 (vr18), unsigned 128 bits
+ 1143: vr19 (vr19), unsigned 128 bits
+ 1144: vr20 (vr20), unsigned 128 bits
+ 1145: vr21 (vr21), unsigned 128 bits
+ 1146: vr22 (vr22), unsigned 128 bits
+ 1147: vr23 (vr23), unsigned 128 bits
+ 1148: vr24 (vr24), unsigned 128 bits
+ 1149: vr25 (vr25), unsigned 128 bits
+ 1150: vr26 (vr26), unsigned 128 bits
+ 1151: vr27 (vr27), unsigned 128 bits
+ 1152: vr28 (vr28), unsigned 128 bits
+ 1153: vr29 (vr29), unsigned 128 bits
+ 1154: vr30 (vr30), unsigned 128 bits
+ 1155: vr31 (vr31), unsigned 128 bits
EOF
-regs_test testfile26 testfile27 <<\EOF
+regs_test testfile23 <<\EOF
integer registers:
- 0: %r0 (r0)
- 1: %r1 (r1)
- 2: %r2 (r2)
- 3: %r3 (r3)
- 4: %r4 (r4)
- 5: %r5 (r5)
- 6: %r6 (r6)
- 7: %r7 (r7)
- 8: %r8 (r8)
- 9: %r9 (r9)
- 10: %r10 (r10)
- 11: %r11 (r11)
- 12: %r12 (r12)
- 13: %r13 (r13)
- 14: %r14 (r14)
- 15: %r15 (r15)
+ 0: r0 (r0), signed 64 bits
+ 1: r1 (r1), signed 64 bits
+ 2: r2 (r2), signed 64 bits
+ 3: r3 (r3), signed 64 bits
+ 4: r4 (r4), signed 64 bits
+ 5: r5 (r5), signed 64 bits
+ 6: r6 (r6), signed 64 bits
+ 7: r7 (r7), signed 64 bits
+ 8: r8 (r8), signed 64 bits
+ 9: r9 (r9), signed 64 bits
+ 10: r10 (r10), signed 64 bits
+ 11: r11 (r11), signed 64 bits
+ 12: r12 (r12), signed 64 bits
+ 13: r13 (r13), signed 64 bits
+ 14: r14 (r14), signed 64 bits
+ 15: r15 (r15), signed 64 bits
+ 16: r16 (r16), signed 64 bits
+ 17: r17 (r17), signed 64 bits
+ 18: r18 (r18), signed 64 bits
+ 19: r19 (r19), signed 64 bits
+ 20: r20 (r20), signed 64 bits
+ 21: r21 (r21), signed 64 bits
+ 22: r22 (r22), signed 64 bits
+ 23: r23 (r23), signed 64 bits
+ 24: r24 (r24), signed 64 bits
+ 25: r25 (r25), signed 64 bits
+ 26: r26 (r26), signed 64 bits
+ 27: r27 (r27), signed 64 bits
+ 28: r28 (r28), signed 64 bits
+ 29: r29 (r29), signed 64 bits
+ 30: r30 (r30), signed 64 bits
+ 31: r31 (r31), signed 64 bits
+ 64: cr (cr), unsigned 64 bits
+ 66: msr (msr), unsigned 64 bits
FPU registers:
- 16: %f0 (f0)
- 17: %f2 (f2)
- 18: %f4 (f4)
- 19: %f6 (f6)
- 20: %f1 (f1)
- 21: %f3 (f3)
- 22: %f5 (f5)
- 23: %f7 (f7)
- 24: %f8 (f8)
- 25: %f10 (f10)
- 26: %f12 (f12)
- 27: %f14 (f14)
- 28: %f9 (f9)
- 29: %f11 (f11)
- 30: %f13 (f13)
- 31: %f15 (f15)
+ 32: f0 (f0), float 64 bits
+ 33: f1 (f1), float 64 bits
+ 34: f2 (f2), float 64 bits
+ 35: f3 (f3), float 64 bits
+ 36: f4 (f4), float 64 bits
+ 37: f5 (f5), float 64 bits
+ 38: f6 (f6), float 64 bits
+ 39: f7 (f7), float 64 bits
+ 40: f8 (f8), float 64 bits
+ 41: f9 (f9), float 64 bits
+ 42: f10 (f10), float 64 bits
+ 43: f11 (f11), float 64 bits
+ 44: f12 (f12), float 64 bits
+ 45: f13 (f13), float 64 bits
+ 46: f14 (f14), float 64 bits
+ 47: f15 (f15), float 64 bits
+ 48: f16 (f16), float 64 bits
+ 49: f17 (f17), float 64 bits
+ 50: f18 (f18), float 64 bits
+ 51: f19 (f19), float 64 bits
+ 52: f20 (f20), float 64 bits
+ 53: f21 (f21), float 64 bits
+ 54: f22 (f22), float 64 bits
+ 55: f23 (f23), float 64 bits
+ 56: f24 (f24), float 64 bits
+ 57: f25 (f25), float 64 bits
+ 58: f26 (f26), float 64 bits
+ 59: f27 (f27), float 64 bits
+ 60: f28 (f28), float 64 bits
+ 61: f29 (f29), float 64 bits
+ 62: f30 (f30), float 64 bits
+ 63: f31 (f31), float 64 bits
+ 65: fpscr (fpscr), unsigned 64 bits
+privileged registers:
+ 70: sr0 (sr0), unsigned 64 bits
+ 71: sr1 (sr1), unsigned 64 bits
+ 72: sr2 (sr2), unsigned 64 bits
+ 73: sr3 (sr3), unsigned 64 bits
+ 74: sr4 (sr4), unsigned 64 bits
+ 75: sr5 (sr5), unsigned 64 bits
+ 76: sr6 (sr6), unsigned 64 bits
+ 77: sr7 (sr7), unsigned 64 bits
+ 78: sr8 (sr8), unsigned 64 bits
+ 79: sr9 (sr9), unsigned 64 bits
+ 80: sr10 (sr10), unsigned 64 bits
+ 81: sr11 (sr11), unsigned 64 bits
+ 82: sr12 (sr12), unsigned 64 bits
+ 83: sr13 (sr13), unsigned 64 bits
+ 84: sr14 (sr14), unsigned 64 bits
+ 85: sr15 (sr15), unsigned 64 bits
+ 100: spr0 (spr0), unsigned 64 bits
+ 101: spr1 (spr1), unsigned 64 bits
+ 102: spr2 (spr2), unsigned 64 bits
+ 103: spr3 (spr3), unsigned 64 bits
+ 104: spr4 (spr4), unsigned 64 bits
+ 105: spr5 (spr5), unsigned 64 bits
+ 106: spr6 (spr6), unsigned 64 bits
+ 107: spr7 (spr7), unsigned 64 bits
+ 108: spr8 (spr8), unsigned 64 bits
+ 109: spr9 (spr9), unsigned 64 bits
+ 110: spr10 (spr10), unsigned 64 bits
+ 111: spr11 (spr11), unsigned 64 bits
+ 112: spr12 (spr12), unsigned 64 bits
+ 113: spr13 (spr13), unsigned 64 bits
+ 114: spr14 (spr14), unsigned 64 bits
+ 115: spr15 (spr15), unsigned 64 bits
+ 116: spr16 (spr16), unsigned 64 bits
+ 117: spr17 (spr17), unsigned 64 bits
+ 118: spr18 (spr18), unsigned 64 bits
+ 119: spr19 (spr19), unsigned 64 bits
+ 120: spr20 (spr20), unsigned 64 bits
+ 121: spr21 (spr21), unsigned 64 bits
+ 122: spr22 (spr22), unsigned 64 bits
+ 123: spr23 (spr23), unsigned 64 bits
+ 124: spr24 (spr24), unsigned 64 bits
+ 125: spr25 (spr25), unsigned 64 bits
+ 126: spr26 (spr26), unsigned 64 bits
+ 127: spr27 (spr27), unsigned 64 bits
+ 128: spr28 (spr28), unsigned 64 bits
+ 129: spr29 (spr29), unsigned 64 bits
+ 130: spr30 (spr30), unsigned 64 bits
+ 131: spr31 (spr31), unsigned 64 bits
+ 132: spr32 (spr32), unsigned 64 bits
+ 133: spr33 (spr33), unsigned 64 bits
+ 134: spr34 (spr34), unsigned 64 bits
+ 135: spr35 (spr35), unsigned 64 bits
+ 136: spr36 (spr36), unsigned 64 bits
+ 137: spr37 (spr37), unsigned 64 bits
+ 138: spr38 (spr38), unsigned 64 bits
+ 139: spr39 (spr39), unsigned 64 bits
+ 140: spr40 (spr40), unsigned 64 bits
+ 141: spr41 (spr41), unsigned 64 bits
+ 142: spr42 (spr42), unsigned 64 bits
+ 143: spr43 (spr43), unsigned 64 bits
+ 144: spr44 (spr44), unsigned 64 bits
+ 145: spr45 (spr45), unsigned 64 bits
+ 146: spr46 (spr46), unsigned 64 bits
+ 147: spr47 (spr47), unsigned 64 bits
+ 148: spr48 (spr48), unsigned 64 bits
+ 149: spr49 (spr49), unsigned 64 bits
+ 150: spr50 (spr50), unsigned 64 bits
+ 151: spr51 (spr51), unsigned 64 bits
+ 152: spr52 (spr52), unsigned 64 bits
+ 153: spr53 (spr53), unsigned 64 bits
+ 154: spr54 (spr54), unsigned 64 bits
+ 155: spr55 (spr55), unsigned 64 bits
+ 156: spr56 (spr56), unsigned 64 bits
+ 157: spr57 (spr57), unsigned 64 bits
+ 158: spr58 (spr58), unsigned 64 bits
+ 159: spr59 (spr59), unsigned 64 bits
+ 160: spr60 (spr60), unsigned 64 bits
+ 161: spr61 (spr61), unsigned 64 bits
+ 162: spr62 (spr62), unsigned 64 bits
+ 163: spr63 (spr63), unsigned 64 bits
+ 164: spr64 (spr64), unsigned 64 bits
+ 165: spr65 (spr65), unsigned 64 bits
+ 166: spr66 (spr66), unsigned 64 bits
+ 167: spr67 (spr67), unsigned 64 bits
+ 168: spr68 (spr68), unsigned 64 bits
+ 169: spr69 (spr69), unsigned 64 bits
+ 170: spr70 (spr70), unsigned 64 bits
+ 171: spr71 (spr71), unsigned 64 bits
+ 172: spr72 (spr72), unsigned 64 bits
+ 173: spr73 (spr73), unsigned 64 bits
+ 174: spr74 (spr74), unsigned 64 bits
+ 175: spr75 (spr75), unsigned 64 bits
+ 176: spr76 (spr76), unsigned 64 bits
+ 177: spr77 (spr77), unsigned 64 bits
+ 178: spr78 (spr78), unsigned 64 bits
+ 179: spr79 (spr79), unsigned 64 bits
+ 180: spr80 (spr80), unsigned 64 bits
+ 181: spr81 (spr81), unsigned 64 bits
+ 182: spr82 (spr82), unsigned 64 bits
+ 183: spr83 (spr83), unsigned 64 bits
+ 184: spr84 (spr84), unsigned 64 bits
+ 185: spr85 (spr85), unsigned 64 bits
+ 186: spr86 (spr86), unsigned 64 bits
+ 187: spr87 (spr87), unsigned 64 bits
+ 188: spr88 (spr88), unsigned 64 bits
+ 189: spr89 (spr89), unsigned 64 bits
+ 190: spr90 (spr90), unsigned 64 bits
+ 191: spr91 (spr91), unsigned 64 bits
+ 192: spr92 (spr92), unsigned 64 bits
+ 193: spr93 (spr93), unsigned 64 bits
+ 194: spr94 (spr94), unsigned 64 bits
+ 195: spr95 (spr95), unsigned 64 bits
+ 196: spr96 (spr96), unsigned 64 bits
+ 197: spr97 (spr97), unsigned 64 bits
+ 198: spr98 (spr98), unsigned 64 bits
+ 199: spr99 (spr99), unsigned 64 bits
+ 200: spr100 (spr100), unsigned 64 bits
+ 201: spr101 (spr101), unsigned 64 bits
+ 202: spr102 (spr102), unsigned 64 bits
+ 203: spr103 (spr103), unsigned 64 bits
+ 204: spr104 (spr104), unsigned 64 bits
+ 205: spr105 (spr105), unsigned 64 bits
+ 206: spr106 (spr106), unsigned 64 bits
+ 207: spr107 (spr107), unsigned 64 bits
+ 208: spr108 (spr108), unsigned 64 bits
+ 209: spr109 (spr109), unsigned 64 bits
+ 210: spr110 (spr110), unsigned 64 bits
+ 211: spr111 (spr111), unsigned 64 bits
+ 212: spr112 (spr112), unsigned 64 bits
+ 213: spr113 (spr113), unsigned 64 bits
+ 214: spr114 (spr114), unsigned 64 bits
+ 215: spr115 (spr115), unsigned 64 bits
+ 216: spr116 (spr116), unsigned 64 bits
+ 217: spr117 (spr117), unsigned 64 bits
+ 218: spr118 (spr118), unsigned 64 bits
+ 219: spr119 (spr119), unsigned 64 bits
+ 220: spr120 (spr120), unsigned 64 bits
+ 221: spr121 (spr121), unsigned 64 bits
+ 222: spr122 (spr122), unsigned 64 bits
+ 223: spr123 (spr123), unsigned 64 bits
+ 224: spr124 (spr124), unsigned 64 bits
+ 225: spr125 (spr125), unsigned 64 bits
+ 226: spr126 (spr126), unsigned 64 bits
+ 227: spr127 (spr127), unsigned 64 bits
+ 228: spr128 (spr128), unsigned 64 bits
+ 229: spr129 (spr129), unsigned 64 bits
+ 230: spr130 (spr130), unsigned 64 bits
+ 231: spr131 (spr131), unsigned 64 bits
+ 232: spr132 (spr132), unsigned 64 bits
+ 233: spr133 (spr133), unsigned 64 bits
+ 234: spr134 (spr134), unsigned 64 bits
+ 235: spr135 (spr135), unsigned 64 bits
+ 236: spr136 (spr136), unsigned 64 bits
+ 237: spr137 (spr137), unsigned 64 bits
+ 238: spr138 (spr138), unsigned 64 bits
+ 239: spr139 (spr139), unsigned 64 bits
+ 240: spr140 (spr140), unsigned 64 bits
+ 241: spr141 (spr141), unsigned 64 bits
+ 242: spr142 (spr142), unsigned 64 bits
+ 243: spr143 (spr143), unsigned 64 bits
+ 244: spr144 (spr144), unsigned 64 bits
+ 245: spr145 (spr145), unsigned 64 bits
+ 246: spr146 (spr146), unsigned 64 bits
+ 247: spr147 (spr147), unsigned 64 bits
+ 248: spr148 (spr148), unsigned 64 bits
+ 249: spr149 (spr149), unsigned 64 bits
+ 250: spr150 (spr150), unsigned 64 bits
+ 251: spr151 (spr151), unsigned 64 bits
+ 252: spr152 (spr152), unsigned 64 bits
+ 253: spr153 (spr153), unsigned 64 bits
+ 254: spr154 (spr154), unsigned 64 bits
+ 255: spr155 (spr155), unsigned 64 bits
+ 256: spr156 (spr156), unsigned 64 bits
+ 257: spr157 (spr157), unsigned 64 bits
+ 258: spr158 (spr158), unsigned 64 bits
+ 259: spr159 (spr159), unsigned 64 bits
+ 260: spr160 (spr160), unsigned 64 bits
+ 261: spr161 (spr161), unsigned 64 bits
+ 262: spr162 (spr162), unsigned 64 bits
+ 263: spr163 (spr163), unsigned 64 bits
+ 264: spr164 (spr164), unsigned 64 bits
+ 265: spr165 (spr165), unsigned 64 bits
+ 266: spr166 (spr166), unsigned 64 bits
+ 267: spr167 (spr167), unsigned 64 bits
+ 268: spr168 (spr168), unsigned 64 bits
+ 269: spr169 (spr169), unsigned 64 bits
+ 270: spr170 (spr170), unsigned 64 bits
+ 271: spr171 (spr171), unsigned 64 bits
+ 272: spr172 (spr172), unsigned 64 bits
+ 273: spr173 (spr173), unsigned 64 bits
+ 274: spr174 (spr174), unsigned 64 bits
+ 275: spr175 (spr175), unsigned 64 bits
+ 276: spr176 (spr176), unsigned 64 bits
+ 277: spr177 (spr177), unsigned 64 bits
+ 278: spr178 (spr178), unsigned 64 bits
+ 279: spr179 (spr179), unsigned 64 bits
+ 280: spr180 (spr180), unsigned 64 bits
+ 281: spr181 (spr181), unsigned 64 bits
+ 282: spr182 (spr182), unsigned 64 bits
+ 283: spr183 (spr183), unsigned 64 bits
+ 284: spr184 (spr184), unsigned 64 bits
+ 285: spr185 (spr185), unsigned 64 bits
+ 286: spr186 (spr186), unsigned 64 bits
+ 287: spr187 (spr187), unsigned 64 bits
+ 288: spr188 (spr188), unsigned 64 bits
+ 289: spr189 (spr189), unsigned 64 bits
+ 290: spr190 (spr190), unsigned 64 bits
+ 291: spr191 (spr191), unsigned 64 bits
+ 292: spr192 (spr192), unsigned 64 bits
+ 293: spr193 (spr193), unsigned 64 bits
+ 294: spr194 (spr194), unsigned 64 bits
+ 295: spr195 (spr195), unsigned 64 bits
+ 296: spr196 (spr196), unsigned 64 bits
+ 297: spr197 (spr197), unsigned 64 bits
+ 298: spr198 (spr198), unsigned 64 bits
+ 299: spr199 (spr199), unsigned 64 bits
+ 300: spr200 (spr200), unsigned 64 bits
+ 301: spr201 (spr201), unsigned 64 bits
+ 302: spr202 (spr202), unsigned 64 bits
+ 303: spr203 (spr203), unsigned 64 bits
+ 304: spr204 (spr204), unsigned 64 bits
+ 305: spr205 (spr205), unsigned 64 bits
+ 306: spr206 (spr206), unsigned 64 bits
+ 307: spr207 (spr207), unsigned 64 bits
+ 308: spr208 (spr208), unsigned 64 bits
+ 309: spr209 (spr209), unsigned 64 bits
+ 310: spr210 (spr210), unsigned 64 bits
+ 311: spr211 (spr211), unsigned 64 bits
+ 312: spr212 (spr212), unsigned 64 bits
+ 313: spr213 (spr213), unsigned 64 bits
+ 314: spr214 (spr214), unsigned 64 bits
+ 315: spr215 (spr215), unsigned 64 bits
+ 316: spr216 (spr216), unsigned 64 bits
+ 317: spr217 (spr217), unsigned 64 bits
+ 318: spr218 (spr218), unsigned 64 bits
+ 319: spr219 (spr219), unsigned 64 bits
+ 320: spr220 (spr220), unsigned 64 bits
+ 321: spr221 (spr221), unsigned 64 bits
+ 322: spr222 (spr222), unsigned 64 bits
+ 323: spr223 (spr223), unsigned 64 bits
+ 324: spr224 (spr224), unsigned 64 bits
+ 325: spr225 (spr225), unsigned 64 bits
+ 326: spr226 (spr226), unsigned 64 bits
+ 327: spr227 (spr227), unsigned 64 bits
+ 328: spr228 (spr228), unsigned 64 bits
+ 329: spr229 (spr229), unsigned 64 bits
+ 330: spr230 (spr230), unsigned 64 bits
+ 331: spr231 (spr231), unsigned 64 bits
+ 332: spr232 (spr232), unsigned 64 bits
+ 333: spr233 (spr233), unsigned 64 bits
+ 334: spr234 (spr234), unsigned 64 bits
+ 335: spr235 (spr235), unsigned 64 bits
+ 336: spr236 (spr236), unsigned 64 bits
+ 337: spr237 (spr237), unsigned 64 bits
+ 338: spr238 (spr238), unsigned 64 bits
+ 339: spr239 (spr239), unsigned 64 bits
+ 340: spr240 (spr240), unsigned 64 bits
+ 341: spr241 (spr241), unsigned 64 bits
+ 342: spr242 (spr242), unsigned 64 bits
+ 343: spr243 (spr243), unsigned 64 bits
+ 344: spr244 (spr244), unsigned 64 bits
+ 345: spr245 (spr245), unsigned 64 bits
+ 346: spr246 (spr246), unsigned 64 bits
+ 347: spr247 (spr247), unsigned 64 bits
+ 348: spr248 (spr248), unsigned 64 bits
+ 349: spr249 (spr249), unsigned 64 bits
+ 350: spr250 (spr250), unsigned 64 bits
+ 351: spr251 (spr251), unsigned 64 bits
+ 352: spr252 (spr252), unsigned 64 bits
+ 353: spr253 (spr253), unsigned 64 bits
+ 354: spr254 (spr254), unsigned 64 bits
+ 355: spr255 (spr255), unsigned 64 bits
+ 356: spr256 (spr256), unsigned 64 bits
+ 357: spr257 (spr257), unsigned 64 bits
+ 358: spr258 (spr258), unsigned 64 bits
+ 359: spr259 (spr259), unsigned 64 bits
+ 360: spr260 (spr260), unsigned 64 bits
+ 361: spr261 (spr261), unsigned 64 bits
+ 362: spr262 (spr262), unsigned 64 bits
+ 363: spr263 (spr263), unsigned 64 bits
+ 364: spr264 (spr264), unsigned 64 bits
+ 365: spr265 (spr265), unsigned 64 bits
+ 366: spr266 (spr266), unsigned 64 bits
+ 367: spr267 (spr267), unsigned 64 bits
+ 368: spr268 (spr268), unsigned 64 bits
+ 369: spr269 (spr269), unsigned 64 bits
+ 370: spr270 (spr270), unsigned 64 bits
+ 371: spr271 (spr271), unsigned 64 bits
+ 372: spr272 (spr272), unsigned 64 bits
+ 373: spr273 (spr273), unsigned 64 bits
+ 374: spr274 (spr274), unsigned 64 bits
+ 375: spr275 (spr275), unsigned 64 bits
+ 376: spr276 (spr276), unsigned 64 bits
+ 377: spr277 (spr277), unsigned 64 bits
+ 378: spr278 (spr278), unsigned 64 bits
+ 379: spr279 (spr279), unsigned 64 bits
+ 380: spr280 (spr280), unsigned 64 bits
+ 381: spr281 (spr281), unsigned 64 bits
+ 382: spr282 (spr282), unsigned 64 bits
+ 383: spr283 (spr283), unsigned 64 bits
+ 384: spr284 (spr284), unsigned 64 bits
+ 385: spr285 (spr285), unsigned 64 bits
+ 386: spr286 (spr286), unsigned 64 bits
+ 387: spr287 (spr287), unsigned 64 bits
+ 388: spr288 (spr288), unsigned 64 bits
+ 389: spr289 (spr289), unsigned 64 bits
+ 390: spr290 (spr290), unsigned 64 bits
+ 391: spr291 (spr291), unsigned 64 bits
+ 392: spr292 (spr292), unsigned 64 bits
+ 393: spr293 (spr293), unsigned 64 bits
+ 394: spr294 (spr294), unsigned 64 bits
+ 395: spr295 (spr295), unsigned 64 bits
+ 396: spr296 (spr296), unsigned 64 bits
+ 397: spr297 (spr297), unsigned 64 bits
+ 398: spr298 (spr298), unsigned 64 bits
+ 399: spr299 (spr299), unsigned 64 bits
+ 400: spr300 (spr300), unsigned 64 bits
+ 401: spr301 (spr301), unsigned 64 bits
+ 402: spr302 (spr302), unsigned 64 bits
+ 403: spr303 (spr303), unsigned 64 bits
+ 404: spr304 (spr304), unsigned 64 bits
+ 405: spr305 (spr305), unsigned 64 bits
+ 406: spr306 (spr306), unsigned 64 bits
+ 407: spr307 (spr307), unsigned 64 bits
+ 408: spr308 (spr308), unsigned 64 bits
+ 409: spr309 (spr309), unsigned 64 bits
+ 410: spr310 (spr310), unsigned 64 bits
+ 411: spr311 (spr311), unsigned 64 bits
+ 412: spr312 (spr312), unsigned 64 bits
+ 413: spr313 (spr313), unsigned 64 bits
+ 414: spr314 (spr314), unsigned 64 bits
+ 415: spr315 (spr315), unsigned 64 bits
+ 416: spr316 (spr316), unsigned 64 bits
+ 417: spr317 (spr317), unsigned 64 bits
+ 418: spr318 (spr318), unsigned 64 bits
+ 419: spr319 (spr319), unsigned 64 bits
+ 420: spr320 (spr320), unsigned 64 bits
+ 421: spr321 (spr321), unsigned 64 bits
+ 422: spr322 (spr322), unsigned 64 bits
+ 423: spr323 (spr323), unsigned 64 bits
+ 424: spr324 (spr324), unsigned 64 bits
+ 425: spr325 (spr325), unsigned 64 bits
+ 426: spr326 (spr326), unsigned 64 bits
+ 427: spr327 (spr327), unsigned 64 bits
+ 428: spr328 (spr328), unsigned 64 bits
+ 429: spr329 (spr329), unsigned 64 bits
+ 430: spr330 (spr330), unsigned 64 bits
+ 431: spr331 (spr331), unsigned 64 bits
+ 432: spr332 (spr332), unsigned 64 bits
+ 433: spr333 (spr333), unsigned 64 bits
+ 434: spr334 (spr334), unsigned 64 bits
+ 435: spr335 (spr335), unsigned 64 bits
+ 436: spr336 (spr336), unsigned 64 bits
+ 437: spr337 (spr337), unsigned 64 bits
+ 438: spr338 (spr338), unsigned 64 bits
+ 439: spr339 (spr339), unsigned 64 bits
+ 440: spr340 (spr340), unsigned 64 bits
+ 441: spr341 (spr341), unsigned 64 bits
+ 442: spr342 (spr342), unsigned 64 bits
+ 443: spr343 (spr343), unsigned 64 bits
+ 444: spr344 (spr344), unsigned 64 bits
+ 445: spr345 (spr345), unsigned 64 bits
+ 446: spr346 (spr346), unsigned 64 bits
+ 447: spr347 (spr347), unsigned 64 bits
+ 448: spr348 (spr348), unsigned 64 bits
+ 449: spr349 (spr349), unsigned 64 bits
+ 450: spr350 (spr350), unsigned 64 bits
+ 451: spr351 (spr351), unsigned 64 bits
+ 452: spr352 (spr352), unsigned 64 bits
+ 453: spr353 (spr353), unsigned 64 bits
+ 454: spr354 (spr354), unsigned 64 bits
+ 455: spr355 (spr355), unsigned 64 bits
+ 456: spr356 (spr356), unsigned 64 bits
+ 457: spr357 (spr357), unsigned 64 bits
+ 458: spr358 (spr358), unsigned 64 bits
+ 459: spr359 (spr359), unsigned 64 bits
+ 460: spr360 (spr360), unsigned 64 bits
+ 461: spr361 (spr361), unsigned 64 bits
+ 462: spr362 (spr362), unsigned 64 bits
+ 463: spr363 (spr363), unsigned 64 bits
+ 464: spr364 (spr364), unsigned 64 bits
+ 465: spr365 (spr365), unsigned 64 bits
+ 466: spr366 (spr366), unsigned 64 bits
+ 467: spr367 (spr367), unsigned 64 bits
+ 468: spr368 (spr368), unsigned 64 bits
+ 469: spr369 (spr369), unsigned 64 bits
+ 470: spr370 (spr370), unsigned 64 bits
+ 471: spr371 (spr371), unsigned 64 bits
+ 472: spr372 (spr372), unsigned 64 bits
+ 473: spr373 (spr373), unsigned 64 bits
+ 474: spr374 (spr374), unsigned 64 bits
+ 475: spr375 (spr375), unsigned 64 bits
+ 476: spr376 (spr376), unsigned 64 bits
+ 477: spr377 (spr377), unsigned 64 bits
+ 478: spr378 (spr378), unsigned 64 bits
+ 479: spr379 (spr379), unsigned 64 bits
+ 480: spr380 (spr380), unsigned 64 bits
+ 481: spr381 (spr381), unsigned 64 bits
+ 482: spr382 (spr382), unsigned 64 bits
+ 483: spr383 (spr383), unsigned 64 bits
+ 484: spr384 (spr384), unsigned 64 bits
+ 485: spr385 (spr385), unsigned 64 bits
+ 486: spr386 (spr386), unsigned 64 bits
+ 487: spr387 (spr387), unsigned 64 bits
+ 488: spr388 (spr388), unsigned 64 bits
+ 489: spr389 (spr389), unsigned 64 bits
+ 490: spr390 (spr390), unsigned 64 bits
+ 491: spr391 (spr391), unsigned 64 bits
+ 492: spr392 (spr392), unsigned 64 bits
+ 493: spr393 (spr393), unsigned 64 bits
+ 494: spr394 (spr394), unsigned 64 bits
+ 495: spr395 (spr395), unsigned 64 bits
+ 496: spr396 (spr396), unsigned 64 bits
+ 497: spr397 (spr397), unsigned 64 bits
+ 498: spr398 (spr398), unsigned 64 bits
+ 499: spr399 (spr399), unsigned 64 bits
+ 500: spr400 (spr400), unsigned 64 bits
+ 501: spr401 (spr401), unsigned 64 bits
+ 502: spr402 (spr402), unsigned 64 bits
+ 503: spr403 (spr403), unsigned 64 bits
+ 504: spr404 (spr404), unsigned 64 bits
+ 505: spr405 (spr405), unsigned 64 bits
+ 506: spr406 (spr406), unsigned 64 bits
+ 507: spr407 (spr407), unsigned 64 bits
+ 508: spr408 (spr408), unsigned 64 bits
+ 509: spr409 (spr409), unsigned 64 bits
+ 510: spr410 (spr410), unsigned 64 bits
+ 511: spr411 (spr411), unsigned 64 bits
+ 512: spr412 (spr412), unsigned 64 bits
+ 513: spr413 (spr413), unsigned 64 bits
+ 514: spr414 (spr414), unsigned 64 bits
+ 515: spr415 (spr415), unsigned 64 bits
+ 516: spr416 (spr416), unsigned 64 bits
+ 517: spr417 (spr417), unsigned 64 bits
+ 518: spr418 (spr418), unsigned 64 bits
+ 519: spr419 (spr419), unsigned 64 bits
+ 520: spr420 (spr420), unsigned 64 bits
+ 521: spr421 (spr421), unsigned 64 bits
+ 522: spr422 (spr422), unsigned 64 bits
+ 523: spr423 (spr423), unsigned 64 bits
+ 524: spr424 (spr424), unsigned 64 bits
+ 525: spr425 (spr425), unsigned 64 bits
+ 526: spr426 (spr426), unsigned 64 bits
+ 527: spr427 (spr427), unsigned 64 bits
+ 528: spr428 (spr428), unsigned 64 bits
+ 529: spr429 (spr429), unsigned 64 bits
+ 530: spr430 (spr430), unsigned 64 bits
+ 531: spr431 (spr431), unsigned 64 bits
+ 532: spr432 (spr432), unsigned 64 bits
+ 533: spr433 (spr433), unsigned 64 bits
+ 534: spr434 (spr434), unsigned 64 bits
+ 535: spr435 (spr435), unsigned 64 bits
+ 536: spr436 (spr436), unsigned 64 bits
+ 537: spr437 (spr437), unsigned 64 bits
+ 538: spr438 (spr438), unsigned 64 bits
+ 539: spr439 (spr439), unsigned 64 bits
+ 540: spr440 (spr440), unsigned 64 bits
+ 541: spr441 (spr441), unsigned 64 bits
+ 542: spr442 (spr442), unsigned 64 bits
+ 543: spr443 (spr443), unsigned 64 bits
+ 544: spr444 (spr444), unsigned 64 bits
+ 545: spr445 (spr445), unsigned 64 bits
+ 546: spr446 (spr446), unsigned 64 bits
+ 547: spr447 (spr447), unsigned 64 bits
+ 548: spr448 (spr448), unsigned 64 bits
+ 549: spr449 (spr449), unsigned 64 bits
+ 550: spr450 (spr450), unsigned 64 bits
+ 551: spr451 (spr451), unsigned 64 bits
+ 552: spr452 (spr452), unsigned 64 bits
+ 553: spr453 (spr453), unsigned 64 bits
+ 554: spr454 (spr454), unsigned 64 bits
+ 555: spr455 (spr455), unsigned 64 bits
+ 556: spr456 (spr456), unsigned 64 bits
+ 557: spr457 (spr457), unsigned 64 bits
+ 558: spr458 (spr458), unsigned 64 bits
+ 559: spr459 (spr459), unsigned 64 bits
+ 560: spr460 (spr460), unsigned 64 bits
+ 561: spr461 (spr461), unsigned 64 bits
+ 562: spr462 (spr462), unsigned 64 bits
+ 563: spr463 (spr463), unsigned 64 bits
+ 564: spr464 (spr464), unsigned 64 bits
+ 565: spr465 (spr465), unsigned 64 bits
+ 566: spr466 (spr466), unsigned 64 bits
+ 567: spr467 (spr467), unsigned 64 bits
+ 568: spr468 (spr468), unsigned 64 bits
+ 569: spr469 (spr469), unsigned 64 bits
+ 570: spr470 (spr470), unsigned 64 bits
+ 571: spr471 (spr471), unsigned 64 bits
+ 572: spr472 (spr472), unsigned 64 bits
+ 573: spr473 (spr473), unsigned 64 bits
+ 574: spr474 (spr474), unsigned 64 bits
+ 575: spr475 (spr475), unsigned 64 bits
+ 576: spr476 (spr476), unsigned 64 bits
+ 577: spr477 (spr477), unsigned 64 bits
+ 578: spr478 (spr478), unsigned 64 bits
+ 579: spr479 (spr479), unsigned 64 bits
+ 580: spr480 (spr480), unsigned 64 bits
+ 581: spr481 (spr481), unsigned 64 bits
+ 582: spr482 (spr482), unsigned 64 bits
+ 583: spr483 (spr483), unsigned 64 bits
+ 584: spr484 (spr484), unsigned 64 bits
+ 585: spr485 (spr485), unsigned 64 bits
+ 586: spr486 (spr486), unsigned 64 bits
+ 587: spr487 (spr487), unsigned 64 bits
+ 588: spr488 (spr488), unsigned 64 bits
+ 589: spr489 (spr489), unsigned 64 bits
+ 590: spr490 (spr490), unsigned 64 bits
+ 591: spr491 (spr491), unsigned 64 bits
+ 592: spr492 (spr492), unsigned 64 bits
+ 593: spr493 (spr493), unsigned 64 bits
+ 594: spr494 (spr494), unsigned 64 bits
+ 595: spr495 (spr495), unsigned 64 bits
+ 596: spr496 (spr496), unsigned 64 bits
+ 597: spr497 (spr497), unsigned 64 bits
+ 598: spr498 (spr498), unsigned 64 bits
+ 599: spr499 (spr499), unsigned 64 bits
+ 600: spr500 (spr500), unsigned 64 bits
+ 601: spr501 (spr501), unsigned 64 bits
+ 602: spr502 (spr502), unsigned 64 bits
+ 603: spr503 (spr503), unsigned 64 bits
+ 604: spr504 (spr504), unsigned 64 bits
+ 605: spr505 (spr505), unsigned 64 bits
+ 606: spr506 (spr506), unsigned 64 bits
+ 607: spr507 (spr507), unsigned 64 bits
+ 608: spr508 (spr508), unsigned 64 bits
+ 609: spr509 (spr509), unsigned 64 bits
+ 610: spr510 (spr510), unsigned 64 bits
+ 611: spr511 (spr511), unsigned 64 bits
+ 612: spr512 (spr512), unsigned 64 bits
+ 613: spr513 (spr513), unsigned 64 bits
+ 614: spr514 (spr514), unsigned 64 bits
+ 615: spr515 (spr515), unsigned 64 bits
+ 616: spr516 (spr516), unsigned 64 bits
+ 617: spr517 (spr517), unsigned 64 bits
+ 618: spr518 (spr518), unsigned 64 bits
+ 619: spr519 (spr519), unsigned 64 bits
+ 620: spr520 (spr520), unsigned 64 bits
+ 621: spr521 (spr521), unsigned 64 bits
+ 622: spr522 (spr522), unsigned 64 bits
+ 623: spr523 (spr523), unsigned 64 bits
+ 624: spr524 (spr524), unsigned 64 bits
+ 625: spr525 (spr525), unsigned 64 bits
+ 626: spr526 (spr526), unsigned 64 bits
+ 627: spr527 (spr527), unsigned 64 bits
+ 628: spr528 (spr528), unsigned 64 bits
+ 629: spr529 (spr529), unsigned 64 bits
+ 630: spr530 (spr530), unsigned 64 bits
+ 631: spr531 (spr531), unsigned 64 bits
+ 632: spr532 (spr532), unsigned 64 bits
+ 633: spr533 (spr533), unsigned 64 bits
+ 634: spr534 (spr534), unsigned 64 bits
+ 635: spr535 (spr535), unsigned 64 bits
+ 636: spr536 (spr536), unsigned 64 bits
+ 637: spr537 (spr537), unsigned 64 bits
+ 638: spr538 (spr538), unsigned 64 bits
+ 639: spr539 (spr539), unsigned 64 bits
+ 640: spr540 (spr540), unsigned 64 bits
+ 641: spr541 (spr541), unsigned 64 bits
+ 642: spr542 (spr542), unsigned 64 bits
+ 643: spr543 (spr543), unsigned 64 bits
+ 644: spr544 (spr544), unsigned 64 bits
+ 645: spr545 (spr545), unsigned 64 bits
+ 646: spr546 (spr546), unsigned 64 bits
+ 647: spr547 (spr547), unsigned 64 bits
+ 648: spr548 (spr548), unsigned 64 bits
+ 649: spr549 (spr549), unsigned 64 bits
+ 650: spr550 (spr550), unsigned 64 bits
+ 651: spr551 (spr551), unsigned 64 bits
+ 652: spr552 (spr552), unsigned 64 bits
+ 653: spr553 (spr553), unsigned 64 bits
+ 654: spr554 (spr554), unsigned 64 bits
+ 655: spr555 (spr555), unsigned 64 bits
+ 656: spr556 (spr556), unsigned 64 bits
+ 657: spr557 (spr557), unsigned 64 bits
+ 658: spr558 (spr558), unsigned 64 bits
+ 659: spr559 (spr559), unsigned 64 bits
+ 660: spr560 (spr560), unsigned 64 bits
+ 661: spr561 (spr561), unsigned 64 bits
+ 662: spr562 (spr562), unsigned 64 bits
+ 663: spr563 (spr563), unsigned 64 bits
+ 664: spr564 (spr564), unsigned 64 bits
+ 665: spr565 (spr565), unsigned 64 bits
+ 666: spr566 (spr566), unsigned 64 bits
+ 667: spr567 (spr567), unsigned 64 bits
+ 668: spr568 (spr568), unsigned 64 bits
+ 669: spr569 (spr569), unsigned 64 bits
+ 670: spr570 (spr570), unsigned 64 bits
+ 671: spr571 (spr571), unsigned 64 bits
+ 672: spr572 (spr572), unsigned 64 bits
+ 673: spr573 (spr573), unsigned 64 bits
+ 674: spr574 (spr574), unsigned 64 bits
+ 675: spr575 (spr575), unsigned 64 bits
+ 676: spr576 (spr576), unsigned 64 bits
+ 677: spr577 (spr577), unsigned 64 bits
+ 678: spr578 (spr578), unsigned 64 bits
+ 679: spr579 (spr579), unsigned 64 bits
+ 680: spr580 (spr580), unsigned 64 bits
+ 681: spr581 (spr581), unsigned 64 bits
+ 682: spr582 (spr582), unsigned 64 bits
+ 683: spr583 (spr583), unsigned 64 bits
+ 684: spr584 (spr584), unsigned 64 bits
+ 685: spr585 (spr585), unsigned 64 bits
+ 686: spr586 (spr586), unsigned 64 bits
+ 687: spr587 (spr587), unsigned 64 bits
+ 688: spr588 (spr588), unsigned 64 bits
+ 689: spr589 (spr589), unsigned 64 bits
+ 690: spr590 (spr590), unsigned 64 bits
+ 691: spr591 (spr591), unsigned 64 bits
+ 692: spr592 (spr592), unsigned 64 bits
+ 693: spr593 (spr593), unsigned 64 bits
+ 694: spr594 (spr594), unsigned 64 bits
+ 695: spr595 (spr595), unsigned 64 bits
+ 696: spr596 (spr596), unsigned 64 bits
+ 697: spr597 (spr597), unsigned 64 bits
+ 698: spr598 (spr598), unsigned 64 bits
+ 699: spr599 (spr599), unsigned 64 bits
+ 700: spr600 (spr600), unsigned 64 bits
+ 701: spr601 (spr601), unsigned 64 bits
+ 702: spr602 (spr602), unsigned 64 bits
+ 703: spr603 (spr603), unsigned 64 bits
+ 704: spr604 (spr604), unsigned 64 bits
+ 705: spr605 (spr605), unsigned 64 bits
+ 706: spr606 (spr606), unsigned 64 bits
+ 707: spr607 (spr607), unsigned 64 bits
+ 708: spr608 (spr608), unsigned 64 bits
+ 709: spr609 (spr609), unsigned 64 bits
+ 710: spr610 (spr610), unsigned 64 bits
+ 711: spr611 (spr611), unsigned 64 bits
+ 712: spr612 (spr612), unsigned 64 bits
+ 713: spr613 (spr613), unsigned 64 bits
+ 714: spr614 (spr614), unsigned 64 bits
+ 715: spr615 (spr615), unsigned 64 bits
+ 716: spr616 (spr616), unsigned 64 bits
+ 717: spr617 (spr617), unsigned 64 bits
+ 718: spr618 (spr618), unsigned 64 bits
+ 719: spr619 (spr619), unsigned 64 bits
+ 720: spr620 (spr620), unsigned 64 bits
+ 721: spr621 (spr621), unsigned 64 bits
+ 722: spr622 (spr622), unsigned 64 bits
+ 723: spr623 (spr623), unsigned 64 bits
+ 724: spr624 (spr624), unsigned 64 bits
+ 725: spr625 (spr625), unsigned 64 bits
+ 726: spr626 (spr626), unsigned 64 bits
+ 727: spr627 (spr627), unsigned 64 bits
+ 728: spr628 (spr628), unsigned 64 bits
+ 729: spr629 (spr629), unsigned 64 bits
+ 730: spr630 (spr630), unsigned 64 bits
+ 731: spr631 (spr631), unsigned 64 bits
+ 732: spr632 (spr632), unsigned 64 bits
+ 733: spr633 (spr633), unsigned 64 bits
+ 734: spr634 (spr634), unsigned 64 bits
+ 735: spr635 (spr635), unsigned 64 bits
+ 736: spr636 (spr636), unsigned 64 bits
+ 737: spr637 (spr637), unsigned 64 bits
+ 738: spr638 (spr638), unsigned 64 bits
+ 739: spr639 (spr639), unsigned 64 bits
+ 740: spr640 (spr640), unsigned 64 bits
+ 741: spr641 (spr641), unsigned 64 bits
+ 742: spr642 (spr642), unsigned 64 bits
+ 743: spr643 (spr643), unsigned 64 bits
+ 744: spr644 (spr644), unsigned 64 bits
+ 745: spr645 (spr645), unsigned 64 bits
+ 746: spr646 (spr646), unsigned 64 bits
+ 747: spr647 (spr647), unsigned 64 bits
+ 748: spr648 (spr648), unsigned 64 bits
+ 749: spr649 (spr649), unsigned 64 bits
+ 750: spr650 (spr650), unsigned 64 bits
+ 751: spr651 (spr651), unsigned 64 bits
+ 752: spr652 (spr652), unsigned 64 bits
+ 753: spr653 (spr653), unsigned 64 bits
+ 754: spr654 (spr654), unsigned 64 bits
+ 755: spr655 (spr655), unsigned 64 bits
+ 756: spr656 (spr656), unsigned 64 bits
+ 757: spr657 (spr657), unsigned 64 bits
+ 758: spr658 (spr658), unsigned 64 bits
+ 759: spr659 (spr659), unsigned 64 bits
+ 760: spr660 (spr660), unsigned 64 bits
+ 761: spr661 (spr661), unsigned 64 bits
+ 762: spr662 (spr662), unsigned 64 bits
+ 763: spr663 (spr663), unsigned 64 bits
+ 764: spr664 (spr664), unsigned 64 bits
+ 765: spr665 (spr665), unsigned 64 bits
+ 766: spr666 (spr666), unsigned 64 bits
+ 767: spr667 (spr667), unsigned 64 bits
+ 768: spr668 (spr668), unsigned 64 bits
+ 769: spr669 (spr669), unsigned 64 bits
+ 770: spr670 (spr670), unsigned 64 bits
+ 771: spr671 (spr671), unsigned 64 bits
+ 772: spr672 (spr672), unsigned 64 bits
+ 773: spr673 (spr673), unsigned 64 bits
+ 774: spr674 (spr674), unsigned 64 bits
+ 775: spr675 (spr675), unsigned 64 bits
+ 776: spr676 (spr676), unsigned 64 bits
+ 777: spr677 (spr677), unsigned 64 bits
+ 778: spr678 (spr678), unsigned 64 bits
+ 779: spr679 (spr679), unsigned 64 bits
+ 780: spr680 (spr680), unsigned 64 bits
+ 781: spr681 (spr681), unsigned 64 bits
+ 782: spr682 (spr682), unsigned 64 bits
+ 783: spr683 (spr683), unsigned 64 bits
+ 784: spr684 (spr684), unsigned 64 bits
+ 785: spr685 (spr685), unsigned 64 bits
+ 786: spr686 (spr686), unsigned 64 bits
+ 787: spr687 (spr687), unsigned 64 bits
+ 788: spr688 (spr688), unsigned 64 bits
+ 789: spr689 (spr689), unsigned 64 bits
+ 790: spr690 (spr690), unsigned 64 bits
+ 791: spr691 (spr691), unsigned 64 bits
+ 792: spr692 (spr692), unsigned 64 bits
+ 793: spr693 (spr693), unsigned 64 bits
+ 794: spr694 (spr694), unsigned 64 bits
+ 795: spr695 (spr695), unsigned 64 bits
+ 796: spr696 (spr696), unsigned 64 bits
+ 797: spr697 (spr697), unsigned 64 bits
+ 798: spr698 (spr698), unsigned 64 bits
+ 799: spr699 (spr699), unsigned 64 bits
+ 800: spr700 (spr700), unsigned 64 bits
+ 801: spr701 (spr701), unsigned 64 bits
+ 802: spr702 (spr702), unsigned 64 bits
+ 803: spr703 (spr703), unsigned 64 bits
+ 804: spr704 (spr704), unsigned 64 bits
+ 805: spr705 (spr705), unsigned 64 bits
+ 806: spr706 (spr706), unsigned 64 bits
+ 807: spr707 (spr707), unsigned 64 bits
+ 808: spr708 (spr708), unsigned 64 bits
+ 809: spr709 (spr709), unsigned 64 bits
+ 810: spr710 (spr710), unsigned 64 bits
+ 811: spr711 (spr711), unsigned 64 bits
+ 812: spr712 (spr712), unsigned 64 bits
+ 813: spr713 (spr713), unsigned 64 bits
+ 814: spr714 (spr714), unsigned 64 bits
+ 815: spr715 (spr715), unsigned 64 bits
+ 816: spr716 (spr716), unsigned 64 bits
+ 817: spr717 (spr717), unsigned 64 bits
+ 818: spr718 (spr718), unsigned 64 bits
+ 819: spr719 (spr719), unsigned 64 bits
+ 820: spr720 (spr720), unsigned 64 bits
+ 821: spr721 (spr721), unsigned 64 bits
+ 822: spr722 (spr722), unsigned 64 bits
+ 823: spr723 (spr723), unsigned 64 bits
+ 824: spr724 (spr724), unsigned 64 bits
+ 825: spr725 (spr725), unsigned 64 bits
+ 826: spr726 (spr726), unsigned 64 bits
+ 827: spr727 (spr727), unsigned 64 bits
+ 828: spr728 (spr728), unsigned 64 bits
+ 829: spr729 (spr729), unsigned 64 bits
+ 830: spr730 (spr730), unsigned 64 bits
+ 831: spr731 (spr731), unsigned 64 bits
+ 832: spr732 (spr732), unsigned 64 bits
+ 833: spr733 (spr733), unsigned 64 bits
+ 834: spr734 (spr734), unsigned 64 bits
+ 835: spr735 (spr735), unsigned 64 bits
+ 836: spr736 (spr736), unsigned 64 bits
+ 837: spr737 (spr737), unsigned 64 bits
+ 838: spr738 (spr738), unsigned 64 bits
+ 839: spr739 (spr739), unsigned 64 bits
+ 840: spr740 (spr740), unsigned 64 bits
+ 841: spr741 (spr741), unsigned 64 bits
+ 842: spr742 (spr742), unsigned 64 bits
+ 843: spr743 (spr743), unsigned 64 bits
+ 844: spr744 (spr744), unsigned 64 bits
+ 845: spr745 (spr745), unsigned 64 bits
+ 846: spr746 (spr746), unsigned 64 bits
+ 847: spr747 (spr747), unsigned 64 bits
+ 848: spr748 (spr748), unsigned 64 bits
+ 849: spr749 (spr749), unsigned 64 bits
+ 850: spr750 (spr750), unsigned 64 bits
+ 851: spr751 (spr751), unsigned 64 bits
+ 852: spr752 (spr752), unsigned 64 bits
+ 853: spr753 (spr753), unsigned 64 bits
+ 854: spr754 (spr754), unsigned 64 bits
+ 855: spr755 (spr755), unsigned 64 bits
+ 856: spr756 (spr756), unsigned 64 bits
+ 857: spr757 (spr757), unsigned 64 bits
+ 858: spr758 (spr758), unsigned 64 bits
+ 859: spr759 (spr759), unsigned 64 bits
+ 860: spr760 (spr760), unsigned 64 bits
+ 861: spr761 (spr761), unsigned 64 bits
+ 862: spr762 (spr762), unsigned 64 bits
+ 863: spr763 (spr763), unsigned 64 bits
+ 864: spr764 (spr764), unsigned 64 bits
+ 865: spr765 (spr765), unsigned 64 bits
+ 866: spr766 (spr766), unsigned 64 bits
+ 867: spr767 (spr767), unsigned 64 bits
+ 868: spr768 (spr768), unsigned 64 bits
+ 869: spr769 (spr769), unsigned 64 bits
+ 870: spr770 (spr770), unsigned 64 bits
+ 871: spr771 (spr771), unsigned 64 bits
+ 872: spr772 (spr772), unsigned 64 bits
+ 873: spr773 (spr773), unsigned 64 bits
+ 874: spr774 (spr774), unsigned 64 bits
+ 875: spr775 (spr775), unsigned 64 bits
+ 876: spr776 (spr776), unsigned 64 bits
+ 877: spr777 (spr777), unsigned 64 bits
+ 878: spr778 (spr778), unsigned 64 bits
+ 879: spr779 (spr779), unsigned 64 bits
+ 880: spr780 (spr780), unsigned 64 bits
+ 881: spr781 (spr781), unsigned 64 bits
+ 882: spr782 (spr782), unsigned 64 bits
+ 883: spr783 (spr783), unsigned 64 bits
+ 884: spr784 (spr784), unsigned 64 bits
+ 885: spr785 (spr785), unsigned 64 bits
+ 886: spr786 (spr786), unsigned 64 bits
+ 887: spr787 (spr787), unsigned 64 bits
+ 888: spr788 (spr788), unsigned 64 bits
+ 889: spr789 (spr789), unsigned 64 bits
+ 890: spr790 (spr790), unsigned 64 bits
+ 891: spr791 (spr791), unsigned 64 bits
+ 892: spr792 (spr792), unsigned 64 bits
+ 893: spr793 (spr793), unsigned 64 bits
+ 894: spr794 (spr794), unsigned 64 bits
+ 895: spr795 (spr795), unsigned 64 bits
+ 896: spr796 (spr796), unsigned 64 bits
+ 897: spr797 (spr797), unsigned 64 bits
+ 898: spr798 (spr798), unsigned 64 bits
+ 899: spr799 (spr799), unsigned 64 bits
+ 900: spr800 (spr800), unsigned 64 bits
+ 901: spr801 (spr801), unsigned 64 bits
+ 902: spr802 (spr802), unsigned 64 bits
+ 903: spr803 (spr803), unsigned 64 bits
+ 904: spr804 (spr804), unsigned 64 bits
+ 905: spr805 (spr805), unsigned 64 bits
+ 906: spr806 (spr806), unsigned 64 bits
+ 907: spr807 (spr807), unsigned 64 bits
+ 908: spr808 (spr808), unsigned 64 bits
+ 909: spr809 (spr809), unsigned 64 bits
+ 910: spr810 (spr810), unsigned 64 bits
+ 911: spr811 (spr811), unsigned 64 bits
+ 912: spr812 (spr812), unsigned 64 bits
+ 913: spr813 (spr813), unsigned 64 bits
+ 914: spr814 (spr814), unsigned 64 bits
+ 915: spr815 (spr815), unsigned 64 bits
+ 916: spr816 (spr816), unsigned 64 bits
+ 917: spr817 (spr817), unsigned 64 bits
+ 918: spr818 (spr818), unsigned 64 bits
+ 919: spr819 (spr819), unsigned 64 bits
+ 920: spr820 (spr820), unsigned 64 bits
+ 921: spr821 (spr821), unsigned 64 bits
+ 922: spr822 (spr822), unsigned 64 bits
+ 923: spr823 (spr823), unsigned 64 bits
+ 924: spr824 (spr824), unsigned 64 bits
+ 925: spr825 (spr825), unsigned 64 bits
+ 926: spr826 (spr826), unsigned 64 bits
+ 927: spr827 (spr827), unsigned 64 bits
+ 928: spr828 (spr828), unsigned 64 bits
+ 929: spr829 (spr829), unsigned 64 bits
+ 930: spr830 (spr830), unsigned 64 bits
+ 931: spr831 (spr831), unsigned 64 bits
+ 932: spr832 (spr832), unsigned 64 bits
+ 933: spr833 (spr833), unsigned 64 bits
+ 934: spr834 (spr834), unsigned 64 bits
+ 935: spr835 (spr835), unsigned 64 bits
+ 936: spr836 (spr836), unsigned 64 bits
+ 937: spr837 (spr837), unsigned 64 bits
+ 938: spr838 (spr838), unsigned 64 bits
+ 939: spr839 (spr839), unsigned 64 bits
+ 940: spr840 (spr840), unsigned 64 bits
+ 941: spr841 (spr841), unsigned 64 bits
+ 942: spr842 (spr842), unsigned 64 bits
+ 943: spr843 (spr843), unsigned 64 bits
+ 944: spr844 (spr844), unsigned 64 bits
+ 945: spr845 (spr845), unsigned 64 bits
+ 946: spr846 (spr846), unsigned 64 bits
+ 947: spr847 (spr847), unsigned 64 bits
+ 948: spr848 (spr848), unsigned 64 bits
+ 949: spr849 (spr849), unsigned 64 bits
+ 950: spr850 (spr850), unsigned 64 bits
+ 951: spr851 (spr851), unsigned 64 bits
+ 952: spr852 (spr852), unsigned 64 bits
+ 953: spr853 (spr853), unsigned 64 bits
+ 954: spr854 (spr854), unsigned 64 bits
+ 955: spr855 (spr855), unsigned 64 bits
+ 956: spr856 (spr856), unsigned 64 bits
+ 957: spr857 (spr857), unsigned 64 bits
+ 958: spr858 (spr858), unsigned 64 bits
+ 959: spr859 (spr859), unsigned 64 bits
+ 960: spr860 (spr860), unsigned 64 bits
+ 961: spr861 (spr861), unsigned 64 bits
+ 962: spr862 (spr862), unsigned 64 bits
+ 963: spr863 (spr863), unsigned 64 bits
+ 964: spr864 (spr864), unsigned 64 bits
+ 965: spr865 (spr865), unsigned 64 bits
+ 966: spr866 (spr866), unsigned 64 bits
+ 967: spr867 (spr867), unsigned 64 bits
+ 968: spr868 (spr868), unsigned 64 bits
+ 969: spr869 (spr869), unsigned 64 bits
+ 970: spr870 (spr870), unsigned 64 bits
+ 971: spr871 (spr871), unsigned 64 bits
+ 972: spr872 (spr872), unsigned 64 bits
+ 973: spr873 (spr873), unsigned 64 bits
+ 974: spr874 (spr874), unsigned 64 bits
+ 975: spr875 (spr875), unsigned 64 bits
+ 976: spr876 (spr876), unsigned 64 bits
+ 977: spr877 (spr877), unsigned 64 bits
+ 978: spr878 (spr878), unsigned 64 bits
+ 979: spr879 (spr879), unsigned 64 bits
+ 980: spr880 (spr880), unsigned 64 bits
+ 981: spr881 (spr881), unsigned 64 bits
+ 982: spr882 (spr882), unsigned 64 bits
+ 983: spr883 (spr883), unsigned 64 bits
+ 984: spr884 (spr884), unsigned 64 bits
+ 985: spr885 (spr885), unsigned 64 bits
+ 986: spr886 (spr886), unsigned 64 bits
+ 987: spr887 (spr887), unsigned 64 bits
+ 988: spr888 (spr888), unsigned 64 bits
+ 989: spr889 (spr889), unsigned 64 bits
+ 990: spr890 (spr890), unsigned 64 bits
+ 991: spr891 (spr891), unsigned 64 bits
+ 992: spr892 (spr892), unsigned 64 bits
+ 993: spr893 (spr893), unsigned 64 bits
+ 994: spr894 (spr894), unsigned 64 bits
+ 995: spr895 (spr895), unsigned 64 bits
+ 996: spr896 (spr896), unsigned 64 bits
+ 997: spr897 (spr897), unsigned 64 bits
+ 998: spr898 (spr898), unsigned 64 bits
+ 999: spr899 (spr899), unsigned 64 bits
+vector registers:
+ 1124: vr0 (vr0), unsigned 128 bits
+ 1125: vr1 (vr1), unsigned 128 bits
+ 1126: vr2 (vr2), unsigned 128 bits
+ 1127: vr3 (vr3), unsigned 128 bits
+ 1128: vr4 (vr4), unsigned 128 bits
+ 1129: vr5 (vr5), unsigned 128 bits
+ 1130: vr6 (vr6), unsigned 128 bits
+ 1131: vr7 (vr7), unsigned 128 bits
+ 1132: vr8 (vr8), unsigned 128 bits
+ 1133: vr9 (vr9), unsigned 128 bits
+ 1134: vr10 (vr10), unsigned 128 bits
+ 1135: vr11 (vr11), unsigned 128 bits
+ 1136: vr12 (vr12), unsigned 128 bits
+ 1137: vr13 (vr13), unsigned 128 bits
+ 1138: vr14 (vr14), unsigned 128 bits
+ 1139: vr15 (vr15), unsigned 128 bits
+ 1140: vr16 (vr16), unsigned 128 bits
+ 1141: vr17 (vr17), unsigned 128 bits
+ 1142: vr18 (vr18), unsigned 128 bits
+ 1143: vr19 (vr19), unsigned 128 bits
+ 1144: vr20 (vr20), unsigned 128 bits
+ 1145: vr21 (vr21), unsigned 128 bits
+ 1146: vr22 (vr22), unsigned 128 bits
+ 1147: vr23 (vr23), unsigned 128 bits
+ 1148: vr24 (vr24), unsigned 128 bits
+ 1149: vr25 (vr25), unsigned 128 bits
+ 1150: vr26 (vr26), unsigned 128 bits
+ 1151: vr27 (vr27), unsigned 128 bits
+ 1152: vr28 (vr28), unsigned 128 bits
+ 1153: vr29 (vr29), unsigned 128 bits
+ 1154: vr30 (vr30), unsigned 128 bits
+ 1155: vr31 (vr31), unsigned 128 bits
+EOF
+
+regs_test testfile26 <<\EOF
+integer registers:
+ 0: %r0 (r0), signed 32 bits
+ 1: %r1 (r1), signed 32 bits
+ 2: %r2 (r2), signed 32 bits
+ 3: %r3 (r3), signed 32 bits
+ 4: %r4 (r4), signed 32 bits
+ 5: %r5 (r5), signed 32 bits
+ 6: %r6 (r6), signed 32 bits
+ 7: %r7 (r7), signed 32 bits
+ 8: %r8 (r8), signed 32 bits
+ 9: %r9 (r9), signed 32 bits
+ 10: %r10 (r10), signed 32 bits
+ 11: %r11 (r11), signed 32 bits
+ 12: %r12 (r12), signed 32 bits
+ 13: %r13 (r13), signed 32 bits
+ 14: %r14 (r14), signed 32 bits
+ 15: %r15 (r15), signed 32 bits
+FPU registers:
+ 16: %f0 (f0), float 64 bits
+ 17: %f2 (f2), float 64 bits
+ 18: %f4 (f4), float 64 bits
+ 19: %f6 (f6), float 64 bits
+ 20: %f1 (f1), float 64 bits
+ 21: %f3 (f3), float 64 bits
+ 22: %f5 (f5), float 64 bits
+ 23: %f7 (f7), float 64 bits
+ 24: %f8 (f8), float 64 bits
+ 25: %f10 (f10), float 64 bits
+ 26: %f12 (f12), float 64 bits
+ 27: %f14 (f14), float 64 bits
+ 28: %f9 (f9), float 64 bits
+ 29: %f11 (f11), float 64 bits
+ 30: %f13 (f13), float 64 bits
+ 31: %f15 (f15), float 64 bits
+access registers:
+ 48: %a0 (a0), unsigned 32 bits
+ 49: %a1 (a1), unsigned 32 bits
+ 50: %a2 (a2), unsigned 32 bits
+ 51: %a3 (a3), unsigned 32 bits
+ 52: %a4 (a4), unsigned 32 bits
+ 53: %a5 (a5), unsigned 32 bits
+ 54: %a6 (a6), unsigned 32 bits
+ 55: %a7 (a7), unsigned 32 bits
+ 56: %a8 (a8), unsigned 32 bits
+ 57: %a9 (a9), unsigned 32 bits
+ 58: %a10 (a10), unsigned 32 bits
+ 59: %a11 (a11), unsigned 32 bits
+ 60: %a12 (a12), unsigned 32 bits
+ 61: %a13 (a13), unsigned 32 bits
+ 62: %a14 (a14), unsigned 32 bits
+ 63: %a15 (a15), unsigned 32 bits
+control registers:
+ 32: %c0 (c0), unsigned 32 bits
+ 33: %c1 (c1), unsigned 32 bits
+ 34: %c2 (c2), unsigned 32 bits
+ 35: %c3 (c3), unsigned 32 bits
+ 36: %c4 (c4), unsigned 32 bits
+ 37: %c5 (c5), unsigned 32 bits
+ 38: %c6 (c6), unsigned 32 bits
+ 39: %c7 (c7), unsigned 32 bits
+ 40: %c8 (c8), unsigned 32 bits
+ 41: %c9 (c9), unsigned 32 bits
+ 42: %c10 (c10), unsigned 32 bits
+ 43: %c11 (c11), unsigned 32 bits
+ 44: %c12 (c12), unsigned 32 bits
+ 45: %c13 (c13), unsigned 32 bits
+ 46: %c14 (c14), unsigned 32 bits
+ 47: %c15 (c15), unsigned 32 bits
+ 64: %pswm (pswm), unsigned 32 bits
+ 65: %pswa (pswa), address 32 bits
+EOF
+
+regs_test testfile27 <<\EOF
+integer registers:
+ 0: %r0 (r0), signed 64 bits
+ 1: %r1 (r1), signed 64 bits
+ 2: %r2 (r2), signed 64 bits
+ 3: %r3 (r3), signed 64 bits
+ 4: %r4 (r4), signed 64 bits
+ 5: %r5 (r5), signed 64 bits
+ 6: %r6 (r6), signed 64 bits
+ 7: %r7 (r7), signed 64 bits
+ 8: %r8 (r8), signed 64 bits
+ 9: %r9 (r9), signed 64 bits
+ 10: %r10 (r10), signed 64 bits
+ 11: %r11 (r11), signed 64 bits
+ 12: %r12 (r12), signed 64 bits
+ 13: %r13 (r13), signed 64 bits
+ 14: %r14 (r14), signed 64 bits
+ 15: %r15 (r15), signed 64 bits
+FPU registers:
+ 16: %f0 (f0), float 64 bits
+ 17: %f2 (f2), float 64 bits
+ 18: %f4 (f4), float 64 bits
+ 19: %f6 (f6), float 64 bits
+ 20: %f1 (f1), float 64 bits
+ 21: %f3 (f3), float 64 bits
+ 22: %f5 (f5), float 64 bits
+ 23: %f7 (f7), float 64 bits
+ 24: %f8 (f8), float 64 bits
+ 25: %f10 (f10), float 64 bits
+ 26: %f12 (f12), float 64 bits
+ 27: %f14 (f14), float 64 bits
+ 28: %f9 (f9), float 64 bits
+ 29: %f11 (f11), float 64 bits
+ 30: %f13 (f13), float 64 bits
+ 31: %f15 (f15), float 64 bits
access registers:
- 48: %a0 (a0)
- 49: %a1 (a1)
- 50: %a2 (a2)
- 51: %a3 (a3)
- 52: %a4 (a4)
- 53: %a5 (a5)
- 54: %a6 (a6)
- 55: %a7 (a7)
- 56: %a8 (a8)
- 57: %a9 (a9)
- 58: %a10 (a10)
- 59: %a11 (a11)
- 60: %a12 (a12)
- 61: %a13 (a13)
- 62: %a14 (a14)
- 63: %a15 (a15)
+ 48: %a0 (a0), unsigned 32 bits
+ 49: %a1 (a1), unsigned 32 bits
+ 50: %a2 (a2), unsigned 32 bits
+ 51: %a3 (a3), unsigned 32 bits
+ 52: %a4 (a4), unsigned 32 bits
+ 53: %a5 (a5), unsigned 32 bits
+ 54: %a6 (a6), unsigned 32 bits
+ 55: %a7 (a7), unsigned 32 bits
+ 56: %a8 (a8), unsigned 32 bits
+ 57: %a9 (a9), unsigned 32 bits
+ 58: %a10 (a10), unsigned 32 bits
+ 59: %a11 (a11), unsigned 32 bits
+ 60: %a12 (a12), unsigned 32 bits
+ 61: %a13 (a13), unsigned 32 bits
+ 62: %a14 (a14), unsigned 32 bits
+ 63: %a15 (a15), unsigned 32 bits
control registers:
- 32: %c0 (c0)
- 33: %c1 (c1)
- 34: %c2 (c2)
- 35: %c3 (c3)
- 36: %c4 (c4)
- 37: %c5 (c5)
- 38: %c6 (c6)
- 39: %c7 (c7)
- 40: %c8 (c8)
- 41: %c9 (c9)
- 42: %c10 (c10)
- 43: %c11 (c11)
- 44: %c12 (c12)
- 45: %c13 (c13)
- 46: %c14 (c14)
- 47: %c15 (c15)
- 64: %pswm (pswm)
- 65: %pswa (pswa)
+ 32: %c0 (c0), unsigned 64 bits
+ 33: %c1 (c1), unsigned 64 bits
+ 34: %c2 (c2), unsigned 64 bits
+ 35: %c3 (c3), unsigned 64 bits
+ 36: %c4 (c4), unsigned 64 bits
+ 37: %c5 (c5), unsigned 64 bits
+ 38: %c6 (c6), unsigned 64 bits
+ 39: %c7 (c7), unsigned 64 bits
+ 40: %c8 (c8), unsigned 64 bits
+ 41: %c9 (c9), unsigned 64 bits
+ 42: %c10 (c10), unsigned 64 bits
+ 43: %c11 (c11), unsigned 64 bits
+ 44: %c12 (c12), unsigned 64 bits
+ 45: %c13 (c13), unsigned 64 bits
+ 46: %c14 (c14), unsigned 64 bits
+ 47: %c15 (c15), unsigned 64 bits
+ 64: %pswm (pswm), unsigned 64 bits
+ 65: %pswa (pswa), address 64 bits
EOF
regs_test testfile30 <<\EOF
integer registers:
- 0: %g0 (g0)
- 1: %g1 (g1)
- 2: %g2 (g2)
- 3: %g3 (g3)
- 4: %g4 (g4)
- 5: %g5 (g5)
- 6: %g6 (g6)
- 7: %g7 (g7)
- 8: %o0 (o0)
- 9: %o1 (o1)
- 10: %o2 (o2)
- 11: %o3 (o3)
- 12: %o4 (o4)
- 13: %o5 (o5)
- 14: %o6 (o6)
- 15: %o7 (o7)
- 16: %l0 (l0)
- 17: %l1 (l1)
- 18: %l2 (l2)
- 19: %l3 (l3)
- 20: %l4 (l4)
- 21: %l5 (l5)
- 22: %l6 (l6)
- 23: %l7 (l7)
- 24: %i0 (i0)
- 25: %i1 (i1)
- 26: %i2 (i2)
- 27: %i3 (i3)
- 28: %i4 (i4)
- 29: %i5 (i5)
- 30: %i6 (i6)
- 31: %i7 (i7)
+ 0: %g0 (g0), signed 32 bits
+ 1: %g1 (g1), signed 32 bits
+ 2: %g2 (g2), signed 32 bits
+ 3: %g3 (g3), signed 32 bits
+ 4: %g4 (g4), signed 32 bits
+ 5: %g5 (g5), signed 32 bits
+ 6: %g6 (g6), signed 32 bits
+ 7: %g7 (g7), signed 32 bits
+ 8: %o0 (o0), signed 32 bits
+ 9: %o1 (o1), signed 32 bits
+ 10: %o2 (o2), signed 32 bits
+ 11: %o3 (o3), signed 32 bits
+ 12: %o4 (o4), signed 32 bits
+ 13: %o5 (o5), signed 32 bits
+ 14: %o6 (o6), address 32 bits
+ 15: %o7 (o7), signed 32 bits
+ 16: %l0 (l0), signed 32 bits
+ 17: %l1 (l1), signed 32 bits
+ 18: %l2 (l2), signed 32 bits
+ 19: %l3 (l3), signed 32 bits
+ 20: %l4 (l4), signed 32 bits
+ 21: %l5 (l5), signed 32 bits
+ 22: %l6 (l6), signed 32 bits
+ 23: %l7 (l7), signed 32 bits
+ 24: %i0 (i0), signed 32 bits
+ 25: %i1 (i1), signed 32 bits
+ 26: %i2 (i2), signed 32 bits
+ 27: %i3 (i3), signed 32 bits
+ 28: %i4 (i4), signed 32 bits
+ 29: %i5 (i5), signed 32 bits
+ 30: %i6 (i6), address 32 bits
+ 31: %i7 (i7), signed 32 bits
FPU registers:
- 32: %f0 (f0)
- 33: %f1 (f1)
- 34: %f2 (f2)
- 35: %f3 (f3)
- 36: %f4 (f4)
- 37: %f5 (f5)
- 38: %f6 (f6)
- 39: %f7 (f7)
- 40: %f8 (f8)
- 41: %f9 (f9)
- 42: %f10 (f10)
- 43: %f11 (f11)
- 44: %f12 (f12)
- 45: %f13 (f13)
- 46: %f14 (f14)
- 47: %f15 (f15)
- 48: %f16 (f16)
- 49: %f17 (f17)
- 50: %f18 (f18)
- 51: %f19 (f19)
- 52: %f20 (f20)
- 53: %f21 (f21)
- 54: %f22 (f22)
- 55: %f23 (f23)
- 56: %f24 (f24)
- 57: %f25 (f25)
- 58: %f26 (f26)
- 59: %f27 (f27)
- 60: %f28 (f28)
- 61: %f29 (f29)
- 62: %f30 (f30)
- 63: %f31 (f31)
+ 32: %f0 (f0), float 32 bits
+ 33: %f1 (f1), float 32 bits
+ 34: %f2 (f2), float 32 bits
+ 35: %f3 (f3), float 32 bits
+ 36: %f4 (f4), float 32 bits
+ 37: %f5 (f5), float 32 bits
+ 38: %f6 (f6), float 32 bits
+ 39: %f7 (f7), float 32 bits
+ 40: %f8 (f8), float 32 bits
+ 41: %f9 (f9), float 32 bits
+ 42: %f10 (f10), float 32 bits
+ 43: %f11 (f11), float 32 bits
+ 44: %f12 (f12), float 32 bits
+ 45: %f13 (f13), float 32 bits
+ 46: %f14 (f14), float 32 bits
+ 47: %f15 (f15), float 32 bits
+ 48: %f16 (f16), float 32 bits
+ 49: %f17 (f17), float 32 bits
+ 50: %f18 (f18), float 32 bits
+ 51: %f19 (f19), float 32 bits
+ 52: %f20 (f20), float 32 bits
+ 53: %f21 (f21), float 32 bits
+ 54: %f22 (f22), float 32 bits
+ 55: %f23 (f23), float 32 bits
+ 56: %f24 (f24), float 32 bits
+ 57: %f25 (f25), float 32 bits
+ 58: %f26 (f26), float 32 bits
+ 59: %f27 (f27), float 32 bits
+ 60: %f28 (f28), float 32 bits
+ 61: %f29 (f29), float 32 bits
+ 62: %f30 (f30), float 32 bits
+ 63: %f31 (f31), float 32 bits
+control registers:
+ 64: %y (y), unsigned 32 bits
+ 65: %psr (psr), unsigned 32 bits
+ 66: %wim (wim), unsigned 32 bits
+ 67: %tbr (tbr), unsigned 32 bits
+ 68: %pc (pc), address 32 bits
+ 69: %npc (npc), address 32 bits
+ 70: %fsr (fsr), unsigned 32 bits
+ 71: %csr (csr), unsigned 32 bits
EOF
regs_test testfile31 <<\EOF
integer registers:
- 0: %g0 (g0)
- 1: %g1 (g1)
- 2: %g2 (g2)
- 3: %g3 (g3)
- 4: %g4 (g4)
- 5: %g5 (g5)
- 6: %g6 (g6)
- 7: %g7 (g7)
- 8: %o0 (o0)
- 9: %o1 (o1)
- 10: %o2 (o2)
- 11: %o3 (o3)
- 12: %o4 (o4)
- 13: %o5 (o5)
- 14: %o6 (o6)
- 15: %o7 (o7)
- 16: %l0 (l0)
- 17: %l1 (l1)
- 18: %l2 (l2)
- 19: %l3 (l3)
- 20: %l4 (l4)
- 21: %l5 (l5)
- 22: %l6 (l6)
- 23: %l7 (l7)
- 24: %i0 (i0)
- 25: %i1 (i1)
- 26: %i2 (i2)
- 27: %i3 (i3)
- 28: %i4 (i4)
- 29: %i5 (i5)
- 30: %i6 (i6)
- 31: %i7 (i7)
+ 0: %g0 (g0), signed 64 bits
+ 1: %g1 (g1), signed 64 bits
+ 2: %g2 (g2), signed 64 bits
+ 3: %g3 (g3), signed 64 bits
+ 4: %g4 (g4), signed 64 bits
+ 5: %g5 (g5), signed 64 bits
+ 6: %g6 (g6), signed 64 bits
+ 7: %g7 (g7), signed 64 bits
+ 8: %o0 (o0), signed 64 bits
+ 9: %o1 (o1), signed 64 bits
+ 10: %o2 (o2), signed 64 bits
+ 11: %o3 (o3), signed 64 bits
+ 12: %o4 (o4), signed 64 bits
+ 13: %o5 (o5), signed 64 bits
+ 14: %o6 (o6), address 64 bits
+ 15: %o7 (o7), signed 64 bits
+ 16: %l0 (l0), signed 64 bits
+ 17: %l1 (l1), signed 64 bits
+ 18: %l2 (l2), signed 64 bits
+ 19: %l3 (l3), signed 64 bits
+ 20: %l4 (l4), signed 64 bits
+ 21: %l5 (l5), signed 64 bits
+ 22: %l6 (l6), signed 64 bits
+ 23: %l7 (l7), signed 64 bits
+ 24: %i0 (i0), signed 64 bits
+ 25: %i1 (i1), signed 64 bits
+ 26: %i2 (i2), signed 64 bits
+ 27: %i3 (i3), signed 64 bits
+ 28: %i4 (i4), signed 64 bits
+ 29: %i5 (i5), signed 64 bits
+ 30: %i6 (i6), address 64 bits
+ 31: %i7 (i7), signed 64 bits
FPU registers:
- 32: %f0 (f0)
- 33: %f1 (f1)
- 34: %f2 (f2)
- 35: %f3 (f3)
- 36: %f4 (f4)
- 37: %f5 (f5)
- 38: %f6 (f6)
- 39: %f7 (f7)
- 40: %f8 (f8)
- 41: %f9 (f9)
- 42: %f10 (f10)
- 43: %f11 (f11)
- 44: %f12 (f12)
- 45: %f13 (f13)
- 46: %f14 (f14)
- 47: %f15 (f15)
- 48: %f16 (f16)
- 49: %f17 (f17)
- 50: %f18 (f18)
- 51: %f19 (f19)
- 52: %f20 (f20)
- 53: %f21 (f21)
- 54: %f22 (f22)
- 55: %f23 (f23)
- 56: %f24 (f24)
- 57: %f25 (f25)
- 58: %f26 (f26)
- 59: %f27 (f27)
- 60: %f28 (f28)
- 61: %f29 (f29)
- 62: %f30 (f30)
- 63: %f31 (f31)
- 64: %f32 (f32)
- 65: %f33 (f33)
- 66: %f34 (f34)
- 67: %f35 (f35)
- 68: %f36 (f36)
- 69: %f37 (f37)
- 70: %f38 (f38)
- 71: %f39 (f39)
- 72: %f40 (f40)
- 73: %f41 (f41)
- 74: %f42 (f42)
- 75: %f43 (f43)
- 76: %f44 (f44)
- 77: %f45 (f45)
- 78: %f46 (f46)
- 79: %f47 (f47)
- 80: %f48 (f48)
- 81: %f49 (f49)
- 82: %f50 (f50)
- 83: %f51 (f51)
- 84: %f52 (f52)
- 85: %f53 (f53)
- 86: %f54 (f54)
- 87: %f55 (f55)
- 88: %f56 (f56)
- 89: %f57 (f57)
- 90: %f58 (f58)
- 91: %f59 (f59)
- 92: %f60 (f60)
- 93: %f61 (f61)
- 94: %f62 (f62)
- 95: %f63 (f63)
+ 32: %f0 (f0), float 32 bits
+ 33: %f1 (f1), float 32 bits
+ 34: %f2 (f2), float 32 bits
+ 35: %f3 (f3), float 32 bits
+ 36: %f4 (f4), float 32 bits
+ 37: %f5 (f5), float 32 bits
+ 38: %f6 (f6), float 32 bits
+ 39: %f7 (f7), float 32 bits
+ 40: %f8 (f8), float 32 bits
+ 41: %f9 (f9), float 32 bits
+ 42: %f10 (f10), float 32 bits
+ 43: %f11 (f11), float 32 bits
+ 44: %f12 (f12), float 32 bits
+ 45: %f13 (f13), float 32 bits
+ 46: %f14 (f14), float 32 bits
+ 47: %f15 (f15), float 32 bits
+ 48: %f16 (f16), float 32 bits
+ 49: %f17 (f17), float 32 bits
+ 50: %f18 (f18), float 32 bits
+ 51: %f19 (f19), float 32 bits
+ 52: %f20 (f20), float 32 bits
+ 53: %f21 (f21), float 32 bits
+ 54: %f22 (f22), float 32 bits
+ 55: %f23 (f23), float 32 bits
+ 56: %f24 (f24), float 32 bits
+ 57: %f25 (f25), float 32 bits
+ 58: %f26 (f26), float 32 bits
+ 59: %f27 (f27), float 32 bits
+ 60: %f28 (f28), float 32 bits
+ 61: %f29 (f29), float 32 bits
+ 62: %f30 (f30), float 32 bits
+ 63: %f31 (f31), float 32 bits
+ 64: %f32 (f32), float 64 bits
+ 65: %f34 (f34), float 64 bits
+ 66: %f36 (f36), float 64 bits
+ 67: %f38 (f38), float 64 bits
+ 68: %f40 (f40), float 64 bits
+ 69: %f42 (f42), float 64 bits
+ 70: %f44 (f44), float 64 bits
+ 71: %f46 (f46), float 64 bits
+ 72: %f48 (f48), float 64 bits
+ 73: %f50 (f50), float 64 bits
+ 74: %f52 (f52), float 64 bits
+ 75: %f54 (f54), float 64 bits
+ 76: %f56 (f56), float 64 bits
+ 77: %f58 (f58), float 64 bits
+ 78: %f60 (f60), float 64 bits
+ 79: %f62 (f62), float 64 bits
+control registers:
+ 80: %pc (pc), address 64 bits
+ 81: %npc (npc), address 64 bits
+ 82: %state (state), unsigned 64 bits
+ 83: %fsr (fsr), unsigned 64 bits
+ 84: %fprs (fprs), unsigned 64 bits
+ 85: %y (y), unsigned 64 bits
EOF
exit 0
diff --git a/elfutils/tests/run-arextract.sh b/elfutils/tests/run-arextract.sh
index 51482771..29119a13 100755
--- a/elfutils/tests/run-arextract.sh
+++ b/elfutils/tests/run-arextract.sh
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 1999, 2000, 2002, 2005 Red Hat, Inc.
+# Copyright (C) 1999, 2000, 2002, 2005, 2006 Red Hat, Inc.
# This file is part of Red Hat elfutils.
# Written by Ulrich Drepper <drepper@redhat.com>, 1999.
#
@@ -24,6 +24,9 @@
# Network licensing program, please visit www.openinventionnetwork.com
# <http://www.openinventionnetwork.com>.
+. $srcdir/test-subr.sh
+
+tempfiles arextract.test
archive=../libelf/libelf.a
if test -f $archive; then
@@ -32,12 +35,11 @@ if test -f $archive; then
# The files we are looking at.
for f in ../libelf/*.o; do
- ./arextract $archive `basename $f` arextract.test || exit 1
+ testrun ./arextract $archive `basename $f` arextract.test || exit 1
cmp $f arextract.test || {
echo "Extraction of $1 failed"
exit 1
}
- rm -f ${objpfx}arextract.test
done
echo "done"
diff --git a/elfutils/tests/run-arsymtest.sh b/elfutils/tests/run-arsymtest.sh
index 6e58af69..d47df7a7 100755
--- a/elfutils/tests/run-arsymtest.sh
+++ b/elfutils/tests/run-arsymtest.sh
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 1999, 2000, 2002 Red Hat, Inc.
+# Copyright (C) 1999, 2000, 2002, 2006 Red Hat, Inc.
# This file is part of Red Hat elfutils.
# Written by Ulrich Drepper <drepper@redhat.com>, 1999.
#
@@ -24,12 +24,16 @@
# Network licensing program, please visit www.openinventionnetwork.com
# <http://www.openinventionnetwork.com>.
+. $srcdir/test-subr.sh
+
lib=../libelf/libelf.a
okfile=arsymtest.ok
tmpfile=arsymtest.tmp
testfile=arsymtest.test
-result=0
+tempfiles $okfile $tmpfile $testfile
+
+result=77
if test -f $lib; then
# Generate list using `nm' we check against.
nm -s $lib |
@@ -37,14 +41,12 @@ if test -f $lib; then
sort > $okfile
# Now run our program using libelf.
- ./arsymtest $lib $tmpfile || exit 1
+ testrun ./arsymtest $lib $tmpfile || exit 1
sort $tmpfile > $testfile
- rm $tmpfile
# Compare the outputs.
if cmp $okfile $testfile; then
result=0
- rm $testfile $okfile
else
result=1
fi
diff --git a/elfutils/tests/run-native-test.sh b/elfutils/tests/run-native-test.sh
index e64b252f..99926b03 100755
--- a/elfutils/tests/run-native-test.sh
+++ b/elfutils/tests/run-native-test.sh
@@ -58,7 +58,8 @@ trap native_cleanup 0 1 2 15
for cc in "$HOSTCC" "$HOST_CC" cc gcc "$CC"; do
test "x$cc" != x || continue
$cc -o native -g native.c > /dev/null 2>&1 &&
- ./native > /dev/null 2>&1 & native=$! &&
+ # Some shell versions don't do this right without the braces.
+ { ./native > /dev/null 2>&1 & native=$! ; } &&
sleep 1 && kill -0 $native 2> /dev/null &&
break ||
native=0
diff --git a/elfutils/tests/run-strings-test.sh b/elfutils/tests/run-strings-test.sh
index 139c2669..cfd9d236 100755
--- a/elfutils/tests/run-strings-test.sh
+++ b/elfutils/tests/run-strings-test.sh
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 2005 Red Hat, Inc.
+# Copyright (C) 2005, 2006 Red Hat, Inc.
# This file is part of Red Hat elfutils.
# Written by Ulrich Drepper <drepper@redhat.com>, 2005.
#
@@ -29,6 +29,9 @@
files="testfile `seq 2 9 | while read n; do echo testfile$n; done`"
testfiles $files
+LC_ALL=C
+export LC_ALL
+
testrun_compare ../src/strings -tx -f $files <<\EOF
testfile: f4 /lib/ld-linux.so.2
testfile: 1c9 __gmon_start__