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