Tim,
Tim Rowledge wrote:
Stephan Rudlof sr@evolgo.de is widely believed to have written:
Squeakers,
here is the next version of my draft.
Quick suggestion regarding your last section on the upgrading process; I'd strongly suggest using the SystemTracer to build an image for your updated VM. This allows you to recompile any method using blocks as you write it out, without messing up the running image. Better yet, it makes a nice clean way to test your new VM with the simulator before you even bother to generate the C code and saves all that tacky messing with gdb/MW/VC++/!ddt/whatever-demented-debugger-your-machine-has. I designed and implemented the cleaner CompiledMethod format that way and it was much easier.
Thanks for the hint! But at first I have to get the simulator running... (there have been some bug reports regarding this, but I'm hopeful (have just tried once long time ago))
Since I hope to get back to a 3.1 compatible version of the CM change soon, I could probably combine any changes you need with the same Junta.
I haven't taken a look onto your changes so far, but I think I should! One of the next steps...
Until now I've 'just' refined the concept: there are big changes from v0.4 -> v0.5!
You might also like to consider having separate Method objects for the bytecode parts of the Closures;
Doesn't seem to be necessary, but...
Ian has suggested this might make a useful improvement for the jitter
Do you know, why this could be faster?
Greetings,
Stephan
tim
Tim Rowledge, tim@sumeru.stanford.edu, http://sumeru.stanford.edu/tim "Bother," said Pooh, as Simon stole his Jet calender.
Stephan Rudlof wrote:
Tim,
Tim Rowledge wrote:
Stephan Rudlof sr@evolgo.de is widely believed to have written:
Squeakers,
here is the next version of my draft.
Quick suggestion regarding your last section on the upgrading process; I'd strongly suggest using the SystemTracer to build an image for your updated VM. This allows you to recompile any method using blocks as you write it out, without messing up the running image. Better yet, it makes a nice clean way to test your new VM with the simulator before you even bother to generate the C code and saves all that tacky messing with gdb/MW/VC++/!ddt/whatever-demented-debugger-your-machine-has. I designed and implemented the cleaner CompiledMethod format that way and it was much easier.
Thanks for the hint! But at first I have to get the simulator running... (there have been some bug reports regarding this, but I'm hopeful (have just tried once long time ago))
Since I hope to get back to a 3.1 compatible version of the CM change soon, I could probably combine any changes you need with the same Junta.
I haven't taken a look onto your changes so far, but I think I should! One of the next steps...
Until now I've 'just' refined the concept: there are big changes from v0.4 -> v0.5!
You might also like to consider having separate Method objects for the bytecode parts of the Closures;
Doesn't seem to be necessary, but...
Ian has suggested this might make a useful improvement for the jitter
Do you know, why this could be faster?
Is the cutting of the CompiledMethod's in smaller pieces an advantage for a jitter?
Greetings,
Stephan
tim
Tim Rowledge, tim@sumeru.stanford.edu, http://sumeru.stanford.edu/tim "Bother," said Pooh, as Simon stole his Jet calender.
-- Stephan Rudlof (sr@evolgo.de) "Genius doesn't work on an assembly line basis. You can't simply say, 'Today I will be brilliant.'" -- Kirk, "The Ultimate Computer", stardate 4731.3
Stephan Rudlof sr@evolgo.de is widely believed to have written:
Ian has suggested this might make a useful improvement for the jitter
Do you know, why this could be faster?
Is the cutting of the CompiledMethod's in smaller pieces an advantage for a jitter?
I actually don't remember if he even offered a particular reason, just that he mentioned it would be helpful. Just guessing, but I could imagine that if you have a Closure object with its own method pointer, it might be simpler and quicker to locate the start point (since you'd know it was 0!) than by finding the owner method and going via an offset.
tim
squeak-dev@lists.squeakfoundation.org