[patch] fix stinst compilation of #ifFalse:#ifTrue:

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

[patch] fix stinst compilation of #ifFalse:#ifTrue:

S11001001
smalltalk--backstage--2.2--patch-55
    fix stinst compilation of #ifFalse:#ifTrue:

Took a break from some Java stuff I'm working on, and found this when I
wrote a massive ifFalse block followed by a tiny ifTrue block.  The
wrong size was used in the optimized compilation, so

    condition ifFalse: [lots of code] ifTrue: [little code]

would jump way past the end after executing the ifFalse: block, making
for all sorts of madness.

This also includes an unrelated tiny NEWS fix.

--
;;; Stephen Compall ** http://scompall.nocandysw.com/blog **
"Peta" is Greek for fifth; a petabyte is 10 to the fifth power, as
well as fifth in line after kilo, mega, giga, and tera.
  -- Lee Gomes, performing every Wednesday in his tech column
     "Portals" on page B1 of The Wall Street Journal

_______________________________________________
help-smalltalk mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/help-smalltalk

compile-iffalseiftrue.diff (1K) Download Attachment
signature.asc (196 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [patch] fix stinst compilation of #ifFalse:#ifTrue:

Paolo Bonzini
Stephen Compall wrote:

> smalltalk--backstage--2.2--patch-55
>     fix stinst compilation of #ifFalse:#ifTrue:
>
> Took a break from some Java stuff I'm working on, and found this when I
> wrote a massive ifFalse block followed by a tiny ifTrue block.  The
> wrong size was used in the optimized compilation, so
>
>     condition ifFalse: [lots of code] ifTrue: [little code]
>
> would jump way past the end after executing the ifFalse: block, making
> for all sorts of madness.
>
> This also includes an unrelated tiny NEWS fix.

Applied, thanks.

Paolo


_______________________________________________
help-smalltalk mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/help-smalltalk