Commit Graph

240919 Commits

Author SHA1 Message Date
Brian Hackett
4801799fc6 [INFER] Speculate that all ELEM accesses are on integers, use monitoring for strings, bug 642412. 2011-03-18 10:30:21 -07:00
Brian Hackett
e7c53daa52 [INFER] Improve type handler precision for Array.{slic,pop,shift}, bug 642412. 2011-03-18 08:17:22 -07:00
Brian Hackett
1108f54730 [INFER] Use the 'this' array type as the result in Array.concat, bug 642412. 2011-03-18 07:56:50 -07:00
Brian Hackett
789d49cbcf [INFER] Monitor calls to non-functions dynamically, bug 642412. 2011-03-17 23:52:10 -07:00
Jan de Mooij
8f9675a5a1 [INFER] Optimize JSOP_NEG on known integers, bug 640293. r=bhackett 2011-03-17 21:40:40 -07:00
Brian Hackett
6b4af544cb [INFER] Infer arithmetic on objects as producing ints, bug 642412. 2011-03-17 21:34:36 -07:00
Brian Hackett
236d9c0de4 [INFER] Fix corruption-inducing typo, bug 642159. 2011-03-17 18:43:09 -07:00
Brian Hackett
138fd6109b [INFER] Don't set script->isCachedEval until it is on the compartment's scriptsToGC, bug 642422. 2011-03-17 12:22:57 -07:00
Brian Hackett
9530ed9e7c [INFER] Add recompilation rejoin points for GETELEM/CALLELEM, bug 642405. 2011-03-17 12:07:48 -07:00
Brian Hackett
33969c35e9 [INFER] Avoid unnecessary cast, bug 642319. 2011-03-17 11:57:32 -07:00
Brian Hackett
b875c13ba0 [INFER] Fix bogus assert when restoring analysis types, bug 642254. 2011-03-17 11:54:06 -07:00
Brian Hackett
2816a7707c [INFER] Don't infer array-ness of types from prototype JSObject, bug 642248. 2011-03-17 11:43:46 -07:00
Brian Hackett
ec890b5198 [INFER] Don't bootstrap the __proto__ of the global or Function.prototype if their __proto__ has mutated, bug 642206. 2011-03-17 10:48:02 -07:00
Brian Hackett
f69a0060dd [INFER] Use different shapes for functions with different scripts/types, share types better for cloned functions, bug 641525. 2011-03-17 09:42:56 -07:00
Brian Hackett
df1cfe9a7e [INFER] Remove cruft for handling overflowing INCNAME/etc. ops, bug 642164. 2011-03-16 22:25:32 -07:00
Brian Hackett
f8b853558b [INFER] Add recompilation rejoin points for SETELEM, bug 641535. 2011-03-16 22:08:14 -07:00
Brian Hackett
c680be21c9 [INFER] Mark unexpected undefined result for JSON.stringify, bug 642161. 2011-03-16 19:26:49 -07:00
Brian Hackett
5c3642f6c0 [INFER] Always ensure obj->numSlots() >= obj->slotSpan() after its scope has been initialized, bug 642326. 2011-03-16 18:59:20 -07:00
Brian Hackett
f07e7c981f [INFER] Use unique shapes when cloning objects, bug 619433. 2011-03-16 18:33:46 -07:00
Brian Hackett
f5e8d2edbd [INFER] Spot fix for shapes not being marked when a child is held by AutoShapeRooter, bug 642209. 2011-03-16 18:24:20 -07:00
Brian Hackett
293ec73b3d [INFER] Sweep cloned type sets in call ICs before destroying the objects they reference, bug 641491. 2011-03-16 16:17:29 -07:00
Jan de Mooij
941c865d9f [INFER] Fix type handler for timeout function, bug 642247. r=bhackett 2011-03-16 15:57:41 -07:00
Brian Hackett
f9b048e286 [INFER] Compute PC for interpreted frames which failed to compile, bug 641225. 2011-03-16 15:56:43 -07:00
Jan de Mooij
084ccc1d25 [INFER] Don't call syncData for known doubles, bug 642198. r=bhackett 2011-03-16 15:29:04 -07:00
Brian Hackett
6959323b8e [INFER] Clear native return address for interpreter frames, bug 641225. 2011-03-16 15:22:51 -07:00
Jan de Mooij
ae5397c993 [INFER] Add overflow check for Math.pow(1, x), bug 642154. r=bhackett 2011-03-16 12:17:06 -07:00
Brian Hackett
db525548f6 Merge. 2011-03-16 12:09:30 -07:00
Brian Hackett
1b7e6f5157 [INFER] Fix broken jstests, bug 620599. 2011-03-16 12:03:47 -07:00
Brian Hackett
67d6cf28c5 [INFER] Fix jsop_instanceof on known object, bug 642174. 2011-03-16 10:41:44 -07:00
Paul Biggar
ebf89f996a [INFER] Bug 642059 - Add -n flag to JITFLAGS, turning on type inference during jit-tests (r=bhackett) 2011-03-16 10:03:02 -07:00
Paul Biggar
6f6d2799a6 [INFER] Bug 642062 - Add type annotations for jitstats object (r=bhackett) 2011-03-16 10:03:00 -07:00
Brian Hackett
60675bc44a [INFER] Don't share shapes between objects with different types, bug 620599. 2011-03-16 10:02:19 -07:00
Brian Hackett
e9a256f847 [INFER] Handle undefined values added by String.split, bug 620599. 2011-03-16 07:40:58 -07:00
Brian Hackett
3b88d7085b [INFER] Track multiple types when monitoring SETPROP/SETNAME and calls, bug 641714. 2011-03-15 23:50:44 -07:00
Brian Hackett
9cf0c8606c [INFER] Add MIC for type checking this/arguments at JITScript invokeEntry, bug 641714. 2011-03-15 18:22:23 -07:00
Brian Hackett
ccbb28376d [INFER] Factor TypeSet* out of FrameEntry, bug 641714. 2011-03-15 15:35:01 -07:00
Brian Hackett
c120600f62 [INFER] Make inference spew digestible by scripts, bug 641943. 2011-03-15 13:42:24 -07:00
Brian Hackett
c559b2f9d2 [INFER] Use new type objects when the result of 'new' is assigned to a .prototype, bug 641714. 2011-03-15 00:17:07 -07:00
Brian Hackett
584907e527 Merge TM -> JM 2011-03-14 22:41:04 -07:00
Brian Hackett
2a9d69a52a [INFER] Mark values pushed by overflowing object inc opcodes as doubles, bug 641741. 2011-03-14 22:26:25 -07:00
Jason Orendorff
8730d5b197 Backed out changeset 39de74c74b20, which is causing the browser to leak windows. 2011-03-14 17:37:04 -05:00
Jason Orendorff
28d3dae7d9 Bug 561359 - Change JSOP_LAMBDA to apply the method optimization deterministically. In particular, it no longer depends on whether enclosing Blocks have been reified. This prevents incorrect behavior and assertions when a JSOP_LAMBDA, JSOP_INITMETHOD pair apply the method optimization once, populating the property cache, but later the same JSOP_LAMBDA instruction does not (under the old code) apply the optimization. With this patch, if JSOP_LAMBDA pushes the uncloned function once, it always will. r=brendan. 2011-03-14 15:54:34 -05:00
Brian Hackett
87b2e972ae [INFER] Don't try to infer 'new' objects for non-compileAndGo scripts, bug 641231. 2011-03-13 22:35:51 -07:00
Brian Hackett
c4d60dca1b [INFER] Handle DEFAULTX and CASEX during inference, bug 641235. 2011-03-13 22:05:24 -07:00
Brian Hackett
8112da5281 [INFER] Only add result for markTypeCallerUnexpected when the caller is at a callsite, bug 641229. 2011-03-13 21:59:03 -07:00
Brian Hackett
5825dd19c6 [INFER] Mark all cross-compartment iterations as producing unknown values, bug 641224. 2011-03-13 21:40:55 -07:00
Brian Hackett
74c2720cf5 [INFER] Watch out computing 'new' value for functions given a non-function type via setting __proto__, bug 640993. 2011-03-13 21:29:30 -07:00
Brian Hackett
8d22cd5b3b [INFER] Mark result of 'new Function.prototype' as unknown, bug 619338. 2011-03-13 21:04:43 -07:00
Brian Hackett
e5b7a67b24 [INFER] Add recompilation rejoin calls in JSOP_GETELEM/JSOP_CALLELEM, bug 641269. 2011-03-13 20:46:30 -07:00
Brian Hackett
4abe5eedb9 [INFER] Fix jit-test -mna failures, also call site rejoining at GETPROP, bug 639508. 2011-03-13 20:35:49 -07:00