Revision: 22375
Author: yang...@chromium.org
Date: Mon Jul 14 13:13:41 2014 UTC
Log: Version 3.27.34.6 (merged r22029)
Compile optimized code with active debugger but no break points.
BUG=386492
LOG=N
R=machenb...@chromium.org
Review URL: https://codereview.chromium.org/388233002
http://code.google.com/p/v8/source/detail?r=22375
Added:
/branches/3.27/test/mjsunit/debug-compile-optimized.js
Modified:
/branches/3.27/src/codegen.cc
/branches/3.27/src/compiler.cc
/branches/3.27/src/objects.h
/branches/3.27/src/version.cc
/branches/3.27/test/cctest/cctest.status
=======================================
--- /dev/null
+++ /branches/3.27/test/mjsunit/debug-compile-optimized.js Mon Jul 14
13:13:41 2014 UTC
@@ -0,0 +1,18 @@
+// Copyright 2014 the V8 project authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// Flags: --expose-debug-as debug --allow-natives-syntax --crankshaft
+
+Debug = debug.Debug;
+
+Debug.setListener(function() {});
+
+function f() {}
+f();
+f();
+%OptimizeFunctionOnNextCall(f);
+f();
+assertOptimized(f);
+
+Debug.setListener(null);
=======================================
--- /branches/3.27/src/codegen.cc Wed Jun 4 00:06:13 2014 UTC
+++ /branches/3.27/src/codegen.cc Mon Jul 14 13:13:41 2014 UTC
@@ -151,7 +151,7 @@
isolate->factory()->NewCode(desc, flags, masm->CodeObject(),
false, is_crankshafted,
info->prologue_offset(),
- info->is_debug());
+ info->is_debug() && !is_crankshafted);
isolate->counters()->total_compiled_code_size()->Increment(
code->instruction_size());
isolate->heap()->IncrementCodeGeneratedBytes(is_crankshafted,
=======================================
--- /branches/3.27/src/compiler.cc Wed Jun 18 14:15:57 2014 UTC
+++ /branches/3.27/src/compiler.cc Mon Jul 14 13:13:41 2014 UTC
@@ -297,8 +297,10 @@
// generated code for this from the shared function object.
if (FLAG_always_full_compiler) return AbortOptimization();
- // Do not use crankshaft if compiling for debugging.
- if (info()->is_debug()) return AbortOptimization(kDebuggerIsActive);
+ // Do not use crankshaft if we need to be able to set break points.
+ if (isolate()->DebuggerHasBreakPoints()) {
+ return AbortOptimization(kDebuggerHasBreakPoints);
+ }
// Limit the number of times we re-compile a functions with
// the optimizing compiler.
=======================================
--- /branches/3.27/src/objects.h Wed Jun 18 14:15:57 2014 UTC
+++ /branches/3.27/src/objects.h Mon Jul 14 13:13:41 2014 UTC
@@ -1036,7 +1036,7 @@
V(kCopyBuffersOverlap, "Copy buffers
overlap") \
V(kCouldNotGenerateZero, "Could not generate
+0.0") \
V(kCouldNotGenerateNegativeZero, "Could not generate
-0.0") \
- V(kDebuggerIsActive, "Debugger is
active") \
+ V(kDebuggerHasBreakPoints, "Debugger has break
points") \
V(kDebuggerStatement, "DebuggerStatement")
\
V(kDeclarationInCatchContext, "Declaration in catch
context") \
V(kDeclarationInWithContext, "Declaration in with
context") \
=======================================
--- /branches/3.27/src/version.cc Tue Jul 8 08:50:03 2014 UTC
+++ /branches/3.27/src/version.cc Mon Jul 14 13:13:41 2014 UTC
@@ -35,7 +35,7 @@
#define MAJOR_VERSION 3
#define MINOR_VERSION 27
#define BUILD_NUMBER 34
-#define PATCH_LEVEL 5
+#define PATCH_LEVEL 6
// Use 1 for candidates and 0 otherwise.
// (Boolean macro values are not supported by all preprocessors.)
#define IS_CANDIDATE_VERSION 0
=======================================
--- /branches/3.27/test/cctest/cctest.status Wed Jun 11 00:05:05 2014 UTC
+++ /branches/3.27/test/cctest/cctest.status Mon Jul 14 13:13:41 2014 UTC
@@ -75,6 +75,9 @@
# BUG(3287). (test-cpu-profiler/SampleWhenFrameIsNotSetup)
'test-cpu-profiler/*': [PASS, FLAKY],
+ # BUG(crbug/386492). This will be fixed by r22029.
+ 'test-debug/ThreadedDebugging': [PASS, FAIL],
+
############################################################################
# Slow tests.
'test-api/Threading1': [PASS, ['mode == debug', SLOW]],
--
--
v8-dev mailing list
v8-dev@googlegroups.com
http://groups.google.com/group/v8-dev
---
You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to v8-dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.