Follow-up refactoring of logging-related parts
This patch: * Ensures that all calls to `jerry_port_log` in jerry-core happen via macros defined in jrt.h. Also, it unifies the names of those macros: as `JERRY_ERROR_MSG` and `JERRY_WARNING_MSG` gave a good pattern that was well aligned with the naming scheme of the log level enum, `JERRY_DLOG` and `JERRY_DDLOG` were rewritten to `JERRY_DEBUG_MSG` and `JERRY_TRACE_MSG`. * Ensures that all debug logging code parts of jerry-core (i.e., memory statistics, JS byte-code dumps, and RegExp byte-code dumps) are guarded by macros: `JMEM_STATS`, `PARSER_DUMP_BYTE_CODE`, and `REGEXP_DUMP_BYTE_CODE`, which in turn are controled by cmake build system feature flags `FEATURE_MEM_STATS`, `FEATURE_PARSER_DUMP`, and `FEATURE_REGEXP_DUMP`. * Ensures that all debug logging functionalities can be controled during run time (provided that they were enabled during build time): the engine has `JERRY_INIT_MEM_STATS[_SEPARATE]`, `JERRY_INIT_SHOW_OPCODES`, `JERRY_INIT_SHOW_REGEXP_OPCODES` init flags, and the default unix/linux command line app has corresponding command line switches.` * Drops `FEATURE_LOG`, `JERRY_ENABLE_LOG`, and `JERRY_INIT_ENABLE_LOG`, as their name was misleadingly general, even though they mostly controled the regexp engine only. The above-mentioned `*REGEXP*` things mostly act as their replacements. * Updates build, test, and measurement tool scripts, and documentation. JerryScript-DCO-1.0-Signed-off-by: Akos Kiss akiss@inf.u-szeged.hu
This commit is contained in:
+5
-3
@@ -40,10 +40,11 @@ def add_build_args(parser):
|
||||
parser.add_argument('--lto', choices=['on', 'off'], default='on', help='Enable link-time optimizations (default: %(default)s)')
|
||||
parser.add_argument('--profile', choices=['full', 'minimal'], default='full', help='Specify the profile (default: %(default)s)')
|
||||
parser.add_argument('--error-messages', choices=['on', 'off'], default='off', help='Enable error messages (default: %(default)s)')
|
||||
parser.add_argument('--log', choices=['on', 'off'], default='off', help='Enable logging (default: %(default)s)')
|
||||
parser.add_argument('--valgrind', choices=['on', 'off'], default='off', help='Enable Valgrind support (default: %(default)s)')
|
||||
parser.add_argument('--valgrind-freya', choices=['on', 'off'], default='off', help='Enable Valgrind-Freya support (default: %(default)s)')
|
||||
parser.add_argument('--mem-stats', choices=['on', 'off'], default='off', help='Enable memory-statistics (default: %(default)s)')
|
||||
parser.add_argument('--show-opcodes', choices=['on', 'off'], default='off', help='Enable parser byte-code dumps (default: %(default)s)')
|
||||
parser.add_argument('--show-regexp-opcodes', choices=['on', 'off'], default='off', help='Enable regexp byte-code dumps (default: %(default)s)')
|
||||
parser.add_argument('--mem-stats', choices=['on', 'off'], default='off', help='Enable memory statistics (default: %(default)s)')
|
||||
parser.add_argument('--mem-stress-test', choices=['on', 'off'], default='off', help='Enable mem-stress test (default: %(default)s)')
|
||||
parser.add_argument('--snapshot-save', choices=['on', 'off'], default='on', help='Allow to save snapshot files (default: %(default)s)')
|
||||
parser.add_argument('--snapshot-exec', choices=['on', 'off'], default='on', help='Allow to execute snapshot files (default: %(default)s)')
|
||||
@@ -75,9 +76,10 @@ def generate_build_options(arguments):
|
||||
build_options.append('-DCMAKE_BUILD_TYPE=%s' % arguments.build_type)
|
||||
build_options.append('-DFEATURE_PROFILE=%s' % arguments.profile)
|
||||
build_options.append('-DFEATURE_ERROR_MESSAGES=%s' % arguments.error_messages.upper())
|
||||
build_options.append('-DFEATURE_LOG=%s' % arguments.log.upper())
|
||||
build_options.append('-DFEATURE_VALGRIND=%s' % arguments.valgrind.upper())
|
||||
build_options.append('-DFEATURE_VALGRIND_FREYA=%s' % arguments.valgrind_freya.upper())
|
||||
build_options.append('-DFEATURE_PARSER_DUMP=%s' % arguments.show_opcodes.upper())
|
||||
build_options.append('-DFEATURE_REGEXP_DUMP=%s' % arguments.show_regexp_opcodes.upper())
|
||||
build_options.append('-DFEATURE_MEM_STATS=%s' % arguments.mem_stats.upper())
|
||||
build_options.append('-DFEATURE_MEM_STRESS_TEST=%s' % arguments.mem_stress_test.upper())
|
||||
build_options.append('-DFEATURE_SNAPSHOT_SAVE=%s' % arguments.snapshot_save.upper())
|
||||
|
||||
@@ -43,7 +43,7 @@ function is_mem_stats_build
|
||||
[ -x "$1" ] || fail_msg "Engine '$1' is not executable"
|
||||
|
||||
tmpfile=`mktemp`
|
||||
"$1" --mem-stats $tmpfile 2>&1 | grep -- "Ignoring memory statistics option because of '!JMEM_STATS' build configuration." 2>&1 > /dev/null
|
||||
"$1" --mem-stats $tmpfile 2>&1 | grep -- "Ignoring JERRY_INIT_MEM_STATS flag because of !JMEM_STATS configuration." 2>&1 > /dev/null
|
||||
code=$?
|
||||
rm $tmpfile
|
||||
|
||||
|
||||
@@ -32,7 +32,7 @@ function is_mem_stats_build() {
|
||||
[ -x "$1" ] || fail_msg "Engine '$1' is not executable"
|
||||
|
||||
tmpfile=`mktemp`
|
||||
"$1" --mem-stats $tmpfile 2>&1 | grep -- "Ignoring memory statistics option because of '!JMEM_STATS' build configuration." 2>&1 > /dev/null
|
||||
"$1" --mem-stats $tmpfile 2>&1 | grep -- "Ignoring JERRY_INIT_MEM_STATS flag because of !JMEM_STATS configuration." 2>&1 > /dev/null
|
||||
code=$?
|
||||
rm $tmpfile
|
||||
|
||||
|
||||
+3
-1
@@ -80,11 +80,13 @@ jerry_test_suite_options.append(Options('jerry_test_suite-minimal-debug-snapshot
|
||||
# Test options for buildoption-test
|
||||
jerry_buildoptions = [
|
||||
Options('buildoption_test-lto', ['--lto=on']),
|
||||
Options('buildoption_test-log', ['--log=on']),
|
||||
Options('buildoption_test-error_messages', ['--error-messages=on']),
|
||||
Options('buildoption_test-all_in_one', ['--all-in-one=on']),
|
||||
Options('buildoption_test-valgrind', ['--valgrind=on']),
|
||||
Options('buildoption_test-valgrind_freya', ['--valgrind-freya=on']),
|
||||
Options('buildoption_test-mem_stats', ['--mem-stats=on']),
|
||||
Options('buildoption_test-show_opcodes', ['--show-opcodes=on']),
|
||||
Options('buildoption_test-show_regexp_opcodes', ['--show-regexp-opcodes=on']),
|
||||
Options('buildoption_test-jerry_libc', ['--jerry-libc=on', '--compiler-default-libc=off']),
|
||||
Options('buildoption_test-compiler_default_libc', ['--compiler-default-libc=on', '--jerry-libc=off']),
|
||||
]
|
||||
|
||||
Reference in New Issue
Block a user