|Dynamic Binding email@example.com (Rodrigo Augusto B. Ferreira) (2000-01-15)|
|Re: Dynamic Binding firstname.lastname@example.org (2000-01-19)|
|Re: Dynamic Binding email@example.com (2000-01-19)|
|Re: Dynamic Binding firstname.lastname@example.org (Erik Ernst) (2000-01-19)|
|From:||"Rodrigo Augusto B. Ferreira" <email@example.com>|
|Date:||15 Jan 2000 14:39:35 -0500|
|Organization:||Institute of Computing, University of Campinas, SP, Brazil|
|Keywords:||linker, question, OOP|
The best known technique to implement dynamic binding is using method
tables. However the use of method tables inhibits some compiling
optimizations, for instance, method inlining of virtual calls requires
global DFA and suffers from conservatism.
I was wondering if using dynamic type resolution, by compiling a
lookup switch statement for each virtual call, would be valuable to
increase the possibility of optimization.
I know that, although this technique transforms virtual calls in
switch + static calls, it has some weak points like being slower and
requiring the type hierarchy to be known at compile time. But I
suspect that in some cases it may be worth trying.
Any pointers and oppinions are welcome.
Rodrigo Augusto B. Ferreira
Computer Science Graduate, UFMG/BRAZIL
Return to the
Search the comp.compilers archives again.