Fix >r/r> optimization

slava 2006-11-04 08:01:28 +00:00
parent 40786556b3
commit 3af2f3443f
1 changed files with 12 additions and 6 deletions

View File

@ -42,13 +42,19 @@ M: #shuffle optimize-node*
! #>r
M: #>r optimize-node*
[ dup node-in-d empty? swap node-successor #r>? or ]
prune-if ;
dup node-successor #r>? [
node-successor node-successor
] [
[ node-in-d empty? ] prune-if
] if ;
! #r>
M: #r> optimize-node*
[ dup node-in-r empty? swap node-successor #>r? or ]
prune-if ;
dup node-successor #>r? [
node-successor node-successor
] [
[ node-in-r empty? ] prune-if
] if ;
! #push
M: #push optimize-node*