Closed Bug 563146 Opened 14 years ago Closed 6 years ago

Set native method invocation pointers at resolve time instead of verify time

Categories

(Tamarin Graveyard :: Virtual Machine, defect, P2)

defect

Tracking

(Not tracked)

RESOLVED WONTFIX
Q3 12 - Dolores

People

(Reporter: edwsmith, Unassigned)

References

Details

(Whiteboard: has-patch)

Attachments

(1 file)

The first branch in verify() handles native methods by setting up their invocation pointers.  That's all that has to be done, and the only information needed is for resolveSignatures to have already been called.

avantages:
- cleans this cruft out of the verify method, which is too big already.
- any early bound method has already been resolved.  if we early bind to a final native method (e.g. Math functions), then we will have their final invocation address and can call the code directly; no indirect call required.

risks:
- can we guarantee f.resolveSignatures will have been called before the first function call?  if not, we still need a trampoline.  Note: it's *not* okay to cause resolveSignatures to be called earlier than before, to establish this guarantee.
Blocks: 557926
Depends on: 563119
Flags: flashplayer-qrb+
Priority: -- → P2
Target Milestone: --- → flash10.2
Snapshot work in progress form April.  needs rebasing, probably easiest to do visually from the diff rather than an actual merge.
Assignee: nobody → edwsmith
Note: this probably is a *very* marginal improvement to startup time, but adding the dependency is useful for keeping track of the bug, since many the other bugs dealing with thunks and invocation stubs are also tracked by bug 511873.
Blocks: 511873
Blocks: 583955
I am making this block OSR because it moves native-method issues out of the verify trampolines.  OSR adds complexity to trampoline management so landing this bug first will help tame the complexity of introducing OSR.
Blocks: OSR
I'm un-blocking OSR again because at this point we need less things blocking OSR, not more.
No longer blocks: OSR
Flags: flashplayer-bug-
Whiteboard: has-patch
Whiteboard: has-patch → has-patch, must-fix-candidate
Target Milestone: Q3 11 - Serrano → Q1 12 - Brannan
Target Milestone: Q1 12 - Brannan → Q2 12 - Cyril
Whiteboard: has-patch, must-fix-candidate → has-patch
Assignee: edwsmith → nobody
Target Milestone: Q2 12 - Cyril → Q3 12 - Dolores
Tamarin is a dead project now. Mass WONTFIX.
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → WONTFIX
Tamarin isn't maintained anymore. WONTFIX remaining bugs.
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: