Alon Zakai
3c8c068617
Merge pull request #1681 from marcosscriven/incoming
...
Fix debug format to allow specific LLVM opts rather than just an integer level
2013-10-14 10:43:54 -07:00
Alon Zakai
7e5d2a672c
use aliasing function pointers in -O1
2013-10-09 15:26:46 -04:00
Alon Zakai
e10ee6c5cb
run relooper in -O1, and do not run js opts there
2013-10-09 11:10:07 -04:00
Alon Zakai
b5f705842e
automatically adjust asm heap size
2013-10-08 17:27:55 -04:00
Alon Zakai
c1dd12998f
do not run simplifyExpressions in -O1
2013-10-06 10:34:58 -07:00
Alon Zakai
e91ceb0778
fix js_opts definition
2013-10-03 10:57:33 -07:00
Alon Zakai
d229313b7d
if not running js opts, ensure a . in asmEnsureFloat immediately
2013-10-02 17:31:36 -07:00
Alon Zakai
bac7ec61d4
run 'last' js optimization phase if asm.js, even if nothing else to run
2013-10-02 17:31:36 -07:00
Alon Zakai
16f79a38c4
error on linkable modules without asm
2013-10-02 16:26:46 -07:00
Alon Zakai
c45334e5d3
link in files in autodebugger
2013-10-02 14:44:47 -07:00
Marcos Scriven
20e5ea8498
Debug statement fails when using specific LLVM opts rather than an integer level
2013-09-29 18:41:01 +01:00
Bruce Mitchener
e197906fe1
Add iconv from musl.
2013-09-26 09:22:22 +07:00
Alon Zakai
e89fc456ed
Merge pull request #1670 from waywardmonkeys/add-locale-stuff
...
Add locale stuff
2013-09-25 19:13:43 -07:00
Bruce Mitchener
894d13a4db
Add wprintf, swprintf, vswprintf, vfwprintf, etc.
2013-09-26 06:46:53 +07:00
Bruce Mitchener
7d58080e93
Add a lot of locale code.
2013-09-26 06:46:48 +07:00
Alon Zakai
c2473a658d
Merge pull request #1653 from juj/fix_ar_handling
...
Fix ar handling
2013-09-25 10:09:02 -07:00
Jukka Jylänki
794624d295
Do not get confused by Apple GCC dylib special '-compatibility_version' and '-current_version' directives when scanning for input files. Fixes test_the_bullet on OSX after the previous commit.
2013-09-25 08:59:27 +03:00
Alon Zakai
46aac5343e
comment about LTO stability
2013-09-23 16:03:01 -07:00
Jukka Jylänki
04a0b8500d
Fix emcc to properly treat input filenames with Unix-style version information at the end, e.g. 'libz.so.1.2.8'. Do not assume in the source -> LLVM bitcode compilation pass that all untested file suffixes would be assembly files. Related to #1648 .
2013-09-23 15:20:30 +03:00
Jukka Jylänki
d3e5647bd4
Make input file parsing in 'emcc' tool stricter. Don't silently fail if a file is missing or is a bitcode file if an archive file was expected, but issue an error and abort. Related to #1648 .
2013-09-23 15:20:29 +03:00
Alon Zakai
73579052da
refactor memory initializer code to use run dependencies
2013-09-13 16:15:15 -07:00
Alon Zakai
08af46501f
Merge pull request #1615 from waywardmonkeys/fix-preprocessor-usage
...
Fix using emcc -E.
2013-09-13 10:37:22 -07:00
Bruce Mitchener
5404c47c1e
Fix using emcc -E.
...
We don't want to pass this extra flag to emcc as it breaks when
doing EMCONFIGURE_JS=1 emconfigure ./configure ...
2013-09-13 13:37:20 +07:00
Bruce Mitchener
93e1119b3f
Typo fix.
2013-09-13 11:07:18 +07:00
Alon Zakai
6c4d3fff3e
add space to emcc debug output
2013-09-10 16:43:47 -07:00
Alon Zakai
deacea7d36
initial setup for proxying: add option and generate separate html and js
2013-09-08 14:42:36 -07:00
Alon Zakai
ce8acc241a
dlopen+exceptions+asm is not supported yet
2013-09-04 17:28:08 -07:00
Alon Zakai
851ef39b19
handle the case of EXPORTED_FUNCTIONS=@
2013-09-03 14:41:31 -07:00
Alon Zakai
8fffbc9202
always keep malloc and free alive and exported, for internal use and other modules
2013-09-03 14:41:31 -07:00
Alon Zakai
822f067c66
support -E in emcc
2013-09-03 14:41:31 -07:00
Alon Zakai
aa77d85a53
remove unneeded settings from DLOPEN_SUPPORT
2013-09-03 14:41:31 -07:00
Alon Zakai
d6e21d7851
do not require LINKABLE in DLOPEN_SUPPORT
2013-09-03 14:41:30 -07:00
Alon Zakai
bfecccd0b3
use addFunction in dlsym, and define F_BASE in side modules so they can run as shared libs
2013-09-03 14:41:29 -07:00
Alon Zakai
4ec2669008
disable ALIASING_FUNCTION_POINTERS for DLOPEN_SUPPORT
2013-09-03 14:41:29 -07:00
Alon Zakai
e3a06c12b1
emit memory init files when closure is run, fixes #1547
2013-08-24 19:59:16 -07:00
Alon Zakai
ab506b38db
only outline in asm.js mode, where it is supported
2013-08-21 15:13:43 -07:00
Alon Zakai
a0bcc754be
disable optimizeShifts; fixes #1518
2013-08-14 20:49:50 -07:00
Alon Zakai
139c7755ed
update emcc comment
2013-08-14 17:26:09 -07:00
Alon Zakai
b2c5250d4f
--js-opts option to turn off js optimizer
2013-08-09 13:16:44 -07:00
Alon Zakai
8743d1ff48
Merge pull request #1473 from juj/wno-warn-absolute-paths
...
Wno warn absolute paths
2013-08-08 14:46:45 -07:00
Jukka Jylänki
a1ff714e1a
Document -Wno-warn-absolute-paths for emcc --help.
2013-08-08 10:07:25 +03:00
Bruce Mitchener
8d4e0cad02
Add fcvt, ecvt, gcvt functions.
2013-08-07 22:25:18 +07:00
Jukka Jylänki
c762495c91
Add -Wno-warn-absolute-paths cmdline option to allow hiding the absolute -I/-L path warning for codebases that understand they are crosscompiling and aren't referring to native system headers.
2013-08-07 17:49:17 +03:00
Alon Zakai
61d8808b53
properly deprecate all arguments to --minify except for 0
2013-08-02 10:49:01 -07:00
Alon Zakai
767b7f7052
add default extra arguments to beginning of commandline arguments, so that users can override them (not recommended though)
2013-08-02 10:28:54 -07:00
Alon Zakai
8dd0ed8704
only emit -nostdinc++ when calling clang to build a file ending in a cpp-style suffix
2013-08-01 10:20:25 -07:00
Alon Zakai
9854bb1c7b
support for stb-image
2013-07-31 11:14:04 -07:00
Alon Zakai
55626711df
disable asm in embind mode, and add a test for what embind cannot do in asm mode yet; issue #1447
2013-07-30 15:53:47 -07:00
Alon Zakai
3fba5dbf44
link to file packaging docs
2013-07-24 13:53:37 -07:00
Alon Zakai
79cf7e8259
allow closure with -g1 (only preserve whitespace)
2013-07-22 09:34:59 -07:00
Alon Zakai
646e5af888
consolidate simplifyExpressions to one pass that happens before closure, where simplifyNotComps is guaranteed to be valid
2013-07-17 20:58:16 -07:00
Alon Zakai
3a1a48bb74
outlining integration in compiler
2013-07-17 16:47:47 -07:00
Alon Zakai
bb8442890f
infrastructure for passing extra info to js optimizer passes from emcc
2013-07-17 15:44:41 -07:00
Jez Ng
61c31f6935
Use DLOPEN_SUPPORT instead of LINKABLE to enable self-dlopen.
...
Also address style feedback.
2013-07-15 14:36:28 -07:00
Jez Ng
2af851e905
Remove semicolons from Python code.
2013-07-08 17:26:14 -07:00
Jez Ng
2d6e550950
Use implicit range in for loops where possible.
2013-07-08 16:03:55 -07:00
Alon Zakai
6ad418da82
force-include .a contents of multiple archives when they are the only inputs aside from linked libraries
2013-07-03 16:57:44 -07:00
Alon Zakai
e6c426b74b
force-include .a contents when it is the only input aside from linked libraries
2013-07-03 16:18:29 -07:00
Alon Zakai
4a907afae0
always do globaldce (and potentially strip-debug), even when we are building something linkable
2013-07-03 15:31:05 -07:00
Alon Zakai
5b27fcf208
allow picking a library to force inclusion of in EMCC_FORCE_STDLIBS
2013-07-03 15:31:04 -07:00
Alon Zakai
650a1d7857
finalize floats during relocation in side modules
2013-07-03 15:31:04 -07:00
Alon Zakai
5e360b75ff
fix non-linking of C libs in side modules
2013-07-03 15:31:04 -07:00
Alon Zakai
7be8c34546
do not link in C libraries in side modules
2013-07-03 15:31:04 -07:00
Alon Zakai
8c72d67953
move memory initializer pattern to shared
2013-07-03 15:31:03 -07:00
Alon Zakai
74e60024e3
cleanups
2013-07-03 15:31:03 -07:00
Alon Zakai
fac77c3ff0
initial setup
2013-07-03 15:31:02 -07:00
Alon Zakai
d887e70b10
improve error message
2013-06-28 11:28:48 -07:00
Alon Zakai
0432f1c791
add option for -O3 style LTO without normal LLVM LTO, because java-nbody hits an LTO bug but benefits from -O3 on all the code
2013-06-27 12:05:53 -07:00
Alon Zakai
681ab3e915
always use lto in embind, workaround for a pointer issue
2013-06-27 11:26:46 -07:00
Alon Zakai
6fe62c1539
--llvm-lto 2 option
2013-06-27 11:03:22 -07:00
Alon Zakai
317f89f548
fix bug when optimizing renamed input files in emcc
2013-06-26 21:11:49 -07:00
Alon Zakai
1acf958b45
optimize libc and other libraries with -O2
2013-06-26 18:55:28 -07:00
Alon Zakai
7e179d8c63
make EMCC_OPTIMIZE_NORMALLY the default
2013-06-26 13:58:30 -07:00
Alon Zakai
dc341c89d3
deprecate llvm opts in non-ta2 modes
2013-06-26 13:51:59 -07:00
Alon Zakai
deacdfa129
remove incorrect comment
2013-06-26 11:47:20 -07:00
Alon Zakai
501022cbaa
Merge branch 'source-maps' of github.com:int3/emscripten into int3-source-maps
...
Conflicts:
tools/js-optimizer.js
2013-06-26 10:53:17 -07:00
Alon Zakai
e7dfdb3a27
make emcc -v update debug settings, so that it saves temp files
2013-06-24 21:27:31 -07:00
Jez Ng
6768d77c41
Clean up emcc flag parsing + help message.
2013-06-24 15:57:57 -07:00
Alon Zakai
bab35f453a
unify registerize and minify passes, since they must run in conjunction
2013-06-24 13:24:30 -07:00
Alon Zakai
637ad69e97
add space in debug output
2013-06-24 10:56:08 -07:00
Jez Ng
7ff0dde780
Merge remote-tracking branch 'upstream/incoming' into source-maps
...
Conflicts:
emcc
tools/js-optimizer.js
tools/js_optimizer.py
2013-06-22 23:46:31 -07:00
Alon Zakai
61b60b7f13
only minify globals when relooping
2013-06-22 15:32:03 -07:00
Alon Zakai
202461abe3
fix -g2 and add testing
2013-06-22 15:02:10 -07:00
Alon Zakai
369167ebda
-gLEVEL ; support varying degrees of debuggability
2013-06-22 14:21:19 -07:00
Alon Zakai
8f1a7e5546
show auto-linking decision process only in VERBOSE
2013-06-22 09:42:37 -07:00
Jez Ng
3a84846ded
Centralize debug options in a -gX flag.
2013-06-22 05:42:26 -07:00
Jez Ng
9382556ed5
Test that source mapping works with EMCC_DEBUG=2.
2013-06-22 01:23:22 -07:00
Jez Ng
88feddf045
Get test_source_map passing again.
2013-06-22 01:23:22 -07:00
Jez Ng
99fa57e08e
Make test_debug actually fail when things go wrong.
2013-06-22 01:23:21 -07:00
Jez Ng
cfe4eb5b4f
Source maps should only be activated via the `--map` flag.
2013-06-22 01:23:14 -07:00
Alon Zakai
4654f7b59b
todo
2013-06-21 11:22:51 -07:00
Jez Ng
d680f5e81b
Implement source maps for optimized builds.
2013-06-19 14:15:18 -07:00
Jez Ng
54a59bee84
Move source mapping files into their own folder.
2013-06-19 14:15:18 -07:00
Jez Ng
7656f94838
Lay the groundwork for optimized source maps.
2013-06-19 14:09:13 -07:00
Jez Ng
af52a9aacb
Fix source map line numbering for inline scripts.
2013-06-19 01:22:01 -07:00
Jez Ng
2f16717540
Add test for source maps.
...
Tweak behavior of post_build; the `post2` hook now expects a function.
2013-06-19 01:22:01 -07:00
Jez Ng
165befaa29
Add check for keep_llvm_debug + minor touchups.
2013-06-19 01:22:01 -07:00
Jez Ng
747f74e105
Implement basic source maps. Closes #1252 .
2013-06-19 01:22:01 -07:00
Alon Zakai
e8b1ec27a7
Merge pull request #1281 from juj/noninput_cmdline_opts
...
Improve emcc input file detection to ignore all arguments that precede a...
2013-06-17 17:08:57 -07:00
Alon Zakai
02382e49cb
Merge pull request #1280 from juj/abs_path_check
...
Improve absolute path warning detection to work on Windows, and make the...
2013-06-17 17:06:49 -07:00
Alon Zakai
697408d658
enable all debug logging in emcc -v
2013-06-17 12:21:32 -07:00
Jukka Jylänki
59687f98cc
Improve emcc input file detection to ignore all arguments that precede a GCC preprocessor command line option from http://gcc.gnu.org/onlinedocs/gcc/Preprocessor-Options.html .
2013-06-13 16:21:07 +03:00
Jukka Jylänki
f06dfed6a6
Improve absolute path warning detection to work on Windows, and make the warning message more informative.
2013-06-13 16:10:35 +03:00
Alon Zakai
4535b975f8
do not skip -s X=Y when EMCONFIGURE_JS
2013-06-04 15:07:26 -07:00
Jukka Jylänki
2559aa6e02
Fix test_exported_response and test_asm_pgo on Windows.
2013-06-03 21:14:32 +03:00
Alon Zakai
39ea986557
enable asm.js in embind, with extra reserved function pointers by default
2013-05-25 10:15:36 -07:00
Alon Zakai
5f76d8e64e
Merge pull request #1203 from michaeljbishop/objc-support
...
Allow Emscripten to recognize and compile .m and .mm files
2013-05-24 13:32:27 -07:00
Michael Bishop
1fa15abb03
Simplified code by using a tuple in combination with `endsWith`.
2013-05-24 14:48:33 -04:00
Alon Zakai
c526e8e8ac
show --help in emcc even if there are other args
2013-05-24 11:27:46 -07:00
Alon Zakai
41ea37201c
support relative paths in -s KEY=@path
2013-05-23 18:11:40 -07:00
Michael J. Bishop
c5fb79f031
Allowed Emscripten to recognize and compile .m and .mm files
...
(Objective-C and Objective-C++, respectively)
2013-05-23 11:51:25 -04:00
Alon Zakai
0d4f492e4d
remove warning
2013-05-21 20:24:20 -07:00
Alon Zakai
10b69ba439
Merge pull request #1105 from azmeuk/symlink
...
Symlink support
2013-05-21 16:59:46 -07:00
Andreas Bergmeier
367603568b
Remove obsolete (and partly wrong) setup information for CMake and SCons. Use wrappers instead.
2013-05-20 10:30:07 +02:00
Alon Zakai
5c5cbb7b17
docs
2013-05-16 18:53:24 -07:00
Alon Zakai
9da6e1f335
support closure compiler on the shell in asm mode
2013-05-16 18:22:28 -07:00
Alon Zakai
ce33f9c212
enable aliasing function pointers by default in -O2
2013-05-16 11:00:50 -07:00
Alon Zakai
73fc3ffcb5
add FORCE_ALIGNED_MEMORY=1 to -O3
2013-05-10 10:35:45 -07:00
Alon Zakai
b08947097b
fix sdl inclusion
2013-05-06 16:10:45 -07:00
Alon Zakai
be0fb5cc46
auto-include malloc/free when SDL is used; fixes #1139
2013-05-06 13:35:33 -07:00
Alon Zakai
b6b9c54b99
fix memory initializer detection
2013-05-06 11:38:26 -07:00
Alon Zakai
2a85aa178d
update comments
2013-05-05 16:26:22 -07:00
Alon Zakai
bf6825dc53
adjust js pass logging level to debug
2013-05-03 11:46:10 -07:00
Alon Zakai
af15d3e5c9
update tests
2013-05-03 11:40:44 -07:00
Alon Zakai
2cd4b8256a
restore warning on no input files, to match gcc
2013-05-03 10:47:23 -07:00
Alon Zakai
505f5f10af
fix some logging uses
2013-05-03 10:44:16 -07:00
Alon Zakai
ac2e339f7c
tweak some logging levels
2013-05-03 10:33:55 -07:00
Éloi Rivard
d6a6004ff3
Displays usage when no argument is passed.
2013-05-03 10:17:58 +02:00
Éloi Rivard
ce122916a3
* Added some colors to messages displayed from python files.
2013-05-03 10:13:04 +02:00
Alon Zakai
4c0580aa21
only recommend jcache with -g
2013-05-01 17:07:45 -07:00
Éloi Rivard
8f4e931b7e
Added a symlink testcase.
2013-05-02 00:06:13 +02:00
Alon Zakai
94e097a1fd
require -g with jcache, fixes test_jcache
2013-05-01 11:11:19 -07:00
Alon Zakai
9cd0580f3c
add support for changing the llvm target using EMCC_LLVM_TARGET in the env
2013-04-30 12:30:10 -07:00
Alon Zakai
f934d3ec22
error on undefined symbols in js configure-ing
2013-04-29 15:47:31 -07:00
Alon Zakai
17248eb417
add target settings
2013-04-29 13:01:58 -07:00
Bruce Mitchener
edc773c64d
[libcextra] Add wcwidth, wcswidth.
2013-04-29 15:30:32 +07:00
Bruce Mitchener
454d7f9dd2
[libcextra] wctrans and friends.
2013-04-29 14:01:11 +07:00
Bruce Mitchener
30c055fb82
[libcextra] add isw* classification functions.
2013-04-29 12:10:55 +07:00
Éloi Rivard
ff5cad0ba4
* Added symlink support.
2013-04-27 10:49:40 +02:00
Alon Zakai
4b1c3fbdb4
Merge branch 'idb-preload-cache' of github.com:modeswitch/emscripten into modeswitch-idb-preload-cache
2013-04-25 11:36:17 -07:00
Alon Zakai
a00ffce0b7
clean up meminit detection
2013-04-25 11:15:47 -07:00
Alan Kligman
f956fc6a33
Add --use-preload-cache option to emcc, which passes it through to file_packager.
2013-04-25 00:58:26 -04:00
Bruce Mitchener
029c076151
Clean up libc / libcxx build infrastructure.
...
This creates a couple of additional methods to reduce copy/paste
and make things a bit easier to follow.
2013-04-23 11:10:37 +07:00
Bruce Mitchener
654b36699e
Move wchar,mb stuff to libcextra.
2013-04-22 18:51:43 +07:00
Bruce Mitchener
7cacf252e7
Add musl multibyte function implementations.
2013-04-22 16:45:07 +07:00
Bruce Mitchener
b9090fa1f2
Add musl wchar function implementations.
2013-04-22 16:45:07 +07:00
Bruce Mitchener
58175e7276
Let libc.symbols use same symbol format as libcxx.
...
This is just the output of 'llvm-nm -extern-only -defined-only'.
2013-04-22 16:45:07 +07:00
Alon Zakai
1d1924ccc9
update tests
2013-04-19 11:21:51 -07:00
Alon Zakai
f173cd3457
disable asm.js when using embind
2013-04-19 11:21:51 -07:00
Alon Zakai
8dc4fc973b
enable ASM_JS=1 in -O1+, and start to update testing
2013-04-19 11:21:51 -07:00
Alon Zakai
2be92943d1
enable asm in -O1 and prepare to add testing
2013-04-17 11:12:38 -07:00
Alon Zakai
3cbdfcc318
Merge pull request #1038 from juj/fix_test_asm_pgo_windows
...
Fix test_asm_pgo on Windows.
2013-04-16 13:48:00 -07:00
Alon Zakai
17da251d33
default memory initializer to off, and add testing coverage
2013-04-15 10:45:48 -07:00
Alon Zakai
3868ec7853
refactor option to use full js in configure, add EMCONFIGURE_JS option
2013-04-13 09:16:19 -07:00
Jukka Jylänki
69c67542e7
Remove the unwanted abstraction that callee is allowed to autodelete a response file after consuming it. Instead, manually track and delete response files by the caller and clean them up.
2013-04-11 10:42:18 +03:00
Jukka Jylänki
1c4f763de4
Extend the use of response files to cover the case when emcc invokes emscripten.py, so that Windows command line length limitations don't break the test_asm_pgo on Windows.
2013-04-11 10:42:14 +03:00
Alon Zakai
bc234c204c
do not use memory init file without ta2, since we lay out memory in ta2 format in binary files
2013-04-10 17:30:40 -07:00
Alon Zakai
3f96c03f4d
emcc note about .mem files
2013-04-10 14:29:07 -07:00
Alon Zakai
c44aaae800
restore memory initialization and testing
2013-04-09 17:26:56 -07:00
Alon Zakai
dad74e0d39
disable memory init for now
2013-04-05 18:31:18 -07:00
Alon Zakai
98665d3a9a
work towards detecting chunked memory init
2013-04-05 18:30:45 -07:00
Alon Zakai
a65ea6dc58
do not copy mem file when already in all places
2013-04-05 17:09:04 -07:00
Alon Zakai
74577f8517
load memory initializer immediately
2013-04-05 16:59:27 -07:00
Alon Zakai
dc2a01d7f4
refactor preRun additions
2013-04-05 16:48:38 -07:00
Alon Zakai
3245705765
use a separate memory initialization file
2013-04-05 14:02:49 -07:00
Alon Zakai
ad285f60d0
remove symbol removing hack; export all malloc symbols as weak; add test for a case where symbol removing made us not merge llvm constructors properly
2013-03-25 12:58:25 -07:00
Bruce Mitchener
09221ebd18
Get exceptions working as they were before.
...
This no longer uses headers from libcxxabi and
in fact uses libcxxabi a bit less than before.
This no longer lets some new C++11 stuff such as
exception_ptr work as the support for that relies
upon libcxxabi code.
2013-03-25 14:14:22 +07:00
Bruce Mitchener
90338c69f7
Get things working with the new libcxx / libcxxabi.
2013-03-25 00:34:11 +07:00
Bruce Mitchener
1a0bccc11d
Build libcxx and libcxxabi with C++11.
2013-03-25 00:34:11 +07:00
Bruce Mitchener
80fd6f0bce
Clean up lists of files, building libcxx / libcxxabi.
2013-03-25 00:34:10 +07:00
Alon Zakai
e22176211c
require -O2 in asm, for now
2013-03-22 10:46:10 -07:00
Alon Zakai
f8b0b18348
fix handling of EMCC_LEAVE_INPUTS_RAW
2013-03-21 15:06:08 -07:00
Alon Zakai
9642a5128f
check for utf and avoid the overhead if not necessary; remove UTF_STRING_SUPPORT
2013-03-18 15:07:17 -07:00
Alon Zakai
314a0b90f1
mark UTF_STRING_SUPPORT as an unsafe but useful opt, in -O3
2013-03-15 17:10:22 -07:00
Alon Zakai
68988a8603
support -s KEY=@PATH in emcc, for very large settings values
2013-03-12 10:47:35 -07:00
Alon Zakai
6a91523540
--save-bc option
2013-03-10 18:47:38 -07:00
Alon Zakai
b028fb574e
error on pgo with asm
2013-03-10 16:22:29 -07:00
Alon Zakai
7c39b40357
larger pgo test, with asm measurements
2013-03-10 15:02:11 -07:00
Alon Zakai
0f538ae57b
Merge branch 'asm_minifier' into incoming
2013-03-09 20:01:14 -08:00
Alon Zakai
99ac7e40fe
make sure to remove trivial whitespace
2013-03-09 10:10:29 -08:00
Alon Zakai
92a6658da8
minify by default in -O2+, unless -g
2013-03-09 09:12:35 -08:00
Alon Zakai
5c5a9dd4bf
make sure we use a C compiler to build libc. fixes #937 , #938
2013-03-08 20:42:36 -08:00
Alon Zakai
49970438a3
run registerize pass last
2013-03-08 10:26:18 -08:00
Xuejie "Rafael" Xiao
d4c9620fb5
Move strtod, strtold, strtof, strtod_l, strtold_l, atof from JS side to libc side, this can fix double precision bug in original strtod implementation.
2013-03-06 23:59:11 -05:00
Alon Zakai
f5d7160fb4
remove trivial whitespace
2013-03-06 18:01:23 -08:00
Alon Zakai
29a6a88c72
Merge pull request #848 from manuels/incoming
...
Add getopt and getopt_long (libc) support
2013-03-06 11:35:49 -08:00
Alon Zakai
97407b218c
make -Os like -O2 but also disable inlining
2013-03-05 20:46:47 -08:00
manuels
6efef45cbf
Add support for getopt/getopt_long
2013-03-05 22:05:11 +01:00
Alon Zakai
26a3a085fc
emscripten_jcache_printf
2013-03-04 17:07:25 -08:00
Alon Zakai
1ee2b439f4
remove ASM_JS warning and add check for exception catching being off in it, the last remaining issue for it
2013-03-03 12:49:06 -08:00
Alon Zakai
7880f929b4
inline by default, now that lto is off by default
2013-02-28 11:33:24 -05:00
Alon Zakai
8060d8fc69
disable llvm lto except for -O3, due to issues we have been seeing
2013-02-28 10:43:13 -05:00
Alon Zakai
013dbae927
experimental EMCC_OPTIMIZE_NORMALLY option
2013-02-27 13:05:46 -05:00
Alon Zakai
631f2c60e1
jcache docs
2013-02-27 10:27:51 -05:00
Alon Zakai
f4cceb902a
fix DEBUG ? 2 checks
2013-02-26 20:19:44 -05:00
Vladimir Vukicevic
d08b1ad1ec
add cache debugging
2013-02-26 19:42:31 -05:00
Alon Zakai
df7d3ce735
clean up response file code
2013-02-26 19:13:09 -05:00
Vladimir Vukicevic
b2496c286d
Add basic response file parsing to emcc
2013-02-26 17:34:22 -05:00
Alon Zakai
e26971d4ef
EMCC_FORCE_STDLIBS option
2013-02-25 14:21:22 -05:00
Alon Zakai
e24cfb71df
only do symbol checks for libcxx etc. if not forcing them anyhow
2013-02-25 11:49:16 -05:00
Alon Zakai
941c8e583d
Merge pull request #859 from waywardmonkeys/cmdline-fixes
...
Cmdline fixes
2013-02-21 18:32:43 -08:00
Bruce Mitchener
21f7959f64
emcc: Improve handling of -O flag.
...
Previously, while gcc supports -O, emcc would fail. It now interprets
-O as -O2, just as gcc does.
Additionally, it was only looking at the first character after -O, so
nonsense like -O34 would be accepted (and treated as -O3).
2013-02-21 08:50:49 +07:00
Alon Zakai
54ff0c7c5a
do not wipe out llvm debug info if linespecific corrections are done
2013-02-20 17:16:01 -08:00
Alon Zakai
5afd8a25d1
remove bad_cast/typeinfo.cpp from libcxx, no longer needed since it is in libcxxabi
2013-02-20 16:58:18 -08:00
Alon Zakai
dce46c9c2a
build base type_info class with libcxxabi, fixes #862
2013-02-20 16:33:29 -08:00
Alon Zakai
805741f649
closure docs on emcc --help
2013-02-19 07:27:40 -08:00
Alon Zakai
06b262b3f1
run closure in -O3, it makes sense there with the other unsafe optimizations
2013-02-18 15:47:07 -08:00
Alon Zakai
7675539916
remove LLVM debug info in -O1+, since the optimizer removes it anyhow
2013-02-18 12:52:41 -08:00
Alon Zakai
4dc72e6473
fix emcc --version in other dirs
2013-02-18 08:58:05 -08:00
Alon Zakai
f9b489d426
default closure to off in all optimization levels - we rely on registerize for much faster effects on runtime speed
2013-02-17 12:43:41 +01:00
Alon Zakai
d646177eae
use registerize only when not keeping debug, and also use it when closure is disabled, not just ASM_JS mode (which is just one case where closure is disabled)
2013-02-17 11:27:12 +01:00
Alon Zakai
13c0ad5f16
disable closure if debug info was requested (-g)
2013-02-17 11:26:12 +01:00
Alon Zakai
0495b5b1b1
show version and git revision in emcc --version
2013-02-17 05:32:33 +01:00
Alon Zakai
42a910da1f
Merge pull request #825 from juj/std
...
Std
2013-02-03 18:51:29 -08:00
Alon Zakai
3605e51ea9
do not run unnecessary optimizeShiftsAggressive+eliminate steps in asm mode, it is pointless and just wastes compilation time
2013-02-03 10:17:32 -08:00
Alon Zakai
5df5e8b68f
do not build musl memcpy
2013-02-02 10:20:50 -08:00
Alon Zakai
4ac3b898cb
docs for file packager
2013-02-01 14:28:09 -08:00
Jukka Jylänki
9dd7e94ecd
Compile with -std=c++03 consistently on all platforms. By default, Clang 3.2 inconsistently uses C++11 for Windows and C++03 for Linux if user did not specify -std= on the command line. Fixes other.test_embind and *.test_llvmswitch. Add unit tests that confirm that .cpp files are compiled with C++03 std by default.
2013-02-01 22:51:35 +02:00
Alon Zakai
db418cbf5c
hand-optimize memcpy/asm
2013-01-31 14:50:26 -08:00
Alon Zakai
a532ce2fc8
remove emcc asm test wrapping
2013-01-19 20:53:36 -08:00
Alon Zakai
14b42a9d07
do not run js optimizer needlessly on 'last'
2013-01-13 12:25:42 -08:00
Alon Zakai
b40b122720
emit 0.0 in asm double definitions
2013-01-12 14:34:39 -08:00
Alon Zakai
49e12f1a7b
fix emcc calls to js optimizer
2013-01-12 14:14:34 -08:00
Alon Zakai
832358c295
refactor use of asm in js optimizer
2013-01-12 12:15:41 -08:00
Alon Zakai
d233c37920
export memcpy in asm mode so non-asm library functions can use it
2013-01-10 16:15:50 -08:00
Alon Zakai
60c6395d05
fix compiling of postrinsic memcpy when in forced c++ mode for the main file
2013-01-10 10:54:10 -08:00
Alon Zakai
a3c256bf34
link in memcpy after opts and lto if it shows up only at that time
2013-01-10 10:38:23 -08:00
Alon Zakai
b41145cc84
use musl memcpy instead of out handwritten js one
2013-01-09 16:01:58 -08:00
Alon Zakai
8e283ee92b
rename dlmalloc to libc in cache, in preparation for adding further code there
2013-01-09 12:38:43 -08:00
Alon Zakai
4c4caded64
make docs mention that bitcode is the default
2013-01-08 17:59:58 -08:00
Alon Zakai
78dbafb289
keep a coercion right on top of heap accesses in asm mode
2013-01-08 16:43:52 -08:00
Alon Zakai
cdbb625213
TODO for asm double literals
2013-01-07 11:48:08 -08:00
Alon Zakai
95feb649fe
warn about ASM_JS
2013-01-03 12:10:41 -08:00
Alon Zakai
2325baf34e
Merge branch 'incoming' into asm_js
...
Conflicts:
src/library_browser.js
2012-12-31 11:56:53 -08:00
Alon Zakai
cbf61df3d0
move llvm opt debug messages
2012-12-24 20:49:27 -08:00
Alon Zakai
8aa6919b7a
merge incoming
2012-12-21 20:43:10 -08:00
Alon Zakai
4fa23c0a8c
improve lto
2012-12-21 10:47:41 -08:00
Alon Zakai
2221065294
avoid separate lto pass
2012-12-21 10:47:41 -08:00
Alon Zakai
68fa40ad92
safely internalize in s_x_x tests too
2012-12-21 10:47:40 -08:00
Alon Zakai
98fda6ea81
do lto before dce, since lto opens up dce opportunities
2012-12-21 10:47:40 -08:00
Alon Zakai
7f1fdbef4c
be careful with internalize in llvm LTO, and mark needed symbols for relooper
2012-12-21 10:47:39 -08:00
Alon Zakai
e9fe31fb2f
llvm 3.2 internalize internalizes even main, so manually keep it and other exports alive
2012-12-21 10:47:39 -08:00
Alan Kligman
a2bc9a30de
Updated to add a PYTHON config option instead of defaulting to python2. This should preserve the default behavior in a way that can be overridden.
2012-12-19 18:06:48 -05:00
Alan Kligman
315f13e5a1
Updated scripts to call python2 directly rather than relying on python symlink pointing to the right place. See PEP394 for details on why this should be OK.
2012-12-19 18:06:48 -05:00
Alon Zakai
1c796635aa
remove --remove-duplicates
2012-12-19 14:02:34 -08:00
Alon Zakai
c83b1d4e9e
Merge branch 'incoming' into asm_js
2012-12-11 14:01:06 -08:00
Alon Zakai
42b03394eb
warni when ignoring libs
2012-12-10 19:01:53 -08:00
Alon Zakai
3ee9d95f98
test fixes and set sign and overflow correction to 1 when in asm mode
2012-12-07 14:23:24 -08:00
Alon Zakai
1189e117b7
improve asm test wrapping
2012-12-07 14:23:22 -08:00
Alon Zakai
ee32a53886
move emcc minify decision to after we potentially modify closure
2012-12-07 14:23:20 -08:00
Alon Zakai
48447d1ece
typo
2012-12-07 14:23:20 -08:00
Alon Zakai
3c642441a9
do registerize in asm.js+reloop mode, as an alternative to closure
2012-12-07 14:23:20 -08:00
Alon Zakai
1b591a0b0c
add eliminator mode for asm
2012-12-07 14:23:19 -08:00
Alon Zakai
a917909969
disable closure when ASM_JS
2012-12-07 14:23:19 -08:00
Alon Zakai
b0b611c9f7
add parts of system bitcode libraries when necessary, and refactor library inclusion decision code
2012-12-07 12:32:49 -08:00
Alon Zakai
4df6589efa
Merge pull request #735 from eclecticdave/emcc_so_fix
...
Fixes to emcc to make autoconf enable shared objs
2012-12-04 16:45:57 -08:00
Alon Zakai
c735bb6469
do not apply -l if not generating an executable or a library
2012-12-03 14:30:09 -08:00
Alon Zakai
30f484d68f
ignore argument after -I -L for purposes of input detection in emcc
2012-12-03 13:36:37 -08:00
David Claughton
5d48629cf0
Fixes to emcc to make autoconf enable shared objs
...
When using emcc as a linker, autoconf disables
shared object support. This is because it expects
the text returned by the -v and --help options to
match certain things that GNU ld prints.
Specifically it expects the output of emcc -v to include
the word 'GNU' and the output of emcc -v to match the
regexp ': supported targets.* elf'
Modified the messages returned by emcc for these options
to make autoconf happy.
2012-11-30 21:56:00 +00:00
Alon Zakai
fc56ff9c04
fix test_failure_error_code
2012-11-23 16:38:47 +01:00
Alon Zakai
453ec4adfa
jcache docs
2012-11-23 14:15:24 +01:00
Alon Zakai
b74207976b
print out total time in emcc in debug mode
2012-11-21 20:47:02 +01:00
Alon Zakai
db65c00f8e
fix missing jcache passing
2012-11-21 20:47:02 +01:00
Alon Zakai
f199880bb1
set up parameter passing for jcache
2012-11-21 20:47:01 +01:00
Alon Zakai
ed6571e237
return error code on no input files
2012-11-15 11:46:01 -08:00
Jukka Jylänki
4ab1c8acec
Python system command line may come with untrimmed items at least on Windows Vista, cmake is bad at producing these, so trim off the excessive spaces before working on the command line. Fixes other.test_cmake on Windows Vista build bot.
2012-11-14 18:44:23 +02:00
Alon Zakai
587a1b3fdf
forward -v to child processes
2012-11-13 17:42:35 -08:00
Jukka Jylänki
4f25d496a1
Don't pass all emcc command line inputs e.g. those of form '-DsomeDefine=1' etc. to shared.Building.is_ar() for testing whether a file by that name is a LLVM archive file.
2012-11-12 21:14:37 +02:00
Alon Zakai
d27357b5fe
cleanup
2012-11-09 16:27:26 -08:00
Alon Zakai
a38333433a
stop doing old-relooper-related js optimizer passes
2012-11-08 18:30:49 -08:00
Alon Zakai
f0c024d982
refactor link time opts code
2012-11-07 11:39:54 -08:00
Alon Zakai
f033c67b5c
split up js optimizer passes only in EMCC_DEBUG=2, not 1
2012-11-07 10:57:41 -08:00
Alon Zakai
466af17eb9
strip debug info in -O1 and above by default, unless -g is specified when converting to JS, since (1) js optimizations strip it anyhow, and (2) it slows down compilation
2012-11-07 10:32:54 -08:00
Alon Zakai
7dee40c6bb
fix temp dir in emcc
2012-11-06 20:59:08 -08:00
Alon Zakai
6f9780c50e
more non-clang configure fixes for configure tests
2012-10-29 18:52:23 -07:00
Alon Zakai
99fb6b9b81
more non-clang configure work and debugging tools
2012-10-29 18:10:35 -07:00
Alon Zakai
83faf34660
configure debugging tools
2012-10-29 17:25:42 -07:00
Alon Zakai
dcc877f3bd
add experimental and non-enabled non-clang configure mode
2012-10-28 15:23:56 -07:00
Alon Zakai
ed88bc7051
memory growth must be manually enabled with ALLOW_MEMORY_GROWTH, in which case the eliminator runs in safe mode
2012-10-27 20:07:07 -07:00
Alon Zakai
d6e695eb2b
comment on -O3
2012-10-26 17:53:46 -07:00
Alon Zakai
94ee68349b
integrate eliminator as js optimizer pass
2012-10-23 17:35:37 -07:00
Alon Zakai
2781c7dca6
report times of passes in EMCC_DEBUG
2012-10-20 17:48:35 -07:00
Alon Zakai
844faf36eb
do not include C library in shared library 2
2012-10-17 12:43:59 -07:00
Alon Zakai
922608f31f
build libcxx and libcxxabi using direct commands, not a makefile, to make this more easily portable to windows where make is not always present
2012-10-13 17:10:01 -07:00
Alon Zakai
3a156a34e8
get almost all of embind test passing
2012-10-12 16:26:22 -05:00
Alon Zakai
217dbc2b3f
embind integration in emcc and work towards a test
2012-10-12 15:40:12 -05:00
Alon Zakai
6a1702024c
Merge branch 'master' into incoming
2012-10-12 14:56:21 -05:00
Alon Zakai
f377f670cc
indentation fix
2012-10-11 14:00:20 -05:00
Alon Zakai
363ce16a89
ignore and warn on -Os
2012-10-03 12:12:22 -07:00
Alon Zakai
8c53160d51
CONFIGURE_CC option to let you define the compiler used when configure-ing
2012-10-01 11:44:18 -07:00
Lars Schneider
0c33345f22
Add emcc option "--split <size>" to split javascript file.
...
Splits the resulting javascript file into pieces to ease debugging.
This option only works if Javascript is generated (target -o <name>.js).
Files with function declarations must be loaded before main file upon execution.
Without "-g" option:
Creates files with function declarations up to the given size with the suffix "_functions.partxxx.js" and a main file with the suffix ".js".
With "-g" option:
Recreates the directory structure of the C source files and stores function declarations in their respective C files with the suffix ".js". If such a file exceeds the given size, files with the suffix ".partxxx.js" are created. The main file resides in the base directory and has the suffix ".js".
2012-09-26 19:30:19 +02:00
Alon Zakai
76c1195061
show warning about absolute paths only once
2012-09-21 17:53:05 -07:00
Alon Zakai
2210898ef5
-s docs in emcc
2012-09-21 17:36:22 -07:00
Janus
b3039131e6
add conftest.c flag passing test and use right indenting
2012-09-20 14:32:26 +02:00
Janus
4b9f7c1c55
don't pass EMCC specific flags on when configuring using clang
2012-09-18 19:52:45 +02:00
Alon Zakai
1c993f99f1
clearer error message when a crucial llvm tool is missing, and force sanity checks in EMCC_DEBUG mode
2012-09-13 17:24:50 -07:00
Alon Zakai
103314ffaf
make all temp files be in TEMP_DIR from ~/.emscripten
2012-09-12 18:59:58 -07:00
Alon Zakai
94a0cb1ccd
--clear-cache option
2012-08-30 16:42:34 -07:00
Alon Zakai
f35fa61a20
disable precise i32 multiplication even in -O0: too slow
2012-08-25 14:10:09 -07:00
Alon Zakai
c14a675125
PRECISE_I32_MUL option for full precision in 32-bit multiply
2012-08-25 11:26:47 -07:00