Commit Graph

11242 Commits

Author SHA1 Message Date
Andreas Gal
6f69a35718 Root all strings and objects first when unboxing. Then box values that might trigger the GC (doubles/ints). This probably needs some performance tuning over time. 2008-07-10 13:24:49 -07:00
Andreas Gal
e42a82831b Merge. 2008-07-10 09:24:59 -07:00
Andreas Gal
63e8552ce0 Don't concede an inch to ISO C++. Substract the size of array[1] from the overall struct size when allocating. 2008-07-10 09:22:01 -07:00
shaver@mozilla.org
9218d7f8e3 MSVC knows about intptr_t, and doesn't like our remix 2008-07-10 10:21:29 -04:00
shaver@mozilla.org
66ff430be2 I'm going to just keep bludgeoning these typedefs until they stick 2008-07-10 10:18:22 -04:00
shaver@mozilla.org
131f5aca33 try to find malloc on Linux; this buildbot thing rules the school 2008-07-10 10:03:45 -04:00
shaver@mozilla.org
7357ba307c use typedefs instead of stdint.h, because someone forgot to tell MSVC it was 2008 2008-07-10 09:52:34 -04:00
shaver@mozilla.org
ee71713651 can't have zero-sized arrays in ISO C++, says gcc 2008-07-10 09:29:42 -04:00
shaver@mozilla.org
3f3e4c108b use stdint.h instead of typedefs to help Linux find intptr_t 2008-07-10 09:20:36 -04:00
shaver@mozilla.org
2ffa61c5b4 build nanojit 2008-07-10 09:12:53 -04:00
shaver@mozilla.org
edb9d11c27 Make nanojit arch selection explicit in config/*, though for now only OS X and Linux
on x86.
2008-07-10 09:12:17 -04:00
shaver@mozilla.org
4b07cd2663 rename builtins.tbl *back*, because nanojit expects that name, and whatever
--HG--
rename : js/src/jsbuiltins.tbl => js/src/builtins.tbl
2008-07-10 08:53:03 -04:00
shaver@mozilla.org
0ed71e422d rename builtins.tbl to our usual form
--HG--
rename : js/src/builtins.tbl => js/src/jsbuiltins.tbl
2008-07-10 08:51:44 -04:00
shaver@mozilla.org
8413035cda fix include ordering for THREADSAFE build 2008-07-10 08:40:43 -04:00
shaver@mozilla.org
f105edebe6 fix compilation, but possibly not logic, of shared-object defense 2008-07-10 08:05:25 -04:00
shaver@mozilla.org
19e59bdda5 revert ancient shuffling of js_CompareAndSwap decl to fix THREADSAFE build 2008-07-10 07:57:18 -04:00
shaver@mozilla.org
c66b22b530 some build fixes to help in-browser and other-arch build 2008-07-10 07:56:36 -04:00
Andreas Gal
dd9aee02b8 Prime the page cache during VM startup. This makes us eat the page cache allocation overhead there instead of during the first use. This is just a hotfix. We still need a rewrite of the page cache. 2008-07-09 23:47:17 -07:00
Andreas Gal
106c582c79 Merge. 2008-07-09 23:42:46 -07:00
Andreas Gal
cb1318a185 Backed out changeset 234230320093 (reducing code cache size due to startup issue.) 2008-07-09 23:42:27 -07:00
Andreas Gal
e5989165b9 Merge. 2008-07-09 19:12:09 -07:00
Brendan Eich
1168c30a0a Always allocate gvars for top-level scripts if any global names are used -- may hurt some microbenchmarks but we can fix it via bug 441686. 2008-07-09 19:10:01 -07:00
Andreas Gal
520e1d0567 Assert if no gvar is allocated for an undeclared global. 2008-07-09 18:51:08 -07:00
Andreas Gal
9690bf6254 Merge. 2008-07-09 18:25:36 -07:00
Andreas Gal
1a2aead6ae varobj is not passed through the chain. Make sure to use global->varobj for gvar access. 2008-07-09 18:25:10 -07:00
shaver@mozilla.org
96af6df932 More tests, working on crashes. 2008-07-09 21:09:11 -04:00
Brendan Eich
0ce52c7d2d Merge. 2008-07-09 17:58:19 -07:00
Andreas Gal
ff827bd70c Reduce code cache size until we fix the page allocation code to not touch all the pages at startup (nanojit issues, assigned to gal). 2008-07-09 17:37:41 -07:00
Andreas Gal
429ebf8d6c Fixed name/setname code to just track the value move instead of touching memory since we have global variables in our native frame now. We have to fix the page cache issues before we can benchmark this. 2008-07-09 17:15:27 -07:00
Brendan Eich
a86297702a Condition fp->arg*/*vars usage on fp->callee, not fp->down. 2008-07-09 17:10:42 -07:00
Andreas Gal
a529e2f6b2 Add verbose native stack frame printing. 2008-07-09 17:09:22 -07:00
Brendan Eich
25d02bc059 Memoize implicit gvars in the interpreter, on assignment (JSOP_BINDNAME/JSOP_SETNAME); fix recoder l/r operand order bug. 2008-07-09 16:37:31 -07:00
Brendan Eich
046cf0942e 1. Fix inc to address the right result stack slot; 2. Require via assertions that the interpreter memoize implicit gvars (patch to do that next; bitwise-and will assert until that lands). 2008-07-09 15:15:32 -07:00
Blake Kaplan
496daa0233 Add missing #undef, clean up trailing whitespace. 2008-07-09 23:40:06 +02:00
Brendan Eich
16d64a228c Remove unnecessary JSOp cast. 2008-07-09 13:46:46 -07:00
Brendan Eich
098ae00111 Memoize global name gets and sets as if they refer to a declared gvar. 2008-07-09 11:42:31 -07:00
Andreas Gal
694d934453 Merge. 2008-07-09 10:06:24 -07:00
Andreas Gal
6d3a852b99 Removed assert that compares nativeFrameSlots to nativeFrameOffset since nativeFrameOffset is undefined in case sp is at sp+depth, so the assert sometimes randomly bites. Also fixed typo in cmp(). trace-test.js compiles now. 2008-07-09 10:05:59 -07:00
Brendan Eich
ec06240554 Tweak a few interval tests, eliminate casts, space patrol. 2008-07-09 09:59:51 -07:00
shaver@mozilla.org
55b0e432d2 Update with some additional test coverage (crashes in setgvar test) 2008-07-09 08:11:03 -04:00
Andreas Gal
868026d778 Sync with mozilla-central. 2008-07-09 01:18:56 -07:00
Andreas Gal
b8441f9521 Stricter typing of the tracker code path which now only accepts jsval as suggested by Brendan. 2008-07-09 00:29:23 -07:00
Andreas Gal
ccfdbb5402 Fixed bug in nativeFrameSlots and use an assert to compare the result with nativeFrameOffset (which is slower, but more precise). 2008-07-09 00:26:01 -07:00
Andreas Gal
ec6f0b42ed Removed numMapEntries since typeMap is not really part of the SideExit struct yet anyway. 2008-07-09 00:13:35 -07:00
Andreas Gal
3b13268806 Move builtin[] table in jsbuiltin.cpp 2008-07-08 23:48:06 -07:00
Andreas Gal
c3748164f4 Housekeeping. Remove a few warnings during BUILT_OPT and spelling in comments. 2008-07-08 22:40:07 -07:00
Andreas Gal
ca7768fbda sp_adj is now maintained in bytes, not words, so +8 is now the magic value to point to the top of the stack. All stores above that watermark are eliminated by StackFilter in nanojit. 2008-07-08 21:03:30 -07:00
Andreas Gal
d878338074 Merge. 2008-07-08 20:20:24 -07:00
shaver@mozilla.org
9896b04869 merge 2008-07-08 23:14:47 -04:00
Andreas Gal
d9974b77e2 Removed bogus debug printfs. 2008-07-08 20:09:15 -07:00