5743 Commits

Author SHA1 Message Date
igor%mir2.org
ffd52f3139 Improve error messages for the optimizer when accessing undefined values
git-svn-id: svn://10.0.0.236/trunk@156233 18797224-902f-48f8-a5cc-f745e15eee43
2004-05-11 10:06:51 +00:00
brendan%mozilla.org
13f36a04e7 Add compileFile function to help bz's plan for tinderbox-driven JS syntax checking.
git-svn-id: svn://10.0.0.236/trunk@156216 18797224-902f-48f8-a5cc-f745e15eee43
2004-05-11 02:13:47 +00:00
brendan%mozilla.org
e40442ada5 Pick up fix for NSPR bug 162786.
git-svn-id: svn://10.0.0.236/trunk@156215 18797224-902f-48f8-a5cc-f745e15eee43
2004-05-11 01:45:20 +00:00
igor%mir2.org
86c10b2be6 Cleanup of hasVarsInRegs
git-svn-id: svn://10.0.0.236/trunk@156201 18797224-902f-48f8-a5cc-f745e15eee43
2004-05-10 16:45:02 +00:00
igor%mir2.org
cdf4d665e2 Apply direct call optimization only for functions that do not need activation.
git-svn-id: svn://10.0.0.236/trunk@156199 18797224-902f-48f8-a5cc-f745e15eee43
2004-05-10 15:28:32 +00:00
igor%mir2.org
13ba66397c Determine functions that require activation during parsing and not in NodeTransformer
git-svn-id: svn://10.0.0.236/trunk@156193 18797224-902f-48f8-a5cc-f745e15eee43
2004-05-10 13:39:14 +00:00
igor%mir2.org
04abe7ec77 Removal of checks for unitialized lVal.getJRegister(): the registers are always initialized in prelude.
git-svn-id: svn://10.0.0.236/trunk@156191 18797224-902f-48f8-a5cc-f745e15eee43
2004-05-10 05:24:29 +00:00
igor%mir2.org
05bb6f96bf Removal of JavaVariable interface in favor of simple method in ClassFileWriter. It allowed to shrink OptLocalVariable and made other code simpler.
git-svn-id: svn://10.0.0.236/trunk@156180 18797224-902f-48f8-a5cc-f745e15eee43
2004-05-09 22:09:03 +00:00
igor%mir2.org
8d6998a857 Clenup the usage of getJRegister/assignJRegister
git-svn-id: svn://10.0.0.236/trunk@156177 18797224-902f-48f8-a5cc-f745e15eee43
2004-05-09 21:07:08 +00:00
igor%mir2.org
ba48bf2784 Move all logic regarding establishing type of variable into Block.java
git-svn-id: svn://10.0.0.236/trunk@156176 18797224-902f-48f8-a5cc-f745e15eee43
2004-05-09 21:06:20 +00:00
igor%mir2.org
745908c584 Removal of no longer used LASTUSE property and corresponding optimizer code
git-svn-id: svn://10.0.0.236/trunk@156167 18797224-902f-48f8-a5cc-f745e15eee43
2004-05-09 12:38:45 +00:00
igor%mir2.org
12cf76796c Remove code for CSE optimisation: it was used only to merger this.property calls but this optimisation changes program semantic if property is controlled by native getter.
git-svn-id: svn://10.0.0.236/trunk@156164 18797224-902f-48f8-a5cc-f745e15eee43
2004-05-09 10:14:01 +00:00
igor%mir2.org
b3ff50dccc OptLocalVariable cleanup: under optimization GETVAR/SETVAR nodes always has a reference to them
git-svn-id: svn://10.0.0.236/trunk@156152 18797224-902f-48f8-a5cc-f745e15eee43
2004-05-08 22:24:02 +00:00
igor%mir2.org
d2a9563bdd Remove markLiveAcrossCall functionality that was never used for any optimizations
git-svn-id: svn://10.0.0.236/trunk@156148 18797224-902f-48f8-a5cc-f745e15eee43
2004-05-08 21:05:00 +00:00
igor%mir2.org
8331fe9960 Merge addToken/addString into single addString
git-svn-id: svn://10.0.0.236/trunk@156141 18797224-902f-48f8-a5cc-f745e15eee43
2004-05-08 19:21:37 +00:00
igor%mir2.org
fd8592a43b Optimization of ++/-- and merge separated postIncrement/postDecrement to single postIncrDecr to remove too much code duplication
git-svn-id: svn://10.0.0.236/trunk@156090 18797224-902f-48f8-a5cc-f745e15eee43
2004-05-07 15:05:11 +00:00
igor%mir2.org
8c81805194 FatBlock is moved to Block as a private class
git-svn-id: svn://10.0.0.236/trunk@156089 18797224-902f-48f8-a5cc-f745e15eee43
2004-05-07 15:03:39 +00:00
igor%mir2.org
9aceb6e2fb Added addPush(boolean)
git-svn-id: svn://10.0.0.236/trunk@156088 18797224-902f-48f8-a5cc-f745e15eee43
2004-05-07 15:00:17 +00:00
brendan%mozilla.org
85d007f932 Add JS_DefineUCFunction (rs=jst).
git-svn-id: svn://10.0.0.236/trunk@156071 18797224-902f-48f8-a5cc-f745e15eee43
2004-05-07 03:21:30 +00:00
timeless%mozdev.org
54d2473c14 Bug 224650 nsXPCOM.h included twice
patch by d_king@xtra.co.nz r=edburns sr=brendan


git-svn-id: svn://10.0.0.236/trunk@155756 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-30 16:46:33 +00:00
brendan%mozilla.org
8a45a1bc43 Reload onbranch after possible native function calls (241050, r=shaver).
git-svn-id: svn://10.0.0.236/trunk@155724 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-30 02:43:50 +00:00
brendan%mozilla.org
960cbc38c7 Typo in comment fixed.
git-svn-id: svn://10.0.0.236/trunk@155707 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-29 21:54:20 +00:00
BradleyJunk%cinci.rr.com
f87ebb5a14 Bug 223536 - Exposing XPConnect jsval <-> nsIVariant to conversion functionality. r=dbradley, sr=jst
git-svn-id: svn://10.0.0.236/trunk@155434 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-24 10:26:27 +00:00
cbiesinger%web.de
f933c9d346 bug 241329, allow compiling spidermonkey with openwatcom
r=brendan


git-svn-id: svn://10.0.0.236/trunk@155403 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-23 19:07:40 +00:00
brendan%mozilla.org
16314e08df Forgot to serialize/deserialize JSRegExp.cloneIndex, and rev XUL FastLoad file version (240404, r+sr=shaver).
git-svn-id: svn://10.0.0.236/trunk@155336 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-22 16:00:48 +00:00
igor%mir2.org
88f91a28e8 Extend optimization ==, !=, ===, !== against null to check null presence on any side of the test.
git-svn-id: svn://10.0.0.236/trunk@155279 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-21 12:00:27 +00:00
brendan%mozilla.org
eb0057bf55 Sigh, go back to requiring a native object for the global object in FindConstructor, to unbreak lazy class init.
git-svn-id: svn://10.0.0.236/trunk@155230 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-20 18:02:49 +00:00
igor%mir2.org
213130c1f1 Fix max stack calculations in dcpLoadAsObject/dcpLoadAsNunber and optimize visitIfJumpRelOp to take advantage of the fact that left and right numerical operands force numeric context.
git-svn-id: svn://10.0.0.236/trunk@155210 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-20 13:00:08 +00:00
brendan%mozilla.org
d514a4fbb5 Fix intN vs. jsword leftover confusion in context-thread API.
git-svn-id: svn://10.0.0.236/trunk@155198 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-20 02:21:27 +00:00
BradleyJunk%cinci.rr.com
7f5b47a062 Ok, I'm going to try this again, patch confused me. This should now be properly backed out
git-svn-id: svn://10.0.0.236/trunk@155173 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-19 20:23:29 +00:00
BradleyJunk%cinci.rr.com
825223ccf2 Bah, I checked in the wrong patch, sorry, backing out
git-svn-id: svn://10.0.0.236/trunk@155167 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-19 20:11:36 +00:00
BradleyJunk%cinci.rr.com
d2b4586c4e Bug 223536 - Exposing XPConnect jsval <-> nsIVariant to conversion functionality
r=dbradley, sr=jst


git-svn-id: svn://10.0.0.236/trunk@155164 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-19 20:05:39 +00:00
gerv%gerv.net
586f796c2a Bug 236613: change to MPL/LGPL/GPL tri-license.
git-svn-id: svn://10.0.0.236/trunk@155091 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-18 22:01:16 +00:00
igor%mir2.org
dbf28bb0ee Reuse code to generate optimized if jumps for boolean operations that return Boolean instance
git-svn-id: svn://10.0.0.236/trunk@155089 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-18 20:29:41 +00:00
igor%mir2.org
937413c06d Cleanups:
1. Added addObjectToDouble() to replace explicit code generation for object to double convertion.
2. nodeIsDirectCallParameter returns dcp register to avoid double look up of OptVariable


git-svn-id: svn://10.0.0.236/trunk@155075 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-18 16:29:12 +00:00
igor%mir2.org
698d8a8121 Layout cosmetics
git-svn-id: svn://10.0.0.236/trunk@155074 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-18 16:26:32 +00:00
igor%mir2.org
9341b8726d Trust JVM to implement "<=" and "<" according to JVM specs and replace code like
d1 == d1 && d2 == d2 && d1 < d2
with simple
    d1 < d2

That in turn allows to simplify code generation and remove OptRuntime.cmp_ functions.


git-svn-id: svn://10.0.0.236/trunk@155071 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-18 14:53:34 +00:00
igor%mir2.org
a388800dbc Trust JVM to implement "<=" and "<" according to JVM specs and replace code like
d1 == d1 && d2 == d2 && d1 < d2
with simple
    d1 < d2


git-svn-id: svn://10.0.0.236/trunk@155070 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-18 14:52:22 +00:00
igor%mir2.org
48611e0501 Remove commented out code to treat integer specially: it is not applicable any longer in any case.
git-svn-id: svn://10.0.0.236/trunk@155069 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-18 14:49:50 +00:00
igor%mir2.org
1fc34a6392 Work on bug 238649: no more support for ClassNameHelper and friends
git-svn-id: svn://10.0.0.236/trunk@155057 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-18 12:15:07 +00:00
igor%mir2.org
a58813d6be Worj on bug 238649: removal of NotAFunctionException
git-svn-id: svn://10.0.0.236/trunk@155055 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-18 09:30:30 +00:00
bryner%brianryner.com
3b4b8ed6c9 deCOMtaminate nsIScriptObjectPrincipal (bug 240745). This also fixes some code in nsCrypto.cpp that sems to have been mis-braced (I don't think it was working as intended). r+sr=jst.
git-svn-id: svn://10.0.0.236/trunk@155049 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-18 00:28:47 +00:00
igor%mir2.org
2436a3402d 1. Change cmp_* functions to return boolean, not int, to simplify code.
2. Move optimizer-only functions from ScriptRuntime.java to optimizer/OptRuntime.java
3. Add ScriptRuntime.wrapBoolean to wrap boolean value and use it in the optimizer


git-svn-id: svn://10.0.0.236/trunk@154970 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-16 07:38:20 +00:00
timeless%mozdev.org
4218cf0321 Fixing build and nspr links
git-svn-id: svn://10.0.0.236/trunk@154945 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-15 21:36:33 +00:00
brendan%mozilla.org
85177cb29b More cloned function object fixing: don't convert a jsval to a JSFunction, then back up via fun->object -- that leads to the clone-parent, when the value may be the clone we want (240577, r=shaver).
git-svn-id: svn://10.0.0.236/trunk@154942 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-15 21:01:24 +00:00
timeless%mozdev.org
1d6f0570c5 Bug 240500 JS_DefineFunctions APIDoc for return is wrong
r=brendan


git-svn-id: svn://10.0.0.236/trunk@154926 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-15 16:20:34 +00:00
brendan%mozilla.org
3ce033390e Fix old watchpoint function vs. clone bug (240577) and undo bogus strict warning from lazy class init (240404 in part).
git-svn-id: svn://10.0.0.236/trunk@154919 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-15 09:05:46 +00:00
brendan%mozilla.org
57ad8c9b24 Hackaround for bug 240404.
git-svn-id: svn://10.0.0.236/trunk@154917 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-15 08:11:55 +00:00
igor%mir2.org
f99f7924f9 1. Throw IllegalArgumentException instead of EvaluatorException when argument does not belong to JS runtime types.
2. Optimize eq and shallowEq in ScriptRuntime to share code with optimized versions in Interpreter.


git-svn-id: svn://10.0.0.236/trunk@154868 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-14 14:50:24 +00:00
igor%mir2.org
adf0c85c5c Layout cosmetics
git-svn-id: svn://10.0.0.236/trunk@154867 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-14 14:46:58 +00:00