This commit is contained in:
Jakub Jelinek 2008-03-03 12:58:38 +00:00
parent bd9e4bc211
commit 888c615367
13 changed files with 201 additions and 1024 deletions

View File

@ -1 +1 @@
valgrind-3.2.3.tar.bz2
valgrind-3.3.0.tar.bz2

View File

@ -1 +1 @@
978847992b136c8d8cb5c6559a91df1c valgrind-3.2.3.tar.bz2
e5fc39755a714f36b7e5014c1c6d4748 valgrind-3.3.0.tar.bz2

View File

@ -1,435 +0,0 @@
--- valgrind-3.2.3/glibc-2.5.supp.jj 2007-01-07 06:39:15.000000000 +0100
+++ valgrind-3.2.3/glibc-2.5.supp 2007-06-27 16:10:34.000000000 +0200
@@ -1,7 +1,7 @@
##----------------------------------------------------------------------##
-# Errors to suppress by default with glibc 2.4.x
+# Errors to suppress by default with glibc 2.5.x
# Format of this file is:
# {
@@ -43,9 +43,9 @@
{
dl-hack3
Memcheck:Cond
- obj:/lib*/ld-2.5*so*
- obj:/lib*/ld-2.5*so*
- obj:/lib*/ld-2.5*so*
+ obj:/lib*/ld-2.5*.so
+ obj:/lib*/ld-2.5*.so
+ obj:/lib*/ld-2.5*.so
}
##----------------------------------------------------------------------##
@@ -60,7 +60,7 @@
glibc-2.5.x-on-SUSE-10.2-(PPC)-2a
Memcheck:Cond
fun:index
- obj:*ld-2.5.*.so
+ obj:*ld-2.5*.so
}
{
glibc-2.5.x-on-SuSE-10.2-(PPC)-2b
@@ -72,14 +72,14 @@
glibc-2.5.5-on-SuSE-10.2-(PPC)-2c
Memcheck:Addr4
fun:index
- obj:*ld-2.5.*.so
+ obj:*ld-2.5*.so
}
{
glibc-2.3.5-on-SuSE-10.1-(PPC)-3
Memcheck:Addr4
fun:*wordcopy_fwd_dest_aligned*
fun:mem*cpy
- obj:*lib*2.5.*.so
+ obj:*lib*2.5*.so
}
##----------------------------------------------------------------------##
@@ -154,9 +154,9 @@
Memcheck:Param
socketcall.sendto(msg)
fun:__sendto_nocancel
- obj:/*libc-2.5.so
- obj:/*libc-2.5.so
- obj:/*libc-2.5.so
+ obj:/*libc-2.5*.so
+ obj:/*libc-2.5*.so
+ obj:/*libc-2.5*.so
}
{
glibc24-64bit-padding-1c
@@ -166,7 +166,7 @@
fun:__nscd_get_map_ref
fun:nscd_get*_r
fun:*nscd*
- obj:/*libc-2.5.so
+ obj:/*libc-2.5*.so
}
@@ -174,7 +174,7 @@
X11-64bit-padding-3a
Memcheck:Param
write(buf)
- obj:/*libpthread-2.4.so*
+ obj:/*libpthread-2.5*.so*
obj:/usr/lib*/libX11.so*
obj:/usr/lib*/libX11.so*
obj:/usr/lib*/libX11.so*
@@ -185,18 +185,18 @@
Memcheck:Param
socketcall.sendto(msg)
fun:send
- obj:/*libc-2.5.so
- obj:/*libc-2.5.so
- obj:/*libc-2.5.so
+ obj:/*libc-2.5*.so
+ obj:/*libc-2.5*.so
+ obj:/*libc-2.5*.so
}
{
X11-64bit-padding-4b
Memcheck:Param
socketcall.send(msg)
fun:send
- obj:/*libc-2.5.so
- obj:/*libc-2.5.so
- obj:/*libc-2.5.so
+ obj:/*libc-2.5*.so
+ obj:/*libc-2.5*.so
+ obj:/*libc-2.5*.so
}
##----------------------------------------------------------------------##
--- valgrind-3.2.3/configure.in.jj 2007-06-27 12:22:59.000000000 +0200
+++ valgrind-3.2.3/configure.in 2007-06-27 16:03:45.000000000 +0200
@@ -361,6 +361,16 @@ AC_EGREP_CPP([GLIBC_25], [
],
glibc="2.5")
+AC_EGREP_CPP([GLIBC_26], [
+#include <features.h>
+#ifdef __GNU_LIBRARY__
+ #if (__GLIBC__ == 2 && __GLIBC_MINOR__ == 6)
+ GLIBC_26
+ #endif
+#endif
+],
+glibc="2.6")
+
AC_MSG_CHECKING([the glibc version])
case "${glibc}" in
@@ -388,9 +398,15 @@ case "${glibc}" in
DEFAULT_SUPP="glibc-2.5.supp ${DEFAULT_SUPP}"
;;
+ 2.6)
+ AC_MSG_RESULT(2.6 family)
+ AC_DEFINE([GLIBC_2_6], 1, [Define to 1 if you're using glibc 2.6.x])
+ DEFAULT_SUPP="glibc-2.6.supp ${DEFAULT_SUPP}"
+ ;;
+
*)
AC_MSG_RESULT(unsupported version)
- AC_MSG_ERROR([Valgrind requires glibc version 2.2 - 2.5])
+ AC_MSG_ERROR([Valgrind requires glibc version 2.2 - 2.6])
;;
esac
--- valgrind-3.2.3/config.h.in.jj 2007-01-02 15:55:38.000000000 +0100
+++ valgrind-3.2.3/config.h.in 2007-06-27 16:08:37.000000000 +0200
@@ -18,6 +18,9 @@
/* Define to 1 if you're using glibc 2.5.x */
#undef GLIBC_2_5
+/* Define to 1 if you're using glibc 2.6.x */
+#undef GLIBC_2_6
+
/* Define to 1 if as supports mtocrf/mfocrf. */
#undef HAVE_AS_PPC_MFTOCRF
--- valgrind-3.2.3/configure.jj 2007-06-27 12:22:59.000000000 +0200
+++ valgrind-3.2.3/configure 2007-06-27 16:08:16.000000000 +0200
@@ -4391,8 +4391,30 @@ fi
rm -f conftest*
-echo "$as_me:$LINENO: checking the glibc version" >&5
-echo $ECHO_N "checking the glibc version... $ECHO_C" >&6
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <features.h>
+#ifdef __GNU_LIBRARY__
+ #if (__GLIBC__ == 2 && __GLIBC_MINOR__ == 6)
+ GLIBC_26
+ #endif
+#endif
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "GLIBC_26" >/dev/null 2>&1; then
+ glibc="2.6"
+fi
+rm -f conftest*
+
+
+{ echo "$as_me:$LINENO: checking the glibc version" >&5
+echo $ECHO_N "checking the glibc version... $ECHO_C" >&6; }
case "${glibc}" in
2.2)
@@ -4439,11 +4461,22 @@ _ACEOF
DEFAULT_SUPP="glibc-2.5.supp ${DEFAULT_SUPP}"
;;
+ 2.6)
+ echo "$as_me:$LINENO: result: 2.6 family" >&5
+echo "${ECHO_T}2.6 family" >&6
+
+cat >>confdefs.h <<\_ACEOF
+#define GLIBC_2_6 1
+_ACEOF
+
+ DEFAULT_SUPP="glibc-2.6.supp ${DEFAULT_SUPP}"
+ ;;
+
*)
- echo "$as_me:$LINENO: result: unsupported version" >&5
-echo "${ECHO_T}unsupported version" >&6
- { { echo "$as_me:$LINENO: error: Valgrind requires glibc version 2.2 - 2.5" >&5
-echo "$as_me: error: Valgrind requires glibc version 2.2 - 2.5" >&2;}
+ { echo "$as_me:$LINENO: result: unsupported version" >&5
+echo "${ECHO_T}unsupported version" >&6; }
+ { { echo "$as_me:$LINENO: error: Valgrind requires glibc version 2.2 - 2.6" >&5
+echo "$as_me: error: Valgrind requires glibc version 2.2 - 2.6" >&2;}
{ (exit 1); exit 1; }; }
;;
esac
--- valgrind-3.2.3/glibc-2.6.supp.jj 2007-06-27 16:09:55.000000000 +0200
+++ valgrind-3.2.3/glibc-2.6.supp 2007-06-27 16:10:20.000000000 +0200
@@ -0,0 +1,216 @@
+
+##----------------------------------------------------------------------##
+
+# Errors to suppress by default with glibc 2.6.x
+
+# Format of this file is:
+# {
+# name_of_suppression
+# tool_name:supp_kind
+# (optional extra info for some suppression types)
+# caller0 name, or /name/of/so/file.so
+# caller1 name, or ditto
+# (optionally: caller2 name)
+# (optionally: caller3 name)
+# }
+#
+# For Memcheck, the supp_kinds are:
+#
+# Param Value1 Value2 Value4 Value8 Value16
+# Free Addr1 Addr2 Addr4 Addr8 Addr16
+# Cond (previously known as Value0)
+#
+# and the optional extra info is:
+# if Param: name of system call param
+# if Free: name of free-ing fn)
+
+{
+ dl-hack1
+ Memcheck:Cond
+ fun:_dl_start
+ fun:_start
+}
+
+{
+ dl-hack2
+ Memcheck:Cond
+ obj:/lib*/ld-2.6*.so
+ obj:/lib*/ld-2.6*.so
+ obj:/lib*/ld-2.6*.so
+ obj:/lib*/ld-2.6*.so
+}
+
+{
+ dl-hack3
+ Memcheck:Cond
+ obj:/lib*/ld-2.6*.so
+ obj:/lib*/ld-2.6*.so
+ obj:/lib*/ld-2.6*.so
+}
+
+##----------------------------------------------------------------------##
+{
+ glibc-2.5.x-on-SUSE-10.2-(PPC)-1
+ Memcheck:Cond
+ fun:_dl_start_final
+ fun:_dl_start
+ fun:_start
+}
+{
+ glibc-2.5.x-on-SUSE-10.2-(PPC)-2a
+ Memcheck:Cond
+ fun:index
+ obj:*ld-2.6*.so
+}
+{
+ glibc-2.5.x-on-SuSE-10.2-(PPC)-2b
+ Memcheck:Addr4
+ fun:index
+ fun:expand_dynamic_string_token
+}
+{
+ glibc-2.5.5-on-SuSE-10.2-(PPC)-2c
+ Memcheck:Addr4
+ fun:index
+ obj:*ld-2.6*.so
+}
+{
+ glibc-2.3.5-on-SuSE-10.1-(PPC)-3
+ Memcheck:Addr4
+ fun:*wordcopy_fwd_dest_aligned*
+ fun:mem*cpy
+ obj:*lib*2.6*.so
+}
+
+##----------------------------------------------------------------------##
+## Various structure padding things on SUSE 10.2
+##
+{
+ X11-64bit-padding-1a
+ Memcheck:Param
+ write(buf)
+ fun:__write_nocancel
+ obj:/usr/lib*/libX11.so*
+ obj:/usr/lib*/libX11.so*
+ fun:X*
+}
+{
+ X11-64bit-padding-1b
+ Memcheck:Param
+ write(buf)
+ fun:__write_nocancel
+ obj:/usr/lib*/libX11.so*
+ obj:/usr/lib*/libX11.so*
+ fun:_X*
+}
+{
+ X11-64bit-padding-1c
+ Memcheck:Param
+ write(buf)
+ fun:__write_nocancel
+ obj:/usr/lib*/libX11.so*
+ obj:/usr/lib*/libX11.so*
+ obj:/usr/lib*/libX11.so*
+}
+{
+ X11-64bit-padding-1d
+ Memcheck:Param
+ write(buf)
+ fun:__write_nocancel
+ obj:/usr/lib*/libICE.so*
+ obj:/usr/lib*/libICE.so*
+ obj:/usr/lib*/libICE.so*
+}
+{
+ X11-64bit-padding-2a
+ Memcheck:Param
+ writev(vector[...])
+ fun:do_writev
+ obj:/usr/lib*/libX11.so*
+ obj:/usr/lib*/libX11.so*
+ obj:/usr/lib*/libX11.so*
+}
+{
+ X11-64bit-padding-2b
+ Memcheck:Param
+ writev(vector[...])
+ fun:do_writev
+ fun:writev
+ obj:/usr/lib*/libX11.so*
+ obj:/usr/lib*/libX11.so*
+}
+
+{
+ glibc24-64bit-padding-1a
+ Memcheck:Param
+ socketcall.sendto(msg)
+ fun:send
+ fun:get_mapping
+ fun:__nscd_get_map_ref
+ fun:nscd*
+}
+{
+ glibc24-64bit-padding-1b
+ Memcheck:Param
+ socketcall.sendto(msg)
+ fun:__sendto_nocancel
+ obj:/*libc-2.6*.so
+ obj:/*libc-2.6*.so
+ obj:/*libc-2.6*.so
+}
+{
+ glibc24-64bit-padding-1c
+ Memcheck:Param
+ socketcall.send(msg)
+ fun:send
+ fun:__nscd_get_map_ref
+ fun:nscd_get*_r
+ fun:*nscd*
+ obj:/*libc-2.6*.so
+}
+
+
+{
+ X11-64bit-padding-3a
+ Memcheck:Param
+ write(buf)
+ obj:/*libpthread-2.6*.so*
+ obj:/usr/lib*/libX11.so*
+ obj:/usr/lib*/libX11.so*
+ obj:/usr/lib*/libX11.so*
+}
+
+{
+ X11-64bit-padding-4a
+ Memcheck:Param
+ socketcall.sendto(msg)
+ fun:send
+ obj:/*libc-2.6*.so
+ obj:/*libc-2.6*.so
+ obj:/*libc-2.6*.so
+}
+{
+ X11-64bit-padding-4b
+ Memcheck:Param
+ socketcall.send(msg)
+ fun:send
+ obj:/*libc-2.6*.so
+ obj:/*libc-2.6*.so
+ obj:/*libc-2.6*.so
+}
+
+##----------------------------------------------------------------------##
+# MontaVista Linux 4.0.1 on ppc32
+{
+ MVL-401-linuxthreads-pthread_create
+ Memcheck:Param
+ write(buf)
+ fun:pthread_create
+}
+{
+ MVL-401-linuxthreads-pthread_create
+ Memcheck:Param
+ write(buf)
+ obj:/lib/libpthread-0.10.so
+ fun:pthread_create
+}

View File

@ -1,323 +0,0 @@
--- valgrind-3.2.3/configure.in.jj 2007-06-27 12:22:59.000000000 +0200
+++ valgrind-3.2.3/configure.in 2007-06-27 16:03:45.000000000 +0200
@@ -361,6 +361,16 @@ AC_EGREP_CPP([GLIBC_26], [
],
glibc="2.6")
+AC_EGREP_CPP([GLIBC_27], [
+#include <features.h>
+#ifdef __GNU_LIBRARY__
+ #if (__GLIBC__ == 2 && __GLIBC_MINOR__ == 7)
+ GLIBC_27
+ #endif
+#endif
+],
+glibc="2.7")
+
AC_MSG_CHECKING([the glibc version])
case "${glibc}" in
@@ -388,9 +398,15 @@ case "${glibc}" in
DEFAULT_SUPP="glibc-2.6.supp ${DEFAULT_SUPP}"
;;
+ 2.7)
+ AC_MSG_RESULT(2.7 family)
+ AC_DEFINE([GLIBC_2_7], 1, [Define to 1 if you're using glibc 2.7.x])
+ DEFAULT_SUPP="glibc-2.7.supp ${DEFAULT_SUPP}"
+ ;;
+
*)
AC_MSG_RESULT(unsupported version)
- AC_MSG_ERROR([Valgrind requires glibc version 2.2 - 2.6])
+ AC_MSG_ERROR([Valgrind requires glibc version 2.2 - 2.7])
;;
esac
--- valgrind-3.2.3/config.h.in.jj 2007-01-02 15:55:38.000000000 +0100
+++ valgrind-3.2.3/config.h.in 2007-06-27 16:08:37.000000000 +0200
@@ -18,6 +18,9 @@
/* Define to 1 if you're using glibc 2.6.x */
#undef GLIBC_2_6
+/* Define to 1 if you're using glibc 2.7.x */
+#undef GLIBC_2_7
+
/* Define to 1 if as supports mtocrf/mfocrf. */
#undef HAVE_AS_PPC_MFTOCRF
--- valgrind-3.2.3/configure.jj 2007-06-27 12:22:59.000000000 +0200
+++ valgrind-3.2.3/configure 2007-06-27 16:08:16.000000000 +0200
@@ -4413,6 +4413,28 @@ fi
rm -f conftest*
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <features.h>
+#ifdef __GNU_LIBRARY__
+ #if (__GLIBC__ == 2 && __GLIBC_MINOR__ == 7)
+ GLIBC_27
+ #endif
+#endif
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "GLIBC_27" >/dev/null 2>&1; then
+ glibc="2.7"
+fi
+rm -f conftest*
+
+
{ echo "$as_me:$LINENO: checking the glibc version" >&5
echo $ECHO_N "checking the glibc version... $ECHO_C" >&6; }
@@ -4472,11 +4494,22 @@ _ACEOF
DEFAULT_SUPP="glibc-2.6.supp ${DEFAULT_SUPP}"
;;
+ 2.7)
+ echo "$as_me:$LINENO: result: 2.7 family" >&5
+echo "${ECHO_T}2.7 family" >&6
+
+cat >>confdefs.h <<\_ACEOF
+#define GLIBC_2_7 1
+_ACEOF
+
+ DEFAULT_SUPP="glibc-2.7.supp ${DEFAULT_SUPP}"
+ ;;
+
*)
{ echo "$as_me:$LINENO: result: unsupported version" >&5
echo "${ECHO_T}unsupported version" >&6; }
- { { echo "$as_me:$LINENO: error: Valgrind requires glibc version 2.2 - 2.6" >&5
-echo "$as_me: error: Valgrind requires glibc version 2.2 - 2.6" >&2;}
+ { { echo "$as_me:$LINENO: error: Valgrind requires glibc version 2.2 - 2.7" >&5
+echo "$as_me: error: Valgrind requires glibc version 2.2 - 2.7" >&2;}
{ (exit 1); exit 1; }; }
;;
esac
--- valgrind-3.2.3/glibc-2.7.supp.jj 2007-06-27 16:09:55.000000000 +0200
+++ valgrind-3.2.3/glibc-2.7.supp 2007-06-27 16:10:20.000000000 +0200
@@ -0,0 +1,216 @@
+
+##----------------------------------------------------------------------##
+
+# Errors to suppress by default with glibc 2.7.x
+
+# Format of this file is:
+# {
+# name_of_suppression
+# tool_name:supp_kind
+# (optional extra info for some suppression types)
+# caller0 name, or /name/of/so/file.so
+# caller1 name, or ditto
+# (optionally: caller2 name)
+# (optionally: caller3 name)
+# }
+#
+# For Memcheck, the supp_kinds are:
+#
+# Param Value1 Value2 Value4 Value8 Value16
+# Free Addr1 Addr2 Addr4 Addr8 Addr16
+# Cond (previously known as Value0)
+#
+# and the optional extra info is:
+# if Param: name of system call param
+# if Free: name of free-ing fn)
+
+{
+ dl-hack1
+ Memcheck:Cond
+ fun:_dl_start
+ fun:_start
+}
+
+{
+ dl-hack2
+ Memcheck:Cond
+ obj:/lib*/ld-2.7*.so
+ obj:/lib*/ld-2.7*.so
+ obj:/lib*/ld-2.7*.so
+ obj:/lib*/ld-2.7*.so
+}
+
+{
+ dl-hack3
+ Memcheck:Cond
+ obj:/lib*/ld-2.7*.so
+ obj:/lib*/ld-2.7*.so
+ obj:/lib*/ld-2.7*.so
+}
+
+##----------------------------------------------------------------------##
+{
+ glibc-2.5.x-on-SUSE-10.2-(PPC)-1
+ Memcheck:Cond
+ fun:_dl_start_final
+ fun:_dl_start
+ fun:_start
+}
+{
+ glibc-2.5.x-on-SUSE-10.2-(PPC)-2a
+ Memcheck:Cond
+ fun:index
+ obj:*ld-2.7*.so
+}
+{
+ glibc-2.5.x-on-SuSE-10.2-(PPC)-2b
+ Memcheck:Addr4
+ fun:index
+ fun:expand_dynamic_string_token
+}
+{
+ glibc-2.5.5-on-SuSE-10.2-(PPC)-2c
+ Memcheck:Addr4
+ fun:index
+ obj:*ld-2.7*.so
+}
+{
+ glibc-2.3.5-on-SuSE-10.1-(PPC)-3
+ Memcheck:Addr4
+ fun:*wordcopy_fwd_dest_aligned*
+ fun:mem*cpy
+ obj:*lib*2.7*.so
+}
+
+##----------------------------------------------------------------------##
+## Various structure padding things on SUSE 10.2
+##
+{
+ X11-64bit-padding-1a
+ Memcheck:Param
+ write(buf)
+ fun:__write_nocancel
+ obj:/usr/lib*/libX11.so*
+ obj:/usr/lib*/libX11.so*
+ fun:X*
+}
+{
+ X11-64bit-padding-1b
+ Memcheck:Param
+ write(buf)
+ fun:__write_nocancel
+ obj:/usr/lib*/libX11.so*
+ obj:/usr/lib*/libX11.so*
+ fun:_X*
+}
+{
+ X11-64bit-padding-1c
+ Memcheck:Param
+ write(buf)
+ fun:__write_nocancel
+ obj:/usr/lib*/libX11.so*
+ obj:/usr/lib*/libX11.so*
+ obj:/usr/lib*/libX11.so*
+}
+{
+ X11-64bit-padding-1d
+ Memcheck:Param
+ write(buf)
+ fun:__write_nocancel
+ obj:/usr/lib*/libICE.so*
+ obj:/usr/lib*/libICE.so*
+ obj:/usr/lib*/libICE.so*
+}
+{
+ X11-64bit-padding-2a
+ Memcheck:Param
+ writev(vector[...])
+ fun:do_writev
+ obj:/usr/lib*/libX11.so*
+ obj:/usr/lib*/libX11.so*
+ obj:/usr/lib*/libX11.so*
+}
+{
+ X11-64bit-padding-2b
+ Memcheck:Param
+ writev(vector[...])
+ fun:do_writev
+ fun:writev
+ obj:/usr/lib*/libX11.so*
+ obj:/usr/lib*/libX11.so*
+}
+
+{
+ glibc24-64bit-padding-1a
+ Memcheck:Param
+ socketcall.sendto(msg)
+ fun:send
+ fun:get_mapping
+ fun:__nscd_get_map_ref
+ fun:nscd*
+}
+{
+ glibc24-64bit-padding-1b
+ Memcheck:Param
+ socketcall.sendto(msg)
+ fun:__sendto_nocancel
+ obj:/*libc-2.7*.so
+ obj:/*libc-2.7*.so
+ obj:/*libc-2.7*.so
+}
+{
+ glibc24-64bit-padding-1c
+ Memcheck:Param
+ socketcall.send(msg)
+ fun:send
+ fun:__nscd_get_map_ref
+ fun:nscd_get*_r
+ fun:*nscd*
+ obj:/*libc-2.7*.so
+}
+
+
+{
+ X11-64bit-padding-3a
+ Memcheck:Param
+ write(buf)
+ obj:/*libpthread-2.7*.so*
+ obj:/usr/lib*/libX11.so*
+ obj:/usr/lib*/libX11.so*
+ obj:/usr/lib*/libX11.so*
+}
+
+{
+ X11-64bit-padding-4a
+ Memcheck:Param
+ socketcall.sendto(msg)
+ fun:send
+ obj:/*libc-2.7*.so
+ obj:/*libc-2.7*.so
+ obj:/*libc-2.7*.so
+}
+{
+ X11-64bit-padding-4b
+ Memcheck:Param
+ socketcall.send(msg)
+ fun:send
+ obj:/*libc-2.7*.so
+ obj:/*libc-2.7*.so
+ obj:/*libc-2.7*.so
+}
+
+##----------------------------------------------------------------------##
+# MontaVista Linux 4.0.1 on ppc32
+{
+ MVL-401-linuxthreads-pthread_create
+ Memcheck:Param
+ write(buf)
+ fun:pthread_create
+}
+{
+ MVL-401-linuxthreads-pthread_create
+ Memcheck:Param
+ write(buf)
+ obj:/lib/libpthread-0.10.so
+ fun:pthread_create
+}

View File

@ -1,26 +0,0 @@
--- valgrind-3.2.3/coregrind/m_syswrap/syswrap-linux.c.jj 2007-06-27 12:22:59.000000000 +0200
+++ valgrind-3.2.3/coregrind/m_syswrap/syswrap-linux.c 2007-06-27 12:37:18.000000000 +0200
@@ -1213,16 +1213,18 @@ POST(sys_io_setup)
PRE(sys_io_destroy)
{
struct vki_aio_ring *r;
- SizeT size;
-
+ SizeT size = 0;
+
PRINT("sys_io_destroy ( %llu )", (ULong)ARG1);
PRE_REG_READ1(long, "io_destroy", vki_aio_context_t, ctx);
// If we are going to seg fault (due to a bogus ARG1) do it as late as
// possible...
- r = (struct vki_aio_ring *)ARG1;
- size = VG_PGROUNDUP(sizeof(struct vki_aio_ring) +
- r->nr*sizeof(struct vki_io_event));
+ if (ML_(safe_to_deref)( (void*)ARG1, sizeof(struct vki_aio_ring))) {
+ r = (struct vki_aio_ring *)ARG1;
+ size = VG_PGROUNDUP(sizeof(struct vki_aio_ring) +
+ r->nr*sizeof(struct vki_io_event));
+ }
SET_STATUS_from_SysRes( VG_(do_syscall1)(SYSNO, ARG1) );

View File

@ -1,59 +0,0 @@
--- valgrind-3.2.3/include/vki-linux.h (revision 6760)
+++ valgrind-3.2.3/include/vki-linux.h (working copy)
@@ -1151,6 +1151,7 @@
#define VKI_FUTEX_FD (2)
#define VKI_FUTEX_REQUEUE (3)
#define VKI_FUTEX_CMP_REQUEUE (4)
+#define VKI_FUTEX_PRIVATE_FLAG (128)
struct vki_robust_list {
struct vki_robust_list __user *next;
--- valgrind-3.2.3/coregrind/m_syswrap/syswrap-linux.c (revision 6760)
+++ valgrind-3.2.3/coregrind/m_syswrap/syswrap-linux.c (working copy)
@@ -843,21 +843,25 @@
PRINT("sys_futex ( %p, %d, %d, %p, %p )", ARG1,ARG2,ARG3,ARG4,ARG5);
switch(ARG2) {
case VKI_FUTEX_CMP_REQUEUE:
+ case VKI_FUTEX_CMP_REQUEUE | VKI_FUTEX_PRIVATE_FLAG:
PRE_REG_READ6(long, "futex",
vki_u32 *, futex, int, op, int, val,
struct timespec *, utime, vki_u32 *, uaddr2, int, val3);
break;
case VKI_FUTEX_REQUEUE:
+ case VKI_FUTEX_REQUEUE | VKI_FUTEX_PRIVATE_FLAG:
PRE_REG_READ5(long, "futex",
vki_u32 *, futex, int, op, int, val,
struct timespec *, utime, vki_u32 *, uaddr2);
break;
case VKI_FUTEX_WAIT:
+ case VKI_FUTEX_WAIT | VKI_FUTEX_PRIVATE_FLAG:
PRE_REG_READ4(long, "futex",
vki_u32 *, futex, int, op, int, val,
struct timespec *, utime);
break;
case VKI_FUTEX_WAKE:
+ case VKI_FUTEX_WAKE | VKI_FUTEX_PRIVATE_FLAG:
case VKI_FUTEX_FD:
PRE_REG_READ3(long, "futex",
vki_u32 *, futex, int, op, int, val);
@@ -873,16 +877,20 @@
switch(ARG2) {
case VKI_FUTEX_WAIT:
+ case VKI_FUTEX_WAIT | VKI_FUTEX_PRIVATE_FLAG:
if (ARG4 != 0)
PRE_MEM_READ( "futex(timeout)", ARG4, sizeof(struct vki_timespec) );
break;
case VKI_FUTEX_REQUEUE:
+ case VKI_FUTEX_REQUEUE | VKI_FUTEX_PRIVATE_FLAG:
case VKI_FUTEX_CMP_REQUEUE:
+ case VKI_FUTEX_CMP_REQUEUE | VKI_FUTEX_PRIVATE_FLAG:
PRE_MEM_READ( "futex(futex2)", ARG5, sizeof(Int) );
break;
case VKI_FUTEX_WAKE:
+ case VKI_FUTEX_WAKE | VKI_FUTEX_PRIVATE_FLAG:
case VKI_FUTEX_FD:
/* no additional pointers */
break;

View File

@ -1,11 +0,0 @@
--- valgrind-3.2.3/VEX/priv/guest-amd64/toIR.c (revision 1776)
+++ valgrind-3.2.3/VEX/priv/guest-amd64/toIR.c (revision 1777)
@@ -8355,7 +8355,7 @@ DisResult disInstr_AMD64_WRK (
as many invalid combinations as possible. */
n_prefixes = 0;
while (True) {
- if (n_prefixes > 5) goto decode_failure;
+ if (n_prefixes > 7) goto decode_failure;
pre = getUChar(delta);
switch (pre) {
case 0x66: pfx |= PFX_66; break;

View File

@ -1,5 +1,5 @@
--- valgrind-3.2.3/cachegrind/cg_sim.c.jj 2007-01-08 02:43:10.000000000 -0500
+++ valgrind-3.2.3/cachegrind/cg_sim.c 2007-02-13 07:15:46.000000000 -0500
--- valgrind-3.3.0/cachegrind/cg_sim.c.jj 2007-01-08 02:43:10.000000000 -0500
+++ valgrind-3.3.0/cachegrind/cg_sim.c 2007-02-13 07:15:46.000000000 -0500
@@ -42,29 +42,32 @@ typedef struct {
Int size; /* bytes */
Int assoc;

View File

@ -0,0 +1,14 @@
--- valgrind-3.3.0/glibc-2.34567-NPTL-helgrind.supp.jj 2007-12-11 00:18:47.000000000 +0100
+++ valgrind-3.3.0/glibc-2.34567-NPTL-helgrind.supp 2008-03-03 13:48:42.000000000 +0100
@@ -198,6 +198,11 @@
obj:/lib*/libpthread-2.7.*so
fun:sem_*
}
+{
+ helgrind-glibc27-199
+ Helgrind:Race
+ fun:pthread_barrier_wait
+}
######------------ glibc-2.6 specific ---------######
#

View File

@ -15,28 +15,17 @@ main (void)
return 0;
}
--- valgrind-3.2.3/include/vki-linux.h.jj 2006-08-28 15:38:37.000000000 +0200
+++ valgrind-3.2.3/include/vki-linux.h 2006-09-26 18:29:00.000000000 +0200
@@ -1223,6 +1223,8 @@ struct vki_dirent {
#define VKI_F_NOTIFY (VKI_F_LINUX_SPECIFIC_BASE+2)
+#define VKI_AT_FDCWD -100
+
//----------------------------------------------------------------------
// From linux-2.6.8.1/include/linux/sysctl.h
//----------------------------------------------------------------------
--- valgrind-3.2.3/coregrind/m_syswrap/syswrap-linux.c.jj 2006-08-28 15:38:57.000000000 +0200
+++ valgrind-3.2.3/coregrind/m_syswrap/syswrap-linux.c 2006-09-26 18:42:04.000000000 +0200
@@ -2350,10 +2350,15 @@ PRE(sys_openat)
--- valgrind-3.3.0/coregrind/m_syswrap/syswrap-linux.c.jj 2007-12-11 00:18:43.000000000 +0100
+++ valgrind-3.3.0/coregrind/m_syswrap/syswrap-linux.c 2008-03-03 11:35:15.000000000 +0100
@@ -2455,10 +2455,15 @@ PRE(sys_openat)
int, dfd, const char *, filename, int, flags);
}
- if (!ML_(fd_allowed)(ARG1, "openat", tid, False))
- if (ARG1 != VKI_AT_FDCWD && !ML_(fd_allowed)(ARG1, "openat", tid, False))
+ PRE_MEM_RASCIIZ( "openat(filename)", ARG2 );
+
+ /* For absolute filenames, dfd is ignored. If dfd is AT_FDCWD,
+ filename is relative to cwd. */
+ filename is relative to cwd. */
+ if (ML_(safe_to_deref)( (void*)ARG2, 1 )
+ && *(Char *)ARG2 != '/'
+ && ARG1 != VKI_AT_FDCWD

View File

@ -1,5 +1,5 @@
--- valgrind-3.2.3/configure.in.jj 2007-01-29 14:42:52.000000000 -0500
+++ valgrind-3.2.3/configure.in 2007-02-13 08:02:26.000000000 -0500
--- valgrind-3.3.0/configure.in.jj 2007-01-29 14:42:52.000000000 -0500
+++ valgrind-3.3.0/configure.in 2007-02-13 08:02:26.000000000 -0500
@@ -251,6 +251,7 @@ AC_MSG_CHECKING([for a supported CPU/OS
AC_SUBST(VG_PLATFORM_PRI)
@ -16,35 +16,35 @@
# Set up VG_<platform>. Either one or two of these become defined.
#
--- valgrind-3.2.3/configure.jj 2007-01-29 14:45:30.000000000 -0500
+++ valgrind-3.2.3/configure 2007-02-13 08:04:33.000000000 -0500
--- valgrind-3.3.0/configure.jj 2007-01-29 14:45:30.000000000 -0500
+++ valgrind-3.3.0/configure 2007-02-13 08:04:33.000000000 -0500
@@ -311,7 +311,7 @@ ac_includes_default="\
# include <unistd.h>
#endif"
-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 VEX_DIR DISTCHECK_CONFIGURE_FLAGS LN_S 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 CPP CXX CXXFLAGS ac_ct_CXX CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE RANLIB ac_ct_RANLIB PERL GDB CCAS CCASFLAGS build build_cpu build_vendor build_os host host_cpu host_vendor host_os VG_ARCH VG_ARCH_ALL VALT_LOAD_ADDRESS VG_OS VG_PLATFORM_PRI VG_PLATFORM_SEC VG_X86_LINUX_TRUE VG_X86_LINUX_FALSE VG_AMD64_LINUX_TRUE VG_AMD64_LINUX_FALSE VG_PPC32_LINUX_TRUE VG_PPC32_LINUX_FALSE VG_PPC64_LINUX_TRUE VG_PPC64_LINUX_FALSE DEFAULT_SUPP EGREP FLAG_M32 FLAG_M64 FLAG_MMMX FLAG_MSSE PREFERRED_STACK_BOUNDARY FLAG_WDECL_AFTER_STMT LIBOBJS BUILD_MPIWRAP_TRUE BUILD_MPIWRAP_FALSE MPI_CC 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 VEX_DIR DISTCHECK_CONFIGURE_FLAGS LN_S 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 CPP CXX CXXFLAGS ac_ct_CXX CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE RANLIB ac_ct_RANLIB PERL GDB CCAS CCASFLAGS build build_cpu build_vendor build_os host host_cpu host_vendor host_os VG_ARCH VG_ARCH_ALL VALT_LOAD_ADDRESS VG_OS VG_PLATFORM_PRI VG_PLATFORM_SEC VG_PLATFORM VG_X86_LINUX_TRUE VG_X86_LINUX_FALSE VG_AMD64_LINUX_TRUE VG_AMD64_LINUX_FALSE VG_PPC32_LINUX_TRUE VG_PPC32_LINUX_FALSE VG_PPC64_LINUX_TRUE VG_PPC64_LINUX_FALSE DEFAULT_SUPP EGREP FLAG_M32 FLAG_M64 FLAG_MMMX FLAG_MSSE PREFERRED_STACK_BOUNDARY FLAG_WDECL_AFTER_STMT LIBOBJS BUILD_MPIWRAP_TRUE BUILD_MPIWRAP_FALSE MPI_CC 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 VEX_DIR DISTCHECK_CONFIGURE_FLAGS LN_S 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 CPP CXX CXXFLAGS ac_ct_CXX CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE RANLIB ac_ct_RANLIB PERL GDB CCAS CCASFLAGS build build_cpu build_vendor build_os host host_cpu host_vendor host_os VG_ARCH VG_ARCH_ALL VALT_LOAD_ADDRESS VG_OS VG_PLATFORM_PRI VG_PLATFORM_SEC VGP_X86_LINUX_TRUE VGP_X86_LINUX_FALSE VGP_AMD64_LINUX_TRUE VGP_AMD64_LINUX_FALSE VGP_PPC32_LINUX_TRUE VGP_PPC32_LINUX_FALSE VGP_PPC64_LINUX_TRUE VGP_PPC64_LINUX_FALSE VGP_PPC32_AIX5_TRUE VGP_PPC32_AIX5_FALSE VGP_PPC64_AIX5_TRUE VGP_PPC64_AIX5_FALSE VGO_LINUX_TRUE VGO_LINUX_FALSE VGO_AIX5_TRUE VGO_AIX5_FALSE VGP_HAVE_SECONDARY_TRUE VGP_HAVE_SECONDARY_FALSE DEFAULT_SUPP EGREP FLAG_M32 FLAG_MAIX32 FLAG_M64 FLAG_MAIX64 FLAG_MMMX FLAG_MSSE PREFERRED_STACK_BOUNDARY FLAG_WDECL_AFTER_STMT FLAG_FNO_STACK_PROTECTOR BUILD_SSE3_TESTS_TRUE BUILD_SSE3_TESTS_FALSE LIBOBJS MPI_CC BUILD_MPIWRAP_PRI_TRUE BUILD_MPIWRAP_PRI_FALSE BUILD_MPIWRAP_SEC_TRUE BUILD_MPIWRAP_SEC_FALSE 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 VEX_DIR DISTCHECK_CONFIGURE_FLAGS LN_S 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 CPP CXX CXXFLAGS ac_ct_CXX CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE RANLIB ac_ct_RANLIB PERL GDB CCAS CCASFLAGS build build_cpu build_vendor build_os host host_cpu host_vendor host_os VG_ARCH VG_ARCH_ALL VALT_LOAD_ADDRESS VG_OS VG_PLATFORM_PRI VG_PLATFORM_SEC VG_PLATFORM VGP_X86_LINUX_TRUE VGP_X86_LINUX_FALSE VGP_AMD64_LINUX_TRUE VGP_AMD64_LINUX_FALSE VGP_PPC32_LINUX_TRUE VGP_PPC32_LINUX_FALSE VGP_PPC64_LINUX_TRUE VGP_PPC64_LINUX_FALSE VGP_PPC32_AIX5_TRUE VGP_PPC32_AIX5_FALSE VGP_PPC64_AIX5_TRUE VGP_PPC64_AIX5_FALSE VGO_LINUX_TRUE VGO_LINUX_FALSE VGO_AIX5_TRUE VGO_AIX5_FALSE VGP_HAVE_SECONDARY_TRUE VGP_HAVE_SECONDARY_FALSE DEFAULT_SUPP EGREP FLAG_M32 FLAG_MAIX32 FLAG_M64 FLAG_MAIX64 FLAG_MMMX FLAG_MSSE PREFERRED_STACK_BOUNDARY FLAG_WDECL_AFTER_STMT FLAG_FNO_STACK_PROTECTOR BUILD_SSE3_TESTS_TRUE BUILD_SSE3_TESTS_FALSE LIBOBJS MPI_CC BUILD_MPIWRAP_PRI_TRUE BUILD_MPIWRAP_PRI_FALSE BUILD_MPIWRAP_SEC_TRUE BUILD_MPIWRAP_SEC_FALSE LTLIBOBJS'
ac_subst_files=''
# Initialize some variables set by options.
@@ -4230,6 +4230,7 @@ echo "$as_me: error: Valgrind is platfor
@@ -4348,6 +4348,7 @@ echo "$as_me: error: Valgrind is platfor
{ (exit 1); exit 1; }; }
;;
esac
+VG_PLATFORM=`echo "$VG_PLATFORM_PRI" | LC_ALL=C tr A-Z_ a-z-`
# Set up VG_<platform>. Either one or two of these become defined.
# Set up VGP_<platform>. Either one or two of these become defined.
#
@@ -7615,6 +7616,7 @@ s,@VALT_LOAD_ADDRESS@,$VALT_LOAD_ADDRESS
@@ -8351,6 +8352,7 @@ s,@VALT_LOAD_ADDRESS@,$VALT_LOAD_ADDRESS
s,@VG_OS@,$VG_OS,;t t
s,@VG_PLATFORM_PRI@,$VG_PLATFORM_PRI,;t t
s,@VG_PLATFORM_SEC@,$VG_PLATFORM_SEC,;t t
+s,@VG_PLATFORM@,$VG_PLATFORM,;t t
s,@VG_X86_LINUX_TRUE@,$VG_X86_LINUX_TRUE,;t t
s,@VG_X86_LINUX_FALSE@,$VG_X86_LINUX_FALSE,;t t
s,@VG_AMD64_LINUX_TRUE@,$VG_AMD64_LINUX_TRUE,;t t
--- valgrind-3.2.3/valgrind.pc.in.jj 2007-01-02 09:52:30.000000000 -0500
+++ valgrind-3.2.3/valgrind.pc.in 2007-02-13 08:04:57.000000000 -0500
s,@VGP_X86_LINUX_TRUE@,$VGP_X86_LINUX_TRUE,;t t
s,@VGP_X86_LINUX_FALSE@,$VGP_X86_LINUX_FALSE,;t t
s,@VGP_AMD64_LINUX_TRUE@,$VGP_AMD64_LINUX_TRUE,;t t
--- valgrind-3.3.0/valgrind.pc.in.jj 2007-01-02 09:52:30.000000000 -0500
+++ valgrind-3.3.0/valgrind.pc.in 2007-02-13 08:04:57.000000000 -0500
@@ -4,13 +4,13 @@ libdir=@libdir@
includedir=@includedir@/valgrind
arch=@VG_ARCH@

View File

@ -1,6 +1,6 @@
--- valgrind-3.2.3/VEX/priv/guest-ppc/toIR.c 2006-08-28 08:39:10.000000000 -0500
+++ valgrind-3.2.3/VEX/priv/guest-ppc/toIR.c 2007-05-16 18:05:02.000000000 -0500
@@ -328,6 +328,7 @@ typedef enum {
--- valgrind-3.3.0/VEX/priv/guest-ppc/toIR.c.jj 2007-12-11 00:18:52.000000000 +0100
+++ valgrind-3.3.0/VEX/priv/guest-ppc/toIR.c 2008-03-03 09:58:59.000000000 +0100
@@ -333,6 +333,7 @@ typedef enum {
} PPC_GST;
#define MASK_FPSCR_RN 0x3
@ -8,7 +8,7 @@
#define MASK_VSCR_VALID 0x00010001
@@ -2122,7 +2123,7 @@ static IRExpr* /* ::Ity_I32 */ getGST_ma
@@ -2142,7 +2143,7 @@ static IRExpr* /* ::Ity_I32 */ getGST_ma
/* We're only keeping track of the rounding mode,
so if the mask isn't asking for this, just return 0x0 */
@ -17,7 +17,7 @@
assign( val, IRExpr_Get( OFFB_FPROUND, Ity_I32 ) );
} else {
assign( val, mkU32(0x0) );
@@ -2247,7 +2248,7 @@ static void putGST_masked ( PPC_GST reg,
@@ -2271,7 +2272,7 @@ static void putGST_masked ( PPC_GST reg,
switch (reg) {
case PPC_GST_FPSCR: {
/* Allow writes to Rounding Mode */
@ -26,7 +26,7 @@
/* construct new fpround from new and old values as per mask:
new fpround = (src & (3 & mask)) | (fpround & (3 & ~mask)) */
stmt(
@@ -2255,11 +2256,11 @@ static void putGST_masked ( PPC_GST reg,
@@ -2279,11 +2280,11 @@ static void putGST_masked ( PPC_GST reg,
OFFB_FPROUND,
binop(
Iop_Or32,
@ -40,7 +40,7 @@
)
)
)
@@ -3200,6 +3201,48 @@ static Bool dis_int_logic ( UInt theInst
@@ -3224,6 +3225,48 @@ static Bool dis_int_logic ( UInt theInst
// TODO: alternatively: assign(rA, verbose_Clz64(rS));
break;
@ -89,7 +89,7 @@
default:
vex_printf("dis_int_logic(ppc)(opc2)\n");
return False;
@@ -6381,6 +6424,45 @@ static Bool dis_fp_round ( UInt theInstr
@@ -6533,6 +6576,45 @@ static Bool dis_fp_round ( UInt theInstr
binop(Iop_I64toF64, rm, mkexpr(r_tmp64)) );
break;
@ -135,7 +135,7 @@
default:
vex_printf("dis_fp_round(ppc)(opc2)\n");
return False;
@@ -8991,6 +9073,10 @@ DisResult disInstr_PPC_WRK (
@@ -9139,6 +9221,10 @@ DisResult disInstr_PPC_WRK (
case 0x32E: // fctid
case 0x32F: // fctidz
case 0x34E: // fcfid
@ -146,7 +146,7 @@
if (dis_fp_round(theInstr)) goto decode_success;
goto decode_failure;
@@ -9067,6 +9153,10 @@ DisResult disInstr_PPC_WRK (
@@ -9216,6 +9302,10 @@ DisResult disInstr_PPC_WRK (
if (dis_int_arith( theInstr )) goto decode_success;
goto decode_failure;
@ -157,7 +157,7 @@
default:
break; // Fall through...
}
@@ -9085,6 +9175,7 @@ DisResult disInstr_PPC_WRK (
@@ -9234,6 +9324,7 @@ DisResult disInstr_PPC_WRK (
case 0x11C: case 0x3BA: case 0x39A: // eqv, extsb, extsh
case 0x1DC: case 0x07C: case 0x1BC: // nand, nor, or
case 0x19C: case 0x13C: // orc, xor
@ -165,27 +165,28 @@
if (dis_int_logic( theInstr )) goto decode_success;
goto decode_failure;
--- valgrind-3.2.3/none/tests/ppc32/Makefile.am 2006-08-28 08:38:47.000000000 -0500
+++ valgrind-3.2.3/none/tests/ppc32/Makefile.am 2007-05-16 18:10:32.000000000 -0500
@@ -13,11 +13,14 @@ EXTRA_DIST = $(noinst_SCRIPTS) \
test_gx.stderr.exp test_gx.stdout.exp test_gx.vgtest \
--- valgrind-3.3.0/none/tests/ppc32/Makefile.am.jj 2007-12-11 00:18:32.000000000 +0100
+++ valgrind-3.3.0/none/tests/ppc32/Makefile.am 2008-03-03 10:00:36.000000000 +0100
@@ -19,13 +19,15 @@ EXTRA_DIST = $(noinst_SCRIPTS) \
testVMX.stderr.exp testVMX.stdout.exp testVMX.vgtest \
twi.stderr.exp twi.stdout.exp twi.vgtest \
tw.stderr.exp tw.stdout.exp tw.vgtest \
- xlc_dbl_u32.stderr.exp xlc_dbl_u32.stdout.exp xlc_dbl_u32.vgtest
+ xlc_dbl_u32.stderr.exp xlc_dbl_u32.stdout.exp xlc_dbl_u32.vgtest \
+ power5+_round.stderr.exp power5+_round.stdout.exp power5+_round.vgtest \
+ power6_bcmp.stderr.exp power6_bcmp.stdout.exp power6_bcmp.vgtest
+
check_PROGRAMS = \
ldstrev lsw jm-insns mftocrf round test_fx test_gx testVMX \
- twi xlc_dbl_u32
+ twi xlc_dbl_u32 power5+_round power6_bcmp
bug129390-ppc32 \
bug139050-ppc32 \
ldstrev lsw jm-insns mftocrf mcrfs round test_fx test_gx \
- testVMX twi tw xlc_dbl_u32
+ testVMX twi tw xlc_dbl_u32 power5+_round power6_bcmp
AM_CFLAGS = $(WERROR) -Winline -Wall -Wshadow -g -I$(top_srcdir)/include \
@FLAG_M32@
--- valgrind-3.2.3/none/tests/ppc32/power5+_round.c 1969-12-31 18:00:00.000000000 -0600
+++ valgrind-3.2.3/none/tests/ppc32/power5+_round.c 2007-05-16 18:05:02.000000000 -0500
--- valgrind-3.3.0/none/tests/ppc32/power5+_round.c.jj 2008-03-03 09:58:59.000000000 +0100
+++ valgrind-3.3.0/none/tests/ppc32/power5+_round.c 2008-03-03 09:58:59.000000000 +0100
@@ -0,0 +1,147 @@
+/* Copyright (C) 2007 Pete Eberlein eberlein@us.ibm.com
+
@ -334,13 +335,13 @@
+
+ return 0;
+}
--- valgrind-3.2.3/none/tests/ppc32/power5+_round.stderr.exp 1969-12-31 18:00:00.000000000 -0600
+++ valgrind-3.2.3/none/tests/ppc32/power5+_round.stderr.exp 2007-05-16 18:05:02.000000000 -0500
--- valgrind-3.3.0/none/tests/ppc32/power5+_round.stderr.exp.jj 2008-03-03 09:58:59.000000000 +0100
+++ valgrind-3.3.0/none/tests/ppc32/power5+_round.stderr.exp 2008-03-03 09:58:59.000000000 +0100
@@ -0,0 +1,2 @@
+
+
--- valgrind-3.2.3/none/tests/ppc32/power5+_round.stdout.exp 1969-12-31 18:00:00.000000000 -0600
+++ valgrind-3.2.3/none/tests/ppc32/power5+_round.stdout.exp 2007-05-16 18:05:02.000000000 -0500
--- valgrind-3.3.0/none/tests/ppc32/power5+_round.stdout.exp.jj 2008-03-03 09:58:59.000000000 +0100
+++ valgrind-3.3.0/none/tests/ppc32/power5+_round.stdout.exp 2008-03-03 09:58:59.000000000 +0100
@@ -0,0 +1,60 @@
+frin inf inf 0 PASS
+frin 1.9 2 0 PASS
@ -402,12 +403,12 @@
+frim -0.9 -1 0 PASS
+frim 1e-40 0 0 PASS
+frim -1e-40 -1 0 PASS
--- valgrind-3.2.3/none/tests/ppc32/power5+_round.vgtest 1969-12-31 18:00:00.000000000 -0600
+++ valgrind-3.2.3/none/tests/ppc32/power5+_round.vgtest 2007-05-16 18:05:02.000000000 -0500
--- valgrind-3.3.0/none/tests/ppc32/power5+_round.vgtest.jj 2008-03-03 09:58:59.000000000 +0100
+++ valgrind-3.3.0/none/tests/ppc32/power5+_round.vgtest 2008-03-03 09:58:59.000000000 +0100
@@ -0,0 +1 @@
+prog: power5+_round
--- valgrind-3.2.3/none/tests/ppc32/power6_bcmp.c 1969-12-31 18:00:00.000000000 -0600
+++ valgrind-3.2.3/none/tests/ppc32/power6_bcmp.c 2007-05-16 18:05:02.000000000 -0500
--- valgrind-3.3.0/none/tests/ppc32/power6_bcmp.c.jj 2008-03-03 09:58:59.000000000 +0100
+++ valgrind-3.3.0/none/tests/ppc32/power6_bcmp.c 2008-03-03 09:58:59.000000000 +0100
@@ -0,0 +1,58 @@
+/* Copyright (C) 2007 Pete Eberlein eberlein@us.ibm.com
+
@ -467,35 +468,34 @@
+ return 0;
+}
+
--- valgrind-3.2.3/none/tests/ppc32/power6_bcmp.stderr.exp 1969-12-31 18:00:00.000000000 -0600
+++ valgrind-3.2.3/none/tests/ppc32/power6_bcmp.stderr.exp 2007-05-16 18:05:02.000000000 -0500
--- valgrind-3.3.0/none/tests/ppc32/power6_bcmp.stderr.exp.jj 2008-03-03 09:58:59.000000000 +0100
+++ valgrind-3.3.0/none/tests/ppc32/power6_bcmp.stderr.exp 2008-03-03 09:58:59.000000000 +0100
@@ -0,0 +1,2 @@
+
+
--- valgrind-3.2.3/none/tests/ppc32/power6_bcmp.vgtest 1969-12-31 18:00:00.000000000 -0600
+++ valgrind-3.2.3/none/tests/ppc32/power6_bcmp.vgtest 2007-05-16 18:05:02.000000000 -0500
--- valgrind-3.3.0/none/tests/ppc32/power6_bcmp.vgtest.jj 2008-03-03 09:58:59.000000000 +0100
+++ valgrind-3.3.0/none/tests/ppc32/power6_bcmp.vgtest 2008-03-03 09:58:59.000000000 +0100
@@ -0,0 +1 @@
+prog: power6_bcmp
--- valgrind-3.2.3/none/tests/ppc64/Makefile.am 2006-08-28 08:38:48.000000000 -0500
+++ valgrind-3.2.3/none/tests/ppc64/Makefile.am 2007-05-16 18:11:29.000000000 -0500
@@ -7,10 +7,13 @@ EXTRA_DIST = $(noinst_SCRIPTS) \
jm-vmx.stderr.exp jm-vmx.stdout.exp jm-vmx.vgtest \
lsw.stderr.exp lsw.stdout.exp lsw.vgtest \
--- valgrind-3.3.0/none/tests/ppc64/Makefile.am.jj 2007-12-11 00:18:35.000000000 +0100
+++ valgrind-3.3.0/none/tests/ppc64/Makefile.am 2008-03-03 10:01:52.000000000 +0100
@@ -9,10 +9,12 @@ EXTRA_DIST = $(noinst_SCRIPTS) \
std_reg_imm.vgtest std_reg_imm.stderr.exp std_reg_imm.stdout.exp \
round.stderr.exp round.stdout.exp round.vgtest \
- twi_tdi.stderr.exp twi_tdi.stdout.exp twi_tdi.vgtest
+ twi_tdi.stderr.exp twi_tdi.stdout.exp twi_tdi.vgtest \
twi_tdi.stderr.exp twi_tdi.stdout.exp twi_tdi.vgtest \
- tw_td.stderr.exp tw_td.stdout.exp tw_td.vgtest
+ tw_td.stderr.exp tw_td.stdout.exp tw_td.vgtest \
+ power6_bcmp.stderr.exp power6_bcmp.stdout.exp power6_bcmp.vgtest \
+ power6_mf_gpr.stderr.exp power6_mf_gpr.stdout.exp power6_mf_gpr.vgtest
+
check_PROGRAMS = \
- jm-insns lsw round twi_tdi
+ jm-insns lsw round twi_tdi power6_bcmp power6_mf_gpr
- jm-insns lsw round std_reg_imm twi_tdi tw_td
+ jm-insns lsw round std_reg_imm twi_tdi tw_td power6_bcmp power6_mf_gpr
AM_CFLAGS = $(WERROR) -Winline -Wall -Wshadow -g -I$(top_srcdir)/include \
@FLAG_M64@
--- valgrind-3.2.3/none/tests/ppc64/power6_bcmp.c 1969-12-31 18:00:00.000000000 -0600
+++ valgrind-3.2.3/none/tests/ppc64/power6_bcmp.c 2007-05-16 18:05:02.000000000 -0500
--- valgrind-3.3.0/none/tests/ppc64/power6_bcmp.c.jj 2008-03-03 09:58:59.000000000 +0100
+++ valgrind-3.3.0/none/tests/ppc64/power6_bcmp.c 2008-03-03 09:58:59.000000000 +0100
@@ -0,0 +1,61 @@
+/* Copyright (C) 2007 Pete Eberlein eberlein@us.ibm.com
+
@ -558,17 +558,17 @@
+ return 0;
+}
+
--- valgrind-3.2.3/none/tests/ppc64/power6_bcmp.stderr.exp 1969-12-31 18:00:00.000000000 -0600
+++ valgrind-3.2.3/none/tests/ppc64/power6_bcmp.stderr.exp 2007-05-16 18:05:02.000000000 -0500
--- valgrind-3.3.0/none/tests/ppc64/power6_bcmp.stderr.exp.jj 2008-03-03 09:58:59.000000000 +0100
+++ valgrind-3.3.0/none/tests/ppc64/power6_bcmp.stderr.exp 2008-03-03 09:58:59.000000000 +0100
@@ -0,0 +1,2 @@
+
+
--- valgrind-3.2.3/none/tests/ppc64/power6_bcmp.vgtest 1969-12-31 18:00:00.000000000 -0600
+++ valgrind-3.2.3/none/tests/ppc64/power6_bcmp.vgtest 2007-05-16 18:05:02.000000000 -0500
--- valgrind-3.3.0/none/tests/ppc64/power6_bcmp.vgtest.jj 2008-03-03 09:58:59.000000000 +0100
+++ valgrind-3.3.0/none/tests/ppc64/power6_bcmp.vgtest 2008-03-03 09:58:59.000000000 +0100
@@ -0,0 +1 @@
+prog: power6_bcmp
--- valgrind-3.2.3/none/tests/ppc64/power6_mf_gpr.c 1969-12-31 18:00:00.000000000 -0600
+++ valgrind-3.2.3/none/tests/ppc64/power6_mf_gpr.c 2007-05-16 18:05:02.000000000 -0500
--- valgrind-3.3.0/none/tests/ppc64/power6_mf_gpr.c.jj 2008-03-03 09:58:59.000000000 +0100
+++ valgrind-3.3.0/none/tests/ppc64/power6_mf_gpr.c 2008-03-03 09:58:59.000000000 +0100
@@ -0,0 +1,47 @@
+/* Copyright (C) 2007 Pete Eberlein eberlein@us.ibm.com
+
@ -617,34 +617,34 @@
+
+ return 0;
+}
--- valgrind-3.2.3/none/tests/ppc64/power6_mf_gpr.stderr.exp 1969-12-31 18:00:00.000000000 -0600
+++ valgrind-3.2.3/none/tests/ppc64/power6_mf_gpr.stderr.exp 2007-05-16 18:05:02.000000000 -0500
--- valgrind-3.3.0/none/tests/ppc64/power6_mf_gpr.stderr.exp.jj 2008-03-03 09:58:59.000000000 +0100
+++ valgrind-3.3.0/none/tests/ppc64/power6_mf_gpr.stderr.exp 2008-03-03 09:58:59.000000000 +0100
@@ -0,0 +1,2 @@
+
+
--- valgrind-3.2.3/none/tests/ppc64/power6_mf_gpr.stdout.exp 1969-12-31 18:00:00.000000000 -0600
+++ valgrind-3.2.3/none/tests/ppc64/power6_mf_gpr.stdout.exp 2007-05-16 18:05:02.000000000 -0500
--- valgrind-3.3.0/none/tests/ppc64/power6_mf_gpr.stdout.exp.jj 2008-03-03 09:58:59.000000000 +0100
+++ valgrind-3.3.0/none/tests/ppc64/power6_mf_gpr.stdout.exp 2008-03-03 09:58:59.000000000 +0100
@@ -0,0 +1,3 @@
+0 100.000000
+4059000000000000 0.000000
+4059000000000000 100.000000
--- valgrind-3.2.3/none/tests/ppc64/power6_mf_gpr.vgtest 1969-12-31 18:00:00.000000000 -0600
+++ valgrind-3.2.3/none/tests/ppc64/power6_mf_gpr.vgtest 2007-05-16 18:05:02.000000000 -0500
--- valgrind-3.3.0/none/tests/ppc64/power6_mf_gpr.vgtest.jj 2008-03-03 09:58:59.000000000 +0100
+++ valgrind-3.3.0/none/tests/ppc64/power6_mf_gpr.vgtest 2008-03-03 09:58:59.000000000 +0100
@@ -0,0 +1 @@
+prog: power6_mf_gpr
--- valgrind-3.2.3/none/tests/ppc32/Makefile.in 2007-01-29 20:45:20.000000000 +0100
+++ valgrind-3.2.3/none/tests/ppc32/Makefile.in 2007-08-03 16:49:16.000000000 +0200
@@ -39,7 +39,8 @@ host_triplet = @host@
check_PROGRAMS = ldstrev$(EXEEXT) lsw$(EXEEXT) jm-insns$(EXEEXT) \
mftocrf$(EXEEXT) round$(EXEEXT) test_fx$(EXEEXT) \
test_gx$(EXEEXT) testVMX$(EXEEXT) twi$(EXEEXT) \
- xlc_dbl_u32$(EXEEXT)
+ xlc_dbl_u32$(EXEEXT) power5+_round$(EXEEXT) \
+ power6_bcmp$(EXEEXT)
--- valgrind-3.3.0/none/tests/ppc32/Makefile.in.jj 2007-12-11 00:23:53.000000000 +0100
+++ valgrind-3.3.0/none/tests/ppc32/Makefile.in 2008-03-03 10:02:14.000000000 +0100
@@ -40,7 +40,8 @@ check_PROGRAMS = bug129390-ppc32$(EXEEXT
ldstrev$(EXEEXT) lsw$(EXEEXT) jm-insns$(EXEEXT) \
mftocrf$(EXEEXT) mcrfs$(EXEEXT) round$(EXEEXT) \
test_fx$(EXEEXT) test_gx$(EXEEXT) testVMX$(EXEEXT) \
- twi$(EXEEXT) tw$(EXEEXT) xlc_dbl_u32$(EXEEXT)
+ twi$(EXEEXT) tw$(EXEEXT) xlc_dbl_u32$(EXEEXT) \
+ power5+_round$(EXEEXT) power6_bcmp$(EXEEXT)
subdir = none/tests/ppc32
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
@@ -61,6 +62,12 @@ lsw_LDADD = $(LDADD)
@@ -71,6 +72,12 @@ mcrfs_LDADD = $(LDADD)
mftocrf_SOURCES = mftocrf.c
mftocrf_OBJECTS = mftocrf.$(OBJEXT)
mftocrf_LDADD = $(LDADD)
@ -657,27 +657,27 @@
round_SOURCES = round.c
round_OBJECTS = round.$(OBJEXT)
round_LDADD = $(LDADD)
@@ -87,10 +94,12 @@ COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUD
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
@@ -101,11 +108,12 @@ COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUD
CCLD = $(CC)
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
-SOURCES = jm-insns.c ldstrev.c lsw.c mftocrf.c round.c testVMX.c \
- test_fx.c test_gx.c twi.c xlc_dbl_u32.c
-DIST_SOURCES = jm-insns.c ldstrev.c lsw.c mftocrf.c round.c testVMX.c \
- test_fx.c test_gx.c twi.c xlc_dbl_u32.c
+SOURCES = jm-insns.c ldstrev.c lsw.c mftocrf.c power5+_round.c \
+ power6_bcmp.c round.c testVMX.c test_fx.c test_gx.c twi.c \
+ xlc_dbl_u32.c
+DIST_SOURCES = jm-insns.c ldstrev.c lsw.c mftocrf.c power5+_round.c \
+ power6_bcmp.c round.c testVMX.c test_fx.c test_gx.c twi.c \
SOURCES = bug129390-ppc32.c bug139050-ppc32.c jm-insns.c ldstrev.c \
- lsw.c mcrfs.c mftocrf.c round.c testVMX.c test_fx.c test_gx.c \
- tw.c twi.c xlc_dbl_u32.c
+ lsw.c mcrfs.c mftocrf.c power5+_round.c power6_bcmp.c round.c \
+ testVMX.c test_fx.c test_gx.c tw.c twi.c xlc_dbl_u32.c
DIST_SOURCES = bug129390-ppc32.c bug139050-ppc32.c jm-insns.c \
- ldstrev.c lsw.c mcrfs.c mftocrf.c round.c testVMX.c test_fx.c \
- test_gx.c tw.c twi.c xlc_dbl_u32.c
+ ldstrev.c lsw.c mcrfs.c mftocrf.c power5+_round.c \
+ power6_bcmp.c round.c testVMX.c test_fx.c test_gx.c tw.c twi.c \
+ xlc_dbl_u32.c
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -228,7 +245,9 @@ EXTRA_DIST = $(noinst_SCRIPTS) \
test_gx.stderr.exp test_gx.stdout.exp test_gx.vgtest \
@@ -266,7 +275,9 @@ EXTRA_DIST = $(noinst_SCRIPTS) \
testVMX.stderr.exp testVMX.stdout.exp testVMX.vgtest \
twi.stderr.exp twi.stdout.exp twi.vgtest \
tw.stderr.exp tw.stdout.exp tw.vgtest \
- xlc_dbl_u32.stderr.exp xlc_dbl_u32.stdout.exp xlc_dbl_u32.vgtest
+ xlc_dbl_u32.stderr.exp xlc_dbl_u32.stdout.exp xlc_dbl_u32.vgtest \
+ power5+_round.stderr.exp power5+_round.stdout.exp power5+_round.vgtest \
@ -685,7 +685,7 @@
AM_CFLAGS = $(WERROR) -Winline -Wall -Wshadow -g -I$(top_srcdir)/include \
@FLAG_M32@
@@ -288,6 +307,12 @@ lsw$(EXEEXT): $(lsw_OBJECTS) $(lsw_DEPEN
@@ -335,6 +346,12 @@ mcrfs$(EXEEXT): $(mcrfs_OBJECTS) $(mcrfs
mftocrf$(EXEEXT): $(mftocrf_OBJECTS) $(mftocrf_DEPENDENCIES)
@rm -f mftocrf$(EXEEXT)
$(LINK) $(mftocrf_LDFLAGS) $(mftocrf_OBJECTS) $(mftocrf_LDADD) $(LIBS)
@ -698,27 +698,28 @@
round$(EXEEXT): $(round_OBJECTS) $(round_DEPENDENCIES)
@rm -f round$(EXEEXT)
$(LINK) $(round_LDFLAGS) $(round_OBJECTS) $(round_LDADD) $(LIBS)
@@ -317,6 +342,8 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ldstrev.Po@am__quote@
@@ -370,6 +387,8 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lsw.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mcrfs.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mftocrf.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/power5+_round.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/power6_bcmp.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/round.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/testVMX-testVMX.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test_fx.Po@am__quote@
--- valgrind-3.2.3/none/tests/ppc64/Makefile.in 2007-01-29 20:45:21.000000000 +0100
+++ valgrind-3.2.3/none/tests/ppc64/Makefile.in 2007-08-03 16:49:16.000000000 +0200
@@ -37,7 +37,7 @@ POST_UNINSTALL = :
--- valgrind-3.3.0/none/tests/ppc64/Makefile.in.jj 2007-12-11 00:23:55.000000000 +0100
+++ valgrind-3.3.0/none/tests/ppc64/Makefile.in 2008-03-03 10:02:14.000000000 +0100
@@ -37,7 +37,8 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
check_PROGRAMS = jm-insns$(EXEEXT) lsw$(EXEEXT) round$(EXEEXT) \
- twi_tdi$(EXEEXT)
+ twi_tdi$(EXEEXT) power6_bcmp$(EXEEXT) power6_mf_gpr$(EXEEXT)
- std_reg_imm$(EXEEXT) twi_tdi$(EXEEXT) tw_td$(EXEEXT)
+ std_reg_imm$(EXEEXT) twi_tdi$(EXEEXT) tw_td$(EXEEXT) \
+ power6_bcmp$(EXEEXT) power6_mf_gpr$(EXEEXT)
subdir = none/tests/ppc64
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
@@ -53,6 +53,12 @@ jm_insns_LDADD = $(LDADD)
@@ -53,6 +54,12 @@ jm_insns_LDADD = $(LDADD)
lsw_SOURCES = lsw.c
lsw_OBJECTS = lsw.$(OBJEXT)
lsw_LDADD = $(LDADD)
@ -731,31 +732,32 @@
round_SOURCES = round.c
round_OBJECTS = round.$(OBJEXT)
round_LDADD = $(LDADD)
@@ -67,8 +73,10 @@ COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUD
@@ -73,9 +80,10 @@ COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUD
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
CCLD = $(CC)
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
-SOURCES = jm-insns.c lsw.c round.c twi_tdi.c
-DIST_SOURCES = jm-insns.c lsw.c round.c twi_tdi.c
-SOURCES = jm-insns.c lsw.c round.c std_reg_imm.c tw_td.c twi_tdi.c
-DIST_SOURCES = jm-insns.c lsw.c round.c std_reg_imm.c tw_td.c \
- twi_tdi.c
+SOURCES = jm-insns.c lsw.c power6_bcmp.c power6_mf_gpr.c round.c \
+ twi_tdi.c
+ std_reg_imm.c tw_td.c twi_tdi.c
+DIST_SOURCES = jm-insns.c lsw.c power6_bcmp.c power6_mf_gpr.c round.c \
+ twi_tdi.c
+ std_reg_imm.c tw_td.c twi_tdi.c
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -200,7 +216,9 @@ EXTRA_DIST = $(noinst_SCRIPTS) \
jm-vmx.stderr.exp jm-vmx.stdout.exp jm-vmx.vgtest \
lsw.stderr.exp lsw.stdout.exp lsw.vgtest \
@@ -226,7 +235,9 @@ EXTRA_DIST = $(noinst_SCRIPTS) \
std_reg_imm.vgtest std_reg_imm.stderr.exp std_reg_imm.stdout.exp \
round.stderr.exp round.stdout.exp round.vgtest \
- twi_tdi.stderr.exp twi_tdi.stdout.exp twi_tdi.vgtest
+ twi_tdi.stderr.exp twi_tdi.stdout.exp twi_tdi.vgtest \
twi_tdi.stderr.exp twi_tdi.stdout.exp twi_tdi.vgtest \
- tw_td.stderr.exp tw_td.stdout.exp tw_td.vgtest
+ tw_td.stderr.exp tw_td.stdout.exp tw_td.vgtest \
+ power6_bcmp.stderr.exp power6_bcmp.stdout.exp power6_bcmp.vgtest \
+ power6_mf_gpr.stderr.exp power6_mf_gpr.stdout.exp power6_mf_gpr.vgtest
AM_CFLAGS = $(WERROR) -Winline -Wall -Wshadow -g -I$(top_srcdir)/include \
@FLAG_M64@
@@ -251,6 +269,12 @@ jm-insns$(EXEEXT): $(jm_insns_OBJECTS) $
@@ -277,6 +288,12 @@ jm-insns$(EXEEXT): $(jm_insns_OBJECTS) $
lsw$(EXEEXT): $(lsw_OBJECTS) $(lsw_DEPENDENCIES)
@rm -f lsw$(EXEEXT)
$(LINK) $(lsw_LDFLAGS) $(lsw_OBJECTS) $(lsw_LDADD) $(LIBS)
@ -768,12 +770,12 @@
round$(EXEEXT): $(round_OBJECTS) $(round_DEPENDENCIES)
@rm -f round$(EXEEXT)
$(LINK) $(round_LDFLAGS) $(round_OBJECTS) $(round_LDADD) $(LIBS)
@@ -266,6 +290,8 @@ distclean-compile:
@@ -298,6 +315,8 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/jm_insns-jm-insns.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lsw.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/power6_bcmp.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/power6_mf_gpr.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/round.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/twi_tdi.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/std_reg_imm.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tw_td.Po@am__quote@

View File

@ -1,18 +1,14 @@
Summary: Tool for finding memory management bugs in programs
Name: valgrind
Version: 3.2.3
Release: 8
Version: 3.3.0
Release: 1
Epoch: 1
Source0: http://www.valgrind.org/downloads/valgrind-%{version}.tar.bz2
Patch1: valgrind-3.2.3-openat.patch
Patch2: valgrind-3.2.3-cachegrind-improvements.patch
Patch3: valgrind-3.2.3-pkg-config.patch
Patch4: valgrind-3.2.3-glibc2_6.patch
Patch5: valgrind-3.2.3-io_destroy.patch
Patch6: valgrind-3.2.3-power5+-6.patch
Patch7: valgrind-3.2.3-private-futex.patch
Patch8: valgrind-3.2.3-x86_64-nops.patch
Patch9: valgrind-3.2.3-glibc2_7.patch
Patch1: valgrind-3.3.0-cachegrind-improvements.patch
Patch2: valgrind-3.3.0-pkg-config.patch
Patch3: valgrind-3.3.0-power5+-6.patch
Patch4: valgrind-3.3.0-openat.patch
Patch5: valgrind-3.3.0-helgrind-p_b_w.patch
License: GPLv2
URL: http://www.valgrind.org/
Group: Development/Debuggers
@ -22,8 +18,24 @@ Obsoletes: valgrind-callgrind
# Ensure glibc{,-devel} is installed for both multilib arches
BuildRequires: /lib/libc.so.6 /usr/lib/libc.so /lib64/libc.so.6 /usr/lib64/libc.so
%endif
BuildRequires: glibc-devel >= 2.5
BuildRequires: glibc-devel >= 2.7
ExclusiveArch: %{ix86} x86_64 ppc ppc64
%ifarch %{ix86}
%define valarch x86
%define valsecarch %{nil}
%endif
%ifarch x86_64
%define valarch amd64
%define valsecarch x86
%endif
%ifarch ppc
%define valarch ppc32
%define valsecarch ppc64
%endif
%ifarch ppc64
%define valarch ppc64
%define valsecarch ppc32
%endif
# Disable build root strip policy
%define __spec_install_post /usr/lib/rpm/brp-compress || :
@ -39,6 +51,15 @@ malloc/new/free/delete are intercepted. As a result, Valgrind can
detect a lot of problems that are otherwise very hard to
find/diagnose.
%package devel
Summary: Development files for valgrind
Group: Development/Debuggers
Requires: valgrind = %{epoch}:%{version}-%{release}
%description devel
Header files and libraries for development of valgrind aware programs
or valgrind plugins.
%prep
%setup -q
%patch1 -p1
@ -46,10 +67,6 @@ find/diagnose.
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1
%patch7 -p1
%patch8 -p1
%patch9 -p1
%build
%ifarch x86_64 ppc64
@ -64,7 +81,7 @@ touch libgcc/libgcc_s_32.a
# Force a specific set of default suppressions
echo -n > default.supp
for file in glibc-2.7.supp xfree-4.supp ; do
for file in xfree-4.supp glibc-2.34567-NPTL-helgrind.supp glibc-2.7.supp; do
cat $file >> default.supp
done
@ -109,18 +126,13 @@ mkdir docs.installed
mv $RPM_BUILD_ROOT%{_datadir}/doc/valgrind/* docs.installed/
rm -f docs.installed/*.ps
%ifarch x86_64
rm -rf $RPM_BUILD_ROOT%{_libdir}/valgrind/x86-linux
ln -sf ../../lib/valgrind/x86-linux $RPM_BUILD_ROOT%{_libdir}/valgrind/x86-linux
%endif
%ifarch ppc64
rm -rf $RPM_BUILD_ROOT%{_libdir}/valgrind/ppc32-linux
ln -sf ../../lib/valgrind/ppc32-linux $RPM_BUILD_ROOT%{_libdir}/valgrind/ppc32-linux
%endif
%if "%{valsecarch}" != ""
%ifarch ppc
ln -sf ../../lib64/valgrind/ppc64-linux $RPM_BUILD_ROOT%{_libdir}/valgrind/ppc64-linux
ln -sf ../../lib64/valgrind/%{valsecarch}-linux $RPM_BUILD_ROOT%{_libdir}/valgrind/%{valsecarch}-linux
%else
rm -rf $RPM_BUILD_ROOT%{_libdir}/valgrind/%{valsecarch}-linux || :
ln -sf ../../lib/valgrind/%{valsecarch}-linux $RPM_BUILD_ROOT%{_libdir}/valgrind/%{valsecarch}-linux
%endif
%endif
%clean
@ -131,14 +143,28 @@ rm -rf $RPM_BUILD_ROOT
%doc ACKNOWLEDGEMENTS COPYING NEWS README_*
%doc docs.installed/html docs.installed/*.pdf
%{_bindir}/*
%{_includedir}/valgrind
%{_libdir}/valgrind
%{_libdir}/pkgconfig/*
%dir %{_libdir}/valgrind
%dir %{_libdir}/valgrind/%{valarch}-linux
%if "%{valsecarch}" != ""
%{_libdir}/valgrind/%{valsecarch}-linux
%endif
%{_libdir}/valgrind/%{valarch}-linux/*[^a]
%{_libdir}/valgrind/%{valarch}-linux/*[^.]a
%{_libdir}/valgrind/*.supp
%{_mandir}/man1/valgrind*
%files devel
%defattr(-,root,root)
%{_includedir}/valgrind
%dir %{_libdir}/valgrind
%dir %{_libdir}/valgrind/%{valarch}-linux
%{_libdir}/valgrind/%{valarch}-linux/*.a
%{_libdir}/pkgconfig/*
%changelog
* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 1:3.2.3-8
- Autorebuild for GCC 4.3
* Mon Mar 3 2008 Jakub Jelinek <jakub@redhat.com> 3.3.0-1
- update to 3.3.0
- split off devel bits into valgrind-devel subpackage
* Thu Oct 18 2007 Jakub Jelinek <jakub@redhat.com> 3.2.3-7
- add suppressions for glibc >= 2.7