aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJukka Jylänki <jujjyl@gmail.com>2013-12-20 11:35:06 +0200
committerJukka Jylänki <jujjyl@gmail.com>2013-12-20 11:49:36 +0200
commiteb27ff87ae15d0dd9855b06a055b590235d8c3a6 (patch)
tree8980faa8ea79c816b815da9fa888843236615074
parent55660c394d5f3db2d57984256dd6c3cce088e4c5 (diff)
Move emscripten-source-map.min.js to src/ since it is a non-tests file needed by public use when user wants to emscripten_log with a C callstack. Remove redundant emscripten_demangle function.
-rw-r--r--src/emscripten-source-map.min.js (renamed from tests/emscripten_log/emscripten-source-map.min.js)0
-rw-r--r--src/library.js14
-rw-r--r--tests/test_browser.py2
3 files changed, 5 insertions, 11 deletions
diff --git a/tests/emscripten_log/emscripten-source-map.min.js b/src/emscripten-source-map.min.js
index 9151400f..9151400f 100644
--- a/tests/emscripten_log/emscripten-source-map.min.js
+++ b/src/emscripten-source-map.min.js
diff --git a/src/library.js b/src/library.js
index 3a56df06..fc731e01 100644
--- a/src/library.js
+++ b/src/library.js
@@ -8835,12 +8835,6 @@ LibraryManager.library = {
}
},
- // Returns the given mangled C++ function name demangled to a readable form, or an empty string if the given string could not be demangled.
- // E.g. "_Z3foov" -> "foo()".
- emscripten_demangle: function(functionname) {
- return demangle(functionname);
- },
-
// Returns [parentFuncArguments, functionName, paramListName]
_emscripten_traverse_stack: function(args) {
if (!args || !args.callee || !args.callee.name) {
@@ -8870,7 +8864,7 @@ LibraryManager.library = {
return [args, funcname, str];
},
- emscripten_get_callstack_js__deps: ['emscripten_demangle', '_emscripten_traverse_stack'],
+ emscripten_get_callstack_js__deps: ['_emscripten_traverse_stack'],
emscripten_get_callstack_js: function(flags) {
var err = new Error();
if (!err.stack) {
@@ -8887,7 +8881,7 @@ LibraryManager.library = {
// If user requested to see the original source stack, but no source map information is available, just fall back to showing the JS stack.
if (flags & 8/*EM_LOG_C_STACK*/ && typeof emscripten_source_map === 'undefined') {
- Runtime.warnOnce('Source map information is not available, emscripten_log with EM_LOG_C_STACK will be ignored.');
+ Runtime.warnOnce('Source map information is not available, emscripten_log with EM_LOG_C_STACK will be ignored. Build with "--pre-js $EMSCRIPTEN/src/emscripten-source-map.min.js" linker flag to add source map loading to code.');
flags ^= 8/*EM_LOG_C_STACK*/;
flags |= 16/*EM_LOG_JS_STACK*/;
}
@@ -8926,7 +8920,7 @@ LibraryManager.library = {
jsSymbolName = parts[1];
file = parts[2];
lineno = parts[3];
- column = 0; // Firefox doesn't carry column information.
+ column = 0; // Firefox doesn't carry column information. See https://bugzilla.mozilla.org/show_bug.cgi?id=762556
} else {
// Was not able to extract this line for demangling/sourcemapping purposes. Output it as-is.
callstack += line + '\n';
@@ -8935,7 +8929,7 @@ LibraryManager.library = {
}
// Try to demangle the symbol, but fall back to showing the original JS symbol name if not available.
- var cSymbolName = (flags & 32/*EM_LOG_DEMANGLE*/) ? _emscripten_demangle(jsSymbolName) : jsSymbolName;
+ var cSymbolName = (flags & 32/*EM_LOG_DEMANGLE*/) ? demangle(jsSymbolName) : jsSymbolName;
if (!cSymbolName) {
cSymbolName = jsSymbolName;
}
diff --git a/tests/test_browser.py b/tests/test_browser.py
index c3de1861..999c5e9b 100644
--- a/tests/test_browser.py
+++ b/tests/test_browser.py
@@ -123,7 +123,7 @@ If manually bisecting:
src = os.path.join(self.get_dir(), 'src.cpp')
open(src, 'w').write(self.with_report_result(open(path_from_root('tests', 'emscripten_log', 'emscripten_log.cpp')).read()))
- Popen([PYTHON, EMCC, src, '--pre-js', path_from_root('tests', 'emscripten_log', 'emscripten-source-map.min.js'), '-g', '-o', 'page.html']).communicate()
+ Popen([PYTHON, EMCC, src, '--pre-js', path_from_root('src', 'emscripten-source-map.min.js'), '-g', '-o', 'page.html']).communicate()
self.run_browser('page.html', None, '/report_result?1')
def build_native_lzma(self):