Introduce JERRY_DISABLE_HEAVY_DEBUG preprocessor definiton to speed up debug version of the engine.
Heavy debug is enabled only for unit tests. JerryScript-DCO-1.0-Signed-off-by: Andrey Shitov a.shitov@samsung.com
This commit is contained in:
@@ -84,15 +84,15 @@ jerry_assert_fail (const char *assertion, /**< assertion condition string */
|
||||
const char *function, /**< function name */
|
||||
const uint32_t line) /** line */
|
||||
{
|
||||
#ifndef JERRY_NDEBUG
|
||||
#if !defined (JERRY_NDEBUG) || !defined (JERRY_DISABLE_HEAVY_DEBUG)
|
||||
printf ("ICE: Assertion '%s' failed at %s(%s):%lu.\n",
|
||||
assertion, file, function, (unsigned long) line);
|
||||
#else /* !JERRY_NDEBUG */
|
||||
#else /* !JERRY_NDEBUG || !JERRY_DISABLE_HEAVY_DEBUG */
|
||||
(void) assertion;
|
||||
(void) file;
|
||||
(void) function;
|
||||
(void) line;
|
||||
#endif /* JERRY_NDEBUG */
|
||||
#endif /* JERRY_NDEBUG && JERRY_DISABLE_HEAVY_DEBUG */
|
||||
|
||||
jerry_fatal (ERR_FAILED_INTERNAL_ASSERTION);
|
||||
} /* jerry_assert_fail */
|
||||
|
||||
@@ -86,12 +86,12 @@ extern void __noreturn jerry_unreachable (const char *comment, const char *file,
|
||||
extern void __noreturn jerry_unimplemented (const char *comment, const char *file, const char *function,
|
||||
const uint32_t line);
|
||||
|
||||
#ifndef JERRY_NDEBUG
|
||||
#if !defined (JERRY_NDEBUG) || !defined (JERRY_DISABLE_HEAVY_DEBUG)
|
||||
#define JERRY_ASSERT(x) do { if (__builtin_expect (!(x), 0)) { \
|
||||
jerry_assert_fail (#x, __FILE__, __func__, __LINE__); } } while (0)
|
||||
#else /* !JERRY_NDEBUG */
|
||||
#else /* !JERRY_NDEBUG || !JERRY_DISABLE_HEAVY_DEBUG*/
|
||||
#define JERRY_ASSERT(x) do { if (false) { (void)(x); } } while (0)
|
||||
#endif /* !JERRY_NDEBUG */
|
||||
#endif /* JERRY_NDEBUG && JERRY_DISABLE_HEAVY_NEBUG */
|
||||
|
||||
#ifdef JERRY_ENABLE_LOG
|
||||
#define JERRY_LOG(lvl, ...) \
|
||||
|
||||
Reference in New Issue
Block a user