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

18317 Коммитов

Автор SHA1 Сообщение Дата
Ginn Chen 6c38bc5cc8 Bug 514632 remove unused file r=jorendorff 2009-11-20 14:17:12 +08:00
Ginn Chen 69a4980745 Bug 522440 QCMS: Make sse/sse2 code built with Sun Studio 12 on Solaris r=jmuizelaar, ted.mielczarek 2009-11-20 14:15:39 +08:00
Ginn Chen 0527585990 Bug 528150 Remove the hack for LIR.cpp in Makefile.in r=dvander 2009-11-20 14:12:47 +08:00
Brendan Eich 42ed98f80a Disabling the joined method optimization from bug 524826 again (529837, talked about it with dbaron and sayrer). 2009-11-19 09:21:54 -08:00
Robert Sayre 96989d7162 Merge. 2009-11-19 01:23:03 +01:00
Robert Sayre de35907d53 Merge mozilla-central to tracemonkey. 2009-11-19 01:21:34 +01:00
Brendan Eich 70e6d55140 Fix uninitialized var bug (529679, r=jorendorff). 2009-11-18 15:56:34 -08:00
Brendan Eich 5cf3d8734a Fix method barrier not to brand, period (branding withou reshaping is worse, branding correctly is unnecessary; 524826, r=jorendorff). 2009-11-18 13:47:06 -08:00
Jason Orendorff 19b28f0a68 Bug 505523 - Property cache can skip JSClass::resolve or JSClass::addProperty hooks. r=graydon, r=brendan.
--HG--
extra : rebase_source : a77b0e81203010aabe07b92b639762dce83200c0
2009-11-18 14:29:58 -06:00
Jim Blandy 2a92261a6d Back out ad37dab7ea17: code to check the current frame's script's strictness flag fails the static checks. Using js_GetTopStackFrame introduces a perf regression. 2009-11-18 14:36:55 -08:00
Brendan Eich c85a92fa5a Fix method barrier not to brand, period (branding without reshaping is worse, branding correctly is unnecessary; 524826, r=jorendorff). 2009-11-18 13:41:40 -08:00
Jim Blandy 5c1db442e6 Bug 514585: Machinery for reporting ES5 strict mode errors. r=igor
At compile-time, we must consult the current JSTreeContext to decide
whether to issue an strict mode error; at run-time, we need to
check the strictness of the currently executing script.  Both cases
also check the context options.  The design is supposed to make it
easy to follow the principle that conditions treated as errors in
strict mode are a subset of those warned about by JSOPTION_STRICT.

This patch removes report flag handling from js_ExpandErrorArguments,
which is used for both compile-time and run-time errors.  At run-time,
the new checkReportFlags handles the checks.  At compile-time, we need
different checks depending on the situation, so the checks are done in
js_ReportStrictModeError, js_ReportCompileErrorNumber, and the new
ReportCompileErrorNumberVA.
2009-11-18 13:33:53 -08:00
Jim Blandy b0419567fd Bug 514585: Recognize "use strict" directives. r=igor 2009-11-18 13:33:53 -08:00
Jim Blandy d1c1c1294c 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 fde5cba30c Fixed string flag bugs on VC++ x64 (bug 512866, r=waldo). 2009-11-18 13:24:24 -05:00
David Anderson 916c4a3aaa Fixed accidentally trying to trace compile a recursive generator (bug 529130, r=gal). 2009-11-18 12:41:51 -05:00
Blake Kaplan 34ff15a8c9 Bug 528126 - Ensure the GC can see the new object. r=brendan 2009-11-18 15:54:27 +01:00
Blake Kaplan 92cf585dd1 Bug 520572 - Test watch() on an outer object. r=brendan/bc
--HG--
extra : rebase_source : e675a97028a914de51f39962b6865e2bf59f80fd
2009-11-18 12:58:28 +01:00
Luke Wagner f94402a934 Bug 526173 - 3.5x regression in indexOf performance (r=waldo) 2009-11-17 22:40:50 -08:00
Jeff Walden 5031b7813c Backed out changeset 975b36c50d33; bug 478047's fix was misguided and contra ES5, and moving to ES5 semantics at this late date in the release cycle seems unwise. We'll move from old and busted directly to ES5 shortly after 3.6 so as to provide maximum time for ironing out incompatibilities in the wild. r=gal 2009-11-16 17:21:48 -08:00
Andreas Gal 5de4aab193 Don't attempt to GC when caller has waived the GC heap quote (528507, r=dvander). 2009-11-17 14:31:06 -08:00
Blake Kaplan 3cc6733b04 Bug 461170 - Mark this test as passing. 2009-11-17 11:59:35 +01:00
Nicholas Nethercote a3e6ba0904 Update nanojit-import-rev stamp. 2009-11-17 15:56:35 +11:00
Edwin Smith 38e661702e Fix assertion failure injected by X64 verbose code patch (bug 520712 r=dvander+)
When we test the size of an offset, we have to do it after underrunProtect
or else a jump can be inserted which then invalidates the instruction selection.

--HG--
extra : convert_revision : 9b249328236ffec433abb961c0737a82f437c7d4
2009-11-16 14:22:26 -05:00
Nicholas Nethercote 14c52a7910 Bug 520712 - nanojit: print assembly code for X64 backend with TMFLAGS=assembly. r=edwsmith.
--HG--
extra : convert_revision : bc99b0483e324920fa4c55235d1f9da58eeebcaf
2009-11-16 13:14:39 +11:00
Luke Wagner 668061e085 Bug 529147 - fix flipped numSideExitsBefore assertion (r=dvander) 2009-11-16 17:45:50 -08:00
David Anderson 37649084ed Use INS_CONSTOBJ instead of INS_CONSTWORD for kshape guard (bug 528048, r=gal). 2009-11-16 18:44:58 -05:00
Jeff Walden 3e6293466d Bug 520890 - obj_getOwnPropertyDescriptor nests object locks. r=jorendorff 2009-11-09 16:16:28 -08:00
Luke Wagner bbbed2d1ea Bug 528870 - fix double-slurping rebase error (r=dvander) 2009-11-16 10:14:57 -08:00
Blake Kaplan 7324d334bd Bug 461170 - Detect when typeof is applied to an expression before constant folding so we correctly throw unbound name exceptions from the folded expression. r=brendan 2009-11-06 18:27:17 +01:00
Nicholas Nethercote cbdbcd253d Bug 465582: the TM-specific part. r=dvander. 2009-11-16 10:03:30 +11:00
Nicholas Nethercote 047e729eed Update nanojit-import-rev stamp. 2009-11-16 08:18:55 +11:00
Nicholas Nethercote 464a75d084 Bug 518242 - NJ: Remove insSkip and supporting machinery. r=graydon.
--HG--
extra : convert_revision : d0134ea858d0e34c389868a59aac7085451865b4
2009-11-13 16:18:40 +11:00
Graydon Hoare b420bffde7 Bug 528320 - Improve warning-handling on windows, r=rreitmai.
--HG--
extra : convert_revision : c1dd9d0db4cf07210025b69e852f2ea43275a759
2009-11-12 15:07:31 -08:00
Julian Seward cea6b0bae1 Bug 517883 - make TM fragment entry- and exit-profiling work on ARM, r=vlad.
--HG--
extra : rebase_source : 5ce347fc1855009b2e71a67ab4df69ee03e7d65b
extra : convert_revision : e133153691ce2daf3eb72bba7762191b61b7afcb
2009-11-12 14:30:36 -08:00
Nicholas Nethercote 3002dfbf77 Bug 513865 - nanojit: make LirReader::read() clearer and faster. r=gal.
--HG--
extra : convert_revision : d78bd673c8652d17489559744f4a221c78811286
2009-11-13 09:26:26 +11:00
Nicholas Nethercote 6423135bfa Bug 527874 - nanojit: add and remove some uses of findSpecificRegForUnallocated(). r=rreitmai.
--HG--
extra : convert_revision : 8a61bb2085985eb84772ca1ad924eee5b7fe544f
2009-11-13 09:23:14 +11:00
Edwin Smith 4d36081271 Fix NativeARM; missed one file when backing out registerAllocTmp (r=me)
--HG--
extra : convert_revision : ec94ce9d044ee358a65c259a6151ce660122f813
2009-11-12 08:39:32 -08:00
Edwin Smith 424b6b8640 Add LIR_jtbl instruction, and patch up lirasm to remove LIR_ji (bug 465582 r=nnethercote+, rreitmai+)
new opcode: LIR_jtbl.  jtbl takes a uint32_t index and a table of label
references (LIns**), representing a jump to one of the labels.

the index must be in range (range checking is not included in the opcode).

the table is allocated in memory at least as long lived as the LIR; this is
accomplished by doing the allocation from the same Allocator used by LirBuffer.

In the x86 backend, this is implemented with a simple jmp [R*4+ADDR] where ADDR
is the address of the table.  I added a new dataAllocator (Allocator&)
parameter to Assembler, which is used for allocating data along with code (data
& code have same lifetime).  The x86 backend allocates the final table of
addresses from this allocator and embeds the pointer to the table in code.

In other backends more than one instruction must be used due to limited range
of the constant part of the addressing mode (ppc, arm), or non-support for
full-range pc-relative indexing (x64, ppc64).

Anyone generating LIR code for use with LIR_jtbl must also generate a
LIR_regfence instruction after each label reachable by a forwards edge
from LIR_jtbl.  This is to workaround the register allocator's inability
to merge register states between 2 or more pre-existing targets.  LIR_regfence
is not required for backwards edges.

--HG--
extra : convert_revision : ee709eaaa30f720f77ab863ba4c9e6d10d69982b
2009-11-11 14:38:12 -05:00
Rick Reitmaier cd83c232ab Silence win64 compiler gripe about unused var (r+me)
--HG--
extra : convert_revision : 6a40f9bbeae25cc7c79ce34db8226ab0ff786c57
2009-11-11 09:12:57 -08:00
Luke Wagner 75ceb36eca Bug 520636 - sideExits holds dangling pointer on failed compilation (r=dvander) 2009-11-13 15:47:08 -08:00
Luke Wagner fb7cd86129 Quiet the hounds of JS_REQUIRES_STACK 2009-11-13 15:24:25 -08:00
Luke Wagner e34ef1607f Bug 517174 - trace js_Invoke calls from natives (r=dvander) 2009-11-12 18:34:24 -08:00
Jason Orendorff 994586ad1f Bug 528414 - JS_IsRunning can be wrong. r=brendan.
--HG--
extra : rebase_source : 4fca5efd5f558c1b64b0e86580d2c42af7e61e34
2009-11-13 09:24:12 -06:00
Bob Clary c3a28c0d90 Bug 528384 - Intermittent failure in js1_8_1/trace/regress-451673.js 2009-11-13 05:26:33 -08:00
Bob Clary 27656c3a45 Bug 528284 - js1_5/extensions/regress-371636.js - random failure for debug windows. 2009-11-13 05:26:33 -08:00
Bob Clary 9a3749aa7e Bug 524734 - js1_8_1/trace/regress-451974-01.js, regress-451974-02.js fix random failure. 2009-11-13 05:26:33 -08:00
Andreas Gal 8fb5ef3e70 Remove reserve doubles and objects lists and instead waive the GC quota to avoid failing in LeaveTree (508140, r=dvander). 2009-11-12 16:01:56 -08:00
Jason Orendorff 85d4ffddd8 Bug 523998 - Add assertions to detect cases where objects were not touched by shape regeneration. r=dmandelin.
--HG--
extra : rebase_source : 6a71b143bdb82a81e00c082df5dc4c15198ad5d6
2009-11-12 16:50:12 -06:00
Igor Bukanov 37c1d4a79b bug 527803 - avoiding unnecessary js_AddRoot. r=brendan 2009-11-12 23:13:25 +01:00