beard%netscape.com
a166644e29
Instruction::count(), Instruction::printOperands(), plus newly generated instruction classes.
2000-04-28 05:41:54 +00:00
beard%netscape.com
0dee053bef
added jstypes.cpp
2000-04-28 05:40:42 +00:00
beard%netscape.com
cf5bda1bec
operator<<(Formatter&, const JSValue&)
2000-04-28 05:40:16 +00:00
beard%netscape.com
dc524f8331
generates printOperands()
2000-04-28 05:39:27 +00:00
beard%netscape.com
bc2e56b97c
runs gencode.pl with MW Perl.
2000-04-28 05:39:04 +00:00
waldemar%netscape.com
192b3c45c8
Changed attributes and 'language' statement syntax, added interfaces, and removed ^*, ^?, |*, and |?.
2000-04-28 02:34:14 +00:00
rginda%netscape.com
5ab596c1c3
don't generate print_args if super_has_print
...
comment fixes
2000-04-28 02:33:36 +00:00
waldemar%netscape.com
c0b3a0c99c
Changed period to dot
2000-04-28 02:31:41 +00:00
waldemar%netscape.com
ef5540e948
Fixed syntax of (bottom)
2000-04-28 02:30:44 +00:00
waldemar%netscape.com
5e5a923879
First Checked In.
2000-04-28 02:30:19 +00:00
rginda%netscape.com
9c217a25f0
moved comment so it made more sense
2000-04-28 02:26:14 +00:00
beard%netscape.com
df05dec418
reordered inheritance graph of Linkage.
2000-04-28 02:23:08 +00:00
rginda%netscape.com
5701c02682
printarg stubbed out
2000-04-28 02:20:23 +00:00
beard%netscape.com
7293a17b91
testProto()
2000-04-28 01:43:03 +00:00
rogerl%netscape.com
b28efe5b88
try/catch exercise changes
2000-04-28 00:11:18 +00:00
rogerl%netscape.com
11e9424ecd
fixed bad constructor thing.
2000-04-28 00:10:22 +00:00
norris%netscape.com
927c1fe19b
Propagate changes from 1.21.2.3 into tip.
2000-04-27 18:39:10 +00:00
rogerl%netscape.com
62485331a6
More exception handling handling.
2000-04-27 01:27:09 +00:00
norris%netscape.com
cc8de52de5
Allow multiple uses of importClass on the same class.
2000-04-26 23:47:15 +00:00
norris%netscape.com
c21f8c696f
Fix bug 37317.
2000-04-26 23:33:25 +00:00
norris%netscape.com
f1caa8664f
Fix NullPointerException caused by clearing cache
2000-04-26 22:48:48 +00:00
beard%netscape.com
427dc1a8eb
oops.
2000-04-26 22:10:20 +00:00
beard%netscape.com
758222941a
removed JSMap::operator[], added set/getPrototype().
2000-04-26 22:06:17 +00:00
beard%netscape.com
36a2941e26
oops getProperty() can't be const unless map.find() is used everywhere.
2000-04-26 21:48:04 +00:00
beard%netscape.com
94c129e6fd
Using getProperty/setProperty rather than JSMap::operator[]. This follows the prototype chain.
2000-04-26 21:38:14 +00:00
beard%netscape.com
c7426026d9
added JSMap::setProperty()/getProperty(), and a prototype field.
2000-04-26 21:27:44 +00:00
rginda%netscape.com
a0058d1d8d
initial add of debugger vapors
2000-04-26 06:04:02 +00:00
beard%netscape.com
77ef914838
Fixing windows bustage in Linkage.
2000-04-26 05:56:20 +00:00
beard%netscape.com
563b59ef15
fixing bug: js2.cpp:328: Internal compiler error in scope_die_for, at dwarf2out.c:7794 Please submit a full bug report. See <URL: http://www.gnu.org/software/gcc/faq.html#bugreport > for instructions.
2000-04-26 05:43:24 +00:00
beard%netscape.com
8a97a98204
testFactorial() now installs a Context::Listener to trace execution.
2000-04-26 05:37:00 +00:00
beard%netscape.com
4ae9bfec81
JSActivation -> Activation, JSLinkage --> Linkage. Linkage now implements the Context::Frame interface. Implemented simple Context::Listener support.
2000-04-26 05:35:07 +00:00
beard%netscape.com
36879f0ce5
Added Context::Frame, Context::Listener abstract classes. Initial support for debugger.
2000-04-26 05:29:35 +00:00
beard%netscape.com
4cb6fe2a7b
JSFrame -> JSLinkage, using explicit linked list rather than a stack.
2000-04-26 01:42:00 +00:00
beard%netscape.com
9b7ed9578b
removed intentionally private JSActivation/JSFrame types. The debugger should be able to ask questions of the interpreter to obtain this information.
2000-04-26 01:39:56 +00:00
jband%netscape.com
7e27d3faff
be less aggresive in shutdown cleanup to avoid shutdown crashes. See bug 37058 for an example stack.
2000-04-25 07:26:02 +00:00
jband%netscape.com
f7dc9f09e9
release the threadcontextstack to avoid a shutdown leak
2000-04-25 04:59:21 +00:00
jband%netscape.com
42defd8cf1
Cleanup at shutdown the JSContexts that xpconnect manages on a per thread basis. This should fix some shutdown leaks.
2000-04-25 04:57:32 +00:00
beard%netscape.com
27fc318bb1
changed Context constructor to take JSObject* not JSObject&, to be able to control lifetime a little more carefully.
2000-04-25 03:32:53 +00:00
beard%netscape.com
6a4bca91fe
warning removal
2000-04-25 03:28:41 +00:00
beard%netscape.com
39551bc785
fixing mac bustage (we do reference argc/argv, to initialize them to something sensible).
2000-04-25 02:58:30 +00:00
beard%netscape.com
9d7aed4cd0
renamed not() -> complement() (not is a keyword in C++), implemented complement().
2000-04-25 02:55:08 +00:00
brendan%mozilla.org
99896c816a
Final destroy-context must await racing GCs before freeing atom state (32525, r=jband).
2000-04-25 01:12:36 +00:00
rogerl%netscape.com
1b75c7efbb
Fixes for handling missing params.
2000-04-24 22:40:53 +00:00
rginda%netscape.com
5edf52ba65
adding comments
2000-04-24 21:43:49 +00:00
rginda%netscape.com
5945808db5
NotARegister check in GenericBranch::print()
2000-04-24 20:08:16 +00:00
norris%netscape.com
45ea2bb652
Patch from Matthias Radestock <rade@logee.com>:
...
Subject:
JavaAdapter return type conversion
Date:
Wed, 19 Apr 2000 12:12:47 +0100
From:
Matthias Radestock <rade@logee.com>
Organization:
Logee
To:
norris@netscape.com
CC:
mccabe@netscape.com , beard@netscape.com , rogerl@netscape.com
Dear Rhino team,
When returning an array from a scripted Java object (i.e. a JS object
that implements a Java interface), no type conversion is performed, ie.
a NativeArray is returned instead of a Java array. Example:
Java:
interface Foo {
public String[] boo();
}
JS:
FooI = {
boo: function() { return ["Boo"];}
}
myFoo = new Packages.Foo(FooI);
myFoo.boo(); //==> breaks with a ClassCastException
Looking at the JavaAdapter code, there is no code for array conversion.
This is particularly bad because precisely such a conversion *does*
happen when calling a Java method from JS. So we end up with a
discrepancy.
See attachment for a patch to fix this and little test program. The
patch works by calling the coerceType function on NativeJavaObject,
which is the function responsible for doing the conversion when calling
from JS to Java. I've simplified the code so that this function gets
called for all non-primitive return type, not just arrays. There are
probably more efficient solutions but I'm not a Java bytecode hacker.
Matthias
PS: I didn't open a bug for this because I wasn't sure whether you guys
would agree that this is indeed a problem ;)
public interface JSReturnTest {
public boolean returnBoolean();
public char returnChar();
public int returnInt();
public String returnString();
public org.mozilla.javascript.Scriptable returnScriptable();
public Object returnObject();
public boolean[] returnBooleanA();
public char[] returnCharA();
public int[] returnIntA();
public String[] returnStringA();
public org.mozilla.javascript.Scriptable[] returnScriptableA();
public Object[] returnObjectA();
public Object[][] returnObjectAA();
}
Index: JavaAdapter.java
===================================================================
RCS file: /cvsroot/mozilla/js/rhino/org/mozilla/javascript/JavaAdapter.java,v
retrieving revision 1.21
diff -r1.21 JavaAdapter.java
54c54,59
<
---
>
> public static Object convertResult(Object result, String classname)
> throws ClassNotFoundException {
> return NativeJavaObject.coerceType(Class.forName(classname),
> result);
> }
467,474c472,474
< } else if (retType.equals(String.class)) {
< cfw.add(ByteCode.INVOKESTATIC,
< "org/mozilla/javascript/Context",
< "toString", "(Ljava/lang/Object;)",
< "Ljava/lang/String;");
< cfw.add(ByteCode.ARETURN);
< } else if (retType.equals(Scriptable.class)) {
< cfw.add(ByteCode.ALOAD_0); // load 'this' to find scope from
---
> } else {
> String retTypeStr = retType.getName();
> cfw.addLoadConstant(retTypeStr);
476,477c476,477
< "org/mozilla/javascript/Context",
< "toObject",
---
> "org/mozilla/javascript/JavaAdapter",
> "convertResult",
479,500c479,480
< "Lorg/mozilla/javascript/Scriptable;)",
< "Lorg/mozilla/javascript/Scriptable;");
< cfw.add(ByteCode.ARETURN);
< } else {
< // If it is a wrapped type, cast to Wrapper and call unwrap()
< cfw.add(ByteCode.DUP);
< cfw.add(ByteCode.INSTANCEOF, "org/mozilla/javascript/Wrapper");
< // skip 3 for IFEQ, 3 for CHECKCAST, and 5 for INVOKEINTERFACE
< cfw.add(ByteCode.IFEQ, 11);
< cfw.add(ByteCode.CHECKCAST, "org/mozilla/javascript/Wrapper");
< cfw.add(ByteCode.INVOKEINTERFACE,
< "org/mozilla/javascript/Wrapper",
< "unwrap", "()", "Ljava/lang/Object;");
<
< // If Undefined, return null
< cfw.add(ByteCode.DUP);
< cfw.add(ByteCode.INSTANCEOF, "org/mozilla/javascript/Undefined");
< // skip 3 for IFEQ, 1 for ACONST_NULL, 1 for ARETURN
< cfw.add(ByteCode.IFEQ, 5);
< cfw.add(ByteCode.ACONST_NULL);
< cfw.add(ByteCode.ARETURN);
<
---
> "Ljava/lang/String;)",
> "Ljava/lang/Object;");
502,503c482
< String retTypeStr = retType.getName().replace('.', '/');
< cfw.add(ByteCode.CHECKCAST, retTypeStr);
---
> cfw.add(ByteCode.CHECKCAST, retTypeStr.replace('.', '/'));
testpatch.js
Name:
testpatch.js
Type:
JavaScript Program (application/x-javascript)
Encoding:
7bit
2000-04-24 19:36:51 +00:00
rginda%netscape.com
66299105f3
quieting linux warnings
2000-04-24 18:41:05 +00:00
jband%netscape.com
04051a0da0
belt and suspenders check of WITH_SERVICE results
2000-04-23 23:04:40 +00:00
jband%netscape.com
c9fbfe6b3f
fix a dangerous looking (but harmless) warning on Mac opt
2000-04-22 01:06:42 +00:00
rogerl%netscape.com
f516a5722d
Added a beginning for exception handling.
2000-04-21 22:52:52 +00:00
mccabe%netscape.com
b83e22e2ea
Fix to 23532. Check validity of JS_ARENA_ALLOCATE call before using it as an argument of memcpy in JS_ArenaGrow.
...
Thanks to wyeung@real.com for noticing we were being unsafe here and suggesting the fix.
2000-04-21 09:25:43 +00:00
brendan%mozilla.org
c4dc0a590b
Spruce up a couple of comments.
2000-04-21 01:49:49 +00:00
brendan%mozilla.org
c65d2d6a93
Functions that use unqualified __parent__ or __proto__ must be heavyweight (36625, r=shaver).
2000-04-21 01:47:20 +00:00
rginda%netscape.com
d6c8ec2a89
Add nsIScriptError.idl. Build it here rather than back in xpfe/components/console.
Checkin by McCabe, on rginda's mac.
2000-04-21 00:57:27 +00:00
rogerl%netscape.com
ca67259713
oops
2000-04-21 00:46:48 +00:00
rogerl%netscape.com
5e238bd7a5
Added labelled statements, fixed some VC++'isms
2000-04-21 00:37:51 +00:00
rginda%netscape.com
7615ee9226
icodegenerator.cpp
...
add m prefix to base and offset label members
interpreter.cpp,h
dual license
wrap interpret in a Context class
add RETURN_VOID case
js2.cpp
update to use context class
remove #if 0 code that'll probably never be used anyway.
jstypes.h
add defineProperty/function to JSObject
vmtypes.h
regerated opcode classes:
added RETURN_VOID, removed LOAD/SAVE_VAR
reverted bacl to the smaller print function (thanks to RETURN_VOID)
fixed branch printing issue
inherit print() from super if possible
tools/gencode.pl
generate smaller print functions again
don't generate print function if superclass can take care of it.
2000-04-21 00:04:14 +00:00
norris%netscape.com
0bca489fe4
Clean up new methods.
2000-04-20 23:08:07 +00:00
beard%netscape.com
d7ad5021eb
Simple dependency tracking with make depend target.
2000-04-20 23:02:19 +00:00
rogerl%netscape.com
215b1e19c7
Added ASSERT cases to FixNext child handling.
2000-04-20 23:00:37 +00:00
beard%netscape.com
30971c4c45
Simple dependencies list. Rebuilt with make depend target.
2000-04-20 22:58:23 +00:00
norris%netscape.com
35a0af1014
Fix build error.
2000-04-20 22:36:46 +00:00
norris%netscape.com
e8b7e89546
Subject:
...
contextClassloader problem in ScriptRuntime.java
Date:
Tue, 11 Apr 2000 09:45:36 -0400
From:
"Howard Lin" <howard@softcom.com>
To:
"Norris Boyd" <norris@netscape.com>
CC:
"Andrew Wason" <aw@softcom.com>
Hi, Norris, we are trying to create a Java class in JavaScript. When security manager is on, everything works fine. But when security
manager is off, we got an error saying the "... is not defined". The problem is that in ScriptRuntime.java, when security is on,
getContextClassLoader is null due to SecurityException and Class.forName is used to find the class, which works fine. When security
is off, ContextClassLoaderMethod is invoked to find the class. Since we use a separate thread to load third party jar files,
ContextClassLoaderMethod will throw a ClassNotFound exception.
To illustrate this problem, I wrote a simple applet, evaluating a simple js file in its paint method, which is running on a separate thread.
When security is off, I got the following:
ReferenceError: "Global" is not defined.
at org.mozilla.javascript.NativeGlobal.constructError(NativeGlobal.java:
494)
at org.mozilla.javascript.ScriptRuntime.name(ScriptRuntime.java, Compile
d Code)
at org.mozilla.javascript.Interpreter.interpret(Interpreter.java, Compil
ed Code)
at org.mozilla.javascript.InterpretedScript.call(InterpretedScript.java:
67)
at org.mozilla.javascript.InterpretedScript.exec(InterpretedScript.java:
54)
at org.mozilla.javascript.Context.evaluateReader(Context.java:739)
at test.evaluate(test.java:26)
at test.paint(test.java:16)
at sun.awt.windows.WComponentPeer.handleEvent(WComponentPeer.java:117)
at java.awt.Component.dispatchEventImpl(Component.java:2447)
at java.awt.Container.dispatchEventImpl(Container.java:1035)
at java.awt.Component.dispatchEvent(Component.java:2307)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:287)
at java.awt.EventDispatchThread.pumpOneEvent(EventDispatchThread.java:10
1)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:92)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:83)
When security is on, it runs fine. Or if the code moved to init method, it works fine regardless of security. We are using JDK 1.2.2.
Howard
2000-04-20 19:53:16 +00:00
jband%netscape.com
9b08d1ac85
Had the wrong clazz for the root! So it was better when the caching was broken. Now it works on MI objects with caching fixed. My bad copy/paste error from long ago.
2000-04-20 12:16:45 +00:00
jband%netscape.com
9c1badb1ca
backing out little fix from earlier today because it causes crashes in some MI cases. I'll investigate and do the right fix
2000-04-20 11:06:48 +00:00
brendan%mozilla.org
3d6de092fd
Check access and redeclaration legality when defining a getter/setter (36117, r=norris)
2000-04-20 07:10:14 +00:00
beard%netscape.com
9acaa398fe
removed extraneous semi-colons after namespace declarations.
2000-04-20 06:20:31 +00:00
beard%netscape.com
bb0348e64d
warnings: commented out unused parameter name.
2000-04-20 06:19:43 +00:00
jband%netscape.com
d727af1bbe
fix typo bug that was causing wrapper cache misses on wrapper around objects implementing multiple interfaces when the first wrapper is made for an interface that is not leftmost
2000-04-20 03:38:47 +00:00
norris%netscape.com
62efd62f19
Add line number information.
2000-04-19 23:24:04 +00:00
rogerl%netscape.com
5199f6e49c
Removing variables.
2000-04-19 22:45:57 +00:00
rogerl%netscape.com
772eb43e2e
Added hasOwnProperty, propertyIsEnumerable, isPrototypeOf to Object.
2000-04-19 22:32:50 +00:00
rogerl%netscape.com
7b7fc3829f
Began moving away from variables, fixed compare/branch ordering.
...
Testcases working.
2000-04-19 02:09:06 +00:00
scc%netscape.com
995abb7f46
making string conversions explicit
2000-04-18 23:53:10 +00:00
rginda%netscape.com
3a06b96f97
formatting changes. use only one tab regardless of nested namespaces
2000-04-18 21:51:45 +00:00
norris%netscape.com
5b52db907b
Add missing method for 1.4R3 compatibility.
2000-04-18 16:53:28 +00:00
norris%netscape.com
1931f31f5b
Fix bug where a bean property can conflict with a method name.
2000-04-18 16:52:00 +00:00
norris%netscape.com
f10587a521
Fix bug:
...
var a = Math.abs;
a(-245);
gets the following error :
org.mozilla.javascript.EvaluatorException: Method "abs" called on
incompatible object.
2000-04-18 16:34:36 +00:00
rginda%netscape.com
1952e14ff8
removed superfluous ;s after namespace decs.
2000-04-18 07:14:49 +00:00
rginda%netscape.com
531ede4f17
regenerated opcode classes after grncode.pl changes
2000-04-18 07:06:25 +00:00
rginda%netscape.com
33d0848741
modified to print R~ if NotARegister
2000-04-18 07:04:24 +00:00
dp%netscape.com
366ecea0fc
Implemented component unregister.
2000-04-18 05:26:40 +00:00
mccabe%netscape.com
4c637c806e
added files: mozilla/js/src/xpconnect/src/nsScriptError.cpp
2000-04-18 02:35:06 +00:00
mccabe%netscape.com
b93c689e66
Move nsIConsoleService and implementation into xpcom/base, and nsIScriptError and implementation into js/src/xpconnect. (A place for JavaScript-specific XPCOM would be better, but xpconnect will do).
2000-04-18 02:34:54 +00:00
rogerl%netscape.com
fce9fa62b1
added '(' for RegisterList output
2000-04-18 01:46:32 +00:00
rginda%netscape.com
8ac24b9045
regenerated opcodenames to include padding, added label printing back into icg::print
2000-04-18 01:31:24 +00:00
rginda%netscape.com
b0eca07a47
space out opcodenames array
2000-04-18 01:19:12 +00:00
beard%netscape.com
52d7e01394
std::pair
2000-04-18 00:52:07 +00:00
beard%netscape.com
7add6915a1
moved initConsole() out to :: namespace.
2000-04-18 00:51:53 +00:00
beard%netscape.com
c18125076f
added vmtypes.h,.cpp
2000-04-18 00:50:58 +00:00
rogerl%netscape.com
f163805c99
added vmtypes/jstypes
2000-04-18 00:46:18 +00:00
rogerl%netscape.com
0e17feea55
Fixed WINDOZE build issues
2000-04-18 00:38:26 +00:00
rginda%netscape.com
73017de6a1
initial add of perl script to generate icode classes
2000-04-18 00:22:51 +00:00
rginda%netscape.com
5a6fd84159
removing bogus file
2000-04-18 00:20:10 +00:00
rginda%netscape.com
0fac613959
adding files for namespace change
2000-04-18 00:19:09 +00:00
rginda%netscape.com
66cb26879d
added js::VM, ICG, JSTypes, and Interpreter namespaces; messed around with lots of code.
...
Created class for each ICode, adding a print() method (using formatters)
2000-04-18 00:17:34 +00:00
beard%netscape.com
02798c9177
FASTLOCK changes.
2000-04-17 23:58:28 +00:00
braddr%puremagic.com
97d2f19960
Implicit types are evil. Add PRUint32.
...
r=mccabe
2000-04-16 00:21:07 +00:00
jband%netscape.com
70c7e60b98
add a test with an 'out' array of strings
2000-04-15 18:44:22 +00:00
mccabe%netscape.com
73dd1ab098
Print error diagnostics to stderr even when non-debug, to support those folks
...
that want to debug with the -console flag.
2000-04-15 06:59:21 +00:00
brendan%mozilla.org
ec5a9e9229
Always call resolve for each object in a prototype chain (35738, r=shaver).
2000-04-15 02:01:02 +00:00
shaver%mozilla.org
024dad8f12
Replace stupid and evil BYTECODE_ITER hack with proper use of back-patch
...
chained PatchGotos goodness. (PatchGotos seasoned to taste.)
r=brendan
2000-04-14 23:27:09 +00:00
norris%netscape.com
a3caa18f07
Fix
...
28390, 28866, 34364
r=brendan@mozilla.org
35701
r=jst@netscape.com
2000-04-14 03:14:53 +00:00
rogerl%netscape.com
1e558f10e2
Fxied oboscure bug when user defines function Object(), the next new Object
...
gets a stack crash looking for the prototype. (bug #32174 )
2000-04-13 17:58:18 +00:00
beard%netscape.com
e82b4e2532
gc_base now used as common base class of GC allocated objects.
2000-04-13 04:54:41 +00:00
beard%netscape.com
56d97a71e9
added gc_base, which defines a more generic operator new().
2000-04-13 04:53:56 +00:00
beard%netscape.com
d92905d034
builds gc
2000-04-13 00:37:00 +00:00
beard%netscape.com
1468acd8d1
Added gc_allocator.h to project and gc.lib to link against.
2000-04-13 00:28:40 +00:00
beard%netscape.com
a1bed20974
linking in gc.lib from ../../gc/boehm
2000-04-13 00:16:58 +00:00
beard%netscape.com
2922707730
enabling GC on all platforms
2000-04-13 00:14:23 +00:00
norris%netscape.com
1316603f7b
Fix bug 33841.
2000-04-12 17:30:32 +00:00
norris%netscape.com
5999d2b51d
Remove obsolete statement from javadoc.
2000-04-11 18:24:08 +00:00
norris%netscape.com
eda51b9f12
Update javadoc
2000-04-11 18:22:36 +00:00
beard%netscape.com
12ccc48ec4
JSActivation, JSFunction
2000-04-11 05:11:58 +00:00
beard%netscape.com
95604b5bff
Added JSFunction, defineFunction()
2000-04-11 05:10:40 +00:00
beard%netscape.com
c721ec102b
defineFunction, added assert
2000-04-11 05:09:38 +00:00
beard%netscape.com
b574e77f13
_Charalloc, deallocate(void*) for _WIN32 only
2000-04-11 04:55:27 +00:00
beard%netscape.com
92ec71fb35
defineGlobalProperty
2000-04-11 03:11:47 +00:00
beard%netscape.com
af1f41fb7d
JSObject, JSArray : public JSMap, gc_object<T>. Frame -> JSFrame. Added JSFrameStack which is an std:stack<JSFrame*, std:vector<JSFrame*> >.
2000-04-11 03:11:00 +00:00
beard%netscape.com
8ef180ab04
use gc_allocator<T> everywhere, addGlobalProperty -> defineGlobalProperty
2000-04-11 03:07:39 +00:00
beard%netscape.com
2930dfd621
removed commented out GET_PROP/SET_PROP.
2000-04-11 02:59:52 +00:00
beard%netscape.com
8bd406efae
added gc_object.
2000-04-11 02:59:14 +00:00
beard%netscape.com
f7fdcbff8b
fixing an assert and warnings
2000-04-11 01:10:26 +00:00
rogerl%netscape.com
2757a2004e
CALL opcode & frames etc. (r=beard)
2000-04-11 00:32:17 +00:00
waldemar%netscape.com
84bdf052ab
Fixed delete/delete[] mismatch
2000-04-10 22:23:17 +00:00
waldemar%netscape.com
d1e89106de
Fixed memory leak
2000-04-10 22:20:00 +00:00
beard%netscape.com
1edba28c48
Fixed warnings about member initializers on Linux. Whatever.
2000-04-08 04:49:41 +00:00
beard%netscape.com
14a585783b
Reduced size of args arrays to minimum.
2000-04-08 04:41:19 +00:00
beard%netscape.com
138afee3b4
Reordered parameters to getProperty()/setProperty() to be consistent with operand ordering. Added array allocation/indexing to testObjects().
2000-04-08 04:15:02 +00:00
beard%netscape.com
6337059f6f
JSArray::elements(1), operator[](const JSValue&), fixed register-indexing.
2000-04-08 04:12:28 +00:00
beard%netscape.com
f589a1ab24
Fixed NEW_ARRAY, GET_ELEMENT, SET_ELEMENT printing.,
2000-04-08 04:11:16 +00:00
beard%netscape.com
8c93fb3d06
NEW_ARRAY
2000-04-08 03:37:49 +00:00
beard%netscape.com
0822793571
Reordered GetProp/SetProp operands to base, name. Added NewArray, GetElement, SetElement instructions.
2000-04-08 03:37:18 +00:00
beard%netscape.com
afd93b4e07
added JSArray, GET_ELEMENT, SET_ELEMENT, changed some ops to dest/src.
2000-04-08 03:23:44 +00:00
beard%netscape.com
468bc29100
added JSArray, comments.
2000-04-08 02:44:34 +00:00
beard%netscape.com
95cb0e8b9d
Changed boilerplate, chmod -x
2000-04-08 02:29:07 +00:00
beard%netscape.com
010a45313a
converted NotALabel to an enum, so it obeys proper scoping rules.
2000-04-08 02:25:37 +00:00
rogerl%netscape.com
5e55242311
added interpreter & icodegenerator
2000-04-08 01:09:50 +00:00
rogerl%netscape.com
e60b5c26e9
Fixed wacky tabs
2000-04-08 01:08:01 +00:00
rogerl%netscape.com
d26609534d
Added ICodeModule to collect extra info about executable chunks.
2000-04-08 01:04:55 +00:00
beard%netscape.com
bda3717ce9
fixed LoadImmediate.
2000-04-08 00:57:28 +00:00
beard%netscape.com
895fa664c4
reindented, introduced gc_map_allocator to hide platform differences
2000-04-08 00:52:59 +00:00
beard%netscape.com
7810a0856a
conforming to MSVC++ allocators
2000-04-08 00:48:13 +00:00
rogerl%netscape.com
ad01c0a3c9
Re-ordered instructions so destination is always first.
...
Changed labels to be struct * instead of ints.
2000-04-07 22:19:36 +00:00
rogerl%netscape.com
6b29288692
fix invalid return in GC_free for win32 build
2000-04-07 21:58:33 +00:00
rginda%netscape.com
a475c7a48a
#if out references to std::iterator to get gcc to compile
2000-04-07 21:11:40 +00:00
beard%netscape.com
89b42085ab
printing code in testObjects().
2000-04-07 04:59:57 +00:00
beard%netscape.com
d5333de9ec
added code to print SAVE_NAME, NEW_OBJECT, GET_PROP, and SET_PROP iCodes.
2000-04-07 04:58:58 +00:00
beard%netscape.com
a1ce56851a
JSObject and its elements now allocated using gc_allocator<T> (XP_MAC only).
2000-04-07 04:39:50 +00:00
beard%netscape.com
3f67d58724
JSValues now using gc_allocator (XP_MAC only for now).
2000-04-07 04:38:18 +00:00
beard%netscape.com
2800c15275
added gc library.
2000-04-07 04:36:38 +00:00
beard%netscape.com
22d99fdce4
prebuilt gc library for bootstrapping.
2000-04-07 04:35:14 +00:00
beard%netscape.com
ca07212aa6
added stub implementations of GC entry points.
2000-04-07 04:00:21 +00:00
beard%netscape.com
d7fa1b7fe2
added failed gc_rebind, for future compilers to ponder.
2000-04-07 03:11:38 +00:00
beard%netscape.com
1a2406676c
duh, can't use wide string constants on Linux
2000-04-07 03:08:20 +00:00
beard%netscape.com
26a073ebc4
XP_MAC: no longer auto close upon exit (so we can see asserts, etc.). Renamed testInterpreter() to testFactorial(). Added testObjects(), which allocates an object, stores it in the global variable "global", assigns 0.0 to "global.counter", and finally defines a function "increment" which adds 1.0 to "global.counter" each time it is called.
2000-04-07 02:58:01 +00:00
beard%netscape.com
781aff8cd6
Added preliminary object representation class JSObject, which is simply an STL map<String, JSValue> for now. Changed static globals to be a JSObject (can you say scope chain?). Implemented NEW_OBJECT, GET_PROP, and SET_PROP, all in terms of operations provided by JSObject. No GC (yet).
2000-04-07 02:52:07 +00:00
beard%netscape.com
53882505b5
added forward declaration to class JSObject, and changed void* JSValue.ref to JSObject* JSValue.obj.
2000-04-07 02:47:53 +00:00
beard%netscape.com
59f99c863e
fix calls to template superclass for gcc
2000-04-07 02:45:33 +00:00
beard%netscape.com
dab8f50344
added NEW_OBJECT instruction. unified typedef GetProp, SetProp. changed typedef Return to class Return, added class NewObject. These classes automatically pass their opcode to their base-class, and look better in the debugger. Added a virtual destructor to Instruction() #ifdef DEBUG. Added newObject(), saveName() and setProperty() methods to ICodeGenerator.
2000-04-07 02:41:21 +00:00
beard%netscape.com
9c646bbafc
added newObject(), saveName() and setProperty().
2000-04-07 02:41:08 +00:00
waldemar%netscape.com
14b0eb8f01
Worked around Visual C++ bugs
2000-04-07 00:47:39 +00:00
beard%netscape.com
f973ddc215
needed to qualify isFieldKind
2000-04-07 00:24:42 +00:00
beard%netscape.com
bfe503795f
adding int to printCharBufferSize
2000-04-07 00:23:33 +00:00
waldemar%netscape.com
56188bfaae
Fixed Mac MPW build
2000-04-07 00:06:05 +00:00
rginda%netscape.com
d4b296f0f9
fix to include java version info on rhino(i|ms|msi) engines
2000-04-07 00:05:50 +00:00
waldemar%netscape.com
709bb0562d
Made Mac MPW js2 tool work
2000-04-07 00:05:23 +00:00
waldemar%netscape.com
7523109fc4
Added Buffer, BitSet, and implemented Formatters for output
2000-04-06 23:48:05 +00:00
waldemar%netscape.com
f9ce82ae8e
Implemented Formatters for output
2000-04-06 23:47:33 +00:00
waldemar%netscape.com
5d892e7bf7
Implemented Formatters for output and added parseMember
2000-04-06 23:45:58 +00:00
waldemar%netscape.com
66d8f5244f
Fixed syntax errors
2000-04-06 23:43:08 +00:00
waldemar%netscape.com
182fc056f3
Commented out syntax error
2000-04-06 23:40:47 +00:00
rogerl%netscape.com
dcbc9904da
Changed compare/branch handling to determine last compare opcode.
...
Made returnStatement a member in ICG.
2000-04-06 22:40:17 +00:00
rginda%netscape.com
5ef5dcbc26
punctuation fix
2000-04-06 21:50:03 +00:00
rginda%netscape.com
83d124c38c
-- NOT PART OF THE DEFAULT BUILD --
...
Added -c (stackchunksize) option to the js shell, for testing purposes
r=pschwartau
2000-04-06 21:19:56 +00:00
rginda%netscape.com
6a5c93bd51
added -o/--opt options to pass args to js engine
2000-04-06 21:14:23 +00:00
rginda%netscape.com
b4eab2df18
remove +x mode.
...
Not part of the default build.
2000-04-06 20:27:22 +00:00
beard%netscape.com
bed1820c51
Added interpreter.o to build of js2.
2000-04-06 03:05:12 +00:00
beard%netscape.com
efcd4404fa
cases for SUBTRACT, MULTIPLY, DIVIDE in print().
2000-04-06 03:02:24 +00:00
beard%netscape.com
6e423dece1
added testInterpreter(), which computes factorial using iCode (woo hoo!)
2000-04-06 02:59:16 +00:00
beard%netscape.com
602bdc5282
more arithmetic, conditional branches, return instruction.
2000-04-06 02:58:22 +00:00
beard%netscape.com
a57994c317
added new instructions, SUBTRACT, MULTIPLY, DIVICE, BRANCH_*, and RETURN. Changed LoadVar/SaveVar to have uint32 operand. Added optional paramter branchOp to ICodeGenerator::branchConditional() & endWhileExpression() to parametrize branch kind. Added complete(Register) to generate a RETURN instruction.
2000-04-06 02:57:42 +00:00
beard%netscape.com
2901700dc5
added a ref field, changed default constructor to initialize f64.
2000-04-06 02:52:51 +00:00
rogerl%netscape.com
047b74d5c6
Resolved branch targets
2000-04-06 00:04:11 +00:00
beard%netscape.com
f1388bf5a6
removed usage of labels (duh)
2000-04-05 23:57:51 +00:00
rogerl%netscape.com
d5b0b5bc32
typedef'd instructions
2000-04-05 23:41:58 +00:00
beard%netscape.com
76e3fd2f85
Added default case to avoid warning
2000-04-05 21:26:01 +00:00
beard%netscape.com
528d7eb22f
added "globals", labels parameter for branches, combined some Instruction_N<> typedefs.
2000-04-05 20:33:41 +00:00
beard%netscape.com
9a69888729
added labels parameter.
2000-04-05 20:29:09 +00:00
beard%netscape.com
391d9767eb
added Instruction::opcode(), and Instruction_N::oN(), and ICodeGenerator::getLabels().
2000-04-05 20:28:17 +00:00
beard%netscape.com
59cf8293ac
moved declaration of lgBasicAlignment & basicAlignment inside the include guard.
2000-04-05 20:26:49 +00:00
rogerl%netscape.com
c0c155dec7
added missing semi in win32 case
2000-04-05 18:20:02 +00:00
beard%netscape.com
96f9207cc7
added interpreter.cpp/.h
2000-04-05 18:06:04 +00:00
brendan%mozilla.org
eb7b547e77
Fix 22048 and 33391 (see bugs for details; r=jband@netscape.com).
2000-04-05 06:39:11 +00:00
beard%netscape.com
8a75ea3668
linux fixes
2000-04-05 06:10:53 +00:00
beard%netscape.com
ab11ac751b
first crack at an icode interpreter
2000-04-05 06:05:57 +00:00
beard%netscape.com
932ecf336b
turned off '\n' -> '\r' mapping
2000-04-05 04:25:51 +00:00
beard%netscape.com
2ff22a0e79
backed out "fix" (thanks waldemar)
2000-04-05 04:24:19 +00:00
beard%netscape.com
91135e142e
removed newline mapping code (instead using compiler mapping of '\n' to '\r' in literals, which should do the right thing).
2000-04-05 03:57:57 +00:00
beard%netscape.com
a5e6536104
added JS2MPW target (non-debug), converted MPW targets to do newline mapping (rather than using explicit override functions).
2000-04-05 03:56:34 +00:00