Fix -ftime-report for C++ lookup.
Found this while running -ftime-report on a largish C++ source file. We need to start TV_NAME_LOOKUP conditionally inside poplevel() because it may be called from another lookup routine that already has TV_NAME_LOOKUP going. Tested on x86_64. Committed to trunk. 2012-08-20 Diego Novillo <dnovillo@google.com> * decl.c (poplevel): Start TV_NAME_LOOKUP conditionally. From-SVN: r190535
This commit is contained in:
parent
eb83633a81
commit
e3b3505750
@ -1,3 +1,7 @@
|
|||||||
|
2012-08-20 Diego Novillo <dnovillo@google.com>
|
||||||
|
|
||||||
|
* decl.c (poplevel): Start TV_NAME_LOOKUP conditionally.
|
||||||
|
|
||||||
2012-08-20 Richard Guenther <rguenther@suse.de>
|
2012-08-20 Richard Guenther <rguenther@suse.de>
|
||||||
|
|
||||||
* name-lookup.c (store_binding_p): New predicate, split out from ...
|
* name-lookup.c (store_binding_p): New predicate, split out from ...
|
||||||
|
@ -552,7 +552,7 @@ poplevel (int keep, int reverse, int functionbody)
|
|||||||
unsigned ix;
|
unsigned ix;
|
||||||
cp_label_binding *label_bind;
|
cp_label_binding *label_bind;
|
||||||
|
|
||||||
timevar_start (TV_NAME_LOOKUP);
|
bool subtime = timevar_cond_start (TV_NAME_LOOKUP);
|
||||||
restart:
|
restart:
|
||||||
|
|
||||||
block = NULL_TREE;
|
block = NULL_TREE;
|
||||||
@ -818,7 +818,7 @@ poplevel (int keep, int reverse, int functionbody)
|
|||||||
if (kind == sk_cleanup)
|
if (kind == sk_cleanup)
|
||||||
goto restart;
|
goto restart;
|
||||||
|
|
||||||
timevar_stop (TV_NAME_LOOKUP);
|
timevar_cond_stop (TV_NAME_LOOKUP, subtime);
|
||||||
return block;
|
return block;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user