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

4320 Коммитов

Автор SHA1 Сообщение Дата
igor%mir2.org e7988e8b2e Check in generateFunctionICode for own source to pass to debugger to cover new Function(...) case where top level function is not part of surrounding script 2002-05-15 21:27:46 +00:00
brendan%mozilla.org c2c188c8cc Checking in khanson@netscape.com's patch fixing GMT offset day-overflow (65671, r=mccabe, sr=jband). 2002-05-15 19:44:34 +00:00
dougt%netscape.com c683a217ab Fixes mozilla/strings requiring unfrozen nsCRT class. patch by scc, r=dougt, sr=jag, b=136756 2002-05-15 18:55:21 +00:00
seawood%netscape.com 4293400e69 Because js uses static data structures and is linked into other shared libraries, js must be built as a shared library.
Thanks to Colin Blake <colin@theblakes.com> for the original patch.
Bug #127442 r=bryner
2002-05-15 01:37:07 +00:00
rginda%netscape.com 2b14f2a566 add PERL_BIN and PERL_ARGS 2002-05-14 01:44:01 +00:00
rginda%netscape.com 28d3a51f59 initial add of js api documentation source 2002-05-14 01:39:03 +00:00
igor%mir2.org 4bb3f8ada0 Elimination of FileWindow.breakpoints and Main.breakpointsMap as reference to SourceInfo provides all necessary information 2002-05-11 18:28:44 +00:00
igor%mir2.org ba0661c493 Removing itsFirstLine and itsEndLine from InterpreterData and replacing in DebuggableScript getFirstLine, getEndLine and getIntructionLines by getLineNumbers as Debugger imlementation can get all the necessary information from single call to getLineNumbers 2002-05-11 16:15:50 +00:00
igor%mir2.org 8cb98c5dfa Implementing DebuggableScript.getInstructionLines via scanning icode array for line number icode tokens thus removing the need to call Context.setGeneratingDebug(true) to get brekable lines in the script. 2002-05-10 21:33:51 +00:00
igor%mir2.org 6d860f39e3 From email about moving breakpoint support away from Rhino core:
I attach the patch to move away setting/quering for breakpoints from the Rhino core to application as a debugger implementation can check if a particular line has a breakpoint or not. The changes to omj/tools/debugger takes more then few lines I initially thought but they are mostly caused by refactoring to implement different view to set/query breakpoints.

The patch replaces getLineNumbers, placeBreakpoint and removeBreakpoint in DebuggableScript by getFirstLine, getEndLine and getInstructionLines where the last function fills a boolean array to indicate which script lines can ever occur in DebugFrame.onLineChange. These are read-only functions so InterpeterData are never mdofied by the debugger.

omj/tools/debugger/Main uses this information to check whether it is possible to place breakpoint at a particular line, and if possible, it sets to true entry at the boolean breakpoint array. In this way testing for break in onLineChange is simple and fast as it just needs to check if breakpoint array holds true at the given line number position.
2002-05-10 16:17:33 +00:00
darin%netscape.com 6fd5862e6e fixes bug 142870 "nsIFile should use UCS-2 instead of UTF-8"
r=dougt sr=alecf
2002-05-07 23:07:19 +00:00
brendan%mozilla.org 3f518e626f Avoid toSource bloat in e.stack; fix related crash due to unrooted errObject in js_ErrorToException (139316, r=rginda, sr=shaver). 2002-05-07 08:34:51 +00:00
brendan%mozilla.org 4d9e715520 Fix old bogus static dollarStr thread-safety bug (142651, r=jband, sr=shaver). 2002-05-07 08:29:39 +00:00
bryner%netscape.com 7f766daf07 Adding the functions JS_LockGCThingRT and JS_UnlockGCThingRT, which are variants that only require a JSRuntime, not a JSContext. Converted some internal callers to use the new interface. Bug 141356, patch from shaver, r=bryner, sr=brendan. 2002-05-04 05:28:09 +00:00
pschwartau%netscape.com 8edbfc6e50 Initial add. Regression test for bug 140974. 2002-05-04 01:13:40 +00:00
igor%mir2.org aa545a86e2 Replace when possible usage of API available only since JDK 1.2 by their JDK 1.1 analogous or by classes available in the Rhino core to make port to JDK 1.1 easier. 2002-05-03 19:42:36 +00:00
darin%netscape.com 9508d71adc fixes build bustage with --enable-xpctools
patch=dmose r/sr=darin
2002-05-03 19:04:14 +00:00
igor%mir2.org 122f8247c5 Store only single instance of any string in InterpreterData.itsStringTable and remove itsStringTableIndex and itsDoubleTableIndex from InterpreterData as they are used only during code generation 2002-05-02 21:19:43 +00:00
igor%mir2.org 43c6776e19 Allow to put null keys to ObjToIntMap and optimize Iterator not to search through key array tail after processing the last key. 2002-05-02 21:15:33 +00:00
igor%mir2.org 462217172b In remove set int key value to 0 so a new key with the same slot would get initial 0 after put(int, Object) 2002-05-02 21:11:05 +00:00
brendan%mozilla.org bf8e80d0d1 Fix js_SetProtoOrParent to handle non-native and native-but-incompatible-class-change proto-setting scenarios (140164, r=khanson, sr=jband). 2002-05-02 20:59:35 +00:00
nboyd%atg.com 91b5becea4 Fix broken link 2002-05-01 19:21:51 +00:00
nboyd%atg.com 2fcb287555 Now pass 104077. 2002-05-01 16:47:25 +00:00
igor%mir2.org 416882ec3a Allow in UintMap for any key to hold int and object values simultaneously, as the old code could only detect that the key is allowed to hold an object value only if there are no other keys with int values. In the new version, if the key is present, it always has both int and object values, but they default to 0 or int if not specified in put. It is effectively the old behavior when the map contained at least one int key, but at least it is documented. 2002-05-01 14:10:41 +00:00
brendan%mozilla.org 30322b2b64 Don't 'constant-fold' if(false)var foo=42 into nothing (140974, r=khanson, sr=shaver). 2002-04-30 23:28:34 +00:00
igor%mir2.org b4d17bfe98 LabelTable cleanup:
1. Targeting of labels with 0x80000000 biscuits is moved from LabelTable to ClassFileWriter as this is classfile specific and is not necessary in Interpreter.
2. LabelTable allows for pc > Short.MAX_VALUE as this restriction is classfile specific. The only requirement is for jump offsets to stay within short range.
3. LabelTable is made private member of Interpreter and ClassFileWriter instead of being classes' superclass to avoid API leakage that forced optimizer.Codegen to declare few utility methods public as they got the same signature as LabelTable methods visible throw Interpreter inheritance.
2002-04-29 19:21:57 +00:00
igor%mir2.org ff45d81768 I replaced java.util.Enumeration type for result and arguments of ScriptRuntime.initEnum/ScriptRuntime.nextEnum by Object to allow for greater flexibility in for (...in...) implementation. 2002-04-29 17:31:11 +00:00
nboyd%atg.com 435f28cf26 Remove skip for bug 120194 2002-04-29 00:58:40 +00:00
nboyd%atg.com 4509cada43 Patch from Igor to fix 120194 2002-04-29 00:56:30 +00:00
igor%mir2.org b41bc47f81 Do not call acquireLabel/addLabelFixup/markLabel if label is not stored in parse tree and can be resolved immediately after node subtree generation (see new addForwardsGoto and resolveForwardGoto methods) 2002-04-28 15:17:24 +00:00
igor%mir2.org 90d91c1e22 Do not allocate Label object and instead store label's PC and fixups in itsFixupTable and itsFixupTable arrays 2002-04-27 12:27:14 +00:00
igor%mir2.org 59fedca6b1 Hiding details of omj.LabelTable implementation behind new getLabelPC, addLabelFixup, fixLabelGotos and clearLabels methods and making all its fields private. 2002-04-27 09:13:28 +00:00
darin%netscape.com e554d83626 fixes bug 129279 "nsIFile unicode/utf8/ascii task"
r=dougt sr=alecf
2002-04-27 05:33:09 +00:00
igor%mir2.org 2c519e3fb5 Refactoring interpreter initialization to follow code more easily 2002-04-26 23:18:08 +00:00
igor%mir2.org d8b73f2048 Tab removal 2002-04-26 23:14:50 +00:00
rginda%netscape.com 6d9b0eac20 - venkman only -
bug 139883, "ErrorHookProc can be tricked into thinking it never finished running", r=peterv
fixes bad early return in jsds_ErrorHookProc
test for correct max params (12, not 8) in CreatePPLineMap
use nsnull instead of 0 for null pointer return value
2002-04-26 20:57:35 +00:00
igor%mir2.org e497d2b898 I changed VariableTable to store arbitrary Object as variable data to avoid allocation of LocalVariable in the interpreter mode as in this case only the variable name is used and it can be stored directly. It allows to remove omj.LocalVariable and omj.optimizer.OptVariableTable for the cost of having omc.JavaVariable which omj.optimizer.OptLocalVariable implement to pass to omc.ClassFileWriter debug information about the variable. 2002-04-26 08:01:29 +00:00
jband%netscape.com 8c580862e8 fix bug 139243. Remove reference count based rooting of JS objects of wrapped natives and replace it with GC-time marking. This is a pretty good DOM performance win. r=dbradley sr=jst. 2002-04-26 06:08:35 +00:00
brendan%mozilla.org d4e55c2951 Purge the deflated string cache entry, if any, before finalizing external strings (140070, r=jband, sr=shaver). 2002-04-25 22:55:03 +00:00
khanson%netscape.com dd8c0773df Reverse of Patch 66477 for bug #121744. Bug #131348, r=shaver, sr=brendan. 2002-04-25 20:33:33 +00:00
igor%mir2.org 4de1175e71 Links update 2002-04-25 06:46:47 +00:00
khanson%netscape.com d817cc069a fixes memory leak in jsdtoa.c bug 138666, sr=brendan, r=khanson 2002-04-24 23:36:48 +00:00
igor%mir2.org 0877a53dd0 I replaced Vector by ObjArray when it was used from the single thread and similarly replaced Hashatble by ObjToIntMap when it was used from the single thread to mark keys presence ignoring values. It avoids unnecessary synchronization and save memory. To simplify the replacement I added to ObjArray and ObjToIntMap few utility methods. 2002-04-24 21:37:36 +00:00
igor%mir2.org 45b366e32d Initial version 2002-04-24 07:44:52 +00:00
igor%mir2.org 10cadaaf81 Serialization change: implement only Serializable with custom readObject/writeObject instead of Externalizable not to invent own versioning support. 2002-04-23 22:39:25 +00:00
igor%mir2.org fe448dc961 Updating the debugger to reflect changes in Rhino debug API. 2002-04-22 20:47:51 +00:00
igor%mir2.org 1d93746ffc Debugger interface changes:
1. Replacing omj.debug.Debugger.enterFrame() by omj.debug.Debugger.getFrame() and omj.debug.DebugFrame.onEnter() to allow to return null from omj.debug.Debugger.getFrame to enable full optimization with debugger set if it is not interested in monitoring a particular frame

2. Changing type for the source argument in omj.debug.Debugger.handleCompilationDone from StringBuffer to String as Debugger instances should not be able to modify source even by chance.
2002-04-22 20:46:43 +00:00
nboyd%atg.com d3bdf13043 Implement support for new Package(<classLoader>) 2002-04-21 01:50:43 +00:00
igor%mir2.org da6a3546f0 Removing one more time creating of bogus activation for InterpretedScript added with the previous change 2002-04-19 20:58:03 +00:00
igor%mir2.org 394848a46d Making interpreter bytecode independent from Context.isGeneratingDebug so debugger can handle scripts compiled without Context.isGeneratingDebug: if itsNeedsActivation is false with debugger present, Interpreter.interpret creates activation scope and check in variable queries/assignments if they should be made against activation object and not stack[VAR_SHIFT+...] array. 2002-04-19 07:19:07 +00:00