Closed Bug 864928 Opened 11 years ago Closed 11 years ago

Remove ScriptAnalysis::analyzeTypes (for real this time)

Categories

(Core :: JavaScript Engine, defect)

Other Branch
x86
macOS
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla26

People

(Reporter: bhackett1024, Assigned: bhackett1024)

References

Details

Attachments

(1 file)

Bug 804676 removed the main consumer of the type information produced by the constraints added in analyzeTypes().  There are a few remaining uses, however.  JM+TI still uses analyzeTypes, and the type info is used when analyzing definite properties in new scripts.  When these are no longer dependencies, analyzeTypes and the associated machinery can be removed entirely.
Blocks: 827396
Depends on: 906788
Attached patch patch (deleted) — Splinter Review
7 files changed, 21 insertions(+), 2442 deletions(-)
Attachment #798583 - Flags: review?(jdemooij)
Comment on attachment 798583 [details] [diff] [review]
patch

Review of attachment 798583 [details] [diff] [review]:
-----------------------------------------------------------------

Beautiful!

::: js/src/jsanalyze.h
@@ +836,3 @@
>          bool hasPropertyReadTypes;
>          uint32_t propertyReadIndex;
>          TypeInferenceState(JSContext *cx)

I think you can remove TypeInferenceState as well.
Attachment #798583 - Flags: review?(jdemooij) → review+
Is the plan to eventually make the arguments analysis work on the MIR as well? Once we do that we can remove the SSA / lifetime analysis, then we can port IonBuilder to use Baseline's BytecodeAnalysis class (destroyed immediately after compilation) and then we can remove ScriptAnalysis completely, right? Very cool :)
(In reply to Jan de Mooij [:jandem] from comment #3)
> Is the plan to eventually make the arguments analysis work on the MIR as
> well? Once we do that we can remove the SSA / lifetime analysis, then we can
> port IonBuilder to use Baseline's BytecodeAnalysis class (destroyed
> immediately after compilation) and then we can remove ScriptAnalysis
> completely, right? Very cool :)

Yes, this is the plan.  No ETA at the moment since it's not really blocking anything --- I did bug 906788 to unblock work on running IonBuilder off thread.
https://hg.mozilla.org/mozilla-central/rev/b2ad58e8b248
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla26
Assignee: general → bhackett1024
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: