JavaByteCodeProcessor.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Wed, 28 Aug 2013 09:16:36 +0100
branchdevelopment
changeset 2674 8b3736c87626
parent 2429 ebece4dcaab9
child 2695 11ef104a9971
permissions -rw-r--r--
Added InetAddressTests to cover different layouts in different OpenJDK 6. There seems to be at least two different clas layouts for Inet4Address and Inet6Address. This testcase should test whether native methods handle both layouts correctly.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
     1
"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
     2
 COPYRIGHT (c) 1996-2011 by Claus Gittinger
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
     3
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
     4
 New code and modifications done at SWING Research Group [1]:
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
     5
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
     6
 COPYRIGHT (c) 2010-2011 by Jan Vrany, Jan Kurs and Marcel Hlopko
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
     7
                            SWING Research Group, Czech Technical University in Prague
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
     8
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
     9
 This software is furnished under a license and may be used
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    10
 only in accordance with the terms of that license and with the
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    11
 inclusion of the above copyright notice.   This software may not
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    12
 be provided or otherwise made available to, or used by, any
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    13
 other person.  No title to or ownership of the software is
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    14
 hereby transferred.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    15
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
    16
 [1] Code written at SWING Research Group contains a signature
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
    17
     of one of the above copright owners. For exact set of such code,
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
    18
     see the differences between this version and version stx:libjava
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
    19
     as of 1.9.2010
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    20
"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    21
"{ Package: 'stx:libjava' }"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    22
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    23
Object subclass:#JavaByteCodeProcessor
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    24
	instanceVariableNames:'byteCode pc method constantPool context receiver sp retVal
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    25
		instrPointer op wide numArgs numVars leaveProcessor'
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    26
	classVariableNames:'OpSwitchTable Verbose'
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    27
	poolDictionaries:''
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    28
	category:'Languages-Java-Bytecode'
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    29
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    30
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    31
!JavaByteCodeProcessor class methodsFor:'documentation'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    32
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    33
copyright
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    34
"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    35
 COPYRIGHT (c) 1996-2011 by Claus Gittinger
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
    36
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
    37
 New code and modifications done at SWING Research Group [1]:
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
    38
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    39
 COPYRIGHT (c) 2010-2011 by Jan Vrany, Jan Kurs and Marcel Hlopko
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    40
                            SWING Research Group, Czech Technical University in Prague
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    41
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    42
 This software is furnished under a license and may be used
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    43
 only in accordance with the terms of that license and with the
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    44
 inclusion of the above copyright notice.   This software may not
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    45
 be provided or otherwise made available to, or used by, any
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    46
 other person.  No title to or ownership of the software is
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    47
 hereby transferred.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    48
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
    49
 [1] Code written at SWING Research Group contains a signature
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
    50
     of one of the above copright owners. For exact set of such code,
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
    51
     see the differences between this version and version stx:libjava
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
    52
     as of 1.9.2010
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    53
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    54
"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    55
! !
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    56
2396
fadc6d7a2f5b Updated to rev 009a0df3afce
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2353
diff changeset
    57
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    58
!JavaByteCodeProcessor class methodsFor:'initialization'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    59
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    60
initialize
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    61
    OpSwitchTable := Array new: 256.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    62
    OpSwitchTable at: 1 + 0 put: #nop.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    63
    OpSwitchTable at: 1 + 1 put: #'aconst_null'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    64
    OpSwitchTable at: 1 + 2 put: #'iconst_m1'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    65
    OpSwitchTable at: 1 + 3 put: #'iconst_0'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    66
    OpSwitchTable at: 1 + 4 put: #'iconst_1'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    67
    OpSwitchTable at: 1 + 5 put: #'iconst_2'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    68
    OpSwitchTable at: 1 + 6 put: #'iconst_3'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    69
    OpSwitchTable at: 1 + 7 put: #'iconst_4'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    70
    OpSwitchTable at: 1 + 8 put: #'iconst_5'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    71
    OpSwitchTable at: 1 + 9 put: #'lconst_0'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    72
    OpSwitchTable at: 1 + 10 put: #'lconst_1'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    73
    OpSwitchTable at: 1 + 11 put: #'fconst_0'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    74
    OpSwitchTable at: 1 + 12 put: #'fconst_1'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    75
    OpSwitchTable at: 1 + 13 put: #'fconst_2'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    76
    OpSwitchTable at: 1 + 14 put: #'dconst_0'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    77
    OpSwitchTable at: 1 + 15 put: #'dconst_1'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    78
    OpSwitchTable at: 1 + 16 put: #bipush.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    79
    OpSwitchTable at: 1 + 17 put: #sipush.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    80
    OpSwitchTable at: 1 + 18 put: #ldc1.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    81
    OpSwitchTable at: 1 + 19 put: #ldc2.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    82
    OpSwitchTable at: 1 + 20 put: #ldc2w.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    83
    OpSwitchTable at: 1 + 21 put: #iload.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    84
    OpSwitchTable at: 1 + 22 put: #lload.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    85
    OpSwitchTable at: 1 + 23 put: #fload.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    86
    OpSwitchTable at: 1 + 24 put: #dload.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    87
    OpSwitchTable at: 1 + 25 put: #aload.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    88
    OpSwitchTable at: 1 + 26 put: #'iload_0'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    89
    OpSwitchTable at: 1 + 27 put: #'iload_1'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    90
    OpSwitchTable at: 1 + 28 put: #'iload_2'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    91
    OpSwitchTable at: 1 + 29 put: #'iload_3'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    92
    OpSwitchTable at: 1 + 30 put: #'lload_0'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    93
    OpSwitchTable at: 1 + 31 put: #'lload_1'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    94
    OpSwitchTable at: 1 + 32 put: #'lload_2'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    95
    OpSwitchTable at: 1 + 33 put: #'lload_3'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    96
    OpSwitchTable at: 1 + 34 put: #'fload_0'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    97
    OpSwitchTable at: 1 + 35 put: #'fload_1'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    98
    OpSwitchTable at: 1 + 36 put: #'fload_2'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
    99
    OpSwitchTable at: 1 + 37 put: #'fload_3'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   100
    OpSwitchTable at: 1 + 38 put: #'dload_0'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   101
    OpSwitchTable at: 1 + 39 put: #'dload_1'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   102
    OpSwitchTable at: 1 + 40 put: #'dload_2'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   103
    OpSwitchTable at: 1 + 41 put: #'dload_3'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   104
    OpSwitchTable at: 1 + 42 put: #'aload_0'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   105
    OpSwitchTable at: 1 + 43 put: #'aload_1'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   106
    OpSwitchTable at: 1 + 44 put: #'aload_2'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   107
    OpSwitchTable at: 1 + 45 put: #'aload_3'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   108
    OpSwitchTable at: 1 + 46 put: #iaload.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   109
    OpSwitchTable at: 1 + 47 put: #laload.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   110
    OpSwitchTable at: 1 + 48 put: #faload.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   111
    OpSwitchTable at: 1 + 49 put: #daload.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   112
    OpSwitchTable at: 1 + 50 put: #aaload.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   113
    OpSwitchTable at: 1 + 51 put: #baload.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   114
    OpSwitchTable at: 1 + 52 put: #caload.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   115
    OpSwitchTable at: 1 + 53 put: #saload.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   116
    OpSwitchTable at: 1 + 54 put: #istore.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   117
    OpSwitchTable at: 1 + 55 put: #lstore.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   118
    OpSwitchTable at: 1 + 56 put: #fstore.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   119
    OpSwitchTable at: 1 + 57 put: #dstore.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   120
    OpSwitchTable at: 1 + 58 put: #astore.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   121
    OpSwitchTable at: 1 + 59 put: #'istore_0'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   122
    OpSwitchTable at: 1 + 60 put: #'istore_1'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   123
    OpSwitchTable at: 1 + 61 put: #'istore_2'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   124
    OpSwitchTable at: 1 + 62 put: #'istore_3'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   125
    OpSwitchTable at: 1 + 63 put: #'lstore_0'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   126
    OpSwitchTable at: 1 + 64 put: #'lstore_1'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   127
    OpSwitchTable at: 1 + 65 put: #'lstore_2'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   128
    OpSwitchTable at: 1 + 66 put: #'lstore_3'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   129
    OpSwitchTable at: 1 + 67 put: #'fstore_0'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   130
    OpSwitchTable at: 1 + 68 put: #'fstore_1'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   131
    OpSwitchTable at: 1 + 69 put: #'fstore_2'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   132
    OpSwitchTable at: 1 + 70 put: #'fstore_3'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   133
    OpSwitchTable at: 1 + 71 put: #'dstore_0'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   134
    OpSwitchTable at: 1 + 72 put: #'dstore_1'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   135
    OpSwitchTable at: 1 + 73 put: #'dstore_2'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   136
    OpSwitchTable at: 1 + 74 put: #'dstore_3'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   137
    OpSwitchTable at: 1 + 75 put: #'astore_0'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   138
    OpSwitchTable at: 1 + 76 put: #'astore_1'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   139
    OpSwitchTable at: 1 + 77 put: #'astore_2'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   140
    OpSwitchTable at: 1 + 78 put: #'astore_3'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   141
    OpSwitchTable at: 1 + 79 put: #iastore.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   142
    OpSwitchTable at: 1 + 80 put: #lastore.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   143
    OpSwitchTable at: 1 + 81 put: #fastore.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   144
    OpSwitchTable at: 1 + 82 put: #dastore.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   145
    OpSwitchTable at: 1 + 83 put: #aastore.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   146
    OpSwitchTable at: 1 + 84 put: #bastore.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   147
    OpSwitchTable at: 1 + 85 put: #castore.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   148
    OpSwitchTable at: 1 + 86 put: #sastore.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   149
    OpSwitchTable at: 1 + 87 put: #pop1.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   150
    OpSwitchTable at: 1 + 88 put: #pop2.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   151
    OpSwitchTable at: 1 + 89 put: #dup.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   152
    OpSwitchTable at: 1 + 90 put: #'dup_x1'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   153
    OpSwitchTable at: 1 + 91 put: #'dup_x2'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   154
    OpSwitchTable at: 1 + 92 put: #dup2.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   155
    OpSwitchTable at: 1 + 93 put: #'dup2_x1'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   156
    OpSwitchTable at: 1 + 94 put: #'dup2_x2'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   157
    OpSwitchTable at: 1 + 95 put: #swap.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   158
    OpSwitchTable at: 1 + 96 put: #iadd.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   159
    OpSwitchTable at: 1 + 97 put: #ladd.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   160
    OpSwitchTable at: 1 + 98 put: #fadd.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   161
    OpSwitchTable at: 1 + 99 put: #dadd.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   162
    OpSwitchTable at: 1 + 100 put: #isub.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   163
    OpSwitchTable at: 1 + 101 put: #lsub.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   164
    OpSwitchTable at: 1 + 102 put: #fsub.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   165
    OpSwitchTable at: 1 + 103 put: #dsub.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   166
    OpSwitchTable at: 1 + 104 put: #imul.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   167
    OpSwitchTable at: 1 + 105 put: #lmul.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   168
    OpSwitchTable at: 1 + 106 put: #fmul.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   169
    OpSwitchTable at: 1 + 107 put: #dmul.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   170
    OpSwitchTable at: 1 + 108 put: #idiv.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   171
    OpSwitchTable at: 1 + 109 put: #ldiv.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   172
    OpSwitchTable at: 1 + 110 put: #fdiv.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   173
    OpSwitchTable at: 1 + 111 put: #ddiv.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   174
    OpSwitchTable at: 1 + 112 put: #irem.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   175
    OpSwitchTable at: 1 + 113 put: #lrem.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   176
    OpSwitchTable at: 1 + 114 put: #frem.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   177
    OpSwitchTable at: 1 + 115 put: #drem.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   178
    OpSwitchTable at: 1 + 116 put: #ineg.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   179
    OpSwitchTable at: 1 + 117 put: #lneg.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   180
    OpSwitchTable at: 1 + 118 put: #fneg.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   181
    OpSwitchTable at: 1 + 119 put: #dneg.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   182
    OpSwitchTable at: 1 + 120 put: #ishl.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   183
    OpSwitchTable at: 1 + 121 put: #lshl.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   184
    OpSwitchTable at: 1 + 122 put: #ishr.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   185
    OpSwitchTable at: 1 + 123 put: #lshr.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   186
    OpSwitchTable at: 1 + 124 put: #iushr.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   187
    OpSwitchTable at: 1 + 125 put: #lushr.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   188
    OpSwitchTable at: 1 + 126 put: #iand.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   189
    OpSwitchTable at: 1 + 127 put: #land.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   190
    OpSwitchTable at: 1 + 128 put: #ior.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   191
    OpSwitchTable at: 1 + 129 put: #lor.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   192
    OpSwitchTable at: 1 + 130 put: #ixor.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   193
    OpSwitchTable at: 1 + 131 put: #lxor.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   194
    OpSwitchTable at: 1 + 132 put: #iinc.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   195
    OpSwitchTable at: 1 + 133 put: #i2l.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   196
    OpSwitchTable at: 1 + 134 put: #i2f.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   197
    OpSwitchTable at: 1 + 135 put: #i2d.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   198
    OpSwitchTable at: 1 + 136 put: #l2i.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   199
    OpSwitchTable at: 1 + 137 put: #l2f.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   200
    OpSwitchTable at: 1 + 138 put: #l2d.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   201
    OpSwitchTable at: 1 + 139 put: #f2i.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   202
    OpSwitchTable at: 1 + 140 put: #f2l.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   203
    OpSwitchTable at: 1 + 141 put: #f2d.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   204
    OpSwitchTable at: 1 + 142 put: #d2i.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   205
    OpSwitchTable at: 1 + 143 put: #d2l.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   206
    OpSwitchTable at: 1 + 144 put: #d2f.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   207
    OpSwitchTable at: 1 + 145 put: #int2byte.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   208
    OpSwitchTable at: 1 + 146 put: #int2char.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   209
    OpSwitchTable at: 1 + 147 put: #int2short.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   210
    OpSwitchTable at: 1 + 148 put: #lcmp.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   211
    OpSwitchTable at: 1 + 149 put: #fcmpl.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   212
    OpSwitchTable at: 1 + 150 put: #fcmpg.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   213
    OpSwitchTable at: 1 + 151 put: #dcmpl.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   214
    OpSwitchTable at: 1 + 152 put: #dcmpg.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   215
    OpSwitchTable at: 1 + 153 put: #ifeq.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   216
    OpSwitchTable at: 1 + 154 put: #ifne.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   217
    OpSwitchTable at: 1 + 155 put: #iflt.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   218
    OpSwitchTable at: 1 + 156 put: #ifge.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   219
    OpSwitchTable at: 1 + 157 put: #ifgt.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   220
    OpSwitchTable at: 1 + 158 put: #ifle.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   221
    OpSwitchTable at: 1 + 159 put: #ificmpeq.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   222
    OpSwitchTable at: 1 + 160 put: #ificmpne.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   223
    OpSwitchTable at: 1 + 161 put: #ificmplt.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   224
    OpSwitchTable at: 1 + 162 put: #ificmpge.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   225
    OpSwitchTable at: 1 + 163 put: #ificmpgt.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   226
    OpSwitchTable at: 1 + 164 put: #ificmple.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   227
    OpSwitchTable at: 1 + 165 put: #ifacmpeq.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   228
    OpSwitchTable at: 1 + 166 put: #ifacmpne.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   229
    OpSwitchTable at: 1 + 167 put: #goto.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   230
    OpSwitchTable at: 1 + 168 put: #jsr.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   231
    OpSwitchTable at: 1 + 169 put: #ret.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   232
    OpSwitchTable at: 1 + 170 put: #tableswtch.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   233
    OpSwitchTable at: 1 + 171 put: #lookupswtch.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   234
    OpSwitchTable at: 1 + 172 put: #ireturn.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   235
    OpSwitchTable at: 1 + 173 put: #lreturn.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   236
    OpSwitchTable at: 1 + 174 put: #freturn.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   237
    OpSwitchTable at: 1 + 175 put: #dreturn.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   238
    OpSwitchTable at: 1 + 176 put: #areturn.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   239
    OpSwitchTable at: 1 + 177 put: #return.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   240
    OpSwitchTable at: 1 + 178 put: #getstatic.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   241
    OpSwitchTable at: 1 + 179 put: #putstatic.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   242
    OpSwitchTable at: 1 + 180 put: #getfield.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   243
    OpSwitchTable at: 1 + 181 put: #putfield.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   244
    OpSwitchTable at: 1 + 182 put: #invvirt.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   245
    OpSwitchTable at: 1 + 183 put: #invnonvirt.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   246
    OpSwitchTable at: 1 + 184 put: #invstatic.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   247
    OpSwitchTable at: 1 + 185 put: #invinterface.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   248
    OpSwitchTable at: 1 + 187 put: #new.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   249
    OpSwitchTable at: 1 + 188 put: #newarray.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   250
    OpSwitchTable at: 1 + 189 put: #anewarray.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   251
    OpSwitchTable at: 1 + 190 put: #arraylength.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   252
    OpSwitchTable at: 1 + 191 put: #athrow.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   253
    OpSwitchTable at: 1 + 192 put: #checkcast.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   254
    OpSwitchTable at: 1 + 193 put: #instanceof.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   255
    OpSwitchTable at: 1 + 194 put: #monenter.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   256
    OpSwitchTable at: 1 + 195 put: #monexit.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   257
    OpSwitchTable at: 1 + 196 put: #wide.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   258
    OpSwitchTable at: 1 + 197 put: #multianewarray.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   259
    OpSwitchTable at: 1 + 198 put: #ifnull.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   260
    OpSwitchTable at: 1 + 199 put: #ifnonnull.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   261
    OpSwitchTable at: 1 + 200 put: #'goto_w'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   262
    OpSwitchTable at: 1 + 201 put: #'jsr_w'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   263
    OpSwitchTable at: 1 + 202 put: #breakpoint.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   264
    OpSwitchTable at: 1 + 203 put: #'ret_w'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   265
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   266
    Verbose := false.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   267
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   268
     self initialize"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   269
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   270
    "Created: / 17-03-2011 / 14:56:13 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   271
    "Modified: / 17-03-2011 / 16:43:17 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   272
    "Modified: / 21-03-2011 / 20:23:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   273
! !
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   274
2396
fadc6d7a2f5b Updated to rev 009a0df3afce
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2353
diff changeset
   275
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   276
!JavaByteCodeProcessor class methodsFor:'accessing'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   277
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   278
verbose: bool
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   279
Verbose := bool.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   280
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   281
    "Created: / 21-03-2011 / 18:32:37 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   282
! !
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   283
2396
fadc6d7a2f5b Updated to rev 009a0df3afce
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2353
diff changeset
   284
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   285
!JavaByteCodeProcessor class methodsFor:'private-logging'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   286
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   287
log: aMessage 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   288
Verbose ifTrue: [
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   289
    ('JAVA [info]: ' , aMessage) infoPrintCR.].
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   290
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   291
    "Created: / 17-03-2011 / 14:59:24 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   292
! !
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   293
2396
fadc6d7a2f5b Updated to rev 009a0df3afce
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2353
diff changeset
   294
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   295
!JavaByteCodeProcessor methodsFor:'initialization'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   296
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   297
reset
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   298
    pc := method startPC.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   299
    byteCode := method byteCode.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   300
    constantPool := method javaClass constantPool.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   301
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   302
    "Modified: / 17-03-2011 / 14:53:03 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   303
! !
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   304
2396
fadc6d7a2f5b Updated to rev 009a0df3afce
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2353
diff changeset
   305
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   306
!JavaByteCodeProcessor methodsFor:'instructions'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   307
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   308
aaload
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   309
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   310
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   311
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   312
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   313
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   314
aastore
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   315
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   316
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   317
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   318
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   319
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   320
aconst_null
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   321
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   322
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   323
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   324
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   325
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   326
aload
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   327
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   328
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   329
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   330
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   331
    "Created: / 17-03-2011 / 15:07:27 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   332
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   333
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   334
aload: arg 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   335
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   336
     Load reference from local variable 0
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   337
     nothing -> objectRef"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   338
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   339
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   340
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   341
 "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   342
     Description
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   343
     The <n> must be an index into the local variable array of the
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   344
     current frame (§3.6). The local variable at <n> must contain a
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   345
     reference. The objectref in the local variable at index is pushed
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   346
     onto the operand stack.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   347
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   348
     Notes
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   349
     An aload_<n> instruction cannot be used to load a value of type
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   350
     returnAddress from a local variable onto the operand stack. This
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   351
     asymmetry with the corresponding astore_<n> instruction is intentional.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   352
     Each of the aload_<n> instructions is the same as aload with an index
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   353
     of <n>, except that the operand <n> is implicit."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   354
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   355
    "Modified: / 17-03-2011 / 15:26:53 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   356
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   357
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   358
aload_0
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   359
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   360
     Load reference from local variable 0
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   361
     nothing -> objectRef"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   362
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   363
    self aload: 0.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   364
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   365
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   366
     Description
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   367
     The <n> must be an index into the local variable array of the
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   368
     current frame (§3.6). The local variable at <n> must contain a
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   369
     reference. The objectref in the local variable at index is pushed
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   370
     onto the operand stack.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   371
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   372
     Notes
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   373
     An aload_<n> instruction cannot be used to load a value of type
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   374
     returnAddress from a local variable onto the operand stack. This
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   375
     asymmetry with the corresponding astore_<n> instruction is intentional.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   376
     Each of the aload_<n> instructions is the same as aload with an index
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   377
     of <n>, except that the operand <n> is implicit."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   378
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   379
    "Created: / 10-03-2011 / 21:42:22 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   380
    "Modified: / 13-03-2011 / 16:56:04 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   381
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   382
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   383
aload_1
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   384
    self aload: 1.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   385
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   386
    "Created: / 10-03-2011 / 21:42:27 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   387
    "Modified: / 13-03-2011 / 16:56:20 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   388
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   389
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   390
aload_2
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   391
    self aload: 2.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   392
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   393
    "Created: / 10-03-2011 / 21:42:31 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   394
    "Modified: / 13-03-2011 / 16:56:16 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   395
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   396
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   397
aload_3
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   398
    self aload: 3.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   399
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   400
    "Created: / 10-03-2011 / 21:43:07 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   401
    "Modified: / 13-03-2011 / 16:56:24 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   402
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   403
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   404
anewarray
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   405
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   406
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   407
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   408
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   409
    "Created: / 17-03-2011 / 16:57:13 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   410
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   411
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   412
areturn
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   413
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   414
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   415
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   416
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   417
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   418
arraylength
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   419
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   420
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   421
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   422
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   423
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   424
astore
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   425
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   426
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   427
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   428
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   429
    "Created: / 17-03-2011 / 16:37:49 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   430
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   431
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   432
astore:arg
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   433
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   434
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   435
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   436
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   437
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   438
astore_0
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   439
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   440
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   441
    ^self astore: 0.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   442
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   443
    "Created: / 17-03-2011 / 16:39:06 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   444
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   445
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   446
astore_1
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   447
    ^ self astore: 1.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   448
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   449
    "Created: / 17-03-2011 / 16:39:10 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   450
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   451
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   452
astore_2
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   453
    ^ self astore: 2.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   454
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   455
    "Created: / 17-03-2011 / 16:39:13 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   456
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   457
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   458
astore_3
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   459
    ^ self astore: 3.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   460
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   461
    "Created: / 17-03-2011 / 16:39:16 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   462
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   463
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   464
athrow
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   465
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   466
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   467
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   468
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   469
    "Created: / 17-03-2011 / 16:57:25 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   470
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   471
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   472
baload
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   473
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   474
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   475
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   476
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   477
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   478
bastore
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   479
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   480
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   481
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   482
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   483
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   484
bipush
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   485
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   486
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   487
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   488
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   489
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   490
breakpoint
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   491
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   492
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   493
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   494
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   495
    "Created: / 17-03-2011 / 16:59:04 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   496
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   497
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   498
caload
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   499
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   500
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   501
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   502
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   503
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   504
castore
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   505
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   506
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   507
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   508
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   509
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   510
checkcast
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   511
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   512
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   513
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   514
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   515
    "Created: / 17-03-2011 / 16:57:39 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   516
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   517
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   518
d2f
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   519
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   520
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   521
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   522
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   523
    "Created: / 17-03-2011 / 16:50:50 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   524
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   525
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   526
d2i
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   527
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   528
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   529
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   530
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   531
    "Created: / 17-03-2011 / 16:50:42 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   532
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   533
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   534
d2l
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   535
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   536
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   537
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   538
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   539
    "Created: / 17-03-2011 / 16:50:46 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   540
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   541
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   542
dadd
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   543
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   544
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   545
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   546
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   547
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   548
daload
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   549
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   550
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   551
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   552
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   553
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   554
dastore
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   555
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   556
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   557
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   558
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   559
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   560
dcmpg
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   561
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   562
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   563
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   564
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   565
    "Created: / 17-03-2011 / 16:52:17 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   566
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   567
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   568
dcmpl
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   569
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   570
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   571
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   572
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   573
    "Created: / 17-03-2011 / 16:52:11 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   574
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   575
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   576
dconst: arg 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   577
    "Push the double constant <d> (0.0 or 1.0) onto the operand stack.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   578
     stack: nothing -> const
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   579
     args: nothing"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   580
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   581
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   582
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   583
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   584
    "Modified: / 17-03-2011 / 15:27:29 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   585
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   586
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   587
dconst_0
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   588
"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   589
Push the double constant <d> (0.0 or 1.0) onto the operand stack.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   590
stack: nothing -> const
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   591
args: nothing
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   592
"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   593
    self dconst: 0.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   594
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   595
    "Created: / 14-03-2011 / 18:02:36 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   596
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   597
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   598
dconst_1
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   599
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   600
     Push the double constant <d> (0.0 or 1.0) onto the operand stack.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   601
     stack: nothing -> const
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   602
     args: nothing"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   603
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   604
    self dconst: 1.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   605
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   606
    "Created: / 14-03-2011 / 18:03:26 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   607
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   608
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   609
ddiv
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   610
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   611
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   612
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   613
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   614
    "Created: / 17-03-2011 / 16:46:25 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   615
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   616
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   617
dload
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   618
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   619
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   620
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   621
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   622
    "Created: / 17-03-2011 / 15:07:14 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   623
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   624
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   625
dload: arg 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   626
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   627
     Load double from local variable
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   628
     stack: nothing -> value
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   629
     args: nothing"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   630
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   631
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   632
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   633
   "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   634
     Description
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   635
     Both <n> and <n> + 1 must be indices into the local variable array of the current frame (§3.6).
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   636
     The local variable at <n> must contain a double. The value of the local variable at <n> is pushed
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   637
     onto the operand stack.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   638
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   639
     Notes
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   640
     Each of the dload_<n> instructions is the same as dload with an index of <n>, except that the
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   641
     operand <n> is implicit."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   642
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   643
    "Modified: / 17-03-2011 / 15:26:26 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   644
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   645
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   646
dload_0
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   647
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   648
     Load double from local variable
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   649
     stack: nothing -> value
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   650
     args: nothing"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   651
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   652
    self dload: 0.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   653
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   654
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   655
     Description
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   656
     Both <n> and <n> + 1 must be indices into the local variable array of the current frame (§3.6).
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   657
     The local variable at <n> must contain a double. The value of the local variable at <n> is pushed
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   658
     onto the operand stack.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   659
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   660
     Notes
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   661
     Each of the dload_<n> instructions is the same as dload with an index of <n>, except that the
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   662
     operand <n> is implicit."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   663
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   664
    "Created: / 13-03-2011 / 17:55:29 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   665
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   666
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   667
dload_1
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   668
    self dload: 1.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   669
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   670
    "Created: / 13-03-2011 / 17:55:33 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   671
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   672
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   673
dload_2
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   674
    self dload: 2.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   675
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   676
    "Created: / 13-03-2011 / 17:55:41 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   677
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   678
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   679
dload_3
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   680
    self dload: 3.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   681
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   682
    "Created: / 13-03-2011 / 17:55:45 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   683
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   684
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   685
dmul
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   686
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   687
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   688
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   689
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   690
    "Created: / 17-03-2011 / 16:46:01 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   691
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   692
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   693
dneg
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   694
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   695
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   696
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   697
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   698
    "Created: / 17-03-2011 / 16:47:42 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   699
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   700
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   701
drem
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   702
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   703
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   704
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   705
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   706
    "Created: / 17-03-2011 / 16:47:05 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   707
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   708
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   709
dreturn
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   710
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   711
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   712
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   713
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   714
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   715
dstore
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   716
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   717
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   718
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   719
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   720
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   721
dstore: arg 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   722
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   723
     Store double into local variable
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   724
     stack: value -> nothing
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   725
     args: nothing"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   726
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   727
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   728
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   729
"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   730
     Description
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   731
     Both <n> and <n> + 1 must be indices into the local variable array of the
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   732
     current frame (§3.6). The value on the top of the operand stack must be of
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   733
     type double. It is popped from the operand stack and undergoes value set
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   734
     conversion (§3.8.3), resulting in value'. The local variables at <n> and
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   735
     <n> + 1 are set to value'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   736
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   737
     Notes
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   738
     Each of the dstore_<n> instructions is the same as dstore with an index
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   739
     of <n>, except that the operand <n> is implicit."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   740
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   741
    "Modified: / 17-03-2011 / 15:28:07 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   742
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   743
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   744
dstore_0
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   745
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   746
     Store double into local variable
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   747
     stack: value -> nothing
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   748
     args: nothing"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   749
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   750
    self dstore: 0.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   751
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   752
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   753
     Description
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   754
     Both <n> and <n> + 1 must be indices into the local variable array of the
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   755
     current frame (§3.6). The value on the top of the operand stack must be of
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   756
     type double. It is popped from the operand stack and undergoes value set
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   757
     conversion (§3.8.3), resulting in value'. The local variables at <n> and
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   758
     <n> + 1 are set to value'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   759
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   760
     Notes
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   761
     Each of the dstore_<n> instructions is the same as dstore with an index
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   762
     of <n>, except that the operand <n> is implicit."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   763
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   764
    "Created: / 14-03-2011 / 19:04:44 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   765
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   766
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   767
dstore_1
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   768
"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   769
Store double into local variable
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   770
stack: value -> nothing
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   771
args: nothing
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   772
" 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   773
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   774
self dstore: 1.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   775
"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   776
Description
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   777
Both <n> and <n> + 1 must be indices into the local variable array of the 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   778
current frame (§3.6). The value on the top of the operand stack must be of 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   779
type double. It is popped from the operand stack and undergoes value set 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   780
conversion (§3.8.3), resulting in value'. The local variables at <n> and 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   781
<n> + 1 are set to value'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   782
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   783
Notes
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   784
Each of the dstore_<n> instructions is the same as dstore with an index 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   785
of <n>, except that the operand <n> is implicit.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   786
"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   787
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   788
    "Created: / 14-03-2011 / 19:04:39 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   789
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   790
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   791
dstore_2
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   792
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   793
     Store double into local variable
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   794
     stack: value -> nothing
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   795
     args: nothing"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   796
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   797
    self dstore: 2.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   798
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   799
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   800
     Description
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   801
     Both <n> and <n> + 1 must be indices into the local variable array of the
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   802
     current frame (§3.6). The value on the top of the operand stack must be of
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   803
     type double. It is popped from the operand stack and undergoes value set
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   804
     conversion (§3.8.3), resulting in value'. The local variables at <n> and
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   805
     <n> + 1 are set to value'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   806
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   807
     Notes
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   808
     Each of the dstore_<n> instructions is the same as dstore with an index
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   809
     of <n>, except that the operand <n> is implicit."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   810
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   811
    "Created: / 14-03-2011 / 19:04:49 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   812
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   813
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   814
dstore_3
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   815
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   816
     Store double into local variable
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   817
     stack: value -> nothing
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   818
     args: nothing"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   819
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   820
    self dstore: 3.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   821
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   822
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   823
     Description
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   824
     Both <n> and <n> + 1 must be indices into the local variable array of the
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   825
     current frame (§3.6). The value on the top of the operand stack must be of
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   826
     type double. It is popped from the operand stack and undergoes value set
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   827
     conversion (§3.8.3), resulting in value'. The local variables at <n> and
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   828
     <n> + 1 are set to value'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   829
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   830
     Notes
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   831
     Each of the dstore_<n> instructions is the same as dstore with an index
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   832
     of <n>, except that the operand <n> is implicit."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   833
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   834
    "Created: / 14-03-2011 / 19:04:54 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   835
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   836
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   837
dsub
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   838
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   839
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   840
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   841
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   842
    "Created: / 17-03-2011 / 16:45:33 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   843
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   844
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   845
dup
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   846
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   847
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   848
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   849
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   850
    "Created: / 17-03-2011 / 16:44:08 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   851
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   852
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   853
dup2
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   854
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   855
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   856
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   857
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   858
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   859
dup2_x1
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   860
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   861
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   862
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   863
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   864
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   865
dup2_x2
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   866
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   867
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   868
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   869
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   870
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   871
dup_x1
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   872
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   873
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   874
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   875
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   876
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   877
dup_x2
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   878
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   879
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   880
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   881
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   882
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   883
f2d
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   884
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   885
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   886
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   887
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   888
    "Created: / 17-03-2011 / 16:50:35 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   889
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   890
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   891
f2i
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   892
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   893
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   894
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   895
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   896
    "Created: / 17-03-2011 / 16:50:26 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   897
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   898
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   899
f2l
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   900
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   901
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   902
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   903
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   904
    "Created: / 17-03-2011 / 16:50:31 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   905
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   906
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   907
fadd
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   908
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   909
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   910
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   911
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   912
    "Created: / 17-03-2011 / 16:44:46 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   913
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   914
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   915
faload
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   916
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   917
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   918
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   919
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   920
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   921
fastore
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   922
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   923
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   924
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   925
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   926
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   927
fcmpg
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   928
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   929
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   930
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   931
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   932
    "Created: / 17-03-2011 / 16:52:00 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   933
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   934
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   935
fcmpl
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   936
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   937
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   938
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   939
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   940
    "Created: / 17-03-2011 / 16:51:41 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   941
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   942
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   943
fconst: arg 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   944
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   945
     Push float constant
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   946
     stack: nothing -> const
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   947
     arg: nothing"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   948
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   949
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   950
    ^ self subclassResponsibility.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   951
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   952
     Description
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   953
         Push the float constant <f> (0.0, 1.0, or 2.0) onto the operand stack."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   954
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   955
    "Modified: / 17-03-2011 / 15:28:47 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   956
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   957
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   958
fconst_0
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   959
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   960
     Push float constant
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   961
     stack: nothing -> const
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   962
     arg: nothing"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   963
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   964
    self fconst: 0.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   965
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   966
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   967
     Description
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   968
     Push the float constant <f> (0.0, 1.0, or 2.0) onto the operand stack."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   969
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   970
    "Created: / 14-03-2011 / 17:56:55 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   971
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   972
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   973
fconst_1
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   974
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   975
     Push float constant
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   976
     stack: nothing -> const
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   977
     arg: nothing"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   978
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   979
    self fconst: 1.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   980
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   981
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   982
     Description
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   983
     Push the float constant <f> (0.0, 1.0, or 2.0) onto the operand stack."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   984
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   985
    "Created: / 14-03-2011 / 17:57:50 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   986
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   987
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   988
fconst_2
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   989
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   990
     Push float constant
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   991
     stack: nothing -> const
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   992
     arg: nothing"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   993
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   994
    self fconst: 2.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   995
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   996
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   997
     Description
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   998
     Push the float constant <f> (0.0, 1.0, or 2.0) onto the operand stack."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
   999
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1000
    "Created: / 14-03-2011 / 17:57:56 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1001
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1002
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1003
fdiv
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1004
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1005
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1006
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1007
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1008
    "Created: / 17-03-2011 / 16:46:20 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1009
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1010
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1011
fload 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1012
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1013
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1014
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1015
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1016
    "Created: / 17-03-2011 / 15:07:02 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1017
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1018
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1019
fload:arg
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1020
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1021
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1022
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1023
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1024
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1025
fload_0
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1026
    ^ self fload: 0.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1027
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1028
    "Created: / 17-03-2011 / 16:34:59 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1029
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1030
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1031
fload_1
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1032
    ^ self fload: 1.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1033
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1034
    "Created: / 17-03-2011 / 16:35:03 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1035
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1036
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1037
fload_2
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1038
    ^ self fload: 2.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1039
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1040
    "Created: / 17-03-2011 / 16:35:06 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1041
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1042
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1043
fload_3
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1044
    ^ self fload: 3.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1045
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1046
    "Created: / 17-03-2011 / 16:35:11 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1047
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1048
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1049
fmul
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1050
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1051
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1052
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1053
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1054
    "Created: / 17-03-2011 / 16:45:57 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1055
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1056
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1057
fneg
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1058
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1059
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1060
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1061
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1062
    "Created: / 17-03-2011 / 16:47:40 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1063
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1064
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1065
frem
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1066
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1067
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1068
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1069
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1070
    "Created: / 17-03-2011 / 16:46:47 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1071
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1072
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1073
freturn
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1074
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1075
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1076
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1077
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1078
    "Created: / 17-03-2011 / 16:55:16 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1079
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1080
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1081
fstore
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1082
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1083
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1084
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1085
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1086
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1087
fstore: arg 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1088
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1089
     Store float into local variable
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1090
     stack: value -> nothing
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1091
         args: index"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1092
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1093
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1094
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1095
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1096
     Description
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1097
     The index is an unsigned byte that must be an index into the local
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1098
     variable array of the current frame (§3.6). The value on the top of
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1099
     the operand stack must be of type float. It is popped from the operand
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1100
     stack and undergoes value set conversion (§3.8.3), resulting in value'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1101
     The value of the local variable at index is set to value'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1102
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1103
     Notes
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1104
     The fstore opcode can be used in conjunction with the wide instruction
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1105
         to access a local variable using a two-byte unsigned index."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1106
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1107
    "Modified: / 17-03-2011 / 15:29:22 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1108
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1109
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1110
fstore_0 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1111
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1112
     Store float into local variable
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1113
     stack: value -> nothing
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1114
     args: index"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1115
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1116
    self fstore: 0.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1117
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1118
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1119
     Description
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1120
     The index is an unsigned byte that must be an index into the local
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1121
     variable array of the current frame (§3.6). The value on the top of
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1122
     the operand stack must be of type float. It is popped from the operand
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1123
     stack and undergoes value set conversion (§3.8.3), resulting in value'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1124
     The value of the local variable at index is set to value'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1125
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1126
     Notes
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1127
     The fstore opcode can be used in conjunction with the wide instruction
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1128
     to access a local variable using a two-byte unsigned index."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1129
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1130
    "Created: / 14-03-2011 / 17:59:42 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1131
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1132
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1133
fstore_1
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1134
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1135
     Store float into local variable
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1136
     stack: value -> nothing
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1137
     args: index"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1138
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1139
    self fstore: 1.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1140
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1141
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1142
     Description
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1143
     The index is an unsigned byte that must be an index into the local
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1144
     variable array of the current frame (§3.6). The value on the top of
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1145
     the operand stack must be of type float. It is popped from the operand
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1146
     stack and undergoes value set conversion (§3.8.3), resulting in value'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1147
     The value of the local variable at index is set to value'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1148
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1149
     Notes
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1150
     The fstore opcode can be used in conjunction with the wide instruction
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1151
     to access a local variable using a two-byte unsigned index."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1152
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1153
    "Created: / 14-03-2011 / 17:59:49 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1154
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1155
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1156
fstore_2
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1157
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1158
     Store float into local variable
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1159
     stack: value -> nothing
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1160
     args: index"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1161
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1162
    self fstore: 2.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1163
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1164
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1165
     Description
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1166
     The index is an unsigned byte that must be an index into the local
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1167
     variable array of the current frame (§3.6). The value on the top of
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1168
     the operand stack must be of type float. It is popped from the operand
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1169
     stack and undergoes value set conversion (§3.8.3), resulting in value'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1170
     The value of the local variable at index is set to value'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1171
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1172
     Notes
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1173
     The fstore opcode can be used in conjunction with the wide instruction
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1174
     to access a local variable using a two-byte unsigned index."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1175
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1176
    "Created: / 14-03-2011 / 18:00:03 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1177
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1178
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1179
fstore_3
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1180
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1181
     Store float into local variable
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1182
     stack: value -> nothing
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1183
     args: index"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1184
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1185
    self fstore: 3.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1186
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1187
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1188
     Description
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1189
     The index is an unsigned byte that must be an index into the local
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1190
     variable array of the current frame (§3.6). The value on the top of
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1191
     the operand stack must be of type float. It is popped from the operand
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1192
     stack and undergoes value set conversion (§3.8.3), resulting in value'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1193
     The value of the local variable at index is set to value'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1194
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1195
     Notes
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1196
     The fstore opcode can be used in conjunction with the wide instruction
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1197
     to access a local variable using a two-byte unsigned index."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1198
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1199
    "Created: / 14-03-2011 / 18:00:08 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1200
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1201
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1202
fsub
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1203
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1204
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1205
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1206
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1207
    "Created: / 17-03-2011 / 16:45:29 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1208
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1209
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1210
getfield
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1211
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1212
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1213
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1214
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1215
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1216
getstatic
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1217
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1218
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1219
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1220
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1221
    "Created: / 17-03-2011 / 16:55:41 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1222
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1223
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1224
goto
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1225
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1226
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1227
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1228
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1229
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1230
goto_w
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1231
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1232
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1233
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1234
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1235
    "Created: / 17-03-2011 / 16:58:54 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1236
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1237
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1238
i2d
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1239
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1240
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1241
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1242
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1243
    "Created: / 17-03-2011 / 16:50:02 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1244
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1245
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1246
i2f
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1247
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1248
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1249
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1250
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1251
    "Created: / 17-03-2011 / 16:49:57 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1252
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1253
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1254
i2l
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1255
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1256
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1257
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1258
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1259
    "Created: / 17-03-2011 / 16:49:52 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1260
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1261
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1262
i_dup
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1263
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1264
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1265
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1266
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1267
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1268
iadd
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1269
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1270
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1271
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1272
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1273
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1274
iaload
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1275
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1276
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1277
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1278
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1279
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1280
iand
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1281
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1282
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1283
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1284
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1285
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1286
iastore
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1287
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1288
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1289
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1290
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1291
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1292
iconst: arg 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1293
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1294
     Push int constant
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1295
     stack: nothing -> const
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1296
     arg: nothing"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1297
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1298
    self subclassResponsibility.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1299
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1300
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1301
     Description
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1302
     Push the int constant <i> (-1, 0, 1, 2, 3, 4 or 5) onto the operand stack.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1303
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1304
     Notes
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1305
     Each of this family of instructions is equivalent to bipush <i> for the
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1306
     respective value of <i>, except that the operand <i> is implicit."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1307
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1308
    "Created: / 17-03-2011 / 15:29:48 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1309
    "Modified: / 20-03-2011 / 20:41:04 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1310
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1311
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1312
iconst_0
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1313
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1314
     Push int constant
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1315
     stack: nothing -> const
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1316
     arg: nothing"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1317
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1318
    self iconst: 0.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1319
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1320
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1321
     Description
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1322
     Push the int constant <i> (-1, 0, 1, 2, 3, 4 or 5) onto the operand stack.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1323
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1324
     Notes
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1325
     Each of this family of instructions is equivalent to bipush <i> for the
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1326
     respective value of <i>, except that the operand <i> is implicit."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1327
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1328
    "Modified: / 17-03-2011 / 15:30:00 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1329
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1330
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1331
iconst_1
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1332
    self iconst:1.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1333
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1334
    "Modified: / 17-03-2011 / 15:30:07 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1335
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1336
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1337
iconst_2
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1338
    self iconst: 2.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1339
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1340
    "Modified: / 17-03-2011 / 15:30:11 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1341
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1342
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1343
iconst_3
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1344
    self iconst: 3.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1345
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1346
    "Modified: / 17-03-2011 / 15:30:15 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1347
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1348
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1349
iconst_4
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1350
    self iconst: 4.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1351
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1352
    "Modified: / 17-03-2011 / 15:30:19 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1353
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1354
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1355
iconst_5
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1356
   self iconst: 5.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1357
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1358
    "Modified: / 17-03-2011 / 15:30:22 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1359
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1360
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1361
iconst_m1
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1362
   self iconst: -1.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1363
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1364
    "Modified: / 17-03-2011 / 15:30:27 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1365
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1366
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1367
idiv
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1368
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1369
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1370
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1371
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1372
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1373
ifacmpeq
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1374
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1375
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1376
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1377
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1378
    "Created: / 17-03-2011 / 16:53:47 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1379
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1380
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1381
ifacmpne
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1382
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1383
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1384
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1385
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1386
    "Created: / 17-03-2011 / 16:53:54 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1387
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1388
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1389
ifeq
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1390
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1391
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1392
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1393
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1394
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1395
ifge
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1396
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1397
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1398
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1399
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1400
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1401
ifgt
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1402
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1403
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1404
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1405
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1406
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1407
ificmpeq
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1408
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1409
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1410
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1411
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1412
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1413
ificmpge
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1414
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1415
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1416
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1417
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1418
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1419
ificmpgt
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1420
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1421
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1422
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1423
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1424
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1425
ificmple
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1426
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1427
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1428
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1429
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1430
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1431
ificmplt
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1432
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1433
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1434
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1435
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1436
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1437
ificmpne
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1438
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1439
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1440
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1441
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1442
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1443
ifle
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1444
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1445
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1446
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1447
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1448
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1449
iflt
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1450
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1451
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1452
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1453
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1454
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1455
ifne
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1456
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1457
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1458
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1459
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1460
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1461
ifnonnull
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1462
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1463
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1464
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1465
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1466
    "Created: / 17-03-2011 / 16:58:39 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1467
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1468
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1469
ifnull
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1470
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1471
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1472
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1473
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1474
    "Created: / 17-03-2011 / 16:58:32 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1475
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1476
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1477
iinc
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1478
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1479
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1480
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1481
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1482
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1483
iload
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1484
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1485
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1486
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1487
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1488
    "Created: / 17-03-2011 / 15:06:42 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1489
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1490
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1491
iload: arg 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1492
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1493
     loads an int value from local variable 0
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1494
     stack: nothing -> value
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1495
         args: nothing"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1496
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1497
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1498
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1499
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1500
     Description
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1501
     The <n> must be an index into the local variable array of the current frame (§3.6).
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1502
     The local variable at <n> must contain an int. The value of the local variable
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1503
     at <n> is pushed onto the operand stack.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1504
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1505
     Notes
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1506
     Each of the iload_<n> instructions is the same as iload with an index of <n>,
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1507
         except that the operand <n> is implicit."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1508
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1509
    "Modified: / 17-03-2011 / 15:30:58 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1510
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1511
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1512
iload_0
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1513
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1514
     loads an int value from local variable 0
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1515
     stack: nothing -> value
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1516
     args: nothing"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1517
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1518
    self iload: 0.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1519
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1520
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1521
     Description
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1522
     The <n> must be an index into the local variable array of the current frame (§3.6).
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1523
     The local variable at <n> must contain an int. The value of the local variable
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1524
     at <n> is pushed onto the operand stack.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1525
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1526
     Notes
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1527
     Each of the iload_<n> instructions is the same as iload with an index of <n>,
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1528
     except that the operand <n> is implicit."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1529
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1530
    "Created: / 06-03-2011 / 21:22:17 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1531
    "Modified: / 13-03-2011 / 20:58:31 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1532
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1533
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1534
iload_1
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1535
    "check iload_0"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1536
    self iload: 1.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1537
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1538
    "Created: / 06-03-2011 / 21:22:30 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1539
    "Modified: / 13-03-2011 / 16:36:59 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1540
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1541
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1542
iload_2
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1543
    "check iload_0"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1544
    self iload:2.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1545
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1546
    "Created: / 06-03-2011 / 21:24:02 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1547
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1548
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1549
iload_3
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1550
    "check iload_0"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1551
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1552
    self iload: 3.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1553
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1554
    "Created: / 14-03-2011 / 19:05:26 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1555
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1556
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1557
imul
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1558
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1559
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1560
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1561
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1562
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1563
ineg
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1564
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1565
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1566
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1567
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1568
    "Created: / 17-03-2011 / 16:47:24 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1569
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1570
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1571
instanceof
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1572
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1573
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1574
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1575
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1576
    "Created: / 17-03-2011 / 16:57:57 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1577
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1578
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1579
int2byte
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1580
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1581
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1582
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1583
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1584
    "Created: / 17-03-2011 / 16:51:03 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1585
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1586
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1587
int2char
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1588
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1589
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1590
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1591
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1592
    "Created: / 17-03-2011 / 16:51:08 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1593
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1594
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1595
int2short
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1596
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1597
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1598
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1599
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1600
    "Created: / 17-03-2011 / 16:51:13 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1601
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1602
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1603
invinterface
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1604
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1605
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1606
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1607
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1608
    "Created: / 17-03-2011 / 16:56:41 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1609
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1610
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1611
invnonvirt
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1612
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1613
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1614
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1615
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1616
    "Created: / 17-03-2011 / 16:56:26 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1617
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1618
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1619
invstatic
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1620
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1621
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1622
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1623
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1624
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1625
invvirt
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1626
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1627
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1628
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1629
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1630
    "Created: / 17-03-2011 / 16:56:21 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1631
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1632
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1633
ior
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1634
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1635
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1636
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1637
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1638
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1639
irem
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1640
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1641
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1642
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1643
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1644
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1645
ireturn
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1646
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1647
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1648
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1649
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1650
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1651
ishl
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1652
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1653
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1654
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1655
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1656
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1657
ishr
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1658
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1659
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1660
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1661
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1662
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1663
istore     
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1664
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1665
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1666
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1667
    "Created: / 17-03-2011 / 16:36:55 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1668
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1669
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1670
istore: arg 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1671
    "store int value into variable 0
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1672
     stack: value -> nothing
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1673
         args: nothing"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1674
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1675
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1676
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1677
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1678
     Description
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1679
     The <n> must be an index into the local variable array of the current frame (§3.6).
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1680
     The value on the top of the operand stack must be of type int. It is popped from
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1681
     the operand stack, and the value of the local variable at <n> is set to value.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1682
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1683
     Notes
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1684
     Each of the istore_<n> instructions is the same as istore with an index of <n>,
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1685
         except that the operand <n> is implicit."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1686
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1687
    "Modified: / 17-03-2011 / 15:31:20 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1688
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1689
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1690
istore_0
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1691
    "store int value into variable 0
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1692
     stack: value -> nothing
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1693
     args: nothing"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1694
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1695
    self istore: 0.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1696
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1697
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1698
     Description
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1699
     The <n> must be an index into the local variable array of the current frame (§3.6).
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1700
     The value on the top of the operand stack must be of type int. It is popped from
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1701
     the operand stack, and the value of the local variable at <n> is set to value.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1702
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1703
     Notes
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1704
     Each of the istore_<n> instructions is the same as istore with an index of <n>,
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1705
     except that the operand <n> is implicit."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1706
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1707
    "Created: / 06-03-2011 / 21:01:27 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1708
    "Modified: / 17-03-2011 / 15:31:16 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1709
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1710
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1711
istore_1
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1712
    "check istore_0"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1713
    self istore: 1.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1714
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1715
    "Created: / 06-03-2011 / 21:18:15 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1716
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1717
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1718
istore_2
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1719
    "check istore_0"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1720
    self istore: 2.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1721
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1722
    "Created: / 06-03-2011 / 21:23:54 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1723
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1724
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1725
istore_3
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1726
    "check istore_0"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1727
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1728
    self istore: 3.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1729
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1730
    "Created: / 14-03-2011 / 19:05:12 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1731
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1732
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1733
isub
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1734
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1735
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1736
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1737
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1738
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1739
iushr
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1740
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1741
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1742
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1743
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1744
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1745
ixor
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1746
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1747
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1748
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1749
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1750
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1751
jsr
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1752
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1753
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1754
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1755
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1756
    "Created: / 17-03-2011 / 16:54:10 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1757
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1758
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1759
jsr_w
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1760
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1761
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1762
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1763
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1764
    "Created: / 17-03-2011 / 16:58:58 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1765
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1766
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1767
l2d
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1768
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1769
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1770
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1771
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1772
    "Created: / 17-03-2011 / 16:50:17 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1773
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1774
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1775
l2f
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1776
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1777
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1778
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1779
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1780
    "Created: / 17-03-2011 / 16:50:14 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1781
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1782
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1783
l2i
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1784
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1785
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1786
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1787
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1788
    "Created: / 17-03-2011 / 16:50:09 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1789
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1790
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1791
ladd
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1792
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1793
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1794
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1795
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1796
    "Created: / 17-03-2011 / 16:44:41 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1797
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1798
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1799
laload
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1800
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1801
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1802
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1803
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1804
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1805
land
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1806
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1807
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1808
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1809
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1810
    "Created: / 17-03-2011 / 16:48:57 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1811
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1812
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1813
lastore
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1814
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1815
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1816
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1817
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1818
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1819
lcmp
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1820
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1821
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1822
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1823
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1824
    "Created: / 17-03-2011 / 16:51:30 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1825
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1826
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1827
lconst: arg 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1828
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1829
     Push long constant
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1830
     stack: nothing -> const
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1831
     arg: nothing"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1832
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1833
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1834
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1835
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1836
     Push the long constant <l> (0 or 1) onto the operand stack."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1837
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1838
    "Modified: / 17-03-2011 / 16:30:28 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1839
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1840
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1841
lconst_0
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1842
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1843
     Push long constant
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1844
     stack: nothing -> const
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1845
     arg: nothing"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1846
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1847
    self lconst: 0.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1848
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1849
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1850
     Push the long constant <l> (0 or 1) onto the operand stack."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1851
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1852
    "Created: / 14-03-2011 / 17:53:32 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1853
    "Modified: / 17-03-2011 / 16:28:58 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1854
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1855
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1856
lconst_1
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1857
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1858
     Push long constant
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1859
     stack: nothing -> const
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1860
     arg: nothing"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1861
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1862
    self lconst: 1.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1863
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1864
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1865
     Push the long constant <l> (0 or 1) onto the operand stack."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1866
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1867
    "Created: / 14-03-2011 / 17:53:41 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1868
    "Modified: / 17-03-2011 / 16:29:04 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1869
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1870
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1871
ldc1
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1872
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1873
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1874
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1875
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1876
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1877
ldc2
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1878
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1879
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1880
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1881
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1882
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1883
ldc2w
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1884
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1885
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1886
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1887
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1888
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1889
ldiv
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1890
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1891
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1892
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1893
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1894
    "Created: / 17-03-2011 / 16:46:16 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1895
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1896
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1897
lload
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1898
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1899
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1900
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1901
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1902
    "Created: / 17-03-2011 / 15:06:08 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1903
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1904
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1905
lload: arg 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1906
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1907
     Load long from local variable
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1908
     stack: nothing -> value
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1909
         args: nothing"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1910
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1911
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1912
    ^ self subclassResponsibility.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1913
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1914
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1915
     Description
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1916
     Both <n> and <n> + 1 must be indices into the local variable array of the
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1917
     current frame (§3.6). The local variable at <n> must contain a long. The
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1918
     value of the local variable at <n> is pushed onto the operand stack.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1919
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1920
     Notes
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1921
     Each of the lload_<n> instructions is the same as lload with an index
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1922
     of <n>, except that the operand <n> is implicit."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1923
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1924
    "Modified: / 17-03-2011 / 16:33:33 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1925
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1926
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1927
lload_0
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1928
"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1929
Load long from local variable
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1930
stack: nothing -> value
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1931
args: nothing
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1932
"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1933
    self lload: 0.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1934
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1935
"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1936
Description
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1937
Both <n> and <n> + 1 must be indices into the local variable array of the 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1938
current frame (§3.6). The local variable at <n> must contain a long. The 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1939
value of the local variable at <n> is pushed onto the operand stack.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1940
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1941
Notes
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1942
Each of the lload_<n> instructions is the same as lload with an index 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1943
of <n>, except that the operand <n> is implicit.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1944
"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1945
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1946
    "Created: / 14-03-2011 / 13:38:11 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1947
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1948
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1949
lload_1
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1950
self lload: 1.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1951
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1952
    "Created: / 14-03-2011 / 13:37:42 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1953
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1954
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1955
lload_2
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1956
    self lload: 2.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1957
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1958
    "Created: / 14-03-2011 / 13:38:39 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1959
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1960
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1961
lload_3
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1962
    self lload: 3.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1963
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1964
    "Created: / 14-03-2011 / 13:38:43 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1965
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1966
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1967
lmul
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1968
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1969
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1970
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1971
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1972
    "Created: / 17-03-2011 / 16:45:53 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1973
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1974
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1975
lneg
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1976
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1977
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1978
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1979
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1980
    "Created: / 17-03-2011 / 16:47:29 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1981
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1982
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1983
lookupswtch
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1984
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1985
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1986
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1987
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1988
    "Created: / 17-03-2011 / 16:55:04 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1989
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1990
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1991
lor
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1992
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1993
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1994
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1995
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1996
    "Created: / 17-03-2011 / 16:49:03 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1997
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1998
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  1999
lrem
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2000
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2001
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2002
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2003
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2004
    "Created: / 17-03-2011 / 16:46:58 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2005
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2006
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2007
lreturn
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2008
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2009
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2010
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2011
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2012
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2013
lshl
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2014
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2015
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2016
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2017
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2018
    "Created: / 17-03-2011 / 16:48:09 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2019
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2020
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2021
lshr
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2022
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2023
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2024
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2025
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2026
    "Created: / 17-03-2011 / 16:48:21 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2027
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2028
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2029
lstore
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2030
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2031
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2032
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2033
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2034
    "Created: / 17-03-2011 / 16:37:14 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2035
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2036
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2037
lstore:arg
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2038
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2039
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2040
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2041
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2042
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2043
lstore_0
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2044
    "store long into local variable 0
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2045
     stack: value -> nothing
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2046
     args: nothing"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2047
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2048
    self lstore: 0.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2049
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2050
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2051
     Description
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2052
     Both <n> and <n> + 1 must be indices into the local variable array of the
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2053
     current frame (§3.6). The value on the top of the operand stack must be
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2054
     of type long. It is popped from the operand stack, and the local variables
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2055
     at <n> and <n> + 1 are set to value.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2056
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2057
     Notes
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2058
     Each of the lstore_<n> instructions is the same as lstore with an index
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2059
     of <n>, except that the operand <n> is implicit."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2060
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2061
    "Created: / 14-03-2011 / 17:54:43 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2062
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2063
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2064
lstore_1
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2065
    "store long into local variable
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2066
     stack: value -> nothing
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2067
     args: nothing"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2068
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2069
    self lstore: 1.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2070
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2071
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2072
     Description
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2073
     Both <n> and <n> + 1 must be indices into the local variable array of the
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2074
     current frame (§3.6). The value on the top of the operand stack must be
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2075
     of type long. It is popped from the operand stack, and the local variables
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2076
     at <n> and <n> + 1 are set to value.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2077
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2078
     Notes
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2079
     Each of the lstore_<n> instructions is the same as lstore with an index
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2080
     of <n>, except that the operand <n> is implicit."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2081
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2082
    "Created: / 14-03-2011 / 17:55:15 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2083
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2084
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2085
lstore_2
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2086
    "store long into local variable
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2087
     stack: value -> nothing
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2088
     args: nothing"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2089
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2090
    self lstore: 2.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2091
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2092
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2093
     Description
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2094
     Both <n> and <n> + 1 must be indices into the local variable array of the
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2095
     current frame (§3.6). The value on the top of the operand stack must be
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2096
     of type long. It is popped from the operand stack, and the local variables
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2097
     at <n> and <n> + 1 are set to value.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2098
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2099
     Notes
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2100
     Each of the lstore_<n> instructions is the same as lstore with an index
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2101
     of <n>, except that the operand <n> is implicit."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2102
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2103
    "Created: / 14-03-2011 / 17:55:20 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2104
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2105
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2106
lstore_3
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2107
    "store long into local variable
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2108
     stack: value -> nothing
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2109
     args: nothing"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2110
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2111
    self lstore: 3.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2112
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2113
    "
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2114
     Description
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2115
     Both <n> and <n> + 1 must be indices into the local variable array of the
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2116
     current frame (§3.6). The value on the top of the operand stack must be
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2117
     of type long. It is popped from the operand stack, and the local variables
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2118
     at <n> and <n> + 1 are set to value.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2119
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2120
     Notes
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2121
     Each of the lstore_<n> instructions is the same as lstore with an index
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2122
     of <n>, except that the operand <n> is implicit."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2123
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2124
    "Created: / 14-03-2011 / 17:56:04 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2125
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2126
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2127
lsub
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2128
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2129
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2130
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2131
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2132
    "Created: / 17-03-2011 / 16:45:25 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2133
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2134
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2135
lushr
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2136
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2137
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2138
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2139
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2140
    "Created: / 17-03-2011 / 16:48:41 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2141
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2142
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2143
lxor
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2144
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2145
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2146
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2147
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2148
    "Created: / 17-03-2011 / 16:49:09 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2149
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2150
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2151
monenter
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2152
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2153
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2154
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2155
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2156
    "Created: / 17-03-2011 / 16:58:06 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2157
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2158
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2159
monexit
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2160
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2161
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2162
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2163
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2164
    "Created: / 17-03-2011 / 16:58:10 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2165
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2166
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2167
multianewarray
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2168
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2169
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2170
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2171
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2172
    "Created: / 17-03-2011 / 16:58:28 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2173
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2174
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2175
new
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2176
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2177
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2178
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2179
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2180
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2181
newarray
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2182
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2183
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2184
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2185
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2186
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2187
nop
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2188
"Do nothing"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2189
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2190
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2191
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2192
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2193
    "Modified: / 17-03-2011 / 16:27:12 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2194
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2195
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2196
pop1
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2197
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2198
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2199
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2200
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2201
    "Created: / 17-03-2011 / 16:43:07 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2202
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2203
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2204
pop2
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2205
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2206
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2207
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2208
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2209
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2210
putfield
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2211
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2212
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2213
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2214
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2215
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2216
putstatic
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2217
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2218
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2219
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2220
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2221
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2222
ret
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2223
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2224
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2225
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2226
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2227
    "Created: / 17-03-2011 / 16:54:31 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2228
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2229
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2230
ret_w
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2231
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2232
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2233
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2234
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2235
    "Created: / 17-03-2011 / 16:59:12 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2236
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2237
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2238
return
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2239
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2240
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2241
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2242
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2243
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2244
saload
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2245
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2246
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2247
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2248
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2249
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2250
sastore
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2251
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2252
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2253
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2254
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2255
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2256
sipush
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2257
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2258
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2259
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2260
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2261
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2262
swap
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2263
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2264
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2265
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2266
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2267
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2268
tableswtch
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2269
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2270
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2271
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2272
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2273
    "Created: / 17-03-2011 / 16:54:55 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2274
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2275
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2276
wide
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2277
    "raise an error: must be redefined in concrete subclass(es)"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2278
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2279
    ^ self subclassResponsibility
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2280
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2281
    "Created: / 17-03-2011 / 16:58:16 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2282
! !
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2283
2396
fadc6d7a2f5b Updated to rev 009a0df3afce
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2353
diff changeset
  2284
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2285
!JavaByteCodeProcessor methodsFor:'private-helpers'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2286
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2287
fetchByte
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2288
    "fetch sign extended byte value stored in bytecode"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2289
    pc := pc + 1.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2290
    ^ (byteCode at: (pc - 1)) signExtendedByteValue.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2291
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2292
    "Created: / 06-03-2011 / 22:26:09 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2293
    "Modified: / 17-03-2011 / 17:00:30 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2294
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2295
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2296
fetchBytes2
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2297
    "fetch sign extended 2 byte value stored in bytecode"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2298
    pc := pc + 2.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2299
    ^ (((byteCode at: (pc - 2)) bitShift: 8) + (byteCode at: (pc - 1))) 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2300
        signExtendedShortValue.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2301
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2302
    "Created: / 06-03-2011 / 21:12:07 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2303
    "Modified: / 17-03-2011 / 17:00:43 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2304
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2305
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2306
fetchBytes4
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2307
    "fetch sign extended 4 byte value stored in bytecode"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2308
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2309
    pc := pc + 4.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2310
    ^ (((((byteCode at: (pc - 4)) bitShift: 24) 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2311
        bitOr: ((byteCode at: (pc - 3)) bitShift: 16)) 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2312
            bitOr: ((byteCode at: (pc - 2)) bitShift: 8)) 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2313
            bitOr: (byteCode at: (pc - 1))) asSigned32.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2314
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2315
    "Created: / 21-03-2011 / 12:59:26 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2316
    "Modified: / 21-03-2011 / 15:10:22 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2317
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2318
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2319
fetchIndex
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2320
    "fetch index value from bytecode"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2321
    pc := pc + 1.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2322
    ^ (byteCode at: (pc - 1)).
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2323
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2324
    "Created: / 24-02-2011 / 22:37:18 / Marcel Hlopko <hlopik@gmail.com>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2325
    "Modified: / 17-03-2011 / 17:01:14 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2326
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2327
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2328
fetchIndex2
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2329
    "fetch index 2 byte value from bytecode"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2330
    pc := pc + 2.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2331
    ^ ((byteCode at: (pc - 2)) bitShift: 8) bitOr: (byteCode at: (pc - 1)).
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2332
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2333
    "Modified: / 24-02-2011 / 21:33:53 / Marcel Hlopko <hlopik@gmail.com>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2334
    "Modified: / 17-03-2011 / 17:01:24 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2335
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2336
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2337
pop
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2338
    "return and remove top of the stack"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2339
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2340
    sp := sp - 1.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2341
    ^ context at: sp + 1.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2342
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2343
    "Modified: / 17-03-2011 / 17:39:09 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2344
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2345
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2346
popDouble
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2347
    "so far I didn't find a reason to handle doubles and long on stack differently"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2348
    ^ self pop.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2349
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2350
    "Modified: / 17-03-2011 / 17:02:34 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2351
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2352
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2353
popLong
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2354
"so far I didn't find a reason to handle doubles and long on stack differently"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2355
    ^ self pop.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2356
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2357
    "Modified: / 17-03-2011 / 17:02:38 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2358
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2359
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2360
pushConstant: something 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2361
    "push constant value on the stack - is there really not any better push method?"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2362
    sp := sp + 1.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2363
    context at: sp put: something
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2364
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2365
    "Modified: / 17-03-2011 / 17:05:56 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2366
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2367
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2368
pushDouble: something 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2369
    "push double value on the stack"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2370
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2371
    ^ self pushInt: something.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2372
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2373
    "Modified: / 17-03-2011 / 17:06:28 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2374
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2375
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2376
pushFloat: something 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2377
    "push float value on the stack"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2378
    self pushInt: something.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2379
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2380
    "Created: / 13-03-2011 / 16:39:52 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2381
    "Modified: / 17-03-2011 / 17:06:41 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2382
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2383
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2384
pushInt: something 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2385
    "push integer value on the stack"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2386
    sp := sp + 1.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2387
    context at: sp put: something
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2388
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2389
    "Created: / 13-03-2011 / 17:28:16 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2390
    "Modified: / 17-03-2011 / 17:06:52 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2391
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2392
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2393
pushLong: something 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2394
    "push long value on the stack"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2395
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2396
    ^ self pushInt: something.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2397
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2398
    "sp := sp + 2.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2399
     context at: sp - 1 put: #'dummy long complement'.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2400
     context at: sp put: something asLargeInteger."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2401
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2402
    "Modified: / 17-03-2011 / 17:07:06 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2403
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2404
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2405
pushNewArrayOf: type sized: size 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2406
    "push new array of type with <size> slots"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2407
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2408
    self pushRef: ((JavaArray javaArrayClassFor: type) new: size).
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2409
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2410
    "Created: / 14-03-2011 / 18:36:15 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2411
    "Modified: / 27-03-2011 / 21:06:30 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2412
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2413
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2414
pushNewPrimitiveArrayOf: typeName sized: size 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2415
    "push new array of <typeName> (e.g. 'long', only primitive types) with <size> slots"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2416
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2417
    self 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2418
        pushRef: ((JavaArray 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2419
                javaArrayClassFor: (JavaDescriptor baseTypesByTypeName at: typeName)) 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2420
                    new: size).
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2421
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2422
    "Created: / 27-03-2011 / 21:06:07 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2423
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2424
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2425
pushRef: something 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2426
    "push java ref on the stack"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2427
    sp := sp + 1.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2428
    context at: sp put: something
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2429
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2430
    "Created: / 13-03-2011 / 16:35:55 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2431
    "Modified: / 21-03-2011 / 16:49:30 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2432
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2433
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2434
relativeJump: pos 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2435
    "move pc relatively by the position <pos>."
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2436
   
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2437
    pc := instrPointer + pos.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2438
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2439
    "Created: / 21-03-2011 / 18:19:44 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2440
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2441
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2442
skipPadding
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2443
    "in tableswitch and lookupswitch instructions, there's a padding after instruction to ensure 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2444
     32bit values following begin at address that is multiple of 4 bytes from the start of the current
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2445
     method bytecode"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2446
    
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2447
    | jmpSize |
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2448
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2449
    jmpSize := ((4 - (pc \\ 4)) + 1) \\ 4.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2450
    pc := pc + jmpSize.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2451
    ^ jmpSize.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2452
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2453
    "Created: / 21-03-2011 / 13:13:55 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2454
    "Modified: / 22-03-2011 / 15:54:23 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2455
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2456
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2457
tos
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2458
    ^ context at:sp.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2459
! !
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2460
2396
fadc6d7a2f5b Updated to rev 009a0df3afce
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2353
diff changeset
  2461
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2462
!JavaByteCodeProcessor methodsFor:'private-logging'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2463
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2464
log: aMessage
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2465
self class log: aMessage.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2466
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2467
    "Created: / 17-03-2011 / 14:59:56 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2468
! !
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2469
2396
fadc6d7a2f5b Updated to rev 009a0df3afce
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2353
diff changeset
  2470
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2471
!JavaByteCodeProcessor methodsFor:'processing loop'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2472
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2473
enterProcessingLoop
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2474
    Context cannotReturnSignal handle: 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2475
            [:ex | 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2476
            "/ this is required for blocks of this method, which do a homeReturn.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2477
            "/ since my context is not really on the stack (and therefore not returnable),
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2478
            "/ catch the error and return manually.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2479
            ^ ex parameter ]
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2480
        do: 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2481
            [ [ leaveProcessor ] whileFalse: 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2482
                    [ instrPointer := pc.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2483
                    op := byteCode at: pc.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2484
                    pc := pc + 1.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2485
                    self switch: op. ]. ].
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2486
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2487
    "Created: / 31-03-2011 / 16:38:01 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2488
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2489
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2490
handleAbstractMethod
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2491
    self subclassResponsibility.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2492
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2493
    "Created: / 22-03-2011 / 14:49:43 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2494
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2495
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
  2496
handleNativeMethod
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
  2497
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
  2498
    "Created: / 09-02-2012 / 22:47:03 / mh <hlopik@gmail.com>"
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
  2499
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
  2500
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2501
initializeContextArgsFrom: argArray 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2502
    1 to: numArgs do: [:idx | context at: idx put: (argArray at: idx). ]
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2503
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2504
    "Created: / 21-03-2011 / 15:17:23 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2505
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2506
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2507
initializeContextVars
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2508
    1 to: numVars do: [:idx | context at: (numArgs + idx) put: nil. ]
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2509
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2510
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2511
leaveProcessorWith: aReturnObject 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2512
    retVal := aReturnObject.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2513
    leaveProcessor := true
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2514
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2515
    "Modified: / 17-03-2011 / 17:39:21 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2516
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2517
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2518
process: aMethod receiver: aReceiver arguments: args 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2519
    | argArray |
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
  2520
    aMethod isAbstract ifTrue: [
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
  2521
      
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
  2522
        ^ self handleAbstractMethod.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
  2523
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
  2524
    aMethod isNative ifTrue: [ ^ self handleNativeMethod ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
  2525
    args size ~~ aMethod javaNumArgs ifTrue: [
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
  2526
        self error: 'bad number of arguments'
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
  2527
    ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
  2528
    aMethod isStatic ifTrue: [ argArray := args ] ifFalse: [
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
  2529
        argArray := OrderedCollection with: aReceiver.
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
  2530
        args ifNotNil: [ argArray addAll: args. ].
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
  2531
    ].
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2532
    numArgs := argArray size.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2533
    numVars := aMethod numVars.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2534
    method := aMethod.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2535
    context := JavaContext new: (numArgs + numVars + aMethod stackSize).
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2536
    context setNumArgs: numArgs numVars: numVars.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2537
    receiver := aReceiver.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2538
    byteCode := aMethod byteCode.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2539
    constantPool := aMethod constantPool.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2540
    pc := 1.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2541
    wide := false.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2542
    self initializeContextArgsFrom: argArray.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2543
    self initializeContextVars.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2544
    sp := numArgs + numVars.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2545
    leaveProcessor := false.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2546
    self enterProcessingLoop.
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2547
    ^ retVal
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2548
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2549
    "Modified: / 24-02-2011 / 11:09:07 / Marcel Hlopko <hlopik@gmail.com>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2550
    "Created: / 17-03-2011 / 17:25:31 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2551
    "Modified: / 31-03-2011 / 16:38:05 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
  2552
    "Modified: / 09-02-2012 / 22:51:38 / mh <hlopik@gmail.com>"
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2553
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2554
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2555
switch: op 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2556
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2557
    self log: 'invoking ' , (OpSwitchTable at: op + 1) printString , '(' , op printString , ')'.                 
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2558
    self perform: (OpSwitchTable at: op + 1)
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2559
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2560
    "Modified: / 17-03-2011 / 15:01:15 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2561
    "Modified: / 22-03-2011 / 20:55:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2562
! !
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2563
2396
fadc6d7a2f5b Updated to rev 009a0df3afce
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2353
diff changeset
  2564
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2565
!JavaByteCodeProcessor class methodsFor:'documentation'!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2566
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2567
version
2396
fadc6d7a2f5b Updated to rev 009a0df3afce
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2353
diff changeset
  2568
    ^ '$Header: /cvs/stx/stx/libjava/JavaByteCodeProcessor.st,v 1.5 2013-02-25 11:15:31 vrany Exp $'
2190
8026ab73e194 added: #version_CVS
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2569
!
8026ab73e194 added: #version_CVS
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2570
8026ab73e194 added: #version_CVS
Claus Gittinger <cg@exept.de>
parents: 2152
diff changeset
  2571
version_CVS
2396
fadc6d7a2f5b Updated to rev 009a0df3afce
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2353
diff changeset
  2572
    ^ '$Header: /cvs/stx/stx/libjava/JavaByteCodeProcessor.st,v 1.5 2013-02-25 11:15:31 vrany Exp $'
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
  2573
!
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
  2574
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
  2575
version_HG
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
  2576
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
  2577
    ^ '$Changeset: <not expanded> $'
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2578
!
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2579
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2580
version_SVN
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
  2581
    ^ '§Id§'
749
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2582
! !
e898eaeff091 Synchronized with CVS repository at:
vranyj1
parents:
diff changeset
  2583
2353
fa7400d022a0 Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 2290
diff changeset
  2584
2152
1cbdfbcc685c Jan's version
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 749
diff changeset
  2585
JavaByteCodeProcessor initialize!