aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2014-01-13 16:54:38 -0800
committerAlon Zakai <alonzakai@gmail.com>2014-01-13 16:54:38 -0800
commit2914deb17f3857bb02eeec87a58a3ed6d4a8853a (patch)
tree5425d058e199bade4f43cf0dc526a52f4b556b71
parent7844db37f5b6dce1e7772f955ff606ef806ae032 (diff)
parentee4a2df911e834285aed9148eb4cab4546c8a063 (diff)
Merge pull request #2004 from waywardmonkeys/updates
Updates
-rwxr-xr-xemcc58
-rw-r--r--src/jsifier.js3
-rw-r--r--src/library.js11
-rw-r--r--src/parseTools.js7
-rw-r--r--system/include/libcxx/__config22
-rw-r--r--system/include/libcxx/__undef_min_max6
-rw-r--r--system/include/libcxx/experimental/dynarray (renamed from system/include/libcxx/dynarray)13
-rw-r--r--system/include/libcxx/experimental/optional (renamed from system/include/libcxx/optional)20
-rw-r--r--system/include/libcxx/ext/__hash2
-rw-r--r--system/include/libcxx/iomanip4
-rw-r--r--system/include/libcxx/memory39
-rw-r--r--system/include/libcxx/new6
-rw-r--r--system/include/libcxx/readme.txt2
-rw-r--r--system/include/libcxx/support/ibm/support.h2
-rw-r--r--system/include/libcxx/support/win32/locale_win32.h2
-rw-r--r--system/include/libcxx/support/win32/support.h1
-rw-r--r--system/include/libcxx/type_traits4
-rw-r--r--system/include/libcxx/utility4
-rw-r--r--system/lib/libc.symbols31
-rw-r--r--system/lib/libc/musl/src/internal/floatscan.c496
-rw-r--r--system/lib/libc/musl/src/internal/floatscan.h8
-rw-r--r--system/lib/libc/musl/src/internal/intscan.c99
-rw-r--r--system/lib/libc/musl/src/internal/intscan.h8
-rw-r--r--system/lib/libc/musl/src/internal/libm.h169
-rw-r--r--system/lib/libc/musl/src/internal/shgetc.c27
-rw-r--r--system/lib/libc/musl/src/internal/shgetc.h9
-rw-r--r--system/lib/libc/musl/src/locale/strcasecmp_l.c7
-rw-r--r--system/lib/libc/musl/src/locale/strncasecmp_l.c7
-rw-r--r--system/lib/libc/musl/src/math/__cosdf.c35
-rw-r--r--system/lib/libc/musl/src/math/__sindf.c36
-rw-r--r--system/lib/libc/musl/src/math/ilogb.c26
-rw-r--r--system/lib/libc/musl/src/math/ilogbf.c26
-rw-r--r--system/lib/libc/musl/src/math/ilogbl.c55
-rw-r--r--system/lib/libc/musl/src/math/ldexp.c6
-rw-r--r--system/lib/libc/musl/src/math/ldexpf.c6
-rw-r--r--system/lib/libc/musl/src/math/ldexpl.c6
-rw-r--r--system/lib/libc/musl/src/math/lgamma.c9
-rw-r--r--system/lib/libc/musl/src/math/lgamma_r.c314
-rw-r--r--system/lib/libc/musl/src/math/lgammaf.c9
-rw-r--r--system/lib/libc/musl/src/math/lgammaf_r.c249
-rw-r--r--system/lib/libc/musl/src/math/lgammal.c386
-rw-r--r--system/lib/libc/musl/src/math/logb.c17
-rw-r--r--system/lib/libc/musl/src/math/logbf.c10
-rw-r--r--system/lib/libc/musl/src/math/logbl.c16
-rw-r--r--system/lib/libc/musl/src/math/scalbn.c31
-rw-r--r--system/lib/libc/musl/src/math/scalbnf.c31
-rw-r--r--system/lib/libc/musl/src/math/scalbnl.c36
-rw-r--r--system/lib/libc/musl/src/math/signgam.c4
-rw-r--r--system/lib/libc/musl/src/math/tgamma.c222
-rw-r--r--system/lib/libc/musl/src/math/tgammaf.c6
-rw-r--r--system/lib/libc/musl/src/math/tgammal.c275
-rw-r--r--system/lib/libc/musl/src/stdio/__overflow.c10
-rw-r--r--system/lib/libc/musl/src/stdio/__toread.c24
-rw-r--r--system/lib/libc/musl/src/stdio/__uflow.c11
-rw-r--r--system/lib/libc/musl/src/stdlib/atof.c6
-rw-r--r--system/lib/libc/musl/src/stdlib/strtod.c40
-rw-r--r--system/lib/libc/musl/src/stdlib/wcstod.c64
-rw-r--r--system/lib/libc/musl/src/stdlib/wcstol.c82
-rw-r--r--system/lib/libc/musl/src/string/memccpy.c32
-rw-r--r--system/lib/libc/musl/src/string/memmem.c148
-rw-r--r--system/lib/libc/musl/src/string/mempcpy.c6
-rw-r--r--system/lib/libc/musl/src/string/memrchr.c12
-rw-r--r--system/lib/libc/musl/src/string/strcasestr.c9
-rw-r--r--system/lib/libc/musl/src/string/strchrnul.c27
-rw-r--r--system/lib/libc/musl/src/string/strlcat.c9
-rw-r--r--system/lib/libc/musl/src/string/strlcpy.c32
-rw-r--r--system/lib/libc/musl/src/string/strsep.c13
-rw-r--r--system/lib/libc/musl/src/string/strverscmp.c42
-rw-r--r--system/lib/libcextra.symbols49
-rw-r--r--system/lib/libcxx/exception.cpp2
-rw-r--r--system/lib/libcxx/locale.cpp2
-rw-r--r--system/lib/libcxx/new.cpp2
-rw-r--r--system/lib/libcxx/optional.cpp6
-rw-r--r--system/lib/libcxx/random.cpp2
-rw-r--r--system/lib/libcxx/readme.txt2
-rw-r--r--system/lib/libcxx/support/win32/locale_win32.cpp10
-rw-r--r--system/lib/libcxx/symbols2
-rw-r--r--system/lib/libcxxabi/CREDITS.TXT28
-rw-r--r--system/lib/libcxxabi/LICENSE.TXT4
-rw-r--r--system/lib/libcxxabi/include/cxa_demangle.h167
-rw-r--r--system/lib/libcxxabi/include/libunwind.h486
-rw-r--r--system/lib/libcxxabi/include/mach-o/compact_unwind_encoding.h487
-rw-r--r--system/lib/libcxxabi/include/unwind.h217
-rwxr-xr-xsystem/lib/libcxxabi/lib/buildit6
-rw-r--r--system/lib/libcxxabi/readme.txt2
-rw-r--r--system/lib/libcxxabi/src/Unwind/AddressSpace.hpp430
-rw-r--r--system/lib/libcxxabi/src/Unwind/CompactUnwinder.hpp693
-rw-r--r--system/lib/libcxxabi/src/Unwind/DwarfInstructions.hpp888
-rw-r--r--system/lib/libcxxabi/src/Unwind/DwarfParser.hpp713
-rw-r--r--system/lib/libcxxabi/src/Unwind/Registers.hpp1568
-rw-r--r--system/lib/libcxxabi/src/Unwind/Unwind-sjlj.c468
-rw-r--r--system/lib/libcxxabi/src/Unwind/UnwindCursor.hpp1063
-rw-r--r--system/lib/libcxxabi/src/Unwind/UnwindLevel1-gcc-ext.c268
-rw-r--r--system/lib/libcxxabi/src/Unwind/UnwindLevel1.c495
-rw-r--r--system/lib/libcxxabi/src/Unwind/UnwindRegistersRestore.S329
-rw-r--r--system/lib/libcxxabi/src/Unwind/UnwindRegistersSave.S301
-rw-r--r--system/lib/libcxxabi/src/Unwind/Unwind_AppleExtras.cpp205
-rw-r--r--system/lib/libcxxabi/src/Unwind/assembly.h44
-rw-r--r--system/lib/libcxxabi/src/Unwind/config.h108
-rw-r--r--system/lib/libcxxabi/src/Unwind/dwarf2.h237
-rw-r--r--system/lib/libcxxabi/src/Unwind/libunwind.cpp353
-rw-r--r--system/lib/libcxxabi/src/Unwind/libunwind_ext.h38
-rw-r--r--system/lib/libcxxabi/src/Unwind/unwind_ext.h37
-rw-r--r--system/lib/libcxxabi/src/cxa_default_handlers.cpp120
-rw-r--r--system/lib/libcxxabi/src/cxa_demangle.cpp13415
-rw-r--r--system/lib/libcxxabi/src/cxa_exception.cpp2
-rw-r--r--system/lib/libcxxabi/src/cxa_exception.hpp18
-rw-r--r--system/lib/libcxxabi/src/cxa_new_delete.cpp36
-rw-r--r--system/lib/libcxxabi/src/private_typeinfo.cpp20
-rw-r--r--system/lib/libcxxabi/src/stdexcept.cpp16
-rw-r--r--system/lib/libcxxabi/symbols3
-rw-r--r--tests/core/test_literal_negative_zero.in27
-rw-r--r--tests/core/test_literal_negative_zero.out6
-rw-r--r--tests/math/lgamma.in105
-rw-r--r--tests/math/lgamma.out18
-rw-r--r--tests/test_core.py25
116 files changed, 16912 insertions, 10056 deletions
diff --git a/emcc b/emcc
index ba927da5..4d6b8a73 100755
--- a/emcc
+++ b/emcc
@@ -1449,9 +1449,25 @@ try:
os.path.join('libc', 'gen', 'verrx.c'),
os.path.join('libc', 'gen', 'vwarn.c'),
os.path.join('libc', 'gen', 'vwarnx.c'),
- os.path.join('libc', 'stdlib', 'strtod.c'),
]
musl_files = [
+ ['internal', [
+ 'floatscan.c',
+ 'shgetc.c',
+ ]],
+ ['math', [
+ 'scalbn.c',
+ 'scalbnl.c',
+ ]],
+ ['stdio', [
+ '__overflow.c',
+ '__toread.c',
+ '__uflow.c',
+ ]],
+ ['stdlib', [
+ 'atof.c',
+ 'strtod.c',
+ ]]
]
for directory, sources in musl_files:
libc_files += [os.path.join('libc', 'musl', 'src', directory, source) for source in sources]
@@ -1492,6 +1508,9 @@ try:
'wctrans.c',
'wcwidth.c',
]],
+ ['internal', [
+ 'intscan.c',
+ ]],
['locale', [
'iconv.c',
'iswalnum_l.c',
@@ -1507,7 +1526,9 @@ try:
'iswspace_l.c',
'iswupper_l.c',
'iswxdigit_l.c',
+ 'strcasecmp_l.c',
'strfmon.c',
+ 'strncasecmp_l.c',
'strxfrm.c',
'towctrans_l.c',
'towlower_l.c',
@@ -1519,6 +1540,29 @@ try:
'wctrans_l.c',
'wctype_l.c',
]],
+ ['math', [
+ '__cosdf.c',
+ '__sindf.c',
+ 'ilogb.c',
+ 'ilogbf.c',
+ 'ilogbl.c',
+ 'ldexp.c',
+ 'ldexpf.c',
+ 'ldexpl.c',
+ 'logb.c',
+ 'logbf.c',
+ 'logbl.c',
+ 'lgamma.c',
+ 'lgamma_r.c',
+ 'lgammaf.c',
+ 'lgammaf_r.c',
+ 'lgammal.c',
+ 'scalbnf.c',
+ 'signgam.c',
+ 'tgamma.c',
+ 'tgammaf.c',
+ 'tgammal.c'
+ ]],
['multibyte', [
'btowc.c',
'mblen.c',
@@ -1554,8 +1598,20 @@ try:
'ecvt.c',
'fcvt.c',
'gcvt.c',
+ 'wcstod.c',
+ 'wcstol.c',
]],
['string', [
+ 'memccpy.c',
+ 'memmem.c',
+ 'mempcpy.c',
+ 'memrchr.c',
+ 'strcasestr.c',
+ 'strchrnul.c',
+ 'strlcat.c',
+ 'strlcpy.c',
+ 'strsep.c',
+ 'strverscmp.c',
'wcpcpy.c',
'wcpncpy.c',
'wcscasecmp.c',
diff --git a/src/jsifier.js b/src/jsifier.js
index a503e90d..726a5eda 100644
--- a/src/jsifier.js
+++ b/src/jsifier.js
@@ -215,6 +215,9 @@ function JSify(data, functionsOnly) {
function parseConst(value, type, ident) {
var constant = makeConst(value, type);
+ // Sadly, we've thrown away type information in makeConst, so we're not
+ // passing correct type info to parseNumerical which works around this
+ // lack.
constant = flatten(constant).map(function(x) { return parseNumerical(x) })
return constant;
}
diff --git a/src/library.js b/src/library.js
index 6cbe7854..af37130c 100644
--- a/src/library.js
+++ b/src/library.js
@@ -4827,15 +4827,6 @@ LibraryManager.library = {
llvm_log_f64: 'Math_log',
llvm_exp_f32: 'Math_exp',
llvm_exp_f64: 'Math_exp',
- ldexp: function(x, exp_) {
- return x * Math.pow(2, exp_);
- },
- ldexpf: 'ldexp',
- scalb: 'ldexp',
- scalbn: 'ldexp',
- scalbnf: 'ldexp',
- scalbln: 'ldexp',
- scalblnf: 'ldexp',
cbrt: function(x) {
return Math.pow(x, 1/3);
},
@@ -9190,7 +9181,7 @@ function autoAddDeps(object, name) {
}
// Add aborting stubs for various libc stuff needed by