In release, disable UNREACHABLE and make UNIMPLEMENTED and FATAL simpler, removing...
authordeanm@chromium.org <deanm@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Mon, 22 Sep 2008 09:22:18 +0000 (09:22 +0000)
committerdeanm@chromium.org <deanm@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Mon, 22 Sep 2008 09:22:18 +0000 (09:22 +0000)
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@353 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

src/checks.h

index 3908ab4c3ed69c622510e93f9c8f8c4c42aab24a..020f1294ea711e92cd4e3b86717971343bacfbbd 100644 (file)
@@ -37,14 +37,20 @@ void API_Fatal(const char* location, const char* format, ...);
 
 // The FATAL, UNREACHABLE and UNIMPLEMENTED macros are useful during
 // development, but they should not be relied on in the final product.
+#ifdef DEBUG
 #define FATAL(msg)                              \
   V8_Fatal(__FILE__, __LINE__, "%s", (msg))
-
+#define UNIMPLEMENTED()                         \
+  V8_Fatal(__FILE__, __LINE__, "unimplemented code")
 #define UNREACHABLE()                           \
   V8_Fatal(__FILE__, __LINE__, "unreachable code")
-
+#else
+#define FATAL(msg)                              \
+  V8_Fatal("", 0, "%s", (msg))
 #define UNIMPLEMENTED()                         \
-  V8_Fatal(__FILE__, __LINE__, "unimplemented code")
+  V8_Fatal("", 0, "unimplemented code")
+#define UNREACHABLE() ((void) 0)
+#endif
 
 
 // Used by the CHECK macro -- should not be called directly.