Reviewers: Sven Panne,

Description:
line up crashing with chrome

[email protected]
BUG=

Please review this at https://codereview.chromium.org/23868025/

SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge

Affected files (+10, -5 lines):
  M src/flag-definitions.h
  M src/platform-posix.cc
  M src/platform-win32.cc
  M src/platform.h


Index: src/flag-definitions.h
diff --git a/src/flag-definitions.h b/src/flag-definitions.h
index cc153af2542dfca612c4e12c579318931190acbd..8e77ac809e30b72c6d6f6037d62898932e268191 100644
--- a/src/flag-definitions.h
+++ b/src/flag-definitions.h
@@ -473,7 +473,7 @@ DEFINE_bool(debugger_auto_break, true,
"automatically set the debug break flag when debugger commands are "
             "in the queue")
 DEFINE_bool(enable_liveedit, true, "enable liveedit experimental feature")
-DEFINE_bool(break_on_abort, true, "always cause a debug break before aborting") +DEFINE_bool(break_on_abort, false, "always cause a debug break before aborting")

 // execution.cc
 // Slightly less than 1MB on 64-bit, since Windows' default stack size for
Index: src/platform-posix.cc
diff --git a/src/platform-posix.cc b/src/platform-posix.cc
index fe27eaf71f437fcc099ffdebb8e24f60c999921f..69303bfd80ce42278c830edfbd919d7391b83cb3 100644
--- a/src/platform-posix.cc
+++ b/src/platform-posix.cc
@@ -222,7 +222,7 @@ void OS::Abort() {
   if (FLAG_break_on_abort) {
     DebugBreak();
   }
-  abort();
+  V8_IMMEDIATE_CRASH();
 }


Index: src/platform-win32.cc
diff --git a/src/platform-win32.cc b/src/platform-win32.cc
index 073b21a011aae732b7db5dc15ca3b18c85e3858b..7a90920a88b1809748eef69497c8434f80a0b402 100644
--- a/src/platform-win32.cc
+++ b/src/platform-win32.cc
@@ -872,10 +872,8 @@ void OS::Sleep(int milliseconds) {
 void OS::Abort() {
   if (IsDebuggerPresent() || FLAG_break_on_abort) {
     DebugBreak();
-  } else {
-    // Make the MSVCRT do a silent abort.
-    raise(SIGABRT);
   }
+  V8_IMMEDIATE_CRASH();
 }


Index: src/platform.h
diff --git a/src/platform.h b/src/platform.h
index aa50cb4c7230f4dcfa9768faaddb0a4ed80e0b30..13c126bf42312ec8a5708a2ebcfe5fc670531457 100644
--- a/src/platform.h
+++ b/src/platform.h
@@ -51,6 +51,13 @@
 #include "utils.h"
 #include "v8globals.h"

+// This is lined up with blink's method of crashing.
+#if defined(__GNUC__)
+#define V8_IMMEDIATE_CRASH() __builtin_trap()
+#else
+#define V8_IMMEDIATE_CRASH() ((void(*)())0)()
+#endif
+
 #ifdef __sun
 # ifndef signbit
 namespace std {


--
--
v8-dev mailing list
[email protected]
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 [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to