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

217 Коммитов

Автор SHA1 Сообщение Дата
Alon Zakai eb66a7f218 only forward GLOBAL_BASE when needed 2012-12-07 14:23:21 -08:00
Alon Zakai c854ced309 forward GLOBAL_BASE to asm 2012-12-07 14:23:21 -08:00
Alon Zakai b6b3d43b61 forward ABORT to asm 2012-12-07 14:23:21 -08:00
Alon Zakai 2617ac81a9 commented out preparation for more runtime forwarding into asm 2012-12-07 14:23:21 -08:00
Alon Zakai b8e8298f3d fix testing closure 2012-12-07 14:23:21 -08:00
Alon Zakai 518597ee2b expose tempDoublePtr to asm 2012-12-07 14:23:21 -08:00
Alon Zakai 41359b3568 move stack manipulation into asm 2012-12-07 14:23:21 -08:00
Alon Zakai 60a3fd1bcd enclose asm.js to prevent Function code from seeing the global scope, for testing purposes 2012-12-07 14:23:21 -08:00
Alon Zakai 5ff4af4293 use toSource on asm module to prevent access outside the module for testing purposes 2012-12-07 14:23:21 -08:00
Alon Zakai e078423315 do not pass globals into asm when they are unnamed 2012-12-07 14:23:20 -08:00
Alon Zakai f80d277fd8 fix ctors crash 2012-12-07 14:23:20 -08:00
Alon Zakai e944bb4580 export global constructors from asm.js and get them dynamically in the outside scope 2012-12-07 14:23:20 -08:00
Alon Zakai 80ef086309 send abort and assert to asm 2012-12-07 14:23:19 -08:00
Alon Zakai 861346ff36 global vars in asm.js module 2012-12-07 14:23:19 -08:00
Alon Zakai 90288fb4ad export function tables 2012-12-07 14:23:19 -08:00
Alon Zakai 19d06326b6 move asm.js function tables into asm 2012-12-07 14:23:19 -08:00
Alon Zakai ed00768f16 put library signatures in separate storage instead of reusing libraryFunctions 2012-12-07 14:23:19 -08:00
Alon Zakai 709d9bf788 export asm.js exports to outside scope 2012-12-07 14:23:19 -08:00
Alon Zakai 98e48e462b function table fixes 2012-12-07 14:23:18 -08:00
Alon Zakai 26e9eba5aa generate separate type-specific function tables 2012-12-07 14:23:18 -08:00
Alon Zakai df6018759a add asm imports and exports, hello world works 2012-12-07 14:23:18 -08:00
Alon Zakai 6cf30ed095 export is reserved 2012-12-07 14:23:18 -08:00
Alon Zakai f243434a3e export implementedFunctions when necessary for asm.js 2012-12-07 14:23:18 -08:00
Alon Zakai ec66ae0de4 only export asm functions from asm, not library functions 2012-12-07 14:23:18 -08:00
Alon Zakai 3c38471a75 work towards exports 2012-12-07 14:23:18 -08:00
Alon Zakai 2e28a4acfa remove irrelevant code from asm module 2012-12-07 14:23:18 -08:00
Alon Zakai b140e7ee73 set up asm.js 'module' 2012-12-07 14:23:18 -08:00
Alon Zakai 01082cf68a don't emit debug info that confuses o2.test_openjpeg 2012-11-22 19:42:29 +01:00
Alon Zakai 7ca37d12de add timing info in emscript 2012-11-22 16:27:04 +01:00
Alon Zakai 09c376afee fix ll func identifying for chunking purposes, and add testing of jcache on a large program 2012-11-22 15:15:00 +01:00
Alon Zakai f725733b14 save only strings in jcache 2012-11-22 13:54:35 +01:00
Alon Zakai cbfcb2e9f1 fix emscript funcs caching and add testing 2012-11-21 20:47:02 +01:00
Alon Zakai 3a048d9e58 cache emscript function chunks 2012-11-21 20:47:02 +01:00
Alon Zakai 6f679ca7e7 return chunks of text in chunkify to simplify the ap-iy 2012-11-21 20:47:02 +01:00
Alon Zakai 60a11cfaec improve chunkify to consider previous chunkings when caching 2012-11-21 20:47:02 +01:00
Alon Zakai a2b241e70b refactor chunking code and add function ident information 2012-11-21 20:47:02 +01:00
Alon Zakai 19f97a1e74 make emscript chunks lists of functions, to make it easier later to load them separately from jcache 2012-11-21 20:47:01 +01:00
Alon Zakai c115a4fee6 fix bug with ignore label comments inside functions 2012-11-21 20:47:01 +01:00
Alon Zakai e4aa21f08a fix and test pre caching 2012-11-21 20:47:01 +01:00
Alon Zakai 8fce64dd18 basic jcache on pre with files+cPickle 2012-11-21 20:47:01 +01:00
Alon Zakai 6af60b7137 add more caching logic including short vs full keys 2012-11-21 20:47:01 +01:00
Alon Zakai 58e00ebddf basic logic and stubs for caching pre phase 2012-11-21 20:47:01 +01:00
Alon Zakai f199880bb1 set up parameter passing for jcache 2012-11-21 20:47:01 +01:00
Alon Zakai 813f86354c emit libraries and globals in pre phase, which needs to parse globals anyhow, and avoid overhead of libraries in func phases 2012-11-15 16:10:23 -08:00
Alon Zakai dfce473f4e adjust emscrip parallelization heuristics 2012-11-14 14:58:08 -08:00
Alon Zakai 3b249f8289 optimize writing in emscripten.py 2012-11-13 18:19:34 -08:00
Alon Zakai 4127726504 clean up temp .ll files in child processes 2012-11-13 14:54:40 -08:00
Alon Zakai acbf809a3c bootstrap relooperautomatically 2012-11-10 14:37:15 -08:00
Alon Zakai 563f6ad6d9 improve emscripten temp file storage 2012-11-10 11:26:23 -08:00
Alon Zakai c6144aa6e2 fix handling of splitting in emscript with just one core 2012-11-07 18:57:43 -08:00
Alon Zakai c0b90255c1 take into account forwarded data in chunk sizes in emscript 2012-11-07 18:19:15 -08:00
Alon Zakai 4a6e77e048 test coverage for splitting each function out into an emscript chunk 2012-11-07 09:59:35 -08:00
Alon Zakai 43337adaec allow setting the js compiler in emscripten.py, for people that don't use emcc and ~/.emscripten 2012-11-06 21:11:18 -08:00
Alon Zakai 574156229c emscripten profiling cleanup 2012-11-06 17:27:27 -08:00
Alon Zakai 82dbac5060 optimize emscript indexize using python re 2012-11-06 17:15:28 -08:00
Alon Zakai 8547bf5788 run emscript func chunks in parallel 2012-11-06 17:05:45 -08:00
Alon Zakai 50cb6c73f5 refactor emscript chunking code 2012-11-06 16:29:33 -08:00
Alon Zakai e5afadc45c cleanup 2012-11-06 16:01:47 -08:00
Alon Zakai b87d2cb0b9 fix chunking bug 2012-11-06 15:48:26 -08:00
Alon Zakai 939e129f0f chunk funcs pass in emscript 2012-11-06 15:43:24 -08:00
Alon Zakai f212e44648 cleanup 2012-11-06 14:46:25 -08:00
Alon Zakai 6942df9f2d generate indexedFunctions in pre, and give it the information to do so 2012-11-06 14:24:35 -08:00
Alon Zakai ef4003eadf fix debug metadata 2012-11-06 13:58:45 -08:00
Alon Zakai f1341adb34 process each function separately in emscript 2012-11-06 13:51:48 -08:00
Alon Zakai d1ae32fba5 optimize line splitting in emscript 2012-11-06 11:14:29 -08:00
Alon Zakai d08456de43 emscript profiling 2012-11-06 10:46:04 -08:00
Alon Zakai 8b621ba1df cleanup 2012-11-06 10:36:23 -08:00
Alon Zakai 33cdfe5819 split js compiler into three passes, to facilitate future parallization 2012-11-06 10:26:10 -08:00
Chad Austin 58fa53cd1b remove some unused command line arguments 2012-07-03 18:33:24 -07:00
Alon Zakai 7750e1c501 better hashbang in emscripten.py 2012-04-24 14:47:33 -07:00
Alon Zakai b5e53f4e17 --js-library option to make it easy to add additional library_*.js files 2012-04-13 18:57:41 -07:00
Alon Zakai b8352dc221 show warning if using emscripten.py directly 2012-02-05 10:37:40 -08:00
Alon Zakai 61e4b6b9d4 do not generate annotations when disassembling bitcode 2012-01-21 17:16:50 -08:00
Alon Zakai 3a10fea5e7 remove --optimize and --malloc from emscripten.py, since they are obsoleted by emcc options 2012-01-21 10:08:37 -08:00
Alon Zakai af942f1c89 fix and optimize cached header handling in test runner 2012-01-08 11:19:33 -08:00
Alon Zakai b1ee96ba0d refactor run_js and an additional emcc test 2011-12-11 18:31:10 -08:00
Alon Zakai d13c1e87d5 refactor temp files handling code, and first passing compilation test for emcc 2011-12-11 15:24:04 -08:00
Alon Zakai cd536b75c1 fix broken --optimize 2011-12-06 20:36:20 -08:00
Alon Zakai 316ac8372e rename OPTIMIZE to MICRO_OPTS 2011-11-18 10:16:47 -08:00
LCID Fire c77c200fba Remove muting or std outputting stderr. 2011-11-17 20:08:28 +01:00
Alon Zakai 8f80bc5120 comment on .ll input 2011-10-13 11:40:46 -07:00
Alon Zakai e917be49a0 warning in emscripten.py 2011-10-09 14:48:29 -07:00
Alon Zakai 417d47d048 path fixes 2011-10-05 11:12:45 -07:00
Alon Zakai 3b7e914142 fix merge conflicts 2011-10-05 09:55:48 -07:00
Alon Zakai fea282c5d4 fix langinfo 2011-10-02 17:44:32 +02:00
Alon Zakai 80e2f0333d fix header parsing bug and unistd.h header; fixes unistd_confstr 2011-09-25 18:56:58 -07:00
Alon Zakai 2c342b0b0a fix bug with no headers passed to emscripten.py 2011-09-25 10:33:17 -07:00
Alon Zakai f0ba90f7e5 parse C1|C2 in headers; properly fixes fcntl 2011-09-25 10:28:19 -07:00
Alon Zakai 3b21d884fb improve header constant parsing 2011-09-25 01:20:34 -07:00
Alon Zakai 008137390b emscripten.py option to expose header #defines to library. fixes fcntl 2011-09-24 23:26:59 -07:00
Alon Zakai 2f11f2e153 start to include system headers (tests broken) 2011-09-24 18:21:58 -07:00
Alon Zakai 8643df88d3 harmonize use of COMPILER_ARGS 2011-09-23 17:23:22 -07:00
SiggyBar 3d07ab5d9f Edited emscripten.py via GitHub 2011-09-23 13:43:03 +03:00
Alon Zakai ff8ea20b9b always use clang in emscripten.py; fixes python test 2011-09-04 10:20:02 -07:00
Alon Zakai 3268d11056 fix for running emscripten on a file in the local directory 2011-07-30 10:43:43 -07:00
Alon Zakai f6e02c614a workarounds for js engine bugs 2011-07-30 10:26:30 -07:00
max99x 9ee300c190 Switched from argparse to optparse in emscripten.py, for older Python. 2011-07-13 22:30:29 +03:00
max99x 11e404d7a8 Polish for emscripten.py and its tests. 2011-07-09 20:14:00 +03:00
max99x b37b05b1a0 Reverted hashbang from /usr/bin/python2 to /usr/bin/python. 2011-07-08 08:53:47 +03:00
max99x 1bd1893888 * Added support for automatically determining llvm-gcc/clang data layout in emscripten.py.
* Added a dlmalloc linking test.
* Fixed double-evaling of JSON in emscripten.py when --dlmalloc is passed.
2011-07-08 08:39:31 +03:00
max99x cfbdf06310 Moved cleanup into a `finally` block. 2011-07-08 07:38:42 +03:00
max99x eef9e588e0 Cleaning up temporary files in emscripten.py. 2011-07-08 07:10:13 +03:00
max99x f0bb154229 * Moved pick_llvm_opts() to tools/shared.py.
* Using pick_llvm_opts() instead of hardcoding -O3 in emscripten.py.
* Reassembling only when needed in emscripten.py.
2011-07-08 07:04:38 +03:00
max99x 7dcdb044d3 Rewrite of emscripten.py:
* Uses option arguments instead of positional ones.
* Allows linking to dlmalloc.
* Accepts both .bc and .ll files and takes care of annotations.
* Allows running the LLVM optimization pass automatically.
* Updated test runner to use the new emscripten.py interface.

Refactoring:
* Moved settings.py to root folder. It no longer applies just to tests.
* Updated references to settings.py.
* Added an __init__.py to tools, so we don't have to hack around imports.
2011-07-07 12:24:09 +03:00
Alon Zakai 1be1268669 remove compiler argument to emscripten.py - use ~/.emscripten instead 2011-05-15 19:07:12 -07:00
Alon Zakai ae5aa84484 write to file directly in emscripten.py 2011-03-16 15:31:12 -07:00
Alon Zakai 443107fc61 use proper constant in emscripten.py 2011-03-12 13:37:42 -08:00
Alon Zakai 1f3de5c76e libcxx test; support for linking in test runner; failure in clang_0_1.test_libcxx 2011-01-17 15:36:26 -08:00
Alon Zakai 9d209878f9 refactor shared components of python tools, and add emmaken.py 2011-01-14 22:44:52 -08:00
alon@honor d16c1a6c06 misc minor fixes 2010-10-17 20:59:50 -07:00
alon@honor 7ffcdba839 beginnings of SDL support; minor fixes for SDL; raytrace web demo 2010-09-26 15:59:54 -07:00
alon@honor fea809cb09 refactor into files
--HG--
rename : src/parser.js => src/compiler.js
2010-09-20 18:59:15 -07:00
alon@honor a8d7622f69 allow emscripten.py to read ~/.emscripten for settings 2010-09-12 15:11:43 -07:00
alon@honor ade3a58044 docs in emscripten.py 2010-09-11 23:14:16 -07:00
alon@honor 325fa82fa0 enable sauer test (with RELOOPING=0) 2010-09-09 23:36:52 -07:00
alon@honor a224d9f4cc Allow overriding compiler settings.js 2010-09-09 23:22:10 -07:00
alon@honor a523ad539c emscripten.py 2010-09-09 20:03:24 -07:00