test fixes, and fail on trying to use q1 with libcxx
This commit is contained in:
Родитель
ab3fa5aedb
Коммит
3f87ba46fc
2
emcc
2
emcc
|
@ -86,6 +86,7 @@ LEAVE_INPUTS_RAW = os.environ.get('EMCC_LEAVE_INPUTS_RAW') # Do not compile .ll
|
|||
# added in. Also, LLVM optimizations will not be done, nor dead code elimination
|
||||
|
||||
if DEBUG: print >> sys.stderr, 'emcc: ', ' '.join(sys.argv)
|
||||
if DEBUG and LEAVE_INPUTS_RAW: print >> sys.stderr, 'emcc: leaving inputs raw'
|
||||
|
||||
shared.check_sanity()
|
||||
|
||||
|
@ -477,6 +478,7 @@ try:
|
|||
shared.Building.build_library('libcxx', shared.EMSCRIPTEN_TEMP_DIR, shared.EMSCRIPTEN_TEMP_DIR, ['libcxx.bc'], configure=None, copy_project=True, source_dir=shared.path_from_root('system', 'lib', 'libcxx'))
|
||||
return os.path.join(shared.EMSCRIPTEN_TEMP_DIR, 'libcxx', 'libcxx.bc')
|
||||
def fix_libcxx():
|
||||
assert shared.Settings.QUANTUM_SIZE == 4, 'We do not support libc++ with QUANTUM_SIZE == 1'
|
||||
# libcxx might need corrections, so turn them all on. TODO: check which are actually needed
|
||||
shared.Settings.CORRECT_SIGNS = shared.Settings.CORRECT_OVERFLOWS = shared.Settings.CORRECT_ROUNDINGS = 1
|
||||
print >> sys.stderr, 'emcc: warning: using libcxx turns on CORRECT_* options'
|
||||
|
|
|
@ -1167,6 +1167,8 @@ if 'benchmark' not in str(sys.argv) and 'sanity' not in str(sys.argv):
|
|||
self.do_run(src, 'Assertion failed: 1 == false')
|
||||
|
||||
def test_exceptions(self):
|
||||
if Settings.QUANTUM_SIZE == 1: return self.skip("we don't support libcxx in q1")
|
||||
|
||||
self.banned_js_engines = [NODE_JS] # node issue 1669, exception causes stdout not to be flushed
|
||||
Settings.DISABLE_EXCEPTION_CATCHING = 0
|
||||
if self.emcc_args is None: self.emcc_args = [] # libc++ auto-inclusion is only done if we use emcc
|
||||
|
@ -3868,7 +3870,11 @@ def process(filename):
|
|||
# libc++ tests
|
||||
|
||||
def test_iostream(self):
|
||||
if self.emcc_args is None: self.emcc_args = [] # libc++ auto-inclusion is only done if we use emcc
|
||||
if Settings.QUANTUM_SIZE == 1: return self.skip("we don't support libcxx in q1")
|
||||
|
||||
if self.emcc_args is None:
|
||||
self.emcc_args = [] # libc++ auto-inclusion is only done if we use emcc
|
||||
Settings.SAFE_HEAP = 0 # Some spurious warnings from libc++ internals
|
||||
|
||||
src = '''
|
||||
#include <iostream>
|
||||
|
|
Загрузка…
Ссылка в новой задаче