Commit Graph

93 Commits

Author SHA1 Message Date
Brian Hackett
b0ae81df4a [INFER] Apply arguments and script review comments, bug 657412. 2011-06-06 08:32:41 -07:00
Brian Hackett
de9c3c81f6 [INFER] Apply stack review comments, bug 657412. 2011-06-05 22:39:45 -07:00
Brian Hackett
9ee5994b69 [INFER] Apply object review changes, bug 657412. 2011-06-03 20:48:16 -07:00
Brian Hackett
82abccdd14 [INFER] Move inference methods out of JSContext, bug 657412. 2011-06-02 10:40:27 -07:00
Brian Hackett
621ab68f21 [INFER] Optimize arguments accesses, bug 658638. 2011-05-26 12:28:19 -07:00
Brian Hackett
1e358b51f6 Merge TM -> JM 2011-05-22 08:59:06 -07:00
Brian Hackett
1202ff8417 [INFER] Don't rollback properties when clearing new scripts for objects which have finished initialization, bug 658777. 2011-05-21 07:44:54 -07:00
Brian Hackett
f1b91c8773 [INFER] Analysis and compiler improvements for polymorphic call sites, bug 653962. 2011-05-20 19:33:06 -07:00
Brian Hackett
b87d5cbe5d [INFER] Recompile inline parents of scripts when adding type barriers at new sites, bug 658211. 2011-05-19 13:56:11 -07:00
Brian Hackett
79674e33bc [INFER] Audit uses of PC in analysis and inference for UntrapOpcode, bug 657975, bug 657979, bug 657984. 2011-05-19 10:09:17 -07:00
Brian Hackett
61c6f0cd96 Read barriers for property accesses, bug 656920. 2011-05-17 20:29:41 -07:00
Brian Hackett
98763bc2cb [INFER] Move addTypeProperty barriers under obj->setProperty, obj->defineProperty, bug 619693. 2011-05-16 16:15:37 -07:00
Brian Hackett
9074d3578c [INFER] Match js_StringIsIndex in termination condition for MakeTypeId, bug 657247. 2011-05-15 21:27:12 -07:00
Brian Hackett
2d27a22974 [INFER] Allow read barriers at property accesses and call sites, bug 656920. 2011-05-14 05:45:13 -07:00
Brian Hackett
f4e191294e [INFER] Improved robustness and tracking of 'new' object properties across scripts, bug 653962. 2011-05-12 20:07:23 -07:00
Brian Hackett
543a5fc8ef [INFER] Don't analyze types in compileAndGo scripts with a cleared global, bug 619433. 2011-05-12 17:59:28 -07:00
Brian Hackett
82629392f1 [INFER] Inlined natives for Array.{push,pop}, object flag cleanup, bug 653962. 2011-05-10 23:33:30 -07:00
Brian Hackett
3f7deb9632 [INFER] Need to call ensureVarTypes before slotTypes, bug 653395. 2011-05-09 10:27:18 -07:00
Brian Hackett
c280d034f7 Merge. 2011-05-09 07:28:32 -07:00
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
Paul Biggar
b5c783f971 [INFER] Remove calls to js_free, js_calloc, etc. Also stop checking for this until closer to merge time. 2011-05-04 04:49:14 -07:00
Brian Hackett
838352f9db Merge TM -> JM 2011-04-28 13:02:47 -07:00
Brian Hackett
43c276be4a [INFER] Bytecode SSA analysis, bug 650715. 2011-04-22 07:59:45 -07:00
Brian Hackett
68b35100e1 Merge TM -> JM 2011-04-19 08:23:41 -07:00
Brian Hackett
eaf164a1c9 [INFER] Retest hoisted bounds checks after stub calls, bug 649693. 2011-04-14 21:59:32 -07:00
Brian Hackett
21fd2d8254 [INFER] Direct instance property accesses, bug 649376. 2011-04-12 20:39:16 -07:00
Brian Hackett
2c80c88ba3 [INFER] Direct global name accesses, bug 648994. 2011-04-11 20:10:46 -07:00
Brian Hackett
52950bca44 [INFER] Loop invariant code motion for array slot pointers, bug 618692. 2011-04-07 16:12:37 -07:00
Brian Hackett
4226ea1e6e [INFER] Array bounds check hoisting, cleanup, bug 618690. 2011-04-05 18:12:03 -07:00
Brian Hackett
8b7888dd66 Merge TM -> JM 2011-04-01 19:57:28 -07:00
Brian Hackett
a1f196a052 [INFER] More fixes for stock JM behavior, bug 647048. 2011-04-01 17:26:34 -07:00
Brian Hackett
0efc0215e7 [INFER] Track currently compiled script on the TypeCompartment, 646587. 2011-03-30 14:10:16 -07:00
Brian Hackett
74bba0be53 [INFER] Inline scripted calls, bug 639099. 2011-03-26 19:07:13 -07:00
Brian Hackett
c834eae239 [INFER] Don't follow scripted caller across compartments, bug 643670. 2011-03-22 15:29:41 -07:00
Jan de Mooij
c633bccba3 [INFER] Inline some native functions, bug 621961. r=bhackett 2011-03-21 22:55:27 -07:00
Brian Hackett
d6a84ff015 [INFER] Ensure that TypeObject->unknownProperties implies hasSpecialEquality, bug 619433. 2011-03-20 11:54:33 -07:00
Brian Hackett
f9a4f63af8 [INFER] Fast path for object equality, track equality hooks in type objects, bug 619592. 2011-03-19 16:53:07 -07:00
Brian Hackett
f5cc631abf [INFER] Infer arithmetic on objects as producing ints, bug 642412. 2011-03-17 21:34:36 -07:00
Brian Hackett
97e8452de3 [INFER] Fix corruption-inducing typo, bug 642159. 2011-03-17 18:43:09 -07:00
Brian Hackett
be6137ab0f [INFER] Don't infer array-ness of types from prototype JSObject, bug 642248. 2011-03-17 11:43:46 -07:00
Brian Hackett
bbc5f75d52 [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
d10d0da404 [INFER] Track multiple types when monitoring SETPROP/SETNAME and calls, bug 641714. 2011-03-15 23:50:44 -07:00
Brian Hackett
57802e99bd [INFER] Add MIC for type checking this/arguments at JITScript invokeEntry, bug 641714. 2011-03-15 18:22:23 -07:00
Brian Hackett
f1d2dcfc3d [INFER] Make inference spew digestible by scripts, bug 641943. 2011-03-15 13:42:24 -07:00
Brian Hackett
0f8152b6ef [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
bcdddfd208 [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
ee5b69e7a2 [INFER] Use ICs on monitored calls, reenable APPLY optimizations, bug 621942. 2011-03-12 21:59:46 -08:00
Brian Hackett
300a849c3e [INFER] Use PICs on monitored SETNAME and SETPROP, bug 621937. 2011-03-11 16:29:38 -08:00
Brian Hackett
5d55f075a3 [INFER] Compute types for singleton/JSON arrays and objects, bug 639263. 2011-03-10 16:17:39 -08:00