Commit Graph

282 Commits

Author SHA1 Message Date
Nicholas Nethercote
72e08f9539 Bug 517910 - NJ: add more alias-set annotations to LIR so as to improve CSEing of loads (TM-specific part). r=gal,dvander. 2010-03-23 16:07:19 -07:00
Chris Leary
8e0decc494 Bug 553423 - JS scanner namespacing cleanup (r=lw) 2010-03-21 16:07:48 -07:00
Luke Wagner
1e33f57b39 Backed out changeset 6403442ffa1d (failure on windows, winnt.h defines TokenType!) 2010-03-18 22:26:47 -07:00
Chris Leary
2400e09e63 Bug 553423 - JS scanner namespacing cleanup (r=lw) 2010-03-18 22:15:51 -07:00
Nicholas Nethercote
13e08e42b7 Bug 531687 - Duplicate node names in TMFLAGS=aftersf printout (TM-specific part). r=jseward. 2010-03-18 10:53:26 +11:00
Chris Leary
431c00210e Bug 549658: clean up JS scanner and inline more things, r=brendan,jimb 2010-03-15 16:42:06 -07:00
Jeff Walden
c67d68c20e Further bustage fixing 2010-03-09 17:44:16 -08:00
Jeff Walden
106fbd8085 Bug 548702 - Temporary value-rooting scheme should be C++- and RAII-based, not macro-based. r=igor
--HG--
extra : rebase_source : c7bb34662dbd70df49d40880227139537c60356e
2010-01-11 11:52:21 -06:00
Igor Bukanov
9d1cbd468c bug 549010 - folowup to replace PROTO access macros with the inlne function 2010-03-04 23:52:52 -08:00
Mike Moening
0373a2437d bug 549010 - fixing and silencing MSVC warnings. r=brendan,igor 2010-03-04 20:44:09 -08:00
Robert Sayre
5cf27a725e Merge tracemonkey to mozilla-central. 2010-03-26 15:53:14 -07:00
Nicholas Nethercote
c8a754a27d Bug 545274 - nanojit: start adding alias info to loads/stores/calls (TM-specific part). r=jseward. 2010-03-02 13:47:17 +11:00
Igor Bukanov
debaa592f7 bug 545529 - caching Class.prototype lookups. r=brendan 2010-02-19 20:44:23 +03:00
Jeff Walden
7e68c64269 Bug 543097 - Precompute the prototype when evaluating function expressions and regular expression literals on trace, rather than (slowly) looking it up every time. r=jorendorff
--HG--
extra : rebase_source : d023ded17937248bdfb23705e7477918b111746f
2010-02-01 17:20:37 -08:00
Jeff Walden
906c23f6c5 Bug 540985 - Regression in Peacekeeper string benchmarks due to regexp literals no longer tracing. A prototype of this patch was by bz. r=igor 2010-01-26 18:41:30 -08:00
Nicholas Nethercote
247420b724 Bug 540368 - nanojit: split LIR_qlo, LIR_live and LIR_ret into two opcodes each to faciliate LIR type-checking (TM-specific part). r=dvander. 2010-01-28 09:43:36 +11:00
Nicholas Nethercote
6478f53e9b Bug 541491 - ARM_ARCH, ARM_VFP, and ARM_THUMB2 should be runtime options everywhere (TM-specific part). code=stejohns, r=nnethercote. 2010-01-28 09:41:07 +11:00
Nicholas Nethercote
8498d179bc Bug 541886 - nanojit: move compile() into class Assembler (TM-specific part). r=dvander. 2010-01-26 14:06:13 +11:00
Luke Wagner
2645ecd2da Bug 541452 - put jstracer.cpp in namespace js (r=jorendorff) 2010-01-22 14:49:18 -08:00
Nicholas Nethercote
f4bc73f777 Bustage fix for bug 463137: use insBranch() instead of ins2() to insert LIR_j. r=me. 2010-01-22 16:20:42 +11:00
Nicholas Nethercote
31c3c6d825 Bug 463137 - TM/nanojit: type-check LIR (TM-specific part). r=jseward. 2010-01-22 13:41:24 +11:00
Nicholas Nethercote
9ecc414758 Bug 538538 - lirasm: don't run the optimizers, except when using --random (TM-specific part). r=graydon. 2010-01-18 09:47:31 +11:00
Ben Turner
0bdadbfbee Bug 550275 - 'Implement the HTML5 structured clone algorithm'. r=jst+mrbkap, sr=jst. 2010-03-17 12:55:45 -07:00
Andreas Gal
2943a7a949 Bug 474500 - TM: Need an API to flush and (optionally?) deallocate the code cache per thread. 2009-12-28 09:46:50 -08:00
David Mandelin
a4022f7c34 Fix style nits from bug 440926, no_r=me 2009-12-23 18:56:50 -08:00
Steve Harper
a4bcebed1c Use inverse upcase instead of downcase per ECMA-262 for case-insensitive matching, r=dmandelin 2009-12-23 18:48:53 -08:00
Benjamin Smedberg
f92278ab68 Backed out changeset 94561cb0f0bd, bug 474500 because of static-analysis bustage. 2009-12-21 09:55:45 -05:00
gal@uci.edu
d8d110c024 Bug 474500 - TM: Need an API to flush and (optionally?) deallocate the code cache per thread. r=dvander 2009-12-18 21:34:20 -05:00
Nicholas Nethercote
03809b83a9 Bug 528857 - nanojit: mismanagement of name lifetimes with TMFLAGS=assembly? r=graydon. 2009-12-07 21:06:41 -08:00
Luke Wagner
3dcb8555c2 Bug 530366 - don't use std::sort in jsregexp (r=dmandelin) 2009-11-30 09:03:43 -08:00
Luke Wagner
f32b364347 Bug 530490 - keep starting position live across quantifier loop (r=dmandelin) 2009-11-24 11:22:20 -08:00
Jim Blandy
ae0ff5874f Bug 514585: Remove macro wrappers for js_NewPrinter and JS_InitArenaPool. r=igor
These macros were intended to help avoid passing unused parameters
when JS_ARENAMETER is not defined, but they're not worth the trouble.
The unused parameter doesn't elicit warnings, and the performance
impact of passing the unneeded argument is negligible.

This also removes support for JS_ARENA_CONST_ALIGN_MASK, which is not
used.
2009-11-18 13:33:53 -08:00
David Anderson
db7ed2cb48 Reorganized the fragment class hierarchy (bug 524620, r=gal). 2009-11-05 15:04:54 -08:00
Graydon Hoare
545839b15a Bug 522591 - Followup fix for opt builds, r=burningtree. 2009-10-23 15:32:19 -07:00
Luke Wagner
f723becfb6 Remove execute permissions on source files 2009-10-22 10:41:19 -07:00
Luke Wagner
6f3a055d7e add comment/assertion explaining why RegExp compiler is OK with the StackFilter
--HG--
extra : rebase_source : ba12e5ddf634b1cfaa4e515359c9457f2d406376
2009-09-28 14:26:18 -07:00
Graydon Hoare
56a6b95359 Bug 518925 - LirWriter leak with regexp match in debug builds, r=dvander. 2009-09-25 15:45:45 -07:00
Graydon Hoare
ee59e42dc3 Bug 518730 - TM: change the allocators to calloc, r=gal. 2009-09-25 15:16:10 -07:00
Graydon Hoare
b5097e03aa Bug 497009 - Deallocate LIR after recording, r=gal.
--HG--
extra : rebase_source : 5fc9d76620f83d3bbf6ba7a4656c296654bb6323
2009-09-23 18:46:34 -07:00
Igor Bukanov
27c2d57074 bug 517749 - removal of weakRoots.newborn = null. r=mrbkap 2009-09-25 16:30:11 +04:00
Nicholas Nethercote
9598899fc8 Bug 518477 - NJ merge: LIR.{cpp,h} changes from TR. r=graydon. 2009-09-24 10:42:25 +10:00
Graydon Hoare
232e0c7e37 Bug 518427 - TM: fix valgrind error in jsregexp.cpp, r=dmandelin. 2009-09-23 16:56:25 -07:00
Graydon Hoare
f0b694edca Bug 517083 - Fix performance regression, r=dvander.
--HG--
extra : rebase_source : 57e132434da8c652c41ffa889aa2002eeeb4698c
2009-09-23 15:12:58 -07:00
David Mandelin
99fb23d064 Bug 511695: Fix JS warnings in MSVC8, r=brendan 2009-09-23 11:16:30 -07:00
Luke Wagner
c1a69497a0 Bug 511777 - avoid regexp engine for flat strings (r=waldo)
--HG--
extra : rebase_source : bf121e6918f2174378babc72b3dbe1b2f4ffdbec
2009-09-23 08:54:50 -07:00
Graydon Hoare
a18f57ecfd Bug 495734 - NJ: don't store non-LIR data in LIR buffers, r=gal.
--HG--
extra : rebase_source : 4a73fd251f3077fe3623ef1341a8aa3729a4e8bf
2009-09-22 16:06:52 -07:00
Graydon Hoare
ccc6ad4904 Bug 517083 - TM: introduce a temp allocator for allocations during recording and compilation, r=gal. 2009-09-22 12:36:20 -07:00
Luke Wagner
88b39718d0 Backed out changeset 20ee84099e38 2009-09-22 10:19:59 -07:00
Luke Wagner
ca5191b5f2 Bug 511777 - avoid regexp engine for flat strings
--HG--
extra : rebase_source : 81afb9a486643f4d88dff9bba6ec2cccd07b07f0
2009-09-16 18:23:27 -07:00
x0
8180b3b7c3 Bug 429243 - /[\0]/.exec('\0') fails. r=crowder 2009-09-17 15:48:00 -07:00
Graydon Hoare
963fd74e53 Bug 516620 - Kill off residue of MMgc, r=gal.
--HG--
extra : rebase_source : 1bd814f499014507fb60ad554687b12b9fe09a3e
2009-09-10 16:29:36 -07:00
Blake Kaplan
afba815d74 Merge tracemonkey to mozilla-central. 2009-09-16 16:15:59 -07:00
Julian Seward
b214130415 Bug 503424 - Add built-in support for compiled-trace and -guard profiling, r=graydon. 2009-09-15 15:05:53 -07:00
Graydon Hoare
2521578c2d Backed out changeset 35777195800a, perf regression. 2009-09-14 21:07:57 -07:00
Graydon Hoare
5d33edd2e9 Bug 516620 - Kill off residue of MMgc, r=gal. 2009-09-10 16:29:36 -07:00
Graydon Hoare
1b282006e0 Bug 516567 - Remove unused error codes from Assembler, r=gal. 2009-09-10 16:05:47 -07:00
Nicholas Nethercote
79ded264a4 Bug 516298 - TM: fix three compiler warnings. r=brendan. 2009-09-14 14:17:45 +10:00
Andreas Gal
72c92b196f Use a single code cache for the JIT and the RegExp compiler (515852, r=dmandelin). 2009-09-12 23:04:27 -07:00
Ben Newman
4d0f1f9548 Trivial indentation fixups that should have gone in with 9e16ec20e6fe. r=brendan 2009-08-28 15:34:31 -07:00
Ben Newman
e5a024bacf Bug 500644 - PAC: crash when using PAC-based manual proxy config and the attached testcase. r=mrbkap sr=brendan
--HG--
extra : rebase_source : 68dbf79d8e257f3915b817723ca51deb840e4298
2009-08-27 18:07:44 -07:00
Igor Bukanov
cd5052cc4c bug 509143 - js_CloneRegExp is missing a call to js_SetLastIndex. r=mrbkap 2009-08-22 19:59:55 +03:00
Luke Wagner
3cf8a59c01 Bug 503952 - Use JSTempVector in scanner/parser; remove JSStringBuffer (r=brendan) 2009-08-14 16:10:59 -07:00
Graydon Hoare
cad54739ba Bug 511309 - Followup patch to force flush on the CodeAllocs, r=sayrer. 2009-08-20 21:02:41 -07:00
Graydon Hoare
503c025d90 Bug 511309 - Delete class Fragmento and all uses of it, r=dvander.
--HG--
extra : rebase_source : 47047589288ac0758e0068307b5a8f393db97606
2009-08-20 17:22:47 -07:00
Graydon Hoare
ebe9c3f20b Bug 511237 - Remove primary use of Fragmento from jsregexp, r=dmandelin. 2009-08-18 15:32:54 -07:00
Robert Sayre
9cc65226f2 Backed out changeset 5817b38a8686 2009-08-19 15:30:06 -04:00
Igor Bukanov
a8f8431b74 bug 509143 - js_CloneRegExp is missing a call to js_SetLastIndex. r=mrbkap 2009-08-19 19:53:51 +03:00
Edwin Smith
fa572124fd Bug 510116 - Remove dead code paths and arguments in nanojit::compile, r=gal. 2009-08-05 15:06:00 -04:00
Edwin Smith
ad06720f03 Bug 510078 - Convert LirNameMap to HashMap<> and Allocator, r=gal.
* * *
Don't allocate CodeAlloc with GC and dont extend GCFinalizedObject (bug 506390 r=tharwood+)

* Change PageMgr::CodeAlloc from pointer to embedded instance.
* Assembler takes CodeAlloc& now, like it already does for Allocator&
* PoolObject.cpp|h now use VMCFG_NANOJIT instead of (deprecated) FEATURE_NANOJIT
  (both #defines are equivalent)

--HG--
extra : rebase_source : 90847a654d7f669a4c2ac364dd9aae7be38cae77
2009-08-04 14:18:38 -04:00
Edwin Smith
3967b233d5 Bug 510036 - Convert LabelMap to HashMap<> and Allocator, r=gal.
--HG--
extra : rebase_source : 4f1385922085fe086084c418aa22dcc4cc4c1961
2009-08-04 13:56:48 -04:00
Graydon Hoare
7bddd2c62f Bug 510015: TM: more Allocator merge fallout in jsregexp.cpp, r=gal.
--HG--
extra : rebase_source : 7607da6f49cc355af49b73528c826d5888291eb9
2009-08-12 12:26:17 -07:00
Edwin Smith
7de6b2bc04 Bug 509890 - Convert InsList to SeqBuilder<> and Allocator, r=gal.
--HG--
extra : rebase_source : 22303e739a0a6669c634595149028872aa7bd334
2009-08-04 13:11:53 -04:00
Edwin Smith
1913010941 Bug 509818 - Replace StringList with SeqBuilder<char*>, use Allocator, r=dvander. 2009-08-04 09:54:47 -04:00
David Anderson
3ae21db572 Fixed regex LIR to be x64 compliant (bug 514548, r=lw). 2009-09-09 15:53:26 -07:00
Andreas Gal
6771d193dd Introduce a register fence instruction to force all registers to be spilled (514374, r=edwsmith,rreitmai). 2009-09-03 14:43:30 -07:00
Luke Wagner
5c14309cd1 Bug 511750 - factor template utilities into js::tl (r=brendan)
--HG--
extra : rebase_source : a5a396811268e71af8e56c66dab491f3081bc20a
2009-09-01 18:46:19 -07:00
Andreas Gal
447939882c Load state after spilling or we might clobber a callee-saved register (513878, r=dvander). 2009-09-01 15:30:19 -07:00
Andreas Gal
317b5f2e3a Remove explicitSavedRegs and loop hacks from nanojit (513139, r=dvander). 2009-08-27 18:46:45 -07:00
Jason Orendorff
dafc9b5d2a Bug 508685 - Remove last parameter of defineProperty op. r=brendan. 2009-08-26 14:28:36 -07:00
Luke Wagner
7470eaa57b Bug 503952 - JSStringBuffer/JSCharBuffer with JSTempVector, part 1. r=jwalden 2009-08-07 20:09:11 -07:00
Graydon Hoare
b8154cc364 Bug 504462 - Merge tamarin's CodeAlloc into tracemonkey, r=gal. 2009-07-15 16:50:01 -07:00
Igor Bukanov
2e4416c672 bug 493457 - followup - fixing a typo in the patch. 2009-08-05 16:14:24 +02:00
Igor Bukanov
ef90f6f522 bug 493457 - uniform access to private slots. r=mrbkap, sr=jwalden 2009-08-04 23:06:55 +02:00
Graydon Hoare
2e92fcbbe3 Backed out changeset d0be9284ea67 2009-07-30 14:28:26 -07:00
Graydon Hoare
caf3859643 Bug 504462 - Merge tamarin's CodeAlloc into tracemonkey, r=gal. 2009-07-15 16:50:01 -07:00
Andreas Gal
e7f2714ea1 When finalizing, deallocate memory in a separate thread (505612, r=bent,brendan,waldo). 2009-07-27 21:10:12 -07:00
David Mandelin
cfb0d1fd1b Bug 506821: clean up trailing whitespace, r=brendan 2009-07-27 18:40:12 -07:00
Leon Sha
de4d2d6b24 Bug 506201 - regexp.cpp fails to compile on opensolaris: goto bypasses variable init. r=gal 2009-07-27 11:30:57 +08:00
Robert Sayre
9e0ade7287 Backed out changeset b3d459d23452 2009-07-24 00:01:37 -04:00
Andreas Gal
eb711234db Use a background thread to free() memory while sweeping (505612, r=brendan,bent). 2009-07-23 15:12:34 -07:00
Nicholas Nethercote
a8cd3ba765 Bug 504705 - TM/nanojit: use NULL as the condition for unconditional guards (2nd attempt). r=gal. 2009-07-22 14:54:41 +10:00
Luke Wagner
dbe10c51be Bug 505400: restore fullness check for regexp character set, r=dmandelin,gal 2009-07-21 15:19:40 -07:00
Andreas Gal
83790e006a Merge. 2009-07-20 14:06:39 -07:00
Andreas Gal
cb9a549160 Backed out changeset 692e8a1325f8 (bug 504705). Crashes with TMFLAGS=full on browser startup. 2009-07-20 13:58:00 -07:00
wes@page.ca
dc3efedd7d Bug 504647 - JITted regular expressions crash SPARC Nanojit. r=dmandelin 2009-07-20 14:11:12 +08:00
Nicholas Nethercote
dabda589bf Bug 504705 - TM/nanojit: use NULL as the condition for unconditional guards. r=gal. 2009-07-17 11:14:01 +10:00
Luke Wagner
0c16520e8b Bug 406271: add quantifier support for regexp->native compiler, r=dmandelin 2009-07-16 17:17:35 -07:00
Brendan Eich
221bd1197a Bug 503406 - TM: Trace calling a user-attached function to RegExp (r=mrbkap). 2009-07-15 17:48:22 -07:00
Andreas Gal
1af8dfb112 Avoid integer division in NewGCThing path (503157, r=jwalden). 2009-07-14 17:06:09 -07:00
David Mandelin
a10caff6bb Bug 502789: correct regexp->native compiler of handling case-insensitive matching of characters with multiple lower-case forms, r=lw 2009-07-13 12:41:30 -07:00