Commit Graph

68835 Commits

Author SHA1 Message Date
Brian Hackett
417f1e64b9 [INFER] Remove on stack recompilation, allow removed on stack JIT frames to rejoin into the interpreter, bug 650163. 2011-05-09 07:12:47 -07:00
Brian Hackett
a47edd60c2 [INFER] Allow call inlining and LICM to work together, bug 653962. 2011-05-05 13:59:29 -07:00
Brian Hackett
3e59ff5829 [INFER] Clear f.scratch indicator value on all return paths from CompileFunction, bug 653980. 2011-05-01 17:59:37 -07:00
Brian Hackett
f6366f7596 [INFER] Watch out for Invoke called on dummy frames when deciding to use a new type for the result, bug 653262. 2011-05-01 17:45:53 -07:00
Brian Hackett
052373f8bb [INFER] Assume double types for entries with empty type sets being merged into double phi nodes, bug 653249. 2011-05-01 17:38:05 -07:00
Brian Hackett
d868b00326 [INFER] Mark INCELEM opcodes accessing non-integer properties as producing unknown values, bug 653243. 2011-05-01 16:58:01 -07:00
Brian Hackett
b7e3e5433b [INFER] LICM for accesses on definite properties, bug 653962. 2011-05-01 16:31:14 -07:00
Brian Hackett
c54f0f760a [INFER] Add read barrier for shapes with non-standard getters, bug 653639. 2011-04-30 19:42:58 -07:00
Brian Hackett
7151aca829 [INFER] Increase number of fixed slots for objects with more properties accessed than direct accesses, bug 649376. 2011-04-30 18:45:01 -07:00
Brian Hackett
0abb7dc501 [INFER] Mark type objects as unknown when splicing in a prototype with unknown properties, bug 653639. 2011-04-30 18:19:35 -07:00
Brian Hackett
b6adf3132e [INFER] Understand types of window objects, bug 653639. 2011-04-30 17:53:40 -07:00
Brian Hackett
838352f9db Merge TM -> JM 2011-04-28 13:02:47 -07:00
Brian Hackett
f13ebb4bef [INFER] Analyses for eliminating integer overflow guards, bug 652520. 2011-04-27 23:28:54 -07:00
Brian Hackett
29bff816ec [INFER] Don't use varTypes in compiler with inference disabled. 2011-04-27 07:07:38 -07:00
Paul Biggar
e4d6748cc4 Bug 642772: Don't recreate a class during enumeration, if it has been deleted (r=bhackett)
In SM, classes are lazily resolved. If we detect that a class about to be used
has not yet been resolved, then we resolve it. However, the way that we decided
that they were resolved was broken. If the global object had a String property,
then it had been resolved. So what happened when we deleted the String
property? Well, it got resolved again.

Instead of using the String property of the global object, we now use the
contructor slot on the global object. This works fine for String, but some
classes don't have a constructor, like Math and JSON. For those classes, we set
the constructor slot to True. In either case, we can now tell that a class is
resolved if the constructor slot in not Undefined.
2011-04-27 04:13:56 -07:00
Brian Hackett
28d7599a5f [INFER] Only convert known ints when fixing doubles before branching, bug 652590. 2011-04-26 23:28:39 -07:00
Brian Hackett
179f1102a9 [INFER] Rejoin from recompilations triggered by CompileFunction, bug 646267. 2011-04-26 22:07:52 -07:00
Brian Hackett
af83908117 [INFER] Propagate SSA stack eagerly to targets in switch and try blocks, bug 652646. 2011-04-26 14:32:52 -07:00
Brian Hackett
9ca69400c4 [INFER] Don't track SSA values for locals in scripts containing 'with', bug 652422. 2011-04-24 09:26:37 -07:00
Brian Hackett
acfda25b5b [INFER] Don't use untracked entries when converting doubles back to integers, bug 652305. 2011-04-24 08:40:19 -07:00
Brian Hackett
20530cc76c [INFER] Root dense array elements during conversion to slow array, bug 649152. 2011-04-24 07:56:56 -07:00
Brian Hackett
7d4e3955e6 [INFER] Restore fixed double types in fallthrough before next opcode, bug 652305. 2011-04-24 06:59:28 -07:00
Brian Hackett
6386e77480 [INFER] Allow empty SSA stack values for scripts with switch and try blocks, bug 652314. 2011-04-23 22:36:43 -07:00
Brian Hackett
f8f9708f00 [INFER] Fix both double and integer types before branching, bug 652305. 2011-04-23 22:06:34 -07:00
Brian Hackett
bab839a4ee [INFER] Drop type information for GNAME ops in debug-mode compartments, bug 652142. 2011-04-23 21:26:55 -07:00
Brian Hackett
e84dfe0914 [INFER] Fix bogus assert, bug 651827. 2011-04-22 11:12:09 -07:00
Brian Hackett
43c276be4a [INFER] Bytecode SSA analysis, bug 650715. 2011-04-22 07:59:45 -07:00
Matthew Draper
3eb02c1b43 Bug 564577 - __noSuchMethod__ no longer invoked for defined non-function properties (r=igor) 2011-04-22 04:38:24 +09:30
Brian Hackett
07ffac5147 [INFER] Don't scan values above obj->getDenseArrayInitializedLength. 2011-04-21 07:12:08 -07:00
Brian Hackett
fe5aeaab19 Merge TM -> JM 2011-04-20 11:37:46 -07:00
Jan de Mooij
2c7be5f6d4 [INFER] Don't update initialized length when it's smaller than length, bug 651451 2011-04-20 19:43:30 +02:00
Gregor Wagner
7d8bb32bb8 Bug 651193 - fix delayedOutOfMemory in js_InvokeOperationCallback. r=gal 2011-04-20 09:28:57 -07:00
Jan de Mooij
d57740905e [INFER] Update initialized length in array_pop_dense, bug 651451. r=bhackett 2011-04-20 18:10:59 +02:00
Jan de Mooij
664872ea9d [INFER] Push constant value in jsop_typeof, bug 643733. r=bhackett 2011-04-20 18:10:08 +02:00
Brian Hackett
6c403a105c [INFER] Guard property's existence before calling clearTimeout, bug 647626. 2011-04-20 07:15:06 -07:00
Brian Hackett
a0acf1dddd [INFER] Don't inline calls from heavyweight or eval scripts, bug 651209. 2011-04-20 07:06:59 -07:00
Brian Hackett
03a64e5252 [INFER] Don't LICM array lengths in scripts which have had bounds checks fail, bug 651155. 2011-04-19 22:20:43 -07:00
Brian Hackett
818fc87394 [INFER] Handle copies of loop invariant temporaries in ImmutableSync, bug 651147. 2011-04-19 21:55:16 -07:00
Brian Hackett
9b9280fc81 [INFER] Reload from adjusted return address when rejoining from lowered call or apply, bug 651119. 2011-04-19 21:33:04 -07:00
Brian Hackett
2f7eb61a86 [INFER] Remove compound JSOP*PROP opcodes, bug 647626. 2011-04-19 15:24:09 -07:00
Brian Hackett
68b35100e1 Merge TM -> JM 2011-04-19 08:23:41 -07:00
Brian Hackett
a6c4770037 [INFER] Add loop tail lifetimes when variables are killed in the middle of loops, bug 643805. 2011-04-19 06:39:49 -07:00
Leon Sha
f02a8fab29 Re-landing. Bug 610323 - [TraceMonkey] Implement Jaegermonkey Sparc back-end. Part II. r=dvander. 2011-04-19 01:27:50 -07:00
Jan de Mooij
fcdff6a374 Bug 506774 - Update our copy of the v8 benchmark to v8-v6. rs=jwalden 2011-04-19 10:17:06 +02:00
Brian Hackett
8f7dcba656 [INFER] Always include rejoin points for GetProp stub calls in JSOP_LENGTH, bug 650658. 2011-04-18 23:18:58 -07:00
Brian Hackett
bd1fe87c70 [INFER] Transform primitive 'this' for type set pushed by compiler in intermediate GETTHISPROP entry, bug 650663. 2011-04-18 22:39:42 -07:00
Brian Hackett
0c5ad9a148 [INFER] Don't optimize LENGTH and PROP accesses on known non-objects, bug 650662. 2011-04-18 22:08:34 -07:00
Jason Orendorff
7e584f054f Test for bug 650753. no_r=me, passing tests do not need review.
--HG--
extra : rebase_source : e1e577927e2ac24b8ebcde2b31a945d55a096f8f
2011-04-18 18:04:36 -05:00
Leon Sha
4744fa47e3 Backout 91eaf74fff1e. 2011-04-18 20:53:24 -07:00
Leon Sha
c3cb41cc19 Bug 610323 - [TraceMonkey] Implement Jaegermonkey Sparc back-end. Part II. r=dvander. 2011-04-18 20:17:21 -07:00