do not emit empty postsets from js compiler for fastcomp output
This commit is contained in:
Родитель
74304761ff
Коммит
20e48678c8
|
@ -862,14 +862,6 @@ def emscript_fast(infile, settings, outfile, libraries=[], compiler_engine=None,
|
|||
if key in all_exported_functions or export_all or (export_bindings and key.startswith('_emscripten_bind')):
|
||||
exported_implemented_functions.add(key)
|
||||
|
||||
if settings.get('ASM_JS'):
|
||||
# move postsets into the asm module
|
||||
class PostSets: js = ''
|
||||
def handle_post_sets(m):
|
||||
PostSets.js = m.group(0)
|
||||
return '\n'
|
||||
pre = re.sub(r'function runPostSets[^}]+}', handle_post_sets, pre)
|
||||
|
||||
#if DEBUG: outfile.write('// pre\n')
|
||||
outfile.write(pre)
|
||||
pre = None
|
||||
|
@ -1105,7 +1097,7 @@ function setTempRet%d(value) {
|
|||
value = value|0;
|
||||
tempRet%d = value;
|
||||
}
|
||||
''' % (i, i) for i in range(10)])] + [PostSets.js + '\n'] + funcs_js + ['''
|
||||
''' % (i, i) for i in range(10)])] + funcs_js + ['''
|
||||
%s
|
||||
|
||||
return %s;
|
||||
|
|
|
@ -1747,11 +1747,13 @@ function JSify(data, functionsOnly, givenFunctions) {
|
|||
print('/* no memory initializer */'); // test purposes
|
||||
}
|
||||
|
||||
if (phase !== 'glue') {
|
||||
// Define postsets. These will be run in ATINIT, right before global initializers (which might need the postsets). We cannot
|
||||
// run them now because the memory initializer might not have been applied yet.
|
||||
print('function runPostSets() {\n');
|
||||
print(itemsDict.GlobalVariablePostSet.map(function(item) { return item.JS }).join('\n'));
|
||||
print('}\n');
|
||||
}
|
||||
|
||||
if (USE_TYPED_ARRAYS == 2) {
|
||||
if (!BUILD_AS_SHARED_LIB && !SIDE_MODULE) {
|
||||
|
|
Загрузка…
Ссылка в новой задаче