pschwartau%netscape.com
bffe6774e1
Patch by zack-weg@gmx.de correcting errors in this testcase. See bug 224951.
2003-11-07 18:08:35 +00:00
pschwartau%netscape.com
20f097afc9
Rearranging code to make style consistent with other tests in this directory.
2003-11-07 18:00:09 +00:00
igor%mir2.org
2be95ba6cd
Do constant folding during parsing since it is cheap to do that at this stage then in optimizer during separated phase so even the interpreter will take advantage of the folding.
2003-11-07 15:58:57 +00:00
pschwartau%netscape.com
fc95d6d3d2
Initial add. Regression test for bug 224676.
2003-11-05 04:08:11 +00:00
igor%mir2.org
fd70d98f29
ClassRepository is removed from list of API classes to allow to replace it in future by direct access to optimizer.
2003-11-04 14:55:58 +00:00
igor%mir2.org
ecad46eb8f
Adjusting examples not to assume that Context.initStandardObjects(ScriptableObject) returns ScriptableObject since that was changed back to Scriptable for compatibility.
2003-11-04 14:54:43 +00:00
igor%mir2.org
56959e7696
Removal of initStandardObjects(boolean) not to proliferate versions of initStandardObjects: if Rhino would support recursive object sealing, it would not be necessary to call initStandardObjects with sealed flag at all.
2003-11-04 14:52:48 +00:00
igor%mir2.org
0e92e06301
JavaDoc @link fixes
2003-11-04 14:49:20 +00:00
igor%mir2.org
56cd62465f
Return type of Context.initStandardObject(ScriptableObject) is changed back to Scriptable for binary compatibility.
2003-11-03 20:42:32 +00:00
brendan%mozilla.org
2341652777
Move ComputeThis call up in js_Invoke so __noSuchMethod__ sees the correct |this| parameter.
2003-11-03 20:23:23 +00:00
igor%mir2.org
011d5fcfd1
Removal of possibility to alter JavaAdapter through an external property as such functionality is redundant and can be emulated with altering JavaAdapter in the scope object after Context.initStandardObjects returns.
2003-11-03 19:58:17 +00:00
igor%mir2.org
8844a1f96b
Use reflection to access JavaAdapter to allow to use NativeJavaObject with JavaAdapter classes absent.
2003-11-03 19:55:37 +00:00
igor%mir2.org
0bbeb14dff
When converting function to Java interface and checking for the previous wrapping, do not use key stored in ClassCache.javaAdapterIFGlueMasters as it can be thrown away when caches are emptied and instead construct a key object from the passed class and uniqueness tag.
2003-11-03 18:15:00 +00:00
igor%mir2.org
6a865fc062
In NativeJavaClass.constructSpecific use passed scope, not function pointer as scope source so shared system scope with custom top scope and custom wrap factory would work.
2003-11-03 18:06:49 +00:00
igor%mir2.org
d2c27acd1a
Added Kit.makeHashKeyFromPair to make combined key for hashtables from 2 objects
2003-11-03 18:04:27 +00:00
brendan%mozilla.org
2c67a1add3
Fiddle a bit cosmetically to make arena member comparisons have the same form; add a comment.
2003-11-03 17:47:43 +00:00
brendan%mozilla.org
2ccb766a13
Squeeze a few instructions out of the noSuchMethod special case, and restore needed arena metering (followup to 196097, r=sparky).
2003-11-03 05:07:41 +00:00
brendan%mozilla.org
4be366b3cf
Fix missing cx param problem (223041, r=caillon, sr=dbaron).
2003-11-03 04:26:55 +00:00
igor%mir2.org
f9931a4665
Added Context.javaToJS as a convenient way to get JS values from Java objects and Context.emptyArgs so documentation does not need to refer to ScriptRuntime.emptyArgs.
2003-11-02 21:15:14 +00:00
igor%mir2.org
970fe84f50
In WrapFactory.wrap use String.valueOf(charValue) instead of new String(new char[] { charValue }) to get string from character.
2003-11-02 21:12:08 +00:00
brendan%mozilla.org
979ef1557d
Fix JS_DropPrincipals (thanks, dbaron).
2003-11-02 03:25:25 +00:00
brendan%mozilla.org
4e6cfd64bd
Use eval's object principals if possible, ditto for other eval-like methods (223041, r=caillon, sr=shaver).
2003-11-02 01:04:50 +00:00
igor%mir2.org
ea9b76f64c
Deprecation of get/setAttributes forms that take start argument. It was never used to pass anything but this object.
2003-11-01 20:23:28 +00:00
igor%mir2.org
4c360b0900
Since Undefined inherits from Scriptable, not ScriptableObject, it does not need to override get/setAttributes()
2003-11-01 20:21:28 +00:00
igor%mir2.org
2102257103
Removal of completely unnecessary getSlotToSet as its implementation repeated already unsuccessfully search done by getSlot. The put methods now call addSlot directly.
...
In addition, shared code in has and get to check/update lastAccess cache is moved to common method getNamedSlot.
2003-11-01 19:40:24 +00:00
igor%mir2.org
5294159feb
GlobalScope is removed as its introduction had to serious consequences with compatibility and usage. Instead a special purpose class ClassCache is introduces to hold various caches. The class binds itself to an arbitrary object by using new SciptableObject.associateValue method so arbitrary ScriptableObject can be used as a scope without performance penalties.
2003-11-01 15:34:23 +00:00
brendan%mozilla.org
8ae9b25b8b
Fix from zack-weg@gmx.de for magic number botch and early Java bug copy/paste in Math.random code (211590, r=me).
2003-10-31 23:21:13 +00:00
igor%mir2.org
15fc231809
parent and prototype fields are made privatenot to allow to mess with them from subclasses. Althoygh setter and getter can be used still to do that, at least some sanity checks can be added there.
2003-10-30 16:40:43 +00:00
igor%mir2.org
e12e6f2269
Use getPrototype instead of explicit reference to this.prototype
2003-10-30 16:40:42 +00:00
igor%mir2.org
a123fd228b
passing Context instance to NativeJavaMethod.findMethod not to call Context.getContext() id some form of API to override method selection will surface
2003-10-30 16:40:41 +00:00
igor%mir2.org
ea873cadc1
Added readReader
2003-10-30 16:40:40 +00:00
igor%mir2.org
c0c59dd572
Not to call Context.getContext() in TokenStrea/IRFactory, an explicit Context instance is passed to TokenStream constructor
2003-10-30 16:40:39 +00:00
igor%mir2.org
e0c6b113b2
Use passed scope instead of the object parent scope
2003-10-30 16:39:46 +00:00
igor%mir2.org
22d09dcc14
First part of resolving http://bugzilla.mozilla.org/show_bug.cgi?id=223435 :
...
Allow to pass JS function to Java method accepting interface with single method. The function will be called when interface method will be called.
2003-10-28 08:37:30 +00:00
igor%mir2.org
db926bd850
Added getAssociatedValue()/associateValue() to allow to connect arbitrary application-specific object with ScriptableObject.
2003-10-27 19:19:50 +00:00
brendan%mozilla.org
6b1992aefa
Don't under-malloc for short script filename entry (223810, r=shaver, a=dbaron).
2003-10-27 19:13:01 +00:00
igor%mir2.org
7a27515d50
Added initHash which would put value into hashtable only if it is first. This is usable to ensure proper synchronization with lazy initialization.
2003-10-27 18:45:39 +00:00
igor%mir2.org
69200530cc
If invoker master throws RuntimeException during creation of invoker, then disable invokerOptimization. It fixes regression when SecurityManager prevents InvokerMaster from creation of class loader.
2003-10-27 18:42:39 +00:00
tor%cs.brown.edu
9d3e99b64f
Backout of bug 153586. a=asa
2003-10-27 17:00:38 +00:00
igor%mir2.org
0ed88eb6e1
Added addPush version taking long argument.
2003-10-27 15:47:05 +00:00
pschwartau%netscape.com
15cd8633b1
Replacing "Copyright �" by "Copyright (C)" in JS test suite sources. See bug 222759.
2003-10-27 01:49:27 +00:00
igor%mir2.org
ff9cd1a75d
Common logic to create and cache adapter class on demand is moved to the new method getAdapterClass
2003-10-25 11:46:18 +00:00
igor%mir2.org
f75ab50572
In getApplicationClassLoader cache result of Thread.getContextClassLoader if it coincides with the loader that loaded Context class.
2003-10-25 11:42:34 +00:00
brendan%mozilla.org
574241310a
Hack to cope with input case (/|/, /x|/, etc.) not handled by recent rewrite (223535, r=timeless, sr=shaver, a=asa).
2003-10-24 22:23:36 +00:00
pschwartau%netscape.com
106370e00a
Adding more cases.
2003-10-24 17:55:06 +00:00
pschwartau%netscape.com
60359c2bff
Initial add. Regression test for bug 223535.
2003-10-24 17:47:36 +00:00
pschwartau%netscape.com
d518ebafde
Follow Perl 5, not ECMA-262 Ed 3 on unescaped, unbalanced brackets and braces. See bug 223273.
2003-10-24 17:18:21 +00:00
pschwartau%netscape.com
235dc1efdf
Correcting a mistake: remember to escape the escape character inside eval strings!
2003-10-24 00:51:37 +00:00
brendan%mozilla.org
bb9deac330
Fix to error on extra ) in regexp rather than corrupt 'n' crash (223273, r=timeless, sr=shaver, a=asa).
2003-10-24 00:37:49 +00:00
igor%mir2.org
e8f46e37c1
Added information on shared scopes
2003-10-23 21:49:23 +00:00
igor%mir2.org
f28c2bb83d
Updated to remove NotAFunction exception handler which is not generated any more and was deprecated.
2003-10-23 21:48:45 +00:00
pschwartau%netscape.com
8c55a03216
Whitespace fix.
2003-10-23 21:15:06 +00:00
pschwartau%netscape.com
53519242cd
Fixing a comment.
2003-10-23 21:13:34 +00:00
pschwartau%netscape.com
aa3708c9cc
Added cases covering unbalanced brackets and braces.
2003-10-23 20:48:43 +00:00
pschwartau%netscape.com
74211d2bde
Initial add. Regression test for bug 223273.
2003-10-23 20:27:32 +00:00
igor%mir2.org
b0cc0c620a
The class is no longer used.
2003-10-22 08:02:37 +00:00
igor%mir2.org
f828aace6b
1. Added Context.hideFromContextListeners() which makes invisible for listeners.
...
2. Made sure that ContextListener.contextCreated is called only once. After a resent change to call the method from Context.enter, not from Context constructor the method would be called each time on first enter which broke the debugger.
3. Using new listener utilities from Kit instead of ListenerArray methods that would create a special storage object only if there is more then one listener.
2003-10-22 08:01:46 +00:00
igor%mir2.org
dd0cf32131
Added JavaDoc for listener utilities
2003-10-22 07:57:49 +00:00
dbaron%dbaron.org
ac89bf7304
Convert CR-LF line endings to LF.
2003-10-22 07:30:52 +00:00
brendan%mozilla.org
9410aed3d1
Check in rogerl's big perf patch (85721).
2003-10-22 07:01:50 +00:00
brendan%mozilla.org
795b642e96
Add __noSuchMethod__ handler support, and clean up js_ValueToFunction/js_ReportIsNotDefined error diagnosis hard cases (196097, r=sparky).
2003-10-22 06:26:03 +00:00
caillon%returnzero.com
de3d3fbf61
Re-land patch for bug 83536, merging principal objects.
...
Also includes fixes from bug 216041.
r=bzbarsky
sr=jst
2003-10-21 22:11:49 +00:00
tor%cs.brown.edu
deda694a3a
Bug 153586 - add js callback to convert native string to unicode, use
...
for date.toLocale*String. r=jst, sr=brendan
2003-10-21 18:03:04 +00:00
igor%mir2.org
7ca1f5cb7d
Introduction of org.mozilla.javascript.Kit to contain generic support utilities.
2003-10-21 13:43:22 +00:00
igor%mir2.org
6aac95c7d1
Use getPrototype instead of explicit reference to this.prototype
2003-10-21 13:43:21 +00:00
igor%mir2.org
6c99cceb21
Added readUrl method to shell
2003-10-21 09:13:59 +00:00
igor%mir2.org
0e344eacac
Reuse results of method.getParameterTypes() and better hash code for javaAdapterSignature.
2003-10-20 14:11:08 +00:00
igor%mir2.org
1ff42561c8
Count syntax error in TokenStream directly instead of going through Context object so it would be possible to use TokenStream without instantiating Context.
2003-10-20 14:06:12 +00:00
igor%mir2.org
d77c60cb02
Cosmetics: indentation fixes
2003-10-20 14:02:53 +00:00
igor%mir2.org
91d08bfaf5
1. Static hash table in JavaAdapter is replaced by a non-static fields in GlobalScope.
...
2. NativeObject implements just Serializable, not Externalizable interface to simplify serialization.
2003-10-19 09:59:52 +00:00
igor%mir2.org
8d96213e1b
Fixing http://bugzilla.mozilla.org/show_bug.cgi?id=222635 :
...
Now activation is always properly removed under the debugger.
2003-10-17 18:24:29 +00:00
igor%mir2.org
cb7cd3ec6f
I changed FunctionObject and ScriptableObject to use MemberBox wrapper for native methods, getters and setters that allowed to get following:
...
1. Method serialization code in MemberBox takes care of all serialization so ScriptableObject and FunctionObject does not need anything on its own.
2. Invoker optimization is extended to getters and setters in ScriptableObject.
3. Recovery from IllegalAccessException is extended to all cases of method invocation via reflection.
4. All error wrapping happens in a single class so FunctionObject and ScriptableObject does not need to wary about it.
2003-10-16 14:27:53 +00:00
pschwartau%netscape.com
9ae2c06c8d
Skip new tests that use SpiderMonkey's f.caller property (non-ECMA).
2003-10-16 04:08:38 +00:00
brendan%mozilla.org
a1cd41a8ea
Fix f.call and f.apply so f.caller skips those natives, to match IE (222029, r=shaver).
2003-10-16 03:30:18 +00:00
igor%mir2.org
84f91c674b
Updated ftp links to the download files due ftp server reorganization
2003-10-15 18:13:33 +00:00
brendan%mozilla.org
bf84cc3273
Fix comment bug reported by timeless (222055).
2003-10-13 23:25:48 +00:00
pschwartau%netscape.com
6b038f578b
Initial add. Regression test for bug 222029.
2003-10-13 22:23:17 +00:00
pschwartau%netscape.com
6de1779a96
Whitespace fix.
2003-10-13 20:56:55 +00:00
pschwartau%netscape.com
8ece50899f
Initial add. Regression test for bug 222029.
2003-10-13 20:18:46 +00:00
brendan%mozilla.org
0d2b22b67b
Expand tabs, add assertion.
2003-10-13 18:38:50 +00:00
igor%mir2.org
fc7c0bf413
Code to create invoker master instance is placed into Invoker itself since FunctionObject does not need to know which classes stays behind the implementation.
2003-10-13 16:04:20 +00:00
igor%mir2.org
93a6e530db
FunctionObject.convertArg is split into FunctionObject.getTypeTag() and FunctionObject.convertArg version taking that tag for better error reporting and performance since the tag can be cached and an expensive sequence of if and instanceof to check for the type would be replaced by a simple switch.
2003-10-13 16:02:35 +00:00
igor%mir2.org
4e0f4b2130
Run ContextListener.contextCreated from Context.enter(), not Context constructor. In this way listeners will not be invoked for Context that are never associated with a thread and contextCreated will be more symmetric with Context.contextReleased.
2003-10-13 15:57:18 +00:00
igor%mir2.org
e18f8b655f
Inlining code into exceMethod to shrink code size.
2003-10-13 07:30:33 +00:00
igor%mir2.org
1903241b26
In getLength check for version of compiled function, not version from the current context for consistency.
2003-10-13 07:29:43 +00:00
igor%mir2.org
921de84285
In classOrNull and newInstanceOrNull catch and ignore LinkageError since it can be thrown if class links to unknown class.
2003-10-13 07:28:37 +00:00
igor%mir2.org
d14b894ae8
Added to build.xml the smalljar target to generate smalljs.jar. Its usage is documented in doc/footprint.html.
2003-10-12 13:45:41 +00:00
igor%mir2.org
e59ea85bdc
More optimizations to shrink code size.
2003-10-12 08:52:24 +00:00
igor%mir2.org
7dcd39d424
Inlining of private functions and reorganization to shrink code size to offset resent Rhino size growth
2003-10-11 20:29:32 +00:00
igor%mir2.org
85487e456b
Using ScriptRuntime.splitSC to extract packages from semicolon-separated string instead of explicit code.
2003-10-11 20:27:08 +00:00
igor%mir2.org
16966afd81
Added ScriptRuntime.splitSC
2003-10-11 20:24:27 +00:00
igor%mir2.org
0f0bba3319
Change JavaScriptException to include source and line information in Throwable.getMessage()
2003-10-11 19:36:25 +00:00
igor%mir2.org
5791085f43
Optimization: for line counting use offset of line icode of interpreter instead of the line itself. In this way interpreter does not need to read encoded line data on each line marker which can occur quite frequently.
2003-10-11 19:34:29 +00:00
dbaron%dbaron.org
ac7430c22e
I am not sure what brendan meant to do, but making JS_HAS_XDR always be the same as it was before the previous checkin should get the Mozilla client working again.
2003-10-11 19:01:43 +00:00
brendan%mozilla.org
dec5855fd7
Split jsconfig.h JS_HAS_XDR macro for better code factoring.
2003-10-11 18:17:53 +00:00
dwitte%stanford.edu
53e3afed0c
spelling fixes... s/debuging/debugging/. thanks to WeirdAl for the patch.
...
b=106386, p=ajvincent@juno.com , r=timeless, sr=bz.
2003-10-10 04:31:15 +00:00
brendan%mozilla.org
c3ab352130
Remove false comment (whew).
2003-10-10 01:46:55 +00:00
igor%mir2.org
b51c421805
BinaryDigitReader logic is inlined in ScriptRuntime.stringToNumber removing the need in the class.
2003-10-09 17:38:34 +00:00
peter%propagandism.org
884ae755ae
Move voidable string into xpcom. Part of fix for bug 221387 (XPathExpression.createExpression doesn't throw NAMESPACE_ERR). r=bz, sr=dbaron.
2003-10-09 16:15:29 +00:00
igor%mir2.org
1300a83780
Use newly introduced Context.initStandardObjects(), not initStandardObjects(null) in the examples
2003-10-09 07:00:40 +00:00
igor%mir2.org
0b8d376817
Use non-static functions in Shell
2003-10-09 07:00:01 +00:00
igor%mir2.org
1532e6ac8b
Cosmetics: removal of end-of-line junk space
2003-10-09 06:57:12 +00:00
igor%mir2.org
946702bcf1
Use newly introduced Context.initStandardObjects(), not initStandardObjects(null) in the documentation
2003-10-09 06:55:49 +00:00
igor%mir2.org
841c039322
dist depends on deepclean to prevent erroneous distribution builds when ant fails to detect source code dependencies and misses recompilation.
2003-10-09 06:44:38 +00:00
igor%mir2.org
ba83445719
GlobalScope is a part of API now.
2003-10-09 06:42:30 +00:00
igor%mir2.org
ac55982694
Cosmetics: change argument order for package-private EcmaError constructor to it matchers other cases when a method takes line and column number.
2003-10-09 06:41:28 +00:00
igor%mir2.org
4431450289
Added version of Context.initStandardObjects that does not take scope as its argument.
2003-10-09 06:37:25 +00:00
brendan%mozilla.org
8786153bd1
Late-breaking security fix (221526, r=shaver).
2003-10-07 23:02:29 +00:00
cls%seawood.org
540088e8fa
What bryner said
2003-10-07 22:07:14 +00:00
bryner%brianryner.com
7dd357208e
attempting to fix windows bustage
2003-10-07 21:18:57 +00:00
cls%seawood.org
378b851b12
Case matters.
...
Fixing mingw cross-compiling bustage.
2003-10-07 20:39:25 +00:00
igor%mir2.org
1f791c9fda
Adding getParent() to omg.debug.DebuggableScript to allow to browse whole script function tree from any function.
2003-10-01 15:03:06 +00:00
igor%mir2.org
5fa056c85d
Cosmetics: expanding tabs
2003-10-01 15:02:09 +00:00
igor%mir2.org
7a6878c0e9
Changing ScriptRuntime.initScript to return vois since it does not and should not change scope
2003-10-01 11:55:56 +00:00
igor%mir2.org
03ac8566e9
Extending omj.debug.DebuggableScript interface with functions to access nested functions and check if it is top-level script.
2003-10-01 11:55:55 +00:00
BradleyJunk%cinci.rr.com
a8abe61adf
Bug 220692 - Syntax error in /js/src/xpconnect/xpcmodule.cpp if MOZ_JSLOADER not defined. r=timeless, sr=brendan
2003-10-01 00:11:17 +00:00
pschwartau%netscape.com
6a080c99b8
Initial add. Regression test for bug 39309.
2003-10-01 00:03:32 +00:00
pschwartau%netscape.com
3f2915e0d1
Initial add. Regression test for bug 220584.
2003-09-29 17:45:15 +00:00
igor%mir2.org
7e809e3208
Fixing http://bugzilla.mozilla.org/show_bug.cgi?id=220584 :
...
Script() result has no prototype and scope chains
Fix: initialize scope and prototype for Script instances in
NativeScript.jsConstructor
If Script is called as a constructor, it will get the proper parent and
prototype from the generic code to initialize newly constructed objects but if
it is called as a function, then it is the responsibility of the call
implementation to do the job.
2003-09-28 22:52:57 +00:00
igor%mir2.org
ce1bfbad95
Fixing http://bugzilla.mozilla.org/show_bug.cgi?id=220362 :
...
Local functions lose scope when called from outside (compiled with dynamic scopes, optlevel >= 0)
Fix: ignore dynamic scope for nested functions and functions declared within
the with statement.
The patch makes optimizer to behave in the same way as the interpreter does
with regard to dynamic scope: it ignores it for nested functions and functions
declared under with statements. Now parser checks for such functions and set
new flag itsIgnoreDynamicScope in FunctionNode. The flag then checked both by
interpreter and optimizer during byte code generation.
The patch also changes slightly interaction between changing dynamic scope flag
and interpreted Script instances. Currently the dynamic flag is read during
script execution but patch changes interpreter to behave exactly as the
optimizer does: the dynamic flag only affect script compilation, changes in its
value does not affect already compiled scripts.
2003-09-28 20:01:27 +00:00
igor%mir2.org
64ee78aaec
Self-documenting example
2003-09-28 19:49:07 +00:00
igor%mir2.org
026f5acdd0
Added msg.adapter.zero.args
2003-09-28 18:14:16 +00:00
igor%mir2.org
4a3446307d
JavaAdapter.createAdapterCode now takes the function name to function arity instead of Scriptable object. It allows to remove a hack from optimizer/Codegen where it created a temporary Scriptable just to populate it with FunctionNode as a source of arity values thus violating requirement on types of JS values.
...
The rest of JavaAdapter code is updated to use the ned form of the method as well.
2003-09-28 18:13:51 +00:00
igor%mir2.org
b38d3d8ef9
In ScriptRuntime.toInt32 check for Integer, not Byte when doing short-circuit optimization since Integer is always used to wrap int values.
2003-09-28 16:03:10 +00:00
brendan%mozilla.org
c9ea43af63
Redo thread/process stack size checking and API to avoid having to guess/fudge; instead, require embedders to advise explicitly, for fudge-free limits and backward API compatibility (192414, r=shaver).
2003-09-26 22:47:01 +00:00
pschwartau%netscape.com
996a0fd708
Improving readability.
2003-09-26 19:37:15 +00:00
pschwartau%netscape.com
cd5d6878eb
Initial add. Regression test for bug 220367.
2003-09-26 19:24:58 +00:00
pschwartau%netscape.com
5e0074371b
Initial add. Regression test for bug 220362.
2003-09-26 18:56:23 +00:00
igor%mir2.org
ac0d4eb822
Fixing http://bugzilla.mozilla.org/show_bug.cgi?id=220367 :
...
Fix: if in RegExpImpl.getParenSubString parens.get(i) is null, return
emptySubstring
If a branch of | with capturing () does not match , then RegExpImpl.parens will
contain null for corresponding $<group-number> according to code in
NativeRegExp.executeRegExp(). The current code does not check for a possible
null in RegExpImpl.parens when calling toString and the patch fixes that by
making sure that getParenSubString return SubString.emptySubString in such
cases.
2003-09-26 17:25:33 +00:00
brendan%mozilla.org
74e1a4f197
Follow-up fix to clamp cx->stackLimit so it doesn't wrap (192414, r=shaver).
2003-09-26 17:22:14 +00:00
brendan%mozilla.org
4d3ea782f9
Check in my version of a patch to avoid thread or process stack overflow from Igor Bukanov <igor@fastmail.fm> (192414, r=shaver).
2003-09-24 16:49:58 +00:00
igor%mir2.org
913e92ee46
Use ScriptableObject.getPropertyIds(jsObj) to get all object ids instead of explicit working throw prototype chain.
2003-09-24 13:35:52 +00:00
igor%mir2.org
b482ee16b2
Optimization in getPropertyIds: since Scriptable.getIds returns unique ids, check against id duplication only if prototype chain contains more then one object with enumerable ids. It this way there is no need to allocate hash map in the common case of objects without enumerable properties on the prototype chain.
2003-09-24 13:32:42 +00:00
igor%mir2.org
1642f1695e
Optimization in IdEnumeration: since Scriptable.getIds returns unique ids, check against id duplication only if prototype chain contains more then one object with enumerable ids. It this way there is no need to allocate hash map in the common case of objects without enumerable properties on the prototype chain.
2003-09-24 13:29:17 +00:00
brendan%mozilla.org
997ae59d09
Eliminate unnecessary local variable.
2003-09-23 00:07:24 +00:00
brendan%mozilla.org
1501ed6f52
Don't finish temp and code arena-pools in JS_GC, in case it's nesting in the compiler via the debugger (131712, r=rginda, sr=shaver).
2003-09-19 18:36:50 +00:00
igor%mir2.org
854e18e642
Use special subclasses of Node to represent various jumps and control structures to avoid allocating of property objects for frequently occurring parse tree nodes.
2003-09-18 16:20:32 +00:00
igor%mir2.org
3bfcd0e8e6
Mark parse subtree for finally statement with Token.FINALLY instead of using special property to mark USETEMP node.
2003-09-17 13:43:12 +00:00
igor%mir2.org
10f7bc1e8d
Addressing http://bugzilla.mozilla.org/show_bug.cgi?id=219055 :
...
Delay creation of NativeError wrapper for EcmaError until the exception is caught in the script.
2003-09-16 16:08:55 +00:00
mkaply%us.ibm.com
0e55428e0f
#215581
...
r/sr=brendan
Changes to get GCC 3.2.2 working on OS/2 - this set is OS/2 only changes
2003-09-15 22:10:12 +00:00
rginda%netscape.com
e6e4bee726
bug 217768, interruptHandler isn't properly loaded if trapHandler returns JSTRAP_CONTINUE
...
sr=brendan
2003-09-15 18:50:10 +00:00
dougt%meer.net
03eb836195
Fixing 219094. Simple build bustage fix. r=darin
2003-09-15 04:13:19 +00:00
igor%mir2.org
5abaaa06f2
Changing Main.eval implementation to use compileString/exec instead of evalString to avoid dependancy on NativeGlobal when passing explicit thisObj to Script instances when they implement Function interface which holds currently in Rhino.
2003-09-12 17:12:20 +00:00
igor%mir2.org
93d0318b76
Cosmetics: identation fixes
2003-09-12 15:04:21 +00:00
igor%mir2.org
5aebbbe9d9
Siplified code to extract error message from Throwable to reflect recent changes in exception-related API semantics.
2003-09-11 15:41:06 +00:00
igor%mir2.org
9db4ab159d
Changing Context.newObject to use ScriptRuntime.getExistingCtor to get constructor Function instance. In this way Context.newObject will throw the same set of exceptions that other parts of Rhino will throw on bad access to constructor.
...
With this change NotAFunctionException is no longer used so it is deprecated and changed to extend from Error not Exception for source compatibility: otherwise compiler will complain about unreachable catch handler.
2003-09-10 12:44:23 +00:00
igor%mir2.org
4c14c37359
Fixing http://bugzilla.mozilla.org/show_bug.cgi?id=218440 :
...
Making Script implementations by Interpreter and Optimizer scope independent while keeping while still supporting compiling of regexp literals only once per Script instance.
2003-09-10 11:06:25 +00:00
igor%mir2.org
d498e94c0c
Restoring NativeJavaPackage(String) constructor as deprecated for compatibility with Batik.
2003-09-09 13:27:11 +00:00
igor%mir2.org
6b88939df0
ScriptRuntime.getCatchObject is modified to allow to accept instances of EvaluatorException, not only its WrappedException subclass.
2003-09-09 13:25:15 +00:00
igor%mir2.org
f7e67f2455
Restoring JavaScriptException(String) as deprecated constructor for compatibility with BSF.
2003-09-09 13:22:50 +00:00
pschwartau%netscape.com
d6910cdd1e
Initial add. Regresssion test for bug 216320.
2003-09-09 00:37:49 +00:00
bryner%brianryner.com
86ad399c4f
Fix build on gcc 3.4 by removing extra semicolons (bug 218551). r/sr=dbaron, a=brendan.
2003-09-07 22:37:27 +00:00
igor%mir2.org
61a75d60bc
Explicit separation between regexp compilation and execution: all data structures that represent compiled regexp are moved to a separated RECompiled class.
2003-09-06 15:49:05 +00:00
igor%mir2.org
51314a3313
To construct regexp objects the generated code now calls omj.RegExpProxy instead of explicit calls to NativeRegExp constructor. It removes dependence of compiled Script instances on details of RegExp implementation.
2003-09-06 15:44:41 +00:00
igor%mir2.org
5f745d1f6e
Added ScriptRuntime.checkRegExpProxy which is used in Interpreter and NativeString to check for regexp package presence instead of own duplicating code.
...
RegExpProxy.find_split is changed to include Context argument to follow the rest of RegExpProxy functions.
2003-09-06 15:41:03 +00:00
igor%mir2.org
5a252e7afe
I made most internal functions of NativeRegExp static since they do not reference NativeRegExp.
2003-09-06 12:49:07 +00:00
igor%mir2.org
6497b67f9c
ScriptRuntime.main now takes Script as the first argument since it is simpler instantiate Script directly and pass it to ScriptRuntime.main then load Script lass which will be then instantiated in ScriptRuntime.main
2003-09-06 07:51:02 +00:00
igor%mir2.org
4bad77a49f
Replace Context field In REGlobalData by boolean multiline since it is the only information that is needed for matching code from RegExpImpl which was previously accessed through Context.
2003-09-05 21:22:51 +00:00
igor%mir2.org
07c84846bc
Fixing regression caused by optimizer changes to address http://bugzilla.mozilla.org/show_bug.cgi?id=198086 :
...
Now Script.exec can be called more then once.
2003-09-05 21:17:58 +00:00
igor%mir2.org
1e3baffb2a
Fixing http://bugzilla.mozilla.org/show_bug.cgi?id=213279 :
...
Replacing static caches by global scope based storage.
2003-09-05 14:35:09 +00:00
igor%mir2.org
195739a349
Patch from Nicolas JOUVE to address http://bugzilla.mozilla.org/show_bug.cgi?id=218163
2003-09-05 09:04:36 +00:00
igor%mir2.org
80cab2fc94
Cosmetics: removal of EOL blanks
2003-09-03 14:26:39 +00:00
igor%mir2.org
67749a7953
Work for http://bugzilla.mozilla.org/show_bug.cgi?id=213279 :
...
Code for NativeJavaPackage.TopLevelPackage is moved to a separated file NativeJavaTopPackage.java
2003-09-03 10:42:36 +00:00
brendan%mozilla.org
34309a2ace
Fix js_FinishTakingSrcNotes edge-case (bug 216320, r=shaver, a=asa).
2003-09-03 02:10:38 +00:00
igor%mir2.org
cabd0efab4
Fix from Merten Schumann to initialize lineNumber/sourceName in the constructor, see http://bugzilla.mozilla.org/show_bug.cgi?id=217584 .
2003-09-02 12:32:41 +00:00
igor%mir2.org
36aaed961a
Fixing http://bugzilla.mozilla.org/show_bug.cgi?id=214594 :
...
In IRFactory.createLoop propagate line number information to the condition subtree for "while" and "for" loops so exceptions generated in a loop condition would have proper line number.
2003-09-02 06:23:20 +00:00
igor%mir2.org
c8275b1f14
Fix from Olivier Oeuillot to address http://bugzilla.mozilla.org/show_bug.cgi?id=212395 .
2003-09-01 13:32:33 +00:00
igor%mir2.org
737a2a03c0
Fix from Ming-Yee Iu to address http://bugzilla.mozilla.org/show_bug.cgi?id=217951
2003-09-01 11:06:03 +00:00
igor%mir2.org
348f0a5a75
Fixing http://bugzilla.mozilla.org/show_bug.cgi?id=217379 :
...
The code in RegExpImpl.findReplen did not take into account that a particular
parenthesis pair can be null if it is not captured. The patch fixes that to
send undefined to the replace function for that case.
2003-09-01 09:05:52 +00:00
igor%mir2.org
bc6bf1fc38
Fix for DToA.JS_dtoa() to resolve http://bugzilla.mozilla.org/show_bug.cgi?id=217268
2003-08-31 19:42:58 +00:00
igor%mir2.org
f969c11384
Fixing http://bugzilla.mozilla.org/show_bug.cgi?id=217346 :
...
I changed DToA.JS_dtobasestr to use BigInteger for its integer part when it does not fit long.
2003-08-30 15:34:44 +00:00
igor%mir2.org
26296c096d
Finalizing work on http://bugzilla.mozilla.org/show_bug.cgi?id=198086 :
...
Now optimizer generates exactly one class per script and all its functions.
2003-08-30 12:02:19 +00:00
igor%mir2.org
a2a564b53c
Changing ScriptRuntime to return vois since it does not and should not change scope
2003-08-30 12:02:18 +00:00
igor%mir2.org
63aef961cd
More fixing for http://bugzilla.mozilla.org/show_bug.cgi?id=217584 :
...
Use Context.getSourcePositionFromStack in the EvaluatorException(String details) constructor to get line number information.
2003-08-30 11:59:15 +00:00
pkw%us.ibm.com
13b592f34c
Bug 217499: Clean up AIX libpath and configure script
...
r=cls@seawood.org , a=asa@mozilla.org
2003-08-29 17:15:06 +00:00
igor%mir2.org
026e55d006
Cosmetics: removal end-of-line blanks
2003-08-29 15:28:08 +00:00
igor%mir2.org
e143e6b01b
Fixing http://bugzilla.mozilla.org/show_bug.cgi?id=217584 :
...
Implementation of Merten Schumann suggestion to add to EvaluatorException and JavaScripException information about script source name and error line .
2003-08-29 13:19:37 +00:00
igor%mir2.org
94cf77a758
More work for http://bugzilla.mozilla.org/show_bug.cgi?id=198086 :
...
The patch changes omj.NativeScript to represent only instances of Script object
in scripts and removes its second role to server as a superclass for compiled
forms of JS scripts. In is not only allow to make optimizer to generate only
single class but also would make instances of Script generated by optimizer not
to depend on the scope. The later is essential for Script object reuse to
execute it against different scopes.
2003-08-29 10:42:23 +00:00
igor%mir2.org
f451118048
Working on http://bugzilla.mozilla.org/show_bug.cgi?id=198086 :
...
Now optimizer will generate only one class for all functions a script contains instead of class per function.
2003-08-28 12:40:10 +00:00
igor%mir2.org
035192c8be
Changing signature of addConstant from short to int and updating the code correspondingly to allow for constant indexes to exceed 32K since their type is unsigned short, not short and int allows to cover that while removing casts.
2003-08-28 12:29:01 +00:00
igor%mir2.org
e258a29853
1. Removal of NativeScript.initScript which was empty and was never overridden by script function implementations.
...
2. Using in NativeScript.compile Context.compileString instead of compileReader to avoid unnecessary construction of StringReader.
3. Overriding NativeFunction.getEncodedSource() in NativeScript to call this method on the delegated script object so decompilation of scripts constructed via script.compile would work.
2003-08-27 11:53:01 +00:00
igor%mir2.org
ae2cb1ea90
NativeFunction.decompile abd NativeFunction.initScriptFunction are final since script function implementations should not override them.
2003-08-27 11:47:19 +00:00
igor%mir2.org
eb2de8c08c
New form of markTableSwitchCase that allows to mark a switch case jump target and adjust stack top.
2003-08-27 11:44:46 +00:00
igor%mir2.org
b515f98de1
Added NativeFunction.initScriptFunction to initialize NativeFunction.argNames, NativeFunction.version and its usage in InterpretedFunction/InterpretedScript.
...
It will allow to make the protected fields in NativeFunction private when the optimizer will be updated to use the new function.
2003-08-26 18:06:10 +00:00
igor%mir2.org
86ebe14d54
Added public static final String[] emptyStrings to denote zero-length string array
2003-08-26 15:45:16 +00:00
igor%mir2.org
4047861bf2
Using ScriptRuntime.emptyStrings to return emoty var array
2003-08-26 15:45:15 +00:00
igor%mir2.org
a9f4d1e47b
Fixing http://bugzilla.mozilla.org/show_bug.cgi?id=217257 :
...
Patch from Larry Blair to fix decodeURIComponent()
2003-08-26 15:45:14 +00:00
igor%mir2.org
0439643ca6
Making createObject public so optimizer implementation can access it outside BaseFunction subclass
2003-08-26 15:45:13 +00:00
igor%mir2.org
3f846adf77
1. Support for generation tableswitch code
...
2. Utility method addLoadThis() as an alias for add(ByteCode.ALOAD_0)
2003-08-26 15:43:11 +00:00
igor%mir2.org
fd9857dc15
Fixing line-table initialization issue: set itsLineNumberTableTop to 0 at the end of stopMethod so generation of multiple methods with source line information would work.
2003-08-22 09:10:14 +00:00
caillon%returnzero.com
c11c6acb17
Backing out the patch to bug 83536.
...
I will reland this when 1.6a re-opens.
r+sr=jst@netscape.com
a=chofmann
2003-08-22 03:06:53 +00:00
igor%mir2.org
feaebaffbd
Cosmetics: removal of end-of-line blanks
2003-08-20 11:11:00 +00:00
igor%mir2.org
6c33282a4d
Splitting Codegen into 2 Codegen and BodyCodegen where the second class contains code to generate butecode for the body of script.
2003-08-20 10:52:54 +00:00
igor%mir2.org
157bd43021
1. Codegen.classNameToSignature is removed and call to the methods are replaced by cfw.classNameToSignature.
...
2. Calls to ClassFileWriter.fullyQualifiedForm are removed since all ClassFileWriter API accepts both dotted and slashed forms of Java class names.
3. Few identation fixes
2003-08-20 07:36:33 +00:00
igor%mir2.org
429111a705
1. Added ClassFileWriter.classNameToSignature to convert Java class name into JVM signature.
...
2. The public method getFullyQualifieedForm that was used to replace . to / is removed since all classname API accepts both form of class names and convertion to the internal /-form can be done in ClassFileWriter in a more efficient way.
2003-08-20 07:32:48 +00:00
pschwartau%netscape.com
4585faf2b3
Correcting a typo.
2003-08-19 16:45:03 +00:00
pschwartau%netscape.com
d399b7e7b8
Initial add. Regression test for bug 216591.
2003-08-19 16:36:54 +00:00
igor%mir2.org
dec1ba89ae
More renames and preparations for code split.
2003-08-19 15:37:50 +00:00
igor%mir2.org
f9a067e749
More preparations for separating code to generate main script method and the rest of methods.
2003-08-19 13:19:57 +00:00
igor%mir2.org
f4ef5c00b7
1. Renaming Codegen.classFile to Codegen.cfw and removal of methods like push/load/store in favour of directly calling ClassFileMethods.
...
2. Move all code related to generating of prologue for main function implementation to Codegen.generatePrologue.
In this way the following patch to split Codegen into 2 classes to factor away all generation code for the main function will look smaller.
2003-08-19 08:21:36 +00:00