[squeak-dev] The Trunk: Tests-eem.96.mcz
Eliot Miranda
eliot.miranda at gmail.com
Sun Oct 24 04:22:10 UTC 2010
Hi Levente,
On Sat, Oct 23, 2010 at 8:44 PM, Levente Uzonyi <leves at elte.hu> wrote:
> On Sun, 10 Oct 2010, commits at source.squeak.org wrote:
>
> Eliot Miranda uploaded a new version of Tests to project The Trunk:
>> http://source.squeak.org/trunk/Tests-eem.96.mcz
>>
>> ==================== Summary ====================
>>
>> Name: Tests-eem.96
>> Author: eem
>> Time: 9 October 2010, 5:50:13.075 pm
>> UUID: 8800404e-9468-4032-bee6-fe8400f7334a
>> Ancestors: Tests-eem.95
>>
>> Reduce DecompilerTest failures to three legitimate failures.
>> Do so by restricting tests to base classes in 4.1, by using
>> deocmpileWithTempNames: to eliminate temp orderig issues, and by adding a
>> few expected failures (but eliminating many more).
>>
>
> I still get 5 errors. Methods which have a variable declared in an
> optimized loop's block and that variable is also used by a real block have
> to be recompiled. I came up with the following script:
>
> #(
> (Command veryDeepFixupWith:)
> (Installer reportFor:page:on:)
> (Player veryDeepFixupWith:)
> (PNGReadWriter processInterlaced)
> (SHMCClassDefinition withAllSuperclasses)
> (SHMCClassDefinition allInstVarNames)) do: [ :each |
> Smalltalk at: each first ifPresent: [ :class |
> (class includesSelector: each second) ifTrue: [
> class recompile: each second ] ] ].
>
> This is ok for the release and images with unloaded packages (core), but
> it's not sufficient for images which have external packages loaded. Is there
> a way to detect such methods without decompiling all methods in the image?
>
Yes, but I don't think it's much easier that the decompile approach. The
fix would be to use the VariableScopeFinder visitor in the decompiler to
localize temps to optimized blocks. I guess doing this always, rather than
only when there's a conflict would be ok (it would certainly be easier to
code). What do you think?
best
Eliot
>
>
> Levente
>
>
> snip
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20101023/c2388a1e/attachment.htm
More information about the Squeak-dev
mailing list
|