|
24 | 24 | from tools import shared, building
|
25 | 25 | from runner import RunnerCore, path_from_root, requires_native_clang
|
26 | 26 | from runner import skip_if, no_wasm_backend, needs_dlfcn, no_windows, is_slow_test, create_test_file, parameterized
|
27 |
| -from runner import js_engines_modify, wasm_engines_modify, env_modify, with_env_modify |
| 27 | +from runner import js_engines_modify, wasm_engines_modify, env_modify, with_env_modify, disabled |
28 | 28 | from runner import NON_ZERO
|
29 | 29 | import clang_native
|
30 | 30 |
|
@@ -104,14 +104,6 @@ def metafunc(self, native_exceptions):
|
104 | 104 | return metafunc
|
105 | 105 |
|
106 | 106 |
|
107 |
| -def no_wasm(note=''): |
108 |
| - assert not callable(note) |
109 |
| - |
110 |
| - def decorated(f): |
111 |
| - return skip_if(f, 'is_wasm', note) |
112 |
| - return decorated |
113 |
| - |
114 |
| - |
115 | 107 | def no_wasm2js(note=''):
|
116 | 108 | assert not callable(note)
|
117 | 109 |
|
@@ -2721,7 +2713,7 @@ def test_dlfcn_i64(self):
|
2721 | 2713 | self.do_run(src, '|65830|')
|
2722 | 2714 |
|
2723 | 2715 | @needs_dlfcn
|
2724 |
| - @no_wasm('EM_ASM in shared wasm modules, stored inside the wasm somehow') |
| 2716 | + @disabled('EM_ASM in not yet supported in SIDE_MODULE') |
2725 | 2717 | def test_dlfcn_em_asm(self):
|
2726 | 2718 | self.prep_dlfcn_lib()
|
2727 | 2719 | create_test_file('liblib.cpp', '''
|
@@ -3767,76 +3759,6 @@ def test_dylink_static_funcpointers(self):
|
3767 | 3759 | expected='hello 0\nhello 1\nhello 2\n',
|
3768 | 3760 | header='typedef void (*voidfunc)(); void sidey(voidfunc f);', force_c=True)
|
3769 | 3761 |
|
3770 |
| - @no_wasm('uses function tables in an asm.js specific way') |
3771 |
| - @needs_dlfcn |
3772 |
| - def test_dylink_asmjs_funcpointers(self): |
3773 |
| - self.dylink_test( |
3774 |
| - main=r''' |
3775 |
| - #include "header.h" |
3776 |
| - #include <emscripten.h> |
3777 |
| - void left1() { printf("left1\n"); } |
3778 |
| - void left2() { printf("left2\n"); } |
3779 |
| - voidfunc getleft1() { return left1; } |
3780 |
| - voidfunc getleft2() { return left2; } |
3781 |
| - int main(int argc, char **argv) { |
3782 |
| - printf("main\n"); |
3783 |
| - EM_ASM({ |
3784 |
| - // make the function table sizes a non-power-of-two |
3785 |
| - var newSize = alignFunctionTables(); |
3786 |
| - //out('old size of function tables: ' + newSize); |
3787 |
| - while ((newSize & 3) !== 3) { |
3788 |
| - Module['FUNCTION_TABLE_v'].push(0); |
3789 |
| - newSize = alignFunctionTables(); |
3790 |
| - } |
3791 |
| - //out('new size of function tables: ' + newSize); |
3792 |
| - // when masked, the two function pointers 1 and 2 should not happen to fall back to the right place |
3793 |
| - assert(((newSize+1) & 3) !== 1 || ((newSize+2) & 3) !== 2); |
3794 |
| - loadDynamicLibrary('liblib.so'); |
3795 |
| - }); |
3796 |
| - volatilevoidfunc f; |
3797 |
| - f = (volatilevoidfunc)left1; |
3798 |
| - f(); |
3799 |
| - f = (volatilevoidfunc)left2; |
3800 |
| - f(); |
3801 |
| - f = (volatilevoidfunc)getright1(); |
3802 |
| - f(); |
3803 |
| - f = (volatilevoidfunc)getright2(); |
3804 |
| - f(); |
3805 |
| - second(); |
3806 |
| - return 0; |
3807 |
| - } |
3808 |
| - ''', |
3809 |
| - side=r''' |
3810 |
| - #include "header.h" |
3811 |
| - void right1() { printf("right1\n"); } |
3812 |
| - void right2() { printf("right2\n"); } |
3813 |
| - voidfunc getright1() { return right1; } |
3814 |
| - voidfunc getright2() { return right2; } |
3815 |
| - void second() { |
3816 |
| - printf("second\n"); |
3817 |
| - volatilevoidfunc f; |
3818 |
| - f = (volatilevoidfunc)getleft1(); |
3819 |
| - f(); |
3820 |
| - f = (volatilevoidfunc)getleft2(); |
3821 |
| - f(); |
3822 |
| - f = (volatilevoidfunc)right1; |
3823 |
| - f(); |
3824 |
| - f = (volatilevoidfunc)right2; |
3825 |
| - f(); |
3826 |
| - } |
3827 |
| - ''', |
3828 |
| - expected='main\nleft1\nleft2\nright1\nright2\nsecond\nleft1\nleft2\nright1\nright2\n', |
3829 |
| - header=''' |
3830 |
| - #include <stdio.h> |
3831 |
| - typedef void (*voidfunc)(); |
3832 |
| - typedef volatile voidfunc volatilevoidfunc; |
3833 |
| - voidfunc getleft1(); |
3834 |
| - voidfunc getleft2(); |
3835 |
| - voidfunc getright1(); |
3836 |
| - voidfunc getright2(); |
3837 |
| - void second(); |
3838 |
| - ''', need_reverse=False, auto_load=False, force_c=True) |
3839 |
| - |
3840 | 3762 | @needs_dlfcn
|
3841 | 3763 | def test_dylink_funcpointers_wrapper(self):
|
3842 | 3764 | self.dylink_test(
|
@@ -7264,7 +7186,7 @@ def post(filename):
|
7264 | 7186 |
|
7265 | 7187 | self.do_run_in_out_file_test('tests', 'core', 'modularize_closure_pre.c', post_build=post)
|
7266 | 7188 |
|
7267 |
| - @no_wasm2js('source maps support') |
| 7189 | + @no_wasm2js('symbol names look different wasm2js backtraces') |
7268 | 7190 | def test_emscripten_log(self):
|
7269 | 7191 | self.banned_js_engines = [V8_ENGINE] # v8 doesn't support console.log
|
7270 | 7192 | self.emcc_args += ['-s', 'DEMANGLE_SUPPORT=1']
|
|
0 commit comments