Go to file
rossberg@chromium.org 977b602727 MIPS: Implement rudimentary module linking.
Port r11336 (6dd4e844)

Original commit message:

Implement rudimentary module linking.

Constructs the (generally cyclic) graph of module instance objects
and populates their exports. Any exports other than nested modules
are currently set to 'undefined' (but already present as properties).

Details:
- Added new type JSModule for instance objects: a JSObject carrying a context.
- Statically allocate instance objects for all module literals (in parser 8-}).
- Extend interfaces to record and unify concrete instance objects,
and to support iteration over members.
- Introduce new runtime function for pushing module contexts.
- Generate code for allocating, initializing, and setting module contexts,
and for populating instance objects from module literals.
Currently, all non-module exports are still initialized with 'undefined'.
- Module aliases are resolved statically, so no special code is required.
- Make sure that code containing module constructs is never optimized
(macrofy AST node construction flag setting while we're at it).
- Add test case checking linkage.

BUG=
TEST=

Review URL: https://chromiumcodereview.appspot.com/10035028

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11374 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2012-04-18 15:48:01 +00:00
benchmarks More fixes for V8 benchmark version 7. 2012-03-15 17:13:50 +00:00
build Remove line breaks that GYP didn't like 2012-04-13 08:47:45 +00:00
include Push heap stats as HeapStatsUpdate struct instead of raw array of uint32_t values. 2012-04-17 13:10:17 +00:00
preparser Prevent segfault when preparser fails due to lack of argument. 2012-02-22 10:31:32 +00:00
samples Fix lineprocessor sample and include it in the gyp build. 2012-04-16 09:23:56 +00:00
src MIPS: Implement rudimentary module linking. 2012-04-18 15:48:01 +00:00
test Remove Debug object from the user roots in heap profiler. 2012-04-17 15:57:35 +00:00
tools Small improvements to push-to-trunk.sh and merge-to-branch.sh. 2012-04-13 16:00:31 +00:00
.gitignore Fix .gitignore for test data directories. 2012-02-20 13:17:20 +00:00
AUTHORS Add support for Mac OS X 64bit builds with GYP 2012-03-30 15:01:11 +00:00
ChangeLog Prepare push to trunk. We are now working on 3.10.4. 2012-04-17 11:21:16 +00:00
LICENSE Update LICENSE file 2012-01-03 16:38:42 +00:00
LICENSE.strongtalk Add LICENSE.v8, LICENSE.strongtalk and LICENSE.valgrind to the v8 2011-02-03 07:10:06 +00:00
LICENSE.v8 Add LICENSE.v8, LICENSE.strongtalk and LICENSE.valgrind to the v8 2011-02-03 07:10:06 +00:00
LICENSE.valgrind Add LICENSE.v8, LICENSE.strongtalk and LICENSE.valgrind to the v8 2011-02-03 07:10:06 +00:00
Makefile Fix native ARM build 2012-04-13 07:59:09 +00:00
SConstruct Enable snapshots on MIPS. This is based on 2012-03-21 14:29:14 +00:00