Граф коммитов

765 Коммитов

Автор SHA1 Сообщение Дата
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