Commit 6f83ad58 authored by sgjesse@chromium.org's avatar sgjesse@chromium.org

Compile without debugger support in debug mode

This makes it possible to build V8 without JavaScript debugging support in debug mode.

BUG=http://code.google.com/p/v8/issues/detail?id=454
Review URL: http://codereview.chromium.org/242048

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2983 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
parent 5a2aa8ee
...@@ -2543,10 +2543,12 @@ void CodeGenerator::GenerateReturnSequence(Result* return_value) { ...@@ -2543,10 +2543,12 @@ void CodeGenerator::GenerateReturnSequence(Result* return_value) {
masm_->ret((scope_->num_parameters() + 1) * kPointerSize); masm_->ret((scope_->num_parameters() + 1) * kPointerSize);
DeleteFrame(); DeleteFrame();
#ifdef ENABLE_DEBUGGER_SUPPORT
// Check that the size of the code used for returning matches what is // Check that the size of the code used for returning matches what is
// expected by the debugger. // expected by the debugger.
ASSERT_EQ(Debug::kIa32JSReturnSequenceLength, ASSERT_EQ(Debug::kIa32JSReturnSequenceLength,
masm_->SizeOfCodeGeneratedSince(&check_exit_codesize)); masm_->SizeOfCodeGeneratedSince(&check_exit_codesize));
#endif
} }
......
...@@ -211,7 +211,7 @@ enum PropertyNormalizationMode { ...@@ -211,7 +211,7 @@ enum PropertyNormalizationMode {
// NOTE: Everything following JS_VALUE_TYPE is considered a // NOTE: Everything following JS_VALUE_TYPE is considered a
// JSObject for GC purposes. The first four entries here have typeof // JSObject for GC purposes. The first four entries here have typeof
// 'object', whereas JS_FUNCTION_TYPE has typeof 'function'. // 'object', whereas JS_FUNCTION_TYPE has typeof 'function'.
#define INSTANCE_TYPE_LIST(V) \ #define INSTANCE_TYPE_LIST_ALL(V) \
V(SHORT_SYMBOL_TYPE) \ V(SHORT_SYMBOL_TYPE) \
V(MEDIUM_SYMBOL_TYPE) \ V(MEDIUM_SYMBOL_TYPE) \
V(LONG_SYMBOL_TYPE) \ V(LONG_SYMBOL_TYPE) \
...@@ -282,8 +282,6 @@ enum PropertyNormalizationMode { ...@@ -282,8 +282,6 @@ enum PropertyNormalizationMode {
V(OBJECT_TEMPLATE_INFO_TYPE) \ V(OBJECT_TEMPLATE_INFO_TYPE) \
V(SIGNATURE_INFO_TYPE) \ V(SIGNATURE_INFO_TYPE) \
V(TYPE_SWITCH_INFO_TYPE) \ V(TYPE_SWITCH_INFO_TYPE) \
V(DEBUG_INFO_TYPE) \
V(BREAK_POINT_INFO_TYPE) \
V(SCRIPT_TYPE) \ V(SCRIPT_TYPE) \
\ \
V(JS_VALUE_TYPE) \ V(JS_VALUE_TYPE) \
...@@ -297,6 +295,17 @@ enum PropertyNormalizationMode { ...@@ -297,6 +295,17 @@ enum PropertyNormalizationMode {
\ \
V(JS_FUNCTION_TYPE) \ V(JS_FUNCTION_TYPE) \
#ifdef ENABLE_DEBUGGER_SUPPORT
#define INSTANCE_TYPE_LIST_DEBUGGER(V) \
V(DEBUG_INFO_TYPE) \
V(BREAK_POINT_INFO_TYPE)
#else
#define INSTANCE_TYPE_LIST_DEBUGGER(V)
#endif
#define INSTANCE_TYPE_LIST(V) \
INSTANCE_TYPE_LIST_ALL(V) \
INSTANCE_TYPE_LIST_DEBUGGER(V)
// Since string types are not consecutive, this macro is used to // Since string types are not consecutive, this macro is used to
...@@ -673,8 +682,10 @@ enum InstanceType { ...@@ -673,8 +682,10 @@ enum InstanceType {
OBJECT_TEMPLATE_INFO_TYPE, OBJECT_TEMPLATE_INFO_TYPE,
SIGNATURE_INFO_TYPE, SIGNATURE_INFO_TYPE,
TYPE_SWITCH_INFO_TYPE, TYPE_SWITCH_INFO_TYPE,
#ifdef ENABLE_DEBUGGER_SUPPORT
DEBUG_INFO_TYPE, DEBUG_INFO_TYPE,
BREAK_POINT_INFO_TYPE, BREAK_POINT_INFO_TYPE,
#endif
SCRIPT_TYPE, SCRIPT_TYPE,
JS_VALUE_TYPE, JS_VALUE_TYPE,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment