Better fix for --trace-ic source positions: Use HOptimizedGraphBuilderWithPositions
authorjkummerow@chromium.org <jkummerow@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Wed, 25 Jun 2014 12:37:06 +0000 (12:37 +0000)
committerjkummerow@chromium.org <jkummerow@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Wed, 25 Jun 2014 12:37:06 +0000 (12:37 +0000)
This reverts the changes made in r22008.

R=yangguo@chromium.org

Review URL: https://codereview.chromium.org/355823003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22012 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

src/compiler.cc
src/hydrogen.cc

index d9fb4a9..f471224 100644 (file)
@@ -394,7 +394,7 @@ OptimizedCompileJob::Status OptimizedCompileJob::CreateGraph() {
   // Type-check the function.
   AstTyper::Run(info());
 
-  graph_builder_ = FLAG_hydrogen_track_positions
+  graph_builder_ = (FLAG_hydrogen_track_positions || FLAG_trace_ic)
       ? new(info()->zone()) HOptimizedGraphBuilderWithPositions(info())
       : new(info()->zone()) HOptimizedGraphBuilder(info());
 
index df1f7a0..4e7b1a3 100644 (file)
@@ -6512,7 +6512,6 @@ void HOptimizedGraphBuilder::VisitAssignment(Assignment* expr) {
   ASSERT(!HasStackOverflow());
   ASSERT(current_block() != NULL);
   ASSERT(current_block()->HasPredecessor());
-  if (!FLAG_hydrogen_track_positions) SetSourcePosition(expr->position());
   VariableProxy* proxy = expr->target()->AsVariableProxy();
   Property* prop = expr->target()->AsProperty();
   ASSERT(proxy == NULL || prop == NULL);
@@ -7214,8 +7213,6 @@ void HOptimizedGraphBuilder::VisitProperty(Property* expr) {
   ASSERT(current_block() != NULL);
   ASSERT(current_block()->HasPredecessor());
 
-  if (!FLAG_hydrogen_track_positions) SetSourcePosition(expr->position());
-
   if (TryArgumentsAccess(expr)) return;
 
   CHECK_ALIVE(VisitForValue(expr->obj()));