--- a/BCompiler.st Wed Oct 13 03:41:56 1993 +0100
+++ b/BCompiler.st Wed Oct 27 00:21:59 1993 +0100
@@ -26,7 +26,7 @@
COPYRIGHT (c) 1989 by Claus Gittinger
All Rights Reserved
-$Header: /cvs/stx/stx/libcomp/Attic/BCompiler.st,v 1.4 1993-10-13 02:41:03 claus Exp $
+$Header: /cvs/stx/stx/libcomp/Attic/BCompiler.st,v 1.5 1993-10-26 23:21:59 claus Exp $
'!
!ByteCodeCompiler class methodsFor:'documentation'!
@@ -895,39 +895,41 @@
(aSymbol == #pushOuter1BlockArg) ifTrue:[stackDelta := 1. extra := #index. ^ 43].
(aSymbol == #pushOuter2BlockArg) ifTrue:[stackDelta := 1. extra := #index. ^ 44].
- (aSymbol == #=) ifTrue:[stackDelta := -1. self addLiteral:aSymbol. ^130].
- (aSymbol == #+) ifTrue:[stackDelta := -1. self addLiteral:aSymbol. ^131].
- (aSymbol == #~=) ifTrue:[stackDelta := -1. self addLiteral:aSymbol. ^132].
- (aSymbol == #-) ifTrue:[stackDelta := -1. self addLiteral:aSymbol. ^133].
+ (aSymbol == #=) ifTrue:[lineno := true. stackDelta := -1. self addLiteral:aSymbol. ^130].
+ (aSymbol == #+) ifTrue:[lineno := true. stackDelta := -1. self addLiteral:aSymbol. ^131].
+ (aSymbol == #~=) ifTrue:[lineno := true. stackDelta := -1. self addLiteral:aSymbol. ^132].
+ (aSymbol == #-) ifTrue:[lineno := true. stackDelta := -1. self addLiteral:aSymbol. ^133].
(aSymbol == #class) ifTrue:[self addLiteral:aSymbol. ^134].
- (aSymbol == #x) ifTrue:[self addLiteral:aSymbol. ^106].
- (aSymbol == #y) ifTrue:[self addLiteral:aSymbol. ^107].
- (aSymbol == #width) ifTrue:[self addLiteral:aSymbol. ^108].
- (aSymbol == #height) ifTrue:[self addLiteral:aSymbol. ^109].
- (aSymbol == #origin) ifTrue:[self addLiteral:aSymbol. ^154].
- (aSymbol == #extent) ifTrue:[self addLiteral:aSymbol. ^155].
- (aSymbol == #at:) ifTrue:[stackDelta := -1. self addLiteral:aSymbol. ^135].
- (aSymbol == #at:put:)ifTrue:[stackDelta := -2. self addLiteral:aSymbol. ^136].
- (aSymbol == #bitAnd:) ifTrue:[stackDelta := -1. self addLiteral:aSymbol. ^137].
- (aSymbol == #bitOr:) ifTrue:[stackDelta := -1. self addLiteral:aSymbol. ^138].
- (aSymbol == #plus1) ifTrue:[self addLiteral:#+. ^123].
- (aSymbol == #minus1) ifTrue:[self addLiteral:#-. ^124].
+ (aSymbol == #x) ifTrue:[lineno := true. self addLiteral:aSymbol. ^106].
+ (aSymbol == #y) ifTrue:[lineno := true. self addLiteral:aSymbol. ^107].
+ (aSymbol == #width) ifTrue:[lineno := true. self addLiteral:aSymbol. ^108].
+ (aSymbol == #height) ifTrue:[lineno := true. self addLiteral:aSymbol. ^109].
+ (aSymbol == #origin) ifTrue:[lineno := true. self addLiteral:aSymbol. ^154].
+ (aSymbol == #extent) ifTrue:[lineno := true. self addLiteral:aSymbol. ^155].
+ (aSymbol == #at:) ifTrue:[lineno := true. stackDelta := -1. self addLiteral:aSymbol. ^135].
+ (aSymbol == #at:put:)ifTrue:[lineno := true. stackDelta := -2. self addLiteral:aSymbol. ^136].
+ (aSymbol == #bitAnd:) ifTrue:[lineno := true. stackDelta := -1. self addLiteral:aSymbol. ^137].
+ (aSymbol == #bitOr:) ifTrue:[lineno := true. stackDelta := -1. self addLiteral:aSymbol. ^138].
+ (aSymbol == #plus1) ifTrue:[lineno := true. self addLiteral:#+. ^123].
+ (aSymbol == #minus1) ifTrue:[lineno := true. self addLiteral:#-. ^124].
- (aSymbol == #incMethodVar) ifTrue:[self addLiteral:#+. extra := #index. ^125].
- (aSymbol == #decMethodVar) ifTrue:[self addLiteral:#-. extra := #index. ^126].
+ (aSymbol == #incMethodVar) ifTrue:[lineno := true. self addLiteral:#+. extra := #index. ^125].
+ (aSymbol == #decMethodVar) ifTrue:[lineno := true. self addLiteral:#-. extra := #index. ^126].
(aSymbol == #eq0) ifTrue:[self addLiteral:#==. ^48].
(aSymbol == #ne0) ifTrue:[self addLiteral:#~~. ^49].
- (aSymbol == #>) ifTrue:[self addLiteral:aSymbol. stackDelta := -1. ^ 145].
- (aSymbol == #>=) ifTrue:[self addLiteral:aSymbol. stackDelta := -1. ^ 146].
- (aSymbol == #<) ifTrue:[self addLiteral:aSymbol. stackDelta := -1. ^ 147].
- (aSymbol == #<=) ifTrue:[self addLiteral:aSymbol. stackDelta := -1. ^ 148].
- (aSymbol == #next) ifTrue:[self addLiteral:aSymbol. ^ 149].
- (aSymbol == #peek) ifTrue:[self addLiteral:aSymbol. ^ 150].
- (aSymbol == #value) ifTrue:[self addLiteral:aSymbol. ^ 151].
- (aSymbol == #value:) ifTrue:[self addLiteral:aSymbol. stackDelta := -1. ^ 152].
- (aSymbol == #size) ifTrue:[self addLiteral:aSymbol. ^ 153].
+ (aSymbol == #>) ifTrue:[lineno := true. self addLiteral:aSymbol. stackDelta := -1. ^ 145].
+ (aSymbol == #>=) ifTrue:[lineno := true. self addLiteral:aSymbol. stackDelta := -1. ^ 146].
+ (aSymbol == #<) ifTrue:[lineno := true. self addLiteral:aSymbol. stackDelta := -1. ^ 147].
+ (aSymbol == #<=) ifTrue:[lineno := true. self addLiteral:aSymbol. stackDelta := -1. ^ 148].
+ (aSymbol == #next) ifTrue:[lineno := true. self addLiteral:aSymbol. ^ 149].
+ (aSymbol == #peek) ifTrue:[lineno := true. self addLiteral:aSymbol. ^ 150].
+ (aSymbol == #value) ifTrue:[lineno := true. self addLiteral:aSymbol. ^ 151].
+ (aSymbol == #value:) ifTrue:[lineno := true. self addLiteral:aSymbol. stackDelta := -1. ^ 152].
+ (aSymbol == #size) ifTrue:[lineno := true. self addLiteral:aSymbol. ^ 153].
+ (aSymbol == #asInteger) ifTrue:[lineno := true. self addLiteral:aSymbol. ^ 158].
+ (aSymbol == #rounded) ifTrue:[lineno := true. self addLiteral:aSymbol. ^ 159].
(aSymbol == #mk0Block) ifTrue:[^ 156].
(aSymbol == #mkNilBlock) ifTrue:[^ 157].
@@ -1769,7 +1771,7 @@
put:((newCode at:conIndex) bitOr:16r80)
] ifFalse:[
].
-'address is:' print. newCode address printNewline.
+'retnum address is:' print. newCode address printNewline.
^ newCode address
"ByteCodeCompiler new codeForRetNum:15"
@@ -1838,7 +1840,7 @@
newCode at:conIndex put:(cell bitAnd:16rFF).
].
-'address is:' print. newCode address printNewline.
+'retcell address is:' print. newCode address printNewline.
^ newCode address
"ByteCodeCompiler new codeForRetCell:#Transcript"
@@ -1886,7 +1888,7 @@
newCode at:conIndex+2 put:((cell bitShift:-8) bitAnd:16rFF).
newCode at:conIndex+3 put:(cell bitAnd:16rFF).
-'address is:' print. newCode address printNewline.
+'setcell address is:' print. newCode address printNewline.
^ newCode address
"ByteCodeCompiler new codeForSetCell:#xyz"
--- a/ByteCodeCompiler.st Wed Oct 13 03:41:56 1993 +0100
+++ b/ByteCodeCompiler.st Wed Oct 27 00:21:59 1993 +0100
@@ -26,7 +26,7 @@
COPYRIGHT (c) 1989 by Claus Gittinger
All Rights Reserved
-$Header: /cvs/stx/stx/libcomp/ByteCodeCompiler.st,v 1.4 1993-10-13 02:41:03 claus Exp $
+$Header: /cvs/stx/stx/libcomp/ByteCodeCompiler.st,v 1.5 1993-10-26 23:21:59 claus Exp $
'!
!ByteCodeCompiler class methodsFor:'documentation'!
@@ -895,39 +895,41 @@
(aSymbol == #pushOuter1BlockArg) ifTrue:[stackDelta := 1. extra := #index. ^ 43].
(aSymbol == #pushOuter2BlockArg) ifTrue:[stackDelta := 1. extra := #index. ^ 44].
- (aSymbol == #=) ifTrue:[stackDelta := -1. self addLiteral:aSymbol. ^130].
- (aSymbol == #+) ifTrue:[stackDelta := -1. self addLiteral:aSymbol. ^131].
- (aSymbol == #~=) ifTrue:[stackDelta := -1. self addLiteral:aSymbol. ^132].
- (aSymbol == #-) ifTrue:[stackDelta := -1. self addLiteral:aSymbol. ^133].
+ (aSymbol == #=) ifTrue:[lineno := true. stackDelta := -1. self addLiteral:aSymbol. ^130].
+ (aSymbol == #+) ifTrue:[lineno := true. stackDelta := -1. self addLiteral:aSymbol. ^131].
+ (aSymbol == #~=) ifTrue:[lineno := true. stackDelta := -1. self addLiteral:aSymbol. ^132].
+ (aSymbol == #-) ifTrue:[lineno := true. stackDelta := -1. self addLiteral:aSymbol. ^133].
(aSymbol == #class) ifTrue:[self addLiteral:aSymbol. ^134].
- (aSymbol == #x) ifTrue:[self addLiteral:aSymbol. ^106].
- (aSymbol == #y) ifTrue:[self addLiteral:aSymbol. ^107].
- (aSymbol == #width) ifTrue:[self addLiteral:aSymbol. ^108].
- (aSymbol == #height) ifTrue:[self addLiteral:aSymbol. ^109].
- (aSymbol == #origin) ifTrue:[self addLiteral:aSymbol. ^154].
- (aSymbol == #extent) ifTrue:[self addLiteral:aSymbol. ^155].
- (aSymbol == #at:) ifTrue:[stackDelta := -1. self addLiteral:aSymbol. ^135].
- (aSymbol == #at:put:)ifTrue:[stackDelta := -2. self addLiteral:aSymbol. ^136].
- (aSymbol == #bitAnd:) ifTrue:[stackDelta := -1. self addLiteral:aSymbol. ^137].
- (aSymbol == #bitOr:) ifTrue:[stackDelta := -1. self addLiteral:aSymbol. ^138].
- (aSymbol == #plus1) ifTrue:[self addLiteral:#+. ^123].
- (aSymbol == #minus1) ifTrue:[self addLiteral:#-. ^124].
+ (aSymbol == #x) ifTrue:[lineno := true. self addLiteral:aSymbol. ^106].
+ (aSymbol == #y) ifTrue:[lineno := true. self addLiteral:aSymbol. ^107].
+ (aSymbol == #width) ifTrue:[lineno := true. self addLiteral:aSymbol. ^108].
+ (aSymbol == #height) ifTrue:[lineno := true. self addLiteral:aSymbol. ^109].
+ (aSymbol == #origin) ifTrue:[lineno := true. self addLiteral:aSymbol. ^154].
+ (aSymbol == #extent) ifTrue:[lineno := true. self addLiteral:aSymbol. ^155].
+ (aSymbol == #at:) ifTrue:[lineno := true. stackDelta := -1. self addLiteral:aSymbol. ^135].
+ (aSymbol == #at:put:)ifTrue:[lineno := true. stackDelta := -2. self addLiteral:aSymbol. ^136].
+ (aSymbol == #bitAnd:) ifTrue:[lineno := true. stackDelta := -1. self addLiteral:aSymbol. ^137].
+ (aSymbol == #bitOr:) ifTrue:[lineno := true. stackDelta := -1. self addLiteral:aSymbol. ^138].
+ (aSymbol == #plus1) ifTrue:[lineno := true. self addLiteral:#+. ^123].
+ (aSymbol == #minus1) ifTrue:[lineno := true. self addLiteral:#-. ^124].
- (aSymbol == #incMethodVar) ifTrue:[self addLiteral:#+. extra := #index. ^125].
- (aSymbol == #decMethodVar) ifTrue:[self addLiteral:#-. extra := #index. ^126].
+ (aSymbol == #incMethodVar) ifTrue:[lineno := true. self addLiteral:#+. extra := #index. ^125].
+ (aSymbol == #decMethodVar) ifTrue:[lineno := true. self addLiteral:#-. extra := #index. ^126].
(aSymbol == #eq0) ifTrue:[self addLiteral:#==. ^48].
(aSymbol == #ne0) ifTrue:[self addLiteral:#~~. ^49].
- (aSymbol == #>) ifTrue:[self addLiteral:aSymbol. stackDelta := -1. ^ 145].
- (aSymbol == #>=) ifTrue:[self addLiteral:aSymbol. stackDelta := -1. ^ 146].
- (aSymbol == #<) ifTrue:[self addLiteral:aSymbol. stackDelta := -1. ^ 147].
- (aSymbol == #<=) ifTrue:[self addLiteral:aSymbol. stackDelta := -1. ^ 148].
- (aSymbol == #next) ifTrue:[self addLiteral:aSymbol. ^ 149].
- (aSymbol == #peek) ifTrue:[self addLiteral:aSymbol. ^ 150].
- (aSymbol == #value) ifTrue:[self addLiteral:aSymbol. ^ 151].
- (aSymbol == #value:) ifTrue:[self addLiteral:aSymbol. stackDelta := -1. ^ 152].
- (aSymbol == #size) ifTrue:[self addLiteral:aSymbol. ^ 153].
+ (aSymbol == #>) ifTrue:[lineno := true. self addLiteral:aSymbol. stackDelta := -1. ^ 145].
+ (aSymbol == #>=) ifTrue:[lineno := true. self addLiteral:aSymbol. stackDelta := -1. ^ 146].
+ (aSymbol == #<) ifTrue:[lineno := true. self addLiteral:aSymbol. stackDelta := -1. ^ 147].
+ (aSymbol == #<=) ifTrue:[lineno := true. self addLiteral:aSymbol. stackDelta := -1. ^ 148].
+ (aSymbol == #next) ifTrue:[lineno := true. self addLiteral:aSymbol. ^ 149].
+ (aSymbol == #peek) ifTrue:[lineno := true. self addLiteral:aSymbol. ^ 150].
+ (aSymbol == #value) ifTrue:[lineno := true. self addLiteral:aSymbol. ^ 151].
+ (aSymbol == #value:) ifTrue:[lineno := true. self addLiteral:aSymbol. stackDelta := -1. ^ 152].
+ (aSymbol == #size) ifTrue:[lineno := true. self addLiteral:aSymbol. ^ 153].
+ (aSymbol == #asInteger) ifTrue:[lineno := true. self addLiteral:aSymbol. ^ 158].
+ (aSymbol == #rounded) ifTrue:[lineno := true. self addLiteral:aSymbol. ^ 159].
(aSymbol == #mk0Block) ifTrue:[^ 156].
(aSymbol == #mkNilBlock) ifTrue:[^ 157].
@@ -1769,7 +1771,7 @@
put:((newCode at:conIndex) bitOr:16r80)
] ifFalse:[
].
-'address is:' print. newCode address printNewline.
+'retnum address is:' print. newCode address printNewline.
^ newCode address
"ByteCodeCompiler new codeForRetNum:15"
@@ -1838,7 +1840,7 @@
newCode at:conIndex put:(cell bitAnd:16rFF).
].
-'address is:' print. newCode address printNewline.
+'retcell address is:' print. newCode address printNewline.
^ newCode address
"ByteCodeCompiler new codeForRetCell:#Transcript"
@@ -1886,7 +1888,7 @@
newCode at:conIndex+2 put:((cell bitShift:-8) bitAnd:16rFF).
newCode at:conIndex+3 put:(cell bitAnd:16rFF).
-'address is:' print. newCode address printNewline.
+'setcell address is:' print. newCode address printNewline.
^ newCode address
"ByteCodeCompiler new codeForSetCell:#xyz"