Граф коммитов

6183 Коммитов

Автор SHA1 Сообщение Дата
igor%mir2.org caf00e67ee Top call scope tracking changes:
Since E4X implementation needs to know the activation scope for tracking of default namespaces, previously an elaborated schema was added to set/restore the activation scope which relied on the fact that scrip and function with activation record should always call special entry/exit functions.

But that does not work for functions without activation records since they never call any special entry/exit pairs. So if application call such function directly, the function would not store its top scope anywhere and the E4X subsystem would not be able to get E4X library object.

The patch fixes with introduction of 2 functions, hasTopCall and doTopCall to ScriptRuntime and adding the following code prefix to each implementation of Callable.call that can start execution of script code:

    public Object call(Context cx, Scriptable scope,
                       Scriptable thisObj, Object[] args)
        throws JavaScriptException
    {
// Prefix start
        if (!ScriptRuntime.hasTopCall(cx)) {
            return ScriptRuntime.doTopCall(this, cx, scope, thisObj, args);
        }
// Prefix end
        ...

In this way there is always registered top scope during script execution and the previous elaborated schema became unnecessary so I reverted that part to almost pre-E4x state.
2004-08-09 11:00:47 +00:00
timeless%mozdev.org aff1762c06 Bug 240521 Crash [@ jsd_NewThreadState] when script is null
r=rginda sr=dmose
2004-08-08 19:56:49 +00:00
igor%mir2.org d65a74793c Fixing bug 254778: proper treatment of labels 2004-08-08 13:45:09 +00:00
igor%mir2.org 06080a4162 More switch parsing/code generation cleanups: now IRFactory constructs the proper parsed tree for the switch statement which removed the need for tree mutations in NodeTransformer and during code generation. 2004-08-07 20:08:38 +00:00
igor%mir2.org c436b86043 Cleanup for code generation in interpreter: store itsICodeTop as instance variable to avoid clattering code with explicit passing of iCodeTop, 2004-08-07 15:42:13 +00:00
igor%mir2.org 1835a4776d Switch parsing cleanup including reporting syntax error on duplicated default label 2004-08-07 15:39:55 +00:00
igor%mir2.org 72cfb14c71 Preparations for 1.6R1 2004-08-06 16:05:40 +00:00
igor%mir2.org 473f76a50f Class-Path entry for Rhino: xmlbean.jar 2004-08-06 15:49:25 +00:00
igor%mir2.org dc693719f5 Cleanup of call code generation: now it is split into separated functions for optimized/standard function calls. 2004-08-06 15:08:38 +00:00
igor%mir2.org 3811cf183e Removal of no longer used debug name index in Token.CALL/Token.REF_CALL: ScriptRuntime.get(Elem|Prop|Name|Value)FunctionAndThis takes care about debugging themselves. 2004-08-06 15:02:48 +00:00
brendan%mozilla.org ade08a7dc0 Fix bug 254375 by quoting negative integer property ids in js_obj_toSource. 2004-08-05 08:06:26 +00:00
brendan%mozilla.org e11ec1b078 Remove deadwood left by last checkin (254382, r=cst). 2004-08-05 07:52:45 +00:00
igor%mir2.org 09de001da9 GeneratedClassLoader is API class and should be listed in apiClasses.properties 2004-08-05 06:06:30 +00:00
brendan%mozilla.org 8f214c9c4f Comment fixes to track bug 254067. 2004-08-04 18:40:55 +00:00
brendan%mozilla.org 43585ec3ea JSOP_SETGVAR tweak: don't store rval needlessly in the optimized case, there's no chance it has changed. 2004-08-04 18:08:17 +00:00
brendan%mozilla.org 18947b1568 Remove bogus instanceof equivalence of distinct constructor function objects
that have the same native or script internally.  We no longer need this hack,
given regexp cloning done for precompiled scripts and functions (i.e., those
not eval'd or compile-and-go executed via a JS_Evaluate* API).

Fix a script_compile bug found during the scan of JSFRAME_EVAL occasioned by
the instanceof fix.

Bug 254067, r=shaver@mozilla.org.
2004-08-04 17:56:31 +00:00
igor%mir2.org 5f54cd264e Restoring ScriptRuntime.call: BSF uses it! 2004-08-04 17:42:56 +00:00
igor%mir2.org 686ca051d2 Allow to pass JS-wrapped instances of org.apache.xmlbeans.XmlCursor and org.apache.xmlbeans.XmlObject to XML constructor to make proper XML objects from them. 2004-08-04 17:32:48 +00:00
igor%mir2.org d7cab8295c Preparations for Rhino 1.6R1 RC1 2004-08-04 17:28:11 +00:00
igor%mir2.org 5c76a0f4fa 1. Recently introduced ScriptableObject.default(Prototype|ParentScope)() methods had problems with serialization and are removed now. XML code explicitly sets parent/prototype. To simplify that ScriptableObject now contains a special constructor taking scope and prototype arguments.
2. xml/XMLObject do not define lib() method and instead defines few abstract methods to create "with" proxies and perform addition.

3. XMLLib implementation is stored in the scope using ScriptableObject.associateValue() and does not depend on presence of proper XML object.
2004-08-04 12:54:03 +00:00
brendan%mozilla.org 629a8810b9 Whitespace cleanup. 2004-08-04 02:28:58 +00:00
igor%mir2.org 552d49a5ae Preparations for 1.6R1 RC1 2004-08-03 17:13:40 +00:00
igor%mir2.org d09a0eee9c Cosmetics: untabify 2004-08-02 17:49:04 +00:00
brendan%mozilla.org 62cad01588 Fix trunk version of patch for bug 252892 to handle JSOP_{GET,SET}GVAR (253952). 2004-08-02 17:17:55 +00:00
igor%mir2.org 5a5e402b85 Added runtime support to allow custom wrapping of XML objects 2004-08-02 14:46:33 +00:00
igor%mir2.org c65e9b8450 Use ScriptRuntime.notAFunction to report bad ScriptableObject.callMethod arguments 2004-08-02 14:44:03 +00:00
igor%mir2.org 0875b1550b Explicit ScriptRuntime methods to get function and function this for all cases of method calls:
ScriptRuntime.get(Name|Prop|Elem|Value)FunctionAndThis provides uniform way to get function object and its this during function calls. It allowed to simplify handling of method calls both in interpreter and optimizer and opened a way to implement independent processing of function and property namespaces.
2004-08-01 23:21:17 +00:00
igor%mir2.org 061a717577 More compatibility renames: to simplify life for applications that use old IdScriptable/IdFunction/IdFunctionMaster I farther renamed:
IdFunction -> IdFunctionObject
IdFunctionMaster -> IdFunctionCall
2004-07-30 13:18:30 +00:00
igor%mir2.org ed22b8d5bc Compatibility rename: due to changes in IdScrittable any code that sublasses
it has to be updated. This is done for Rhino classes and since IdScriptable
is not a part of public API, it should not matter. But in reality someone can
subclass IdScriptable in application code.

To help with upgrade in such cases I renamed IdScriptable into
IdScriptableObject. In this way the application using IdScriptable code can add
old IdScriptable class to its CLASSPATH  and be able to run again without the
need to recompile/change anything in the source.
2004-07-30 10:31:00 +00:00
igor%mir2.org f8ca6bb144 The previous patch introduced regression: it is posible for slots array to be filled with slot objects and REMOVED tags. Thus getSlotPosition can loop through the whole table. This patch restores the old and proper state of affairs. 2004-07-30 07:52:30 +00:00
brendan%mozilla.org ef5ad7410c - Decorate PN_LIST nodes with pn_extra flags whose constant names describe
their meaning better, adding a flag for 'for (var x ... in o)'.
- Set these flags from the parser, in a future-proof way (|=, not =, given the
  zero initialized pn_extra flags member of pn_list).
- Test list flags in the code generator, including PNX_FORINVAR in conjunction
  with whether the for..in loop is of the oddball form 'for (var x = i in o)'.
- Thereby fix failure to emit a JSOP_DEFVAR in the case that a function wraps
  a for..in loop in a with statement (252892, r=shaver).
- The same fix cured another bug, not reported, where 'for (var x = i in o)'
  in a function without any 'with' statement would emit the wrong opcode
  (JSOP_FORNAME, not JSOP_FORVAR).
2004-07-30 00:00:09 +00:00
igor%mir2.org 88d3ceb9eb Using single ScriptRuntime.toStringIdOrIndex to convert object id to string of index key instead of multiple calls to getStringId/getIntId. 2004-07-29 22:47:05 +00:00
igor%mir2.org 457b3cac9a Calling proper ScriptRuntime.call taking scope argument instead of eprectaed old form. 2004-07-29 22:44:45 +00:00
igor%mir2.org 594bb52734 New "scratch" field for int indexes to allow to return more then one result from index parsing functions. 2004-07-29 22:42:50 +00:00
igor%mir2.org 61b4dfe136 Explicitly throw IllegalStateException to indicate code bug when hashtable scan end up in infinite loop. 2004-07-29 22:40:47 +00:00
brendan%mozilla.org 3e28fc0f8e Improve JSRESOLVE_DETECTING to handle typeof, ==, !=, etc.; don't give undefined property strict warning for detecting cases (253150, r=shaver). 2004-07-29 20:44:20 +00:00
igor%mir2.org 6c33ddde1a Adding E4X example contributed by John Schneider from AgileDelta, Inc., http://www.agiledelta.com/ . 2004-07-29 15:55:41 +00:00
igor%mir2.org 7727f9784c Fixing missed context wrapping in debugger/Dim and proper button enable/dosable in debugger/DebugGui 2004-07-29 12:51:35 +00:00
igor%mir2.org f8d44cc5d9 Fixing under allocation of ids array while enumerating properties. 2004-07-29 12:46:46 +00:00
igor%mir2.org 80101fd2cf Better error propagation from failed class loading: RuntimeError instances are rethrown while ClassNotFound, LinkageError etc. are caught. 2004-07-29 12:45:55 +00:00
igor%mir2.org 0f6d41a084 Renaming StringIdMap to Main and ipdating documentation 2004-07-29 10:44:59 +00:00
igor%mir2.org 0e32e1807e Cleanup patch from Mario Cormier <mcormier@miranda.com> to fix bug 253323:
Parser contained useless this.decompiler = decompiler assignment.
2004-07-29 08:28:42 +00:00
igor%mir2.org e9d84b06aa Committing E4X runtime implementation: see enhancement report 242805.
This is based on code contributed to Rhino by AgileDelta, Inc, www.agiledelta.com and in particular by

Ethan Hugg
Terry Lucas
Milen Nankov
John Schneider

Thanks!
2004-07-28 23:43:17 +00:00
igor%mir2.org 575e8a64ff Committing E4X parser and runtime proxies: see enhancement report 242805.
This is based on code contributed to Rhino by AgileDelta, Inc, www.agiledelta.com and in particular by

Ethan Hugg
Terry Lucas
Milen Nankov
John Schneider

Thanks!
2004-07-28 21:11:02 +00:00
igor%mir2.org 104a577692 Added ScriptableObject.equivalentValues to allow for custom equality operator support. 2004-07-28 15:23:11 +00:00
igor%mir2.org eca6887020 Added Reference.has() for future use. 2004-07-28 15:21:02 +00:00
igor%mir2.org a41b3ec13e Ignore any exception during script class initialization unless it is an instance of RhinoException. In this way lazily class loading or incompatible with the current JVMs jars will simply hide the script variables. 2004-07-28 15:20:08 +00:00
igor%mir2.org fa3b4a39aa Always call Scriptable.has(name, start) as obj.has(name, obj) since the start argument is useless in Scriptable.has and in this way it is possible to add temporary assertions to the code checking this. 2004-07-28 13:27:39 +00:00
igor%mir2.org 02ca5d7471 Redesigning IdScriptable implementation.
The new logic introduces 2 independent id namespaces, instance ids and prototype ids. Typically there are very few instance properties and instance ids corresponds exactly to them. The prototype ids allows to define functions and other constant objects that typically found in prototype objects.

The new implementation takes advantage of this difference to provide very different API to implement fast mapping both for instance and prototype ids.
2004-07-28 11:40:38 +00:00
igor%mir2.org 26e2f979e9 Introduction of defaultParentScope and defaultPrototype in ScriptableObject for lazily initialization of scope and prototype. 2004-07-28 09:52:29 +00:00
igor%mir2.org 26bde72dd8 Making ScriptRuntime.typeError* public 2004-07-28 09:51:02 +00:00
igor%mir2.org 8684cd21de Allow to subclass NativeWith 2004-07-28 09:50:07 +00:00
igor%mir2.org a9e5ef9c3b Favour same type converssions during LiveConnect for better support of java methods taking instances of Scriptable 2004-07-28 09:49:19 +00:00
igor%mir2.org a17d812303 1. Optimizing getClassPrototype and getDefaultValue in ScriptableObject.
2. Start of the changes for simpler to use IdScriptable implementation: new utility functions in IdFunction and removal of Context argument from IdScriptable.fillConstructorProperties.
2004-07-28 07:12:46 +00:00
igor%mir2.org d8725eb93f Context.getArrayElements implementation is moved to ScriptRuntime which also defined now isArrayObject 2004-07-28 07:06:35 +00:00
brendan%mozilla.org b053e715ee Avoid harmless UMC from purify when XDR-decoding (252047, r=shaver). 2004-07-27 01:28:39 +00:00
mkaply%us.ibm.com b8fca0d80e This stuff doesn't work on OS/2 and is causing thousands of warnings errors 2004-07-22 20:27:48 +00:00
brendan%mozilla.org c453f12cea Update map->freeslot in js_SetRequiredSlot if obj has its own scope (245890, r=shaver); also clear pending exceptions as needed in js_TryMethod (old unreported bug, r=self). 2004-07-22 15:47:22 +00:00
timeless%mozdev.org 8c8fc22a13 reverting 3.176 per brendan 2004-07-20 16:11:53 +00:00
brendan%mozilla.org 8f03fa9a90 Fix unused variable problem. 2004-07-17 02:44:37 +00:00
brendan%mozilla.org 533a1486d7 - Add JS_Has*Property and JS_HasElement APIs, for unambiguous testing of whether an object or one of its prototypes has an identified property.
- Add JS_ReportPendingException, and fix its js_ReportUncaughtException subroutine to (a) not return false on vacuous success; (b) fail to clear the pending exception it reports.
2004-07-17 02:39:55 +00:00
brendan%mozilla.org 405088a497 White space policing. 2004-07-17 02:31:11 +00:00
tor%cs.brown.edu 9efc1837c9 Bug 165200 - Number.toLocaleString() localization. r=brendan 2004-07-16 21:17:50 +00:00
timeless%mozdev.org 9a28b62471 Bug 243869 js_ReportUncaughtException doesn't propagate filename/lineno from error object
These changes are a last ditch effort to provide filename info for certain failures.
r=shaver
2004-07-16 17:30:23 +00:00
brendan%mozilla.org 4d29b4c46d Restore export/import support for 4.x signed script compatibility (249211, r=self). 2004-07-15 19:21:35 +00:00
brendan%mozilla.org a14eaadfa4 Improve JSRESOLVE_DETECTING by treating 'terminal' uses of, e.g., document.all as detecting (248549, r=jst). 2004-07-15 18:53:59 +00:00
dbaron%dbaron.org d52eef0eae Only use __attribute__ on gcc 3 or higher. Fixing bustage. b=249652 2004-07-15 00:00:43 +00:00
bryner%brianryner.com 377380315d Add a NS_FASTCALL macro that specifies regparm(3) and stdcall on gcc/x86 to improve performance (passing up to 3 arguments in registers instead of on the stack, and having the caller pop any stack arguments). Apply NS_FASTCALL to our most frequently called non-public methods and functions. Also add NS_CDECL to explicitly specify the default calling convention and make it part of NS_IMETHOD, since xptcall can't deal with NS_FASTCALL. Bug 249652, r=darin, sr=dbaron. 2004-07-14 22:14:34 +00:00
igor%mir2.org 0b43005efc Making next release to be 1.6 release 1 2004-07-12 14:26:30 +00:00
igor%mir2.org 6e592d434b Renaming ObjArray.setReadOnly() to ObjArray.seal() to follow the rest of Rhino code. 2004-07-09 13:28:48 +00:00
igor%mir2.org 6c54cdec60 Fixing comments text to reflect real state of code 2004-07-07 14:47:46 +00:00
igor%mir2.org 4ada0b6a37 Almost reverting the prevois commit: it was too preliminary. 2004-07-07 14:46:58 +00:00
brendan%mozilla.org bc5978087d Enhance RegExp.prototype.to{Source,String} to escape naked slashes in the regexp source (284444, r=shaver). 2004-07-07 03:58:26 +00:00
igor%mir2.org 943eb8493c Changing the way Java getter and setter are stored: a new special class ComplexValue is used to indicate a controllable value that may have associated getter/setter methods. In this way getter can be added after slot creation without the need to replace slots. 2004-07-06 14:37:56 +00:00
igor%mir2.org 3ae6fdf9db Token.ZERO and Token.ONE are used only by interpreter and moved to Interpreter as corresponding icode constants. 2004-07-05 15:08:34 +00:00
igor%mir2.org 3c5cccc01d Removal of no-longer applicable comments refering to SM code 2004-07-05 15:07:25 +00:00
igor%mir2.org 22e375a6d4 Removal of Token.DOT in NodeTransformer: it is always processed in IRFactory. 2004-07-05 15:06:18 +00:00
igor%mir2.org 8791bc23b5 When support for Context.FEATURE_MEMBER_EXPR_AS_FUNCTION_NAME is enables,
decompiler now does not turn them into assignment statements but keeps
original code with extension when printing function source. It allows for
better emulation of this JScript extension
2004-07-04 17:26:50 +00:00
igor%mir2.org 428facfffa Simplified handling of function expression statements: parser no longer
generate synthetic expression statement nodes for them.
2004-07-04 14:13:47 +00:00
igor%mir2.org d49fff6560 Normilizing numeration of Token constants after removal of few no longer used
constants in the previous patches
2004-07-04 14:12:01 +00:00
igor%mir2.org ed8b5cf4bf Splitting code generation in interpreter and class compiler into separated statement-only and expression only cases to add more checks. 2004-07-02 15:36:13 +00:00
igor%mir2.org c001992635 Replacing generic Token.EXPRSTMT by Token.EXPR_VOID and Token.EXPR_RESULT and removal of Token.POP and Token.POPV. Now parser creates appropriate expression statements itself so there is no need to replace the time in NodeTransformer. 2004-07-02 13:11:06 +00:00
igor%mir2.org 19a3f8f1df Fixing bug 249471:
Fixing parseFloat logic and Context usage cleanup.

I changed number start detection code in parseFloat to check properly for lone
+/- while making the code IMO more redable.

In addtion patch removes unused Context parameter from various functions in
NativeGlobal including parseFloat which was remainder from pre IdFunction
code.
2004-07-02 06:55:21 +00:00
igor%mir2.org f07023b676 Removal of Tiken.UNDEFINED: it was not used outside Interpreter 2004-07-01 16:40:44 +00:00
igor%mir2.org 6cda148128 Replacing state flags in TokenStream by separated boolean values to simplify
code and to remove flags that were set/cleared but never queried.
2004-07-01 14:52:22 +00:00
igor%mir2.org 860281245c Change IRFactory to return/accept Node, not Object as the type for parse tree
nodes. Parser already assumes in a few places that such Node and it is not
worth to pretend otherwise.
2004-07-01 10:39:28 +00:00
igor%mir2.org 8c09378b4d Fixing JavaDoc: the previous changes removed Context(ContextFactory)
constructor as factory is associated automatically with Context but JavaDoc
continied to refer to this constructor form.
2004-06-30 15:28:04 +00:00
igor%mir2.org 03fd126f9f Deprecation of ContextListener in favour of ContextFactory.Listener:
the later is stored in the factory and not in static variables.
For compatibility an instance of ContextFactory stored in static variables
is used to provide support for old Context.addContextListener etc. API.

The static instance of the factory is also used by Context.enter to create
Context instances providing simple way to customize Context: one just need
to initialize the global static factory.
2004-06-30 15:23:39 +00:00
igor%mir2.org b7d599a40f Fix menu enable/disable misbehavior. 2004-06-30 13:29:41 +00:00
igor%mir2.org 0943483fa1 Fixing JDK 1.3 compatibility: TableModel.getRot() should not return null there. 2004-06-30 09:38:54 +00:00
igor%mir2.org 49d3ea3724 Fixing scope problems with IdFunction when IdScriptable is top scope itself:
scope for IdFunction instances is determined through getTopScope,
not getParentScope() which can be null.

To prevent null scope initialization problems in future IdFunction constructor
now throws an exception if scope argument is null.
2004-06-29 15:43:01 +00:00
timeless%mozdev.org c3cc80b569 Bug 248458 Crash [@ nsJSIID::Equals] for null other
r=dbradley sr=shaver
2004-06-24 23:49:08 +00:00
brendan%mozilla.org f5d505c128 NARCISSUS-only fix from Frierich Munch <colsebas@hotmail.com>. 2004-06-23 21:25:55 +00:00
bryner%brianryner.com f0d2368a08 Make jsdouble hashing code strict-aliasing safe (bug 247877). r=brendan. 2004-06-21 17:57:10 +00:00
brendan%mozilla.org 6fccef753a Mangle JS_STATIC_DLL_CALLBACK names a bit in case they're not hidden. 2004-06-20 02:29:19 +00:00
bsmedberg%covad.net 54d8995c12 Bug 239875 - fix xpconnect static guards so we can restart xpcom without crashing r=shaver sr=brendan 2004-06-19 01:19:27 +00:00
brendan%mozilla.org ecb09180aa My spin on Malcolm Rowe's patch for ECMA-compliant \b in regexps (247179, r=me). 2004-06-18 21:59:06 +00:00
brendan%mozilla.org 4134edb38e Fix off-by-one, simplify logic in light of EOF mapping to 0 JS_CCODE. 2004-06-18 20:40:54 +00:00
roc+%cs.cmu.edu 52092297fe Bug 226439. Convert codebase to use AppendLiteral/AssignLiteral/LowerCaseEqualsLiteral. r+sr=darin 2004-06-17 00:13:25 +00:00
brendan%mozilla.org 9abe53acce Add JSRESOLVE_DETECTING (246964, r=shaver). 2004-06-16 21:15:35 +00:00
tor%cs.brown.edu bd483bc79f Bug 153586 - Date.toLocaleString() not returning locale string.
r=jst, sr=brendan
2004-06-15 16:38:43 +00:00
igor%mir2.org 9c694e01db Make EvaluatorException(String) public for compatibility 2004-06-15 04:42:59 +00:00
brendan%mozilla.org 4c16bc81bb Give JSObjectOps.setRequiredSlot a JSBool return value so it can propagate errors (part of 245890, r=shaver). 2004-06-12 01:50:09 +00:00
cbiesinger%web.de 8efd04ae2e bug 245673 named literal strings should be const
r+sr=darin
2004-06-11 15:05:29 +00:00
brendan%mozilla.org d39ec979e8 Fix comment glitch pointed out by timeless (243359). 2004-06-11 06:30:14 +00:00
timeless%mozdev.org 37a203855b Bug 238712 nsMemoryImpl::Alloc (0) in XPCConvert::JSArray2Native
r=dbradley sr=brendan
2004-06-11 04:40:00 +00:00
brendan%mozilla.org afcd3248aa Add support for XUL preprocessor line/file coercion (243359, r=bryner). 2004-06-11 00:55:59 +00:00
pschwartau%netscape.com 9e2dcfe43d Updating JS_GetImplementationVersion() to date of latest JS release (67111) 2004-06-09 23:08:07 +00:00
brendan%mozilla.org 3376e7fb87 Back out patch for bug 245890 for now. 2004-06-09 19:39:53 +00:00
igor%mir2.org 7b30a5de99 Fixing regression after previous commit for bug 245882: when used as top scope ImporterTopLevel should not define constructor property not to hide Object.prototype.constructor. 2004-06-09 17:01:01 +00:00
igor%mir2.org a8ca02b455 1. IdFunction.methodId is no longer public as some old Java compilers have troubles with it and accessor method has to be used instead.
2. IdFunction constructor now takes scope argument as well to prevent initialization bugs.
2004-06-09 12:54:04 +00:00
igor%mir2.org 89f5fdbbf7 The last commit made Rhino uncompilable! Fixing that. 2004-06-09 08:25:59 +00:00
igor%mir2.org 7bc79c031f Implementing bug 245882: now ImporterTopLevel can be constructed from JavaScript using JavaImporter to allow to have class and package collections without namespace polluting. 2004-06-09 07:36:31 +00:00
igor%mir2.org 49246d9273 Work on bug 245882: check that scope is not this when setting scope chain
to prevent scope chain loops.
2004-06-08 23:30:30 +00:00
igor%mir2.org bdfcefdff8 Default implemetation of toSource now lives in ScriptRuntime to allow its
reuse in othr objects.
2004-06-08 23:28:32 +00:00
igor%mir2.org e565588063 Yet another change in IdFunction: now its constructor takes arity argument
which removes the need to have separated methodArity in IdFunctionMaster
intertface. The method, however, has to be preseved in IdScriptable since it
is used to find which arity should be used during IdFunction construction.
2004-06-08 22:25:57 +00:00
brendan%mozilla.org 9c20990405 Avoid overparenthesizing function expressions (245795, r=shaver). 2004-06-08 22:15:23 +00:00
brendan%mozilla.org 2fb1c2ba8d Fix bug caused by bug 165201's checkin, where regexp-valued slots in function object clones might dangle after GC (245890, r=shaver). 2004-06-08 21:58:52 +00:00
igor%mir2.org 7be4658c39 Using IdFunction in place of JIFunction in NativeJavaTopPackage 2004-06-08 15:29:34 +00:00
igor%mir2.org 4ab02a8202 Changin IdFunction/IdFunctionMaster iteraction:
1. execMethod and methodArity in IdFunctionMaster do not receive methodId explicitly but rather through the IdFunction instance. To ensure fastest access to method id it is made pubic final field.

2. IdFunction allows to associate an internal tag with itself that allows not to worry about id clashes and simply check for object tag before doing method dispatch.
2004-06-08 14:23:35 +00:00
igor%mir2.org 9409fd1750 JIFunction was wrong idea at the end: it is better to stick with IdFunction and teach it missed functionality. The patch changes JavaAdapter to use IdFunction for its constructor call. 2004-06-08 12:38:20 +00:00
igor%mir2.org 87e6a1e09c API to set global SecurityController is moved to SecurityController not to clatter Context. 2004-06-08 11:09:40 +00:00
igor%mir2.org f3d3d1d14a Work on bug 244492: RhinoException is the new common base class for all exceptions. 2004-06-07 16:40:28 +00:00
igor%mir2.org 78729bc8b9 Switch to using Context.javaToJS instead of Context.toObject 2004-06-07 10:35:22 +00:00
igor%mir2.org 8404a66bdf setGlobalSecurityController should be static 2004-06-07 10:34:22 +00:00
igor%mir2.org a58e08501c Introduction of ContextAction interface as a safe alternative for Context.enter/Context.exit. All usages of Context.enter/Context.exit in Rhino are replaced by
Context.call(new ContextAction() {
	public Object run(Context cx) { ... }
});
or similar alternatives.

It prevents bugs with missed Context.exit and provides room for optimization of Context association with current thread and simplify implementation of safe environment for execution of untrusted applets and scripts.

In addition, Rhino now supports global SecurityController that take precedence over any per/Context controllers so the application can setup the controller once and for all.
2004-06-06 15:33:59 +00:00
igor%mir2.org 08117caf7c ContextFactory is a new API class 2004-06-06 09:28:18 +00:00
brendan%mozilla.org 4a82e223c0 Use a GC root by definition, not result, when calling js_Interpret from js_Execute (245570, r=shaver, sr=jst, a=dbaron). 2004-06-05 01:38:13 +00:00
igor%mir2.org 60c0074729 added ContextFactory which is used to create Context instances in JavaAdapter when there is no Context associated with the current thread. 2004-06-04 17:54:42 +00:00
igor%mir2.org ca73e6aad1 Better JavaDoc comments for FEATURE_ constants 2004-06-04 17:51:27 +00:00
igor%mir2.org 46aea95d99 Allow to disable special treatment of __proto__ and __parent__ via overriding Context.hasFeature(). 2004-06-04 14:57:31 +00:00
igor%mir2.org 29355807c9 Use consistent naming for property manipulation functions in ScriptRuntime and drop no longer used scope argument for ScriptRuntime.setProp that acts on strings. 2004-06-04 06:58:03 +00:00
cbiesinger%web.de c67fd1044d bug 244156 disable PCH when whole program optimization is enabled
patch by Stephen Walker <sdwalker@myrealbox.com> r=bsmedberg
2004-06-03 20:31:47 +00:00
brendan%mozilla.org 77ebb056ef ECMA fix: Date.prototype instanceof Date should be false (245113, r=shaver). 2004-06-02 21:24:17 +00:00
brendan%mozilla.org 8423c683b6 Fix [null].toSource() to produce [null], not [] (245148, r=shaver). 2004-06-02 21:10:00 +00:00
igor%mir2.org 5a88756821 Code to create references to manipulate with __proto__ and __parent__ is moved to ScriptRuntime.specialReference not to expose too much implementation details 2004-06-02 14:56:25 +00:00
igor%mir2.org a5438d7003 Changing Refrence.set(Object) to return Object to return the real stored value. 2004-06-02 11:33:09 +00:00
igor%mir2.org 4db86ff03e Pass __proto__ and __parent__ special properties to code generation as strings to allow to support application-specific special properties without altering code generation. 2004-06-02 09:13:12 +00:00
igor%mir2.org 2c7e977b7e Allow Rhino embeddings to support function as left-hand-side extension via overriding BaseFunction.specialCall(). 2004-06-01 16:04:18 +00:00
igor%mir2.org ef83ead18b Making invalid left hand of assignment runtime reference error instead of syntax error as dictated by ECMAScript. Now interpreter/class compiler generates code that calls ScriptRuntime.genericReference() that in turn throws the error. 2004-05-31 15:49:19 +00:00
igor%mir2.org 2361dfc4fe Work on bug 243057:
Introduction of support for calling function in reference context so with native functions code like f(args) = something or x.y(args)++ would be allowed.

The changes added necessary changes to parser and code generation but at runtime currently any such usage would throw an exception.
2004-05-31 14:51:20 +00:00
igor%mir2.org a3039484fe For prefix and postfix ++/-- use mask flags instead of enumeration to denote postfix/prefix and ++/-- operation. 2004-05-31 13:03:16 +00:00
igor%mir2.org 991ba5a998 Optimize ++name and --name similarly to name++ and name-- via special runtime support 2004-05-31 12:09:39 +00:00
igor%mir2.org dbadb64388 Optimizing ++x.y and --x.y in the same way as x.y++ and x.y-- via special runtime support 2004-05-31 08:18:38 +00:00
igor%mir2.org 047a15067a Introduction of generic Reference class to support latter constructions like f(args) = y and f(args)++. For now it is used to implement __proto__ and __parent__ special properties so x.__proto__++ now works 2004-05-31 07:18:52 +00:00
igor%mir2.org 067167b599 ++x[y] is optimized in the same way as x[y]++ via special runtime support 2004-05-30 15:54:21 +00:00
igor%mir2.org b79f99d123 Using negative nimbers for interpreter-specific tokens to allow for 256 bytecodes without using 0xFF & conversion 2004-05-30 14:21:07 +00:00
igor%mir2.org 0b398922b2 Added JavaDocs for Kit.initCauseOrIgnore 2004-05-29 09:37:48 +00:00
igor%mir2.org bf11211950 Make code to call Throwable.initCause via reflection previously located in WrappedException publically available in Kit.java 2004-05-29 08:55:41 +00:00
igor%mir2.org 13742bf7e3 Follow conventinal code practics of throwing IllegalArgumentException, IllegalStateException directly instead of using additional helper methods for it. 2004-05-29 08:54:24 +00:00
igor%mir2.org b32204397b Patch from Merten Schumman <Merten.Schumman@asg.com> to add Main.mainEmbedded(String) which is a version of Main.main without System.in/err/out redirection. It simplifies life for embeddings. 2004-05-28 14:19:11 +00:00
igor%mir2.org 745d21a64a Final implementation of GUI/debug implementation internals separation. Now the newly introduced Dim.java (Dim: Debug IMplementation) depends only on GuiCallback and contains all iteractions with Rhino. 2004-05-27 11:26:59 +00:00
igor%mir2.org 376d1c704f exitAction is moved to DebugGui 2004-05-27 10:34:44 +00:00
igor%mir2.org a33c5804bd Prepare to remove dependancy of core debugger implementation on GUI: introduction of GuiCallback interface that DebugGui implements. 2004-05-27 10:21:24 +00:00
igor%mir2.org 8ebd78d480 Work on 244492: JavaScriptException extends RuntimeException 2004-05-26 11:54:10 +00:00
igor%mir2.org 2859645f27 Make sure that Context.getSourcePositionFromStack never returns negative numbers and uses 0 to indicate absence of line information. It accounts for differences between JVMs when dealing with incomplete debug information. 2004-05-26 11:03:03 +00:00
igor%mir2.org d5073b98f0 In JavaScriptException constructor do not call ScriptableObjec.toString(value) since it may potentially trigger script execution for objects defining toString method which in turn may throw exceptions.
Instead for Scriptable arguments prints their [Object className] form which is provided by the new ScriptRuntime.defaultObjectToString(Scriptable) method.
2004-05-25 15:39:28 +00:00
igor%mir2.org 5951c62a93 Added JavaDoc link to a better way of wrapping exceptions then using WrappedException constructor 2004-05-24 10:11:23 +00:00
igor%mir2.org 1b43332683 Restoring public constructor for WrappedException for compatibility with Batik. 2004-05-24 07:53:06 +00:00
igor%mir2.org 34ab13be2a Change Arguments.getIds to include argument indexes when getAll is true. It allows not to have a tailored getIds in the debugger. 2004-05-23 17:34:44 +00:00
igor%mir2.org 6e88856ae7 Fixing JavaDoc comments 2004-05-23 17:32:32 +00:00
igor%mir2.org 72e2855e0d 1. Reorganize debugger to move all code that interacts with the engine into Main.java while all GUI logic now presents in DebugGui
2. Move downloaded files for swing tree table into downloaded directory and adjust build files accordingly.
2004-05-23 16:15:09 +00:00
igor%mir2.org 52e39ba59a Make sure that for Rhino-generated exceptions Throwable.getMessage() contains script file and line information. 2004-05-23 14:32:07 +00:00
igor%mir2.org 35bdebcd32 Make EcmaError to follow the same pattern as JavaScriptException
and EvaluatorException for getMessage() methods: it provides error message
with script source/line information.
2004-05-23 09:50:20 +00:00
igor%mir2.org df54b03026 Switch to line info extraction through single top script processing 2004-05-22 23:19:56 +00:00
igor%mir2.org 7d46eb7a55 Splitting Main.java into Main.java and GUI-related DebugGui.java 2004-05-21 15:06:36 +00:00
igor%mir2.org 5655ee2688 Split Main class into Main and DebugGui to have better debugger/gui separation 2004-05-21 14:25:21 +00:00
igor%mir2.org 7515cd34c9 Move all logic to open source window at the end of compilation to single update action. 2004-05-21 12:04:47 +00:00
igor%mir2.org 3ed08b1008 1. Fixing reporting for calls to undefined: stringReg is not suitable for function names if function contains arguments. So Token.NEW/Token.CALL comes with index of potential function name.
2. If debug information is not generated, Context.interpreterLineIndex could contain garbage from previous function invocation leading to ArrayIndexOfBound. Now Context.interpreterLineIndex is initialized at the interpreter entrance and getSourcePositionFromStack checks against absent line numbers.
2004-05-21 11:43:38 +00:00
igor%mir2.org f368c16d77 Move logic to show exception dialog into EnterInterrupt action 2004-05-21 11:27:59 +00:00
igor%mir2.org d88a5e1d65 Test file 2004-05-21 10:53:19 +00:00
igor%mir2.org 1cffb3a028 I changed StackFrame.onLineChange to access breakFlag directly which allowed to remove global context hashtable 2004-05-21 01:20:48 +00:00
igor%mir2.org 2e4ae80a06 Merge various GUI initializations during breakpoint hit into single action 2004-05-21 01:10:04 +00:00
igor%mir2.org 8ae85161c4 Removal of manThread: breakFlag can do its job just fine 2004-05-21 00:17:45 +00:00
igor%mir2.org fbaa640d80 Replace Context switching during eval for interrupted threads by thread communication so all evals happens on the original thread. 2004-05-21 00:11:24 +00:00
brendan%mozilla.org 22e1909c71 Fix PushBackTrackState so it doesn't assume double backtrack stack size suffices to hold the new result (243174, r=shaver). 2004-05-19 02:15:26 +00:00
igor%mir2.org 05210d03cd To make variable access faster the form of getvar/setvar with var index
encoded in bytecode is reintroduced.
2004-05-18 22:33:41 +00:00
brendan%mozilla.org 6e0a15694f Report error on extra quantifier after term (197451, r=shaver). 2004-05-18 20:53:02 +00:00
igor%mir2.org 8bc0a7f9ea Added more fast index load instructions and removed 0xFF & when extracting bytecode as all byte codes are less then 128. 2004-05-18 15:02:26 +00:00
igor%mir2.org 738378172f In the interpreter loop comparision operations are represented by separated optimized do_cmp. 2004-05-18 12:19:25 +00:00
igor%mir2.org 9fd2427028 To make loading of strings into string register faster I added Icode_REG_STR_C[01023] that directly loads the string at the given index. 2004-05-18 11:19:30 +00:00
timeless%mozdev.org 7b5970dc1f Bug 243621 Standardize QueryInterface without throw
r=neil sr=darin
2004-05-17 23:38:25 +00:00
brendan%mozilla.org efd36dca8b Fix IDENTIFIER resolution to use in, not hasOwnProperty, since we are metacircular on __proto__. 2004-05-17 23:10:53 +00:00
igor%mir2.org 86c9c1fc8c Removal of 32K restriction on the length of the maximum jump offset.
Now interpreter uses UintMap to store jump targets spanning more then 32K
of bytecode.
2004-05-17 21:36:47 +00:00
igor%mir2.org e2a31f83bc Reorganization in jumping code to make the following patch to drop 32K
jump length restriction smaller
2004-05-17 19:19:18 +00:00
igor%mir2.org e89f165b2a Remove 256 limit on number of variable using index prefix for all variable
operations. To offset small performance loss for variable access new
index prefixes operation REG_IND_C[0123] are added to load 0,1,2,3 as index
value with one bytecode.
2004-05-17 17:57:43 +00:00
igor%mir2.org b566c7d2db For GETPROP/SETPROP use explicit name prefix to load property name instead
of pusshing property to stack
2004-05-17 17:29:12 +00:00
igor%mir2.org 41c7c76181 Remove 256 limit on number of local slots using REG_IND* prefixes to load the
slot index
2004-05-17 16:27:39 +00:00
brendan%mozilla.org c96a9fbdf6 Back out compileFile, don't need it given i/o + Script. 2004-05-17 16:21:51 +00:00
igor%mir2.org 2f55f98a05 Splitting name_and_this bytecode into name_fast_this and name_slow_this to
avoid flag reading during simple function calls
2004-05-17 15:58:48 +00:00
igor%mir2.org 95e0a08f17 Use the same of specal index prefix byte code for [] and {} literals 2004-05-17 14:55:45 +00:00
igor%mir2.org 322032e9bd Elimination of 64K restriction limit for various index-based opcodes. Now
they are prefixed with special Icode_REG_IND* that load the index of proper
size.
2004-05-17 14:34:29 +00:00
igor%mir2.org 4af6590fd5 Removal of 64K limit of total number of strings per script/function: now
string operands are preloaded with special LOAD_STR opcodes that handles full
int indexes
2004-05-17 13:07:49 +00:00
igor%mir2.org 5f6be5d271 In the interpreter loop avoid code duplication for calling instruction
observer after each jump: now all tsuch code blocks are merged into generic
code that follows the interpreter switch
2004-05-17 11:44:42 +00:00
igor%mir2.org 43cae3f598 Another small modifications to Interpreter to make the following patches
smaller: replacing all brek in the main switch of the interpreter with
"continue Loop"
2004-05-16 21:01:00 +00:00
igor%mir2.org 849ab4f57e In the interpreter loop increment pc immediately after icode read to avoid
ever adding +1 in post byte codes with arguments
2004-05-16 14:02:26 +00:00
igor%mir2.org 3414a5d0bf Inside the interpreter loop merger many almost identical icode
implementations into common block that use additional ifs to distinguish
between icode. It allows to shrink the ever growing Interpreter.interpret()
2004-05-16 13:30:53 +00:00
igor%mir2.org 056ad2e0d8 New implementation of ARRAYLIT and OBJECTLIT that does not requires stack
space to hold all literals values before they are copied to a temporary array
to pass to ScriptRuntime functions. The new code populates array during values
calculations.
2004-05-15 17:28:22 +00:00
igor%mir2.org aa3b4192c7 Quote property names in object literals produced by toSource() if they
coincide with reserved keywords.
2004-05-15 17:23:06 +00:00
igor%mir2.org 61f8b426d6 Use special parse nodes for array and object literals to generate more compact
bytecode both for interpreter and compiler to have faster [] and {} literals.
It also fixes the bug of accessing local variables Array/Object for the
literals instead of top-scope objects.
2004-05-14 22:47:44 +00:00
brendan%mozilla.org dcf3e0d32b Check in workaround for VC7.net bug (242518, r=self). 2004-05-14 17:16:00 +00:00
brendan%mozilla.org c8e9fb3e91 Fix empty trailing alternative code to handle unterminated parens around the alternation (243389, r/sr=igor/shaver). 2004-05-14 04:06:28 +00:00
brendan%mozilla.org 81b340cc56 My version of igor@fastmail.fm's fix to check backref overflow (bug 230216, r/sr=igor/shaver). 2004-05-14 00:10:29 +00:00
jst%mozilla.jstenback.com d04e544a80 Fixing more of bug 243484. Eliminate extra string copy when XPConnect converts from UTF-8 strings to JS strings. r+sr=darin@meer.net 2004-05-13 21:54:11 +00:00
timeless%mozdev.org f4eb07a19f Fixing code for CAUTIOUS_SCRIPTHOOK (not part of the build), broken by changes for
Bug 208030 JS errors report incorrect line numbers in the source code
2004-05-13 06:04:09 +00:00
igor%mir2.org de3ba2521a Use code similar to optimizer when generating call sequences to avoid tree mutations during code generation 2004-05-12 22:39:40 +00:00
igor%mir2.org 3afab15941 1. Fixing bug of forgotten updates to itsWithNesting
2. Optimization for calls like name() which similar to the optimizer code
2004-05-12 20:03:23 +00:00
igor%mir2.org e175972a27 New function ScriptRuntime.notFoundError to throw error on missed properties
instead of scattered duplicated code
2004-05-12 19:59:57 +00:00
igor%mir2.org 46cd4fd5b5 Removal of Token.GETBASE, Token.GETTHIS, Token.PARENT, Token.NEWTEMP, Token.USETEMP, Node.TEMP_PROP, Node.FIXUPS_PROP, Node.USES_PROP constants which are no longer used after the last changes 2004-05-12 15:00:41 +00:00
igor%mir2.org 05139b4bdc Instead of transforming parser tree to apply special treatment for call nodes, do that only during code generation . 2004-05-12 13:02:40 +00:00
igor%mir2.org 97e2293d87 Refactoring Codegen.visitCall: preprae for the following switch to generate call without transformer modifications 2004-05-12 10:34:46 +00:00
brendan%mozilla.org 52117a0765 Make dynamically defined getters and setters enumerable (per afri posting to m.jseng; consistent with original getter=/setter= support in jsinterp.c). 2004-05-12 00:44:23 +00:00
igor%mir2.org 36506b6d8f Improve error messages for the optimizer when accessing undefined values 2004-05-11 10:06:51 +00:00
brendan%mozilla.org 5208e259ab Add compileFile function to help bz's plan for tinderbox-driven JS syntax checking. 2004-05-11 02:13:47 +00:00
brendan%mozilla.org f8dee927c3 Pick up fix for NSPR bug 162786. 2004-05-11 01:45:20 +00:00
igor%mir2.org 48a87534dc Cleanup of hasVarsInRegs 2004-05-10 16:45:02 +00:00
igor%mir2.org 68438dbe11 Apply direct call optimization only for functions that do not need activation. 2004-05-10 15:28:32 +00:00
igor%mir2.org 7b2dbf7fe4 Determine functions that require activation during parsing and not in NodeTransformer 2004-05-10 13:39:14 +00:00
igor%mir2.org 7f4cc16750 Removal of checks for unitialized lVal.getJRegister(): the registers are always initialized in prelude. 2004-05-10 05:24:29 +00:00
igor%mir2.org 7d090a52e4 Removal of JavaVariable interface in favor of simple method in ClassFileWriter. It allowed to shrink OptLocalVariable and made other code simpler. 2004-05-09 22:09:03 +00:00
igor%mir2.org a6a43f6660 Clenup the usage of getJRegister/assignJRegister 2004-05-09 21:07:08 +00:00
igor%mir2.org f68eda4ed6 Move all logic regarding establishing type of variable into Block.java 2004-05-09 21:06:20 +00:00
igor%mir2.org 834c918c5b Removal of no longer used LASTUSE property and corresponding optimizer code 2004-05-09 12:38:45 +00:00
igor%mir2.org fcf8a09a72 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. 2004-05-09 10:14:01 +00:00
igor%mir2.org c8f630ac9c OptLocalVariable cleanup: under optimization GETVAR/SETVAR nodes always has a reference to them 2004-05-08 22:24:02 +00:00
igor%mir2.org 1969c19d54 Remove markLiveAcrossCall functionality that was never used for any optimizations 2004-05-08 21:05:00 +00:00
igor%mir2.org 2bf943fd1f Merge addToken/addString into single addString 2004-05-08 19:21:37 +00:00
igor%mir2.org c8c34c5baa Optimization of ++/-- and merge separated postIncrement/postDecrement to single postIncrDecr to remove too much code duplication 2004-05-07 15:05:11 +00:00
igor%mir2.org 73e79d7653 FatBlock is moved to Block as a private class 2004-05-07 15:03:39 +00:00
igor%mir2.org 605d32ffea Added addPush(boolean) 2004-05-07 15:00:17 +00:00
brendan%mozilla.org 0b7cee1356 Add JS_DefineUCFunction (rs=jst). 2004-05-07 03:21:30 +00:00
timeless%mozdev.org 79be43deb8 Bug 224650 nsXPCOM.h included twice
patch by d_king@xtra.co.nz r=edburns sr=brendan
2004-04-30 16:46:33 +00:00
brendan%mozilla.org c2a43dd064 Reload onbranch after possible native function calls (241050, r=shaver). 2004-04-30 02:43:50 +00:00
brendan%mozilla.org 9d3150f208 Typo in comment fixed. 2004-04-29 21:54:20 +00:00
BradleyJunk%cinci.rr.com 59a5ac1c48 Bug 223536 - Exposing XPConnect jsval <-> nsIVariant to conversion functionality. r=dbradley, sr=jst 2004-04-24 10:26:27 +00:00
cbiesinger%web.de 40806135bf bug 241329, allow compiling spidermonkey with openwatcom
r=brendan
2004-04-23 19:07:40 +00:00
brendan%mozilla.org 4f32d680a7 Forgot to serialize/deserialize JSRegExp.cloneIndex, and rev XUL FastLoad file version (240404, r+sr=shaver). 2004-04-22 16:00:48 +00:00
igor%mir2.org bb8d328be9 Extend optimization ==, !=, ===, !== against null to check null presence on any side of the test. 2004-04-21 12:00:27 +00:00
brendan%mozilla.org 53be0fb09c Sigh, go back to requiring a native object for the global object in FindConstructor, to unbreak lazy class init. 2004-04-20 18:02:49 +00:00
igor%mir2.org 388341c850 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. 2004-04-20 13:00:08 +00:00
brendan%mozilla.org ecaa3142d5 Fix intN vs. jsword leftover confusion in context-thread API. 2004-04-20 02:21:27 +00:00
BradleyJunk%cinci.rr.com 12f367678e Ok, I'm going to try this again, patch confused me. This should now be properly backed out 2004-04-19 20:23:29 +00:00
BradleyJunk%cinci.rr.com 41d61aee14 Bah, I checked in the wrong patch, sorry, backing out 2004-04-19 20:11:36 +00:00
BradleyJunk%cinci.rr.com a093a5222d Bug 223536 - Exposing XPConnect jsval <-> nsIVariant to conversion functionality
r=dbradley, sr=jst
2004-04-19 20:05:39 +00:00
gerv%gerv.net c40f4f93a2 Bug 236613: change to MPL/LGPL/GPL tri-license. 2004-04-18 22:01:16 +00:00
igor%mir2.org b4bb88c434 Reuse code to generate optimized if jumps for boolean operations that return Boolean instance 2004-04-18 20:29:41 +00:00
igor%mir2.org 86dc2db1c0 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
2004-04-18 16:29:12 +00:00
igor%mir2.org fafc53aace Layout cosmetics 2004-04-18 16:26:32 +00:00
igor%mir2.org 09018e0533 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.
2004-04-18 14:53:34 +00:00
igor%mir2.org 719bb92768 Trust JVM to implement "<=" and "<" according to JVM specs and replace code like
d1 == d1 && d2 == d2 && d1 < d2
with simple
    d1 < d2
2004-04-18 14:52:22 +00:00