Opened 16 years ago
Last modified 15 years ago
#45 new enhancement
Support for passing unboxed arguments to local functions
Reported by: | ehuelsmann | Owned by: | ehuelsmann |
---|---|---|---|
Priority: | major | Milestone: | unscheduled |
Component: | compiler | Version: | |
Keywords: | performance | Cc: | |
Parent Tickets: |
Description
It would save a great deal of boxing/unboxing, if local functions and self-calling recursive functions could pass and return unboxed values.
Although passing unboxed values from the outside world is generally considered 'dependency on implementation details', recursive calls and calls to local functions should be able to depend on this: they get recompiled upon function redefinition anyway.
One of the reasons for this ticket: with the improved type-derivations in Jan/Feb? 2009, the cl-bench TAK test deteriorated: more boxing was performed. With this change, the (un)boxing can be eliminated, except for the first call (from the outside world).
Change History (3)
comment:1 Changed 16 years ago by
comment:2 Changed 15 years ago by
Keywords: | performance added |
---|
comment:3 Changed 15 years ago by
Milestone: | → unscheduled |
---|
One way to have recursive self-calls be unboxed is to have 2 java functions: 1 to call from the outside world, the other for the function to call itself with unboxed arguments.