Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(32)

Unified Diff: tools/wine_valgrind/valgrind_stop_frame.patch

Issue 6541014: Remove Wine + Valgrind code since nobody is working on it.... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 9 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « tools/wine_valgrind/valgrind_skip_python.patch ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tools/wine_valgrind/valgrind_stop_frame.patch
===================================================================
--- tools/wine_valgrind/valgrind_stop_frame.patch (revision 75330)
+++ tools/wine_valgrind/valgrind_stop_frame.patch (working copy)
@@ -1,147 +0,0 @@
-This patch adds a "STOP" frame to valgrind suppressions
-so we can do exact matches. This is filed as
-https://bugs.kde.org/show_bug.cgi?id=222604
-TODO(thestig) update the matcher spec and submit upstream.
-Index: include/pub_tool_seqmatch.h
-===================================================================
---- include/pub_tool_seqmatch.h (revision 10880)
-+++ include/pub_tool_seqmatch.h (working copy)
-@@ -76,6 +76,7 @@
- void* input, SizeT szbInput, UWord nInput, UWord ixInput,
- Bool (*pIsStar)(void*),
- Bool (*pIsQuery)(void*),
-+ Bool (*pIsStop)(void*),
- Bool (*pattEQinp)(void*,void*)
- );
-
-Index: coregrind/m_errormgr.c
-===================================================================
---- coregrind/m_errormgr.c (revision 10880)
-+++ coregrind/m_errormgr.c (working copy)
-@@ -194,7 +194,8 @@
- NoName, /* Error case */
- ObjName, /* Name is of an shared object file. */
- FunName, /* Name is of a function. */
-- DotDotDot /* Frame-level wildcard */
-+ DotDotDot, /* Frame-level wildcard */
-+ STOP /* STOP sign */
- }
- SuppLocTy;
-
-@@ -1074,6 +1075,11 @@
- p->ty = DotDotDot;
- return True;
- }
-+ if (VG_(strcmp)(p->name, "STOP") == 0) {
-+ p->name = NULL;
-+ p->ty = STOP;
-+ return True;
-+ }
- VG_(printf)("location should be \"...\", or should start "
- "with \"fun:\" or \"obj:\"\n");
- return False;
-@@ -1243,13 +1249,17 @@
- } while (!eof && !VG_STREQ(buf, "}"));
- }
-
-- // Reject entries which are entirely composed of frame
-- // level wildcards.
- vg_assert(i > 0); // guaranteed by frame-descriptor reading loop
-+ // Reject any pattern where STOP is not the last entry.
-+ for (j = 0; j < i - 1; j++) {
-+ if (tmp_callers[j].ty == STOP)
-+ BOMB("STOP must be the last entry in a suppression");
-+ }
-+ // Reject entries which are entirely composed of frame level wildcards.
- for (j = 0; j < i; j++) {
- if (tmp_callers[j].ty == FunName || tmp_callers[j].ty == ObjName)
- break;
-- vg_assert(tmp_callers[j].ty == DotDotDot);
-+ vg_assert(tmp_callers[j].ty == DotDotDot || tmp_callers[j].ty == STOP);
- }
- vg_assert(j >= 0 && j <= i);
- if (j == i) {
-@@ -1324,6 +1334,12 @@
- return False; /* there's no '?' equivalent in the supp syntax */
- }
-
-+static Bool supploc_IsStop ( void* supplocV )
-+{
-+ SuppLoc* supploc = (SuppLoc*)supplocV;
-+ return supploc->ty == STOP;
-+}
-+
- static Bool supp_pattEQinp ( void* supplocV, void* addrV )
- {
- SuppLoc* supploc = (SuppLoc*)supplocV; /* PATTERN */
-@@ -1340,6 +1356,8 @@
- should never get called with a pattern value for which the
- _IsStar or _IsQuery function would return True. Hence
- this can't happen. */
-+ case STOP:
-+ // Ditto.
- vg_assert(0);
- case ObjName:
- /* Get the object name into 'caller_name', or "???"
-@@ -1389,7 +1407,7 @@
- matchAll,
- /*PATT*/supps, szbPatt, n_supps, 0/*initial Ix*/,
- /*INPUT*/ips, szbInput, n_ips, 0/*initial Ix*/,
-- supploc_IsStar, supploc_IsQuery, supp_pattEQinp
-+ supploc_IsStar, supploc_IsQuery, supploc_IsStop, supp_pattEQinp
- );
- }
-
-Index: coregrind/m_seqmatch.c
-===================================================================
---- coregrind/m_seqmatch.c (revision 10880)
-+++ coregrind/m_seqmatch.c (working copy)
-@@ -45,6 +45,7 @@
- void* input, SizeT szbInput, UWord nInput, UWord ixInput,
- Bool (*pIsStar)(void*),
- Bool (*pIsQuery)(void*),
-+ Bool (*pIsStop)(void*),
- Bool (*pattEQinp)(void*,void*)
- )
- {
-@@ -102,7 +103,7 @@
- if (VG_(generic_match)( matchAll,
- patt, szbPatt, nPatt, ixPatt+1,
- input,szbInput,nInput, ixInput+0,
-- pIsStar,pIsQuery,pattEQinp) ) {
-+ pIsStar,pIsQuery,pIsStop,pattEQinp) ) {
- return True;
- }
- // but we can tail-recurse for the second call
-@@ -125,6 +126,9 @@
- }
- }
-
-+ if (havePatt && pIsStop(currPatt))
-+ return !haveInput;
-+
- // obvious case with literal chars in the pattern
- //
- // ma (p:ps) (i:is) = p == i && ma ps is
-@@ -163,10 +167,11 @@
- */
- static Bool charIsStar ( void* pV ) { return *(Char*)pV == '*'; }
- static Bool charIsQuery ( void* pV ) { return *(Char*)pV == '?'; }
-+static Bool charIsStop ( void* pV ) { return *(Char*)pV == '!'; }
- static Bool char_p_EQ_i ( void* pV, void* cV ) {
- Char p = *(Char*)pV;
- Char c = *(Char*)cV;
-- vg_assert(p != '*' && p != '?');
-+ vg_assert(p != '*' && p != '?' && p != '!');
- return p == c;
- }
- Bool VG_(string_match) ( const Char* patt, const Char* input )
-@@ -175,7 +180,7 @@
- True/* match-all */,
- (void*)patt, sizeof(UChar), VG_(strlen)(patt), 0,
- (void*)input, sizeof(UChar), VG_(strlen)(input), 0,
-- charIsStar, charIsQuery, char_p_EQ_i
-+ charIsStar, charIsQuery, charIsStop, char_p_EQ_i
- );
- }
-
« no previous file with comments | « tools/wine_valgrind/valgrind_skip_python.patch ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698