Andreas Gal
df30935a17
guardDenseArray and guardDenseArrayIndex must guard on the actual outcome, since we don't always abort trace if its not a dense array (461611, r=me).
2008-10-25 01:03:38 -07:00
David Anderson
e33e23e267
Fixed false positive demotions due to missing isPromoteInt (bug 461612, r=gal).
2008-10-25 01:50:38 -05:00
Andreas Gal
06b393e8a2
Trace reading from dense arrays out of bounds and trace undefined -> number conversion in binary ops (461611, r=brendan).
2008-10-24 21:51:04 -07:00
Blake Kaplan
a812183893
Bug 455971 - Clear Function and Object (and any other properties) off of the outer object so that Function always refers to the inner window's function. This ensures that the implict Function and explicit window.Function forms refer to the same object. r+sr=brendan
...
--HG--
extra : transplant_source : %83%9C%81E%A3%95%A5%1D%5DzO%13%85%9B%9A0v%21i%E0
2008-10-24 16:53:37 -07:00
David Anderson
6ebb53e98e
Fixed branch demotions using the branch PC rather than the root PC, causing infinite records (bug 455547, r=gal).
2008-10-24 14:01:17 -07:00
Brendan Eich
fcca844194
Bug 461248 - Remove JSOP_RESUME (r=gal/jorendorff).
2008-10-24 12:34:08 -07:00
David Anderson
f8fb76a697
Disabled x64 JIT in shell until the port is cleaned up from nj2.
2008-10-24 11:02:37 -07:00
Jason Orendorff
764431fd80
Bug 461111 - Extra parens in decompilation of "if(a, b)". r=brendan.
2008-10-24 12:52:52 -05:00
Jason Orendorff
90796fca26
Bug 461492 - TM: INT32 can't be used as return type for traceable native that actually returns an int. r=gal.
2008-10-24 12:49:54 -05:00
David Anderson
590d3d2443
Fixed crash from JIT cache flushes when js_Interpret was holding TraceRecorders (bug 458288, r=brendan).
2008-10-24 10:47:59 -07:00
Aristid Breitkreuz
661d3c51b2
Bug 461163 - No public API for OBJ_GET_PROPERTY or the JavaScript [] operator (and similar functions). r=brendan.
2008-10-24 12:09:09 -05:00
Gavin Sharp
055bd5e6e2
Back out patch for bug 450633
2008-10-25 17:10:34 -04:00
Blake Kaplan
0aefd37c4a
Bug 455971 - Clear Function and Object (and any other properties) off of the outer object so that Function always refers to the inner window's function. This ensures that the implict Function and explicit window.Function forms refer to the same object. r+sr=brendan
2008-10-24 16:53:37 -07:00
Andreas Gal
9701440e6d
Merge.
2008-10-23 14:49:25 -07:00
Andreas Gal
c867e60dfc
Merge.
2008-10-23 14:47:00 -07:00
Jason Orendorff
01acd787a0
Eliminate warning about ignored visibility attribute on js_CloseIterator when compiling jsbuiltins.cpp. No bug#. r=brendan.
2008-10-23 16:38:58 -05:00
Jason Orendorff
7336afcbbd
Fix blatant bugs in jsbuiltins.h. No bug#. r=dvander.
2008-10-23 15:39:35 -05:00
Brendan Eich
1772bc4d6f
Bug 461307 - Crash [@ QuoteString] with for(/x/[''] in []) (r=mrbkap).
2008-10-23 11:37:07 -07:00
Andreas Gal
23f283c78e
Merge.
2008-10-22 22:30:37 -07:00
Andreas Gal
19ed8b2e9c
Only track and look up LOOP_EXIT side exits in the tree info (r=danderson).
2008-10-22 22:29:51 -07:00
Rob Arnold
6e2f659fac
Fix memory leak in LInsHashSet::grow - bug 461069 r=danderson
2008-10-22 23:07:37 -04:00
Andreas Gal
57cf783a3b
Make sure we set remaining fslots to void in FastNewDate (459628, r=brendan).
2008-10-22 19:19:07 -07:00
Andreas Gal
e68f86bd08
Merge.
2008-10-22 19:09:03 -07:00
Andreas Gal
5b7d8ddbe0
Backed out changeset 82f5fed6d91a (Linux GCC doesn't seem to like clobbering ebx in inline assembly).
2008-10-22 19:08:28 -07:00
Andreas Gal
ba66d9d48c
Added test-case for 459630 (WFM) to make sure we don't regress it down the road.
2008-10-22 19:06:18 -07:00
Andreas Gal
04b27d4cf3
Avoid pusha/popa inside assembly (icc crashes) when checking for SSE2 using cpuid (461280, r=danderson).
2008-10-22 18:55:54 -07:00
Andreas Gal
ffe407c883
Backed out changeset 91277d409f44 (accidentally also touched Makefile.ref and config/Darwin.mk)
2008-10-22 18:46:41 -07:00
Andreas Gal
3b66906c5d
Enable JIT by default for content (r=danderson).
2008-10-22 18:21:51 -07:00
Andreas Gal
5cc94e1d59
Re-use loop exit side exit if we already have one for that PC location and the same type map (461076, r=danderson).
2008-10-22 16:27:25 -07:00
Andreas Gal
e2a6acb46a
Use LIR_loop for loop edge to avoid going into a side exit handler at every loop edge (461231, r=danderson).
2008-10-22 16:00:08 -07:00
Brendan Eich
e0a0cfe21f
Bug 461235 - "Assertion failure: pos == GET_UINT16(pc)" decompiling function with array comprehension (r=mrbkap).
2008-10-22 15:47:52 -07:00
Jim Blandy
48c4b8be4b
Bug 461192: Rename fd_copysign to js_copysign. r=jorendorff
...
Since we're no longer using fdlibm, it doesn't make sense to use
fd_copysign as the name of SpiderMonkey's appropriately chosen version
of copysign. js_copysign seems more appropriate.
2008-10-22 14:52:14 -07:00
Jim Blandy
aff447bc08
Bug 461192: Drop fd_ prefix from math functions. r=jorendorff
...
The Mozilla tree used to optionally use its own math library, fdlibm.
For each standard math function FOO, fdlibm defined its own version
named fd_FOO. The SpiderMonkey sources called the fd_FOO functions
directly. In configurations where fdlibm was not used, jslibmath.h
#defined fd_FOO to expand to FOO, resulting in references to the
standard math library's functions.
Now that fdlibm is not used, even optionally, those fd_ prefixes are
unnecessary. However, some code is still needed to choose the right
copysign function, so jslibmath.h still has a reason to exist.
2008-10-22 14:52:14 -07:00
Jim Blandy
cf8c925b8f
Bug 461192: Remove references to JS_USE_FDLIBM_MATH from js/src/jsmath.cpp. r=jorendorff
...
The Mozilla tree no longer uses fdlibm, so these adaptor macros are no
longer necessary.
2008-10-22 14:52:14 -07:00
Graydon Hoare
95bed8b2ed
Bug 461205 - make callee-save LIR_param use optional. r=gal,edwsmith
2008-10-22 14:32:37 -07:00
Blake Kaplan
2d412e5217
Bug 453310 - Reparameterize GetNewOrUsed and move some work around. r+sr=brendan
2008-10-22 13:19:08 -07:00
Blake Kaplan
5adf556d30
Bug 396851 - Check to see if we're UniversalXPConnect-enabled to allow privileged web pages to unwrap XOWs. r+sr=bzbarsky
2008-10-22 13:15:22 -07:00
Brendan Eich
5c85747b5c
Bug 441479 - for-in loops should use one backward branch (with downward goto on entry; r=mrbkap).
2008-10-22 12:47:51 -07:00
Jason Orendorff
88e0a669e0
Bug 461110 - Extra parens in decompilation of "a += b = 3". r=brendan.
2008-10-22 14:26:49 -05:00
Jason Orendorff
da34f1f2e5
Bug 461108 - Decompiler emits extra parens around assignment in "for(;;)" condition. r=brendan.
2008-10-22 14:06:16 -05:00
Vladimir Vukicevic
0a60bbe04b
[arm] fix build after SideExit sharing patch
2008-10-22 11:11:51 -07:00
Vladimir Vukicevic
efb82ea705
[arm] correctly have chk version of LD underrunProtect
2008-10-22 11:02:24 -07:00
Vladimir Vukicevic
d2f0736eb6
[arm] misc codegen fix
2008-10-22 11:02:24 -07:00
Vladimir Vukicevic
57b6c8d721
[arm] Use real B/BX instead of BL for side exit jumps; no need to update lr
2008-10-22 11:02:24 -07:00
Vladimir Vukicevic
9ae67df93c
[arm] Get rid of CALL, just use BL directly
2008-10-22 11:02:24 -07:00
Vladimir Vukicevic
844190ed5d
[arm] Get correct value in return reg after fragment exit
2008-10-22 11:02:24 -07:00
Vladimir Vukicevic
eb73398c11
[arm] Enable VFP
2008-10-22 11:02:24 -07:00
Peter Van der Beken
0261cd68b1
Fix for bug 459828 (Remove nsIDOMCustomEvent.idl). r=smaug, sr=sicking.
2008-10-22 15:35:34 +02:00
Peter Van der Beken
601505a0e8
Fix for bug 459830 (Remove unused quickstubs). r=jorendorff.
2008-10-22 15:08:56 +02:00
Peter Van der Beken
ddd2023646
Fix for bug 460940 (Dependency problem when removing an interface from dom_quickstubs.qsconf). r=ted.
2008-10-22 15:07:20 +02:00
Andreas Gal
74418814c5
Merge.
2008-10-21 17:52:37 -07:00
Andreas Gal
b14d526b66
Merge.
2008-10-21 17:50:52 -07:00
Andreas Gal
ec7efc925c
Remove code to unlink trees to reduce the size of GuardRecord. Allow GuardRecords to share one common SideExit structure. The VM places both explicitly into the LIR (460538, r=danderson).
2008-10-21 17:50:32 -07:00
Jason Orendorff
68a5dcca96
Bug 460157 - Yet more macros for defining builtins. r=brendan
2008-10-21 17:58:06 -05:00
Blake Kaplan
e36fb599bc
Bug 460886 - Substring needs to validate its arguments. r=brendan
...
--HG--
extra : rebase_source : 24d0131da47e8fb30cb420330bdb92189436aea7
2008-10-21 15:21:23 -07:00
Jason Orendorff
e1877796ba
Bug 460501 - Round-trip change due to "&&" constant-folding leaving extra parens. r=brendan.
2008-10-21 13:35:22 -05:00
Jason Orendorff
121e528b9f
Bug 460117 - TM: Inconsistent results from hasOwnProperty with JIT enabled. r=brendan.
2008-10-21 13:19:22 -05:00
Peter Van der Beken
993024875b
Backed out changeset 4bc3dc1f6e11
2008-10-21 11:43:01 +02:00
Peter Van der Beken
3ba81f6270
Fix for bug 459828 (Remove nsIDOMCustomEvent.idl). r=smaug, sr=sicking.
2008-10-21 11:10:47 +02:00
Vladimir Vukicevic
89d7a76a6b
[arm] Use correct register for return value; also don't bother saving full set of callee-saved registers using PUSH, they'll be saved individually
2008-10-20 17:20:05 -07:00
Vladimir Vukicevic
af0b642859
More ARM fixes; initialize free reg list correctly initially. Also use LastReg+1 instead of NJ_MAX_REGISTERS in RegAlloc -- LastReg+1 is what's used in the .h file, to avoid any mismatches.
2008-10-20 15:31:28 -07:00
Jason Orendorff
d922cb412a
Bug 460495 - TM: builtins js_Any_getelem, js_Any_setelem should take int32. r=gal.
2008-10-20 14:20:22 -05:00
Vladimir Vukicevic
3164784c33
Make ARM nanojit compile again (doesn't run)
2008-10-20 11:18:30 -07:00
Edwin Smith
d238c8bb21
remove dead refs to non-existant class RegionTracker
2008-10-20 10:15:07 -07:00
Rick Reitmaier
2cc651e33b
refactor Assembler.cpp ; passing acceptance on mac
2008-10-20 10:15:07 -07:00
Edwin Smith
9ce451ef43
fix linux compile errors
2008-10-20 10:15:07 -07:00
Edwin Smith
1896977ce5
fixes to enable ARM nanojit to build, at least
2008-10-20 10:15:07 -07:00
Blake Kaplan
3dc5f277d1
Bug 460452 - NaN is a boolish false. Also constant fold booleans next to operator NOT. r=brendan
2008-10-17 18:59:05 -07:00
David Mandelin
b81d96a696
Taking change from tamarin-redux needed to allow LIR forward branches
2008-10-17 18:01:19 -07:00
Robert Sayre
dfdc67476d
Bug 460333. Implement toJSON for primitive wrapper classes. r=crowder
2008-10-17 14:57:34 -04:00
Graydon Hoare
da90de1d13
Bug 458431 : residual typo-fix on previous Math.max fix that went in with 457786
2008-10-16 13:29:02 -07:00
Jason Orendorff
e0b7bce037
Bug 459266 - TM: Allow CALLINFO macros to specify linkage. r=brendan.
2008-10-16 14:24:10 -05:00
Andreas Gal
b99d012978
Merge.
2008-10-16 11:36:13 -07:00
Andreas Gal
6ee6a4f801
Merge.
2008-10-15 23:23:21 -07:00
Robert Sayre
c79f329ed4
Bug 459293. Sites not loading - redeclaration const JSON error on console. r=brendan
2008-10-16 01:20:57 -04:00
Blake Kaplan
6b45aae2e5
Bug 460180 - Always reload pn1 since it is null if we found the end of the list. r=brendan
2008-10-15 21:35:18 -07:00
Brendan Eich
674f60c760
Final patch (I pray) for 460116 (r=jorendorff).
2008-10-15 17:39:29 -07:00
Brendan Eich
bb4b3198b6
Back out material change for bug 460116.
2008-10-15 16:10:30 -07:00
Andreas Gal
4a1d9b9ddf
Merge.
2008-10-15 15:55:04 -07:00
Brendan Eich
85afb14a56
Bug 460116 - buggy inCond propagation in js_FoldConstants (r=jorendorff).
2008-10-15 14:02:33 -07:00
Jason Orendorff
f8a75808ed
Bug 459446 - Trace JSOP_POPV. r=brendan.
2008-10-15 15:22:05 -05:00
Brendan Eich
e9e2bb73a3
Followup to patch for bug 459990 to use JS_HAS_GENERATOR_EXPRS #if'ing.
2008-10-15 12:58:05 -07:00
Brendan Eich
0c1f23de9c
Bug 459990 - Crash [@ js_FoldConstants] (r=jorendorff).
2008-10-15 12:18:05 -07:00
Jason Orendorff
fac2df33c9
Fix build breakage from change ee94be502791 (C++ error: jump across initialization)
2008-10-15 13:09:10 -05:00
Brendan Eich
4c2d686321
Fix typo.
2008-10-14 16:27:16 -07:00
Brendan Eich
0d6dd5842d
Bug 443074 - Incorrect decompilation (missing parens) with genexp in for-loop-condition (r=jorendorff).
2008-10-14 16:13:56 -07:00
Brian Crowder
552f67b08c
Backed out changeset 82af7163534f
...
(Bug 411726 -- Time offset and zone code are set wrong for some locales, r=mrbkap)
2008-10-14 16:48:40 -04:30
Brian Crowder
da1b1b708b
Bug 411726 -- Time offset and zone code are set wrong for some locales, r=mrbkap
2008-10-14 16:29:16 -04:30
Brian Crowder
9267725c77
Bug 453915 -- XML namespace escaping improvement, r=igor
2008-10-14 16:29:05 -04:30
Andreas Gal
073cf83fb4
Fix the build breakage caused by the build breakage fix in d1e6c29797a9. No bug.
2008-10-14 11:02:53 -07:00
Jason Orendorff
5f19775ade
Fix build breakage caused by trivial type mismatch in 3b894cc33338. No bug.
2008-10-14 10:50:31 -05:00
Igor Bukanov
59702db0da
Bug 459656 - Implementing nsIThreadJSContextStack in nsXPConnect. r+sr=mrbkap
2008-10-14 16:16:25 +02:00
Andreas Gal
ea1d9c5edc
Allow a single level of self-calling until we have support for recursion (459775, r=brendan).
2008-10-13 23:20:39 -07:00
Andreas Gal
b4ee05c105
Trace Number.toString(base), not just Number.toString() (459772, r=brendan).
2008-10-13 19:07:30 -07:00
Andreas Gal
9e0dd2347d
Merge.
2008-10-13 17:40:26 -07:00
Andreas Gal
945ed5d0fe
Add a builtin for RegExp.test (459766, r=mrbkap).
2008-10-13 17:39:36 -07:00
Jason Orendorff
c3dbc177e0
Bug 459738 - Makefile.ref: js{builtins,interp}.cpp are compiled without -MMD. r=mrbkap.
2008-10-13 18:02:48 -05:00
Blake Kaplan
d9dc5056dc
Bug 455633 - Protect against the weird Sandbox global object case when creating XPCNativeWrappers. r+sr=bzbarsky
2008-10-13 15:55:38 -07:00
Blake Kaplan
76e8be0e68
Bug 457310 - Don't potentially run code with an exception still on cx. r+sr=jst
2008-10-13 15:53:33 -07:00
Blake Kaplan
197604d43a
Bug 459606 - Restore long-standing mozilla change to return a non-empty string for the no_digits case. r=crowder
2008-10-13 15:47:36 -07:00
Andreas Gal
fbd46b3d96
Add back t/crypto-sha1.js, which magically disappeared at the hands of the nanojit2 patch.
2008-10-13 14:15:23 -07:00
Graydon Hoare
bf84bf6273
Merge tamarin-redux (nanojit2) into tracemonkey (457786, r=edwsmith,gal,danderson).
2008-10-13 13:29:18 -07:00
Andreas Gal
32fb8c040d
Merge.
2008-10-13 13:22:50 -07:00
Andreas Gal
525decaff0
Fix number of expected traces for testNestedExitStackOuter in trace-tests.js
2008-10-13 13:19:37 -07:00
Blake Kaplan
973ba75c26
Re-re-re-merge
2008-10-13 13:10:33 -07:00
David Anderson
55ee8061f8
Return innermost guard from js_ExecuteTree and not outermost (r=gal).
2008-10-13 12:44:37 -07:00
Jason Orendorff
12c5730930
TM: Remove unreachable "return false" in TraceRecorder::record_JSOP_NOT. No bug, r=gal.
2008-10-13 14:10:35 -05:00
Blake Kaplan
54cdbe81ec
Merge mozilla-central -> tracemonkey
2008-10-13 11:05:05 -07:00
Blake Kaplan
665c19d6ac
Bug 458355 - ecma_3/Operators/11.4.1-002.js fail; r=brendan
2008-10-13 19:02:43 +02:00
Jason Orendorff
6b88d0da8d
Bug 459426 - Reunite record_JSOP_{NEW,CALL}. r=gal.
2008-10-13 11:04:26 -05:00
Robert Sayre
da78ac865a
Merge.
2008-10-12 20:50:34 -04:00
Robert Sayre
79bbd2eb93
Bug 459300. JSON should use internal JS functions where it makes sense. r=brendan
2008-10-12 20:48:48 -04:00
Andreas Gal
315c3a9ce7
Use a single instance of the shell to run the quick benchmark.
2008-10-12 15:58:34 -07:00
Andreas Gal
9bfc3c5072
Properly recover from a nested side exit with more than a single level of nesting (459539, r=danderson).
2008-10-12 15:39:32 -07:00
Ben Turner
9a82f09922
Bustage fix.
2008-10-12 12:03:40 -07:00
Ben Turner
311284ddff
Bug 455436 - "XPConnect insists on using its own error reporter even when another is already set." r+sr=jst.
2008-10-12 11:32:34 -07:00
Andreas Gal
d622ee23d8
Merge.
2008-10-11 20:27:03 -07:00
Andreas Gal
798a62ad00
Stack water level is off by +1 in getTop, and JSOP_CALLPROP premature updates the tracker (459537, r=danderson).
2008-10-11 20:26:29 -07:00
Igor Bukanov
db18f808c9
Bug 408539 - Storing XPCContext inside JSContext
2008-10-11 19:35:39 +02:00
Boris Zbarsky
c7e2dfdbea
Fixing docs a bit
2008-10-10 12:45:19 -04:00
Boris Zbarsky
33415ac1fb
Adding some documentation
2008-10-10 12:43:30 -04:00
Jason Orendorff
232767cb27
Bug 459294 - TM: move soft float builtins next to SoftFloatFilter. r=andreas.
2008-10-10 11:31:23 -05:00
Arpad Borsos
8b11d938d2
Bug 456388 - Remove PR_STATIC_CALLBACK and PR_CALLBACK(_DECL) from the tree; r+sr=brendan
2008-10-10 17:04:34 +02:00
Igor Bukanov
35f70f6096
bug 458679 - r=crowder
2008-10-10 15:16:27 +02:00
Andreas Gal
6c4c7256a5
Merge.
2008-10-09 16:17:53 -07:00
Andreas Gal
9a086f63ae
Don't carry around oldpc in AbortRecording path (459321, r=danderson).
2008-10-09 16:17:13 -07:00
Brendan Eich
8f06837465
Bug 408838. Native JSON. r/sr=shaver
2008-10-09 12:16:16 -07:00
Robert Sayre
480186b5af
Merge.
2008-10-09 14:20:08 -04:00
Robert Sayre
1dcc178640
Bug 459259 - Consolidate code for retrieving top of the JSON parser's object stack. r=brendan
2008-10-09 14:18:31 -04:00
Jason Orendorff
319f102472
Bug 459141 - Rename JSTN_{CATCH,FINALLY,ITER} to JSTRY_*. r=brendan.
2008-10-09 12:10:17 -05:00
Jason Orendorff
c4b5d25289
Bug 458098 - js_DumpObject can't handle objects that share proto's scope (r=crowder)
2008-10-09 07:30:21 -05:00
Jason Orendorff
cec3f38c7b
Bug 457919 - Delete unused GCC_OPT_BUG makefile variable (r=mrbkap)
2008-10-09 07:30:20 -05:00
Jason Orendorff
77ddd411ef
Bug 457914 - window.document should not have a quick stub (r+sr=jst)
2008-10-09 07:30:20 -05:00
Brendan Eich
3c94660673
Use standard anti-dangling-else/macro-call-expression-statement macrology.
2008-10-09 00:13:49 -07:00
Brendan Eich
c603bd095c
Fix dangling else blunder (459186, caught by Jesse's fuzzer).
2008-10-08 23:34:00 -07:00
Andreas Gal
35de6c0d9d
Merge.
2008-10-08 21:02:57 -07:00
Andreas Gal
c974289da5
Support thin loops (iteration < 2) by closing the loop even if we are on the last iteration (456431, r=danderson).
2008-10-08 21:02:04 -07:00
Doug Turner
996fd0f708
Bug 458917 - Windows CE Cleanup. r/sr=stuart+bsmedberg
2008-10-08 20:51:54 -07:00
Robert Sayre
5feaaba5f2
Bug 459160 - json.cpp misuses rooting api. r=mrbkap
2008-10-08 23:22:35 -04:00
danderson
c56579e021
Blacklist loop if its unstable and we don't recompile it (459174, r=gal).
2008-10-08 19:58:40 -07:00
mrbkap
e057125df7
js1_8/genexps/regress-380237-0[34].js fail, regression from introduction of JSOP_RESUME (458356, r=gal).
2008-10-08 19:46:12 -07:00
Robert Sayre
4d38e1512c
Fix typo in filename.
2008-10-08 21:52:31 -04:00
Brendan Eich
a4e4559fa5
Bug 381843 - Move for-var-in and for-let-in hoisting from the emitter to the parser (r=mrbkap).
2008-10-08 18:43:28 -07:00
Robert Sayre
6579c458ac
Merge.
2008-10-08 21:17:03 -04:00
Andreas Gal
afc99f7ccc
In ifop, avoid eq0(eq0(x)), instead flip guard direction and use single eq0 (459164, r=danderson).
2008-10-08 17:49:54 -07:00
Andreas Gal
471ed73a35
Evaluate cond to true if value evaluates to true in non-fused if (459159, r=danderson).
2008-10-08 17:44:04 -07:00
Robert Sayre
bef8140a39
Bug 458959. this.JSON is enumerable. r+sr=mrbkap
2008-10-08 19:33:26 -04:00
Andreas Gal
fb350afe17
Non-fused ifs emit different comparison code than the interpreter uses (459151, r=danderson).
2008-10-08 16:23:54 -07:00
Jason Orendorff
3204ec178a
Bug 459085 - TM: Number.toString traceable native is broken (r=gal)
2008-10-08 17:19:15 -05:00
Jason Orendorff
a27d101dab
Bug 458735 - Improve internal API for traceable natives (r=brendan, nanojit r=edwsmith)
2008-10-08 17:08:33 -05:00
Boris Zbarsky
ffd5e8306f
Adding a few more comments
2008-10-08 14:37:03 -04:00
Robert Sayre
9f7138d61c
Bug 459065. JSON space patrol. r=gal
2008-10-08 13:31:07 -04:00
Blake Kaplan
f7b967fb13
No bug - Drop the request before the ResumeRequest hiding under Pop to avoid deadlocks. r=bent sr=sicking
2008-10-08 16:05:39 -07:00
Andreas Gal
52f71e38dc
Add missing comparison before letting the result of the conditional move flow into the guard for ordered boolean comparisons (457778, r=danderson).
2008-10-07 13:32:30 -07:00
Andreas Gal
1b0fd40e30
Trace push and pop for dense and sparse arrays (453734, r=brendan).
2008-10-07 11:00:16 -07:00
Brendan Eich
19e9638dc3
Bug 457920 - regexp-dna.js and generality want JSOP_GETELEM(dense array, "0") (r=mrbkap/gal).
2008-10-06 22:30:36 -07:00
Brendan Eich
6809989bde
Bug 455973 - TM: "Assertion failure: !cx->throwing" with getter that throws (r=mrbkap).
2008-10-06 20:57:38 -07:00
Boris Zbarsky
cab53dbee6
Bug 456165. Trace |new Date()|. r=brendan
2008-10-06 20:28:22 -04:00
David Anderson
26d5db2cc5
Merge.
2008-10-06 16:48:14 -07:00
David Anderson
a4daa1c332
Fixed NaN handling again after backout of busted patch (bug 458472, r=gal).
2008-10-06 16:47:05 -07:00
Andreas Gal
40d1236378
Add support for writing back a boxed value when side-exiting on JSOP_RESUME (453734, r=brendan).
2008-10-06 16:22:57 -07:00
Andreas Gal
95b8fa8a84
Backed out changeset 2176f46b2702 (trying to identify cause for tinderbox burning).
2008-10-06 13:58:11 -07:00
Robert Sayre
690f7346b8
Bug 408838. Native JSON. r/sr=shaver
2008-10-06 16:54:12 -04:00
David Anderson
c34cf06820
Fixed incorrect handling of NaN in ifop causing one new branch per iteration (bug 458472, r=gal).
2008-10-03 17:28:03 -07:00
Graydon Hoare
7bd301d171
Bug 458431 - expression-ordering fix for traced Math.max(0,-0), r=mrbkap
2008-10-03 14:07:33 -07:00
Boris Zbarsky
be17e08640
Adding mandelbrot to trace-test
2008-10-02 19:30:46 -04:00
Brendan Eich
502fb4e4c8
Bug 456831 - TM: Trace JSOP_SETLOCALPOP (r=mrbkap).
2008-10-02 15:39:25 -07:00
David Anderson
15a55dfe6d
Fixed random test failures on AMD64, booleans were being loaded as 64-bit values.
2008-10-02 16:30:58 -05:00
Andreas Gal
49de341e4a
Fixed more confusion of quads/numbers while emitting LIR (bug 458076, r=danderson).
2008-10-01 18:04:39 -05:00
David Anderson
9c7d3f333f
Fixed regression where cmov was disabled on AMD64.
2008-10-01 17:58:38 -05:00
Robert Sayre
c59514f66e
Bug 408838 - DOM binding for native JSON. r+sr=shaver
2008-10-01 02:13:58 -04:00
Andreas Gal
d38d1d18bb
In the decompiler, skip over JSOP_RESUME after JSOP_NEW/CALL/EVAL/SETCALL (457824, r=brendan).
2008-09-30 21:09:14 -07:00
Andreas Gal
8aa08cec2a
For GETELEM/SETELEM we must check that its a native object first before trying to compare the objects shape to the shape of the global object to ensure its not aliasing the global object (457979, r=shaver).
2008-09-30 20:10:46 -07:00
Vladimir Vukicevic
f761c61b8e
TM: move cmov_available setting into nj arch backends where appropriate
2008-09-30 17:15:09 -07:00
Andreas Gal
83ea7eb834
Merge.
2008-09-30 16:35:52 -07:00
David Mandelin
a9fa2e79d8
Don't trace a property access with a watchpoint (455413, r=brendan)
2008-09-30 13:34:17 -07:00
Andreas Gal
9adad6d33a
Merge.
2008-09-30 13:02:53 -07:00
Andreas Gal
9c4eefd7ec
Fix guarding in case of sparse array setelem (regression from 457580, r=danderson).
2008-09-30 13:02:23 -07:00
David Anderson
0804b51ac0
Fixed cmp number check logic for 64-bit environments (bug 457129, r=gal).
2008-09-30 11:45:00 -05:00
Andreas Gal
21663448c1
Merge.
2008-09-29 22:22:58 -07:00
Andreas Gal
1163c91b59
Don't trace empty for-in loops (457335, r=brendan).
2008-09-29 22:22:40 -07:00
Andreas Gal
c7c062681c
Update XDR version number after bytecode change (457789, r=brendan).
2008-09-29 22:11:35 -07:00
David Anderson
60ff7369b3
Fixed global object ownership change not aborting recording (bug 455173, r=gal).
2008-09-29 23:55:58 -05:00
Andreas Gal
d0ca373339
Follow-up work for 457789, emit JSOP_RESUME after JSOP_NEW as well (r=brendan).
2008-09-29 21:30:02 -07:00
David Anderson
75e7abcf38
Fixed crash when charCodeAt failed (with NaN) while recording (bug 457795, r=gal).
2008-09-29 23:20:34 -05:00
Brendan Eich
11db6aaf1d
Always use JSBool (not bool sometimes, JSBool others) as JSVAL_IS_BOOLEAN's native slot type.
2008-09-29 22:27:43 -04:00
Andreas Gal
320dd48955
Add a resume point (JSOP_RESUME) immediately following JSOP_CALL (457789, r=mrbkap).
2008-09-29 18:49:40 -07:00
Andreas Gal
36e0e1fcbf
Catch negative indexes at recording time. At runtime the builtins already check for us. Also guard for shape and setters/getters for non-dense integer index setelem case (57580, r=mrbkap).
2008-09-28 17:11:47 -07:00
Reed Loden
a4f6f0e831
Back out Robert Sayre's patch from bug 408838 due to test failures (changeset 2fe3cb0c9f7c).
2008-10-01 03:22:30 -05:00
Andreas Gal
e6006ef942
Add test case for 457456.
2008-09-27 13:13:42 -07:00
Andreas Gal
bd2e228fd0
Fix constant folding for cmov and add folding of or/and/xor (457456, r=danderson).
2008-09-27 13:10:24 -07:00
Robert O'Callahan
4834e88fce
Backing out patch for bug 456027 to try to fix test bustage
2008-09-27 20:56:42 +12:00
Andreas Gal
5fdd5d2b67
Properly handle cmov and sse2 flags, and put them in a central place not into each platform-dependant assembler (457355, r=danderson).
2008-09-26 20:39:21 -07:00
Andreas Gal
5cc5fdedb8
Merge.
2008-09-26 19:21:27 -07:00
Andreas Gal
9960750440
Can't use JSVAL_IS_BOOLEAN on trace since boolean type contains undefined (457351, r=brendan).
2008-09-26 19:20:52 -07:00
David Anderson
ce71880114
Fixed a bug where no shape guard was emitted if a property was not found, causing it to remain unseen if added later. Abort in this case instead. (bug 457171, r=brendan)
2008-09-26 19:18:00 -07:00
Andreas Gal
884eabf3d5
Cleanup SETELEM, box early (in case we side exit on that) and don't set return value if INITELEM or followed by POP (457336, r=brendan).
2008-09-26 17:33:40 -07:00
Blake Kaplan
d2e4f90dc6
Bug 456027 - Innerize earlier so we don't rely on the JS engine providing getters that might not be there. r=brendan sr=jst
2008-09-26 15:42:47 -07:00
Blake Kaplan
8c46931ccc
Bug 455765 - Set global flags on global objects' first use so the JS engine doesn't get confused. r+sr=jst
2008-09-26 15:40:31 -07:00
Blake Kaplan
eefec8f1f7
Bug 455775 - The eval frame might not be the top frame, but we still must find it. r=brendan
2008-09-26 15:37:07 -07:00
Andreas Gal
93a292bd90
Merge.
2008-09-26 14:16:25 -07:00
igor
19701dd91b
When replenishing the recovery double pool, detect if a GC happens (follow up work for 456826, r=gal).
2008-09-26 14:16:11 -07:00
Boris Zbarsky
fe2220afb1
Bug 456165 part 2. Trace Date.now. r=gal
2008-09-26 14:37:50 -04:00
Boris Zbarsky
a4b9ae6222
Bug 456370. Flush the fragment cache earlier on global shape mismatch. r=gal
2008-09-26 14:37:49 -04:00
Boris Zbarsky
50c786d373
Bug 456165 part 1. Get rid of icky JS_LL macros, r=brendan
2008-09-26 14:08:28 -04:00
Andreas Gal
7bb0a663e6
Use a pre-allocated pool of doubles to make sure we can safely recover in case of OOM or out of doubles (456826, r=brendan).
2008-09-25 19:11:48 -07:00
Brendan Eich
8030ce9609
Bug 457130 - TM: regexp lastIndex property not traced correctly (r=danderson).
2008-09-25 17:45:14 -07:00
David Anderson
3808521295
Workaround for intermittent js_GetClassObject failures (bug 457069, r=brendan).
2008-09-25 17:30:01 -07:00
Brendan Eich
9807c189fe
Bug 457127 - TM: Crash on digg.com with adblock plus [@ ReconstructPCStack] (r=danderson).
2008-09-25 17:05:06 -07:00
Brendan Eich
f875d89fa2
Bug 456810 - TM: Crash on digg.com with adblock plus [@ ReconstructPCStack] (r=gal).
2008-09-25 15:04:48 -07:00
David Anderson
fca4e20f3a
Added test case for bug 456667.
2008-09-25 14:16:24 -07:00
Brendan Eich
b7841b8cfd
Fixed argc < nargs miscount in js_SynthesizeFrame and adjusted a related assertion (bug 456667, r=danderson).
2008-09-25 13:12:01 -07:00
Andreas Gal
4be7fad144
Merge.
2008-09-25 11:32:00 -07:00
Andreas Gal
5b117e1c3f
Rewrite and cleanup GETELEM and SETELEM (455748, r=brendan).
2008-09-25 11:31:40 -07:00
Jason Orendorff
b6158434af
Bug 456469 - Dead variable pval in js_NativeSet (r=brendan)
2008-09-25 11:29:12 -05:00
Jason Orendorff
e63d2c737c
Bug 455953 - js_DumpObject debugging function (r=crowder)
2008-09-25 11:29:12 -05:00
Jason Orendorff
c35bfc3682
Bug 389034 - JS_SetProperty() ends up resolving w/o JSRESOLVE_ASSIGNING (r=brendan, sr=bzbarsky)
2008-09-25 11:13:31 -05:00
Brendan Eich
d56e0c688e
Back off premature arguments tracing (453730 temporary measure).
2008-09-25 08:51:40 -07:00
Andreas Gal
10b165830b
Merge.
2008-09-25 08:00:26 -07:00
Andreas Gal
a7a4b8be7b
Backed out changeset c5d4e22e54ad (reopened 456201).
2008-09-25 07:58:56 -07:00
Igor Bukanov
82f9c64e29
bug 378918 - scalable thread-local GC free lists
2008-09-25 15:27:59 +02:00
Andrei Saprykin
6f45d79b4b
bug 444979 - fixing JSOP_TABLESWITCH to treat -0 as 0
2008-09-25 15:18:41 +02:00
Andreas Gal
97be5eae89
Merge.
2008-09-24 23:32:19 -07:00
Andreas Gal
eb5f8be2b1
Demote modulo operations to integer if both args are int (456934, r=brendan).
2008-09-24 23:28:56 -07:00
Brendan Eich
3238fa4180
Bug 456931 - TM: GVAR op record methods use wrong object (r=gal).
2008-09-24 23:09:46 -07:00
Brendan Eich
86b3bc3671
Bug 456932 - TM: Don't assert that global object can't grow additional properties if none are used by any trace and we don't check for global shape mismatches (r=gal).
2008-09-24 23:05:44 -07:00
Ben Turner
8fdc38c40a
Backed out changeset 5986b4269d9d
2008-09-24 21:07:05 -07:00
Ben Turner
85938eeb67
Bug 450452 - "Implement XHR ('minus X') for worker threads". r+sr=jst.
2008-09-24 19:48:07 -07:00
Andreas Gal
c3ae2f8027
Merge.
2008-09-24 19:33:04 -07:00
Andreas Gal
f1cdf0fd1c
Make sure JSOP_DEFLOCALFUN pushes the right function object (456470, r=brendan).
2008-09-24 19:31:51 -07:00
Brendan Eich
d9b970f735
Fix warning.
2008-09-24 18:50:46 -07:00
Brendan Eich
ac41d655c4
Merge pull from mozilla-central.
2008-09-24 18:46:44 -07:00
Andreas Gal
9b1f70d488
Compile jsregexp.cpp with -O9 and -fomit-frame-pointer (456201, r=shaver).
2008-09-24 17:44:25 -07:00
Andreas Gal
5fdc88e6b7
Only fasttrack applys where the arguments array has the same lengths as the expected arguments of the called function (456494, r=brendan).
2008-09-24 16:45:27 -07:00
Andreas Gal
e50585b158
Merge.
2008-09-24 16:32:36 -07:00
Andreas Gal
2bc1ba7a91
The meaning of T changed in our builtin table to object-only, so we have to mark the string builtins now with S, instead of T (454682, r=brendan).
2008-09-24 16:31:07 -07:00
Brendan Eich
d0645c2e47
Bug 456875 - TM: js_SynthesizeFrame must js_GetCallObject if JSFUN_HEAVYWEIGHT (r=mrbkap).
2008-09-24 15:43:19 -07:00
Brendan Eich
536e07f808
Bug 455146 - TM: Going to NEW Facebook profile page causes crash. [ @FlushNativeStackFrame] (r=danderson,mrbkap).
2008-09-24 15:40:08 -07:00
Andreas Gal
619234db4c
Back out attempt to invoke natives that return a boxed value (namely push and pop, 453734).
2008-09-24 15:18:19 -07:00
David Anderson
635fe0398d
Merge.
2008-09-24 13:12:54 -07:00
David Anderson
a53ee95a20
Fixed breaks in switch statements causing premature end-of-traces (bug 456345, r=gal,brendan).
2008-09-24 13:12:25 -07:00
Neil Rashbrook
6f6de04b5e
Make nanojit build non-debug with VC7.1 (bug 455210, r=danderson).
2008-09-24 10:21:49 -07:00
Brendan Eich
60cb87195a
Bug 453024 - Mochitest Assertion failure: vp + 2 + argc <= (jsval *) cx->stackPool.current->avail, at jsinterp.cpp:1066 (r=igor/mrbkap).
2008-09-24 02:24:22 -07:00
Brendan Eich
c184542b3b
Bug 453024 - Mochitest Assertion failure: vp + 2 + argc <= (jsval *) cx->stackPool.current->avail, at jsinterp.cpp:1066 (r=igor/mrbkap).
2008-09-24 02:10:47 -07:00
David Anderson
ccd5e825b9
Fixed jstracer's operator delete leaking out into other shared libraries (bug 452721, r=gal).
2008-09-23 18:12:53 -07:00
Andreas Gal
38a8e67fa5
Merge.
2008-09-23 17:19:02 -07:00
Andreas Gal
958c18fb2a
Add builtin for invocation of match() on String objects (454682, r=danderson).
2008-09-23 17:18:40 -07:00
Doug Turner
cf6bf884ef
Bug 456458 - JS Tracer uses file-system stat structure name - WinCE compile fails. patch by dougt, r=crowder
2008-09-23 14:35:29 -07:00
David Anderson
b3141a864c
Fix where recording could crash if globalObj->dslots got reallocated (bug 451137, bug 455137, r=gal).
2008-09-23 13:29:41 -07:00
Andreas Gal
9ae4f39d64
Don't demote dmod to imod since there is no case that is guaranteed to produce valid integer results for all inputs (456540, r=danderson).
2008-09-23 12:21:15 -07:00
Doug Turner
368e1aa2d8
Bug 455374 - WinCE JS DLL does not need DllMain() function. patch by wolfe, r=crowder
2008-09-23 11:01:31 -07:00
Brendan Eich
ef1a9b029a
JS_snprintf for portability, not snprintf (bustage fix).
2008-09-23 00:59:59 -07:00
Andreas Gal
b967b5aec8
Use JS_snprintf instead of snprintf which Windows doesn't seem to know about (fix build breakage).
2008-09-23 00:58:11 -07:00
Andreas Gal
5054e0003b
Don't emit constant guards for switch and ifop (455605, r=danderson).
2008-09-22 17:58:25 -07:00
Andreas Gal
0c5b47dc28
Merge.
2008-09-22 17:03:00 -07:00
Andreas Gal
d85fc31e85
Both sides of a modulo have to be demotable before we can optimize using imod (456477, r=danderson).
2008-09-22 17:02:33 -07:00
Boris Zbarsky
5bf1de2855
Bug 456369. Checking of JIT stats should not loop. r=brendan
2008-09-22 17:37:59 -04:00
Andreas Gal
7b70046b10
Merge.
2008-09-22 13:05:12 -07:00
Andreas Gal
df641c58e5
Compilation fixes for DISABLE_JIT=1 (r=danderson).
2008-09-22 13:04:47 -07:00
David Anderson
d1bc6dc0d8
Fixed jstracer.cpp no longer building in the browser because of -pedantic.
2008-09-22 11:23:22 -07:00
Andreas Gal
368f7d5382
Merge with mozilla-central.
2008-09-21 12:44:24 -07:00
Brian Crowder
910abe1b30
Adding missing file
2008-09-21 09:03:16 -04:00
Boris Zbarsky
f1b69640dd
Backed out changeset c0364f5e0a84
2008-09-21 09:02:09 -04:00
Boris Zbarsky
f068ba4b22
Adding missing file
2008-09-21 08:59:52 -04:00
Brendan Eich
782b633703
Fix bug 455763 (r=me).
2008-09-21 01:38:39 -07:00
Brian Crowder
d87b65397b
Add a JIT stats object in the shell
2008-09-19 22:47:58 -04:00
Boris Zbarsky
4b972f730f
Adding test for bug 451605
2008-09-19 21:58:00 -04:00
Andreas Gal
da5081c842
Properly calculate tree exit/call guards (bug 453397, r=danderson).
2008-09-19 18:45:57 -07:00
Andreas Gal
461209cef6
Merge.
2008-09-19 16:09:39 -07:00
Andreas Gal
b20918f930
Dynamic reconstruction of arbitrary native frames (454402, r=danderson).
2008-09-19 16:09:18 -07:00
Boris Zbarsky
c504a551d6
Adding some comments
2008-09-19 17:54:49 -04:00
Andreas Gal
101addb2f6
Merge.
2008-09-19 12:29:56 -07:00
Andreas Gal
16fbc92e91
Backed out changeset 5e4ec981e9ea
2008-09-19 12:07:46 -07:00
Boris Zbarsky
7b41e7daf4
Adding some documentation
2008-09-19 14:45:16 -04:00
Andreas Gal
f06affb8ed
Allow tree to grow around unbox operations when the type of the value changes (452514, r=danderson).
2008-09-18 17:40:46 -07:00
Andreas Gal
9d7afa336a
Add support for fast native that return jsval and wire up push/pop (453734, r=mrbkap).
2008-09-18 16:53:09 -07:00
Andreas Gal
9908bc1345
Merge.
2008-09-18 16:08:52 -07:00
Andreas Gal
2c406fe617
Add support for JSOP_NOT on strings (451787, r=danderson).
2008-09-18 16:04:54 -07:00
David Anderson
b895f26605
Fixed trying to record arguments past the formal arg count in JSOP_ARGSUB and JSOP_CALL (bug 455757, r=gal).
2008-09-18 15:23:22 -07:00
David Anderson
40d94b8bed
Fixed -0 being treated as a promotable unsigned integer (bug 455758, r=gal).
2008-09-18 14:19:17 -07:00
Andreas Gal
708f08ca9c
Properly handle side exits in scripted constructors (originally mrbkap, r=brendan, 453462).
2008-09-18 14:13:37 -07:00
Andreas Gal
f074cc7a9f
Cleanup and unify comparison code (455811, r=danderson).
2008-09-18 13:31:26 -07:00
Brendan Eich
510c72d4f0
Bug 455464 - TM: "Assertion failure: !TRACE_RECORDER(cx) ^ (jumpTable == recordingJumpTable)" with gc getter (r=mrbkap).
2008-09-17 08:10:23 +01:00
Andreas Gal
183ab27e9d
Use Object as prototype if the prototype of the constructor is primitive (452960, r=mrbkap).
2008-09-16 18:49:27 -07:00
Andreas Gal
b2cff5e791
Expose push pop in jsarray and add builtins (453734, r=mrbkap).
2008-09-16 17:07:59 -07:00
Andreas Gal
dab25898eb
Don't export operator new/delete except if really needed (452721, r=danderson).
2008-09-16 13:57:59 -07:00
Andreas Gal
6de13bab44
Merge.
2008-09-16 13:24:57 -07:00
Andreas Gal
8ef12c41b5
Removed bogus assert (argv is NULL if callee is NULL, assert segfaults, 452495, r=danderson).
2008-09-16 13:24:34 -07:00
Jason Orendorff
14fd1396b5
Bug 454343 - Assertion failure: obj == pobj, at src/js/src/jsinterp.cpp:160 (r+sr=mrbkap)
2008-09-16 14:27:03 -05:00
David Anderson
6dcdb6aeb9
Fixed pointer arithmetic bug during trace recording on 64-bit platforms (bug 454981, r=m_kato).
2008-09-16 10:48:54 -07:00
Andreas Gal
37a7d9274f
Add test case for 455408.
2008-09-16 08:07:01 -07:00
brendan
472ac757b4
Don't forget to set RHS as result in SETPROP in case we don't call either SetPropHit or SetPropMiss, new patch (455408, r=gal).
2008-09-16 08:03:12 -07:00
Andreas Gal
4f38e736a7
Backed out changeset 66a76c8c7346
2008-09-16 06:51:33 -07:00
brendan
18c4ef65df
Don't forget to set RHS as result in SETPROP in case we don't call either SetPropHit or SetPropMiss (455408, r=gal).
2008-09-16 06:26:57 -07:00
Andreas Gal
ce30f97561
Merge.
2008-09-16 06:22:32 -07:00
Andreas Gal
61aeda1e95
Detect modulo by constant that is not zero and demote to integer modulo (451788, r=brendan).
2008-09-16 06:20:54 -07:00
Brendan Eich
68172b5938
Bug 453411 - "Assertion failure: !cx->onTrace" with yield string (r=gal).
2008-09-16 14:00:02 +01:00
Ben Newman
3a8f74e2d8
Bug 446584 - NodeIterator doesn't forward exception properly; r=(jonas + jst) sr=jst
2008-09-16 13:47:47 +02:00
Andreas Gal
70d28c8730
Backed out changeset 61b9209c186f
2008-09-15 19:59:06 -07:00
brendan
663c6aeb04
test_property_cache_direct_slot forgot to insist on a direct slot for get ops (453249, r=gal).
2008-09-15 19:40:43 -07:00