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

307 Коммитов

Автор SHA1 Сообщение Дата
beard%netscape.com 939e21a6a8 Changed JavaPackage_resolve, to remove a memory leak. 1998-09-08 19:08:09 +00:00
brendan%netscape.com 5de3307f74 Don't emit two SRC_HIDDENs in a row. 1998-09-08 18:26:37 +00:00
norris%netscape.com c796c40dc7 Fix bug: space was not allocated for terminal '\0' in string.
Spell "JavaScript" correctly.
1998-09-08 18:18:52 +00:00
brendan%netscape.com 40006025df Oops! How did that ever work on my Win32 build? 1998-09-08 05:49:12 +00:00
brendan%netscape.com f8bbc56e36 js.c jsemit.c jsemit.h jsgc.c jsinterp.c jsopcode.c jsopcode.def
- Switch improvements:
  - JSOP_CONDSWITCH is a 1 byte nop, not variable length with the same kind
    of immediate operand as JSOP_LOOKUPSWITCH (which is useless except for
    decompilation).  New scheme uses SRC_COMMA notes on each JSOP_CASE opcode,
    usually 2 bytes per note, and a typically-1-byte 2nd offset on SRC_SWITCH:
      1 + 2 * ncases
    vs. the previous JSOP_LOOKUPSWITCH immediate, which consumed:
      4 * ncases
    bytes after the switch opcode just for decompilation.
  - SRC_SWITCH has two offsets, first to end of switch as before, the second
    to first case if JSOP_CONDSWITCH, for decompilation.
  - Optimize switches with all-constant cases using JSOP_TABLESWITH, or if
    that can't be used, JSOP_LOOKUPSWITCH, before falling back on ECMAv2's
    JSOP_CONDSWITCH.
  - Use cx->gcDisabled when evaluating case exprs at compile time for old,
    pre-ECMAv2 switches, to prevent branch-callback-based GC invocations
    from ripping apart the unrooted temporary script for each case expr.
  - Fixed up stale SRC_SWITCH comments in jsemit.h.

jsemit.c jsemit.h
  - TREE_CONTEXT_INIT to match ATOM_LIST_INIT, not English word order.
  - Reorganized JSCodeGenerator to sort of match argument order to
    js_InitCodeGenerator.
  - Got rid of confusing CG_RESET* macros and used memset(cg, 0, sizeof *cg)
    and non-zero-default init in js_InitCodeGenerator.  js_ResetCodeGenerator
    just releases the code and temp arena pools and leaves the cg in a state
    where it must be re-initialized (as before, but more obvious).
  - In the same spirit, don't do partial "resets" or src and trynotes in their
    js_FinishTaking*Notes functions -- those are friends of jsscript.c and are
    not general, idempotent functions.

jsapi.c jsapi.h jsarray.c jsatom.c jsatom.h jscntxt.c jsemit.c jsmsg.def
jsnum.c jsobj.c jsopcode.c jsregexp.c jsscan.c jsstr.c jsxdrapi.
  - Use PR_snprintf rather than sprintf always, so we don't have to worry
    about systems with 64-bit longs that overflow 12-byte buffers and open
    Morris-Worm-type security holes.
  - Trim extra spaces, fix hanging indentation, and similar anal retention.
  - Renamed JSMSG_BAD_PROTO_SORT to JSMSG_BAD_SORT_ARG cuz that's what it
    is complaining about.
  - SRC_CATCHGUARD still lived in comments, but it's SRC_CATCH in code.

jscntxt.c jscntxt.h jsinterp.c
  - Packed nearby JSPackedBools and added a new one: gcDisabled, for use by
    jsemit.c's pre-ECMAv2 switch case expr eval.
  - Rip out old js_InterpreterHooks stuff from original liveconnect (moja).
  - Remove javaData and savedErrors from JSContext.  Leaving it to fur or
    shaver to remove javaData from jsscript.h.
1998-09-08 05:39:51 +00:00
brendan%netscape.com 46aa885dda Remove '(balance' comments, fix hanging indents, other nits. 1998-09-06 19:23:06 +00:00
brendan%netscape.com 609066b387 Fix switch comments, it's not a ternary node any longer. 1998-09-06 19:19:04 +00:00
brendan%netscape.com ecee262fc9 - Use consistent spelling in the API: "Callback" not "CallBack" -- it's a one
word neologism, not two words.
- Use consistent neighboring terseness ("error" rather than "err" in intercaps
  identifiers).
- Don't leave pointers in JSErrorReport to freed memory if bailing on OOM in
  jscntxt.c:js_ExpandErrorArguments.
- Hanging indentation, code fusion via continue, and other misc. cleanups.
1998-09-06 08:07:35 +00:00
bjorn%netscape.com 1bb3e5b0bf Added a missing read in ArenaAllocate. 1998-09-05 00:36:14 +00:00
bjorn%netscape.com 2d12c330d1 Locks with almost no global locking. This will relieve contention. 1998-09-05 00:34:03 +00:00
shaver%netscape.com 6a77edc230 fix ifdef breakage 1998-09-04 18:48:16 +00:00
norris%netscape.com f6a67c927e Previous checkin was mistaken; back it out. 1998-09-04 00:47:22 +00:00
norris%netscape.com dc23c0e4d4 Add support for ECMA switch statements. These are like LISP cond in that they
evaluate the case label each time.
Still to do is to optimize so that TABLESWITCH and LOOKUPSWITCH are created
when possible.
1998-09-04 00:45:21 +00:00
rogerl%netscape.com c75452266b Removed redundant #undef 1998-09-03 22:50:55 +00:00
cyeh%netscape.com 1c64db1d73 remove JSJDebug.o and JSJ.o files from all targets. also turn modification date caching off to fix dependencies not working 1998-09-03 20:53:27 +00:00
rogerl%netscape.com 2fef67b510 New errorNumber handling.
Fixed bug #317398, for loop without condition wasn't decompiling the body
correctly since the first statement in that body was getting eaten by
mistake when trying to consume the condition expression.
1998-09-03 20:44:55 +00:00
rogerl%netscape.com fd393cb2aa New errorNumber handling 1998-09-03 20:35:41 +00:00
rogerl%netscape.com f4c1e2bc8a New break-out of error message text from core engine 1998-09-03 20:33:32 +00:00
rogerl%netscape.com dd93d6bab1 New errorNumber handling 1998-09-03 20:29:37 +00:00
fur%netscape.com cf089a8339 Backing out check-in of these files that are causing pain with Mozilla builds,
at least until we can properly control search paths on the Mac.
1998-09-03 07:28:30 +00:00
cyeh%netscape.com aa846c401f re-arranged search path so that :dist is searched before the local project folder. 1998-09-03 05:01:40 +00:00
fur%netscape.com 0a34ab0e7d Added Mac-specific defines. 1998-09-03 03:52:13 +00:00
fur%netscape.com 6c8df0e23c *** empty log message *** 1998-09-03 03:51:38 +00:00
fur%netscape.com 7751496487 Ignore generated files 1998-09-03 03:47:13 +00:00
fur%netscape.com 727e88915d Checked in wrong version of project by mistake. This is the right one. 1998-09-03 03:46:25 +00:00
fur%netscape.com 97885207f0 Added comments and declaration of PR_Abort(). 1998-09-03 03:40:50 +00:00
fur%netscape.com b44ae2a355 Project files to build standalone JS using mini-NSPR 1998-09-02 22:38:20 +00:00
fur%netscape.com 2b48c8cb1d Minimal NSPR subset required to build JS engine 1998-09-02 22:37:14 +00:00
fur%netscape.com 9f23931161 ignore generated files 1998-09-02 22:36:05 +00:00
mccabe%netscape.com ab9b3e68d3 Further exception work - added 'message' to the js_ErrorToException
call, and experimented with copying the original JSErrorReport into
private data.  Much of this to support a toString method for exception
objects.

It's not polished, but I wanted to get toString available quickly.
1998-09-02 20:01:34 +00:00
mccabe%netscape.com 6d679d576b Another platform!
Thanks go to Marc Fraioli <fraioli@dg-rtp.dg.com> for
the initial port of the js/ref standalone javascript
engine to DG/UX.
1998-09-02 08:19:31 +00:00
mccabe%netscape.com a559236681 Fixes for NetBSD and OpenBSD.
Thanks Marco S Hyman <marc@snafu.org>.
1998-09-02 07:56:50 +00:00
bjorn%netscape.com 600c519f00 Added compare-and-swap patches for AIX (_check_lock) and Solaris (stbar). 1998-09-01 20:21:11 +00:00
shaver%netscape.com 01f3edae31 if throwing, cx->exception is a valid root 1998-09-01 12:38:59 +00:00
mccabe%netscape.com ea764e6ca8 restore npl. 1998-09-01 01:16:45 +00:00
mccabe%netscape.com b1360a1d96 More runtime errors now bound to exceptions.
Most of these will require a second look, but I wanted to get all of
them (that need exceptions) throwing something interesting.
1998-09-01 01:15:16 +00:00
beard%netscape.com 5a078003d0 The equals method isn't native in the Mozilla tree. 1998-08-31 23:39:51 +00:00
beard%netscape.com 0ef35aea1f Changed JavaPackage_resolve so that it doesn't return immediately if quiet_resolve_failure is true. Otherwise, pre_define_java_packages fails. 1998-08-31 23:39:04 +00:00
warren%netscape.com df46919654 Added jsj_JavaMember.c (Changes from SpiderMonkey131_BRANCH of js/ref/liveconnect.) 1998-08-31 20:17:31 +00:00
beard%netscape.com 31ebc87cdd Changes from SpiderMonkey131_BRANCH of ns/ref/liveconnect. 1998-08-31 20:15:32 +00:00
beard%netscape.com df72b1ae5e Added jsj_JavaMember.c (Changes from SpiderMonkey131_BRANCH of ns/ref/liveconnect.) 1998-08-31 20:12:42 +00:00
mccabe%netscape.com 6e240ffb5b Further runtime error work... expose many new errors as catchable
exceptions.  Mostly syntax errors, so far.  Fixed missing #if
JS_HAS_ERROR_EXCEPTIONS
1998-08-31 09:49:43 +00:00
mccabe%netscape.com 38dfa16122 Added a call to js_ErrorToException to
the compile-error reporting mechanism,
providing a way to associate exceptions
(very likely SyntaxError exceptions)
with compile-time errors.

(Hopefully this is temporary, as I'd
prefer one central place in the
error-reporting process to put the
js_ErrorToException call.)

Also changed the error reporter in js.c
to only ignore error reports marked with
the JSREPORT_EXCEPTION advisory flag when
the error occurs during javascript execution.

If it's at the toplevel compilation
level, then the error is still reported
(and the exception discarded.)

The api is feeling slightly dirtier, but
it still seems like the best
compromise...
1998-08-31 08:17:40 +00:00
mccabe%netscape.com a6a41f773e Added jsmsg.def to the list of files used by the
'make tar' target.
1998-08-31 07:33:13 +00:00
mccabe%netscape.com c295318e74 Made the enum JSErrNum into a typedef
enum JSErrNum, and changed a uintN
errorNumber declaration to JSErrNum.

It'd be nice to change the uintN
errorNumber field in JSErrorReport to
JSErrNum, but it's not clear that
JSErrNum is or should be exposed in the
API.  Any C esthetes want to offer their
opinions?

It made my debugger slightly happier.
1998-08-31 07:07:26 +00:00
fur%netscape.com ac62391b29 Shane's makefiles 1998-08-29 03:04:11 +00:00
fur%netscape.com 9e514631ea New file to deal with case of Java field and method with same name. 1998-08-29 03:03:51 +00:00
fur%netscape.com 94e86a6576 Error messages, in separate file for internationalization purposes. 1998-08-29 03:03:05 +00:00
fur%netscape.com b2058b3efa Transferred work from private ns tree back into mozilla. 1998-08-29 03:00:50 +00:00
fur%netscape.com cf0182296e Somehow, montulli resurrected this dead file. Killing it again. 1998-08-29 02:47:25 +00:00