[arch-commits] Commit in valgrind/trunk (4 files)
Allan McRae
allan at archlinux.org
Fri Oct 22 03:15:19 UTC 2010
Date: Thursday, October 21, 2010 @ 23:15:18
Author: allan
Revision: 96540
upgpkg: valgrind 3.6.0-1
remove unneeded patches
Deleted:
valgrind/trunk/glibc-2.12.patch
valgrind/trunk/valgrind-3.5.0-elf-indirect-functions.patch
valgrind/trunk/valgrind-3.5.0-initialise-isifunc.patch
valgrind/trunk/valgrind-3.5.0-stat_h.patch
---------------------------------------------+
glibc-2.12.patch | 44 --
valgrind-3.5.0-elf-indirect-functions.patch | 528 --------------------------
valgrind-3.5.0-initialise-isifunc.patch | 12
valgrind-3.5.0-stat_h.patch | 48 --
4 files changed, 632 deletions(-)
Deleted: glibc-2.12.patch
===================================================================
--- glibc-2.12.patch 2010-10-22 03:12:46 UTC (rev 96539)
+++ glibc-2.12.patch 2010-10-22 03:15:18 UTC (rev 96540)
@@ -1,44 +0,0 @@
-Index: configure.in
-===================================================================
---- configure.in (revision 11128)
-+++ configure.in (revision 11129)
-@@ -684,6 +684,16 @@
- ],
- GLIBC_VERSION="2.10")
-
-+AC_EGREP_CPP([GLIBC_212], [
-+#include <features.h>
-+#ifdef __GNU_LIBRARY__
-+ #if (__GLIBC__ == 2 && __GLIBC_MINOR__ == 12)
-+ GLIBC_212
-+ #endif
-+#endif
-+],
-+GLIBC_VERSION="2.12")
-+
- AC_EGREP_CPP([AIX5_LIBC], [
- #include <standards.h>
- #if defined(_AIXVERSION_510) || defined(_AIXVERSION_520) || defined(_AIXVERSION_530)
-@@ -776,6 +786,13 @@
- DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}"
- DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
- DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}"
-+ ;;
-+ 2.12)
-+ AC_MSG_RESULT(2.12 family)
-+ AC_DEFINE([GLIBC_2_12], 1, [Define to 1 if you're using glibc 2.12.x])
-+ DEFAULT_SUPP="glibc-2.X.supp ${DEFAULT_SUPP}"
-+ DEFAULT_SUPP="glibc-2.34567-NPTL-helgrind.supp ${DEFAULT_SUPP}"
-+ DEFAULT_SUPP="glibc-2.X-drd.supp ${DEFAULT_SUPP}"
- ;;
- aix5)
- AC_MSG_RESULT(AIX 5.1 or 5.2 or 5.3)
-@@ -790,7 +807,7 @@
-
- *)
- AC_MSG_RESULT(unsupported version)
-- AC_MSG_ERROR([Valgrind requires glibc version 2.2 - 2.10])
-+ AC_MSG_ERROR([Valgrind requires glibc version 2.2 - 2.12])
- AC_MSG_ERROR([or AIX 5.1 or 5.2 or 5.3 GLIBC_VERSION])
- AC_MSG_ERROR([or Darwin libc])
- ;;
Deleted: valgrind-3.5.0-elf-indirect-functions.patch
===================================================================
--- valgrind-3.5.0-elf-indirect-functions.patch 2010-10-22 03:12:46 UTC (rev 96539)
+++ valgrind-3.5.0-elf-indirect-functions.patch 2010-10-22 03:15:18 UTC (rev 96540)
@@ -1,528 +0,0 @@
-Index: memcheck/mc_replace_strmem.c
-===================================================================
---- memcheck/mc_replace_strmem.c (revision 10919)
-+++ memcheck/mc_replace_strmem.c (revision 10920)
-@@ -116,6 +116,7 @@
- STRRCHR(VG_Z_LIBC_SONAME, strrchr)
- STRRCHR(VG_Z_LIBC_SONAME, rindex)
- #if defined(VGO_linux)
-+STRRCHR(VG_Z_LIBC_SONAME, __GI_strrchr)
- STRRCHR(VG_Z_LD_LINUX_SO_2, rindex)
- #elif defined(VGO_darwin)
- STRRCHR(VG_Z_DYLD, strrchr)
-@@ -140,6 +141,7 @@
- STRCHR(VG_Z_LIBC_SONAME, strchr)
- STRCHR(VG_Z_LIBC_SONAME, index)
- #if defined(VGO_linux)
-+STRCHR(VG_Z_LIBC_SONAME, __GI_strchr)
- STRCHR(VG_Z_LD_LINUX_SO_2, strchr)
- STRCHR(VG_Z_LD_LINUX_SO_2, index)
- STRCHR(VG_Z_LD_LINUX_X86_64_SO_2, strchr)
-@@ -172,8 +174,10 @@
- }
-
- STRCAT(VG_Z_LIBC_SONAME, strcat)
-+#if defined(VGO_linux)
-+STRCAT(VG_Z_LIBC_SONAME, __GI_strcat)
-+#endif
-
--
- #define STRNCAT(soname, fnname) \
- char* VG_REPLACE_FUNCTION_ZU(soname,fnname) \
- ( char* dst, const char* src, SizeT n ); \
-@@ -257,6 +261,9 @@
- }
-
- STRNLEN(VG_Z_LIBC_SONAME, strnlen)
-+#if defined(VGO_linux)
-+STRNLEN(VG_Z_LIBC_SONAME, __GI_strnlen)
-+#endif
-
-
- // Note that this replacement often doesn't get used because gcc inlines
-@@ -274,6 +281,7 @@
-
- STRLEN(VG_Z_LIBC_SONAME, strlen)
- #if defined(VGO_linux)
-+STRLEN(VG_Z_LIBC_SONAME, __GI_strlen)
- STRLEN(VG_Z_LD_LINUX_SO_2, strlen)
- STRLEN(VG_Z_LD_LINUX_X86_64_SO_2, strlen)
- #endif
-@@ -301,7 +309,9 @@
- }
-
- STRCPY(VG_Z_LIBC_SONAME, strcpy)
--#if defined(VGO_darwin)
-+#if defined(VGO_linux)
-+STRCPY(VG_Z_LIBC_SONAME, __GI_strcpy)
-+#elif defined(VGO_darwin)
- STRCPY(VG_Z_DYLD, strcpy)
- #endif
-
-@@ -327,7 +337,9 @@
- }
-
- STRNCPY(VG_Z_LIBC_SONAME, strncpy)
--#if defined(VGO_darwin)
-+#if defined(VGO_linux)
-+STRNCPY(VG_Z_LIBC_SONAME, __GI_strncpy)
-+#elif defined(VGO_darwin)
- STRNCPY(VG_Z_DYLD, strncpy)
- #endif
-
-@@ -384,7 +396,9 @@
- }
-
- STRNCMP(VG_Z_LIBC_SONAME, strncmp)
--#if defined(VGO_darwin)
-+#if defined(VGO_linux)
-+STRNCMP(VG_Z_LIBC_SONAME, __GI_strncmp)
-+#elif defined(VGO_darwin)
- STRNCMP(VG_Z_DYLD, strncmp)
- #endif
-
-@@ -411,6 +425,7 @@
-
- STRCMP(VG_Z_LIBC_SONAME, strcmp)
- #if defined(VGO_linux)
-+STRCMP(VG_Z_LIBC_SONAME, __GI_strcmp)
- STRCMP(VG_Z_LD_LINUX_X86_64_SO_2, strcmp)
- STRCMP(VG_Z_LD64_SO_1, strcmp)
- #endif
-@@ -557,6 +572,7 @@
-
- STPCPY(VG_Z_LIBC_SONAME, stpcpy)
- #if defined(VGO_linux)
-+STPCPY(VG_Z_LIBC_SONAME, __GI_stpcpy)
- STPCPY(VG_Z_LD_LINUX_SO_2, stpcpy)
- STPCPY(VG_Z_LD_LINUX_X86_64_SO_2, stpcpy)
- #elif defined(VGO_darwin)
-@@ -709,8 +725,10 @@
- }
-
- GLIBC232_RAWMEMCHR(VG_Z_LIBC_SONAME, rawmemchr)
-+#if defined (VGO_linux)
-+GLIBC232_RAWMEMCHR(VG_Z_LIBC_SONAME, __GI___rawmemchr)
-+#endif
-
--
- /* glibc variant of strcpy that checks the dest is big enough.
- Copied from glibc-2.5/debug/test-strcpy_chk.c. */
- #define GLIBC25___STRCPY_CHK(soname,fnname) \
-Index: include/pub_tool_debuginfo.h
-===================================================================
---- include/pub_tool_debuginfo.h (revision 10919)
-+++ include/pub_tool_debuginfo.h (revision 10920)
-@@ -212,7 +212,8 @@
- /*OUT*/Addr* tocptr,
- /*OUT*/UInt* size,
- /*OUT*/HChar** name,
-- /*OUT*/Bool* isText );
-+ /*OUT*/Bool* isText,
-+ /*OUT*/Bool* isIFunc );
-
- /* A simple enumeration to describe the 'kind' of various kinds of
- segments that arise from the mapping of object files. */
-Index: coregrind/vg_preloaded.c
-===================================================================
---- coregrind/vg_preloaded.c (revision 10919)
-+++ coregrind/vg_preloaded.c (revision 10920)
-@@ -47,12 +47,12 @@
- #include "pub_core_debuginfo.h" // Needed for pub_core_redir.h
- #include "pub_core_redir.h" // For VG_NOTIFY_ON_LOAD
-
-+#if defined(VGO_linux) || defined(VGO_aix5)
-+
- /* ---------------------------------------------------------------------
- Hook for running __libc_freeres once the program exits.
- ------------------------------------------------------------------ */
-
--#if defined(VGO_linux) || defined(VGO_aix5)
--
- void VG_NOTIFY_ON_LOAD(freeres)( void );
- void VG_NOTIFY_ON_LOAD(freeres)( void )
- {
-@@ -68,6 +68,31 @@
- *(int *)0 = 'x';
- }
-
-+/* ---------------------------------------------------------------------
-+ Wrapper for indirect functions which need to be redirected.
-+ ------------------------------------------------------------------ */
-+
-+void * VG_NOTIFY_ON_LOAD(ifunc_wrapper) (void);
-+void * VG_NOTIFY_ON_LOAD(ifunc_wrapper) (void)
-+{
-+ OrigFn fn;
-+ Addr result = 0;
-+ int res;
-+
-+ /* Call the original indirect function and get it's result */
-+ VALGRIND_GET_ORIG_FN(fn);
-+ CALL_FN_W_v(result, fn);
-+
-+ /* Ask the valgrind core running on the real CPU (as opposed to this
-+ code which runs on the emulated CPU) to update the redirection that
-+ led to this function. This client request eventually gives control to
-+ the function VG_(redir_add_ifunc_target) in m_redir.c */
-+ VALGRIND_DO_CLIENT_REQUEST(res, 0,
-+ VG_USERREQ__ADD_IFUNC_TARGET,
-+ fn.nraddr, result, 0, 0, 0);
-+ return result;
-+}
-+
- #elif defined(VGO_darwin)
-
- /* ---------------------------------------------------------------------
-Index: coregrind/pub_core_clreq.h
-===================================================================
---- coregrind/pub_core_clreq.h (revision 10919)
-+++ coregrind/pub_core_clreq.h (revision 10920)
-@@ -50,6 +50,9 @@
- /* Internal equivalent of VALGRIND_PRINTF . */
- VG_USERREQ__INTERNAL_PRINTF = 0x3103,
-
-+ /* Add a target for an indirect function redirection. */
-+ VG_USERREQ__ADD_IFUNC_TARGET = 0x3104,
-+
- } Vg_InternalClientRequest;
-
- // Function for printing from code within Valgrind, but which runs on the
-Index: coregrind/m_debuginfo/debuginfo.c
-===================================================================
---- coregrind/m_debuginfo/debuginfo.c (revision 10919)
-+++ coregrind/m_debuginfo/debuginfo.c (revision 10920)
-@@ -3435,14 +3435,16 @@
- /*OUT*/Addr* tocptr,
- /*OUT*/UInt* size,
- /*OUT*/HChar** name,
-- /*OUT*/Bool* isText )
-+ /*OUT*/Bool* isText,
-+ /*OUT*/Bool* isIFunc )
- {
- vg_assert(idx >= 0 && idx < si->symtab_used);
-- if (avma) *avma = si->symtab[idx].addr;
-- if (tocptr) *tocptr = si->symtab[idx].tocptr;
-- if (size) *size = si->symtab[idx].size;
-- if (name) *name = (HChar*)si->symtab[idx].name;
-- if (isText) *isText = si->symtab[idx].isText;
-+ if (avma) *avma = si->symtab[idx].addr;
-+ if (tocptr) *tocptr = si->symtab[idx].tocptr;
-+ if (size) *size = si->symtab[idx].size;
-+ if (name) *name = (HChar*)si->symtab[idx].name;
-+ if (isText) *isText = si->symtab[idx].isText;
-+ if (isIFunc) *isIFunc = si->symtab[idx].isIFunc;
- }
-
-
-Index: coregrind/m_debuginfo/readelf.c
-===================================================================
---- coregrind/m_debuginfo/readelf.c (revision 10919)
-+++ coregrind/m_debuginfo/readelf.c (revision 10920)
-@@ -214,7 +214,8 @@
- used on entry */
- Bool* from_opd_out, /* ppc64-linux only: did we deref an
- .opd entry? */
-- Bool* is_text_out /* is this a text symbol? */
-+ Bool* is_text_out, /* is this a text symbol? */
-+ Bool* is_ifunc /* is this a STT_GNU_IFUNC function ?*/
- )
- {
- Bool plausible;
-@@ -232,6 +233,7 @@
- *sym_size_out = (Int)sym->st_size;
- *sym_tocptr_out = 0; /* unknown/inapplicable */
- *from_opd_out = False;
-+ *is_ifunc = False;
-
- /* Figure out if we're interested in the symbol. Firstly, is it of
- the right flavour? */
-@@ -243,6 +245,9 @@
- &&
- (ELFXX_ST_TYPE(sym->st_info) == STT_FUNC
- || ELFXX_ST_TYPE(sym->st_info) == STT_OBJECT
-+#ifdef STT_GNU_IFUNC
-+ || ELFXX_ST_TYPE(sym->st_info) == STT_GNU_IFUNC
-+#endif
- );
-
- /* Work out the svma and bias for each section as it will appear in
-@@ -325,6 +330,14 @@
- *sym_avma_out += text_bias;
- }
-
-+# ifdef STT_GNU_IFUNC
-+ /* Check for indirect functions. */
-+ if (*is_text_out
-+ && ELFXX_ST_TYPE(sym->st_info) == STT_GNU_IFUNC) {
-+ *is_ifunc = True;
-+ }
-+# endif
-+
- # if defined(VGP_ppc64_linux)
- /* Allow STT_NOTYPE in the very special case where we're running on
- ppc64-linux and the symbol is one which the .opd-chasing hack
-@@ -570,7 +583,7 @@
- Char *sym_name, *sym_name_really;
- Int sym_size;
- Addr sym_tocptr;
-- Bool from_opd, is_text;
-+ Bool from_opd, is_text, is_ifunc;
- DiSym risym;
- ElfXX_Sym *sym;
-
-@@ -602,13 +615,14 @@
- &sym_avma_really,
- &sym_size,
- &sym_tocptr,
-- &from_opd, &is_text)) {
-+ &from_opd, &is_text, &is_ifunc)) {
-
-- risym.addr = sym_avma_really;
-- risym.size = sym_size;
-- risym.name = ML_(addStr) ( di, sym_name_really, -1 );
-- risym.tocptr = sym_tocptr;
-- risym.isText = is_text;
-+ risym.addr = sym_avma_really;
-+ risym.size = sym_size;
-+ risym.name = ML_(addStr) ( di, sym_name_really, -1 );
-+ risym.tocptr = sym_tocptr;
-+ risym.isText = is_text;
-+ risym.isIFunc = is_ifunc;
- vg_assert(risym.name != NULL);
- vg_assert(risym.tocptr == 0); /* has no role except on ppc64-linux */
- ML_(addSym) ( di, &risym );
-@@ -646,6 +660,7 @@
- Int size;
- Bool from_opd;
- Bool is_text;
-+ Bool is_ifunc;
- }
- TempSym;
-
-@@ -671,7 +686,7 @@
- Char *sym_name, *sym_name_really;
- Int sym_size;
- Addr sym_tocptr;
-- Bool from_opd, modify_size, modify_tocptr, is_text;
-+ Bool from_opd, modify_size, modify_tocptr, is_text, is_ifunc;
- DiSym risym;
- ElfXX_Sym *sym;
- OSet *oset;
-@@ -713,7 +728,7 @@
- &sym_avma_really,
- &sym_size,
- &sym_tocptr,
-- &from_opd, &is_text)) {
-+ &from_opd, &is_text, &is_ifunc)) {
-
- /* Check if we've seen this (name,addr) key before. */
- key.addr = sym_avma_really;
-@@ -785,6 +800,7 @@
- elem->size = sym_size;
- elem->from_opd = from_opd;
- elem->is_text = is_text;
-+ elem->is_ifunc = is_ifunc;
- VG_(OSetGen_Insert)(oset, elem);
- if (di->trace_symtab) {
- VG_(printf)(" to-oset [%4ld]: "
-@@ -808,11 +824,12 @@
- VG_(OSetGen_ResetIter)( oset );
-
- while ( (elem = VG_(OSetGen_Next)(oset)) ) {
-- risym.addr = elem->key.addr;
-- risym.size = elem->size;
-- risym.name = ML_(addStr) ( di, elem->key.name, -1 );
-- risym.tocptr = elem->tocptr;
-- risym.isText = elem->is_text;
-+ risym.addr = elem->key.addr;
-+ risym.size = elem->size;
-+ risym.name = ML_(addStr) ( di, elem->key.name, -1 );
-+ risym.tocptr = elem->tocptr;
-+ risym.isText = elem->is_text;
-+ risym.isIFunc = elem->is_ifunc;
- vg_assert(risym.name != NULL);
-
- ML_(addSym) ( di, &risym );
-Index: coregrind/m_debuginfo/priv_storage.h
-===================================================================
---- coregrind/m_debuginfo/priv_storage.h (revision 10919)
-+++ coregrind/m_debuginfo/priv_storage.h (revision 10920)
-@@ -48,15 +48,16 @@
- /* A structure to hold an ELF/XCOFF symbol (very crudely). */
- typedef
- struct {
-- Addr addr; /* lowest address of entity */
-- Addr tocptr; /* ppc64-linux only: value that R2 should have */
-- UChar *name; /* name */
-+ Addr addr; /* lowest address of entity */
-+ Addr tocptr; /* ppc64-linux only: value that R2 should have */
-+ UChar *name; /* name */
- // XXX: this could be shrunk (on 32-bit platforms) by using 31 bits for
- // the size and 1 bit for the isText. If you do this, make sure that
- // all assignments to isText use 0 or 1 (or True or False), and that a
- // positive number larger than 1 is never used to represent True.
-- UInt size; /* size in bytes */
-+ UInt size; /* size in bytes */
- Bool isText;
-+ Bool isIFunc; /* symbol is an indirect function? */
- }
- DiSym;
-
-Index: coregrind/m_redir.c
-===================================================================
---- coregrind/m_redir.c (revision 10919)
-+++ coregrind/m_redir.c (revision 10920)
-@@ -268,12 +268,15 @@
- TopSpec* parent_spec; /* the TopSpec which supplied the Spec */
- TopSpec* parent_sym; /* the TopSpec which supplied the symbol */
- Bool isWrap; /* wrap or replacement? */
-+ Bool isIFunc; /* indirect function? */
- }
- Active;
-
- /* The active set is a fast lookup table */
- static OSet* activeSet = NULL;
-
-+/* Wrapper routine for indirect functions */
-+static Addr iFuncWrapper;
-
- /*------------------------------------------------------------*/
- /*--- FWDses ---*/
-@@ -350,8 +353,8 @@
-
- nsyms = VG_(DebugInfo_syms_howmany)( newsi );
- for (i = 0; i < nsyms; i++) {
-- VG_(DebugInfo_syms_getidx)( newsi, i, &sym_addr, &sym_toc,
-- NULL, &sym_name, &isText );
-+ VG_(DebugInfo_syms_getidx)( newsi, i, &sym_addr, &sym_toc,
-+ NULL, &sym_name, &isText, NULL );
- ok = VG_(maybe_Z_demangle)( sym_name, demangled_sopatt, N_DEMANGLED,
- demangled_fnpatt, N_DEMANGLED, &isWrap );
- /* ignore data symbols */
-@@ -388,8 +391,8 @@
-
- if (check_ppcTOCs) {
- for (i = 0; i < nsyms; i++) {
-- VG_(DebugInfo_syms_getidx)( newsi, i, &sym_addr, &sym_toc,
-- NULL, &sym_name, &isText );
-+ VG_(DebugInfo_syms_getidx)( newsi, i, &sym_addr, &sym_toc,
-+ NULL, &sym_name, &isText, NULL );
- ok = isText
- && VG_(maybe_Z_demangle)(
- sym_name, demangled_sopatt, N_DEMANGLED,
-@@ -470,7 +473,31 @@
-
- #undef N_DEMANGLED
-
-+/* Add a new target for an indirect function. Adds a new redirection
-+ for the indirection function with address old_from that redirects
-+ the ordinary function with address new_from to the target address
-+ of the original redirection. */
-
-+void VG_(redir_add_ifunc_target)( Addr old_from, Addr new_from )
-+{
-+ Active *old, new;
-+
-+ old = VG_(OSetGen_Lookup)(activeSet, &old_from);
-+ vg_assert(old);
-+ vg_assert(old->isIFunc);
-+
-+ new = *old;
-+ new.from_addr = new_from;
-+ new.isIFunc = False;
-+ maybe_add_active (new);
-+
-+ if (VG_(clo_trace_redir)) {
-+ VG_(message)( Vg_DebugMsg,
-+ "Adding redirect for indirect function 0x%llx from 0x%llx -> 0x%llx\n",
-+ (ULong)old_from, (ULong)new_from, (ULong)new.to_addr );
-+ }
-+}
-+
- /* Do one element of the basic cross product: add to the active set,
- all matches resulting from comparing all the given specs against
- all the symbols in the given seginfo. If a conflicting binding
-@@ -487,7 +514,7 @@
- )
- {
- Spec* sp;
-- Bool anyMark, isText;
-+ Bool anyMark, isText, isIFunc;
- Active act;
- Int nsyms, i;
- Addr sym_addr;
-@@ -513,7 +540,7 @@
- nsyms = VG_(DebugInfo_syms_howmany)( di );
- for (i = 0; i < nsyms; i++) {
- VG_(DebugInfo_syms_getidx)( di, i, &sym_addr, NULL, NULL,
-- &sym_name, &isText );
-+ &sym_name, &isText, &isIFunc );
-
- /* ignore data symbols */
- if (!isText)
-@@ -539,6 +566,7 @@
- act.parent_spec = parent_spec;
- act.parent_sym = parent_sym;
- act.isWrap = sp->isWrap;
-+ act.isIFunc = isIFunc;
- sp->done = True;
- maybe_add_active( act );
- }
-@@ -780,7 +808,9 @@
-
- vg_assert(r->to_addr != 0);
- if (isWrap)
-- *isWrap = r->isWrap;
-+ *isWrap = r->isWrap || r->isIFunc;
-+ if (r->isIFunc)
-+ return iFuncWrapper;
- return r->to_addr;
- }
-
-@@ -1096,6 +1126,8 @@
-
- if (VG_(strcmp)(symbol, VG_STRINGIFY(VG_NOTIFY_ON_LOAD(freeres))) == 0)
- VG_(client___libc_freeres_wrapper) = addr;
-+ else if (VG_(strcmp)(symbol, VG_STRINGIFY(VG_NOTIFY_ON_LOAD(ifunc_wrapper))) == 0)
-+ iFuncWrapper = addr;
- else
- vg_assert2(0, "unrecognised load notification function: %s", symbol);
- }
-Index: coregrind/pub_core_redir.h
-===================================================================
---- coregrind/pub_core_redir.h (revision 10919)
-+++ coregrind/pub_core_redir.h (revision 10920)
-@@ -58,6 +58,8 @@
- /* Initialise the module, and load initial "hardwired" redirects. */
- extern void VG_(redir_initialise)( void );
-
-+/* Notify the module of a new target for an indirect function. */
-+extern void VG_(redir_add_ifunc_target)( Addr old_from, Addr new_from );
-
- //--------------------------------------------------------------------
- // Queries
-Index: coregrind/m_scheduler/scheduler.c
-===================================================================
---- coregrind/m_scheduler/scheduler.c (revision 10919)
-+++ coregrind/m_scheduler/scheduler.c (revision 10920)
-@@ -89,6 +89,7 @@
- #include "pub_core_debuginfo.h" // VG_(di_notify_pdb_debuginfo)
- #include "priv_sema.h"
- #include "pub_core_scheduler.h" // self
-+#include "pub_core_redir.h"
-
-
- /* ---------------------------------------------------------------------
-@@ -1399,6 +1400,11 @@
- SET_CLREQ_RETVAL( tid, count );
- break; }
-
-+ case VG_USERREQ__ADD_IFUNC_TARGET: {
-+ VG_(redir_add_ifunc_target)( arg[1], arg[2] );
-+ SET_CLREQ_RETVAL( tid, 0);
-+ break; }
-+
- case VG_USERREQ__PRINTF_BACKTRACE: {
- Int count =
- VG_(vmessage)( Vg_ClientMsg, (char *)arg[1], (void*)arg[2] );
Deleted: valgrind-3.5.0-initialise-isifunc.patch
===================================================================
--- valgrind-3.5.0-initialise-isifunc.patch 2010-10-22 03:12:46 UTC (rev 96539)
+++ valgrind-3.5.0-initialise-isifunc.patch 2010-10-22 03:15:18 UTC (rev 96540)
@@ -1,12 +0,0 @@
-Index: coregrind/m_redir.c
-===================================================================
---- coregrind/m_redir.c (revision 10922)
-+++ coregrind/m_redir.c (revision 10923)
-@@ -830,6 +830,7 @@
- act.parent_spec = NULL;
- act.parent_sym = NULL;
- act.isWrap = False;
-+ act.isIFunc = False;
- maybe_add_active( act );
- }
-
Deleted: valgrind-3.5.0-stat_h.patch
===================================================================
--- valgrind-3.5.0-stat_h.patch 2010-10-22 03:12:46 UTC (rev 96539)
+++ valgrind-3.5.0-stat_h.patch 2010-10-22 03:15:18 UTC (rev 96540)
@@ -1,48 +0,0 @@
---- valgrind/include/vki/vki-amd64-linux.h.jj 2009-08-19 09:37:07.000000000 -0400
-+++ valgrind/include/vki/vki-amd64-linux.h 2010-01-20 04:41:52.662552000 -0500
-@@ -310,6 +310,9 @@ struct vki_stat {
- long st_blksize;
- long st_blocks; /* Number 512-byte blocks allocated. */
-
-+#undef st_atime
-+#undef st_mtime
-+#undef st_ctime
- unsigned long st_atime;
- unsigned long st_atime_nsec;
- unsigned long st_mtime;
---- valgrind/include/vki/vki-x86-linux.h.jj 2009-08-19 09:37:07.000000000 -0400
-+++ valgrind/include/vki/vki-x86-linux.h 2010-01-20 04:42:19.649995000 -0500
-@@ -348,6 +348,9 @@ struct vki_stat {
- unsigned long st_size;
- unsigned long st_blksize;
- unsigned long st_blocks;
-+#undef st_atime
-+#undef st_mtime
-+#undef st_ctime
- unsigned long st_atime;
- unsigned long st_atime_nsec;
- unsigned long st_mtime;
---- valgrind/include/vki/vki-ppc32-linux.h.jj 2009-08-19 09:37:07.000000000 -0400
-+++ valgrind/include/vki/vki-ppc32-linux.h 2010-01-20 04:42:44.861651000 -0500
-@@ -392,6 +392,9 @@ struct vki_stat {
- long st_size;
- unsigned long st_blksize;
- unsigned long st_blocks;
-+#undef st_atime
-+#undef st_mtime
-+#undef st_ctime
- unsigned long st_atime;
- unsigned long st_atime_nsec;
- unsigned long st_mtime;
---- valgrind/include/vki/vki-ppc64-linux.h.jj 2009-08-19 09:37:07.000000000 -0400
-+++ valgrind/include/vki/vki-ppc64-linux.h 2010-01-20 04:43:05.579922000 -0500
-@@ -428,6 +428,9 @@ struct vki_stat {
- long st_size;
- unsigned long st_blksize;
- unsigned long st_blocks;
-+#undef st_atime
-+#undef st_mtime
-+#undef st_ctime
- unsigned long st_atime;
- unsigned long st_atime_nsec;
- unsigned long st_mtime;
More information about the arch-commits
mailing list