Decompiler.st
author Claus Gittinger <cg@exept.de>
Tue, 28 Jan 2020 20:30:08 +0100
changeset 4626 c8b3d037db5c
parent 4553 a673423f1239
child 4723 524785227024
permissions -rw-r--r--
#QUALITY by cg class: InstrumentingCompiler::MethodInvocationInfo added: #printOn:
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
     1
"
4
f6fd83437415 *** empty log message ***
claus
parents: 3
diff changeset
     2
 COPYRIGHT (c) 1991 by Claus Gittinger
1796
bc2de3be5f7c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1793
diff changeset
     3
              All Rights Reserved
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
     4
7ad01559b262 Initial revision
claus
parents:
diff changeset
     5
 This software is furnished under a license and may be used
7ad01559b262 Initial revision
claus
parents:
diff changeset
     6
 only in accordance with the terms of that license and with the
7ad01559b262 Initial revision
claus
parents:
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
7ad01559b262 Initial revision
claus
parents:
diff changeset
     8
 be provided or otherwise made available to, or used by, any
7ad01559b262 Initial revision
claus
parents:
diff changeset
     9
 other person.  No title to or ownership of the software is
7ad01559b262 Initial revision
claus
parents:
diff changeset
    10
 hereby transferred.
7ad01559b262 Initial revision
claus
parents:
diff changeset
    11
"
1140
40bb7432cea2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 767
diff changeset
    12
"{ Package: 'stx:libcomp' }"
40bb7432cea2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 767
diff changeset
    13
3728
9c1241d837e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
    14
"{ NameSpace: Smalltalk }"
9c1241d837e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
    15
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
    16
ByteCodeCompiler subclass:#Decompiler
1800
c6529e6820ee more long ops
Claus Gittinger <cg@exept.de>
parents: 1796
diff changeset
    17
	instanceVariableNames:'hasLineNo bytes literals index listStream outputStream'
c6529e6820ee more long ops
Claus Gittinger <cg@exept.de>
parents: 1796
diff changeset
    18
	classVariableNames:''
c6529e6820ee more long ops
Claus Gittinger <cg@exept.de>
parents: 1796
diff changeset
    19
	poolDictionaries:''
c6529e6820ee more long ops
Claus Gittinger <cg@exept.de>
parents: 1796
diff changeset
    20
	category:'System-Compiler'
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
    21
!
7ad01559b262 Initial revision
claus
parents:
diff changeset
    22
378
450a65b641b2 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 356
diff changeset
    23
!Decompiler class methodsFor:'documentation'!
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
    24
135
aa4f7b8f121e uff - version methods changed to return stings
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
    25
copyright
aa4f7b8f121e uff - version methods changed to return stings
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
    26
"
aa4f7b8f121e uff - version methods changed to return stings
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
    27
 COPYRIGHT (c) 1991 by Claus Gittinger
1796
bc2de3be5f7c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1793
diff changeset
    28
              All Rights Reserved
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
    29
135
aa4f7b8f121e uff - version methods changed to return stings
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
    30
 This software is furnished under a license and may be used
aa4f7b8f121e uff - version methods changed to return stings
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
    31
 only in accordance with the terms of that license and with the
aa4f7b8f121e uff - version methods changed to return stings
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
    32
 inclusion of the above copyright notice.   This software may not
aa4f7b8f121e uff - version methods changed to return stings
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
    33
 be provided or otherwise made available to, or used by, any
aa4f7b8f121e uff - version methods changed to return stings
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
    34
 other person.  No title to or ownership of the software is
aa4f7b8f121e uff - version methods changed to return stings
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
    35
 hereby transferred.
aa4f7b8f121e uff - version methods changed to return stings
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
    36
"
aa4f7b8f121e uff - version methods changed to return stings
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
    37
!
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
    38
135
aa4f7b8f121e uff - version methods changed to return stings
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
    39
documentation
aa4f7b8f121e uff - version methods changed to return stings
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
    40
"
aa4f7b8f121e uff - version methods changed to return stings
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
    41
    only for stx-debugging. Not for public eyes.
aa4f7b8f121e uff - version methods changed to return stings
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
    42
aa4f7b8f121e uff - version methods changed to return stings
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
    43
    Decompiler decompile:(someClass compiledMethodAt:#someSelector)
aa4f7b8f121e uff - version methods changed to return stings
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
    44
"
aa4f7b8f121e uff - version methods changed to return stings
Claus Gittinger <cg@exept.de>
parents: 4
diff changeset
    45
! !
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
    46
378
450a65b641b2 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 356
diff changeset
    47
!Decompiler class methodsFor:'decompiling'!
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
    48
7ad01559b262 Initial revision
claus
parents:
diff changeset
    49
decompile:aMethod
1789
7d38fabe0785 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1360
diff changeset
    50
    ^ self decompile:aMethod to:Transcript
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
    51
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
    52
    "
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
    53
     Decompiler decompile:(FileBrowser compiledMethodAt:#initialize)
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
    54
     Decompiler decompile:(Decompiler compiledMethodAt:#decompile:to:)
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
    55
    "
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
    56
1789
7d38fabe0785 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1360
diff changeset
    57
    "Modified: / 06-08-2006 / 15:31:39 / cg"
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
    58
!
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
    59
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
    60
decompile:aMethod to:aStream
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
    61
    ^ (self new) decompile:aMethod to:aStream
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
    62
7ad01559b262 Initial revision
claus
parents:
diff changeset
    63
    "Decompiler decompile:(FileBrowser compiledMethodAt:#initialize)"
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
    64
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
    65
    "Created: 16.4.1996 / 20:25:55 / cg"
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
    66
! !
7ad01559b262 Initial revision
claus
parents:
diff changeset
    67
7ad01559b262 Initial revision
claus
parents:
diff changeset
    68
!Decompiler methodsFor:'decompiling'!
7ad01559b262 Initial revision
claus
parents:
diff changeset
    69
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
    70
decompile:aMethod to:aStream
1800
c6529e6820ee more long ops
Claus Gittinger <cg@exept.de>
parents: 1796
diff changeset
    71
    |nBytes byte sym sel lineNr who method insnIndex1 insnIndex2 n nCol|
206
d4cd6769b983 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
    72
1800
c6529e6820ee more long ops
Claus Gittinger <cg@exept.de>
parents: 1796
diff changeset
    73
    nCol := 7.    
532
4fcfc17f14b4 show all bytes of an op
Claus Gittinger <cg@exept.de>
parents: 408
diff changeset
    74
    listStream := nil.
4fcfc17f14b4 show all bytes of an op
Claus Gittinger <cg@exept.de>
parents: 408
diff changeset
    75
    outputStream := aStream.
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
    76
384
92c963b7922b handle decompilation of wrapped methods
Claus Gittinger <cg@exept.de>
parents: 378
diff changeset
    77
    (method := aMethod) isNil ifTrue:[
278
8c8c96856b41 showCr: -> showCR:
Claus Gittinger <cg@exept.de>
parents: 250
diff changeset
    78
        aStream showCR:'nil method'.
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
    79
        ^ self
206
d4cd6769b983 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
    80
    ].   
2431
1e94ebcb9157 changed: #decompile:to:
Claus Gittinger <cg@exept.de>
parents: 2423
diff changeset
    81
    method := method originalMethodIfWrapped.
206
d4cd6769b983 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
    82
1360
602caf902ede checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1258
diff changeset
    83
    aStream cr.
602caf902ede checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1258
diff changeset
    84
    aStream show:'decompiling '.
602caf902ede checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1258
diff changeset
    85
2423
76872ad5c630 changed: #decompile:to:
Claus Gittinger <cg@exept.de>
parents: 2128
diff changeset
    86
    method isMethod ifTrue:[
76872ad5c630 changed: #decompile:to:
Claus Gittinger <cg@exept.de>
parents: 2128
diff changeset
    87
        who := method who.
76872ad5c630 changed: #decompile:to:
Claus Gittinger <cg@exept.de>
parents: 2128
diff changeset
    88
        who notNil ifTrue:[
76872ad5c630 changed: #decompile:to:
Claus Gittinger <cg@exept.de>
parents: 2128
diff changeset
    89
            classToCompileFor := who at:1.
76872ad5c630 changed: #decompile:to:
Claus Gittinger <cg@exept.de>
parents: 2128
diff changeset
    90
            aStream showCR:(classToCompileFor name , '>>' , (who at:2)).
76872ad5c630 changed: #decompile:to:
Claus Gittinger <cg@exept.de>
parents: 2128
diff changeset
    91
        ]
206
d4cd6769b983 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
    92
    ].
4553
a673423f1239 #REFACTORING by exept
Claus Gittinger <cg@exept.de>
parents: 3749
diff changeset
    93
    aStream show:('nA: ' , method argumentCount printString).
1360
602caf902ede checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1258
diff changeset
    94
    aStream show:(' nV: ' , method numVars printString).
602caf902ede checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1258
diff changeset
    95
    aStream show:(' nT: ' , method stackSize printString).
602caf902ede checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1258
diff changeset
    96
    aStream cr.
602caf902ede checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1258
diff changeset
    97
    aStream cr.
206
d4cd6769b983 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
    98
384
92c963b7922b handle decompilation of wrapped methods
Claus Gittinger <cg@exept.de>
parents: 378
diff changeset
    99
    bytes := method byteCode.
206
d4cd6769b983 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   100
    bytes isNil ifTrue:[
740
6936f116c334 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 655
diff changeset
   101
        method isLazyMethod ifTrue:[
6936f116c334 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 655
diff changeset
   102
            method := method asExecutableMethod.
6936f116c334 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 655
diff changeset
   103
            bytes := method byteCode.
6936f116c334 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 655
diff changeset
   104
            aStream showCR:'(lazyMethod; showing resulting code when compiled on first invokation)'.
6936f116c334 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 655
diff changeset
   105
            aStream cr.
6936f116c334 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 655
diff changeset
   106
        ].
6936f116c334 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 655
diff changeset
   107
    ].
6936f116c334 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 655
diff changeset
   108
    bytes isNil ifTrue:[
278
8c8c96856b41 showCr: -> showCR:
Claus Gittinger <cg@exept.de>
parents: 250
diff changeset
   109
        aStream showCR:'no bytecode'.
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   110
        ^ self
206
d4cd6769b983 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   111
    ].
384
92c963b7922b handle decompilation of wrapped methods
Claus Gittinger <cg@exept.de>
parents: 378
diff changeset
   112
    literals := method literals.
206
d4cd6769b983 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   113
    index := 1.
d4cd6769b983 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   114
    nBytes := bytes size.
d4cd6769b983 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   115
    [index <= nBytes] whileTrue:[
532
4fcfc17f14b4 show all bytes of an op
Claus Gittinger <cg@exept.de>
parents: 408
diff changeset
   116
        listStream := '' writeStream.
4fcfc17f14b4 show all bytes of an op
Claus Gittinger <cg@exept.de>
parents: 408
diff changeset
   117
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   118
        self showPC.
532
4fcfc17f14b4 show all bytes of an op
Claus Gittinger <cg@exept.de>
parents: 408
diff changeset
   119
        insnIndex1 := index.
4fcfc17f14b4 show all bytes of an op
Claus Gittinger <cg@exept.de>
parents: 408
diff changeset
   120
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   121
        sym := self symbolicCodeFor:(bytes at:index).
532
4fcfc17f14b4 show all bytes of an op
Claus Gittinger <cg@exept.de>
parents: 408
diff changeset
   122
        listStream show:sym.
206
d4cd6769b983 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   123
"
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   124
        extra notNil ifTrue:[Transcript show:(extra printString)].
206
d4cd6769b983 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   125
"
347
c41b9c9c0e50 oops - sendWIDTH & sendHEIGHT have lineNumber info
Claus Gittinger <cg@exept.de>
parents: 344
diff changeset
   126
        index := index + 1.
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   127
        hasLineNo ifTrue:[
347
c41b9c9c0e50 oops - sendWIDTH & sendHEIGHT have lineNumber info
Claus Gittinger <cg@exept.de>
parents: 344
diff changeset
   128
            lineNr := bytes at:index.
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   129
            index := index + 1.
3106
119f0ff4b41d Fixed Decompiler: correctly show LINE16 pseudo insn...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2753
diff changeset
   130
            sym == #LINE16 ifTrue:[
119f0ff4b41d Fixed Decompiler: correctly show LINE16 pseudo insn...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2753
diff changeset
   131
                lineNr := (lineNr << 8) + (bytes at:index).
119f0ff4b41d Fixed Decompiler: correctly show LINE16 pseudo insn...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2753
diff changeset
   132
                index := index + 1.
119f0ff4b41d Fixed Decompiler: correctly show LINE16 pseudo insn...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2753
diff changeset
   133
119f0ff4b41d Fixed Decompiler: correctly show LINE16 pseudo insn...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2753
diff changeset
   134
            ].
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   135
        ] ifFalse:[
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   136
            lineNr := nil
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   137
        ].
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   138
        extra notNil ifTrue:[
532
4fcfc17f14b4 show all bytes of an op
Claus Gittinger <cg@exept.de>
parents: 408
diff changeset
   139
            listStream show:' '.
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   140
            byte := bytes at:index.
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   141
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   142
            "compute argument showXXX selector from extra ..."
206
d4cd6769b983 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   143
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   144
            sel := 'show' , extra , ':'.
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   145
            sel at:5 put:(sel at:5) asUppercase.
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   146
            self perform:sel asSymbol with:byte
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   147
        ].
532
4fcfc17f14b4 show all bytes of an op
Claus Gittinger <cg@exept.de>
parents: 408
diff changeset
   148
        insnIndex2 := index-1.
4fcfc17f14b4 show all bytes of an op
Claus Gittinger <cg@exept.de>
parents: 408
diff changeset
   149
4fcfc17f14b4 show all bytes of an op
Claus Gittinger <cg@exept.de>
parents: 408
diff changeset
   150
        insnIndex1 to:insnIndex2 do:[:i |
3749
13450df6526e #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 3728
diff changeset
   151
            outputStream show:((bytes at:i) hexPrintString:2).
532
4fcfc17f14b4 show all bytes of an op
Claus Gittinger <cg@exept.de>
parents: 408
diff changeset
   152
            outputStream show:' '.
4fcfc17f14b4 show all bytes of an op
Claus Gittinger <cg@exept.de>
parents: 408
diff changeset
   153
        ].
4fcfc17f14b4 show all bytes of an op
Claus Gittinger <cg@exept.de>
parents: 408
diff changeset
   154
        n := (insnIndex2-insnIndex1) * 3.
1800
c6529e6820ee more long ops
Claus Gittinger <cg@exept.de>
parents: 1796
diff changeset
   155
        outputStream spaces:(nCol*3 - n).
532
4fcfc17f14b4 show all bytes of an op
Claus Gittinger <cg@exept.de>
parents: 408
diff changeset
   156
        outputStream show:(listStream contents).
4fcfc17f14b4 show all bytes of an op
Claus Gittinger <cg@exept.de>
parents: 408
diff changeset
   157
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   158
        lineNr notNil ifTrue:[
3443
78ceb5df3dcd class: Decompiler
Claus Gittinger <cg@exept.de>
parents: 3168
diff changeset
   159
            aStream show:' ['; show:lineNr; show:']'
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   160
        ].
278
8c8c96856b41 showCr: -> showCR:
Claus Gittinger <cg@exept.de>
parents: 250
diff changeset
   161
        aStream showCR:''
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   162
    ]
206
d4cd6769b983 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   163
1789
7d38fabe0785 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1360
diff changeset
   164
    "Created: / 16-04-1996 / 20:27:18 / cg"
2431
1e94ebcb9157 changed: #decompile:to:
Claus Gittinger <cg@exept.de>
parents: 2423
diff changeset
   165
    "Modified: / 22-10-2010 / 11:48:15 / cg"
3106
119f0ff4b41d Fixed Decompiler: correctly show LINE16 pseudo insn...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2753
diff changeset
   166
    "Modified: / 12-04-2013 / 01:35:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
   167
!
7ad01559b262 Initial revision
claus
parents:
diff changeset
   168
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   169
showAbsOffset:byte
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   170
    |offs b2|
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   171
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   172
    index := index + 1.
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   173
    b2 := (bytes at:index).
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   174
    offs := byte + (b2 bitShift:8).
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   175
    index := index + 1.
293
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   176
    listStream show:offs printString.
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   177
    listStream show:' ('.
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   178
    listStream show:offs printString.
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   179
    listStream show:')'
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   180
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   181
    "Modified: 16.4.1996 / 20:27:53 / cg"
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   182
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   183
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   184
showAbsOffsetLevel:byte
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   185
    |offs b2|
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   186
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   187
    index := index + 1.
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   188
    b2 := (bytes at:index).
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   189
    offs := byte + (b2 bitShift:8).
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   190
    index := index + 1.
293
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   191
    listStream show:offs printString.
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   192
    listStream show:' ('.
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   193
    listStream show:offs printString.
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   194
    listStream show:')'.
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   195
    self showNvarNargsAt:index.
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   196
    index := index + 2
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   197
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   198
    "Modified: 16.4.1996 / 20:27:57 / cg"
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   199
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   200
1793
5e4a4284c722 preps for vl literals
Claus Gittinger <cg@exept.de>
parents: 1789
diff changeset
   201
showExtraOp:op
5e4a4284c722 preps for vl literals
Claus Gittinger <cg@exept.de>
parents: 1789
diff changeset
   202
    "/ listStream show:(op printString); show:' '.
5e4a4284c722 preps for vl literals
Claus Gittinger <cg@exept.de>
parents: 1789
diff changeset
   203
1800
c6529e6820ee more long ops
Claus Gittinger <cg@exept.de>
parents: 1796
diff changeset
   204
    index := index + 1.
1793
5e4a4284c722 preps for vl literals
Claus Gittinger <cg@exept.de>
parents: 1789
diff changeset
   205
    op == 0 ifTrue:[
1800
c6529e6820ee more long ops
Claus Gittinger <cg@exept.de>
parents: 1796
diff changeset
   206
        listStream show:'SEND_VL '.
c6529e6820ee more long ops
Claus Gittinger <cg@exept.de>
parents: 1796
diff changeset
   207
        self showLineNo:(bytes at:index).
c6529e6820ee more long ops
Claus Gittinger <cg@exept.de>
parents: 1796
diff changeset
   208
        listStream show:' nargs:' , (bytes at:index) printString; show:' '.
c6529e6820ee more long ops
Claus Gittinger <cg@exept.de>
parents: 1796
diff changeset
   209
        index := index + 1.
c6529e6820ee more long ops
Claus Gittinger <cg@exept.de>
parents: 1796
diff changeset
   210
        self showLiteral32:0.
c6529e6820ee more long ops
Claus Gittinger <cg@exept.de>
parents: 1796
diff changeset
   211
        ^ self.
1793
5e4a4284c722 preps for vl literals
Claus Gittinger <cg@exept.de>
parents: 1789
diff changeset
   212
    ].
5e4a4284c722 preps for vl literals
Claus Gittinger <cg@exept.de>
parents: 1789
diff changeset
   213
    op == 1 ifTrue:[
1800
c6529e6820ee more long ops
Claus Gittinger <cg@exept.de>
parents: 1796
diff changeset
   214
        listStream show:'SUPERSEND_VL '.
c6529e6820ee more long ops
Claus Gittinger <cg@exept.de>
parents: 1796
diff changeset
   215
        self showLineNo:(bytes at:index).
c6529e6820ee more long ops
Claus Gittinger <cg@exept.de>
parents: 1796
diff changeset
   216
        listStream show:' nargs:' , (bytes at:index) printString; show:' '.
c6529e6820ee more long ops
Claus Gittinger <cg@exept.de>
parents: 1796
diff changeset
   217
        index := index + 1.
c6529e6820ee more long ops
Claus Gittinger <cg@exept.de>
parents: 1796
diff changeset
   218
        self showLiteral32:0.
c6529e6820ee more long ops
Claus Gittinger <cg@exept.de>
parents: 1796
diff changeset
   219
        self showLiteral32:0.
c6529e6820ee more long ops
Claus Gittinger <cg@exept.de>
parents: 1796
diff changeset
   220
        ^ self.
1793
5e4a4284c722 preps for vl literals
Claus Gittinger <cg@exept.de>
parents: 1789
diff changeset
   221
    ].
5e4a4284c722 preps for vl literals
Claus Gittinger <cg@exept.de>
parents: 1789
diff changeset
   222
    op == 2 ifTrue:[
5e4a4284c722 preps for vl literals
Claus Gittinger <cg@exept.de>
parents: 1789
diff changeset
   223
        listStream show:'PUSH_VL_LIT '.
5e4a4284c722 preps for vl literals
Claus Gittinger <cg@exept.de>
parents: 1789
diff changeset
   224
        self showLiteral32:0.
5e4a4284c722 preps for vl literals
Claus Gittinger <cg@exept.de>
parents: 1789
diff changeset
   225
        ^ self.
5e4a4284c722 preps for vl literals
Claus Gittinger <cg@exept.de>
parents: 1789
diff changeset
   226
    ].
2128
3cdbf4f6704f Change #halt: to #shouldImplement or #assert:
Stefan Vogel <sv@exept.de>
parents: 1826
diff changeset
   227
    self shouldImplement.
1793
5e4a4284c722 preps for vl literals
Claus Gittinger <cg@exept.de>
parents: 1789
diff changeset
   228
    op == 3 ifTrue:[
5e4a4284c722 preps for vl literals
Claus Gittinger <cg@exept.de>
parents: 1789
diff changeset
   229
    ].
5e4a4284c722 preps for vl literals
Claus Gittinger <cg@exept.de>
parents: 1789
diff changeset
   230
    op == 4 ifTrue:[
5e4a4284c722 preps for vl literals
Claus Gittinger <cg@exept.de>
parents: 1789
diff changeset
   231
    ].
5e4a4284c722 preps for vl literals
Claus Gittinger <cg@exept.de>
parents: 1789
diff changeset
   232
!
5e4a4284c722 preps for vl literals
Claus Gittinger <cg@exept.de>
parents: 1789
diff changeset
   233
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   234
showIndex:byte
293
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   235
    listStream show:byte printString.
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   236
    index := index + 1
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   237
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   238
    "Modified: 16.4.1996 / 20:27:59 / cg"
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   239
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   240
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   241
showIndexLevel:byte
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   242
    self showIndex:byte.
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   243
    self showNvarNargsAt:index.
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   244
    index := index + 2
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   245
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   246
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   247
showInstvarIndex:byte
293
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   248
    listStream show:byte printString.
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   249
    classToCompileFor notNil ifTrue:[
293
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   250
        listStream show:'('.
763
d3cc2d32a20d dont crash for invalid instvar index.
tm
parents: 740
diff changeset
   251
        listStream show:(classToCompileFor allInstVarNames at:byte ifAbsent:'???? [' , byte printString ,']').
293
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   252
        listStream show:')'.
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   253
    ].
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   254
    index := index + 1
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   255
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   256
    "Modified: 16.4.1996 / 20:28:06 / cg"
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   257
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   258
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   259
showLevelIndex:byte
1148
a008a06fbbc5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1141
diff changeset
   260
    |lvl idx|
a008a06fbbc5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1141
diff changeset
   261
a008a06fbbc5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1141
diff changeset
   262
    lvl := byte.
a008a06fbbc5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1141
diff changeset
   263
    index := index + 1.
a008a06fbbc5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1141
diff changeset
   264
    idx := bytes at:index.
a008a06fbbc5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1141
diff changeset
   265
a008a06fbbc5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1141
diff changeset
   266
    listStream show:idx printString.
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   267
    index := index + 1.
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   268
1148
a008a06fbbc5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1141
diff changeset
   269
    listStream show:' lvl: '; show:lvl printString.
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   270
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   271
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   272
showLineNo:byte
293
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   273
    listStream show:' line:' , byte printString.
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   274
    index := index + 1
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   275
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   276
    "Modified: 16.4.1996 / 20:28:10 / cg"
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   277
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   278
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   279
showLit1:ignored
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   280
    self showLit:1
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   281
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   282
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   283
showLit2:ignored
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   284
    self showLit:2
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   285
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   286
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   287
showLit3:ignored
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   288
    self showLit:3
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   289
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   290
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   291
showLit4:ignored
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   292
    self showLit:4
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   293
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   294
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   295
showLit5:ignored
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   296
    self showLit:5
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   297
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   298
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   299
showLit6:ignored
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   300
    self showLit:6
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   301
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   302
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   303
showLit7:ignored
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   304
    self showLit:7
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   305
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   306
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   307
showLit8:ignored
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   308
    self showLit:8
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   309
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   310
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   311
showLit9:ignored
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   312
    self showLit:9
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   313
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   314
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   315
showLit:litIndex
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   316
    |lit|
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   317
573
7aadeb921f21 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 551
diff changeset
   318
    lit := literals at:litIndex ifAbsent:'*** badIndex ***'.
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   319
    lit isBehavior ifTrue:[
293
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   320
        listStream show:lit name
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   321
    ] ifFalse:[
378
450a65b641b2 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 356
diff changeset
   322
        lit isBlock ifTrue:[
450a65b641b2 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 356
diff changeset
   323
            listStream show:'[a block]'
450a65b641b2 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 356
diff changeset
   324
        ] ifFalse:[
1796
bc2de3be5f7c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1793
diff changeset
   325
            (lit isNumber or:[lit isString or:[lit isSymbol]]) ifTrue:[
bc2de3be5f7c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1793
diff changeset
   326
                listStream show:lit storeString
bc2de3be5f7c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1793
diff changeset
   327
            ] ifFalse:[
bc2de3be5f7c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1793
diff changeset
   328
                listStream show:'{', lit printString , '}'
bc2de3be5f7c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1793
diff changeset
   329
            ]
378
450a65b641b2 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 356
diff changeset
   330
        ]
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   331
    ]
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   332
1796
bc2de3be5f7c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1793
diff changeset
   333
    "Modified: / 08-08-2006 / 00:45:46 / cg"
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   334
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   335
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   336
showLiteral16:byte
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   337
    |litIndex|
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   338
3728
9c1241d837e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
   339
    litIndex := bytes unsignedInt16At:index MSB:false.
3443
78ceb5df3dcd class: Decompiler
Claus Gittinger <cg@exept.de>
parents: 3168
diff changeset
   340
    listStream show:litIndex printString; space.
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   341
    self showLit:litIndex.
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   342
    index := index + 2
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   343
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   344
1793
5e4a4284c722 preps for vl literals
Claus Gittinger <cg@exept.de>
parents: 1789
diff changeset
   345
showLiteral32:byte
5e4a4284c722 preps for vl literals
Claus Gittinger <cg@exept.de>
parents: 1789
diff changeset
   346
    |litIndex|
5e4a4284c722 preps for vl literals
Claus Gittinger <cg@exept.de>
parents: 1789
diff changeset
   347
3728
9c1241d837e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
   348
    litIndex := bytes unsignedInt32At:index MSB:false.
3443
78ceb5df3dcd class: Decompiler
Claus Gittinger <cg@exept.de>
parents: 3168
diff changeset
   349
    listStream show:litIndex printString; space.
1793
5e4a4284c722 preps for vl literals
Claus Gittinger <cg@exept.de>
parents: 1789
diff changeset
   350
    self showLit:litIndex.
5e4a4284c722 preps for vl literals
Claus Gittinger <cg@exept.de>
parents: 1789
diff changeset
   351
    index := index + 4
5e4a4284c722 preps for vl literals
Claus Gittinger <cg@exept.de>
parents: 1789
diff changeset
   352
!
5e4a4284c722 preps for vl literals
Claus Gittinger <cg@exept.de>
parents: 1789
diff changeset
   353
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   354
showLiteral:byte
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   355
    index := index + 1.
3443
78ceb5df3dcd class: Decompiler
Claus Gittinger <cg@exept.de>
parents: 3168
diff changeset
   356
    listStream show:byte printString; space.
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   357
    self showLit:byte
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   358
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   359
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   360
showLiteralAt:index
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   361
    |offs|
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   362
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   363
    offs := bytes at:index.
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   364
    self showLit:offs
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   365
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   366
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   367
showLongOffset:byte
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   368
    |offs|
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   369
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   370
    index := index + 1.
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   371
    (byte > 127) ifTrue:[
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   372
        offs := byte - 256 - 128
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   373
    ] ifFalse:[
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   374
        offs := byte + 128
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   375
    ].
293
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   376
    listStream show:offs printString.
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   377
    listStream show:' ('.
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   378
    listStream show:(index + offs) printString.
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   379
    listStream show:')'
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   380
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   381
    "Modified: 16.4.1996 / 20:28:30 / cg"
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   382
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   383
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   384
showLongOffsetLevel:byte
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   385
    self showLongOffset:byte.
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   386
    self showNvarNargsAt:index.
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   387
    index := index + 2
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   388
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   389
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   390
showLsendArgs:byte
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   391
    |litIndex|
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   392
293
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   393
    listStream show:byte printString.
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   394
    listStream show:' '.
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   395
    index := index + 1.
3728
9c1241d837e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
   396
    litIndex := bytes unsignedInt16At:index MSB:false.
293
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   397
    listStream show:(literals at:litIndex) printString.
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   398
    index := index + 2
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   399
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   400
    "Modified: 16.4.1996 / 20:28:35 / cg"
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   401
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   402
1141
87c9fb0b53e0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1140
diff changeset
   403
showLsuperSendArgs:byte
87c9fb0b53e0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1140
diff changeset
   404
    |litIndex|
87c9fb0b53e0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1140
diff changeset
   405
87c9fb0b53e0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1140
diff changeset
   406
    listStream show:byte printString.
87c9fb0b53e0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1140
diff changeset
   407
    listStream show:' '.
87c9fb0b53e0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1140
diff changeset
   408
    index := index + 1.
3728
9c1241d837e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
   409
    litIndex := bytes unsignedInt16At:index MSB:false.
1141
87c9fb0b53e0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1140
diff changeset
   410
    listStream show:(literals at:litIndex) printString.
87c9fb0b53e0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1140
diff changeset
   411
    index := index + 2.
87c9fb0b53e0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1140
diff changeset
   412
3728
9c1241d837e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
   413
    litIndex := bytes unsignedInt16At:index MSB:false.
1141
87c9fb0b53e0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1140
diff changeset
   414
    listStream show:(literals at:litIndex) printString.
87c9fb0b53e0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1140
diff changeset
   415
    index := index + 2
87c9fb0b53e0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1140
diff changeset
   416
!
87c9fb0b53e0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1140
diff changeset
   417
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   418
showNumber16:byte
3728
9c1241d837e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
   419
    listStream show:(bytes signedInt16At:index MSB:false) printString.
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   420
    index := index + 2
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   421
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   422
    "Modified: 16.4.1996 / 20:28:37 / cg"
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   423
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   424
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   425
showNumber:byte
767
9a99b6810f94 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 763
diff changeset
   426
    listStream show:byte signExtendedByteValue printString.
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   427
    index := index + 1
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   428
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   429
    "Modified: 16.4.1996 / 20:28:38 / cg"
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   430
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   431
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   432
showNvarNargsAt:index
293
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   433
    listStream show:' nv='.
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   434
    listStream show:(bytes at:index) printString.
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   435
    listStream show:' na='.
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   436
    listStream show:(bytes at:(index + 1)) printString
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   437
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   438
    "Modified: 16.4.1996 / 20:28:40 / cg"
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   439
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   440
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   441
showOffset:byte
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   442
    |offs|
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   443
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   444
    index := index + 1.
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   445
    (byte > 127) ifTrue:[
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   446
        offs := byte - 256
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   447
    ] ifFalse:[
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   448
        offs := byte
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   449
    ].
293
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   450
    listStream show:(offs printString).
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   451
    listStream show:' ('.
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   452
    listStream show:(index + offs) printString.
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   453
    listStream show:')'
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   454
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   455
    "Modified: 16.4.1996 / 20:28:43 / cg"
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   456
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   457
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   458
showOffsetLevel:byte
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   459
    self showOffset:byte.
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   460
    self showNvarNargsAt:index.
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   461
    index := index + 2
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   462
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   463
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   464
showPC
532
4fcfc17f14b4 show all bytes of an op
Claus Gittinger <cg@exept.de>
parents: 408
diff changeset
   465
    outputStream show:(index printStringRadix:10 size:3 fill:(Character space)).
4fcfc17f14b4 show all bytes of an op
Claus Gittinger <cg@exept.de>
parents: 408
diff changeset
   466
    outputStream show:': '.
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   467
532
4fcfc17f14b4 show all bytes of an op
Claus Gittinger <cg@exept.de>
parents: 408
diff changeset
   468
    "Modified: 4.6.1997 / 12:07:33 / cg"
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   469
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   470
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   471
showSendArgs:byte
293
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   472
    listStream show:byte printString.
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   473
    listStream show:' '.
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   474
    index := index + 1.
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   475
    self showLiteralAt:index.
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   476
    index := index + 1
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   477
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   478
    "Modified: 16.4.1996 / 20:28:50 / cg"
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   479
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   480
246
abf09d4821fe new code for faster global pushes
Claus Gittinger <cg@exept.de>
parents: 217
diff changeset
   481
showSpecialGlobal:byte
abf09d4821fe new code for faster global pushes
Claus Gittinger <cg@exept.de>
parents: 217
diff changeset
   482
    |specialIndex|
abf09d4821fe new code for faster global pushes
Claus Gittinger <cg@exept.de>
parents: 217
diff changeset
   483
abf09d4821fe new code for faster global pushes
Claus Gittinger <cg@exept.de>
parents: 217
diff changeset
   484
    specialIndex := bytes at:index.
abf09d4821fe new code for faster global pushes
Claus Gittinger <cg@exept.de>
parents: 217
diff changeset
   485
    index := index + 1.
293
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   486
"/    listStream show:specialIndex printString.
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   487
532
4fcfc17f14b4 show all bytes of an op
Claus Gittinger <cg@exept.de>
parents: 408
diff changeset
   488
    listStream 
4fcfc17f14b4 show all bytes of an op
Claus Gittinger <cg@exept.de>
parents: 408
diff changeset
   489
        show:((self specialGlobals) at:specialIndex + 1)
4fcfc17f14b4 show all bytes of an op
Claus Gittinger <cg@exept.de>
parents: 408
diff changeset
   490
4fcfc17f14b4 show all bytes of an op
Claus Gittinger <cg@exept.de>
parents: 408
diff changeset
   491
    "Modified: 4.6.1997 / 12:18:45 / cg"
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   492
!
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   493
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   494
showSpecialSend:byte
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   495
    |specialIndex|
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   496
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   497
    specialIndex := bytes at:index.
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   498
    index := index + 1.
293
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   499
"/    listStream show:specialIndex printString.
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   500
    listStream show:'#'.
532
4fcfc17f14b4 show all bytes of an op
Claus Gittinger <cg@exept.de>
parents: 408
diff changeset
   501
    listStream show:((self specialSends) at:specialIndex + 1)
401
f85fe04ce607 changes for special sends
Claus Gittinger <cg@exept.de>
parents: 384
diff changeset
   502
532
4fcfc17f14b4 show all bytes of an op
Claus Gittinger <cg@exept.de>
parents: 408
diff changeset
   503
    "Modified: 4.6.1997 / 12:34:01 / cg"
246
abf09d4821fe new code for faster global pushes
Claus Gittinger <cg@exept.de>
parents: 217
diff changeset
   504
!
abf09d4821fe new code for faster global pushes
Claus Gittinger <cg@exept.de>
parents: 217
diff changeset
   505
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   506
showSuperSendArgs:byte
293
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   507
    listStream show:byte printString.
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   508
    listStream show:' '.
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   509
    index := index + 1.
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   510
    self showLiteralAt:index.
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   511
    index := index + 1.
293
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   512
    listStream show:' '.
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   513
    self showLiteralAt:index.
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   514
    index := index + 1
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   515
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   516
    "Modified: 16.4.1996 / 20:28:58 / cg"
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   517
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   518
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   519
showVeryLongOffset:byte
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   520
    |offs|
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   521
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   522
    index := index + 1.
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   523
    (byte > 127) ifTrue:[
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   524
        offs := byte - 256 - 256
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   525
    ] ifFalse:[
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   526
        offs := byte + 256
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   527
    ].
293
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   528
    listStream show:offs printString.
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   529
    listStream show:' ('.
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   530
    listStream show:(index + offs) printString.
bc0459613b27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 278
diff changeset
   531
    listStream show:')'
250
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   532
6c26bc3fb154 allow decompile onto a stream
Claus Gittinger <cg@exept.de>
parents: 246
diff changeset
   533
    "Modified: 16.4.1996 / 20:29:00 / cg"
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   534
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   535
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   536
showVeryLongOffsetLevel:byte
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   537
    self showVeryLongOffset:byte.
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   538
    self showNvarNargsAt:index.
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   539
    index := index + 2
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   540
!
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   541
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
   542
symbolicCodeFor:aByte
401
f85fe04ce607 changes for special sends
Claus Gittinger <cg@exept.de>
parents: 384
diff changeset
   543
    |syms extras lnos sym|
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
   544
7ad01559b262 Initial revision
claus
parents:
diff changeset
   545
    syms := #(  retTop         " 0  "
342
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   546
                retNil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   547
                retTrue
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   548
                retFalse
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   549
                ret0
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   550
                retSelf         " 5  "
551
a8a0377b9ceb added #over
Claus Gittinger <cg@exept.de>
parents: 532
diff changeset
   551
                over
344
ab8b2921d475 fixed homeRet decoding
Claus Gittinger <cg@exept.de>
parents: 342
diff changeset
   552
                homeRetTop
342
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   553
                LINE
3106
119f0ff4b41d Fixed Decompiler: correctly show LINE16 pseudo insn...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2753
diff changeset
   554
                LINE16
342
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   555
                pushNil         " 10 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   556
                pushTrue
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   557
                pushFalse
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   558
                sendSelf
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   559
                pushLit
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   560
                pushSelf        " 15 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   561
                pushNum
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   562
                pushNum16
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   563
                drop
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   564
                send
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   565
                superSend       " 20 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   566
                send0
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   567
                send1
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   568
                send2
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   569
                send3
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   570
                sendDrop        " 25 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   571
                sendDrop0
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   572
                sendDrop1
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   573
                sendDrop2
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   574
                sendDrop3
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   575
                pushMethodArg   " 30 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   576
                pushMethodVar
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   577
                pushBlockArg
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   578
                pushBlockVar
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   579
                pushInstVar
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   580
                pushClassVar    " 35 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   581
                pushGlobal
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   582
                storeMethodVar
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   583
                storeBlockVar
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   584
                storeInstVar
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   585
                storeClassVar   " 40 "
356
bb3beb18de1f 6empty slots in GLOBL/CLASSVAR bytecodes removed
Claus Gittinger <cg@exept.de>
parents: 347
diff changeset
   586
                storeGlobal  
342
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   587
                pushOuterBlockArg
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   588
                pushOuter1BlockArg
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   589
                pushOuter2BlockArg
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   590
                equal           " 45 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   591
                notEqual
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   592
                dup
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   593
                equal0
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   594
                notEqual0
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   595
                falseJump       " 50 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   596
                trueJump
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   597
                nilJump
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   598
                notNilJump
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   599
                jump
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   600
                makeBlock       " 55 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   601
                zeroJump
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   602
                notZeroJump
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   603
                eqJump
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   604
                notEqJump
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   605
                falseJump       " 60 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   606
                trueJump
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   607
                nilJump
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   608
                notNilJump
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   609
                jump
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   610
                makeBlock       " 65 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   611
                zeroJump
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   612
                notZeroJump
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   613
                eqJump
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   614
                notEqJump
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   615
                falseJump       " 70 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   616
                trueJump
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   617
                nilJump
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   618
                notNilJump
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   619
                jump
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   620
                makeBlock       " 75 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   621
                zeroJump
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   622
                notZeroJump
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   623
                eqJump
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   624
                notEqJump
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   625
                pushMethodVar1  " 80 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   626
                pushMethodVar2
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   627
                pushMethodVar3
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   628
                pushMethodVar4
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   629
                pushMethodVar5
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   630
                pushMethodVar6  " 85 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   631
                pushMethodArg1
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   632
                pushMethodArg2
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   633
                pushMethodArg3
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   634
                pushMethodArg4
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   635
                pushInstVar1    " 90 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   636
                pushInstVar2
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   637
                pushInstVar3
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   638
                pushInstVar4
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   639
                pushInstVar5
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   640
                pushInstVar6    " 95 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   641
                pushInstVar7
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   642
                pushInstVar8
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   643
                pushInstVar9
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   644
                pushInstVar10
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   645
                storeMethodVar1 " 100 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   646
                storeMethodVar2
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   647
                storeMethodVar3
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   648
                storeMethodVar4
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   649
                storeMethodVar5
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   650
                storeMethodVar6 " 105 "
401
f85fe04ce607 changes for special sends
Claus Gittinger <cg@exept.de>
parents: 384
diff changeset
   651
                nil
f85fe04ce607 changes for special sends
Claus Gittinger <cg@exept.de>
parents: 384
diff changeset
   652
                nil
f85fe04ce607 changes for special sends
Claus Gittinger <cg@exept.de>
parents: 384
diff changeset
   653
                nil
f85fe04ce607 changes for special sends
Claus Gittinger <cg@exept.de>
parents: 384
diff changeset
   654
                nil
342
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   655
                storeInstVar1   " 110 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   656
                storeInstVar2
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   657
                storeInstVar3
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   658
                storeInstVar4
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   659
                storeInstVar5
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   660
                storeInstVar6  " 115 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   661
                storeInstVar7
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   662
                storeInstVar8
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   663
                storeInstVar9
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   664
                storeInstVar10
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   665
                push0           " 120 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   666
                push1
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   667
                pushMinus1
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   668
                sendPlus1
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   669
                sendMinus1
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   670
                incMethodVar    " 125 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   671
                decMethodVar
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   672
                retNum
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   673
                pushOuterBlockVar       "16r80"
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   674
                storeOuterBlockVar
655
3dcaf2f42818 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 573
diff changeset
   675
                'send1 #='            " 130 "
3dcaf2f42818 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 573
diff changeset
   676
                'send1 #+'
3dcaf2f42818 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 573
diff changeset
   677
                'send1 #~='
3dcaf2f42818 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 573
diff changeset
   678
                'send1 #-'
3dcaf2f42818 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 573
diff changeset
   679
                'send0 #class'
3dcaf2f42818 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 573
diff changeset
   680
                'send1 #at:'          " 135 "
3dcaf2f42818 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 573
diff changeset
   681
                'send2 #at:put:'
3dcaf2f42818 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 573
diff changeset
   682
                'send1 #bitAnd:'
3dcaf2f42818 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 573
diff changeset
   683
                'send1 #bitOr:'
342
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   684
                push2
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   685
                pushBlockArg1   " 140 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   686
                pushBlockArg2
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   687
                pushBlockArg3
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   688
                pushBlockArg4
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   689
                pushContext             "16r90"
655
3dcaf2f42818 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 573
diff changeset
   690
                'send1 #>'          " 145 "
3dcaf2f42818 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 573
diff changeset
   691
                'send1 #>='
3dcaf2f42818 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 573
diff changeset
   692
                'send1 #<'
3dcaf2f42818 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 573
diff changeset
   693
                'send1 #<='
401
f85fe04ce607 changes for special sends
Claus Gittinger <cg@exept.de>
parents: 384
diff changeset
   694
                nil
f85fe04ce607 changes for special sends
Claus Gittinger <cg@exept.de>
parents: 384
diff changeset
   695
                nil             " 150 "
655
3dcaf2f42818 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 573
diff changeset
   696
                'send0 #value'
3dcaf2f42818 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 573
diff changeset
   697
                'send1 #value:'
3dcaf2f42818 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 573
diff changeset
   698
                'send0 #size'
401
f85fe04ce607 changes for special sends
Claus Gittinger <cg@exept.de>
parents: 384
diff changeset
   699
                nil
f85fe04ce607 changes for special sends
Claus Gittinger <cg@exept.de>
parents: 384
diff changeset
   700
                nil             " 155 "
342
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   701
                make0Block             
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   702
                makeNILBlock
401
f85fe04ce607 changes for special sends
Claus Gittinger <cg@exept.de>
parents: 384
diff changeset
   703
                nil             " 158 "
f85fe04ce607 changes for special sends
Claus Gittinger <cg@exept.de>
parents: 384
diff changeset
   704
                nil             " 159 "
342
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   705
                retMvar1        " 160 " "16rA0"
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   706
                retMvar2        
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   707
                retMvar3        
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   708
                retMvar4        
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   709
                retMvar5        
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   710
                retMvar6        " 165 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   711
                retIvar1        
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   712
                retIvar2        
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   713
                retIvar3        
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   714
                retIvar4        
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   715
                retIvar5        " 170 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   716
                retIvar6        
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   717
                retIvar7        
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   718
                retIvar8        
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   719
                retMarg1        
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   720
                retMarg2        " 175 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   721
                pushClassInstVar
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   722
                storeClassInstVar
1140
40bb7432cea2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 767
diff changeset
   723
                'send2 #value:value:'
342
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   724
                not
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   725
                sendSelf0       " 180 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   726
                sendSelf1
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   727
                sendSelf2
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   728
                sendSelf3
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   729
                sendSelfDrop0   
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   730
                sendSelfDrop1   " 185 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   731
                sendSelfDrop2
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   732
                sendSelfDrop3
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   733
                isNil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   734
                notNil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   735
                falseJumpAbs    " 190 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   736
                trueJumpAbs     
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   737
                nilJumpAbs     
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   738
                notNilJumpAbs   
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   739
                jumpAbs        
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   740
                makeBlockAbs    " 195 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   741
                zeroJumpAbs
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   742
                notZeroJumpAbs
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   743
                eqJumpAbs
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   744
                notEqJumpAbs    " 199 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   745
                pushGlobal      " 200 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   746
                pushLLit
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   747
                jmpFalseL
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   748
                jmpTrueL
1793
5e4a4284c722 preps for vl literals
Claus Gittinger <cg@exept.de>
parents: 1789
diff changeset
   749
                vl_op
342
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   750
                lsend           "   205 " 
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   751
                lsuperSend
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   752
                lsendSelf         
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   753
                pushGT0
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   754
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   755
                sendArrayNew    "   210 " 
655
3dcaf2f42818 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 573
diff changeset
   756
                'send0 #basicNew'      
342
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   757
                sendGT0
655
3dcaf2f42818 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 573
diff changeset
   758
                'send0 #new'
342
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   759
                sendBasicNewN
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   760
                sendNewN        "   215 " 
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   761
                sendLogAnd
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   762
                sendLogOr
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   763
                pushGlobL
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   764
                storeGlobL
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   765
                nil              "  220 " 
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   766
                nil                  
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   767
                pushLit1             
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   768
                pushLit2              
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   769
                pushLit3             
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   770
                pushLit4             
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   771
                pushLit5             
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   772
                pushLit6             
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   773
                pushLit7            
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   774
                pushLit8            
655
3dcaf2f42818 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 573
diff changeset
   775
                'send1 #*'          "   230 "
342
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   776
                sendSpecial      "   231 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   777
                pushBlockVar1
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   778
                pushBlockVar2
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   779
                pushBlockVar3
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   780
                storeBlockVar1
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   781
                storeBlockVar2
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   782
                storeBlockVar3
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   783
                refCheck
2751
12e5d1a3ef5a changed: #symbolicCodeFor:
Claus Gittinger <cg@exept.de>
parents: 2431
diff changeset
   784
                pushMethodLocal
12e5d1a3ef5a changed: #symbolicCodeFor:
Claus Gittinger <cg@exept.de>
parents: 2431
diff changeset
   785
                storeMethodLocal      " 240 "
3168
6e86e974bb40 class: Decompiler
Stefan Vogel <sv@exept.de>
parents: 3106
diff changeset
   786
                storeBlockLocal       " 241 "
6e86e974bb40 class: Decompiler
Stefan Vogel <sv@exept.de>
parents: 3106
diff changeset
   787
                storeOuterBlockLocal  " 242 "
6e86e974bb40 class: Decompiler
Stefan Vogel <sv@exept.de>
parents: 3106
diff changeset
   788
                swap                  " 243 "
342
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   789
              ).
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
   790
7ad01559b262 Initial revision
claus
parents:
diff changeset
   791
    lnos := #(  false          " 0  "
342
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   792
                false   
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   793
                false   
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   794
                false   
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   795
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   796
                false          " 5  "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   797
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   798
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   799
                true
3106
119f0ff4b41d Fixed Decompiler: correctly show LINE16 pseudo insn...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2753
diff changeset
   800
                true
342
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   801
                false          " 10 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   802
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   803
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   804
                true
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   805
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   806
                false          " 15 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   807
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   808
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   809
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   810
                true
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   811
                true           " 20 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   812
                true 
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   813
                true 
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   814
                true 
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   815
                true 
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   816
                true           " 25 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   817
                true 
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   818
                true 
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   819
                true 
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   820
                true 
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   821
                false          " 30 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   822
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   823
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   824
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   825
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   826
                false          " 35 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   827
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   828
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   829
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   830
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   831
                false           " 40 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   832
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   833
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   834
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   835
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   836
                false           " 45 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   837
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   838
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   839
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   840
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   841
                false       " 50 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   842
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   843
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   844
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   845
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   846
                false       " 55 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   847
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   848
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   849
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   850
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   851
                false       " 60 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   852
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   853
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   854
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   855
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   856
                false       " 65 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   857
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   858
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   859
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   860
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   861
                false       " 70 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   862
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   863
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   864
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   865
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   866
                false       " 75 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   867
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   868
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   869
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   870
                false 
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   871
                false  " 80 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   872
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   873
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   874
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   875
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   876
                false  " 85 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   877
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   878
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   879
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   880
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   881
                false    " 90 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   882
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   883
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   884
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   885
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   886
                false    " 95 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   887
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   888
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   889
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   890
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   891
                false " 100 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   892
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   893
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   894
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   895
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   896
                false " 105 "
347
c41b9c9c0e50 oops - sendWIDTH & sendHEIGHT have lineNumber info
Claus Gittinger <cg@exept.de>
parents: 344
diff changeset
   897
                true
c41b9c9c0e50 oops - sendWIDTH & sendHEIGHT have lineNumber info
Claus Gittinger <cg@exept.de>
parents: 344
diff changeset
   898
                true
c41b9c9c0e50 oops - sendWIDTH & sendHEIGHT have lineNumber info
Claus Gittinger <cg@exept.de>
parents: 344
diff changeset
   899
                true
c41b9c9c0e50 oops - sendWIDTH & sendHEIGHT have lineNumber info
Claus Gittinger <cg@exept.de>
parents: 344
diff changeset
   900
                true
342
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   901
                false   " 110 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   902
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   903
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   904
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   905
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   906
                false  " 115 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   907
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   908
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   909
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   910
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   911
                false           " 120 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   912
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   913
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   914
                true
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   915
                true
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   916
                true    " 125 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   917
                true
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   918
                false
1148
a008a06fbbc5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1141
diff changeset
   919
                false              "/ 128 pushOuterBlockVar
342
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   920
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   921
                true          " 130 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   922
                true
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   923
                true
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   924
                true
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   925
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   926
                true          " 135 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   927
                true
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   928
                true
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   929
                true
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   930
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   931
                false   " 140 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   932
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   933
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   934
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   935
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   936
                true          " 145 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   937
                true
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   938
                true
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   939
                true
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   940
                true
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   941
                true        " 150 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   942
                true
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   943
                true
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   944
                true
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   945
                true
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   946
                true             " 155 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   947
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   948
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   949
                true
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   950
                true
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   951
                false        " 160 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   952
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   953
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   954
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   955
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   956
                false        " 165 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   957
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   958
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   959
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   960
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   961
                false        " 170 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   962
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   963
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   964
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   965
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   966
                false        " 175 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   967
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   968
                false
1140
40bb7432cea2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 767
diff changeset
   969
                true
342
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   970
                true
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   971
                true         " 180 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   972
                true
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   973
                true
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   974
                true
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   975
                true
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   976
                true         " 185 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   977
                true
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   978
                true
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   979
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   980
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   981
                false         " 190 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   982
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   983
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   984
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   985
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   986
                false         " 195 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   987
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   988
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   989
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   990
                false         " 199 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   991
                false         " 200 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   992
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   993
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   994
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   995
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   996
                true            " 205 " 
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   997
                true
1258
138039453522 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1148
diff changeset
   998
                true
342
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
   999
                true
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1000
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1001
                false           " 210 "      " arrayNew "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1002
                true                         " basicNew "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1003
                true                         " > 0 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1004
                true                         " new "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1005
                true                         " basicNew: "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1006
                true            " 215 "      " new: "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1007
                true
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1008
                true
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1009
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1010
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1011
                false           " 220 " 
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1012
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1013
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1014
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1015
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1016
                false           " 225 " 
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1017
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1018
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1019
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1020
                false           " 229 " 
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1021
                true            " 230 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1022
                true            " 231 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1023
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1024
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1025
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1026
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1027
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1028
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1029
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1030
                false
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1031
                false           " 240 "
2751
12e5d1a3ef5a changed: #symbolicCodeFor:
Claus Gittinger <cg@exept.de>
parents: 2431
diff changeset
  1032
                false           " 241 "
2753
31833dfb5677 changed: #symbolicCodeFor:
Claus Gittinger <cg@exept.de>
parents: 2751
diff changeset
  1033
                false           " 242 "
3168
6e86e974bb40 class: Decompiler
Stefan Vogel <sv@exept.de>
parents: 3106
diff changeset
  1034
                false           " 243 "
342
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1035
              ).
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
  1036
7ad01559b262 Initial revision
claus
parents:
diff changeset
  1037
    extras := #(nil             " 0  "
342
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1038
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1039
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1040
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1041
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1042
                nil             " 5  "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1043
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1044
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1045
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1046
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1047
                nil             " 10 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1048
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1049
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1050
                sendArgs
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1051
                literal
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1052
                nil             " 15 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1053
                number
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1054
                number16
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1055
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1056
                sendArgs
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1057
                superSendArgs   " 20 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1058
                literal
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1059
                literal
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1060
                literal
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1061
                literal
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1062
                sendArgs        " 25 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1063
                literal
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1064
                literal
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1065
                literal
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1066
                literal
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1067
                index           " 30 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1068
                index
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1069
                index
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1070
                index
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1071
                instvarIndex
356
bb3beb18de1f 6empty slots in GLOBL/CLASSVAR bytecodes removed
Claus Gittinger <cg@exept.de>
parents: 347
diff changeset
  1072
                literal         " 35 "
bb3beb18de1f 6empty slots in GLOBL/CLASSVAR bytecodes removed
Claus Gittinger <cg@exept.de>
parents: 347
diff changeset
  1073
                literal
342
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1074
                index
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1075
                index
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1076
                instvarIndex
356
bb3beb18de1f 6empty slots in GLOBL/CLASSVAR bytecodes removed
Claus Gittinger <cg@exept.de>
parents: 347
diff changeset
  1077
                literal         " 40 "
bb3beb18de1f 6empty slots in GLOBL/CLASSVAR bytecodes removed
Claus Gittinger <cg@exept.de>
parents: 347
diff changeset
  1078
                literal     
573
7aadeb921f21 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 551
diff changeset
  1079
                levelIndex
342
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1080
                index
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1081
                index
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1082
                nil             " 45 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1083
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1084
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1085
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1086
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1087
                offset          " 50 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1088
                offset
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1089
                offset
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1090
                offset
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1091
                offset
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1092
                offsetLevel     " 55 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1093
                offset
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1094
                offset
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1095
                offset
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1096
                offset
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1097
                longOffset      " 60 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1098
                longOffset
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1099
                longOffset
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1100
                longOffset
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1101
                longOffset
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1102
                longOffsetLevel " 65 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1103
                longOffset
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1104
                longOffset
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1105
                longOffset
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1106
                longOffset
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1107
                veryLongOffset  " 70 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1108
                veryLongOffset
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1109
                veryLongOffset
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1110
                veryLongOffset
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1111
                veryLongOffset
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1112
                veryLongOffsetLevel  " 75 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1113
                veryLongOffset
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1114
                veryLongOffset
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1115
                veryLongOffset
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1116
                veryLongOffset
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1117
                nil             " 80 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1118
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1119
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1120
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1121
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1122
                nil             " 85 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1123
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1124
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1125
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1126
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1127
                nil             " 90 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1128
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1129
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1130
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1131
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1132
                nil             " 95 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1133
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1134
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1135
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1136
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1137
                nil             " 100 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1138
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1139
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1140
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1141
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1142
                nil             " 105 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1143
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1144
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1145
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1146
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1147
                nil             " 110 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1148
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1149
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1150
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1151
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1152
                nil             " 115 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1153
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1154
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1155
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1156
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1157
                nil             " 120 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1158
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1159
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1160
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1161
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1162
                index           " 125 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1163
                index
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1164
                number
1148
a008a06fbbc5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1141
diff changeset
  1165
                levelIndex      "/ 128 pushOuterBlockVar
573
7aadeb921f21 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 551
diff changeset
  1166
                levelIndex
342
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1167
                nil             " 130 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1168
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1169
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1170
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1171
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1172
                nil             " 135 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1173
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1174
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1175
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1176
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1177
                nil             " 140 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1178
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1179
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1180
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1181
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1182
                nil             " 145 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1183
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1184
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1185
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1186
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1187
                nil             " 150 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1188
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1189
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1190
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1191
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1192
                nil             " 155 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1193
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1194
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1195
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1196
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1197
                nil             " 160 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1198
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1199
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1200
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1201
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1202
                nil             " 165 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1203
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1204
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1205
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1206
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1207
                nil             " 170 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1208
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1209
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1210
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1211
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1212
                nil             " 175 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1213
                index
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1214
                index
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1215
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1216
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1217
                literal         " 180 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1218
                literal
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1219
                literal
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1220
                literal
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1221
                literal         
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1222
                literal         " 185 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1223
                literal
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1224
                literal
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1225
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1226
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1227
                absOffset       " 190 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1228
                absOffset
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1229
                absOffset
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1230
                absOffset
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1231
                absOffset
573
7aadeb921f21 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 551
diff changeset
  1232
                absOffsetLevel  " 195 "
342
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1233
                absOffset
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1234
                absOffset
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1235
                absOffset
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1236
                absOffset       " 199 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1237
                specialGlobal   " 200 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1238
                literal16
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1239
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1240
                nil
1793
5e4a4284c722 preps for vl literals
Claus Gittinger <cg@exept.de>
parents: 1789
diff changeset
  1241
                extraOp
342
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1242
                lsendArgs       " 205 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1243
                lsuperSendArgs
1258
138039453522 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1148
diff changeset
  1244
                lsendArgs
342
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1245
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1246
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1247
                nil             " 210 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1248
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1249
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1250
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1251
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1252
                nil             " 215 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1253
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1254
                nil
356
bb3beb18de1f 6empty slots in GLOBL/CLASSVAR bytecodes removed
Claus Gittinger <cg@exept.de>
parents: 347
diff changeset
  1255
                literal16        
bb3beb18de1f 6empty slots in GLOBL/CLASSVAR bytecodes removed
Claus Gittinger <cg@exept.de>
parents: 347
diff changeset
  1256
                literal16     
342
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1257
                nil             " 220 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1258
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1259
                lit1
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1260
                lit2
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1261
                lit3
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1262
                lit4            " 225 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1263
                lit5
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1264
                lit6
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1265
                lit7
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1266
                lit8
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1267
                nil             " 230 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1268
                specialSend     " 231 "
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1269
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1270
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1271
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1272
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1273
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1274
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1275
                nil
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1276
                index
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1277
                index           " 240 "
2751
12e5d1a3ef5a changed: #symbolicCodeFor:
Claus Gittinger <cg@exept.de>
parents: 2431
diff changeset
  1278
                index           " 241 "
2753
31833dfb5677 changed: #symbolicCodeFor:
Claus Gittinger <cg@exept.de>
parents: 2751
diff changeset
  1279
                levelIndex      " 242 "
3168
6e86e974bb40 class: Decompiler
Stefan Vogel <sv@exept.de>
parents: 3106
diff changeset
  1280
                nil             " 243 "
342
fe32a900f0a3 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 331
diff changeset
  1281
             ).
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
  1282
401
f85fe04ce607 changes for special sends
Claus Gittinger <cg@exept.de>
parents: 384
diff changeset
  1283
    sym := syms at:(aByte + 1).
f85fe04ce607 changes for special sends
Claus Gittinger <cg@exept.de>
parents: 384
diff changeset
  1284
    sym isNil ifTrue:[
f85fe04ce607 changes for special sends
Claus Gittinger <cg@exept.de>
parents: 384
diff changeset
  1285
        extra := nil.
f85fe04ce607 changes for special sends
Claus Gittinger <cg@exept.de>
parents: 384
diff changeset
  1286
        hasLineNo := nil.
f85fe04ce607 changes for special sends
Claus Gittinger <cg@exept.de>
parents: 384
diff changeset
  1287
    ] ifFalse:[
f85fe04ce607 changes for special sends
Claus Gittinger <cg@exept.de>
parents: 384
diff changeset
  1288
        extra := extras at:(aByte + 1).
f85fe04ce607 changes for special sends
Claus Gittinger <cg@exept.de>
parents: 384
diff changeset
  1289
        hasLineNo := lnos at:(aByte + 1).
f85fe04ce607 changes for special sends
Claus Gittinger <cg@exept.de>
parents: 384
diff changeset
  1290
    ].
3168
6e86e974bb40 class: Decompiler
Stefan Vogel <sv@exept.de>
parents: 3106
diff changeset
  1291
    ^ sym.
164
b511f22fea3b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 135
diff changeset
  1292
2751
12e5d1a3ef5a changed: #symbolicCodeFor:
Claus Gittinger <cg@exept.de>
parents: 2431
diff changeset
  1293
    "Modified: / 02-09-1995 / 00:12:11 / claus"
2753
31833dfb5677 changed: #symbolicCodeFor:
Claus Gittinger <cg@exept.de>
parents: 2751
diff changeset
  1294
    "Modified: / 25-10-2011 / 21:58:24 / cg"
3106
119f0ff4b41d Fixed Decompiler: correctly show LINE16 pseudo insn...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2753
diff changeset
  1295
    "Modified: / 12-04-2013 / 01:31:27 / Jan Vrany <jan.vrany@fit.cvut.cz>"
0
7ad01559b262 Initial revision
claus
parents:
diff changeset
  1296
! !
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
  1297
378
450a65b641b2 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 356
diff changeset
  1298
!Decompiler class methodsFor:'documentation'!
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
  1299
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
  1300
version
3728
9c1241d837e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
  1301
    ^ '$Header$'
2423
76872ad5c630 changed: #decompile:to:
Claus Gittinger <cg@exept.de>
parents: 2128
diff changeset
  1302
!
76872ad5c630 changed: #decompile:to:
Claus Gittinger <cg@exept.de>
parents: 2128
diff changeset
  1303
76872ad5c630 changed: #decompile:to:
Claus Gittinger <cg@exept.de>
parents: 2128
diff changeset
  1304
version_CVS
3728
9c1241d837e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 3443
diff changeset
  1305
    ^ '$Header$'
217
eba0ee7232aa new opcodes
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
  1306
! !
3106
119f0ff4b41d Fixed Decompiler: correctly show LINE16 pseudo insn...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2753
diff changeset
  1307