author | Stefan Vogel <sv@exept.de> |
Wed, 30 Nov 2016 17:47:31 +0100 | |
branch | cvs_MAIN |
changeset 3667 | 418ea879b40a |
parent 3656 | e9cc6bf8a31a |
child 3795 | b696900fb824 |
permissions | -rw-r--r-- |
454 | 1 |
" |
3324
a58245c0e83a
Updated copyright notices.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3264
diff
changeset
|
2 |
COPYRIGHT (c) 1996-2015 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:
2159
diff
changeset
|
3 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
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:
2159
diff
changeset
|
5 |
|
3324
a58245c0e83a
Updated copyright notices.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3264
diff
changeset
|
6 |
COPYRIGHT (c) 2010-2015 by Jan Vrany, Jan Kurs and Marcel Hlopko |
2151 | 7 |
SWING Research Group, Czech Technical University in Prague |
8 |
||
454 | 9 |
This software is furnished under a license and may be used |
10 |
only in accordance with the terms of that license and with the |
|
11 |
inclusion of the above copyright notice. This software may not |
|
12 |
be provided or otherwise made available to, or used by, any |
|
13 |
other person. No title to or ownership of the software is |
|
14 |
hereby transferred. |
|
2151 | 15 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
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:
2159
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:
2159
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:
2159
diff
changeset
|
19 |
as of 1.9.2010 |
454 | 20 |
" |
682 | 21 |
"{ Package: 'stx:libjava' }" |
22 |
||
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
23 |
"{ NameSpace: Smalltalk }" |
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
24 |
|
518 | 25 |
Object subclass:#JavaVM |
253 | 26 |
instanceVariableNames:'' |
27 |
classVariableNames:'UnhandledJavaExceptionSignal JavaExceptionSignal |
|
28 |
UnimplementedInstructionSignal UnimplementedNativeMethodSignal |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
29 |
BadMessageSignal InternalErrorSignal CallHandlerSignal LockTable |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
30 |
LockTableAccess StackTrace EagerResolvingEnabled |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
31 |
OldspaceIncreased PerfCounters MonitorTrace MonitorTraceId |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
32 |
ExceptionTrace ExceptionDebug ExitDebug StandardThreadGroup |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
33 |
AcquiredMonitorsPerProcess DUMMY_LONG_HIGHWORD |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
34 |
DUMMY_DOUBLE_HIGHWORD FirstWindowCreationSemaphore SimulatedOS |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
35 |
O_WGgraphics_originX O_WGgraphics_originY O_WGgraphics_pData |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
36 |
O_FramePeer_pNativeWidget O_FramePeer_pData LastGraphics LastGC |
2151 | 37 |
ExceptionDebugPatterns NullPointerExceptionDebug |
38 |
DivisionByZeroExceptionDebug IOExceptionDebug |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
39 |
JavaPrivilegedAccessQuery SmalltalkClassLoader |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
40 |
FinalizationEnabled FinalizationLobby ParkUnparkSemaphores |
3083 | 41 |
ThreadInterrupts NativeMethodsImplementation SystemProperties' |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
42 |
poolDictionaries:'JavaConstants JavaVMData' |
2108 | 43 |
category:'Languages-Java-Support' |
749 | 44 |
! |
45 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
46 |
Object subclass:#Performance |
2396
fadc6d7a2f5b
Updated to rev 009a0df3afce
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2372
diff
changeset
|
47 |
instanceVariableNames:'vm counters' |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
48 |
classVariableNames:'' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
49 |
poolDictionaries:'' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
50 |
privateIn:JavaVM |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
51 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
52 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
53 |
Object subclass:#ReflectionRegistry |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
54 |
instanceVariableNames:'vm constantPoolMapping javaClasses javaArrayClasses |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
55 |
javaMethodsPerMethod returnNilIfMissing realMethods' |
2151 | 56 |
classVariableNames:'' |
2605
f343a5ef30b6
An experiment: access to known class java.lang.Class through pool var.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2601
diff
changeset
|
57 |
poolDictionaries:'JavaVMData' |
2151 | 58 |
privateIn:JavaVM |
59 |
! |
|
60 |
||
261 | 61 |
!JavaVM class methodsFor:'documentation'! |
62 |
||
454 | 63 |
copyright |
64 |
" |
|
3324
a58245c0e83a
Updated copyright notices.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3264
diff
changeset
|
65 |
COPYRIGHT (c) 1996-2015 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:
2159
diff
changeset
|
66 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
67 |
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:
2159
diff
changeset
|
68 |
|
3324
a58245c0e83a
Updated copyright notices.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3264
diff
changeset
|
69 |
COPYRIGHT (c) 2010-2015 by Jan Vrany, Jan Kurs and Marcel Hlopko |
2151 | 70 |
SWING Research Group, Czech Technical University in Prague |
71 |
||
454 | 72 |
This software is furnished under a license and may be used |
73 |
only in accordance with the terms of that license and with the |
|
74 |
inclusion of the above copyright notice. This software may not |
|
75 |
be provided or otherwise made available to, or used by, any |
|
76 |
other person. No title to or ownership of the software is |
|
77 |
hereby transferred. |
|
2151 | 78 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
79 |
[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:
2159
diff
changeset
|
80 |
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:
2159
diff
changeset
|
81 |
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:
2159
diff
changeset
|
82 |
as of 1.9.2010 |
2151 | 83 |
|
454 | 84 |
" |
2151 | 85 |
! |
86 |
||
87 |
documentation |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
88 |
"Runtime support and environment for Java. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
89 |
You shouldn't communicate with JavaVM directly, |
2151 | 90 |
use Java class instead. JavaVM is layer between |
91 |
the native interpret and the rest of the system. |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
92 |
JavaVM implements native java virtual machine |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
93 |
methods called by interpret, hides java primitive |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
94 |
types handling, and gives the ST world ways to |
2151 | 95 |
control class loading and reflection" |
454 | 96 |
! |
97 |
||
261 | 98 |
nativeMethods |
99 |
" |
|
440 | 100 |
all native methods: |
101 |
||
655 | 102 |
JavaMethod allSubInstances select:[:m | |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
103 |
m isNative |
655 | 104 |
] |
440 | 105 |
|
106 |
implemented methods: |
|
107 |
||
655 | 108 |
JavaMethod allSubInstances select:[:m | |
109 |
|sel| |
|
110 |
||
111 |
m isNative ifTrue:[ |
|
112 |
sel := ('_' , m javaClass lastName , '_' , m name , ':') asSymbol. |
|
113 |
JavaVM class implements:sel. |
|
114 |
] ifFalse:[ |
|
115 |
false |
|
116 |
] |
|
117 |
] |
|
440 | 118 |
|
119 |
unimplemented methods: |
|
120 |
||
655 | 121 |
JavaMethod allSubInstances select:[:m | |
122 |
|sel| |
|
123 |
||
124 |
m isNative ifTrue:[ |
|
125 |
sel := ('_' , m javaClass lastName , '_' , m name , ':') asSymbol. |
|
126 |
(JavaVM class implements:sel) not |
|
127 |
] ifFalse:[ |
|
128 |
false |
|
129 |
] |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
130 |
] |
440 | 131 |
|
132 |
||
261 | 133 |
list of all native methods as in jdk1.1.3: |
134 |
||
135 |
X - implemented |
|
494 | 136 |
* - implemented to be validated |
261 | 137 |
x - implemented with limited functionality |
138 |
o - implemented as dummy (no functionality) |
|
139 |
||
140 |
X (Math::double sin (double)) |
|
141 |
X (Math::double cos (double)) |
|
342 | 142 |
X (Math::double tan (double)) |
143 |
X (Math::double asin (double)) |
|
144 |
X (Math::double acos (double)) |
|
145 |
X (Math::double atan (double)) |
|
146 |
X (Math::double exp (double)) |
|
261 | 147 |
X (Math::double log (double)) |
148 |
X (Math::double sqrt (double)) |
|
149 |
(Math::double IEEEremainder (double double)) |
|
150 |
X (Math::double ceil (double)) |
|
151 |
X (Math::double floor (double)) |
|
152 |
(Math::double rint (double)) |
|
153 |
(Math::double atan2 (double double)) |
|
154 |
X (Math::double pow (double double)) |
|
155 |
||
156 |
X (Class::java.lang.Class forName (java.lang.String)) |
|
157 |
X (Class::java.lang.Object newInstance ()) |
|
494 | 158 |
* (Class::boolean isInstance (java.lang.Object)) |
159 |
X (Class::boolean isAssignableFrom (java.lang.Class)) |
|
261 | 160 |
X (Class::boolean isInterface ()) |
161 |
(Class::boolean isArray ()) |
|
342 | 162 |
X (Class::boolean isPrimitive ()) |
261 | 163 |
X (Class::java.lang.String getName ()) |
164 |
X (Class::java.lang.ClassLoader getClassLoader ()) |
|
165 |
X (Class::java.lang.Class getSuperclass ()) |
|
166 |
(Class::java.lang.Class[] getInterfaces ()) |
|
167 |
(Class::java.lang.Class getComponentType ()) |
|
168 |
(Class::int getModifiers ()) |
|
169 |
(Class::java.lang.Object[] getSigners ()) |
|
170 |
(Class::void setSigners (java.lang.Object[])) |
|
171 |
X (Class::java.lang.Class getPrimitiveClass (java.lang.String)) |
|
494 | 172 |
(Class::java.lang.reflect.Field getField0 (java.lang.String int)) |
261 | 173 |
(Class::java.lang.reflect.Field[] getFields0 (int)) |
494 | 174 |
X (Class::java.lang.reflect.Method getMethod0 (java.lang.String java.lang.Class[] int)) |
342 | 175 |
X (Class::java.lang.reflect.Method[] getMethods0 (int)) |
261 | 176 |
(Class::java.lang.reflect.Constructor[] getConstructors0 (int)) |
177 |
(Class::java.lang.reflect.Constructor getConstructor0 (java.lang.Class[] int)) |
|
178 |
||
179 |
X (InetAddressImpl::java.lang.String getLocalHostName ()) |
|
180 |
X (InetAddressImpl::void makeAnyLocalAddress (java.net.InetAddress)) |
|
181 |
X (InetAddressImpl::byte[][] lookupAllHostAddr (java.lang.String)) |
|
182 |
(InetAddressImpl::java.lang.String getHostByAddr (int)) |
|
183 |
X (InetAddressImpl::int getInetFamily ()) |
|
184 |
||
185 |
X (ResourceBundle::java.lang.Class[] getClassContext ()) |
|
186 |
||
187 |
X (System::void setIn0 (java.io.InputStream)) |
|
188 |
X (System::void setOut0 (java.io.PrintStream)) |
|
189 |
X (System::void setErr0 (java.io.PrintStream)) |
|
190 |
X (System::long currentTimeMillis ()) |
|
191 |
X (System::void arraycopy (java.lang.Object int java.lang.Object int int)) |
|
655 | 192 |
X (System::int identityHashCode (java.lang.Object)) |
261 | 193 |
X (System::java.util.Properties initProperties (java.util.Properties)) |
194 |
||
195 |
X (Thread::java.lang.Thread currentThread ()) |
|
196 |
X (Thread::void yield ()) |
|
197 |
X (Thread::void sleep (long)) |
|
198 |
X (Thread::void start ()) |
|
199 |
X (Thread::boolean isInterrupted (boolean)) |
|
200 |
X (Thread::boolean isAlive ()) |
|
201 |
(Thread::int countStackFrames ()) |
|
202 |
X (Thread::void setPriority0 (int)) |
|
203 |
X (Thread::void stop0 (java.lang.Object)) |
|
204 |
X (Thread::void suspend0 ()) |
|
205 |
X (Thread::void resume0 ()) |
|
494 | 206 |
* (Thread::void interrupt0 ()) |
261 | 207 |
|
342 | 208 |
(String::java.lang.String intern ()) |
261 | 209 |
|
210 |
X (Float::int floatToIntBits (float)) |
|
211 |
X (Float::float intBitsToFloat (int)) |
|
212 |
||
213 |
(ObjectStreamClass::int getClassAccess (java.lang.Class)) |
|
214 |
(ObjectStreamClass::java.lang.String[] getMethodSignatures (java.lang.Class)) |
|
215 |
(ObjectStreamClass::int getMethodAccess (java.lang.Class java.lang.String)) |
|
216 |
(ObjectStreamClass::java.lang.String[] getFieldSignatures (java.lang.Class)) |
|
217 |
(ObjectStreamClass::int getFieldAccess (java.lang.Class java.lang.String)) |
|
218 |
(ObjectStreamClass::java.io.ObjectStreamField[] getFields0 (java.lang.Class)) |
|
219 |
(ObjectStreamClass::long getSerialVersionUID (java.lang.Class)) |
|
220 |
(ObjectStreamClass::boolean hasWriteObject (java.lang.Class)) |
|
221 |
(ObjectInputStream::java.lang.Class loadClass0 (java.lang.Class java.lang.String)) |
|
222 |
(ObjectInputStream::void inputClassFields (java.lang.Object java.lang.Class int[])) |
|
223 |
(ObjectInputStream::java.lang.Object allocateNewObject (java.lang.Class java.lang.Class)) |
|
224 |
(ObjectInputStream::java.lang.Object allocateNewArray (java.lang.Class int)) |
|
225 |
(ObjectInputStream::boolean invokeObjectReader (java.lang.Object java.lang.Class)) |
|
226 |
||
227 |
(SecurityManager::java.lang.Class[] getClassContext ()) |
|
228 |
X (SecurityManager::java.lang.ClassLoader currentClassLoader ()) |
|
229 |
(SecurityManager::int classDepth (java.lang.String)) |
|
230 |
X (SecurityManager::int classLoaderDepth ()) |
|
231 |
(SecurityManager::java.lang.Class currentLoadedClass0 ()) |
|
232 |
||
233 |
X (ClassLoader::void init ()) |
|
234 |
X (ClassLoader::java.lang.Class defineClass0 (java.lang.String byte[] int int)) |
|
235 |
X (ClassLoader::void resolveClass0 (java.lang.Class)) |
|
236 |
X (ClassLoader::java.lang.Class findSystemClass0 (java.lang.String)) |
|
237 |
X (ClassLoader::java.io.InputStream getSystemResourceAsStream0 (java.lang.String)) |
|
238 |
(ClassLoader::java.lang.String getSystemResourceAsName0 (java.lang.String)) |
|
239 |
||
655 | 240 |
X (FileDescriptor::boolean valid ()) |
261 | 241 |
(FileDescriptor::void sync ()) |
242 |
X (FileDescriptor::java.io.FileDescriptor initSystemFD (java.io.FileDescriptor int)) |
|
243 |
||
244 |
X (Object::java.lang.Class getClass ()) |
|
245 |
X (Object::int hashCode ()) |
|
246 |
X (Object::java.lang.Object clone ()) |
|
247 |
X (Object::void notify ()) |
|
248 |
X (Object::void notifyAll ()) |
|
249 |
X (Object::void wait (long)) |
|
250 |
||
251 |
X (FileOutputStream::void open (java.lang.String)) |
|
342 | 252 |
X (FileOutputStream::void openAppend (java.lang.String)) |
261 | 253 |
X (FileOutputStream::void write (int)) |
254 |
X (FileOutputStream::void writeBytes (byte[] int int)) |
|
255 |
X (FileOutputStream::void close ()) |
|
256 |
X (FileInputStream::void open (java.lang.String)) |
|
257 |
X (FileInputStream::int read ()) |
|
258 |
X (FileInputStream::int readBytes (byte[] int int)) |
|
259 |
(FileInputStream::long skip (long)) |
|
260 |
X (FileInputStream::int available ()) |
|
261 |
X (FileInputStream::void close ()) |
|
262 |
||
263 |
(VM::int getState ()) |
|
264 |
(VM::boolean threadsSuspended ()) |
|
265 |
(VM::void unsuspendThreads ()) |
|
266 |
(VM::void unsuspendSomeThreads ()) |
|
267 |
||
268 |
X (File::boolean exists0 ()) |
|
342 | 269 |
X (File::boolean canWrite0 ()) |
261 | 270 |
X (File::boolean canRead0 ()) |
271 |
X (File::boolean isFile0 ()) |
|
272 |
X (File::boolean isDirectory0 ()) |
|
342 | 273 |
X (File::long lastModified0 ()) |
261 | 274 |
X (File::long length0 ()) |
342 | 275 |
X (File::boolean mkdir0 ()) |
494 | 276 |
X (File::boolean renameTo0 (java.io.File)) |
277 |
X (File::boolean delete0 ()) |
|
261 | 278 |
(File::boolean rmdir0 ()) |
279 |
X (File::java.lang.String[] list0 ()) |
|
280 |
(File::java.lang.String canonPath (java.lang.String)) |
|
281 |
X (File::boolean isAbsolute ()) |
|
282 |
||
283 |
(ObjectOutputStream::void outputClassFields (java.lang.Object java.lang.Class int[])) |
|
284 |
(ObjectOutputStream::boolean invokeObjectWriter (java.lang.Object java.lang.Class)) |
|
285 |
||
286 |
X (Throwable::void printStackTrace0 (java.lang.Object)) |
|
287 |
X (Throwable::java.lang.Throwable fillInStackTrace ()) |
|
288 |
||
289 |
X (Double::long doubleToLongBits (double)) |
|
290 |
X (Double::double longBitsToDouble (long)) |
|
291 |
X (Double::double valueOf0 (java.lang.String)) |
|
292 |
||
293 |
X (Runtime::void exitInternal (int)) |
|
494 | 294 |
o (Runtime::void runFinalizersOnExit0 (boolean)) |
261 | 295 |
o (Runtime::java.lang.Process execInternal (java.lang.String[] java.lang.String[])) |
296 |
X (Runtime::long freeMemory ()) |
|
297 |
X (Runtime::long totalMemory ()) |
|
298 |
X (Runtime::void gc ()) |
|
299 |
(Runtime::void runFinalization ()) |
|
300 |
(Runtime::void traceInstructions (boolean)) |
|
301 |
(Runtime::void traceMethodCalls (boolean)) |
|
302 |
X (Runtime::java.lang.String initializeLinkerInternal ()) |
|
303 |
X (Runtime::java.lang.String buildLibName (java.lang.String java.lang.String)) |
|
304 |
X (Runtime::int loadFileInternal (java.lang.String)) |
|
305 |
||
306 |
(WDrawingSurfaceInfo::int lock ()) |
|
307 |
(WDrawingSurfaceInfo::void unlock ()) |
|
308 |
(WDrawingSurfaceInfo::int getHWnd ()) |
|
309 |
(WDrawingSurfaceInfo::int getHBitmap ()) |
|
310 |
(WDrawingSurfaceInfo::int getPBits ()) |
|
311 |
(WDrawingSurfaceInfo::int getHDC ()) |
|
312 |
(WDrawingSurfaceInfo::int getDepth ()) |
|
313 |
(WDrawingSurfaceInfo::int getHPalette ()) |
|
314 |
||
315 |
X (WDefaultFontCharset::boolean canConvert (char)) |
|
316 |
||
317 |
(ColorModel::void deletepData ()) |
|
318 |
X (WToolkit::void init (java.lang.Thread)) |
|
319 |
X (WToolkit::void eventLoop ()) |
|
320 |
(WToolkit::java.awt.image.ColorModel makeColorModel ()) |
|
342 | 321 |
X (WToolkit::int getScreenResolution ()) |
261 | 322 |
X (WToolkit::int getScreenWidth ()) |
323 |
X (WToolkit::int getScreenHeight ()) |
|
324 |
(WToolkit::void sync ()) |
|
494 | 325 |
* (WToolkit::void beep ()) |
261 | 326 |
X (WToolkit::void loadSystemColors (int[])) |
327 |
||
328 |
(WPrintJob::void end ()) |
|
329 |
||
330 |
X (WDialogPeer::void create (sun.awt.windows.WComponentPeer)) |
|
331 |
X (WDialogPeer::void _show ()) |
|
332 |
X (WDialogPeer::void _hide ()) |
|
333 |
||
342 | 334 |
X (WWindowPeer::void toFront ()) |
335 |
X (WWindowPeer::void toBack ()) |
|
336 |
X (WWindowPeer::void _setTitle (java.lang.String)) |
|
337 |
X (WWindowPeer::void _setResizable (boolean)) |
|
494 | 338 |
X (WWindowPeer::void create (sun.awt.windows.WComponentPeer)) |
342 | 339 |
o (WWindowPeer::void updateInsets (java.awt.Insets)) |
261 | 340 |
(WWindowPeer::java.awt.Component getContainerElement (java.awt.Container int)) |
341 |
||
342 |
X (WCanvasPeer::void create (sun.awt.windows.WComponentPeer)) |
|
343 |
||
344 |
X (WTextAreaPeer::void create (sun.awt.windows.WComponentPeer)) |
|
345 |
X (WTextAreaPeer::void insertText (java.lang.String int)) |
|
346 |
(WTextAreaPeer::void replaceText (java.lang.String int int)) |
|
347 |
||
348 |
X (WTextComponentPeer::java.lang.String getText ()) |
|
349 |
X (WTextComponentPeer::void setText (java.lang.String)) |
|
350 |
X (WTextComponentPeer::int getSelectionStart ()) |
|
351 |
X (WTextComponentPeer::int getSelectionEnd ()) |
|
352 |
X (WTextComponentPeer::void select (int int)) |
|
353 |
X (WTextComponentPeer::void enableEditing (boolean)) |
|
354 |
||
355 |
X (WComponentPeer::void show ()) |
|
356 |
X (WComponentPeer::void hide ()) |
|
357 |
X (WComponentPeer::void enable ()) |
|
358 |
X (WComponentPeer::void disable ()) |
|
494 | 359 |
X (WComponentPeer::java.awt.Point getLocationOnScreen ()) |
261 | 360 |
X (WComponentPeer::void reshape (int int int int)) |
361 |
o (WComponentPeer::void handleEvent (java.awt.AWTEvent)) |
|
362 |
o (WComponentPeer::void _dispose ()) |
|
363 |
X (WComponentPeer::void _setForeground (int)) |
|
364 |
X (WComponentPeer::void _setBackground (int)) |
|
365 |
o (WComponentPeer::void setFont (java.awt.Font)) |
|
366 |
o (WComponentPeer::void requestFocus ()) |
|
367 |
o (WComponentPeer::void setCursor (java.awt.Cursor)) |
|
368 |
o (WComponentPeer::void start ()) |
|
369 |
(WComponentPeer::void _beginValidate ()) |
|
370 |
(WComponentPeer::void endValidate ()) |
|
371 |
o (WComponentPeer::void setZOrderPosition (sun.awt.windows.WComponentPeer)) |
|
372 |
||
373 |
X (WFramePeer::void setMenuBar0 (sun.awt.windows.WMenuBarPeer)) |
|
374 |
X (WFramePeer::void create (sun.awt.windows.WComponentPeer)) |
|
342 | 375 |
X (WFramePeer::void _setIconImage (sun.awt.image.ImageRepresentation)) |
261 | 376 |
|
377 |
o (WFontMetrics::boolean needsConversion (java.awt.Font sun.awt.FontDescriptor)) |
|
378 |
o (WFontMetrics::int getMFCharSegmentWidth (java.awt.Font sun.awt.FontDescriptor boolean char[] int int byte[] int)) |
|
379 |
(WFontMetrics::int bytesWidth (byte[] int int)) |
|
380 |
(WFontMetrics::void init ()) |
|
381 |
||
382 |
o (WChoicePeer::void select (int)) |
|
383 |
o (WChoicePeer::void remove (int)) |
|
384 |
o (WChoicePeer::void addItem (java.lang.String int)) |
|
385 |
X (WChoicePeer::void reshape (int int int int)) |
|
386 |
X (WChoicePeer::void create (sun.awt.windows.WComponentPeer)) |
|
387 |
||
388 |
X (WLabelPeer::void setText (java.lang.String)) |
|
389 |
o (WLabelPeer::void setAlignment (int)) |
|
390 |
X (WLabelPeer::void create (sun.awt.windows.WComponentPeer)) |
|
391 |
||
392 |
X (WMenuItemPeer::void _setLabel (java.lang.String)) |
|
393 |
X (WMenuItemPeer::void create (sun.awt.windows.WMenuPeer)) |
|
394 |
X (WMenuItemPeer::void enable (boolean)) |
|
342 | 395 |
o (WMenuItemPeer::void _dispose ()) |
261 | 396 |
(WMenuPeer::void addSeparator ()) |
397 |
(WMenuPeer::void delItem (int)) |
|
398 |
X (WMenuPeer::void createMenu (sun.awt.windows.WMenuBarPeer)) |
|
399 |
(WMenuPeer::void createSubMenu (sun.awt.windows.WMenuPeer)) |
|
400 |
||
401 |
(WPopupMenuPeer::void createMenu (sun.awt.windows.WComponentPeer)) |
|
402 |
(WPopupMenuPeer::void _show (java.awt.Event)) |
|
403 |
(WMenuBarPeer::void addMenu (java.awt.Menu)) |
|
404 |
(WMenuBarPeer::void delMenu (int)) |
|
405 |
X (WMenuBarPeer::void create (sun.awt.windows.WFramePeer)) |
|
406 |
||
407 |
(WCheckboxMenuItemPeer::void setState (boolean)) |
|
408 |
||
409 |
X (WFileDialogPeer::void show ()) |
|
410 |
||
411 |
X (WCheckboxPeer::void setState (boolean)) |
|
412 |
X (WCheckboxPeer::void setCheckboxGroup (java.awt.CheckboxGroup)) |
|
413 |
(WCheckboxPeer::void setLabel (java.lang.String)) |
|
414 |
X (WCheckboxPeer::void create (sun.awt.windows.WComponentPeer)) |
|
415 |
||
416 |
X (WClipboard::void init ()) |
|
417 |
(WClipboard::void setClipboardText (java.awt.datatransfer.StringSelection)) |
|
418 |
(WClipboard::java.lang.String getClipboardText ()) |
|
419 |
||
342 | 420 |
X (WListPeer::void addItem (java.lang.String int)) |
421 |
X (WListPeer::void delItems (int int)) |
|
422 |
X (WListPeer::void select (int)) |
|
261 | 423 |
(WListPeer::void deselect (int)) |
424 |
(WListPeer::void makeVisible (int)) |
|
342 | 425 |
X (WListPeer::void setMultipleSelections (boolean)) |
426 |
X (WListPeer::void create (sun.awt.windows.WComponentPeer)) |
|
427 |
X (WListPeer::boolean isSelected (int)) |
|
428 |
||
429 |
x (WScrollbarPeer::void _setValues (int int int int)) |
|
430 |
x (WScrollbarPeer::void setLineIncrement (int)) |
|
431 |
x (WScrollbarPeer::void setPageIncrement (int)) |
|
432 |
x (WScrollbarPeer::void create (sun.awt.windows.WComponentPeer)) |
|
433 |
||
434 |
x (ImageRepresentation::void offscreenInit (java.awt.Color)) |
|
261 | 435 |
x (ImageRepresentation::boolean setBytePixels (int int int int java.awt.image.ColorModel byte[] int int)) |
342 | 436 |
x (ImageRepresentation::boolean setIntPixels (int int int int java.awt.image.ColorModel int[] int int)) |
261 | 437 |
x (ImageRepresentation::boolean finish (boolean)) |
438 |
X (ImageRepresentation::void imageDraw (java.awt.Graphics int int java.awt.Color)) |
|
439 |
x (ImageRepresentation::void imageStretch (java.awt.Graphics int int int int int int int int java.awt.Color)) |
|
440 |
x (ImageRepresentation::void disposeImage ()) |
|
441 |
||
442 |
X (WTextFieldPeer::void create (sun.awt.windows.WComponentPeer)) |
|
342 | 443 |
X (WTextFieldPeer::void setEchoCharacter (char)) |
444 |
||
445 |
X (WScrollPanePeer::void create (sun.awt.windows.WComponentPeer)) |
|
446 |
o (WScrollPanePeer::int getOffset (int)) |
|
261 | 447 |
(WScrollPanePeer::void setInsets ()) |
448 |
(WScrollPanePeer::void setScrollPosition (int int)) |
|
342 | 449 |
x (WScrollPanePeer::int _getHScrollbarHeight ()) |
450 |
x (WScrollPanePeer::int _getVScrollbarWidth ()) |
|
451 |
o (WScrollPanePeer::void setSpans (int int int int)) |
|
261 | 452 |
(WScrollPanePeer::java.awt.Component getScrollChild ()) |
453 |
||
454 |
(WEmbeddedFramePeer::void create (sun.awt.windows.WComponentPeer)) |
|
342 | 455 |
X (WButtonPeer::void setLabel (java.lang.String)) |
261 | 456 |
X (WButtonPeer::void create (sun.awt.windows.WComponentPeer)) |
457 |
||
458 |
x (WColor::java.awt.Color getDefaultColor (int)) |
|
459 |
||
460 |
x (GifImageDecoder::boolean parseImage (int int int int boolean int byte[] byte[] java.awt.image.IndexColorModel)) |
|
461 |
||
462 |
x (WGraphics::void createFromComponent (sun.awt.windows.WComponentPeer)) |
|
463 |
x (WGraphics::void createFromGraphics (sun.awt.windows.WGraphics)) |
|
464 |
(WGraphics::void createFromPrintJob (sun.awt.windows.WPrintJob)) |
|
465 |
(WGraphics::void createFromHDC (int)) |
|
466 |
x (WGraphics::void imageCreate (sun.awt.image.ImageRepresentation)) |
|
467 |
x (WGraphics::void pSetFont (java.awt.Font)) |
|
468 |
X (WGraphics::void pSetForeground (int)) |
|
469 |
(WGraphics::void _dispose ()) |
|
470 |
x (WGraphics::void dispose ()) |
|
471 |
x (WGraphics::void setPaintMode ()) |
|
342 | 472 |
x (WGraphics::void setXORMode (java.awt.Color)) |
261 | 473 |
o (WGraphics::java.awt.Rectangle getClipBounds ()) |
474 |
o (WGraphics::void changeClip (int int int int boolean)) |
|
475 |
(WGraphics::void removeClip ()) |
|
476 |
X (WGraphics::void clearRect (int int int int)) |
|
477 |
X (WGraphics::void fillRect (int int int int)) |
|
478 |
X (WGraphics::void drawRect (int int int int)) |
|
479 |
(WGraphics::void drawSFChars (char[] int int int int)) |
|
480 |
x (WGraphics::int drawMFCharsSegment (java.awt.Font sun.awt.FontDescriptor char[] int int int int)) |
|
481 |
(WGraphics::int drawMFCharsConvertedSegment (java.awt.Font sun.awt.FontDescriptor byte[] int int int)) |
|
482 |
(WGraphics::void drawBytes (byte[] int int int int)) |
|
483 |
X (WGraphics::void drawLine (int int int int)) |
|
342 | 484 |
X (WGraphics::void copyArea (int int int int int int)) |
261 | 485 |
o (WGraphics::void drawRoundRect (int int int int int int)) |
486 |
o (WGraphics::void fillRoundRect (int int int int int int)) |
|
487 |
X (WGraphics::void drawPolygon (int[] int[] int)) |
|
488 |
(WGraphics::void drawPolyline (int[] int[] int)) |
|
489 |
X (WGraphics::void fillPolygon (int[] int[] int)) |
|
490 |
x (WGraphics::void drawOval (int int int int)) |
|
491 |
x (WGraphics::void fillOval (int int int int)) |
|
492 |
x (WGraphics::void drawArc (int int int int int int)) |
|
493 |
x (WGraphics::void fillArc (int int int int int int)) |
|
494 |
(WGraphics::void print (sun.awt.windows.WComponentPeer)) |
|
495 |
(WGraphics::void close (sun.awt.windows.WPrintJob)) |
|
496 |
(JPEGImageDecoder::void readImage (java.io.InputStream byte[])) |
|
342 | 497 |
o (OffScreenImageSource::void sendPixels ()) |
457 | 498 |
|
499 |
||
500 |
additional native methods added by microsoft (sigh): |
|
501 |
||
502 |
X (java.lang.String::boolean equals (java.lang.String)) |
|
503 |
X (java.lang.String::int length (java.lang.String)) |
|
504 |
o (java.lang.Runtime::void setInputStreamLocalised (java.io.DataInputStream)) |
|
505 |
o (java.lang.Runtime::void setOutputStreamLocalised (java.io.DataOutputStream)) |
|
506 |
||
507 |
(java.lang.String::int compareTo (java.lang.String)) |
|
508 |
(java.lang.String::boolean equalsIgnoreCase (java.lang.String)) |
|
509 |
(java.lang.String::int indexOf (java.lang.String int)) |
|
510 |
(java.lang.String::boolean startsWith (java.lang.String int)) |
|
511 |
(java.lang.String::boolean regionMatches (int java.lang.String int int)) |
|
512 |
(java.lang.String::boolean regionMatches (boolean int java.lang.String int int)) |
|
513 |
(java.lang.String::int lastIndexOf (java.lang.String int)) |
|
514 |
(java.lang.ClassLoader::void resolveClass (java.lang.Class)) |
|
661 | 515 |
|
457 | 516 |
(java.lang.ClassLoader::java.lang.Class createArrayClass (java.lang.String java.lang.Class)) |
517 |
(java.io.PrintStream::boolean isOutputStreamLocalised (java.io.DataOutputStream)) |
|
518 |
(java.lang.Runtime::boolean isOutputStreamLocalised (java.io.DataOutputStream)) |
|
519 |
(java.lang.Runtime::boolean isInputStreamLocalised (java.io.DataInputStream)) |
|
520 |
(java.lang.ThreadGroup::void initMainThreadGroup0 (java.lang.ThreadGroup)) |
|
521 |
(java.lang.System::void validateSecurityManager (java.lang.SecurityManager)) |
|
522 |
(java.lang.Class::java.lang.reflect.Method getMethod2 (int java.lang.String java.lang.String)) |
|
523 |
(java.io.ObjectOutputStream::void invokeDefaultWriteObject (java.lang.Object java.lang.Class)) |
|
524 |
(java.io.ObjectOutputStream::void invokeWriteObject (java.lang.Object java.lang.Class)) |
|
525 |
(java.io.ObjectInputStream::void invokeDefaultReadObject (java.lang.Object java.lang.Class)) |
|
526 |
(java.io.ObjectInputStream::void invokeReadObject (java.lang.Object java.lang.Class)) |
|
527 |
(java.util.TimeZone::java.util.TimeZone getWin32TimeZone ()) |
|
528 |
(java.net.InetAddress::java.lang.Object[] lookupHostByName (java.lang.String)) |
|
529 |
(java.net.InetAddress::java.lang.Object[] lookupHostByAddr (int)) |
|
530 |
(java.io.ObjectStreamClass::void doMismatchedRead (java.io.ObjectInputStream java.lang.Object)) |
|
531 |
(java.io.ObjectStreamClass::long getClassDefinedUID (java.lang.Class)) |
|
532 |
(java.io.ObjectStreamClass::boolean findObjectMethod0 (java.lang.Class int)) |
|
533 |
(java.lang.reflect.Method::java.lang.String getDescriptor ()) |
|
534 |
(java.lang.reflect.Array::void setShort (java.lang.Object int unsigned short)) |
|
535 |
(java.lang.reflect.Array::char getChar (java.lang.Object int)) |
|
536 |
(java.lang.reflect.Array::void setChar (java.lang.Object int char)) |
|
537 |
(java.lang.reflect.Array::void setDouble (java.lang.Object int double)) |
|
538 |
(java.lang.reflect.Array::java.lang.Object get (java.lang.Object int)) |
|
539 |
(java.lang.reflect.Array::void set (java.lang.Object int java.lang.Object)) |
|
540 |
(java.lang.reflect.Array::int getInt (java.lang.Object int)) |
|
541 |
(java.lang.reflect.Array::void setInt (java.lang.Object int int)) |
|
542 |
(java.lang.reflect.Array::java.lang.Object multiNewArray (java.lang.Class int[])) |
|
543 |
(java.lang.reflect.Array::boolean getBoolean (java.lang.Object int)) |
|
544 |
(java.lang.reflect.Array::byte getByte (java.lang.Object int)) |
|
545 |
(java.lang.reflect.Array::float getFloat (java.lang.Object int)) |
|
546 |
(java.lang.reflect.Array::void setBoolean (java.lang.Object int boolean)) |
|
547 |
(java.lang.reflect.Array::long getLong (java.lang.Object int)) |
|
548 |
(java.lang.reflect.Array::void setByte (java.lang.Object int byte)) |
|
549 |
(java.lang.reflect.Array::void setLong (java.lang.Object int long)) |
|
550 |
(java.lang.reflect.Array::void setFloat (java.lang.Object int float)) |
|
551 |
(java.lang.reflect.Array::java.lang.Object newArray (java.lang.Class int)) |
|
552 |
(java.lang.reflect.Array::int getLength (java.lang.Object)) |
|
553 |
(java.lang.reflect.Array::unsigned short getShort (java.lang.Object int)) |
|
554 |
(java.lang.reflect.Array::double getDouble (java.lang.Object int)) |
|
555 |
(java.lang.reflect.Field::void setShort (java.lang.Object unsigned short)) |
|
556 |
(java.lang.reflect.Field::char getChar (java.lang.Object)) |
|
557 |
(java.lang.reflect.Field::void setChar (java.lang.Object char)) |
|
558 |
(java.lang.reflect.Field::void setDouble (java.lang.Object double)) |
|
559 |
(java.lang.reflect.Field::java.lang.Object get (java.lang.Object)) |
|
560 |
(java.lang.reflect.Field::void set (java.lang.Object java.lang.Object)) |
|
561 |
(java.lang.reflect.Field::int getInt (java.lang.Object)) |
|
562 |
(java.lang.reflect.Field::void setInt (java.lang.Object int)) |
|
563 |
(java.lang.reflect.Field::boolean getBoolean (java.lang.Object)) |
|
564 |
(java.lang.reflect.Field::byte getByte (java.lang.Object)) |
|
565 |
(java.lang.reflect.Field::float getFloat (java.lang.Object)) |
|
566 |
(java.lang.reflect.Field::long getLong (java.lang.Object)) |
|
567 |
(java.lang.reflect.Field::void setBoolean (java.lang.Object boolean)) |
|
568 |
(java.lang.reflect.Field::void setByte (java.lang.Object byte)) |
|
569 |
(java.lang.reflect.Field::void setLong (java.lang.Object long)) |
|
570 |
(java.lang.reflect.Field::void setFloat (java.lang.Object float)) |
|
571 |
(java.lang.reflect.Field::int getModifiers ()) |
|
572 |
(java.lang.reflect.Field::unsigned short getShort (java.lang.Object)) |
|
573 |
(java.lang.reflect.Field::double getDouble (java.lang.Object)) |
|
574 |
(java.lang.reflect.Constructor::java.lang.Object newInstance (java.lang.Object[])) |
|
575 |
(java.lang.reflect.Constructor::int getModifiers ()) |
|
576 |
(java.util.zip.Inflater::void setDictionary0 (byte[] int int)) |
|
577 |
(java.util.zip.Inflater::int getTotalIn0 ()) |
|
578 |
(java.util.zip.Inflater::void reset0 ()) |
|
579 |
(java.util.zip.Inflater::void end0 ()) |
|
580 |
(java.util.zip.Inflater::int inflate0 (byte[] int int)) |
|
581 |
(java.util.zip.Inflater::int getTotalOut0 ()) |
|
582 |
(java.util.zip.Inflater::int getAdler0 ()) |
|
583 |
(java.util.zip.CRC32::void update1 (int)) |
|
584 |
(java.util.zip.CRC32::void update (byte[] int int)) |
|
585 |
||
586 |
(com.ms.security.PolicyEngine::boolean isSystemClass (java.lang.String)) |
|
587 |
(com.ms.security.PolicyEngine::void denyPermission (com.ms.security.PermissionID)) |
|
588 |
(com.ms.security.PolicyEngine::void revertPermission (com.ms.security.PermissionID)) |
|
589 |
(com.ms.security.PolicyEngine::void initPolicyEngine ()) |
|
590 |
(com.ms.security.PolicyEngine::java.lang.Class _getClassOfCaller (java.lang.Class[])) |
|
591 |
(com.ms.security.PolicyEngine::void internalCheckClass (java.lang.Class com.ms.security.PermissionID java.lang.Object)) |
|
592 |
(com.ms.security.PolicyEngine::com.ms.security.PermissionDataSet getPermissionsOfClass (java.lang.Class)) |
|
593 |
(com.ms.security.PolicyEngine::void assertPermission (com.ms.security.PermissionID)) |
|
594 |
(com.ms.security.PolicyEngine::void deepCheck (com.ms.security.PermissionID java.lang.Object)) |
|
595 |
(com.ms.security.PolicyEngine::void shallowCheck (com.ms.security.PermissionID java.lang.Object java.lang.Class[] int)) |
|
596 |
(com.ms.security.PolicyEngine::java.security.Principal getPrincipalOfClass (java.lang.Class)) |
|
597 |
(com.ms.security.permissions.ThreadPermission::boolean pDecodeAsn (byte[])) |
|
598 |
(com.ms.security.permissions.ThreadPermission::byte[] pEncodeAsn ()) |
|
599 |
(com.ms.security.permissions.RegistryPermission::boolean pDecodeAsn (byte[])) |
|
600 |
(com.ms.security.permissions.RegistryPermission::byte[] pEncodeAsn ()) |
|
601 |
(com.ms.security.management.ZonePermissions::byte[] pEncodeAsn ()) |
|
602 |
(com.ms.security.management.ZonePermissions::boolean pDecodeAsn (byte[])) |
|
603 |
(com.ms.security.permissions.UIPermission::byte[] pEncodeAsn ()) |
|
604 |
(com.ms.security.permissions.UIPermission::boolean pDecodeAsn (byte[])) |
|
605 |
(com.ms.security.permissions.NetIOPermission::byte[] pEncodeAsn ()) |
|
606 |
(com.ms.security.permissions.NetIOPermission::boolean pDecodeAsn (byte[])) |
|
607 |
(com.ms.security.permissions.ReflectionPermission::byte[] pEncodeAsn ()) |
|
608 |
(com.ms.security.permissions.ReflectionPermission::boolean pDecodeAsn (byte[])) |
|
609 |
(com.ms.vm.WeakReference::void storeRef (int java.lang.Object)) |
|
610 |
(com.ms.vm.WeakReference::int allocRef (java.lang.Object)) |
|
611 |
(com.ms.vm.WeakReference::void freeRef (int)) |
|
612 |
(com.ms.vm.WeakReference::java.lang.Object fetchRef (int)) |
|
613 |
(com.ms.dll.DllLib::void CoTaskMemFree (int)) |
|
614 |
(com.ms.dll.DllLib::void CopyWithDstOffset (int float[] int int)) |
|
615 |
(com.ms.dll.DllLib::void CopyWithDstOffset (int double[] int int)) |
|
616 |
(com.ms.dll.DllLib::int numParamBytes0 (java.lang.reflect.Method)) |
|
617 |
(com.ms.dll.DllLib::void CopyWithDstOffset (int java.lang.Object int int)) |
|
618 |
(com.ms.dll.DllLib::void write2 (java.lang.Object int unsigned short)) |
|
619 |
(com.ms.dll.DllLib::void write2 (int int unsigned short)) |
|
620 |
(com.ms.dll.DllLib::void write2 (java.lang.Object int char)) |
|
621 |
(com.ms.dll.DllLib::void write2 (int int char)) |
|
622 |
(com.ms.dll.DllLib::int GlobalAlloc (int int)) |
|
623 |
(com.ms.dll.DllLib::void resize (java.lang.Object int)) |
|
624 |
(com.ms.dll.DllLib::long read8 (java.lang.Object int)) |
|
625 |
(com.ms.dll.DllLib::long read8 (int int)) |
|
626 |
(com.ms.dll.DllLib::int lstrcpy (java.lang.StringBuffer int)) |
|
627 |
(com.ms.dll.DllLib::int lstrlenA (int)) |
|
628 |
(com.ms.dll.DllLib::int read4 (java.lang.Object int)) |
|
629 |
(com.ms.dll.DllLib::int CoTaskMemAlloc (int)) |
|
630 |
(com.ms.dll.DllLib::void write8 (java.lang.Object int long)) |
|
631 |
(com.ms.dll.DllLib::int sizeOf0 (java.lang.Class)) |
|
632 |
(com.ms.dll.DllLib::int getSystemDefaultCharSize ()) |
|
633 |
(com.ms.dll.DllLib::void write8 (int int long)) |
|
634 |
(com.ms.dll.DllLib::int read4 (int int)) |
|
635 |
(com.ms.dll.DllLib::byte read1 (java.lang.Object int)) |
|
636 |
(com.ms.dll.DllLib::byte read1 (int int)) |
|
637 |
(com.ms.dll.DllLib::int lstrlen (int)) |
|
638 |
(com.ms.dll.DllLib::void CopyMemoryAnsi (int java.lang.String int)) |
|
639 |
(com.ms.dll.DllLib::void CopyMemoryAnsi (java.lang.StringBuffer int int)) |
|
640 |
(com.ms.dll.DllLib::boolean isStruct (java.lang.reflect.Field)) |
|
641 |
(com.ms.dll.DllLib::boolean GlobalFree (int)) |
|
642 |
(com.ms.dll.DllLib::void internalAttemptCopyPtrToStruct (int java.lang.Object int int)) |
|
643 |
(com.ms.dll.DllLib::int getLastError ()) |
|
644 |
(com.ms.dll.DllLib::void write4 (java.lang.Object int int)) |
|
645 |
(com.ms.dll.DllLib::void write4 (int int int)) |
|
646 |
(com.ms.dll.DllLib::unsigned short read2 (java.lang.Object int)) |
|
647 |
(com.ms.dll.DllLib::unsigned short read2 (int int)) |
|
648 |
(com.ms.dll.DllLib::void release (java.lang.Object)) |
|
649 |
(com.ms.dll.DllLib::void write1 (java.lang.Object int byte)) |
|
650 |
(com.ms.dll.DllLib::void write1 (int int byte)) |
|
651 |
(com.ms.dll.DllLib::boolean isStructCls (java.lang.Class)) |
|
652 |
(com.ms.dll.DllLib::void prelink (java.lang.reflect.Method)) |
|
653 |
(com.ms.dll.DllLib::void CopyMemoryUni (int java.lang.String int)) |
|
654 |
(com.ms.dll.DllLib::void CopyMemoryUni (java.lang.StringBuffer int int)) |
|
655 |
(com.ms.dll.DllLib::void internalAttemptCopyStructToPtr (java.lang.Object int int int)) |
|
656 |
(com.ms.dll.DllLib::void CopyWithSrcOffset (int int int int)) |
|
657 |
(com.ms.dll.DllLib::void CopyWithSrcOffset (byte[] int int int)) |
|
658 |
(com.ms.dll.DllLib::void CopyWithSrcOffset (char[] int int int)) |
|
659 |
(com.ms.dll.DllLib::void CopyWithSrcOffset (unsigned short[] int int int)) |
|
660 |
(com.ms.dll.DllLib::void CopyWithSrcOffset (int[] int int int)) |
|
661 |
(com.ms.dll.DllLib::void CopyWithSrcOffset (long[] int int int)) |
|
662 |
(com.ms.dll.DllLib::void CopyWithSrcOffset (float[] int int int)) |
|
663 |
(com.ms.dll.DllLib::void CopyWithSrcOffset (double[] int int int)) |
|
664 |
(com.ms.dll.DllLib::void CopyWithSrcOffset (java.lang.Object int int int)) |
|
665 |
(com.ms.dll.DllLib::void CopyWithDstOffset (int int int int)) |
|
666 |
(com.ms.dll.DllLib::int lstrlenW (int)) |
|
667 |
(com.ms.dll.DllLib::void CopyWithDstOffset (int byte[] int int)) |
|
668 |
(com.ms.dll.DllLib::void CopyWithDstOffset (int char[] int int)) |
|
669 |
(com.ms.dll.DllLib::void CopyWithDstOffset (int unsigned short[] int int)) |
|
670 |
(com.ms.dll.DllLib::void CopyWithDstOffset (int int[] int int)) |
|
671 |
(com.ms.dll.DllLib::void CopyWithDstOffset (int long[] int int)) |
|
672 |
(com.ms.dll.DllLib::int internalGetStructAddr (java.lang.Object)) |
|
673 |
(com.ms.dll.DllLib::int offsetOf (java.lang.reflect.Field)) |
|
674 |
(com.ms.dll.DllLib::int lstrcpy (int java.lang.String)) |
|
675 |
(com.ms.dll.DllLib::int sizeOf (java.lang.Object)) |
|
676 |
(com.ms.lang.RegKey::com.ms.lang.RegKeyEnumValue pRegEnumValue (int)) |
|
677 |
(com.ms.lang.RegKey::java.lang.String pRegQueryStringValue (java.lang.String)) |
|
678 |
(com.ms.lang.RegKey::byte[] pRegQueryBinaryValue (java.lang.String)) |
|
679 |
(com.ms.lang.RegKey::int pRegQueryIntValue (java.lang.String)) |
|
680 |
(com.ms.lang.RegKey::void pRegSetStringValue (java.lang.String java.lang.String)) |
|
681 |
(com.ms.lang.RegKey::void pRegSetIntValue (java.lang.String int)) |
|
682 |
(com.ms.lang.RegKey::void pRegSetBinaryValue (java.lang.String byte[])) |
|
683 |
(com.ms.lang.RegKey::void pRegDeleteValue (java.lang.String)) |
|
684 |
(com.ms.lang.RegKey::void pRegFlushKey ()) |
|
685 |
(com.ms.lang.RegKey::void pRegDeleteKey (java.lang.String)) |
|
686 |
(com.ms.lang.RegKey::void pRegOpenBaseKey (int)) |
|
687 |
(com.ms.lang.RegKey::void pRegOpenKey (com.ms.lang.RegKey java.lang.String int)) |
|
688 |
(com.ms.lang.RegKey::int pRegQueryInfoKey (com.ms.lang.RegQueryInfo)) |
|
689 |
(com.ms.lang.RegKey::void pRegUnLoadKey (java.lang.String)) |
|
690 |
(com.ms.lang.RegKey::void pRegCreateKey (com.ms.lang.RegKey java.lang.String)) |
|
691 |
(com.ms.lang.RegKey::void pRegRestoreKey (java.lang.String boolean)) |
|
692 |
(com.ms.lang.RegKey::void pRegLoadKey (java.lang.String java.lang.String)) |
|
693 |
(com.ms.lang.RegKey::void pRegCloseKey ()) |
|
694 |
(com.ms.lang.RegKey::java.lang.String pRegEnumKey (int)) |
|
695 |
(com.ms.lang.RegKey::void pRegReplaceKey (java.lang.String java.lang.String java.lang.String)) |
|
696 |
(com.ms.awt.peer.NativeServices::int pGetKeyboardLayouts (int[] int)) |
|
697 |
(com.ms.awt.peer.NativeServices::void jpegReadByte (com.ms.awt.peer.IjpegDecoderCallback byte[] int com.ms.awt.peer.jpegInfoHeader byte[] int)) |
|
698 |
(com.ms.awt.peer.NativeServices::int getColourDataDepth ()) |
|
699 |
(com.ms.awt.peer.NativeServices::java.lang.String pGetFontEnumeratedFamily (int)) |
|
700 |
(com.ms.awt.peer.NativeServices::int pNewFontEnumeration ()) |
|
701 |
(com.ms.awt.peer.NativeServices::int getScreenClipRgn (int)) |
|
702 |
(com.ms.awt.peer.NativeServices::int pSetKeyboardLayout (int int)) |
|
703 |
(com.ms.awt.peer.NativeServices::void ClipboardInit (com.ms.awt.peer.IToolkit)) |
|
704 |
(com.ms.awt.peer.NativeServices::void getDeviceCaps (int int[] int)) |
|
705 |
(com.ms.awt.peer.NativeServices::void getAfcMetrics (int[])) |
|
706 |
(com.ms.awt.peer.NativeServices::void setUserLocale (int int)) |
|
707 |
(com.ms.awt.peer.NativeServices::void getDCDI (com.ms.awt.peer.DirectColourDataInfo)) |
|
708 |
(com.ms.awt.peer.NativeServices::int pGetNumKeyboardLayouts ()) |
|
709 |
(com.ms.awt.peer.NativeServices::void getIndexedColours (byte[] byte[] byte[])) |
|
710 |
(com.ms.awt.peer.NativeServices::int getNativeFont (java.lang.String int int int)) |
|
711 |
(com.ms.awt.peer.NativeServices::int pGetKeyboardLayout ()) |
|
712 |
(com.ms.awt.peer.NativeServices::int getSystemLCID ()) |
|
713 |
(com.ms.awt.peer.NativeServices::void caretSetPos (int int int)) |
|
714 |
(com.ms.awt.peer.NativeServices::java.lang.String getLogFontFromIUnknown (com.ms.com.IUnknown com.ms.awt.peer.LogFontX)) |
|
715 |
(com.ms.awt.peer.NativeServices::java.lang.String ClipboardGetText ()) |
|
716 |
(com.ms.awt.peer.NativeServices::int systemMetric (int)) |
|
717 |
(com.ms.awt.peer.NativeServices::void jpegInit (com.ms.awt.peer.IjpegDecoderCallback byte[] int com.ms.awt.peer.jpegInfoHeader)) |
|
718 |
(com.ms.awt.peer.NativeServices::void caretHide (int)) |
|
719 |
(com.ms.awt.peer.NativeServices::int chooseColor (int int)) |
|
720 |
(com.ms.awt.peer.NativeServices::java.lang.String pGetKeyboardLayoutName (int)) |
|
721 |
(com.ms.awt.peer.NativeServices::int matchFontAndLanguage (int int)) |
|
722 |
(com.ms.awt.peer.NativeServices::java.lang.String chooseFont (com.ms.awt.peer.LogFontX java.lang.String int)) |
|
723 |
(com.ms.awt.peer.NativeServices::java.lang.String getSystemFont (int com.ms.awt.peer.LogFontX)) |
|
724 |
(com.ms.awt.peer.NativeServices::com.ms.com.IUnknown getIUnknownFromLogFont (java.lang.String com.ms.awt.peer.LogFontX)) |
|
725 |
(com.ms.awt.peer.NativeServices::void caretDispose (int)) |
|
726 |
(com.ms.awt.peer.NativeServices::void caretShow (int)) |
|
727 |
(com.ms.awt.peer.NativeServices::void deleteObject (int)) |
|
728 |
(com.ms.awt.peer.NativeServices::void setDebugOutput (com.ms.awt.peer.COMPrintCallback)) |
|
729 |
(com.ms.awt.peer.NativeServices::void jpegReadInt (com.ms.awt.peer.IjpegDecoderCallback byte[] int com.ms.awt.peer.jpegInfoHeader int[] int)) |
|
730 |
(com.ms.awt.peer.NativeServices::int getSystemColourValue (int)) |
|
731 |
(com.ms.awt.peer.NativeServices::void caretCreate (int int int)) |
|
732 |
(com.ms.awt.peer.NativeServices::void ClipboardSetText (java.lang.String)) |
|
733 |
(com.ms.awt.peer.NativeServices::void println (java.lang.String)) |
|
734 |
(com.ms.security.SecurityClassLoader::boolean getSecureState ()) |
|
735 |
(com.ms.security.SecurityClassLoader::void setSecureState (java.lang.String java.lang.String)) |
|
736 |
(com.ms.security.SecurityClassLoader::java.lang.Class internalDefineClass (java.lang.String byte[] int int)) |
|
737 |
(com.ms.security.SecurityClassLoader::void markClass (java.lang.Class com.ms.security.PermissionSet java.security.Principal)) |
|
738 |
(com.ms.security.SecurityClassLoader::java.util.Hashtable getHashTable ()) |
|
739 |
(com.ms.security.auditing.SecurityAuditor::boolean isThreadAuditingEnabled ()) |
|
740 |
(com.ms.security.auditing.SecurityAuditor::void disableThreadAuditing ()) |
|
741 |
(com.ms.security.auditing.SecurityAuditor::void enableThreadAuditing ()) |
|
742 |
(com.ms.security.auditing.SecurityAuditor::void initSecurityAuditor ()) |
|
743 |
(com.ms.security.PermissionDataSet::byte[] pEncodeAsn ()) |
|
744 |
(com.ms.security.PermissionDataSet::boolean pDecodeAsn (byte[])) |
|
745 |
(com.ms.lang.SystemX::int pAnsiToUnicode (byte[] char[] int int int)) |
|
746 |
(com.ms.lang.SystemX::int pQueryUnicodeToAnsi (char[] int int int)) |
|
747 |
(com.ms.lang.SystemX::void gc ()) |
|
748 |
(com.ms.lang.SystemX::boolean arrayCompare (java.lang.Object[] int java.lang.Object[] int int)) |
|
749 |
(com.ms.lang.SystemX::int pUnicodeToAnsi (char[] byte[] int int int)) |
|
750 |
(com.ms.lang.SystemX::boolean isLocalCharDBCSLeadByte (byte)) |
|
751 |
(com.ms.lang.SystemX::int pQueryAnsiToUnicode (byte[] int int int)) |
|
752 |
(com.ms.lang.SystemX::boolean isBaseDBCS ()) |
|
661 | 753 |
(com.ms.lang.SystemX::java.lang.reflect.Method getMethod2 (java.lang.Class int java.lang.String java.lang.String)) |
457 | 754 |
(com.ms.packagemanager.JavaPackage::byte[] nativeGetSigner (java.lang.Object)) |
755 |
(com.ms.packagemanager.JavaPackage::byte[] nativeGetCapabilities (java.lang.Object)) |
|
756 |
(com.ms.com._Guid::void IIDFromString (java.lang.String com.ms.com._Guid)) |
|
757 |
(com.ms.com._Guid::java.lang.String StringFromIID (com.ms.com._Guid)) |
|
758 |
(com.ms.security.auditing.PrintStreamAuditor::int GetModuleHandle (java.lang.String)) |
|
759 |
(com.ms.security.auditing.PrintStreamAuditor::int FormatMessage (int int int int java.lang.StringBuffer int int[])) |
|
760 |
(com.ms.security.permissions.CustomPermission::byte[] pEncodeAsn ()) |
|
761 |
(com.ms.security.permissions.CustomPermission::boolean pDecodeAsn (byte[])) |
|
762 |
(com.ms.security.permissions.X509Signer::boolean pLoad (byte[])) |
|
763 |
(com.ms.packagemanager.PackageManager::java.lang.Class nativeFindClassInNamespace (java.lang.String java.lang.String java.lang.ClassLoader)) |
|
764 |
(com.ms.packagemanager.PackageManager::java.lang.Object nativeGetPackage (java.lang.String java.lang.String)) |
|
765 |
(com.ms.packagemanager.PackageManager::java.lang.String[] nativeGetBeansList ()) |
|
766 |
(com.ms.packagemanager.PackageManager::com.ms.com.IStream nativeGetFileIStream (java.lang.String java.lang.String)) |
|
767 |
(com.ms.packagemanager.PackageManager::java.lang.Class nativeFindClass (java.lang.String java.lang.String java.lang.ClassLoader)) |
|
768 |
(com.ms.security.permissions.UserFileIOPermission::byte[] pEncodeAsn ()) |
|
769 |
(com.ms.security.permissions.UserFileIOPermission::boolean pDecodeAsn (byte[])) |
|
770 |
(com.ms.security.permissions.PropertyPermission::byte[] pEncodeAsn ()) |
|
771 |
(com.ms.security.permissions.PropertyPermission::boolean pDecodeAsn (byte[])) |
|
772 |
(com.ms.security.permissions.ClientStoragePermission::byte[] pEncodeAsn ()) |
|
773 |
(com.ms.security.permissions.ClientStoragePermission::boolean pDecodeAsn (byte[])) |
|
774 |
(com.ms.security.permissions.ExecutionPermission::byte[] pEncodeAsn ()) |
|
775 |
(com.ms.security.permissions.ExecutionPermission::boolean pDecodeAsn (byte[])) |
|
776 |
(com.ms.util.EventLog::boolean DeregisterEventSource (int)) |
|
777 |
(com.ms.util.EventLog::void reportEvent0 (unsigned short unsigned short int java.lang.String[] byte[])) |
|
778 |
(com.ms.util.EventLog::int RegisterEventSource (java.lang.String java.lang.String)) |
|
779 |
(com.ms.applet.BrowserAppletFrame::void signalViewChange (int)) |
|
780 |
(com.ms.applet.BrowserAppletFrame::java.lang.Object newInstance (int java.lang.Class boolean com.ms.security.PermissionSet)) |
|
781 |
(com.ms.applet.BrowserAppletFrame::void showSystemStatus (int int boolean java.lang.String)) |
|
782 |
(com.ms.applet.BrowserAppletFrame::com.ms.security.management.SecurityPolicy getSecurityPolicy0 (int java.lang.String)) |
|
783 |
(com.ms.applet.BrowserAppletFrame::void setDownloadState (int boolean)) |
|
784 |
(com.ms.applet.BrowserAppletFrame::int GetSystemDefaultLCID ()) |
|
785 |
(com.ms.applet.BrowserAppletFrame::void requestResize (int int int)) |
|
786 |
(com.ms.applet.BrowserAppletFrame::void signalObjectLoadDone (int boolean)) |
|
787 |
(com.ms.applet.BrowserAppletFrame::com.ms.applet.BrowserAppletFrame findOfflineContext ()) |
|
788 |
(com.ms.applet.BrowserAppletFrame::void showStatus0 (int java.lang.String)) |
|
789 |
(com.ms.applet.BrowserAppletFrame::boolean checkGlobalOfflineMode0 ()) |
|
790 |
(com.ms.applet.BrowserAppletFrame::void showDocument0 (int java.lang.String java.lang.String)) |
|
791 |
(com.ms.security.permissions.SystemStreamsPermission::byte[] pEncodeAsn ()) |
|
792 |
(com.ms.security.permissions.SystemStreamsPermission::boolean pDecodeAsn (byte[])) |
|
793 |
(com.ms.security.permissions.FileIOPermission::byte[] pEncodeAsn ()) |
|
794 |
(com.ms.security.permissions.FileIOPermission::boolean pDecodeAsn (byte[])) |
|
795 |
(com.ms.com.ComLib::int newGCHandle (java.lang.Object)) |
|
796 |
(com.ms.com.ComLib::java.lang.Object derefGCHandle (int)) |
|
797 |
(com.ms.com.ComLib::void dprinthelper (char[])) |
|
798 |
(com.ms.com.ComLib::void release (java.lang.Object)) |
|
799 |
(com.ms.com.ComLib::int jcdwClassSizeOf (java.lang.Class)) |
|
800 |
(com.ms.com.ComLib::int jcdwOffsetOf (java.lang.Object java.lang.String)) |
|
801 |
(com.ms.com.ComLib::int jcdwClassOffsetOf (java.lang.Class java.lang.String)) |
|
802 |
(com.ms.com.ComLib::boolean isJavaOwned (java.lang.Object)) |
|
803 |
(com.ms.com.ComLib::void brk (java.lang.Object)) |
|
804 |
(com.ms.com.ComLib::void setDataWrapperSize (java.lang.Object int)) |
|
805 |
(com.ms.com.ComLib::void brk (int)) |
|
806 |
(com.ms.com.ComLib::void setJCDWHomeThread (java.lang.Object java.lang.Object)) |
|
807 |
(com.ms.com.ComLib::void propagateOwnership (java.lang.Object int)) |
|
808 |
(com.ms.com.ComLib::void threadStartMTA (java.lang.Thread)) |
|
809 |
(com.ms.com.ComLib::void IENVNextMarshalerJ2C (int)) |
|
810 |
(com.ms.com.ComLib::boolean supportsInterface (java.lang.Object com.ms.com._Guid)) |
|
811 |
(com.ms.com.ComLib::java.lang.Object ptrToStruct (java.lang.Class int)) |
|
812 |
(com.ms.com.ComLib::int jcdwSizeOf (java.lang.Object)) |
|
813 |
(com.ms.com.ComLib::void declareMessagePumpThread ()) |
|
814 |
(com.ms.com.ComLib::void IENVNextMarshalerC2J (int)) |
|
815 |
(com.ms.com.ComLib::void freeGCHandle (int)) |
|
816 |
(com.ms.com.ComLib::boolean isEqualUnknown (java.lang.Object java.lang.Object)) |
|
817 |
(com.ms.com.Dispatch::boolean NIsArray (java.lang.Object)) |
|
818 |
(com.ms.com.Dispatch::java.lang.String NInvokeReal (java.lang.Object com.ms.com._Guid java.lang.String int int int int com.ms.com.Variant[] com.ms.com.Variant[] int[])) |
|
819 |
(com.ms.com.Dispatch::void NGetIDsOfNamesReal (java.lang.Object com.ms.com._Guid int java.lang.String[] int[])) |
|
820 |
(com.ms.com.ComException::int FormatMessage (int int int int java.lang.StringBuffer int int[])) |
|
821 |
(com.ms.com.Variant::int toInt ()) |
|
822 |
(com.ms.com.Variant::double toDate ()) |
|
823 |
(com.ms.com.Variant::boolean toBoolean ()) |
|
824 |
(com.ms.com.Variant::double toDouble ()) |
|
825 |
(com.ms.com.Variant::long toCurrency ()) |
|
826 |
(com.ms.com.Variant::void putVariantArray (com.ms.com.Variant[])) |
|
827 |
(com.ms.com.Variant::com.ms.com.Variant[] getVariantArray ()) |
|
828 |
(com.ms.com.Variant::void putByteArray (java.lang.Object)) |
|
829 |
(com.ms.com.Variant::void putShortRef (unsigned short)) |
|
830 |
(com.ms.com.Variant::void putIntRef (int)) |
|
831 |
(com.ms.com.Variant::void putDoubleRef (double)) |
|
832 |
(com.ms.com.Variant::void putDateRef (double)) |
|
833 |
(com.ms.com.Variant::void putStringRef (java.lang.String)) |
|
834 |
(com.ms.com.Variant::unsigned short getShortRef ()) |
|
835 |
(com.ms.com.Variant::int getIntRef ()) |
|
836 |
(com.ms.com.Variant::double getDoubleRef ()) |
|
837 |
(com.ms.com.Variant::double getDateRef ()) |
|
838 |
(com.ms.com.Variant::java.lang.String getStringRef ()) |
|
839 |
(com.ms.com.Variant::java.lang.String internalToString ()) |
|
840 |
(com.ms.com.Variant::void initSafeArrayByRef (com.ms.com.SafeArray int)) |
|
841 |
(com.ms.com.Variant::java.lang.Object toCharArray ()) |
|
842 |
(com.ms.com.Variant::java.lang.Object toDispatch ()) |
|
843 |
(com.ms.com.Variant::byte toByte ()) |
|
844 |
(com.ms.com.Variant::java.lang.Object getDispatch ()) |
|
845 |
(com.ms.com.Variant::void putDispatch (java.lang.Object)) |
|
846 |
(com.ms.com.Variant::boolean getBoolean ()) |
|
847 |
(com.ms.com.Variant::int toError ()) |
|
848 |
(com.ms.com.Variant::java.lang.Object toObject ()) |
|
849 |
(com.ms.com.Variant::void initSafeArrayByVal (com.ms.com.SafeArray int)) |
|
850 |
(com.ms.com.Variant::java.lang.Object getObject ()) |
|
851 |
(com.ms.com.Variant::void putObject (java.lang.Object)) |
|
852 |
(com.ms.com.Variant::com.ms.com.SafeArray toSafeArrayHelper (java.lang.Class)) |
|
853 |
(com.ms.com.Variant::void putFloatRef (float)) |
|
854 |
(com.ms.com.Variant::void putCurrencyRef (long)) |
|
855 |
(com.ms.com.Variant::void putErrorRef (int)) |
|
856 |
(com.ms.com.Variant::void putBooleanRef (boolean)) |
|
857 |
(com.ms.com.Variant::void putObjectRef (java.lang.Object)) |
|
858 |
(com.ms.com.Variant::void putByteRef (byte)) |
|
859 |
(com.ms.com.Variant::java.lang.String getString ()) |
|
860 |
(com.ms.com.Variant::void putString (java.lang.String)) |
|
861 |
(com.ms.com.Variant::float getFloatRef ()) |
|
862 |
(com.ms.com.Variant::long getCurrencyRef ()) |
|
863 |
(com.ms.com.Variant::int getErrorRef ()) |
|
864 |
(com.ms.com.Variant::boolean getBooleanRef ()) |
|
865 |
(com.ms.com.Variant::java.lang.Object getObjectRef ()) |
|
866 |
(com.ms.com.Variant::byte getByteRef ()) |
|
867 |
(com.ms.com.Variant::float toFloat ()) |
|
868 |
(com.ms.com.Variant::void putCharArray (java.lang.Object)) |
|
869 |
(com.ms.com.Variant::void putDispatchRef (java.lang.Object)) |
|
870 |
(com.ms.com.Variant::java.lang.Object getDispatchRef ()) |
|
871 |
(com.ms.com.Variant::void putVariantArrayRef (com.ms.com.Variant[])) |
|
872 |
(com.ms.com.Variant::com.ms.com.Variant[] getVariantArrayRef ()) |
|
873 |
(com.ms.com.Variant::void changeType (unsigned short)) |
|
874 |
(com.ms.com.Variant::void ncloneIndirect (com.ms.com.Variant)) |
|
875 |
(com.ms.com.Variant::void nFinalize (boolean)) |
|
876 |
(com.ms.com.Variant::void nclone (com.ms.com.Variant)) |
|
877 |
(com.ms.com.Variant::unsigned short toShort ()) |
|
878 |
(com.ms.com.Variant::void putSafeArrayRefHelper (int)) |
|
879 |
(com.ms.com.Variant::com.ms.com.Variant[] toVariantArray ()) |
|
880 |
(com.ms.com.Variant::java.lang.Object toByteArray ()) |
|
881 |
(com.ms.com.Variant::void TrueVariantClear ()) |
|
882 |
(com.ms.awt.WToolkit::boolean MessageBeep (int)) |
|
883 |
(com.ms.applet.AppletPanel::boolean StartCodeDownload (int java.lang.String java.lang.String java.lang.String)) |
|
884 |
(com.ms.applet.AppletPanel::void securedCall0 (int java.lang.Object)) |
|
885 |
(com.ms.applet.AppletPanel::com.ms.security.PermissionSet getDefaultPermissionsFromLoader (com.ms.vm.loader.URLClassLoader)) |
|
886 |
(com.ms.dll.Win32Exception::int FormatMessage (int int int int java.lang.StringBuffer int int[])) |
|
887 |
(com.ms.awt.WGuiCallback::boolean SetEvent (int)) |
|
888 |
(com.ms.awt.WGuiCallback::int CreateSemaphore (int int int int)) |
|
889 |
(com.ms.awt.WGuiCallback::int ReleaseSemaphore (int int int)) |
|
890 |
(com.ms.awt.WGuiCallback::void userYield (boolean)) |
|
891 |
(com.ms.awt.WGuiCallback::int MsgWaitForMultipleObjects (int int[] boolean int int)) |
|
892 |
(com.ms.awt.WGuiCallback::int CreateEvent (int boolean boolean int)) |
|
893 |
(com.ms.activeX.ActiveXToolkit::int GetSysColor (int)) |
|
894 |
(com.ms.awt.peer.NativeGraphics::void setPageDimension (int int)) |
|
895 |
(com.ms.awt.peer.NativeGraphics::void setBkColour (int int)) |
|
896 |
(com.ms.awt.peer.NativeGraphics::void getClipBounds (com.ms.awt.peer.NativeRect int int)) |
|
897 |
(com.ms.awt.peer.NativeGraphics::void pGetCharOutline (int byte[])) |
|
898 |
(com.ms.awt.peer.NativeGraphics::void drawLine (int int int int)) |
|
899 |
(com.ms.awt.peer.NativeGraphics::void setXORMode (int int int int)) |
|
900 |
(com.ms.awt.peer.NativeGraphics::int drawString (java.lang.String int int int int int int int int[] int[])) |
|
901 |
(com.ms.awt.peer.NativeGraphics::int getCoClass ()) |
|
902 |
(com.ms.awt.peer.NativeGraphics::void drawArc (int int int int int int int)) |
|
903 |
(com.ms.awt.peer.NativeGraphics::void getInitialPageDimension (com.ms.awt.peer.NativeRect)) |
|
904 |
(com.ms.awt.peer.NativeGraphics::void setVisRgn (int)) |
|
905 |
(com.ms.awt.peer.NativeGraphics::void pSetForeground (int int)) |
|
906 |
(com.ms.awt.peer.NativeGraphics::int pGetDC ()) |
|
907 |
(com.ms.awt.peer.NativeGraphics::void drawPixels (int[] int int int)) |
|
908 |
(com.ms.awt.peer.NativeGraphics::void drawPolygon (int[] int[] int int int int)) |
|
909 |
(com.ms.awt.peer.NativeGraphics::void createFromImage (com.ms.awt.peer.INativeImage)) |
|
910 |
(com.ms.awt.peer.NativeGraphics::void endPage ()) |
|
911 |
(com.ms.awt.peer.NativeGraphics::int pGetCharOutlineSize (int)) |
|
912 |
(com.ms.awt.peer.NativeGraphics::void pDrawBezier (int int int[] int)) |
|
913 |
(com.ms.awt.peer.NativeGraphics::int drawBytes (byte[] int int int int int)) |
|
914 |
(com.ms.awt.peer.NativeGraphics::void changeClip (int int int int boolean)) |
|
915 |
(com.ms.awt.peer.NativeGraphics::int drawChars (char[] int int int int int int int int int int[] int[])) |
|
916 |
(com.ms.awt.peer.NativeGraphics::void drawT2Curve (float float float float float float int int)) |
|
917 |
(com.ms.awt.peer.NativeGraphics::void createFromPrintJob (java.lang.String com.ms.awt.peer.SPJData)) |
|
918 |
(com.ms.awt.peer.NativeGraphics::void endPrintJob ()) |
|
919 |
(com.ms.awt.peer.NativeGraphics::void pSetOrigin (int int)) |
|
920 |
(com.ms.awt.peer.NativeGraphics::void createFromHDC (int)) |
|
921 |
(com.ms.awt.peer.NativeGraphics::void drawOval (int int int int int)) |
|
922 |
(com.ms.awt.peer.NativeGraphics::int pSetFont (java.lang.String int int int)) |
|
923 |
(com.ms.awt.peer.NativeGraphics::void setPaintMode (int int)) |
|
924 |
(com.ms.awt.peer.NativeGraphics::void startPage ()) |
|
925 |
(com.ms.awt.peer.NativeGraphics::void clearClip ()) |
|
926 |
(com.ms.awt.peer.NativeGraphics::void createFromCopy (com.ms.awt.peer.INativeGraphics)) |
|
927 |
(com.ms.awt.peer.NativeGraphics::void scanLines (int int[] int int int int)) |
|
928 |
(com.ms.awt.peer.NativeGraphics::void drawRoundRect (int int int int int int int)) |
|
929 |
(com.ms.awt.peer.NativeGraphics::void dispose ()) |
|
930 |
(com.ms.awt.peer.NativeGraphics::void clearRect (int int int int int)) |
|
931 |
(com.ms.awt.peer.NativeGraphics::void copyArea (int int int int int int)) |
|
932 |
(com.ms.awt.peer.NativeGraphics::void createFromWindow (int)) |
|
933 |
(com.ms.awt.peer.NativeGraphics::void drawPolyline (int[] int[] int int int)) |
|
934 |
(com.ms.awt.peer.NativeGraphics::void drawRect (int int int int int)) |
|
935 |
(com.ms.awt.peer.CToolkit::void callbackEventLoop (com.ms.awt.peer.IToolkitCallback)) |
|
936 |
(com.ms.awt.peer.CToolkit::int getToolkitHwnd ()) |
|
937 |
(com.ms.awt.peer.CToolkit::int createCompHwnd (int int)) |
|
938 |
(com.ms.awt.peer.CNativeSystemIME::void setCompositionFont (int int)) |
|
939 |
(com.ms.awt.peer.CNativeSystemIME::void setCompositionPos (int int int)) |
|
940 |
(com.ms.awt.peer.CNativeSystemIME::void setOpenStatus (int int)) |
|
941 |
(com.ms.awt.peer.CNativeSystemIME::int getOpenStatus (int)) |
|
942 |
(com.ms.awt.peer.CNativeSystemIME::java.lang.String getCompositionString (int)) |
|
943 |
(com.ms.awt.peer.CNativeSystemIME::java.lang.String getCompositionResultString (int)) |
|
944 |
(com.ms.net.wininet.WininetStreamHandlerFactory::int initNative (java.lang.String)) |
|
945 |
(com.ms.com.SafeArray::void rawGetVariantAs (int com.ms.com.Variant)) |
|
946 |
(com.ms.com.SafeArray::void NSafeArrayInit (int)) |
|
947 |
(com.ms.com.SafeArray::float rawGetDouble (int)) |
|
948 |
(com.ms.com.SafeArray::void NRawBoolCopyToJavaArray (int int boolean[] int)) |
|
949 |
(com.ms.com.SafeArray::void validateArray (int)) |
|
950 |
(com.ms.com.SafeArray::void NSafeArrayCreateFromString (java.lang.String)) |
|
951 |
(com.ms.com.SafeArray::void rawSetString (int java.lang.String)) |
|
952 |
(com.ms.com.SafeArray::int getInt (int)) |
|
953 |
(com.ms.com.SafeArray::void setInt (int int)) |
|
954 |
(com.ms.com.SafeArray::boolean getBoolean (int)) |
|
955 |
(com.ms.com.SafeArray::void setBoolean (int boolean)) |
|
956 |
(com.ms.com.SafeArray::int computeOffset (int)) |
|
957 |
(com.ms.com.SafeArray::void NSafeArrayNullInit ()) |
|
958 |
(com.ms.com.SafeArray::void rawSetVariant (int com.ms.com.Variant)) |
|
959 |
(com.ms.com.SafeArray::float rawGetFloat (int)) |
|
960 |
(com.ms.com.SafeArray::float getFloat (int)) |
|
961 |
(com.ms.com.SafeArray::void setFloat (int float)) |
|
962 |
(com.ms.com.SafeArray::int computeOffset2 (int int)) |
|
963 |
(com.ms.com.SafeArray::void rawSetDouble (int double)) |
|
964 |
(com.ms.com.SafeArray::java.lang.String asString ()) |
|
965 |
(com.ms.com.SafeArray::void NRawCopyToJavaArray (int int java.lang.Object int)) |
|
966 |
(com.ms.com.SafeArray::void NSafeArrayCreate (int int int[] int[])) |
|
967 |
(com.ms.com.SafeArray::void NRawBoolCopyFromJavaArray (boolean[] int int int)) |
|
968 |
(com.ms.com.SafeArray::void NSafeArrayDestroy (boolean boolean)) |
|
969 |
(com.ms.com.SafeArray::int NSafeArrayCopy ()) |
|
970 |
(com.ms.com.SafeArray::int rawGetInt (int)) |
|
971 |
(com.ms.com.SafeArray::boolean rawGetBoolean (int)) |
|
972 |
(com.ms.com.SafeArray::void rawSetFloat (int float)) |
|
973 |
(com.ms.com.SafeArray::java.lang.String rawGetString (int)) |
|
974 |
(com.ms.com.SafeArray::int NTotalNumElems ()) |
|
975 |
(com.ms.com.SafeArray::double getDouble (int)) |
|
976 |
(com.ms.com.SafeArray::void setDouble (int double)) |
|
977 |
(com.ms.com.SafeArray::void Nreinit (com.ms.com.SafeArray)) |
|
978 |
(com.ms.com.SafeArray::int getPhysicalSafeArray ()) |
|
979 |
(com.ms.com.SafeArray::int NgetdwordAt (int)) |
|
980 |
(com.ms.com.SafeArray::void NRawCopyFromJavaArray (java.lang.Object int int int)) |
|
981 |
(com.ms.com.SafeArray::void rawSetBoolean (int boolean)) |
|
982 |
(com.ms.com.SafeArray::void rawSetInt (int int)) |
|
983 |
(com.ms.awt.peer.CNativeComponent::void invalidate (int int int int)) |
|
984 |
(com.ms.awt.peer.CNativeComponent::void hideModal ()) |
|
985 |
(com.ms.awt.peer.CNativeComponent::void hide ()) |
|
986 |
(com.ms.awt.peer.CNativeComponent::void setOnTop (int)) |
|
987 |
(com.ms.awt.peer.CNativeComponent::void registerDragDrop ()) |
|
988 |
(com.ms.awt.peer.CNativeComponent::void endValidate ()) |
|
989 |
(com.ms.awt.peer.CNativeComponent::void enable ()) |
|
990 |
(com.ms.awt.peer.CNativeComponent::void disable ()) |
|
991 |
(com.ms.awt.peer.CNativeComponent::void setTitle (java.lang.String)) |
|
992 |
(com.ms.awt.peer.CNativeComponent::void getBounds (com.ms.awt.peer.NativeRect)) |
|
993 |
(com.ms.awt.peer.CNativeComponent::int gethwnd ()) |
|
994 |
(com.ms.awt.peer.CNativeComponent::void showModal ()) |
|
995 |
(com.ms.awt.peer.CNativeComponent::void setCursor (int)) |
|
996 |
(com.ms.awt.peer.CNativeComponent::void reshape (int int int int)) |
|
997 |
(com.ms.awt.peer.CNativeComponent::void requestFocus ()) |
|
998 |
(com.ms.awt.peer.CNativeComponent::void callDefWindowProc (int int int int)) |
|
999 |
(com.ms.awt.peer.CNativeComponent::void registerCustomDropTarget (com.ms.com.IUnknown)) |
|
1000 |
(com.ms.awt.peer.CNativeComponent::void setNoActivate (boolean)) |
|
1001 |
(com.ms.awt.peer.CNativeComponent::void getPlaceOnScreen (com.ms.awt.peer.NativeRect)) |
|
1002 |
(com.ms.awt.peer.CNativeComponent::void beginValidate ()) |
|
1003 |
(com.ms.awt.peer.CNativeComponent::void clippedReshape (int int int int int)) |
|
1004 |
(com.ms.awt.peer.CNativeComponent::void setResizable (boolean)) |
|
1005 |
(com.ms.awt.peer.CNativeComponent::void setIcon (int)) |
|
1006 |
(com.ms.awt.peer.CNativeComponent::void toBack ()) |
|
1007 |
(com.ms.awt.peer.CNativeComponent::void setFrameHost (com.ms.awt.peer.IBrowserAppletFrameCallback)) |
|
1008 |
(com.ms.awt.peer.CNativeComponent::void toFront ()) |
|
1009 |
(com.ms.awt.peer.CNativeComponent::void show ()) |
|
1010 |
(com.ms.awt.peer.CNativeComponent::void updateInsets (com.ms.awt.peer.NativeInsets)) |
|
1011 |
(com.ms.awt.peer.CNativeComponent::void dispose ()) |
|
1012 |
(com.ms.awt.peer.CNativeComponent::void initFromJavaWindow (int com.ms.awt.peer.IComponentCallback com.ms.awt.peer.INativeComponent com.ms.awt.peer.IToolkit int)) |
|
1013 |
(com.ms.awt.peer.CNativeComponent::void init (int com.ms.awt.peer.IComponentCallback com.ms.awt.peer.INativeComponent com.ms.awt.peer.IToolkit)) |
|
1014 |
(com.ms.awt.peer.CNativeComponent::void beginDrag (com.ms.awt.peer.INativeDragCallback)) |
|
1015 |
(com.ms.fx.RegionConverter::int computeNativeRegion (int[])) |
|
1016 |
(com.ms.fx.RegionConverter::int[] computeJavaRegion (int)) |
|
1017 |
(com.ms.net.wininet.URLUtils::java.lang.String canonicalizeURL (java.lang.String int)) |
|
1018 |
(com.ms.net.wininet.URLUtils::java.lang.String combineURL (java.lang.String java.lang.String int)) |
|
1019 |
(com.ms.awt.peer.NativeFontMetrics::int bytesWidth (byte[] int int)) |
|
1020 |
(com.ms.awt.peer.NativeFontMetrics::int stringWidth (java.lang.String int int[])) |
|
1021 |
(com.ms.awt.peer.NativeFontMetrics::int charsWidth (char[] int int int int[])) |
|
1022 |
(com.ms.awt.peer.NativeFontMetrics::java.lang.String init (com.ms.awt.peer.INativeGraphics int[] java.lang.String int int int)) |
|
1023 |
(com.ms.io.console.Console::int MessageBox (int java.lang.String java.lang.String int)) |
|
1024 |
(com.ms.awt.peer.NativeFileDialog::void show (com.ms.awt.peer.IFileDialogCallback java.lang.String java.lang.String java.lang.String int com.ms.awt.peer.INativeComponent int int)) |
|
1025 |
(com.ms.security.management.SecurityZone::byte[] pLoadCustomPermissions (int int java.lang.String)) |
|
1026 |
(com.ms.awt.peer.NativeImage::int setBytePixelsDirected (int int int int com.ms.awt.peer.DirectColourModelData byte[] int int com.ms.awt.peer.INativeImageBufferDone)) |
|
1027 |
(com.ms.awt.peer.NativeImage::void create (int int int int)) |
|
1028 |
(com.ms.awt.peer.NativeImage::int setIntPixelsIndexed (int int int int int[] int int[] int int com.ms.awt.peer.INativeImageBufferDone)) |
|
1029 |
(com.ms.awt.peer.NativeImage::int getCoClass ()) |
|
1030 |
(com.ms.awt.peer.NativeImage::int getIcon (int int int)) |
|
1031 |
(com.ms.awt.peer.NativeImage::int setBytePixelsIndexed (int int int int int[] int byte[] int int com.ms.awt.peer.INativeImageBufferDone)) |
|
1032 |
(com.ms.awt.peer.NativeImage::void sendPixels (com.ms.awt.peer.SPData)) |
|
1033 |
(com.ms.awt.peer.NativeImage::void fillPixels (com.ms.awt.peer.SPData byte[])) |
|
1034 |
(com.ms.awt.peer.NativeImage::void dispose ()) |
|
1035 |
(com.ms.awt.peer.NativeImage::void init (int int int int int)) |
|
1036 |
(com.ms.awt.peer.NativeImage::int setIntPixelsDirected (int int int int com.ms.awt.peer.DirectColourModelData int[] int int com.ms.awt.peer.INativeImageBufferDone)) |
|
1037 |
(com.ms.awt.peer.NativeImage::void imageDrawStretched (com.ms.awt.peer.INativeGraphics int int int int int int int int int int)) |
|
1038 |
(com.ms.awt.peer.NativeImage::int finish (int)) |
|
1039 |
(com.ms.awt.peer.NativeImage::void imageDraw (int int int int int)) |
|
1040 |
(com.ms.awt.peer.NativeResource::java.lang.String loadString (int)) |
|
1041 |
(com.ms.awt.peer.NativeResource::int openDialogFromID (int)) |
|
1042 |
(com.ms.awt.peer.NativeResource::boolean attach (java.lang.String)) |
|
1043 |
(com.ms.awt.peer.NativeResource::void loadBytes (int int java.lang.String byte[] int)) |
|
1044 |
(com.ms.awt.peer.NativeResource::int getSize (int int java.lang.String)) |
|
1045 |
(com.ms.awt.peer.NativeResource::void detach ()) |
|
1046 |
(com.ms.awt.peer.NativeResource::int openDialogFromName (java.lang.String)) |
|
1047 |
(com.ms.net.wininet.WininetURLConnection::com.ms.applet.BrowserAppletFrame findOfflineContext ()) |
|
1048 |
(com.ms.com.DispatchProxy::void finalize ()) |
|
1049 |
(com.ms.com.DispatchProxy::void init (com.ms.com._Guid java.lang.reflect.Method[] int[])) |
|
1050 |
(com.ms.net.wininet.WininetInputStream::void close ()) |
|
1051 |
(com.ms.net.wininet.WininetInputStream::int read (byte[] int int)) |
|
1052 |
(com.ms.net.wininet.WininetInputStream::int available ()) |
|
1053 |
(com.ms.net.wininet.WininetInputStream::long skip (long)) |
|
1054 |
(com.ms.net.wininet.WininetInputStream::void connect (java.lang.String boolean boolean java.lang.SecurityManager)) |
|
1055 |
(com.ms.vm.loader.CabSignatureInfo::com.ms.vm.loader.CabSignatureInfo extractFromFile0 (java.lang.String com.ms.security.management.SecurityPolicy)) |
|
1056 |
(com.ms.net.wininet.http.HttpInputStream::byte[] getResponseHeaders ()) |
|
1057 |
(com.ms.net.wininet.http.HttpInputStream::void close0 ()) |
|
1058 |
(com.ms.net.wininet.http.HttpInputStream::void connect (java.lang.String int java.lang.String boolean boolean boolean boolean byte[] byte[] java.lang.SecurityManager)) |
|
1059 |
(com.ms.vm.loader.CabCracker::int GetTempFileName (java.lang.StringBuffer java.lang.String int java.lang.StringBuffer)) |
|
1060 |
(com.ms.vm.loader.CabCracker::void getBytes0 (int int byte[])) |
|
1061 |
(com.ms.vm.loader.CabCracker::void cleanup ()) |
|
1062 |
(com.ms.vm.loader.CabCracker::int GetTempPath (int java.lang.StringBuffer)) |
|
1063 |
(com.ms.vm.loader.CabCracker::void load0 ()) |
|
1064 |
||
1065 |
||
261 | 1066 |
" |
432 | 1067 |
! |
1068 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1069 |
performance1 |
432 | 1070 |
" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1071 |
JAVA::BenchMark new loopmark |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1072 |
JAVA::BenchMark new logicmark |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1073 |
JAVA::BenchMark new sievemark |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1074 |
JAVA::BenchMark new methodmark |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1075 |
JAVA::BenchMark new stringmark |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1076 |
JAVA::BenchMark new newstringmark |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1077 |
JAVA::BenchMark new neweststringmark |
432 | 1078 |
|
1079 |
||
1080 |
" |
|
1081 |
" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1082 |
caffmark loopmark logicmark sievemark methodmark stringmark float image graphic dialog newstringmark neweststringmark |
457 | 1083 |
linux: |
512 | 1084 |
P6/233 No JIT 84 87 90 40 22 17 10 |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1085 |
103 133 142 137 28 73 109 167 18 140 |
520 | 1086 |
|
512 | 1087 |
P6/233 JIT 479 2459 393 649 28 21 12 |
1088 |
P6/233 JIT 473 1805 3046 439 986 28 21 12 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1089 |
533 1808 3382 613 1003 25 105 143 1 |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1090 |
668 3330 3644 740 |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1091 |
793 4116 3731 1243 1365 120 103 79 2 |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1092 |
914 4480 4061 2290 68 106 158 19 34 |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1093 |
941 4607 4149 1238 2434 75 101 152 18 32 |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1094 |
591 164 |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1095 |
1087 1836 800 110 35 |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1096 |
1102 4592 4270 1844 2381 841 109 169 21 35 |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1097 |
1177 4608 4309 1810 2432 895 532 182 20 35 |
540 | 1098 |
|
457 | 1099 |
|
1100 |
w95 |
|
1101 |
P5/200 JIT 90 95 90 95 686 18 60 54 7 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1102 |
428 1657 2385 684 957 21 61 62 9 |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1103 |
541 2886 2589 823 976 18 62 55 7 |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1104 |
583 3062 2635 842 861 223 65 57 8 |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1105 |
616 3075 2438 1081 1324 218 64 54 8 |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1106 |
718 3138 2755 1085 1200 816 63 48 9 7 |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1107 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1108 |
caffmark loopmark logicmark sievemark methodmark stringmark float image graphic dialog newstringmark neweststringmark |
432 | 1109 |
" |
441 | 1110 |
! |
1111 |
||
1112 |
performance2 |
|
1113 |
" |
|
1114 |
symantec benchmarks |
|
1115 |
||
1116 |
||
1117 |
" |
|
1118 |
" |
|
616 | 1119 |
BubbleSort BidirBubbleSort QuickSort Sieve Hanoi Dhry Fib Array Tree Total |
441 | 1120 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1121 |
ST/X+J Linux |
455 | 1122 |
233Mhz P6 |
441 | 1123 |
No JIT 352767 354597 69585 43048 101638 28961 108839 48815 |
1124 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1125 |
ST/X+J Linux |
455 | 1126 |
233Mhz P6 |
441 | 1127 |
JIT 128724 116810 20259 39733 83160 27613 52093 33166 43996 545554 |
616 | 1128 |
124744 101428 17239 10052 8264 14004 38821 23252 33709 374660 |
455 | 1129 |
+IINC 120324 7265 |
1130 |
+IADD op2 100173 90737 18128 6996 7423 17093 48559 44209 57056 390374 |
|
1131 |
+ISUB op2 90460 17547 5921 57056 390461 |
|
1132 |
+ICMPEQ/NE 99785 90147 5792 43482 56486 388255 |
|
460 | 1133 |
+ICMP 87398 78214 15784 7574 5628 12812 38481 24654 32252 302797 |
461 | 1134 |
+IFICMPLE 84198 74928 13814 5650 11674 23241 293118 |
1135 |
+IFICMPxx 76867 69738 12208 37505 21973 32104 273569 |
|
1136 |
+IFICMPEQ/NE 5580 11202 21723 |
|
1137 |
const IFICMPxx 11856 5463 11032 37372 272726 |
|
462 | 1138 |
+lea for add/sub |
463 | 1139 |
+BALOAD 11700 4600 5015 9431 |
1140 |
+BASTORE 3279 |
|
1141 |
+CALOAD/CASTORE 8907 |
|
466 | 1142 |
regSave change 66119 60365 9997 4917 15386 37851 38202 50027 286497 |
616 | 1143 |
64858 58360 9476 4889 15001 37211 36288 48313 278478 |
1144 |
63146 55949 9302 14899 |
|
1145 |
62970 56085 9352 3226 4837 8779 37573 22815 33899 241297 |
|
471 | 1146 |
-O 43662 40292 7181 2530 4696 8170 34555 22116 32337 195539 |
474 | 1147 |
|
471 | 1148 |
+IALOAD 39162 36347 |
1149 |
+IASTORE 32461 30663 4299 3667 19556 30563 166868 |
|
474 | 1150 |
|
1151 |
-IALOAD/IASTORE |
|
616 | 1152 |
34167 19347 |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1153 |
19232 29726 |
616 | 1154 |
18821 |
496 | 1155 |
+AALOAD/BALOAD |
616 | 1156 |
41490 39527 6776 3315 4077 8443 33895 19152 28018 184693 |
1157 |
41291 37034 6593 32682 |
|
497 | 1158 |
+ATHROW 6449 180079 |
498 | 1159 |
+IASTORE 38848 35601 6219 3796 6122 17869 30085 175106 |
503 | 1160 |
IINC delayed code |
1161 |
+ANEWARRAY 3263 |
|
1162 |
+LADD/LSUB const 38719 35256 6062 27071 172859 |
|
512 | 1163 |
|
616 | 1164 |
2837 22835 |
514 | 1165 |
+ISTORE into arg |
616 | 1166 |
3080 |
514 | 1167 |
quick L2I for ints 2774 21184 |
1168 |
+*ASTORE / *ALOAD |
|
1169 |
again 1621 3654 1525 |
|
533 | 1170 |
+CHECKCAST 3574 25810 |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1171 |
|
441 | 1172 |
------------------------------------------------------------------------------------------------------------ |
616 | 1173 |
BubbleSort BidirBubbleSort QuickSort Sieve Hanoi Dhry Fib Array Tree Total |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1174 |
ST/X+J Win95 |
498 | 1175 |
200Mhz P5 |
1176 |
JIT 78490 77060 15220 4840 6370 9180 73160 36080 351700 |
|
616 | 1177 |
76900 13560 5500 9010 35200 348600 |
1178 |
66080 69920 370750 |
|
507 | 1179 |
+IADD non consts 76620 73210 13180 3790 63550 58880 356900 |
616 | 1180 |
51740 |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1181 |
77390 72450 12520 3900 6040 8950 62450 34330 57780 335810 |
616 | 1182 |
77220 71950 5270 8840 338650 |
1183 |
72390 70690 48010 327370 |
|
1184 |
74910 66740 11420 8620 61730 33340 47350 313940 |
|
507 | 1185 |
+xALOAD/JMP_ZERO |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1186 |
71740 2800 |
616 | 1187 |
71460 65250 11540 2750 62180 33840 50750 311660 |
507 | 1188 |
+LCMP 59100 |
1189 |
better abs(I) |
|
1190 |
+xALOAD/IF_ICMPx 66130 61520 12080 3300 5280 8190 56510 33830 50310 297150 |
|
1191 |
elim dummy static 5210 48270 |
|
1192 |
methods 44160 |
|
616 | 1193 |
119020 112440 19330 3070 4560 2640 56960 37730 52790 408540 |
498 | 1194 |
------------------------------------------------------------------------------------------------------------ |
616 | 1195 |
BubbleSort BidirBubbleSort QuickSort Sieve Hanoi Dhry Fib Array Tree Total |
498 | 1196 |
|
441 | 1197 |
|
1198 |
Sun JDK 274625 244461 52676 50653 65183 26668 78133 28572 61608 882583 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1199 |
(90Mhz P5) |
441 | 1200 |
|
1201 |
Microsoft J++ 9684 8452 2874 1733 3535 3665 3836 4746 25717 64242 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1202 |
(90Mhz P5) |
441 | 1203 |
|
1204 |
Symantec Cafe 14541 12198 3686 1922 4527 3325 3425 12969 26829 83422 |
|
1205 |
JIT 1.02 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1206 |
(90Mhz P5) |
441 | 1207 |
|
1208 |
Symantec Cafe 8292 6970 2714 1613 3345 3235 2013 4516 13180 45878 |
|
1209 |
JIT 1.2 |
|
1210 |
(90Mhz P5) |
|
1211 |
" |
|
1212 |
||
471 | 1213 |
" |
1214 |
|b| |
|
1215 |
||
1216 |
b := JAVA::BubbleSortAlgorithm new. |
|
1217 |
b perform:#'setData(JJ)V' with:10000 with:0 with:0 with:0. |
|
1218 |
Time millisecondsToRun:[ |
|
1219 |
b performTest. |
|
1220 |
] |
|
1221 |
" |
|
1222 |
" |
|
1223 |
|b| |
|
1224 |
||
1225 |
b := JAVA::QSortAlgorithm new. |
|
1226 |
b perform:#'setData(JJ)V' with:500000 with:0 with:0 with:0. |
|
1227 |
Time millisecondsToRun:[ |
|
1228 |
b performTest. |
|
1229 |
] |
|
1230 |
" |
|
1231 |
" |
|
1232 |
|t| |
|
1233 |
||
1234 |
t := JAVA::Tree new. |
|
1235 |
t perform:#'setData(JJ)V' with:1000000 with:0 with:0 with:0. |
|
1236 |
Time millisecondsToRun:[ |
|
1237 |
t performTest. |
|
1238 |
] |
|
1239 |
" |
|
1240 |
" |
|
1241 |
|t| |
|
1242 |
||
1243 |
t := JAVA::Array new. |
|
1244 |
t perform:#'setData(JJ)V' with:1000000 with:0 with:0 with:0. |
|
1245 |
Time millisecondsToRun:[ |
|
1246 |
t performTest. |
|
1247 |
] |
|
1248 |
" |
|
1249 |
||
261 | 1250 |
! ! |
253 | 1251 |
|
1252 |
!JavaVM class methodsFor:'initialization'! |
|
1253 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1254 |
boot |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1255 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1256 |
Java initialize. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1257 |
self initializeVM. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1258 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1259 |
"Created: / 21-02-2012 / 18:09:45 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1260 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1261 |
|
423 | 1262 |
compile:source selector:smalltalkSelector asJavaMethod:javaSelector fakedSource:fakedSource in:aClass |
1263 |
"install additional java protocol in smalltalk classes, req'd for java programs" |
|
1264 |
||
1265 |
|cloneCode| |
|
1266 |
||
1267 |
(aClass implements:javaSelector) ifFalse:[ |
|
672 | 1268 |
Class packageQuerySignal answer:'__temporary__' |
1269 |
do:[ |
|
1270 |
aClass |
|
1271 |
compile:source |
|
1272 |
classified:'java support' |
|
1273 |
logged:false. |
|
1274 |
]. |
|
1275 |
||
1276 |
cloneCode := aClass compiledMethodAt:smalltalkSelector. |
|
1277 |
cloneCode source:fakedSource. |
|
1278 |
||
1279 |
Class withoutUpdatingChangesDo:[ |
|
1280 |
aClass removeSelector:smalltalkSelector. |
|
1281 |
aClass addSelector:javaSelector withMethod:cloneCode. |
|
1282 |
] |
|
423 | 1283 |
]. |
1284 |
||
1285 |
"Created: / 5.11.1998 / 19:30:22 / cg" |
|
1286 |
"Modified: / 5.11.1998 / 19:37:57 / cg" |
|
1287 |
! |
|
1288 |
||
253 | 1289 |
deinitialize |
1290 |
StandardThreadGroup := nil. |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1291 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1292 |
KnownWindows notNil ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1293 |
KnownWindows do: [:v | v isTopView ifTrue: [ v destroy ] ] |
2151 | 1294 |
]. |
253 | 1295 |
JavaWindowGroup := nil. |
1296 |
KnownWindows := nil. |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1297 |
OpenFileTable := nil. |
380 | 1298 |
JavaMethods := nil. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1299 |
SystemClassLoader := nil. |
3083 | 1300 |
SystemProperties := nil. |
253 | 1301 |
|
1302 |
" |
|
2580 | 1303 |
JavaVM deinitialize |
1304 |
" |
|
2151 | 1305 |
|
1306 |
"Created: / 03-01-1998 / 21:28:14 / cg" |
|
1307 |
"Modified: / 03-12-1998 / 20:33:21 / cg" |
|
1308 |
"Modified: / 28-01-2011 / 14:11:35 / Marcel Hlopko <hlopik@gmail.com>" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1309 |
"Modified: / 16-11-2011 / 09:46:49 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
253 | 1310 |
! |
1311 |
||
307 | 1312 |
deinitializeAdditionalJavaProtocol |
2149
2e3d2a599772
changed: #deinitializeAdditionalJavaProtocol
Claus Gittinger <cg@exept.de>
parents:
2117
diff
changeset
|
1313 |
"deinstall additional java protocol in smalltalk classes, req'd for java programs" |
307 | 1314 |
|
459 | 1315 |
#( |
2149
2e3d2a599772
changed: #deinitializeAdditionalJavaProtocol
Claus Gittinger <cg@exept.de>
parents:
2117
diff
changeset
|
1316 |
#'clone()Ljava/lang/Object;' |
2e3d2a599772
changed: #deinitializeAdditionalJavaProtocol
Claus Gittinger <cg@exept.de>
parents:
2117
diff
changeset
|
1317 |
#'equals(Ljava/lang/Object;)Z' |
2e3d2a599772
changed: #deinitializeAdditionalJavaProtocol
Claus Gittinger <cg@exept.de>
parents:
2117
diff
changeset
|
1318 |
#'toString()Ljava/lang/String;' |
2e3d2a599772
changed: #deinitializeAdditionalJavaProtocol
Claus Gittinger <cg@exept.de>
parents:
2117
diff
changeset
|
1319 |
#'getClass()Ljava/lang/Class;' |
459 | 1320 |
) do:[:sel | |
2149
2e3d2a599772
changed: #deinitializeAdditionalJavaProtocol
Claus Gittinger <cg@exept.de>
parents:
2117
diff
changeset
|
1321 |
(Object implements:sel) ifTrue:[ |
2e3d2a599772
changed: #deinitializeAdditionalJavaProtocol
Claus Gittinger <cg@exept.de>
parents:
2117
diff
changeset
|
1322 |
Class withoutUpdatingChangesDo:[ |
2e3d2a599772
changed: #deinitializeAdditionalJavaProtocol
Claus Gittinger <cg@exept.de>
parents:
2117
diff
changeset
|
1323 |
Object removeSelector:sel. |
2e3d2a599772
changed: #deinitializeAdditionalJavaProtocol
Claus Gittinger <cg@exept.de>
parents:
2117
diff
changeset
|
1324 |
] |
2e3d2a599772
changed: #deinitializeAdditionalJavaProtocol
Claus Gittinger <cg@exept.de>
parents:
2117
diff
changeset
|
1325 |
]. |
307 | 1326 |
]. |
1327 |
||
1328 |
" |
|
1329 |
self deinitializeAdditionalJavaProtocol |
|
1330 |
" |
|
1331 |
||
1332 |
"Created: / 4.2.1998 / 21:37:10 / cg" |
|
489 | 1333 |
"Modified: / 5.12.1998 / 15:27:39 / cg" |
307 | 1334 |
! |
1335 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1336 |
flushClasses |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1337 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1338 |
ClassRegistry notNil ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1339 |
ClassRegistry flush |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1340 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1341 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1342 |
"Created: / 30-10-2011 / 16:09:38 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1343 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1344 |
|
253 | 1345 |
initialize |
1346 |
DUMMY_LONG_HIGHWORD := 1. |
|
1347 |
DUMMY_DOUBLE_HIGHWORD := 2. |
|
1348 |
StandardThreadGroup := nil. |
|
261 | 1349 |
NoAudio := true. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1350 |
|
262 | 1351 |
"/ NoAudio := false. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1352 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1353 |
JavaConsoleStream := "Transcript"Stdout. |
253 | 1354 |
FullExceptionTrace := StackTrace := false. |
1355 |
WindowOPTrace := DrawOPTrace := EventTrace := ThreadTrace := false. |
|
1356 |
MonitorTrace := ExceptionTrace := FileOpenTrace := FileIOTrace := false. |
|
474 | 1357 |
ExceptionDebug := ExitDebug := false. |
2151 | 1358 |
ExceptionDebugPatterns := Set new. |
253 | 1359 |
WindowCreationTrace := false. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1360 |
FileOpenConfirmation := false. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1361 |
SocketConnectConfirmation := false. |
2151 | 1362 |
WindowOPTrace := false. |
1363 |
MonitorTrace := false. |
|
1364 |
ThreadTrace := false. |
|
3656 | 1365 |
|
1366 |
self initializeSignals. |
|
1367 |
||
2151 | 1368 |
AssertionsEnabled := true. |
2678
c865275e48a7
Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2580
diff
changeset
|
1369 |
self initializeClassRegistry. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1370 |
FinalizationEnabled := true. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1371 |
EagerResolvingEnabled := false. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1372 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1373 |
ObjectMemory addDependent: self. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1374 |
|
2151 | 1375 |
" |
1376 |
JavaVM initialize" |
|
1377 |
||
1378 |
"Created: / 02-01-1998 / 18:02:34 / cg" |
|
1379 |
"Modified: / 02-12-1998 / 23:02:22 / cg" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1380 |
"Modified: / 09-10-2011 / 20:29:10 / Marcel Hlopko <hlopik@gmail.com>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1381 |
"Modified: / 08-12-2011 / 21:06:35 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
2678
c865275e48a7
Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2580
diff
changeset
|
1382 |
"Modified: / 03-09-2013 / 00:50:08 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
253 | 1383 |
! |
1384 |
||
307 | 1385 |
initializeAdditionalJavaProtocol |
1386 |
"install additional java protocol in smalltalk classes, req'd for java programs" |
|
1387 |
||
1388 |
"/ since we use smalltalk Arrays for JavaArray, some |
|
1389 |
"/ additional (java-) protocol is required. |
|
423 | 1390 |
"/ This is also useful, when Smalltalk objects are passed to |
1391 |
"/ java ... |
|
1392 |
"/ We should implement all of the java.lang.Object protocol in |
|
1393 |
"/ Object, to be on the bright side of life; more of this later ... |
|
1394 |
||
1395 |
self |
|
672 | 1396 |
compile:'__clone |
307 | 1397 |
"this is smalltalk code with a java selector ... |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1398 |
(This source cannot be accepted in the browser, |
430 | 1399 |
since it has a funny selector.) |
307 | 1400 |
Has been added by JavaVM>>initializeAdditionalJavaProtocol" |
1401 |
||
1402 |
^ self shallowCopy' |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1403 |
selector:#'__clone' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1404 |
asJavaMethod:#'clone()Ljava/lang/Object;' |
672 | 1405 |
fakedSource:'#''clone()Ljava/lang/Object;'' |
307 | 1406 |
"this is smalltalk code with a java selector ... |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1407 |
(This source cannot be accepted in the browser, |
430 | 1408 |
since it has a funny selector.) |
307 | 1409 |
Has been added by JavaVM>>initializeAdditionalJavaProtocol" |
1410 |
||
423 | 1411 |
^ self shallowCopy' |
672 | 1412 |
in:Object. |
423 | 1413 |
|
489 | 1414 |
"/ ------------------------------------------------------------ |
1415 |
||
423 | 1416 |
self |
672 | 1417 |
compile:'__equals:arg |
430 | 1418 |
"this is smalltalk code with a java selector ... |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1419 |
(This source cannot be accepted in the browser, |
430 | 1420 |
since it has a funny selector.) |
1421 |
Has been added by JavaVM>>initializeAdditionalJavaProtocol" |
|
1422 |
||
1423 |
^ (arg = self) ifTrue:[1] ifFalse:[0]' |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1424 |
selector:#'__equals:' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1425 |
asJavaMethod:#'equals(Ljava/lang/Object;)Z' |
672 | 1426 |
fakedSource:'#''equals(Ljava/lang/Object;)Z'' |
430 | 1427 |
"this is smalltalk code with a java selector ... |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1428 |
(This source cannot be accepted in the browser, |
430 | 1429 |
since it has a funny selector.) |
1430 |
Has been added by JavaVM>>initializeAdditionalJavaProtocol" |
|
1431 |
||
1432 |
^ (arg = self) ifTrue:[1] ifFalse:[0]' |
|
672 | 1433 |
in:Object. |
430 | 1434 |
|
489 | 1435 |
"/ ------------------------------------------------------------ |
1436 |
||
430 | 1437 |
self |
672 | 1438 |
compile:'__toString |
423 | 1439 |
"this is smalltalk code with a java selector ... |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1440 |
(This source cannot be accepted in the browser, |
430 | 1441 |
since it has a funny selector.) |
423 | 1442 |
Has been added by JavaVM>>initializeAdditionalJavaProtocol" |
1443 |
||
1444 |
^ Java as_String:(self displayString)' |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1445 |
selector:#'__toString' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1446 |
asJavaMethod:#'toString()Ljava/lang/String;' |
672 | 1447 |
fakedSource:'#''toString()Ljava/lang/String;'' |
423 | 1448 |
"this is smalltalk code with a java selector ... |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1449 |
(This source cannot be accepted in the browser, |
430 | 1450 |
since it has a funny selector.) |
423 | 1451 |
Has been added by JavaVM>>initializeAdditionalJavaProtocol" |
1452 |
||
1453 |
^ Java as_String:(self displayString)' |
|
672 | 1454 |
in:Object. |
489 | 1455 |
|
1456 |
"/ ------------------------------------------------------------ |
|
1457 |
||
1458 |
self |
|
672 | 1459 |
compile:'__getClass |
489 | 1460 |
"this is smalltalk code with a java selector ... |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1461 |
(This source cannot be accepted in the browser, |
489 | 1462 |
since it has a funny selector.) |
1463 |
Has been added by JavaVM>>initializeAdditionalJavaProtocol" |
|
1464 |
||
508 | 1465 |
^ JavaVM javaClassObjectForClass:self class' |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1466 |
selector:#'__getClass' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1467 |
asJavaMethod:#'getClass()Ljava/lang/Class;' |
672 | 1468 |
fakedSource:'#''getClass()Ljava/lang/Class;'' |
489 | 1469 |
"this is smalltalk code with a java selector ... |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1470 |
(This source cannot be accepted in the browser, |
489 | 1471 |
since it has a funny selector.) |
1472 |
Has been added by JavaVM>>initializeAdditionalJavaProtocol" |
|
1473 |
||
1474 |
^ JavaVM javaClassObjectForClass:self class' |
|
672 | 1475 |
in:Object. |
1476 |
||
2151 | 1477 |
"/ ------------------------------------------------------------ |
1478 |
||
1479 |
self |
|
1480 |
compile:'__hashCode |
|
1481 |
"this is smalltalk code with a java selector ... |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1482 |
(This source cannot be accepted in the browser, |
2151 | 1483 |
since it has a funny selector.) |
1484 |
Has been added by JavaVM>>initializeAdditionalJavaProtocol" |
|
1485 |
||
1486 |
^ self identityHash' |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1487 |
selector:#'__hashCode' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1488 |
asJavaMethod:#'hashCode()I' |
2151 | 1489 |
fakedSource:'#''hashCode()I'' |
1490 |
"this is smalltalk code with a java selector ... |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1491 |
(This source cannot be accepted in the browser, |
2151 | 1492 |
since it has a funny selector.) |
1493 |
Has been added by JavaVM>>initializeAdditionalJavaProtocol" |
|
1494 |
||
1495 |
^ self identityHash' |
|
1496 |
in:Object. |
|
1497 |
||
307 | 1498 |
|
1499 |
" |
|
1500 |
self initializeAdditionalJavaProtocol |
|
1501 |
" |
|
1502 |
||
2151 | 1503 |
"Modified: / 28-01-1997 / 19:38:58 / stefan" |
1504 |
"Modified: / 22-01-1998 / 21:23:40 / av" |
|
1505 |
"Created: / 04-02-1998 / 21:35:46 / cg" |
|
1506 |
"Modified: / 30-12-1998 / 21:07:55 / cg" |
|
1507 |
"Modified: / 25-10-2010 / 16:26:54 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
307 | 1508 |
! |
1509 |
||
253 | 1510 |
initializeBaseClasses |
1511 |
"load req'd base classes" |
|
1512 |
||
2966 | 1513 |
_java_lang_Object_CLASS := _java_lang_System_CLASS := _java_lang_Class_CLASS := nil. |
2605
f343a5ef30b6
An experiment: access to known class java.lang.Class through pool var.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2601
diff
changeset
|
1514 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1515 |
#( 'java.lang.Object' 'java.lang.Class' 'java.lang.String' 'java.lang.System' ) do: [:cName | |
2605
f343a5ef30b6
An experiment: access to known class java.lang.Class through pool var.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2601
diff
changeset
|
1516 |
(self classForName: cName definedBy: nil) isNil ifTrue: [ |
646 | 1517 |
AbortSignal raise. |
1518 |
^ self |
|
1519 |
] |
|
326 | 1520 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1521 |
" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1522 |
self initializeBaseClasses" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1523 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1524 |
"Created: / 03-01-1998 / 21:13:28 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1525 |
"Modified: / 23-12-1999 / 19:27:42 / cg" |
2605
f343a5ef30b6
An experiment: access to known class java.lang.Class through pool var.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2601
diff
changeset
|
1526 |
"Modified: / 21-05-2013 / 16:37:21 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1527 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1528 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1529 |
initializeClassReader |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1530 |
"/Nothing to do" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1531 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1532 |
JavaClassReader initialize. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1533 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1534 |
"Created: / 06-09-2012 / 11:18:07 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1535 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1536 |
|
2678
c865275e48a7
Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2580
diff
changeset
|
1537 |
initializeClassRegistry |
c865275e48a7
Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2580
diff
changeset
|
1538 |
ClassRegistry isNil ifTrue:[ |
c865275e48a7
Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2580
diff
changeset
|
1539 |
ClassRegistry := JavaClassRegistry new. |
c865275e48a7
Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2580
diff
changeset
|
1540 |
] ifFalse:[ |
c865275e48a7
Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2580
diff
changeset
|
1541 |
ClassRegistry flush. |
c865275e48a7
Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2580
diff
changeset
|
1542 |
] |
c865275e48a7
Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2580
diff
changeset
|
1543 |
|
c865275e48a7
Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2580
diff
changeset
|
1544 |
"Created: / 03-09-2013 / 00:50:08 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
c865275e48a7
Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2580
diff
changeset
|
1545 |
! |
c865275e48a7
Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2580
diff
changeset
|
1546 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1547 |
initializeJavaResources |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1548 |
self initializeMonitorTable. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1549 |
self initializePrimitiveClasses. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1550 |
self initializeOpenFileTable. |
253 | 1551 |
|
1552 |
" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1553 |
JavaVM releaseAllMonitors" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1554 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1555 |
"Created: / 02-01-1998 / 18:04:05 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1556 |
"Modified: / 07-01-1998 / 22:58:10 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1557 |
"Created: / 16-11-2011 / 14:23:24 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1558 |
"Modified: / 17-08-2012 / 11:30:58 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1559 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1560 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1561 |
initializeMonitorTable |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1562 |
LockTable := WeakIdentityDictionary new:32000. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1563 |
LockTableAccess := Semaphore "RecursionLock" forMutualExclusion. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1564 |
LockTableAccess name: 'JavaVM lock table access mutex'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1565 |
Logger |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1566 |
log: 'Initializing EnteredMonitorsPerProcess' |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
1567 |
severity: Logger severityDEBUG |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1568 |
facility: #JVM. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1569 |
EnteredMonitorsPerProcess := IdentityDictionary new. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1570 |
Logger |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1571 |
log: 'Initializing AcquiredMonitorsPerProcess' |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
1572 |
severity: Logger severityDEBUG |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1573 |
facility: #JVM. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1574 |
AcquiredMonitorsPerProcess := IdentityDictionary new. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1575 |
|
253 | 1576 |
" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1577 |
JavaVM initializeMonitorTable" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1578 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1579 |
"Created: / 17-08-2012 / 11:30:38 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
1580 |
"Modified: / 02-03-2015 / 13:59:43 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
253 | 1581 |
! |
1582 |
||
2372
c4c47cba84d5
defined source container
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2353
diff
changeset
|
1583 |
initializeNatives |
c4c47cba84d5
defined source container
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2353
diff
changeset
|
1584 |
|
c4c47cba84d5
defined source container
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2353
diff
changeset
|
1585 |
NativeMethodsImplementation := Java release javaNativeMethodsImplementation. |
c4c47cba84d5
defined source container
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2353
diff
changeset
|
1586 |
|
c4c47cba84d5
defined source container
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2353
diff
changeset
|
1587 |
"Created: / 18-02-2013 / 14:54:55 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
c4c47cba84d5
defined source container
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2353
diff
changeset
|
1588 |
! |
c4c47cba84d5
defined source container
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2353
diff
changeset
|
1589 |
|
253 | 1590 |
initializeOpenFileTable |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1591 |
OpenFileTable := OrderedCollection |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1592 |
with:Stdin |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1593 |
with:("JavaConsoleStream ?" Stdout) |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1594 |
with:("JavaConsoleStream ?" Stderr). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1595 |
OpenFileTableLock := RecursionLock new. |
253 | 1596 |
|
1597 |
" |
|
1598 |
JavaVM initializeOpenFileTable |
|
1599 |
" |
|
1600 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1601 |
"Modified: / 06-08-1997 / 00:40:19 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1602 |
"Created: / 02-01-1998 / 18:04:32 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1603 |
"Modified: / 30-07-2012 / 18:12:20 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
253 | 1604 |
! |
1605 |
||
1606 |
initializePrimitiveClasses |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1607 |
|
2151 | 1608 |
|
1609 |
"/ #( |
|
1610 |
"/ (#byte 'B' 1) |
|
1611 |
"/ (#short 'S' 2) |
|
1612 |
"/ (#int 'I' 4) |
|
1613 |
"/ (#long 'J' 8) |
|
1614 |
"/ (#boolean 'Z' 1) |
|
1615 |
"/ (#char 'C' 2) |
|
1616 |
"/ (#float 'F' 4) |
|
1617 |
"/ (#double 'D' 8) |
|
1618 |
"/ (#void 'V' 0) |
|
1619 |
"/ ) triplesDo:[:nm :sig :len | |
|
1620 |
"/ |jClass classInst| |
|
1621 |
"/ |
|
1622 |
"/ "/ |
|
1623 |
"/ "/ create a javaClass for it. |
|
1624 |
"/ "/ |
|
1625 |
"/ jClass := Java at:'java.lang.Class'. |
|
1626 |
"/ jClass notNil ifTrue:[ |
|
1627 |
"/ classInst := jClass new. |
|
1628 |
"/ JavaClasses at:nm put:classInst. |
|
1629 |
"/ JavaClasses at:classInst put:nm. |
|
1630 |
"/ ] |
|
1631 |
"/ ]. |
|
1632 |
" |
|
1633 |
self initializePrimitiveClasses" |
|
1634 |
||
1635 |
"Modified: / 22-10-1998 / 01:56:02 / cg" |
|
1636 |
"Modified: / 20-12-2010 / 23:39:56 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
1637 |
"Modified: / 28-01-2011 / 14:57:38 / Marcel Hlopko <hlopik@gmail.com>" |
|
1638 |
! |
|
1639 |
||
1640 |
initializeReflection |
|
1641 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1642 |
Reflection := ReflectionRegistry for: self. |
2151 | 1643 |
|
1644 |
"Created: / 21-12-2010 / 19:48:10 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1645 |
"Modified: / 16-01-2013 / 20:55:25 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
253 | 1646 |
! |
1647 |
||
3656 | 1648 |
initializeSignals |
1649 |
"/ ClassLoaderQuerySignal := Query new. |
|
1650 |
||
1651 |
UnhandledJavaExceptionSignal := (Signal new) mayProceed: true. |
|
1652 |
UnhandledJavaExceptionSignal nameClass: self message: #unhandledJavaExceptionSignal. |
|
1653 |
UnhandledJavaExceptionSignal notifierString: 'unhandled java exception'. |
|
1654 |
||
1655 |
JavaExceptionSignal := (Signal new) mayProceed: false. |
|
1656 |
JavaExceptionSignal nameClass: self message: #javaExceptionSignal. |
|
1657 |
JavaExceptionSignal notifierString: 'java exception'. |
|
1658 |
||
1659 |
UnimplementedInstructionSignal := (Signal new) mayProceed: false. |
|
1660 |
UnimplementedInstructionSignal nameClass: self message: #unimplementedInstructionSignal. |
|
1661 |
UnimplementedInstructionSignal notifierString: 'unimplemented instruction'. |
|
1662 |
||
1663 |
UnimplementedNativeMethodSignal := (Signal new) mayProceed: false. |
|
1664 |
UnimplementedNativeMethodSignal nameClass: self message: #unimplementedNativeMethodSignal. |
|
1665 |
UnimplementedNativeMethodSignal notifierString: 'unimplemented native method'. |
|
1666 |
||
1667 |
BadMessageSignal := (Signal new) mayProceed: false. |
|
1668 |
BadMessageSignal nameClass: self message: #badMessageSignal. |
|
1669 |
BadMessageSignal notifierString: 'invalid message to JAVA object'. |
|
1670 |
||
1671 |
InternalErrorSignal := (Signal new) mayProceed: false. |
|
1672 |
InternalErrorSignal nameClass: self message: #internalErrorSignal. |
|
1673 |
InternalErrorSignal notifierString: 'internal error'. |
|
1674 |
||
1675 |
CallHandlerSignal := (Signal new) mayProceed: false. |
|
1676 |
CallHandlerSignal nameClass: self message: #callHandlerSignal. |
|
1677 |
CallHandlerSignal notifierString: 'internal signal'. |
|
1678 |
||
1679 |
StdinReplacementFileQuerySignal := QuerySignal new. |
|
1680 |
StdinReplacementFileQuerySignal nameClass: self message: #stdinReplacementFileQuerySignal. |
|
1681 |
StdinReplacementFileQuerySignal notifierString: 'asking for stdin stream'. |
|
1682 |
||
1683 |
JavaPrivilegedAccessQuery := QuerySignal new. |
|
1684 |
JavaPrivilegedAccessQuery defaultAnswer: false. |
|
1685 |
||
1686 |
" |
|
1687 |
JavaVM initializeSignals |
|
1688 |
" |
|
1689 |
! |
|
1690 |
||
253 | 1691 |
initializeSimulatedLibs |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1692 |
"return a collection of native libs which are considered |
277 | 1693 |
being already loaded. (used with jdk < 1.2)" |
1694 |
||
432 | 1695 |
LibPath := #( |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1696 |
'__builtIn__' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1697 |
'/usr/local/lib' |
2095 | 1698 |
'/usr/local/lib/java' |
1699 |
). |
|
432 | 1700 |
|
1701 |
SimulatedLibs := #( |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1702 |
'__builtIn__/net' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1703 |
'__builtIn__/awt' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1704 |
'__builtIn__/tawt' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1705 |
'__builtIn__/winawt' |
2095 | 1706 |
'__builtIn__/jpeg' |
1707 |
'__builtIn__/mmedia' |
|
1708 |
'__builtIn__/zip' |
|
1709 |
'__builtIn__/math' |
|
1710 |
'__builtIn__/sysresource' |
|
1711 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1712 |
"/ KAVA ... |
2095 | 1713 |
'__builtIn__/agent' |
1714 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1715 |
"/ MS-java ... |
2095 | 1716 |
'__builtIn__/msawt' |
1717 |
'__builtIn__/javart' |
|
1718 |
||
1719 |
"/ 1.1.8 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1720 |
'__builtIn__/jpeg_sun' |
2095 | 1721 |
). |
253 | 1722 |
|
457 | 1723 |
" |
1724 |
self initializeSimulatedLibs |
|
1725 |
" |
|
1726 |
||
253 | 1727 |
"Created: / 4.1.1998 / 19:05:03 / cg" |
457 | 1728 |
"Modified: / 17.11.1998 / 23:53:02 / cg" |
277 | 1729 |
! |
1730 |
||
1731 |
initializeSimulatedNativeLibs |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1732 |
"return a collection of native libs which are considered |
277 | 1733 |
being already loaded (used with jdk >= 1.2)" |
1734 |
||
3083 | 1735 |
OperatingSystem isOSXlike ifTrue: [ |
1736 |
SimulatedNativeLibs := #( 'libawt.jnilib' |
|
1737 |
'libnet.jnilib' |
|
1738 |
'libcmm.jnilib' |
|
1739 |
'libzip.jnilib' |
|
1740 |
'libnio.jnilib' |
|
1741 |
'libmanagement.jnilib' "/ Management Beans - req'd by Tomcat |
|
1742 |
'libjpeg.jnilib' "/ Some UI stuff - req'd by Tomcat !!?!! |
|
1743 |
"/ 'liblcms.so' |
|
1744 |
'libfontmanager.so' "/ req'd by java.text.Bidi |
|
1745 |
"/ 'libj2pkcs11.so' "/ req'd by Smack and some crypto stuff |
|
1746 |
). |
|
1747 |
^ self. |
|
1748 |
]. |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1749 |
OperatingSystem isUNIXlike ifTrue: [ |
3083 | 1750 |
SimulatedNativeLibs := #( 'libawt.so' |
1751 |
'libnet.so' |
|
1752 |
'libcmm.so' |
|
1753 |
'libzip.so' |
|
1754 |
'libnio.so' |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1755 |
'libmanagement.so' "/ Management Beans - req'd by Tomcat |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1756 |
'libjpeg.so' 'liblcms.so' "/ Some UI stuff - req'd by Tomcat !!?!! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1757 |
'libfontmanager.so' "/ req'd by java.text.Bidi |
2744 | 1758 |
'libj2pkcs11.so' "/ req'd by Smack and some crypto stuff |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1759 |
). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1760 |
^ self. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1761 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1762 |
OperatingSystem isMSWINDOWSlike ifTrue: [ |
3083 | 1763 |
SimulatedNativeLibs := #( 'awt.dll' |
1764 |
'net.dll' |
|
1765 |
'cmm.dll' |
|
1766 |
'zip.dll' |
|
1767 |
'nio.so' |
|
2744 | 1768 |
'management.dll' "/ Management Beans - req'd by Tomcat |
1769 |
'fontmanager.dll' "/ req'd by java.text.Bidi |
|
1770 |
'j2pkcs11.dll' "/ req'd by Smack and some crypto stuff |
|
2921
85ccd41f883c
Fixes and (void) natives for shared-memory JDI transport.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2914
diff
changeset
|
1771 |
'dt_shmem.dll' "/ req'd by JDI on Windows / Oracle JDK 7 |
2151 | 1772 |
). |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1773 |
^ self. |
2151 | 1774 |
]. |
1775 |
SimulatedNativeLibs := #(). |
|
277 | 1776 |
|
1777 |
" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1778 |
self initializeSimulatedNativeLibs" |
277 | 1779 |
|
2151 | 1780 |
"Modified: / 27-01-1998 / 18:43:10 / cg" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1781 |
"Modified: / 03-11-2011 / 19:00:39 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1782 |
"Modified: / 21-12-2011 / 23:03:35 / jv" |
2921
85ccd41f883c
Fixes and (void) natives for shared-memory JDI transport.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2914
diff
changeset
|
1783 |
"Modified: / 14-11-2013 / 14:26:06 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2151 | 1784 |
! |
1785 |
||
1786 |
initializeSimulatedNativeMemory |
|
1787 |
||
1788 |
SimulatedNativeMemory := JavaNativeMemory new. |
|
1789 |
||
1790 |
"Created: / 07-12-2010 / 21:07:31 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
1791 |
"Modified: / 07-12-2010 / 23:45:31 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
253 | 1792 |
! |
1793 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1794 |
initializeSystemClassLoader |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1795 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1796 |
| java_lang_ClassLoader stx_libjava_ClassLoader | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1797 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1798 |
java_lang_ClassLoader := JavaVM classForName: 'java.lang.ClassLoader'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1799 |
(SystemClassLoader := java_lang_ClassLoader instVarNamed:#scl) isNil ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1800 |
SystemClassLoader := java_lang_ClassLoader perform: #'getSystemClassLoader()Ljava/lang/ClassLoader;' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1801 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1802 |
|
2960
d133d35e293b
Class loading refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2958
diff
changeset
|
1803 |
stx_libjava_ClassLoader := JavaVM classForName: 'stx.libjava.ClassLoader' definedBy: SystemClassLoader. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1804 |
(SmalltalkClassLoader := stx_libjava_ClassLoader instVarNamed:#scl) isNil ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1805 |
SmalltalkClassLoader := stx_libjava_ClassLoader perform: #'getSmalltalkClassLoader()Ljava/lang/ClassLoader;' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1806 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1807 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1808 |
"Created: / 30-10-2011 / 12:04:02 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2960
d133d35e293b
Class loading refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2958
diff
changeset
|
1809 |
"Modified: / 10-12-2013 / 17:56:58 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1810 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1811 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1812 |
initializeSystemPropertiesInto: props |
2945
98971af93e31
Fix in JavaVM>>#initializeSystemPropertiesInto: be careful when initializing stx.libjava.tests...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2928
diff
changeset
|
1813 |
| cpu cpu2 os dir | |
3083 | 1814 |
|
253 | 1815 |
"/ use JAVA compatible cpu-name |
1816 |
cpu := OperatingSystem getCPUType. |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1817 |
cpu2 := cpu. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1818 |
cpu = 'i386' ifTrue: [ cpu := 'ix86' ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1819 |
(OperatingSystem getSystemInfo at: #machine) = 'x86_64' ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1820 |
cpu2 := 'amd64' |
253 | 1821 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1822 |
SimulatedOS notNil ifTrue: [ os := SimulatedOS ] ifFalse: [ |
661 | 1823 |
os := OperatingSystem getOSType. |
1824 |
os := os asUppercaseFirst. |
|
474 | 1825 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1826 |
props addPairsFrom: { |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1827 |
'java.runtime.name'. |
3083 | 1828 |
'OpenJDK Runtime Environment'. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1829 |
'sun.boot.library.path'. |
3083 | 1830 |
OperatingSystem isMSWINDOWSlike ifTrue: [ |
1831 |
(Java release javaBinDirOnWindows) asString |
|
1832 |
] ifFalse: [ |
|
1833 |
OperatingSystem isOSXlike ifTrue:[ |
|
1834 |
(Java release javaNativeLibDirOnUnix) asString |
|
1835 |
] ifFalse:[ |
|
1836 |
(Java release javaLibDirOnUnix / cpu2) asString |
|
1837 |
]. |
|
1838 |
]. |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1839 |
'java.vm.version'. |
3083 | 1840 |
Smalltalk versionString. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1841 |
'java.vm.vendor'. |
3083 | 1842 |
'eXept Software AG & SWING Research Group'. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1843 |
'java.vendor.url'. |
3083 | 1844 |
'http://www.exept.de & http://swing.fit.cvut.cz'. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1845 |
'path.separator'. |
3083 | 1846 |
OperatingSystem pathSeparator asString. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1847 |
'java.vm.name'. |
3083 | 1848 |
'Smalltalk/X'. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1849 |
'file.encoding.pkg'. |
3083 | 1850 |
'sun.io'. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1851 |
'sun.java.launcher'. |
3083 | 1852 |
'SUN_STANDARD'. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1853 |
'user.country'. |
3083 | 1854 |
'US'. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1855 |
'sun.os.patch.level'. |
3083 | 1856 |
'unknown'. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1857 |
'java.vm.specification.name'. |
3083 | 1858 |
'Java Virtual Machine Specification'. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1859 |
'user.dir'. |
3083 | 1860 |
Filename currentDirectory pathName. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1861 |
'java.awt.graphicsenv'. |
3083 | 1862 |
'sun.awt.X11GraphicsEnvironment'. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1863 |
'java.endorsed.dirs'. |
3083 | 1864 |
(Java release javaLibDir / 'endorsed') asString. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1865 |
'os.arch'. |
3083 | 1866 |
cpu. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1867 |
'java.io.tmpdir'. |
3083 | 1868 |
Filename tempDirectory pathName. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1869 |
'line.separator'. |
3083 | 1870 |
Character cr asString. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1871 |
'java.vm.specification.vendor'. |
3083 | 1872 |
'Sun Microsystems Inc.'. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1873 |
'os.name'. |
3083 | 1874 |
os. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1875 |
'sun.jnu.encoding'. |
3083 | 1876 |
'UTF-8'. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1877 |
'java.library.path'. |
3083 | 1878 |
self defaultJavaLibraryPath. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1879 |
'java.specification.name'. |
3083 | 1880 |
'Java Platform API Specification'. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1881 |
'java.class.version'. |
3083 | 1882 |
'50.0'. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1883 |
'sun.management.compiler'. |
3083 | 1884 |
'Smalltalk/X jinterpreter'. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1885 |
'os.version'. |
3083 | 1886 |
OperatingSystem isMSWINDOWSlike ifTrue: [ |
1887 |
OperatingSystem getSystemInfo at: #release |
|
1888 |
] ifFalse: [ |
|
1889 |
OperatingSystem getSystemInfo at: #version |
|
1890 |
]. |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1891 |
'user.home'. |
3083 | 1892 |
Filename homeDirectory pathName. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1893 |
'user.timezone'. |
3083 | 1894 |
''. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1895 |
'java.awt.printerjob'. |
3083 | 1896 |
'sun.print.PSPrinterJob'. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1897 |
'file.encoding'. |
3083 | 1898 |
'UTF-8'. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1899 |
'java.specification.version'. |
3083 | 1900 |
'1.6'. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1901 |
'java.class.path'. |
3083 | 1902 |
self defaultCLASSPATH. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1903 |
'user.name'. |
3083 | 1904 |
OperatingSystem getLoginName. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1905 |
'java.vm.specification.version'. |
3083 | 1906 |
'1.0'. |
1907 |
"'sun.java.command' . |
|
1908 |
'SystemProperties' ." |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1909 |
'java.home'. |
3083 | 1910 |
Java release jreHome pathName. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1911 |
'sun.arch.data.model'. |
3083 | 1912 |
'32'. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1913 |
'user.language'. |
3083 | 1914 |
Smalltalk language. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1915 |
'java.specification.vendor'. |
3083 | 1916 |
'Sun Microsystems Inc.'. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1917 |
'java.vm.info'. |
3083 | 1918 |
'Smalltalk/X 6.2.1'. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1919 |
'java.version'. |
3083 | 1920 |
'1.6'. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1921 |
'java.ext.dirs'. |
3083 | 1922 |
self defaultExtDirs. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1923 |
'sun.boot.class.path'. |
3083 | 1924 |
self defaultSunBootLibraryPath. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1925 |
'java.vendor'. |
3083 | 1926 |
'Sun Microsystems Inc.'. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1927 |
'file.separator'. |
3083 | 1928 |
Filename separatorString. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1929 |
'java.vendor.url.bug'. |
3083 | 1930 |
'https://swing.fit.cvut.cz/projects/stx-libjava/newticket'. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1931 |
'sun.io.unicode.encoding'. |
3083 | 1932 |
'UnicodeLittle'. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1933 |
'sun.cpu.endian'. |
3083 | 1934 |
' little'. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1935 |
'sun.desktop'. |
3083 | 1936 |
'gnome'. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1937 |
'sun.cpu.isalist'. |
3083 | 1938 |
'' |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1939 |
}. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1940 |
|
495 | 1941 |
"/ props at:'user.dir' put:(Filename currentDirectory pathName). |
2151 | 1942 |
"/props at:'awt.toolkit' put:(self defaultWindowingToolKit). |
1943 |
||
3083 | 1944 |
"/ props at: 'user.country' put: 'US'. - already done above |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1945 |
props at: 'hotjava.home' put: (self defaultHotJavaHome). |
253 | 1946 |
|
2095 | 1947 |
"/ new with jdk 1.1.8 |
253 | 1948 |
"/ undocumented ? |
1949 |
"/ suppress copyright view in appletViewer ... |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1950 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1951 |
props at: 'appletviewer.version' put: '1.1'. |
253 | 1952 |
|
280 | 1953 |
"/ new with jdk 1.2 |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1954 |
|
3083 | 1955 |
"/ props at: 'java.awt.graphicsenv' put: 'sun.awt.X11GraphicsEnvironment'. -- already done above |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1956 |
props at: 'java.awt.fonts' put: '/usr/lib/X11/fonts'. |
280 | 1957 |
|
474 | 1958 |
"/ jws |
2151 | 1959 |
"/props at:'jws.home' put:(self defaultJWSHome). |
474 | 1960 |
"/ new with jws 2.0 ... |
2151 | 1961 |
"/props at:'jws.startcmd' put:'jws.showwin.mainide'. |
3264
69fc19f5e37d
For Windows JDK7, make sure TwoStackSocketImpl is used
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3235
diff
changeset
|
1962 |
"/ props at: 'un.misc.URLClassPath.debug' put: 'true'. |
69fc19f5e37d
For Windows JDK7, make sure TwoStackSocketImpl is used
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3235
diff
changeset
|
1963 |
|
69fc19f5e37d
For Windows JDK7, make sure TwoStackSocketImpl is used
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3235
diff
changeset
|
1964 |
OperatingSystem isMSWINDOWSlike ifTrue:[ |
69fc19f5e37d
For Windows JDK7, make sure TwoStackSocketImpl is used
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3235
diff
changeset
|
1965 |
props at:'java.net.preferIPv4Stack' put: 'true'. |
69fc19f5e37d
For Windows JDK7, make sure TwoStackSocketImpl is used
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3235
diff
changeset
|
1966 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1967 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1968 |
"/ Java tests, sigh..." |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1969 |
|
2945
98971af93e31
Fix in JavaVM>>#initializeSystemPropertiesInto: be careful when initializing stx.libjava.tests...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2928
diff
changeset
|
1970 |
(dir := Smalltalk getPackageDirectoryForPackage: self package) notNil ifTrue:[ |
98971af93e31
Fix in JavaVM>>#initializeSystemPropertiesInto: be careful when initializing stx.libjava.tests...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2928
diff
changeset
|
1971 |
props at: 'libjava.tests.dir' put: (dir / 'tests') pathName. |
98971af93e31
Fix in JavaVM>>#initializeSystemPropertiesInto: be careful when initializing stx.libjava.tests...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2928
diff
changeset
|
1972 |
]. |
253 | 1973 |
^ props |
1974 |
||
388 | 1975 |
" |
3083 | 1976 |
self initializeSystemPropertiesInto:(Dictionary new) |
1977 |
" |
|
388 | 1978 |
|
2151 | 1979 |
"Created: / 03-01-1998 / 14:26:39 / cg" |
1980 |
"Modified: / 27-01-2000 / 02:20:18 / cg" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1981 |
"Modified (format): / 03-11-2011 / 12:40:56 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1982 |
"Modified: / 21-12-2011 / 23:05:11 / jv" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1983 |
"Modified: / 13-09-2012 / 20:33:56 / m" |
2945
98971af93e31
Fix in JavaVM>>#initializeSystemPropertiesInto: be careful when initializing stx.libjava.tests...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2928
diff
changeset
|
1984 |
"Modified: / 20-11-2013 / 23:43:50 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
253 | 1985 |
! |
1986 |
||
1987 |
initializeVM |
|
3083 | 1988 |
| booter blocker errorDuringInit| |
3048
74535b57b370
Make internal JVM processes to form a new provess group on Smalltalk VM level.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2998
diff
changeset
|
1989 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1990 |
OperatingSystem initResources. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1991 |
|
2372
c4c47cba84d5
defined source container
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2353
diff
changeset
|
1992 |
Java initializeRelease. |
c4c47cba84d5
defined source container
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2353
diff
changeset
|
1993 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1994 |
"Java requires a huge stack. Change default to 16 MB. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1995 |
Observations: |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1996 |
- Groovy 'rnd = new java.security.SecureRandom()' requires > 4MB |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1997 |
- ant run on Groovy 1.8.7 source requires > 8MB |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
1998 |
" |
3122
c1a47c6796fc
Increated per-process stack size limit for Groocy 2.x.x
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3121
diff
changeset
|
1999 |
Process defaultMaximumStackSize: ((1024 * 1024 * 4) max: Process defaultMaximumStackSize). |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2000 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2001 |
"Java Classes are huge and there is a (unfixed) bug in 2-phase oldspace |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2002 |
compress, so try to avoid it by pre-allocating more oldspace." |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2003 |
OldspaceIncreased ~~ true ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2004 |
ObjectMemory moreOldSpace: 64"MB"*(1024*1024). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2005 |
OldspaceIncreased := true. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2006 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2007 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2008 |
ClassRegistry := JavaClassRegistry for: self. |
640 | 2009 |
JavaObject autoload. |
2010 |
JavaContext autoload. |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2011 |
MonitorTrace isNil ifTrue: [ self initialize ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2012 |
MonitorTraceId := 0. |
307 | 2013 |
self initializeAdditionalJavaProtocol. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2014 |
self initializeJavaResources. |
261 | 2015 |
JavaConsoleStream := Transcript. |
255 | 2016 |
Java initAllStaticFields. |
2017 |
Java markAllClassesUninitialized. |
|
2151 | 2018 |
ZipCache := OrderedCollection new. |
2958
bbd626006ab0
Access to ZipEntryCache synchronized to avoid races.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2956
diff
changeset
|
2019 |
|
2151 | 2020 |
ZipEntryCache := OrderedCollection new. |
2958
bbd626006ab0
Access to ZipEntryCache synchronized to avoid races.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2956
diff
changeset
|
2021 |
ZipEntryCacheFirstFree := 0. |
bbd626006ab0
Access to ZipEntryCache synchronized to avoid races.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2956
diff
changeset
|
2022 |
ZipEntryCacheLock := RecursionLock new. |
bbd626006ab0
Access to ZipEntryCache synchronized to avoid races.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2956
diff
changeset
|
2023 |
|
2151 | 2024 |
ZipInflaters := OrderedCollection new. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2025 |
FinalizationLobby := JavaFinalizationRegistry new. |
2678
c865275e48a7
Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2580
diff
changeset
|
2026 |
JavaVMData classVarNames do:[:nm | |
c865275e48a7
Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2580
diff
changeset
|
2027 |
nm first == $_ ifTrue:[ |
c865275e48a7
Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2580
diff
changeset
|
2028 |
Smalltalk at: (JavaVMData globalKeyForClassVar:nm) put: nil. |
c865275e48a7
Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2580
diff
changeset
|
2029 |
] |
c865275e48a7
Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2580
diff
changeset
|
2030 |
]. |
2372
c4c47cba84d5
defined source container
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2353
diff
changeset
|
2031 |
self initializeNatives. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2032 |
|
429 | 2033 |
"/ force re-resolving; |
2034 |
"/ otherwise, class-inits would not be called |
|
2035 |
"/ by resolver ... (sigh) |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2036 |
|
2100 | 2037 |
JavaNativeMethod flushAllCachedNativeMethods. |
3048
74535b57b370
Make internal JVM processes to form a new provess group on Smalltalk VM level.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2998
diff
changeset
|
2038 |
JavaMethod allSubInstancesDo: [ :m | |
3083 | 2039 |
m clearJittedCodeAndForceJittingAgain. |
2040 |
"/ m checked: false; code: nil. |
|
3048
74535b57b370
Make internal JVM processes to form a new provess group on Smalltalk VM level.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2998
diff
changeset
|
2041 |
]. |
2151 | 2042 |
ObjectMemory flushCaches. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2043 |
|
2151 | 2044 |
"/ sigh - must flush inline caches. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2045 |
|
434 | 2046 |
JavaClass startRememberingOrderOfClassInits. |
2151 | 2047 |
self initializeSimulatedLibs. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2048 |
|
2151 | 2049 |
"/ < jdk 1.2 |
2050 |
self initializeSimulatedNativeLibs. |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2051 |
|
2151 | 2052 |
"/ >= jdk 1.2 |
2053 |
self initializeSimulatedNativeMemory. |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2054 |
|
2151 | 2055 |
"/> jdk 6 |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2056 |
ThreadInterrupts := Dictionary new. |
2396
fadc6d7a2f5b
Updated to rev 009a0df3afce
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2372
diff
changeset
|
2057 |
PerfCounters := Performance for: self. |
fadc6d7a2f5b
Updated to rev 009a0df3afce
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2372
diff
changeset
|
2058 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2059 |
self initializeClassReader. |
253 | 2060 |
self initializeOpenFileTable. |
2151 | 2061 |
self initializeReflection. |
253 | 2062 |
self initializeBaseClasses. |
2063 |
self initializePrimitiveClasses. |
|
3048
74535b57b370
Make internal JVM processes to form a new provess group on Smalltalk VM level.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2998
diff
changeset
|
2064 |
|
74535b57b370
Make internal JVM processes to form a new provess group on Smalltalk VM level.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2998
diff
changeset
|
2065 |
"/ Initialization spawns couple of new threads, namely |
74535b57b370
Make internal JVM processes to form a new provess group on Smalltalk VM level.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2998
diff
changeset
|
2066 |
"/ finalization handler and signal handler. Those processes |
74535b57b370
Make internal JVM processes to form a new provess group on Smalltalk VM level.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2998
diff
changeset
|
2067 |
"/ should form their own new process group. |
74535b57b370
Make internal JVM processes to form a new provess group on Smalltalk VM level.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2998
diff
changeset
|
2068 |
blocker := Semaphore new. |
3083 | 2069 |
|
2070 |
errorDuringInit := nil. |
|
3048
74535b57b370
Make internal JVM processes to form a new provess group on Smalltalk VM level.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2998
diff
changeset
|
2071 |
booter := [ |
3056
fd92dea7b142
Bugfix in JavaVM>>initializeVM: do not deadlock caller if VM initialization failed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3048
diff
changeset
|
2072 |
[ |
3083 | 2073 |
Error handle:[:ex | |
2074 |
errorDuringInit := ex. |
|
2075 |
ex reject. |
|
2076 |
] do:[ |
|
2077 |
Java initSystemClass. |
|
2078 |
Java initializeCurrentThread. |
|
2079 |
self initializeSystemClassLoader. |
|
2080 |
FinalizationLobby startFinalizationProcessAt: 5. |
|
2081 |
]. |
|
3056
fd92dea7b142
Bugfix in JavaVM>>initializeVM: do not deadlock caller if VM initialization failed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3048
diff
changeset
|
2082 |
] ensure:[ |
fd92dea7b142
Bugfix in JavaVM>>initializeVM: do not deadlock caller if VM initialization failed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3048
diff
changeset
|
2083 |
blocker signal. |
fd92dea7b142
Bugfix in JavaVM>>initializeVM: do not deadlock caller if VM initialization failed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3048
diff
changeset
|
2084 |
]. |
3048
74535b57b370
Make internal JVM processes to form a new provess group on Smalltalk VM level.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2998
diff
changeset
|
2085 |
] newProcess. |
3083 | 2086 |
booter name:'JVM boot process'. |
3048
74535b57b370
Make internal JVM processes to form a new provess group on Smalltalk VM level.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2998
diff
changeset
|
2087 |
booter beGroupLeader. |
74535b57b370
Make internal JVM processes to form a new provess group on Smalltalk VM level.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2998
diff
changeset
|
2088 |
booter resume. |
3083 | 2089 |
|
3048
74535b57b370
Make internal JVM processes to form a new provess group on Smalltalk VM level.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2998
diff
changeset
|
2090 |
blocker wait. |
3083 | 2091 |
errorDuringInit notNil ifTrue:[ |
2092 |
self error:'error during boot of JVM: ',errorDuringInit description |
|
2093 |
]. |
|
3048
74535b57b370
Make internal JVM processes to form a new provess group on Smalltalk VM level.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2998
diff
changeset
|
2094 |
|
2151 | 2095 |
ObjectMemory addDependent: self. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2096 |
StartupTime := OperatingSystem getOSTime. |
3048
74535b57b370
Make internal JVM processes to form a new provess group on Smalltalk VM level.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2998
diff
changeset
|
2097 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2098 |
JavaNativeMethod allInstancesDo:[:e|e nCallsReset ]. |
255 | 2099 |
|
253 | 2100 |
" |
285 | 2101 |
JavaVM initialize. |
2151 | 2102 |
JavaVM initializeVM." |
2103 |
||
2104 |
"Created: / 03-01-1998 / 21:29:09 / cg" |
|
2105 |
"Modified: / 14-12-1999 / 18:58:56 / cg" |
|
2106 |
"Modified: / 15-10-2010 / 15:27:45 / Jan Kurs <kurs.jan@post.cz>" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2107 |
"Modified: / 24-02-2012 / 13:59:29 / Marcel Hlopko <hlopik@gmail.com>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2108 |
"Modified: / 24-02-2012 / 14:37:06 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
3056
fd92dea7b142
Bugfix in JavaVM>>initializeVM: do not deadlock caller if VM initialization failed.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3048
diff
changeset
|
2109 |
"Modified: / 04-04-2014 / 12:43:13 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
261 | 2110 |
! |
2111 |
||
2112 |
initializeVMIfNoEventThreadRunning |
|
652 | 2113 |
|uClass updater p| |
2114 |
||
2115 |
uClass := JAVA::sun::awt::ScreenUpdater. |
|
2116 |
uClass notNil ifTrue:[ |
|
2117 |
updater := uClass instVarNamed:'updater'. |
|
2118 |
updater notNil ifTrue:[ |
|
2119 |
p := self stProcessForJavaThread:updater |
|
2120 |
]. |
|
2121 |
(updater isNil or:[p isNil or:[p isDead]]) isNil ifTrue:[ |
|
2122 |
self initializeVM. |
|
2123 |
^ self. |
|
2124 |
] |
|
2125 |
]. |
|
2126 |
||
261 | 2127 |
(JavaEventThread isNil or:[JavaEventThread isDead]) ifTrue:[ |
652 | 2128 |
self initializeVM |
261 | 2129 |
]. |
2130 |
||
2131 |
" |
|
2132 |
JavaVM initializeVMIfNoEventThreadRunning |
|
2133 |
" |
|
2134 |
||
2135 |
"Created: / 15.1.1998 / 17:32:27 / cg" |
|
652 | 2136 |
"Modified: / 24.12.1999 / 02:18:25 / cg" |
255 | 2137 |
! |
2138 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2139 |
reboot |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2140 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2141 |
Java flushAllJavaResources. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2142 |
self boot |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2143 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2144 |
"Created: / 21-02-2012 / 18:10:04 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2145 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2146 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2147 |
reinitializeSockets |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2148 |
"Reopens all server-sockets (i.e., listening sockets bound to a port). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2149 |
Called upon restarting from image" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2150 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2151 |
OpenFileTable notNil ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2152 |
OpenFileTable do:[:each|each isSocket ifTrue:[each reOpenIfPossible]] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2153 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2154 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2155 |
"Created: / 17-08-2012 / 15:33:00 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2156 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2157 |
|
434 | 2158 |
reinitializeVM |
2159 |
|classesToInit| |
|
2160 |
||
2161 |
self releaseAllJavaResources. |
|
2162 |
||
2163 |
JavaConsoleStream := Transcript. |
|
2164 |
||
2165 |
Java initAllStaticFields. |
|
2166 |
Java markAllClassesUninitialized. |
|
2167 |
||
2168 |
self initializeOpenFileTable. |
|
2169 |
||
2170 |
classesToInit := JavaClass orderOfClassInits. |
|
2171 |
JavaClass startRememberingOrderOfClassInits. |
|
2172 |
||
451 | 2173 |
self initializePrimitiveClasses. |
455 | 2174 |
"/ Java initSystemClass. |
434 | 2175 |
|
2176 |
classesToInit do:[:jClass | |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2177 |
jClass classInit |
434 | 2178 |
]. |
455 | 2179 |
Java initSystemClass. |
434 | 2180 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2181 |
"Created: / 12-11-1998 / 15:37:52 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2182 |
"Modified: / 17-11-1998 / 16:10:11 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2183 |
"Modified: / 14-09-2011 / 22:06:35 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
434 | 2184 |
! |
2185 |
||
462 | 2186 |
reinitializeVMIfNoEventThreadRunning |
2187 |
(JavaEventThread isNil or:[JavaEventThread isDead]) ifTrue:[ |
|
652 | 2188 |
^ self reinitializeVM |
2189 |
]. |
|
2190 |
(JavaEventQueueThread isNil or:[JavaEventQueueThread isDead]) ifTrue:[ |
|
2191 |
^ self reinitializeVM |
|
462 | 2192 |
]. |
2193 |
||
2194 |
" |
|
2195 |
JavaVM reinitializeVMIfNoEventThreadRunning |
|
2196 |
" |
|
2197 |
||
2198 |
"Created: / 24.11.1998 / 15:45:49 / cg" |
|
652 | 2199 |
"Modified: / 24.12.1999 / 02:36:41 / cg" |
462 | 2200 |
! |
2201 |
||
255 | 2202 |
releaseAllJavaResources |
380 | 2203 |
self deinitialize. |
285 | 2204 |
FirstWindowCreationSemaphore := Semaphore new. |
652 | 2205 |
JavaScreenUpdaterThread := JavaEventQueueThread := nil. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2206 |
LoadedLibs := nil. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2207 |
LoadedNativeLibs := nil. |
285 | 2208 |
ImageStretchCache := nil. |
504 | 2209 |
LastGraphics := LastGC := nil. |
2151 | 2210 |
SimulatedNativeMemory := nil. |
2211 |
self initializePrimitiveClasses. |
|
285 | 2212 |
self terminateAllThreads. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2213 |
"/self releaseAllMonitors. |
255 | 2214 |
self releaseAllWindows. |
2215 |
self releaseAllStreams. |
|
2216 |
||
2217 |
" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2218 |
JavaVM releaseAllJavaResources" |
255 | 2219 |
|
2151 | 2220 |
"Created: / 07-01-1998 / 22:49:42 / cg" |
2221 |
"Modified: / 24-12-1999 / 02:33:11 / cg" |
|
2222 |
"Modified: / 17-12-2010 / 17:51:35 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2223 |
"Modified: / 16-11-2011 / 20:27:21 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
253 | 2224 |
! |
2225 |
||
2226 |
releaseAllMonitors |
|
2227 |
LockTable := WeakIdentityDictionary new. |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2228 |
LockTableAccess := Semaphore "RecursionLock" forMutualExclusion. |
2151 | 2229 |
LockTableAccess name: 'JavaVM lock table access mutex'. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2230 |
EnteredMonitorsPerProcess notNil ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2231 |
EnteredMonitorsPerProcess |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2232 |
keysAndValuesDo: [:p :value | value size > 0 ifTrue: [ self breakPoint: #mh ] ] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2233 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2234 |
self releaseLeftOverMonitors. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2235 |
Logger |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2236 |
log: 'Clearing EnteredMonitorsPerProcess' |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
2237 |
severity: Logger severityDEBUG |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2238 |
facility: #JVM. |
253 | 2239 |
EnteredMonitorsPerProcess := IdentityDictionary new. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2240 |
Logger |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2241 |
log: 'Clearing AcquiredMonitorsPerProcess' |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
2242 |
severity: Logger severityDEBUG |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2243 |
facility: #JVM. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2244 |
EnteredMonitorsPerProcess := IdentityDictionary new. |
253 | 2245 |
|
2246 |
" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2247 |
JavaVM releaseAllMonitors" |
253 | 2248 |
|
2151 | 2249 |
"Created: / 02-01-1998 / 18:04:05 / cg" |
2250 |
"Modified: / 07-01-1998 / 22:58:10 / cg" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2251 |
"Modified: / 17-11-2011 / 17:00:12 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
2252 |
"Modified: / 02-03-2015 / 13:58:05 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
255 | 2253 |
! |
2254 |
||
2255 |
releaseAllStreams |
|
307 | 2256 |
OpenFileTable notNil ifTrue:[ |
616 | 2257 |
OpenFileTable do:[:aStream | |
2258 |
aStream notNil ifTrue:[ |
|
2259 |
aStream ~~ Stdin ifTrue:[ |
|
2260 |
aStream ~~ Stdout ifTrue:[ |
|
2261 |
aStream ~~ Stderr ifTrue:[ |
|
2262 |
aStream ~~ JavaConsoleStream ifTrue:[ |
|
2263 |
aStream isExternalStream ifTrue:[ |
|
2264 |
aStream shutDown |
|
2265 |
] |
|
2266 |
] |
|
2267 |
] |
|
2268 |
] |
|
2269 |
] |
|
2270 |
] |
|
2271 |
] |
|
307 | 2272 |
]. |
255 | 2273 |
self initializeOpenFileTable. |
2274 |
||
2275 |
" |
|
261 | 2276 |
JavaVM releaseAllStreams |
255 | 2277 |
" |
2278 |
||
2279 |
"Created: / 7.1.1998 / 22:57:04 / cg" |
|
307 | 2280 |
"Modified: / 4.2.1998 / 19:53:11 / cg" |
255 | 2281 |
! |
2282 |
||
2283 |
releaseAllWindows |
|
2284 |
KnownWindows notNil ifTrue:[ |
|
261 | 2285 |
KnownWindows do:[:aView | |
2286 |
aView destroy |
|
2287 |
]. |
|
2288 |
KnownWindows := nil. |
|
255 | 2289 |
] |
2290 |
||
2291 |
" |
|
2292 |
self releaseAllWindows |
|
2293 |
" |
|
2294 |
||
2295 |
"Created: / 7.1.1998 / 22:58:32 / cg" |
|
2296 |
! |
|
2297 |
||
2298 |
releaseLeftOverMonitors |
|
2299 |
"release monitors held by dead processes" |
|
2300 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2301 |
| deadProcesses | |
255 | 2302 |
deadProcesses := IdentitySet new. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2303 |
EnteredMonitorsPerProcess notNil ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2304 |
EnteredMonitorsPerProcess keysAndValuesDo: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2305 |
:p :monitors | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2306 |
p isDead ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2307 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2308 |
monitors do: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2309 |
:mon | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2310 |
Logger |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2311 |
log: 'release leftover monitor ...' |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
2312 |
severity: Logger severityDEBUG |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2313 |
facility: 'JVM'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2314 |
mon release |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2315 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2316 |
deadProcesses add: p. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2317 |
] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2318 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2319 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2320 |
deadProcesses do: [:p | EnteredMonitorsPerProcess removeKey: p ]. |
255 | 2321 |
|
2322 |
" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2323 |
JavaVM releaseLeftOverMonitors" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2324 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2325 |
"Created: / 08-01-1998 / 17:29:26 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2326 |
"Modified: / 29-11-2011 / 14:26:25 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
2327 |
"Modified: / 02-03-2015 / 13:57:45 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2328 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2329 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2330 |
releasehSmalltalkClassLoader |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2331 |
SmalltalkClassLoader := nil. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2332 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2333 |
"Created: / 09-01-2013 / 15:58:31 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2334 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2335 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2336 |
releasehSystemClassLoader |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2337 |
SystemClassLoader := nil. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2338 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2339 |
"Created: / 30-07-2012 / 17:13:40 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
253 | 2340 |
! |
2341 |
||
2342 |
systemProperties |
|
2343 |
|props| |
|
2344 |
||
3083 | 2345 |
(props := SystemProperties) isNil ifTrue:[ |
2346 |
props := Dictionary new. |
|
2347 |
self initializeSystemPropertiesInto:props. |
|
2348 |
SystemProperties := props |
|
2349 |
]. |
|
253 | 2350 |
^ props |
2351 |
||
2352 |
"Created: / 3.1.1998 / 14:25:58 / cg" |
|
2353 |
"Modified: / 3.1.1998 / 14:32:38 / cg" |
|
255 | 2354 |
! |
2355 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2356 |
update:what with:aParameter from:changedObject |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2357 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2358 |
" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2359 |
#earlyRestart is send first, nothing has been setup yet. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2360 |
(should be used to flush all device dependent entries) |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2361 |
" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2362 |
what == #earlyRestart ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2363 |
self initializeMonitorTable. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2364 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2365 |
^self. |
255 | 2366 |
]. |
2367 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2368 |
"#returnFromSnapshot is sent last (should be used to restart processes, reOpen |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2369 |
Streams which cannot be automatically be reopened (i.e. Sockets, Pipes) and so on. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2370 |
(Notice that positionable fileStreams are already reopened and repositioned) |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2371 |
" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2372 |
what == #returnFromSnapshot ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2373 |
self reinitializeSockets. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2374 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2375 |
^self |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2376 |
]. |
255 | 2377 |
" |
2378 |
JavaVM initializeVM |
|
2379 |
" |
|
2380 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2381 |
ObjectMemory dependents |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2382 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2383 |
"Created: / 09-01-1998 / 10:30:13 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2384 |
"Modified: / 06-11-1998 / 00:40:53 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2385 |
"Modified: / 17-08-2012 / 15:35:51 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
253 | 2386 |
! ! |
2387 |
||
2388 |
!JavaVM class methodsFor:'Signal constants'! |
|
2389 |
||
2390 |
badMessageSignal |
|
2391 |
^ BadMessageSignal |
|
2392 |
||
2393 |
"Created: / 2.1.1998 / 18:06:52 / cg" |
|
2394 |
! |
|
2395 |
||
2396 |
callHandlerSignal |
|
2397 |
^ CallHandlerSignal |
|
2398 |
||
2399 |
"Created: / 2.1.1998 / 18:07:16 / cg" |
|
2400 |
! |
|
2401 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2402 |
classLoaderQuerySignal |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2403 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2404 |
<resource: #obsolete> |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2405 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2406 |
self breakPoint: #jv. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2407 |
|
3656 | 2408 |
^ JavaClassReader classLoaderQuerySignal |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2409 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2410 |
"Modified: / 28-10-2011 / 22:11:10 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2411 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2412 |
|
253 | 2413 |
internalErrorSignal |
2414 |
^ InternalErrorSignal |
|
2415 |
||
2416 |
"Created: / 2.1.1998 / 18:07:05 / cg" |
|
2417 |
! |
|
2418 |
||
2419 |
javaExceptionSignal |
|
2151 | 2420 |
"^ JavaExceptionSignal" |
2421 |
^JavaError |
|
2422 |
||
2423 |
"Created: / 02-01-1998 / 18:05:58 / cg" |
|
2424 |
"Modified: / 01-03-2011 / 21:50:40 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
253 | 2425 |
! |
2426 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2427 |
privilegedAccessQuery |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2428 |
^ JavaPrivilegedAccessQuery. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2429 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2430 |
"Created: / 09-10-2011 / 20:24:49 / Marcel Hlopko <hlopik@gmail.com>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2431 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2432 |
|
576 | 2433 |
stdinReplacementFileQuerySignal |
2434 |
^ StdinReplacementFileQuerySignal |
|
2435 |
||
2436 |
"Created: / 2.1.1998 / 18:06:52 / cg" |
|
2437 |
! |
|
2438 |
||
253 | 2439 |
unhandledJavaExceptionSignal |
2440 |
^ UnhandledJavaExceptionSignal |
|
2441 |
||
2442 |
"Created: / 2.1.1998 / 18:05:19 / cg" |
|
2443 |
! |
|
2444 |
||
2445 |
unimplementedInstructionSignal |
|
2446 |
^ UnimplementedInstructionSignal |
|
2447 |
||
2448 |
"Created: / 2.1.1998 / 18:06:15 / cg" |
|
2449 |
! |
|
2450 |
||
2451 |
unimplementedNativeMethodSignal |
|
2452 |
^ UnimplementedNativeMethodSignal |
|
2453 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2454 |
"Created: / 02-01-1998 / 18:06:40 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2455 |
"Modified: / 15-01-2013 / 22:30:14 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
253 | 2456 |
! ! |
2457 |
||
526 | 2458 |
!JavaVM class methodsFor:'accessing'! |
2459 |
||
3196
d617b4590431
(Class reading) optimization [2/4]: rewrite slow ifNil:... by faster isNil ifTrue:...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3122
diff
changeset
|
2460 |
addSelector:newSelector withMethod:newMethod |
652 | 2461 |
super addSelector:newSelector withMethod:newMethod. |
3196
d617b4590431
(Class reading) optimization [2/4]: rewrite slow ifNil:... by faster isNil ifTrue:...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3122
diff
changeset
|
2462 |
|
2151 | 2463 |
"/JavaNativeMethod may not be loaded..." |
3196
d617b4590431
(Class reading) optimization [2/4]: rewrite slow ifNil:... by faster isNil ifTrue:...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3122
diff
changeset
|
2464 |
|
d617b4590431
(Class reading) optimization [2/4]: rewrite slow ifNil:... by faster isNil ifTrue:...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3122
diff
changeset
|
2465 |
(Smalltalk at:#JavaNativeMethod) notNil ifTrue:[ |
d617b4590431
(Class reading) optimization [2/4]: rewrite slow ifNil:... by faster isNil ifTrue:...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3122
diff
changeset
|
2466 |
JavaNativeMethod flushAllCachedNativeMethods |
d617b4590431
(Class reading) optimization [2/4]: rewrite slow ifNil:... by faster isNil ifTrue:...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3122
diff
changeset
|
2467 |
]. |
2151 | 2468 |
|
2469 |
"Created: / 24-12-1999 / 03:12:05 / cg" |
|
2470 |
"Modified: / 02-02-2011 / 23:38:08 / Marcel Hlopko <hlopik@gmail.com>" |
|
3196
d617b4590431
(Class reading) optimization [2/4]: rewrite slow ifNil:... by faster isNil ifTrue:...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3122
diff
changeset
|
2471 |
"Modified: / 04-08-2014 / 15:52:40 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2151 | 2472 |
! |
2473 |
||
2474 |
assertionsEnabled: aBoolean |
|
2475 |
||
2476 |
AssertionsEnabled := aBoolean |
|
2477 |
||
2478 |
" |
|
2479 |
JavaVM assertionsEnabled: true. |
|
2480 |
JavaVM assertionsEnabled: false. |
|
2481 |
" |
|
2482 |
||
2483 |
"Created: / 24-11-2010 / 09:02:05 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
2484 |
! |
|
2485 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2486 |
classRegistry |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2487 |
^ ClassRegistry. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2488 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2489 |
"Created: / 21-10-2011 / 11:12:50 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2490 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2491 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2492 |
extClassLoader |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2493 |
^ self systemClassLoader instVarNamed:#'parent'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2494 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2495 |
"Created: / 30-10-2011 / 12:08:33 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2496 |
"Created: / 02-11-2011 / 13:20:28 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2497 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2498 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2499 |
finalizationEnabled |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2500 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2501 |
^FinalizationEnabled |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2502 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2503 |
"Created: / 14-11-2011 / 21:14:08 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2504 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2505 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2506 |
finalizationLobby |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2507 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2508 |
^FinalizationLobby |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2509 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2510 |
"Created: / 14-11-2011 / 12:29:03 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
652 | 2511 |
! |
2512 |
||
2513 |
javaEventQueueThread |
|
2514 |
^ JavaEventQueueThread |
|
2515 |
||
2516 |
"Created: / 24.12.1999 / 02:34:35 / cg" |
|
2517 |
! |
|
2518 |
||
526 | 2519 |
javaEventThread |
2520 |
^ JavaEventThread |
|
2521 |
||
2522 |
"Created: / 8.1.1999 / 17:05:02 / cg" |
|
2523 |
! |
|
2524 |
||
2525 |
javaScreenUpdaterThread |
|
2526 |
^ JavaScreenUpdaterThread |
|
2527 |
||
2528 |
"Created: / 8.1.1999 / 17:06:52 / cg" |
|
2151 | 2529 |
! |
2530 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2531 |
natives |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2532 |
^ NativeMethodsImplementation |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2533 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2534 |
"Created: / 16-01-2013 / 20:02:47 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2535 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2536 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2537 |
performance |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2538 |
"Return an object keeping Java performance counters" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2539 |
^ PerfCounters |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2540 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2541 |
"Modified: / 14-08-2012 / 00:39:16 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2542 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2543 |
|
2151 | 2544 |
reflection |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2545 |
^ Reflection |
2151 | 2546 |
|
2547 |
"Created: / 28-01-2011 / 15:09:19 / Marcel Hlopko <hlopik@gmail.com>" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2548 |
"Modified: / 16-01-2013 / 20:55:33 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2549 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2550 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2551 |
registry |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2552 |
^ ClassRegistry. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2553 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2554 |
"Modified (format): / 21-10-2011 / 11:12:27 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2555 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2556 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2557 |
smalltalkClassLoader |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2558 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2559 |
^SmalltalkClassLoader |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2560 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2561 |
"Created: / 22-08-2012 / 13:00:31 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2562 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2563 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2564 |
systemClassLoader |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2565 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2566 |
^SystemClassLoader |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2567 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2568 |
"Created: / 30-10-2011 / 12:08:33 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2151 | 2569 |
! |
2570 |
||
2571 |
useSmalltalkInterpreter |
|
2572 |
||
2573 |
JavaMethod makeMetaMethod |
|
2574 |
||
2575 |
"Created: / 23-02-2011 / 12:59:44 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
2576 |
! |
|
2577 |
||
2578 |
useVMInterpreter |
|
2579 |
||
2580 |
JavaMethod makeJavaMethod |
|
2581 |
||
2582 |
"Created: / 23-02-2011 / 12:59:37 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
2583 |
! ! |
|
2584 |
||
2618
e7757e5d593c
Initial attempt to generalized builtin class support.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2617
diff
changeset
|
2585 |
!JavaVM class methodsFor:'accessing-builtin classes'! |
e7757e5d593c
Initial attempt to generalized builtin class support.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2617
diff
changeset
|
2586 |
|
e7757e5d593c
Initial attempt to generalized builtin class support.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2617
diff
changeset
|
2587 |
builtInClassNames |
e7757e5d593c
Initial attempt to generalized builtin class support.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2617
diff
changeset
|
2588 |
"Returns an array with (binary) names of classes known by the runtime system. |
e7757e5d593c
Initial attempt to generalized builtin class support.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2617
diff
changeset
|
2589 |
When a builtin class is loaded and registered in class registry, |
e7757e5d593c
Initial attempt to generalized builtin class support.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2617
diff
changeset
|
2590 |
JavaClassRegistry is sent #registerBuiltIn: |
e7757e5d593c
Initial attempt to generalized builtin class support.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2617
diff
changeset
|
2591 |
|
e7757e5d593c
Initial attempt to generalized builtin class support.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2617
diff
changeset
|
2592 |
NOTE: If you add class here, you may want to update |
e7757e5d593c
Initial attempt to generalized builtin class support.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2617
diff
changeset
|
2593 |
JavaClassRegistry>>registerBuiltIn:. |
e7757e5d593c
Initial attempt to generalized builtin class support.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2617
diff
changeset
|
2594 |
" |
e7757e5d593c
Initial attempt to generalized builtin class support.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2617
diff
changeset
|
2595 |
^#( |
e7757e5d593c
Initial attempt to generalized builtin class support.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2617
diff
changeset
|
2596 |
#'java/lang/Object' |
e7757e5d593c
Initial attempt to generalized builtin class support.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2617
diff
changeset
|
2597 |
#'java/lang/String' |
2966 | 2598 |
#'java/lang/System' |
2599 |
#'java/lang/Class' |
|
2600 |
||
2601 |
#'java/lang/reflect/Constructor' |
|
2620
263045d15796
Initial support for generalized built-in class support.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2618
diff
changeset
|
2602 |
#'java/lang/reflect/Method' |
263045d15796
Initial support for generalized built-in class support.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2618
diff
changeset
|
2603 |
#'java/lang/reflect/Field' |
263045d15796
Initial support for generalized built-in class support.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2618
diff
changeset
|
2604 |
|
2618
e7757e5d593c
Initial attempt to generalized builtin class support.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2617
diff
changeset
|
2605 |
) |
e7757e5d593c
Initial attempt to generalized builtin class support.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2617
diff
changeset
|
2606 |
|
e7757e5d593c
Initial attempt to generalized builtin class support.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2617
diff
changeset
|
2607 |
"Created: / 22-05-2013 / 20:38:18 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
e7757e5d593c
Initial attempt to generalized builtin class support.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2617
diff
changeset
|
2608 |
! ! |
e7757e5d593c
Initial attempt to generalized builtin class support.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2617
diff
changeset
|
2609 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2610 |
!JavaVM class methodsFor:'cache management'! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2611 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2612 |
flushCachesFor: aClass |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2613 |
"Flush all caches for given class, including JIT-compiled code. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2614 |
Called for allow for dynamic recompilation when a reference |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2615 |
is resolved" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2616 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2617 |
aClass methodDictionary do:[:mthd| |
2577
20f1eddba58b
Call __jbindnative() when initializing Java native method.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2568
diff
changeset
|
2618 |
(mthd isJavaMethod and:[mthd isNative not and:[mthd isResolved not]]) ifTrue:[ |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2619 |
"Stdout nextPutAll:'Flushing code for ' , mthd printString; cr." |
3083 | 2620 |
mthd clearJittedCodeAndForceJittingAgain. |
2621 |
"/ mthd code: nil; checked: false. |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2622 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2623 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2624 |
ObjectMemory flushCachesFor: aClass. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2625 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2626 |
"Created: / 17-10-2012 / 20:22:17 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2627 |
! ! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2628 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2629 |
!JavaVM class methodsFor:'class access'! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2630 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2631 |
arrayClassFor: javaClass ifAbsentPut: block |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2632 |
^self reflection arrayClassFor: javaClass ifAbsentPut: block |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2633 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2634 |
"Created: / 05-07-2012 / 23:20:06 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2635 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2636 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2637 |
at: aString |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2638 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2639 |
^ ClassRegistry classNamed: aString asSlashedJavaClassName. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2640 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2641 |
"Modified (comment): / 21-10-2011 / 12:14:29 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2642 |
"Modified: / 07-02-2013 / 14:17:14 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2643 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2644 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2645 |
at: aString put: aJavaClass |
3216
1d977d2d3abb
es to ClassLoader#classes list.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3196
diff
changeset
|
2646 |
<resource: #obsolete> |
1d977d2d3abb
es to ClassLoader#classes list.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3196
diff
changeset
|
2647 |
|
1d977d2d3abb
es to ClassLoader#classes list.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3196
diff
changeset
|
2648 |
self error: 'Should not be used anymore'. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2649 |
^ ClassRegistry registerClass: aJavaClass |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2650 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2651 |
"Modified (comment): / 21-10-2011 / 12:14:36 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
3216
1d977d2d3abb
es to ClassLoader#classes list.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3196
diff
changeset
|
2652 |
"Modified: / 11-08-2014 / 01:22:02 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2653 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2654 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2655 |
classForName: className |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2656 |
"load class from registry - load using classLoader from query or JavaClassReader if absent" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2657 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2658 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2659 |
^ self classForName: className asSlashedJavaClassName |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2660 |
definedBy: (JavaClassReader classLoaderQuerySignal query) "? SystemClassLoader." |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2661 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2662 |
"Modified: / 02-11-2011 / 16:33:36 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2663 |
"Modified: / 23-01-2013 / 16:13:48 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2664 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2665 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2666 |
classForName: className definedBy: classLoader |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2667 |
"load class from registry - load using given classLoader if not nil" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2668 |
|
2588
58b1e0fd20e7
Changed JavaVM>>classForName: to faster JavaVM>>classForName:definedBy:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
2669 |
| result binaryName | |
2605
f343a5ef30b6
An experiment: access to known class java.lang.Class through pool var.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2601
diff
changeset
|
2670 |
|
2617
1bbc3b4a686f
Removed debug print in JavaVM>>classForName:definedBy:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2605
diff
changeset
|
2671 |
"/ classLoader isNil ifTrue:[ |
1bbc3b4a686f
Removed debug print in JavaVM>>classForName:definedBy:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2605
diff
changeset
|
2672 |
"/ Logger log: 'JavaVM>>classForName: ''', className , ''' definedBy: nil' severity: #trace. |
1bbc3b4a686f
Removed debug print in JavaVM>>classForName:definedBy:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2605
diff
changeset
|
2673 |
"/ ]. |
2605
f343a5ef30b6
An experiment: access to known class java.lang.Class through pool var.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2601
diff
changeset
|
2674 |
|
2588
58b1e0fd20e7
Changed JavaVM>>classForName: to faster JavaVM>>classForName:definedBy:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
2675 |
binaryName := className asSlashedJavaClassName. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2676 |
result := self |
2588
58b1e0fd20e7
Changed JavaVM>>classForName: to faster JavaVM>>classForName:definedBy:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
2677 |
classForName: binaryName |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2678 |
definedBy: classLoader |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2679 |
ifAbsentPut: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2680 |
| class classLoaderEnsured | |
2588
58b1e0fd20e7
Changed JavaVM>>classForName: to faster JavaVM>>classForName:definedBy:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
2681 |
self assert: (binaryName includes: $.) not. |
2966 | 2682 |
class := self loadClassNamed: binaryName usingClassLoader: classLoader. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2683 |
class. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2684 |
]. |
2961
86e181f74199
Class loading refactoring (part 2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2960
diff
changeset
|
2685 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2686 |
result isNil ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2687 |
Logger |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2688 |
log: 'Class ' , className , ' couldnt be loaded' |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
2689 |
severity: Logger severityDEBUG |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2690 |
facility: 'JVM' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2691 |
] ifFalse: [ result := self makeArrayOf: result asDescribedBy: className. ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2692 |
^ result. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2693 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2694 |
"Created: / 21-10-2011 / 12:01:16 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2695 |
"Modified: / 02-11-2011 / 16:49:45 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
2696 |
"Modified: / 02-03-2015 / 14:01:00 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2697 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2698 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2699 |
classForName: className definedBy: classLoader ifAbsentPut: aBlock |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2700 |
"load class from registry - if absent evaluate given block to get loaded class" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2701 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2702 |
| result | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2703 |
className asJavaComponentClassName isJavaPrimitiveTypeDescriptor ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2704 |
^ (JavaDescriptor fromString: className) javaClass. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2705 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2706 |
result := ClassRegistry |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2707 |
classForName: className asSlashedJavaClassName |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2708 |
loader: classLoader |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2709 |
ifAbsentPut: aBlock. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2710 |
result notNil ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2711 |
result := self makeArrayOf: result asDescribedBy: className. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2712 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2713 |
^ result. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2714 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2715 |
"Created: / 21-10-2011 / 12:13:08 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2716 |
"Modified: / 30-10-2011 / 22:04:23 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2717 |
"Modified (format): / 02-11-2011 / 16:09:48 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2718 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2719 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2720 |
classNamed: className |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2721 |
"Return class with given name loaded by current classloader or nil if class is not yet loaded" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2722 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2723 |
^ self classNamed: className definedBy: JavaClassReader classLoaderQuerySignal query. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2724 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2725 |
"Modified: / 21-10-2011 / 12:09:13 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2726 |
"Modified (comment): / 21-10-2011 / 13:34:46 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2727 |
"Modified: / 28-10-2011 / 22:12:14 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2728 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2729 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2730 |
classNamed: className definedBy: classLoader |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2731 |
"Return class with given name loaded by given classloader or nil if class is not yet loaded" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2732 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2733 |
| result | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2734 |
className asJavaComponentClassName isJavaPrimitiveTypeDescriptor ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2735 |
^ (JavaDescriptor fromString: className) javaClass. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2736 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2737 |
result := ClassRegistry |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2738 |
classForName: className asSlashedJavaClassName |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2739 |
loader: classLoader |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2740 |
ifAbsent: [ ^ nil ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2741 |
^ self makeArrayOf: result asDescribedBy: className. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2742 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2743 |
"Created: / 21-10-2011 / 11:58:21 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2744 |
"Modified: / 23-10-2011 / 12:01:16 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2745 |
"Modified: / 01-11-2011 / 15:36:21 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2746 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2747 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2748 |
loadClassesIn: directory |
2875
d8458cc3aabe
Make JavaVM>>#loadClassesIn: to work with .jar files as well.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2868
diff
changeset
|
2749 |
"Load all classes (.class files, strictly speaking) found in given directory or .jar file. |
d8458cc3aabe
Make JavaVM>>#loadClassesIn: to work with .jar files as well.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2868
diff
changeset
|
2750 |
|
d8458cc3aabe
Make JavaVM>>#loadClassesIn: to work with .jar files as well.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2868
diff
changeset
|
2751 |
Returns a set of loaded classes." |
d8458cc3aabe
Make JavaVM>>#loadClassesIn: to work with .jar files as well.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2868
diff
changeset
|
2752 |
|
3112
1f8c991bc1d2
Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3083
diff
changeset
|
2753 |
^ self loadClassesIn: directory matching: nil. |
1f8c991bc1d2
Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3083
diff
changeset
|
2754 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2755 |
"Created: / 21-10-2011 / 12:40:34 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
3112
1f8c991bc1d2
Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3083
diff
changeset
|
2756 |
"Modified: / 27-05-2014 / 12:19:58 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2757 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2758 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2759 |
loadClassesIn: directory matching: pattern |
2875
d8458cc3aabe
Make JavaVM>>#loadClassesIn: to work with .jar files as well.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2868
diff
changeset
|
2760 |
"Load all classes (.class files, strictly speaking) found in given directory or .jar file. |
d8458cc3aabe
Make JavaVM>>#loadClassesIn: to work with .jar files as well.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2868
diff
changeset
|
2761 |
The arguments are a string containing the name of the directory or .jar file |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2762 |
and a class name pattern. Only classes matching the pattern are loaded. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2763 |
class names are matched using String>>matches:. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2764 |
ALL CLASSES ARE INSTALLED!! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2765 |
Returns a set of loaded classes." |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2766 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2767 |
| dir dirString className loadedClasses | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2768 |
dir := directory asFilename asAbsoluteFilename. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2769 |
loadedClasses := Set new. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2770 |
Java addToClassPath: dir pathName. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2771 |
JavaClassReader classLoaderQuerySignal answer: SystemClassLoader do:[ |
2875
d8458cc3aabe
Make JavaVM>>#loadClassesIn: to work with .jar files as well.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2868
diff
changeset
|
2772 |
dir isDirectory ifTrue:[ |
d8458cc3aabe
Make JavaVM>>#loadClassesIn: to work with .jar files as well.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2868
diff
changeset
|
2773 |
dir recursiveDirectoryContentsAsFilenamesDo: [ |
d8458cc3aabe
Make JavaVM>>#loadClassesIn: to work with .jar files as well.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2868
diff
changeset
|
2774 |
:filename | |
d8458cc3aabe
Make JavaVM>>#loadClassesIn: to work with .jar files as well.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2868
diff
changeset
|
2775 |
(filename isRegularFile and: [ filename suffix = #class ]) ifTrue: [ |
d8458cc3aabe
Make JavaVM>>#loadClassesIn: to work with .jar files as well.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2868
diff
changeset
|
2776 |
dirString := dir pathName. |
d8458cc3aabe
Make JavaVM>>#loadClassesIn: to work with .jar files as well.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2868
diff
changeset
|
2777 |
className := filename withoutSuffix pathName. |
d8458cc3aabe
Make JavaVM>>#loadClassesIn: to work with .jar files as well.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2868
diff
changeset
|
2778 |
className := className subString: dirString size + 2 to: className size. |
3112
1f8c991bc1d2
Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3083
diff
changeset
|
2779 |
className := className replaceAll: (Filename separator) with: $.. |
1f8c991bc1d2
Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3083
diff
changeset
|
2780 |
(pattern isNil or:[className matches: pattern]) ifTrue: [ |
2875
d8458cc3aabe
Make JavaVM>>#loadClassesIn: to work with .jar files as well.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2868
diff
changeset
|
2781 |
(self classNamed: className) isNil ifTrue:[ |
d8458cc3aabe
Make JavaVM>>#loadClassesIn: to work with .jar files as well.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2868
diff
changeset
|
2782 |
loadedClasses add: (self classForName:className). |
d8458cc3aabe
Make JavaVM>>#loadClassesIn: to work with .jar files as well.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2868
diff
changeset
|
2783 |
]. |
d8458cc3aabe
Make JavaVM>>#loadClassesIn: to work with .jar files as well.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2868
diff
changeset
|
2784 |
] |
d8458cc3aabe
Make JavaVM>>#loadClassesIn: to work with .jar files as well.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2868
diff
changeset
|
2785 |
] |
d8458cc3aabe
Make JavaVM>>#loadClassesIn: to work with .jar files as well.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2868
diff
changeset
|
2786 |
]. |
d8458cc3aabe
Make JavaVM>>#loadClassesIn: to work with .jar files as well.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2868
diff
changeset
|
2787 |
] ifFalse:[ |
d8458cc3aabe
Make JavaVM>>#loadClassesIn: to work with .jar files as well.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2868
diff
changeset
|
2788 |
| zar | |
d8458cc3aabe
Make JavaVM>>#loadClassesIn: to work with .jar files as well.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2868
diff
changeset
|
2789 |
|
d8458cc3aabe
Make JavaVM>>#loadClassesIn: to work with .jar files as well.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2868
diff
changeset
|
2790 |
zar := ZipArchive oldFileNamed: dir pathName. |
d8458cc3aabe
Make JavaVM>>#loadClassesIn: to work with .jar files as well.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2868
diff
changeset
|
2791 |
zar entries do:[:entry| |
d8458cc3aabe
Make JavaVM>>#loadClassesIn: to work with .jar files as well.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2868
diff
changeset
|
2792 |
(entry endsWith:'.class') ifTrue:[ |
d8458cc3aabe
Make JavaVM>>#loadClassesIn: to work with .jar files as well.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2868
diff
changeset
|
2793 |
| nm | |
d8458cc3aabe
Make JavaVM>>#loadClassesIn: to work with .jar files as well.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2868
diff
changeset
|
2794 |
|
d8458cc3aabe
Make JavaVM>>#loadClassesIn: to work with .jar files as well.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2868
diff
changeset
|
2795 |
nm := entry copyTo: entry size - 6. |
3112
1f8c991bc1d2
Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3083
diff
changeset
|
2796 |
className := nm replaceAll: (Filename separator) with: $.. |
1f8c991bc1d2
Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3083
diff
changeset
|
2797 |
(pattern isNil or:[className matches: pattern]) ifTrue: [ |
2875
d8458cc3aabe
Make JavaVM>>#loadClassesIn: to work with .jar files as well.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2868
diff
changeset
|
2798 |
(self classNamed: className) isNil ifTrue:[ |
d8458cc3aabe
Make JavaVM>>#loadClassesIn: to work with .jar files as well.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2868
diff
changeset
|
2799 |
loadedClasses add: (self classForName:className). |
d8458cc3aabe
Make JavaVM>>#loadClassesIn: to work with .jar files as well.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2868
diff
changeset
|
2800 |
]. |
d8458cc3aabe
Make JavaVM>>#loadClassesIn: to work with .jar files as well.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2868
diff
changeset
|
2801 |
] |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2802 |
] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2803 |
] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2804 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2805 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2806 |
^ loadedClasses. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2807 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2808 |
"Modified: / 21-10-2011 / 12:52:06 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
3112
1f8c991bc1d2
Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3083
diff
changeset
|
2809 |
"Modified: / 27-05-2014 / 12:20:24 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2810 |
! ! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2811 |
|
2730
272689c14005
Fixed removing of Java classes (issue #40)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2705
diff
changeset
|
2812 |
!JavaVM class methodsFor:'class loading/unloading'! |
272689c14005
Fixed removing of Java classes (issue #40)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2705
diff
changeset
|
2813 |
|
272689c14005
Fixed removing of Java classes (issue #40)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2705
diff
changeset
|
2814 |
loadClassNamed: className usingClassLoader: classLoader |
272689c14005
Fixed removing of Java classes (issue #40)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2705
diff
changeset
|
2815 |
"Load class with given `className` using given `classLoader`. If |
272689c14005
Fixed removing of Java classes (issue #40)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2705
diff
changeset
|
2816 |
`classLoader` is nil (i.e., primordial class loader), load |
272689c14005
Fixed removing of Java classes (issue #40)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2705
diff
changeset
|
2817 |
the class ourselfs" |
272689c14005
Fixed removing of Java classes (issue #40)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2705
diff
changeset
|
2818 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2819 |
| class | |
2730
272689c14005
Fixed removing of Java classes (issue #40)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2705
diff
changeset
|
2820 |
|
272689c14005
Fixed removing of Java classes (issue #40)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2705
diff
changeset
|
2821 |
JavaClassReader classLoaderQuerySignal answer: classLoader do: [ |
272689c14005
Fixed removing of Java classes (issue #40)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2705
diff
changeset
|
2822 |
classLoader isNil ifTrue:[ |
272689c14005
Fixed removing of Java classes (issue #40)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2705
diff
changeset
|
2823 |
"/ Primordial load... |
2966 | 2824 |
class := JavaClassReader readClass: className classPath: Java release bootClassPath |
2730
272689c14005
Fixed removing of Java classes (issue #40)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2705
diff
changeset
|
2825 |
] ifFalse:[ |
272689c14005
Fixed removing of Java classes (issue #40)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2705
diff
changeset
|
2826 |
class := classLoader |
272689c14005
Fixed removing of Java classes (issue #40)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2705
diff
changeset
|
2827 |
perform: #'loadClassInternal(Ljava/lang/String;)Ljava/lang/Class;' |
272689c14005
Fixed removing of Java classes (issue #40)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2705
diff
changeset
|
2828 |
with: (Java as_String: (className asDottedJavaClassName)). |
272689c14005
Fixed removing of Java classes (issue #40)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2705
diff
changeset
|
2829 |
class := self classForJavaClassObject: class. |
272689c14005
Fixed removing of Java classes (issue #40)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2705
diff
changeset
|
2830 |
]. |
272689c14005
Fixed removing of Java classes (issue #40)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2705
diff
changeset
|
2831 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2832 |
^ class. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2833 |
|
2730
272689c14005
Fixed removing of Java classes (issue #40)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2705
diff
changeset
|
2834 |
"Created: / 14-09-2013 / 23:06:34 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
272689c14005
Fixed removing of Java classes (issue #40)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2705
diff
changeset
|
2835 |
"Modified: / 15-09-2013 / 00:17:06 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2737
83f8416e153c
Cleanup. Change source API in `Java` to return stream rather than string.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2732
diff
changeset
|
2836 |
! |
83f8416e153c
Cleanup. Change source API in `Java` to return stream rather than string.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2732
diff
changeset
|
2837 |
|
83f8416e153c
Cleanup. Change source API in `Java` to return stream rather than string.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2732
diff
changeset
|
2838 |
unloadClass: class |
83f8416e153c
Cleanup. Change source API in `Java` to return stream rather than string.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2732
diff
changeset
|
2839 |
"Remove given `class` from the system, i.e., remove it from |
2966 | 2840 |
the class registry as well as from system dictionary (Smalltalk). |
2737
83f8416e153c
Cleanup. Change source API in `Java` to return stream rather than string.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2732
diff
changeset
|
2841 |
|
83f8416e153c
Cleanup. Change source API in `Java` to return stream rather than string.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2732
diff
changeset
|
2842 |
Note, that this method also removes all dependent classes and |
83f8416e153c
Cleanup. Change source API in `Java` to return stream rather than string.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2732
diff
changeset
|
2843 |
invalidates all references" |
83f8416e153c
Cleanup. Change source API in `Java` to return stream rather than string.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2732
diff
changeset
|
2844 |
|
83f8416e153c
Cleanup. Change source API in `Java` to return stream rather than string.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2732
diff
changeset
|
2845 |
ClassRegistry unregisterClass: class. |
83f8416e153c
Cleanup. Change source API in `Java` to return stream rather than string.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2732
diff
changeset
|
2846 |
|
83f8416e153c
Cleanup. Change source API in `Java` to return stream rather than string.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2732
diff
changeset
|
2847 |
"Created: / 14-09-2013 / 23:25:04 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2848 |
! ! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2849 |
|
2151 | 2850 |
!JavaVM class methodsFor:'debugging support'! |
2851 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2852 |
disableMonitorTrace |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2853 |
MonitorTrace := false. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2854 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2855 |
"Created: / 22-11-2011 / 10:29:53 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2856 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2857 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2858 |
enableMonitorTrace |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2859 |
MonitorTrace := true. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2860 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2861 |
"Created: / 22-11-2011 / 10:29:46 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2862 |
"Modified (format): / 07-04-2012 / 08:47:53 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2863 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2864 |
|
2151 | 2865 |
exceptionDebug |
2866 |
^ ExceptionDebug |
|
2867 |
||
2868 |
"Created: / 27.1.1999 / 20:14:51 / cg" |
|
2869 |
! |
|
2870 |
||
2871 |
exceptionDebug:aBoolean |
|
2872 |
ExceptionDebug := aBoolean |
|
2873 |
||
2874 |
"Created: / 27.1.1999 / 20:15:00 / cg" |
|
2875 |
! |
|
2876 |
||
2877 |
exceptionDebugPatterns |
|
2878 |
||
2879 |
^ ExceptionDebugPatterns |
|
2880 |
" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2881 |
ExceptionDebug must be set in order to ExceptionDebugPatterns work |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2882 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2883 |
ExceptionDebug := true. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2884 |
ExceptionDebug := false. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2885 |
ExceptionDebugPatterns removeAll. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2886 |
ExceptionDebugPatterns add: 'java/lang/SecurityException*'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2887 |
ExceptionDebugPatterns add: 'java/net/ConnectException*'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2888 |
ExceptionDebugPatterns add: 'java/lang/IllegalArgumentException'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2889 |
ExceptionDebugPatterns add: 'java/lang/IllegalAccessException'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2890 |
ExceptionDebugPatterns add: 'java/lang/ClassNotFoundException'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2891 |
ExceptionDebugPatterns add: 'java/io/IOException'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2892 |
ExceptionDebugPatterns add: 'java/io/FileNotFoundException'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2893 |
ExceptionDebugPatterns add: 'java/io/EOFException'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2894 |
ExceptionDebugPatterns add: 'java/lang/NoSuchMethodException'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2895 |
ExceptionDebugPatterns add: 'java/lang/ArrayIndexOutOfBoundsException'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2896 |
ExceptionDebugPatterns add: 'java/lang/IllegalMonitorStateException'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2897 |
ExceptionDebugPatterns add: 'org/xml/sax/SAXParseException'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2898 |
ExceptionDebugPatterns add: 'org/apache/xerces/xni/parser/XMLParseException'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2899 |
ExceptionDebugPatterns add: 'java/lang/InstantiationException'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2900 |
ExceptionDebugPatterns add: 'java/lang/RuntimeException'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2901 |
ExceptionDebugPatterns add: 'java/lang/ClassCastException'. |
2730
272689c14005
Fixed removing of Java classes (issue #40)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2705
diff
changeset
|
2902 |
ExceptionDebugPatterns add: 'java/lang/IllegalAccess*'. |
2925
a77c05c8cd68
Fix in JavaVM for exception debugging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2921
diff
changeset
|
2903 |
ExceptionDebugPatterns add: 'java/util/zip/ZipException'. |
3083 | 2904 |
ExceptionDebugPatterns add: 'java/lang/UnsatisfiedLinkError'. |
3121
cc0ea0656186
Fixed bug #77: Ignore unhandled ThreadDeath exceptions.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3114
diff
changeset
|
2905 |
ExceptionDebugPatterns add: 'java/lang/ThreadDeath'. |
cc0ea0656186
Fixed bug #77: Ignore unhandled ThreadDeath exceptions.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3114
diff
changeset
|
2906 |
|
2730
272689c14005
Fixed removing of Java classes (issue #40)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2705
diff
changeset
|
2907 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2908 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2909 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2910 |
ExceptionDebug := true. |
2151 | 2911 |
" |
2912 |
||
2913 |
"Created: / 25-02-2011 / 08:08:46 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
3121
cc0ea0656186
Fixed bug #77: Ignore unhandled ThreadDeath exceptions.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3114
diff
changeset
|
2914 |
"Modified (comment): / 12-06-2014 / 11:36:17 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2597
24475baf6abc
CHECKCAST/INSTANCEOF optimization (part 3)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2595
diff
changeset
|
2915 |
! |
24475baf6abc
CHECKCAST/INSTANCEOF optimization (part 3)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2595
diff
changeset
|
2916 |
|
24475baf6abc
CHECKCAST/INSTANCEOF optimization (part 3)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2595
diff
changeset
|
2917 |
exceptionTrace:aBoolean |
24475baf6abc
CHECKCAST/INSTANCEOF optimization (part 3)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2595
diff
changeset
|
2918 |
ExceptionTrace := aBoolean |
24475baf6abc
CHECKCAST/INSTANCEOF optimization (part 3)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2595
diff
changeset
|
2919 |
|
2965
bac7022ca26a
Merged 7c3b2a89f173 and 80a1a085a982 (branch performance-optimizations)
Jan Vrany <jan.vrany@fit.cvut.cz>
diff
changeset
|
2920 |
! |
bac7022ca26a
Merged 7c3b2a89f173 and 80a1a085a982 (branch performance-optimizations)
Jan Vrany <jan.vrany@fit.cvut.cz>
diff
changeset
|
2921 |
|
2850
e4f0dcc42f4a
Fixed logging of monitor-related events - honour JavaVM.MonitorTrace flag.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2806
diff
changeset
|
2922 |
monitorTrace |
e4f0dcc42f4a
Fixed logging of monitor-related events - honour JavaVM.MonitorTrace flag.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2806
diff
changeset
|
2923 |
^ MonitorTrace |
e4f0dcc42f4a
Fixed logging of monitor-related events - honour JavaVM.MonitorTrace flag.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2806
diff
changeset
|
2924 |
|
e4f0dcc42f4a
Fixed logging of monitor-related events - honour JavaVM.MonitorTrace flag.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2806
diff
changeset
|
2925 |
"Created: / 11-10-2013 / 11:16:08 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
526 | 2926 |
! ! |
2927 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2928 |
!JavaVM class methodsFor:'debugging-dumping'! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2929 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2930 |
dumpOpenExternalStream: stream on: output |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2931 |
output nextPutAll: stream class printString. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2932 |
output space. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2933 |
OpenFileTable notNil ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2934 |
| idx | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2935 |
idx := OpenFileTable identityIndexOf: stream. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2936 |
idx ~~ 0 ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2937 |
output nextPutAll:'JavaVM:OpenFileTable['; nextPutAll: idx printString; nextPut:$]; space. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2938 |
] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2939 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2940 |
ZipCache notNil ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2941 |
| idx | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2942 |
idx := ZipCache identityIndexOf: stream. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2943 |
idx ~~ 0 ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2944 |
output nextPutAll:'JavaVM:ZipCache['; nextPutAll: idx printString; nextPut:$]; space. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2945 |
] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2946 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2947 |
stream isFileStream ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2948 |
output nextPutAll: stream pathName ? '?' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2949 |
] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2950 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2951 |
"Created: / 23-07-2012 / 16:40:30 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2952 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2953 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2954 |
dumpOpenExternalStreams |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2955 |
^self dumpOpenExternalStreamsOn: Stdout. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2956 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2957 |
"Created: / 23-07-2012 / 16:32:10 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2958 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2959 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2960 |
dumpOpenExternalStreamsOn: aStream |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2961 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2962 |
| nOpenStreams | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2963 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2964 |
nOpenStreams := 0. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2965 |
ExternalStream allSubInstancesDo:[:each| |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2966 |
each isOpen ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2967 |
nOpenStreams := nOpenStreams + 1. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2968 |
self dumpOpenExternalStream: each on: aStream. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2969 |
aStream cr. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2970 |
] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2971 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2972 |
aStream nextPutLine: |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2973 |
('SUMMARY: open=%1, java.io=%2, java.util.zip=%3' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2974 |
bindWith: nOpenStreams |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2975 |
with: ((OpenFileTable ? #()) inject:0 into:[:a :s|a + (s notNil ifTrue:[1] ifFalse:[0])]) |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2976 |
with: ((ZipCache ? #()) inject:0 into:[:a :s|a + (s notNil ifTrue:[1] ifFalse:[0])]) |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2977 |
) |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2978 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2979 |
" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2980 |
JavaVM dumpOpenExternalStreamsOn: Stdout |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2981 |
" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2982 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2983 |
"Created: / 23-07-2012 / 16:34:49 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2984 |
! ! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
2985 |
|
253 | 2986 |
!JavaVM class methodsFor:'defaults'! |
2987 |
||
359 | 2988 |
audioEnabled |
2989 |
^ NoAudio not |
|
2990 |
||
2991 |
"Created: / 18.7.1998 / 22:31:36 / cg" |
|
2992 |
! |
|
2993 |
||
2994 |
audioEnabled:aBoolean |
|
2995 |
NoAudio := aBoolean not |
|
2996 |
||
2997 |
"Created: / 18.7.1998 / 22:31:20 / cg" |
|
2998 |
! |
|
2999 |
||
253 | 3000 |
defaultCLASSPATH |
3001 |
|s| |
|
3002 |
||
3003 |
s := '' writeStream. |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3004 |
Java effectiveClassPath |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3005 |
do:[:p | s nextPutAll:p asString ] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3006 |
separatedBy: [s nextPut: OperatingSystem pathSeparator]. |
253 | 3007 |
|
3008 |
^ s contents |
|
3009 |
||
3010 |
" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3011 |
self defaultCLASSPATH |
2151 | 3012 |
" |
3013 |
||
3014 |
"Created: / 03-01-1998 / 14:27:21 / cg" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3015 |
"Modified: / 16-01-2013 / 13:15:36 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3016 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3017 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3018 |
defaultExtDirs |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3019 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3020 |
^String streamContents:[:s| |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3021 |
Java javaExtDirs do:[:dir| |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3022 |
s nextPutAll: dir pathName. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3023 |
] separatedBy:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3024 |
s nextPut: OperatingSystem pathSeparator. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3025 |
] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3026 |
] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3027 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3028 |
" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3029 |
JavaVM defaultExtDirs |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3030 |
" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3031 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3032 |
"Created: / 31-08-2011 / 20:03:34 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
253 | 3033 |
! |
3034 |
||
3035 |
defaultHotJavaHome |
|
3036 |
^ '/usr/local/java/hotjava'. |
|
3037 |
||
3038 |
"Modified: / 5.8.1997 / 04:13:36 / cg" |
|
3039 |
"Created: / 3.1.1998 / 14:27:34 / cg" |
|
3040 |
! |
|
3041 |
||
3042 |
defaultJAVAHome |
|
3043 |
^ Java javaHome |
|
3044 |
||
3045 |
"Modified: / 6.8.1997 / 00:54:44 / cg" |
|
3046 |
"Created: / 3.1.1998 / 14:27:01 / cg" |
|
3047 |
! |
|
3048 |
||
3049 |
defaultJWSHome |
|
474 | 3050 |
'/phys/idefix/home2/java/JWS2_0/Java-WorkShop2.0/JWS' asFilename exists ifTrue:[ |
616 | 3051 |
^ '/phys/idefix/home2/java/JWS2_0/Java-WorkShop2.0/JWS' |
474 | 3052 |
]. |
3053 |
||
253 | 3054 |
^ '/usr/local/java/JWS'. |
3055 |
||
3056 |
"Created: / 3.1.1998 / 14:27:42 / cg" |
|
479 | 3057 |
"Modified: / 3.12.1998 / 14:54:08 / cg" |
253 | 3058 |
! |
3059 |
||
2151 | 3060 |
defaultJavaLibraryPath |
3083 | 3061 |
|javaHome jreHome dirs libDir jniLibDir| |
3062 |
||
3063 |
javaHome := Java release javaHome asFilename. |
|
3064 |
jreHome := Java release jreHome. |
|
3065 |
libDir := Java release libDirInJreHome. |
|
3066 |
jniLibDir := Java release jniLibDirInJreHome. |
|
3067 |
||
3068 |
dirs := Set new. |
|
3069 |
dirs |
|
3070 |
add: javaHome / libDir; |
|
3071 |
add: javaHome / libDir / 'amd64'; |
|
3072 |
add: javaHome / libDir / 'i386'. |
|
3073 |
||
3074 |
libDir ~= jniLibDir ifTrue:[ |
|
3075 |
dirs |
|
3076 |
add: javaHome / jniLibDir; |
|
3077 |
add: javaHome / jniLibDir / 'amd64'; |
|
3078 |
add: javaHome / jniLibDir / 'i386'. |
|
3079 |
]. |
|
3080 |
jreHome notNil ifTrue:[ |
|
3081 |
dirs |
|
3082 |
add: jreHome / libDir ; |
|
3083 |
add: jreHome / libDir / 'amd64' ; |
|
3084 |
add: jreHome / libDir / 'i386' ; |
|
3085 |
add: jreHome / 'bin'. |
|
3086 |
libDir ~= jniLibDir ifTrue:[ |
|
3087 |
dirs |
|
3088 |
add: jreHome / jniLibDir; |
|
3089 |
add: jreHome / jniLibDir / 'amd64'; |
|
3090 |
add: jreHome / jniLibDir / 'i386' |
|
3091 |
]. |
|
3092 |
]. |
|
3093 |
||
2151 | 3094 |
OperatingSystem isMSWINDOWSlike ifTrue:[ |
3095 |
dirs |
|
3083 | 3096 |
add: javaHome / 'bin'. |
3097 |
]. |
|
3098 |
dirs := (dirs select:[:d| d exists]) asOrderedCollection. |
|
2151 | 3099 |
|
3100 |
^String streamContents: |
|
3101 |
[:path| |
|
3083 | 3102 |
dirs |
2151 | 3103 |
do:[:d|path nextPutAll:d pathName] |
3104 |
separatedBy:[path nextPut: OperatingSystem pathSeparator]] |
|
3105 |
||
3106 |
" |
|
3083 | 3107 |
JavaVM defaultJavaLibraryPath |
2151 | 3108 |
" |
3109 |
||
3110 |
"Created: / 10-12-2010 / 14:09:50 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
3111 |
"Modified: / 01-04-2011 / 18:21:35 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
3112 |
! |
|
3113 |
||
3114 |
defaultSunBootLibraryPath |
|
3115 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3116 |
|s| |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3117 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3118 |
s := '' writeStream. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3119 |
Java release bootClassPath |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3120 |
do:[:p | s nextPutAll:p asString] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3121 |
separatedBy: [s nextPut: OperatingSystem pathSeparator]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3122 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3123 |
^ s contents |
2151 | 3124 |
|
3125 |
" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3126 |
JavaVM defaultSunBootLibraryPath |
2151 | 3127 |
" |
3128 |
||
3129 |
"Created: / 10-12-2010 / 14:37:36 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3130 |
"Modified: / 23-01-2013 / 15:19:08 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2151 | 3131 |
! |
3132 |
||
253 | 3133 |
defaultWindowingToolKit |
3134 |
"/ prefer the windows toolkit ... |
|
3135 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3136 |
(self classForName: 'sun.awt.windows.WToolkit') notNil ifTrue: [ |
2092 | 3137 |
^ 'sun.awt.windows.WToolkit'. |
277 | 3138 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3139 |
(Java classForName: 'sun.awt.motif.MToolkit') notNil ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3140 |
self halt: 'MotifToolKit: this is untested code'. |
2092 | 3141 |
^ 'sun.awt.motif.MToolkit'. |
3142 |
]. |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3143 |
self halt: 'TinyToolKit: this is untested code'. |
253 | 3144 |
^ 'sun.awt.tiny.TinyToolkit'. |
3145 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3146 |
"/ ^ 'sun.awt.win32.MToolkit'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3147 |
"/ ^ 'sun.awt.motif.MToolkit'. |
277 | 3148 |
" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3149 |
self defaultWindowingToolKit" |
253 | 3150 |
"Created: / 3.1.1998 / 14:27:49 / cg" |
277 | 3151 |
"Modified: / 27.1.1998 / 21:52:52 / cg" |
253 | 3152 |
! |
3153 |
||
546 | 3154 |
fileAccessTrace |
3155 |
^ FileAccessTrace |
|
3156 |
||
3157 |
"Created: / 27.1.1999 / 18:55:40 / cg" |
|
3158 |
! |
|
3159 |
||
3160 |
fileAccessTrace:aBoolean |
|
3161 |
FileAccessTrace := aBoolean |
|
3162 |
||
3163 |
"Created: / 19.10.1998 / 16:01:44 / cg" |
|
3164 |
"Modified: / 27.1.1999 / 18:55:52 / cg" |
|
3165 |
! |
|
3166 |
||
390 | 3167 |
fileOpenConfirmation |
3168 |
^ FileOpenConfirmation |
|
3169 |
||
3170 |
"Created: / 19.10.1998 / 16:01:44 / cg" |
|
3171 |
! |
|
3172 |
||
3173 |
fileOpenConfirmation:aBoolean |
|
3174 |
FileOpenConfirmation := aBoolean |
|
3175 |
||
3176 |
"Created: / 19.10.1998 / 16:01:56 / cg" |
|
3177 |
! |
|
3178 |
||
253 | 3179 |
javaConsole:aStream |
3180 |
JavaConsoleStream := aStream |
|
3181 |
||
3182 |
" |
|
261 | 3183 |
JavaVM javaConsole:Transcript |
253 | 3184 |
" |
3185 |
||
3186 |
"Modified: / 6.8.1997 / 00:34:13 / cg" |
|
3187 |
"Created: / 3.1.1998 / 14:27:58 / cg" |
|
3188 |
! |
|
3189 |
||
3190 |
javaConsoleStream |
|
3191 |
^ JavaConsoleStream |
|
3192 |
||
3193 |
"Created: / 3.1.1998 / 14:32:16 / cg" |
|
390 | 3194 |
! |
3195 |
||
572 | 3196 |
nullPointerExceptionDebug |
3197 |
^ NullPointerExceptionDebug |
|
3198 |
||
3199 |
"Created: / 27.1.1999 / 20:14:51 / cg" |
|
3200 |
! |
|
3201 |
||
3202 |
nullPointerExceptionDebug:aBoolean |
|
3203 |
NullPointerExceptionDebug := aBoolean |
|
3204 |
||
3205 |
"Created: / 27.1.1999 / 20:15:00 / cg" |
|
3206 |
! |
|
3207 |
||
390 | 3208 |
socketConnectConfirmation |
3209 |
^ SocketConnectConfirmation |
|
3210 |
||
3211 |
"Created: / 19.10.1998 / 16:02:15 / cg" |
|
3212 |
! |
|
3213 |
||
3214 |
socketConnectConfirmation:aBoolean |
|
3215 |
SocketConnectConfirmation := aBoolean |
|
3216 |
||
3217 |
"Created: / 19.10.1998 / 16:02:06 / cg" |
|
253 | 3218 |
! ! |
3219 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3220 |
!JavaVM class methodsFor:'eager resolving'! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3221 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3222 |
disableEagerResolving |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3223 |
EagerResolvingEnabled := false. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3224 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3225 |
"Created: / 08-12-2011 / 21:06:11 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3226 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3227 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3228 |
eagerResolvingEnabled |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3229 |
^ EagerResolvingEnabled. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3230 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3231 |
"Created: / 08-12-2011 / 21:05:21 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3232 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3233 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3234 |
enableEagerResolving |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3235 |
EagerResolvingEnabled := true. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3236 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3237 |
"Created: / 08-12-2011 / 21:06:03 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
253 | 3238 |
! ! |
3239 |
||
3240 |
!JavaVM class methodsFor:'helpers'! |
|
3241 |
||
2151 | 3242 |
canCast: s to: t |
2582
475c9a63b723
Fixed CHECKCAST insn implementation to support JIT-compiled code.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2578
diff
changeset
|
3243 |
"Helper for _CHECKCAST(_R):_:/_INSTANCEOF(_R):_:" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3244 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3245 |
| sc tc | |
2151 | 3246 |
|
3247 |
"Not specified in JVM spec, sigh" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3248 |
s isJavaPrimitiveType ifTrue: [ |
2151 | 3249 |
"FIXME" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3250 |
^ s == t or:[(s isSubclassOf: t) or:[t isSubclassOf: s]] |
2151 | 3251 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3252 |
" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3253 |
Java VM Spec, 3rd edition, p 280: |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3254 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3255 |
The following rules are used to determine whether an objectref that is not |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3256 |
null can be cast to the resolved type: if S is the class of the object |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3257 |
referred to by objectref and T is the resolved class, array, or interface type, |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3258 |
checkcast determines whether objectref can be cast to type T as follows: |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3259 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3260 |
- If S is an ordinary (nonarray) class, then: |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3261 |
- If T is a class type, then S must be the same class as T, or a subclass |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3262 |
of T. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3263 |
- If T is an interface type, then S must implement interface T. |
2151 | 3264 |
" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3265 |
(s isJavaArrayClass not and: [ s isInterface not ]) ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3266 |
^ (s includesBehavior: t). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3267 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3268 |
" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3269 |
- If S is an interface type, then: |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3270 |
- If T is a class type, then T must be Object. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3271 |
- If T is an interface type, then T must be the same interface as S or a |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3272 |
superinterface of S. |
2151 | 3273 |
" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3274 |
s isInterface ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3275 |
^ t isInterface not |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3276 |
ifTrue: [ t == (self classForName: 'java.lang.Object') ] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3277 |
ifFalse: [ s includesBehavior: t ] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3278 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3279 |
" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3280 |
- If S is a class representing the array type SC[], that is, an array of com- |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3281 |
ponents of type SC , then: |
2151 | 3282 |
" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3283 |
self assert:s isJavaArrayClass message:'S should be array type'. |
2151 | 3284 |
sc := s javaComponentClass. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3285 |
" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3286 |
- If T is a class type, then T must be Object. |
2151 | 3287 |
" |
2601
3d4b433fb25c
Performance optimization - classForName: (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2597
diff
changeset
|
3288 |
t isJavaClassType ifTrue: [ ^ t == (self classForName: 'java.lang.Object' definedBy: nil) ]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3289 |
" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3290 |
- If T is an array type TC[], that is, an array of components of type TC , |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3291 |
then one of the following must be true: |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3292 |
- TC and SC are the same primitive type. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3293 |
- TC and SC are reference types, and type SC can be cast to TC by |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3294 |
recursive application of these rules. |
2151 | 3295 |
" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3296 |
t isJavaArrayClass ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3297 |
tc := t javaComponentClass. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3298 |
^ tc isJavaPrimitiveType |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3299 |
ifTrue: [ tc == sc ] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3300 |
ifFalse: [ self canCast: sc to: tc ] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3301 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3302 |
" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3303 |
- If T is an interface type, T must be one of the interfaces implemented |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3304 |
by arrays (JLS3 4.10.3). |
2151 | 3305 |
" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3306 |
((t name == #'java/lang/Cloneable') |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3307 |
or: [ t name == #'java/lang/Serializable' ]) ifTrue: [ ^ true ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3308 |
^ false |
2151 | 3309 |
|
3310 |
"Modified: / 09-01-1999 / 00:45:21 / cg" |
|
3311 |
"Created: / 11-02-2011 / 08:21:36 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3312 |
"Modified: / 21-10-2011 / 13:50:36 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
2601
3d4b433fb25c
Performance optimization - classForName: (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2597
diff
changeset
|
3313 |
"Modified: / 18-05-2013 / 12:57:19 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3314 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3315 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3316 |
javaStringObjectForString:string |
2151 | 3317 |
self breakPoint:#mh info:'refactor my sender to use reflection directly'. |
3318 |
^ self reflection javaStringObjectForString:string interned:false |
|
3319 |
||
3320 |
"Created: / 22-11-2010 / 16:31:27 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
3321 |
"Modified: / 09-02-2011 / 00:47:49 / Marcel Hlopko <hlopik@gmail.com>" |
|
3322 |
! |
|
3323 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3324 |
javaStringObjectForString:string interned:intern |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3325 |
|
2151 | 3326 |
^self reflection javaStringObjectForString:string interned:intern. |
3327 |
||
3328 |
"Created: / 22-11-2010 / 16:28:09 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
3329 |
"Modified: / 22-11-2010 / 17:57:43 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
3330 |
"Modified: / 09-02-2011 / 01:04:21 / Marcel Hlopko <hlopik@gmail.com>" |
|
321 | 3331 |
! |
3332 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3333 |
javaThreadForSTProcess: stProcess |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3334 |
| result | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3335 |
result := Java threadForStProcess: stProcess ifAbsent: nil. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3336 |
result == 0 ifTrue: [ self breakPoint: #mh. ^ nil]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3337 |
^ result. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3338 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3339 |
"Modified: / 26-08-1997 / 19:56:31 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3340 |
"Created: / 03-01-1998 / 01:53:41 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3341 |
"Modified: / 09-12-2011 / 13:12:28 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3342 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3343 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3344 |
makeArrayOf: loadedJavaClass asDescribedBy: className |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3345 |
| arrayClass dimensions | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3346 |
|
3112
1f8c991bc1d2
Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3083
diff
changeset
|
3347 |
className first == $[ ifFalse:[ ^ loadedJavaClass ]. |
1f8c991bc1d2
Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3083
diff
changeset
|
3348 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3349 |
arrayClass := loadedJavaClass. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3350 |
dimensions := className occurrencesOf: $[. |
3112
1f8c991bc1d2
Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3083
diff
changeset
|
3351 |
arrayClass isJavaArrayClass ifTrue: [ |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3352 |
"is already array (primitive arrays case, like ByteArray etc)" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3353 |
dimensions := dimensions - 1. |
253 | 3354 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3355 |
dimensions timesRepeat: [ arrayClass := arrayClass javaArrayClass. ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3356 |
^ arrayClass. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3357 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3358 |
"Created: / 21-10-2011 / 12:18:21 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
3112
1f8c991bc1d2
Variaous optimizations in string manipulatios to speed up class reading.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3083
diff
changeset
|
3359 |
"Modified: / 27-05-2014 / 12:40:17 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3360 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3361 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3362 |
newThread: name |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3363 |
| thread threadClass i | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3364 |
threadClass := JavaVM classForName: 'java.lang.Thread'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3365 |
thread := threadClass basicNew. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3366 |
thread instVarNamed: '_lockWord_' put: 0. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3367 |
thread instVarNamed: 'name' put: name. "/NOT a Java string, name instvar is char[]!!!!!!" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3368 |
thread instVarNamed: 'priority' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3369 |
put: (threadClass instVarNamed: 'NORM_PRIORITY'). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3370 |
thread instVarNamed: 'single_step' put: 0. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3371 |
thread instVarNamed: 'daemon' put: 0. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3372 |
thread instVarNamed: 'stillborn' put: 0. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3373 |
thread instVarNamed: 'threadStatus' put: 0. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3374 |
thread instVarNamed: 'target' put: nil. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3375 |
thread instVarNamed: 'blockerLock' put: |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3376 |
((JavaVM classForName: 'java.lang.Object') basicNew |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3377 |
instVarAt: 1 put: 0; |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3378 |
yourself). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3379 |
|
274 | 3380 |
"/ |
3381 |
"/ that on was only temporarily present in JDK1.1.3 (sigh) |
|
3382 |
"/ |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3383 |
|
3651 | 3384 |
(i := thread class instVarIndexFor: 'initial_stack_memory') notNil ifTrue: [ |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3385 |
thread instVarAt: i put: 0. |
274 | 3386 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3387 |
thread instVarNamed: 'group' put: (self standardThreadGroup). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3388 |
threadClass classLoader isNil ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3389 |
thread instVarNamed: 'contextClassLoader' put: self systemClassLoader |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3390 |
] ifFalse: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3391 |
thread instVarNamed: 'contextClassLoader' put: threadClass classLoader |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3392 |
]. |
253 | 3393 |
^ thread |
3394 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3395 |
"Created: / 03-01-1998 / 01:47:30 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3396 |
"Modified: / 27-01-1998 / 00:54:33 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3397 |
"Modified: / 01-12-2011 / 17:43:38 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3398 |
"Modified: / 19-09-2012 / 16:06:24 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3399 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3400 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3401 |
stProcessForJavaThread: jThread |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3402 |
| result | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3403 |
result := Java threadsAt: jThread ifAbsent: nil. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3404 |
result == 0 ifTrue: [ self breakPoint: #mh. ^ nil ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3405 |
^ result. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3406 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3407 |
"Created: / 02-01-1998 / 21:48:27 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3408 |
"Modified: / 03-01-1998 / 01:53:55 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3409 |
"Modified: / 09-12-2011 / 13:12:39 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
253 | 3410 |
! |
3411 |
||
3412 |
standardThreadGroup |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3413 |
| standardGroup threadClass | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3414 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3415 |
StandardThreadGroup isNil ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3416 |
threadClass := JavaVM classForName: 'java.lang.Thread'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3417 |
standardGroup := (self classForName: 'java.lang.ThreadGroup') new. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3418 |
standardGroup instVarNamed: 'parent' put: nil. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3419 |
standardGroup instVarNamed: 'name' put: (Java as_String: 'main'). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3420 |
standardGroup instVarNamed: 'maxPriority' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3421 |
put: (threadClass instVarNamed: 'MAX_PRIORITY'). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3422 |
standardGroup instVarNamed: 'destroyed' put: 0. |
2806
41d1af53f1eb
Fix in JavaVM>>standardThreadGroup
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2744
diff
changeset
|
3423 |
standardGroup instVarNamed: 'daemon' put: 0. |
3651 | 3424 |
(standardGroup class instVarIndexFor: 'vmAllowSuspension') notNil ifTrue: [ |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3425 |
standardGroup instVarNamed: 'vmAllowSuspension' put: 0. |
2151 | 3426 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3427 |
standardGroup instVarNamed: 'nthreads' put: 0. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3428 |
standardGroup instVarNamed: 'ngroups' put: 0. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3429 |
standardGroup instVarNamed: 'groups' put: nil. |
2151 | 3430 |
StandardThreadGroup := standardGroup. |
253 | 3431 |
]. |
3432 |
^ StandardThreadGroup |
|
3433 |
||
2151 | 3434 |
"Created: / 03-01-1998 / 01:41:54 / cg" |
3435 |
"Modified: / 17-11-1998 / 22:55:30 / cg" |
|
2806
41d1af53f1eb
Fix in JavaVM>>standardThreadGroup
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2744
diff
changeset
|
3436 |
"Modified: / 07-10-2013 / 11:51:06 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
253 | 3437 |
! ! |
3438 |
||
3439 |
!JavaVM class methodsFor:'helpers - exceptions'! |
|
3440 |
||
2151 | 3441 |
throwAbstractMethodError |
3442 |
^ self throwExceptionClassName: 'java.lang.AbstractMethodError' |
|
3443 |
withMessage: 'resolving a method ref failed'. |
|
3444 |
||
3445 |
"Created: / 11-04-2011 / 20:32:53 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
|
3446 |
! |
|
3447 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3448 |
throwArrayIndexOutOfBoundsException: badIndex |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3449 |
| exClass ex | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3450 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3451 |
exClass := self classForName: 'java.lang.ArrayIndexOutOfBoundsException'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3452 |
ex := exClass newWith_int: badIndex. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3453 |
^ self throwException: ex |
261 | 3454 |
|
3455 |
"Created: / 14.1.1998 / 21:36:05 / cg" |
|
459 | 3456 |
"Modified: / 20.11.1998 / 13:27:14 / cg" |
261 | 3457 |
! |
3458 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3459 |
throwArrayIndexOutOfBoundsException: theArray _: badIndex |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3460 |
| exClass ex | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3461 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3462 |
exClass := self classForName: 'java.lang.ArrayIndexOutOfBoundsException'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3463 |
ex := exClass newWith_int: badIndex. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3464 |
^ self throwException: ex |
524 | 3465 |
|
3466 |
"Modified: / 20.11.1998 / 13:27:14 / cg" |
|
3467 |
"Created: / 8.1.1999 / 15:03:59 / cg" |
|
3468 |
! |
|
3469 |
||
3114
ba69147aea97
Better error message for VM-thrown ArrayStoreException.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3112
diff
changeset
|
3470 |
throwArrayStoreException:message |
582 | 3471 |
^ self |
2151 | 3472 |
throwExceptionClassName:'java.lang.ArrayStoreException' |
3114
ba69147aea97
Better error message for VM-thrown ArrayStoreException.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3112
diff
changeset
|
3473 |
withMessage:message |
ba69147aea97
Better error message for VM-thrown ArrayStoreException.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3112
diff
changeset
|
3474 |
|
ba69147aea97
Better error message for VM-thrown ArrayStoreException.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3112
diff
changeset
|
3475 |
"Modified: / 02-06-2014 / 14:21:22 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
581 | 3476 |
! |
3477 |
||
530 | 3478 |
throwClassCastException |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3479 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3480 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3481 |
^ self throwExceptionClassName: 'java.lang.ClassCastException' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3482 |
withMessage: 'cast failed' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3483 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3484 |
"Modified: / 07-01-1998 / 15:25:35 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3485 |
"Created: / 08-01-1999 / 18:55:31 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3486 |
"Modified (format): / 23-10-2011 / 22:33:01 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
530 | 3487 |
! |
3488 |
||
2151 | 3489 |
throwClassFormatError |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3490 |
^ self throwClassFormatError: 'Invalid class format' |
2151 | 3491 |
|
3492 |
"Created: / 04-01-1998 / 22:26:09 / cg" |
|
3493 |
"Modified: / 10-11-1998 / 13:20:31 / cg" |
|
3494 |
"Created: / 08-08-2011 / 17:57:08 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
3495 |
! |
|
3496 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3497 |
throwClassFormatError: message |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3498 |
^ self |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3499 |
throwExceptionClassName:'java.lang.ClassFormatError' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3500 |
withMessage: message |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3501 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3502 |
"Created: / 04-01-1998 / 22:26:09 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3503 |
"Modified: / 10-11-1998 / 13:20:31 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3504 |
"Created: / 27-10-2011 / 16:20:57 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3505 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3506 |
|
253 | 3507 |
throwClassNotFoundException |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3508 |
^ self |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3509 |
throwExceptionClassName:'java.lang.ClassNotFoundException' |
616 | 3510 |
withMessage:'no such class' |
255 | 3511 |
|
253 | 3512 |
"Created: / 4.1.1998 / 22:25:26 / cg" |
255 | 3513 |
"Modified: / 7.1.1998 / 15:25:35 / cg" |
253 | 3514 |
! |
3515 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3516 |
throwClassNotFoundException: className |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3517 |
^ self throwExceptionClassName: 'java.lang.ClassNotFoundException' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3518 |
withMessage: 'no such class: ' , className |
255 | 3519 |
|
253 | 3520 |
"Created: / 4.1.1998 / 22:26:09 / cg" |
429 | 3521 |
"Modified: / 10.11.1998 / 13:20:31 / cg" |
255 | 3522 |
! |
3523 |
||
2908
064418faa2e3
Another pass over Mauve tests.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2875
diff
changeset
|
3524 |
throwCloneNotSupportedException |
064418faa2e3
Another pass over Mauve tests.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2875
diff
changeset
|
3525 |
^ self throwCloneNotSupportedException: 'clone() not supported (object does not implement java.lang.Cloneable)' |
064418faa2e3
Another pass over Mauve tests.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2875
diff
changeset
|
3526 |
|
064418faa2e3
Another pass over Mauve tests.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2875
diff
changeset
|
3527 |
"Created: / 08-11-2013 / 22:38:20 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
064418faa2e3
Another pass over Mauve tests.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2875
diff
changeset
|
3528 |
! |
064418faa2e3
Another pass over Mauve tests.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2875
diff
changeset
|
3529 |
|
064418faa2e3
Another pass over Mauve tests.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2875
diff
changeset
|
3530 |
throwCloneNotSupportedException: message |
064418faa2e3
Another pass over Mauve tests.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2875
diff
changeset
|
3531 |
^ self |
064418faa2e3
Another pass over Mauve tests.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2875
diff
changeset
|
3532 |
throwExceptionClassName:'java.lang.CloneNotSupportedException' |
064418faa2e3
Another pass over Mauve tests.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2875
diff
changeset
|
3533 |
withMessage: message |
064418faa2e3
Another pass over Mauve tests.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2875
diff
changeset
|
3534 |
|
064418faa2e3
Another pass over Mauve tests.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2875
diff
changeset
|
3535 |
"Created: / 08-11-2013 / 22:39:05 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
064418faa2e3
Another pass over Mauve tests.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2875
diff
changeset
|
3536 |
! |
064418faa2e3
Another pass over Mauve tests.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2875
diff
changeset
|
3537 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3538 |
throwDataFormatException: message |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3539 |
^ self |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3540 |
throwExceptionClassName:'java.util.zip.DataFormatException' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3541 |
withMessage: message |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3542 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3543 |
"Created: / 16-08-2012 / 17:55:27 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3544 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3545 |
|
524 | 3546 |
throwDivisionByZeroException |
582 | 3547 |
DivisionByZeroExceptionDebug == true ifTrue:[ |
616 | 3548 |
self halt:'division by zero'. |
582 | 3549 |
]. |
3550 |
^ self |
|
616 | 3551 |
throwExceptionClassName:'java.lang.ArithmeticException' |
3552 |
withMessage:'division by zero' |
|
524 | 3553 |
|
3554 |
"Created: / 8.1.1999 / 14:28:15 / cg" |
|
3555 |
! |
|
3556 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3557 |
throwException: aJavaException |
2151 | 3558 |
<resource: #skipInDebuggersWalkBack> |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3559 |
| con jMsg msg exClass srchCon handlerContext handlerPC method pc hPC handler | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3560 |
ExceptionTrace ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3561 |
| tmpMessage | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3562 |
tmpMessage := aJavaException instVarNamed: 'detailMessage'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3563 |
tmpMessage isNil ifTrue: [ tmpMessage := '' ] ifFalse: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3564 |
tmpMessage := Java as_ST_String: tmpMessage |
652 | 3565 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3566 |
Logger |
2925
a77c05c8cd68
Fix in JavaVM for exception debugging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2921
diff
changeset
|
3567 |
log: 'JAVA: exception: ' , aJavaException class binaryName , ' (' |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3568 |
, tmpMessage , ')' |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
3569 |
severity: Logger severityDEBUG |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3570 |
facility: 'JVM' |
255 | 3571 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3572 |
ExceptionDebug ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3573 |
"/ self internalError:('JAVA: exception: ' , aJavaException class fullName). |
3506 | 3574 |
(ExceptionDebugPatterns isEmptyOrNil |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3575 |
or: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3576 |
ExceptionDebugPatterns |
2925
a77c05c8cd68
Fix in JavaVM for exception debugging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2921
diff
changeset
|
3577 |
anySatisfy: [:pattern | pattern match: aJavaException class binaryName ] |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3578 |
]) |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3579 |
ifTrue: [ |
2975
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
3580 |
ObjectMemory debugBreakPoint3. |
2925
a77c05c8cd68
Fix in JavaVM for exception debugging.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2921
diff
changeset
|
3581 |
self halt: ('JAVA: exceptionDebug: ' , aJavaException class binaryName ) |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3582 |
] |
255 | 3583 |
]. |
3584 |
||
459 | 3585 |
"/ |
3586 |
"/ search stack for a javaContext which handles that exception |
|
3587 |
"/ |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3588 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3589 |
|
2587
b09eaedf206a
Optimization: use Context>>findSpecialHandle:raise: to search for exception handlers.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
3590 |
srchCon := thisContext. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3591 |
[ handlerContext isNil and: [ srchCon notNil ] ] whileTrue: [ |
2587
b09eaedf206a
Optimization: use Context>>findSpecialHandle:raise: to search for exception handlers.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
3592 |
srchCon := srchCon findSpecialHandle:true raise:false. |
b09eaedf206a
Optimization: use Context>>findSpecialHandle:raise: to search for exception handlers.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
3593 |
srchCon notNil ifTrue:[ |
b09eaedf206a
Optimization: use Context>>findSpecialHandle:raise: to search for exception handlers.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
3594 |
(srchCon isJavaContext) ifTrue: [ |
b09eaedf206a
Optimization: use Context>>findSpecialHandle:raise: to search for exception handlers.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
3595 |
method := srchCon method. |
b09eaedf206a
Optimization: use Context>>findSpecialHandle:raise: to search for exception handlers.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
3596 |
method exceptionTable notNil ifTrue:[ |
b09eaedf206a
Optimization: use Context>>findSpecialHandle:raise: to search for exception handlers.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
3597 |
self assert: srchCon isHandleContext. |
b09eaedf206a
Optimization: use Context>>findSpecialHandle:raise: to search for exception handlers.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
3598 |
]. |
b09eaedf206a
Optimization: use Context>>findSpecialHandle:raise: to search for exception handlers.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
3599 |
pc := srchCon pc. |
b09eaedf206a
Optimization: use Context>>findSpecialHandle:raise: to search for exception handlers.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
3600 |
(hPC := method handlerFor: aJavaException at: pc) notNil ifTrue: [ |
b09eaedf206a
Optimization: use Context>>findSpecialHandle:raise: to search for exception handlers.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
3601 |
handlerPC := hPC. |
b09eaedf206a
Optimization: use Context>>findSpecialHandle:raise: to search for exception handlers.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
3602 |
handlerContext := srchCon |
b09eaedf206a
Optimization: use Context>>findSpecialHandle:raise: to search for exception handlers.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
3603 |
]. |
b09eaedf206a
Optimization: use Context>>findSpecialHandle:raise: to search for exception handlers.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
3604 |
] ifFalse:[ |
b09eaedf206a
Optimization: use Context>>findSpecialHandle:raise: to search for exception handlers.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
3605 |
srchCon isHandleContext ifTrue:[ |
b09eaedf206a
Optimization: use Context>>findSpecialHandle:raise: to search for exception handlers.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
3606 |
handler := srchCon receiver |
b09eaedf206a
Optimization: use Context>>findSpecialHandle:raise: to search for exception handlers.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
3607 |
handlerForSignal: aJavaException class context: srchCon originator:thisContext sender. |
b09eaedf206a
Optimization: use Context>>findSpecialHandle:raise: to search for exception handlers.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
3608 |
handler notNil ifTrue:[ |
b09eaedf206a
Optimization: use Context>>findSpecialHandle:raise: to search for exception handlers.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
3609 |
"We have found a Smalltalk handler for Java exception here" |
b09eaedf206a
Optimization: use Context>>findSpecialHandle:raise: to search for exception handlers.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
3610 |
handlerContext := srchCon. |
b09eaedf206a
Optimization: use Context>>findSpecialHandle:raise: to search for exception handlers.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
3611 |
] |
b09eaedf206a
Optimization: use Context>>findSpecialHandle:raise: to search for exception handlers.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
3612 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3613 |
]. |
652 | 3614 |
]. |
459 | 3615 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3616 |
handlerContext isNil ifTrue: [ |
652 | 3617 |
"/ |
3618 |
"/ no JavaHandler ... let smalltalk handle it |
|
3619 |
"/ |
|
3620 |
exClass := aJavaException class. |
|
3121
cc0ea0656186
Fixed bug #77: Ignore unhandled ThreadDeath exceptions.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3114
diff
changeset
|
3621 |
(exClass binaryName == #'java/lang/ThreadDeath') ifTrue: [ |
cc0ea0656186
Fixed bug #77: Ignore unhandled ThreadDeath exceptions.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3114
diff
changeset
|
3622 |
JavaUnhandledThreadDeathError |
cc0ea0656186
Fixed bug #77: Ignore unhandled ThreadDeath exceptions.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3114
diff
changeset
|
3623 |
raiseWith: aJavaException |
cc0ea0656186
Fixed bug #77: Ignore unhandled ThreadDeath exceptions.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3114
diff
changeset
|
3624 |
errorString: msg |
cc0ea0656186
Fixed bug #77: Ignore unhandled ThreadDeath exceptions.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3114
diff
changeset
|
3625 |
in: thisContext sender. |
cc0ea0656186
Fixed bug #77: Ignore unhandled ThreadDeath exceptions.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3114
diff
changeset
|
3626 |
^ self. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3627 |
]. |
2841
6fa1bcf9c997
JavaClass>>#name vs. #binaryName refactoring
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2806
diff
changeset
|
3628 |
msg := 'Java ' , exClass binaryName. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3629 |
jMsg := aJavaException instVarNamed: 'detailMessage'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3630 |
jMsg notNil ifTrue: [ msg := msg , ': ' , (Java as_ST_String: jMsg). ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3631 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3632 |
"/ for our convenience: skip ST contexts |
652 | 3633 |
"/ (i.e. the handler or debugger will see the javaContext first ) |
3634 |
||
3635 |
con := thisContext sender. |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3636 |
[ con isNil or: [ con isJavaContext ] ] whileFalse: [ con := con sender ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3637 |
con isNil ifTrue: [ con := thisContext sender ]. |
2151 | 3638 |
JavaUnhandledExceptionError |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3639 |
raiseWith: aJavaException |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3640 |
errorString: msg |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3641 |
in: con. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3642 |
] ifFalse: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3643 |
handlerContext isJavaContext ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3644 |
"/ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3645 |
"/ found a Java exception handler |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3646 |
"/ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3647 |
handlerContext setPC: handlerPC. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3648 |
handlerContext exceptionArg: aJavaException pc: handlerPC. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3649 |
handlerContext markForException. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3650 |
handlerContext unwindAndRestartForJavaException. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3651 |
self halt: 'should not be reached'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3652 |
] ifFalse:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3653 |
| val | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3654 |
"/ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3655 |
"/ found a Smalltalk exception handler |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3656 |
"/ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3657 |
"/ First, call evaluate the handler (see GenericException>>doCallHandler: |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3658 |
val := handler valueWithOptionalArgument: aJavaException. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3659 |
"handler fall through - is just like a #return:(aHandlerBlock value)" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3660 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3661 |
"Java exceptions cannot be proceed (by design) but they might be |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3662 |
rejected (rethrown) - this is not supported yet - we need |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3663 |
to somehow indicate that (kind of reject token object returned |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3664 |
from handler?)" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3665 |
thisContext evaluateUnwindActionsUpTo:handlerContext. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3666 |
handlerContext return: val. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3667 |
]. |
526 | 3668 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3669 |
Processor activeProcess == JavaScreenUpdaterThread ifTrue: [ self halt ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3670 |
Processor activeProcess == JavaEventQueueThread ifTrue: [ self halt ]. |
526 | 3671 |
Processor activeProcess terminate. |
255 | 3672 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3673 |
" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3674 |
ExceptionTrace := true" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3675 |
|
2151 | 3676 |
"Created: / 07-01-1998 / 15:28:22 / cg" |
3677 |
"Modified: / 24-12-1999 / 02:33:25 / cg" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3678 |
"Modified: / 01-12-2011 / 18:32:58 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
3679 |
"Modified: / 02-03-2015 / 13:56:56 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3680 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3681 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3682 |
throwExceptionClassName: aJavaExceptionClassName withMessage: someMessage |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3683 |
| exClass ex | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3684 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3685 |
exClass := self classForName: aJavaExceptionClassName asSlashedJavaClassName definedBy: nil. |
3667 | 3686 |
exClass isNil ifTrue:[ |
3687 |
self error:'Missing Java Exception Class: ', aJavaExceptionClassName. |
|
3688 |
]. |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3689 |
ex := exClass newWith_String: someMessage. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3690 |
^ self throwException: ex |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3691 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3692 |
"Created: / 07-01-1998 / 15:25:09 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3693 |
"Modified: / 14-01-1998 / 23:38:30 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3694 |
"Modified: / 30-10-2011 / 17:44:56 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3695 |
"Modified: / 02-11-2011 / 16:54:54 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3696 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3697 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3698 |
throwExceptionClassName: aJavaExceptionClassName withMessage: someMessage cause: cause |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3699 |
| exClass ex | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3700 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3701 |
exClass := self classForName: aJavaExceptionClassName asSlashedJavaClassName definedBy: nil. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3702 |
ex := exClass newWith_String: someMessage. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3703 |
ex instVarNamed: #cause put: cause. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3704 |
^ self throwException: ex |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3705 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3706 |
"Created: / 05-07-2012 / 09:01:11 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3707 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3708 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3709 |
throwExceptionForFinallyIn: context |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3710 |
"Evaluates a single finally block by fake-throwing |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3711 |
FinallyToken - only evaluates a finally handler in |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3712 |
given method, senders are not searched" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3713 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3714 |
|method pc handlerPC token returnContext | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3715 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3716 |
self assert: context isJavaContext. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3717 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3718 |
method := context method. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3719 |
pc := context pc. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3720 |
returnContext := thisContext sender sender sender. |
2843
36f000314bcd
Fix in mixed exception handling.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2841
diff
changeset
|
3721 |
|
36f000314bcd
Fix in mixed exception handling.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2841
diff
changeset
|
3722 |
(returnContext receiver class == JavaContext finallyTokenClass and:[returnContext selector == #pass ]) ifTrue:[ |
36f000314bcd
Fix in mixed exception handling.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2841
diff
changeset
|
3723 |
token := returnContext receiver |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3724 |
] ifFalse:[ |
2843
36f000314bcd
Fix in mixed exception handling.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2841
diff
changeset
|
3725 |
token := JavaContext finallyTokenClass new. |
36f000314bcd
Fix in mixed exception handling.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2841
diff
changeset
|
3726 |
returnContext selector == #return: ifTrue:[ |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3727 |
token |
2843
36f000314bcd
Fix in mixed exception handling.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2841
diff
changeset
|
3728 |
context: (returnContext at: 2); "/ context which should return, see GenericException>>return: |
36f000314bcd
Fix in mixed exception handling.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2841
diff
changeset
|
3729 |
selector: #return:; |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3730 |
exception: returnContext receiver; |
2843
36f000314bcd
Fix in mixed exception handling.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2841
diff
changeset
|
3731 |
value: (returnContext argAt:1). |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3732 |
] ifFalse:[ |
2843
36f000314bcd
Fix in mixed exception handling.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2841
diff
changeset
|
3733 |
returnContext selector == #return ifTrue:[ |
36f000314bcd
Fix in mixed exception handling.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2841
diff
changeset
|
3734 |
token |
36f000314bcd
Fix in mixed exception handling.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2841
diff
changeset
|
3735 |
context: (returnContext at: 1); "/ context which should return, see GenericException>>return |
36f000314bcd
Fix in mixed exception handling.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2841
diff
changeset
|
3736 |
selector: #return; |
36f000314bcd
Fix in mixed exception handling.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2841
diff
changeset
|
3737 |
exception: returnContext receiver; |
36f000314bcd
Fix in mixed exception handling.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2841
diff
changeset
|
3738 |
value: (returnContext at: 2). "/ value which should be returned, see GenericException>>return |
36f000314bcd
Fix in mixed exception handling.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2841
diff
changeset
|
3739 |
] ifFalse:[ |
36f000314bcd
Fix in mixed exception handling.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2841
diff
changeset
|
3740 |
self error:'Unhandled case, inform libjava developers (JV in particular)' . |
36f000314bcd
Fix in mixed exception handling.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2841
diff
changeset
|
3741 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3742 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3743 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3744 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3745 |
handlerPC := method handlerFor: nil at: pc. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3746 |
handlerPC isNil ifTrue:[ ^ self ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3747 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3748 |
context setPC: handlerPC. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3749 |
context exceptionArg: token pc: handlerPC. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3750 |
context markForException. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3751 |
context restart. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3752 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3753 |
self halt: 'should not be reached'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3754 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3755 |
"Created: / 03-04-2012 / 16:56:07 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2843
36f000314bcd
Fix in mixed exception handling.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2841
diff
changeset
|
3756 |
"Modified: / 10-10-2013 / 10:03:39 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
255 | 3757 |
! |
3758 |
||
2151 | 3759 |
throwExceptionInInitializerError:className |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3760 |
^ self |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3761 |
throwExceptionClassName:'java.lang.ExceptionInInitializerError' |
2151 | 3762 |
withMessage:'error when initializing class: ' , className |
3763 |
||
3764 |
"Created: / 24-11-2010 / 09:23:45 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
3765 |
! |
|
3766 |
||
3767 |
throwFileNotFoundException: message |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3768 |
^ self |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3769 |
throwExceptionClassName:'java.io.FileNotFoundException' |
2151 | 3770 |
withMessage: message |
3771 |
||
3772 |
"Created: / 04-01-1998 / 22:26:09 / cg" |
|
3773 |
"Modified: / 10-11-1998 / 13:20:31 / cg" |
|
3774 |
"Created: / 10-08-2011 / 14:19:10 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
3775 |
! |
|
3776 |
||
255 | 3777 |
throwIOExceptionWithMessage:message |
584 | 3778 |
IOExceptionDebug == true ifTrue:[ |
616 | 3779 |
self halt:'IO Exception'. |
584 | 3780 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3781 |
^ self |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3782 |
throwExceptionClassName:'java.io.IOException' |
616 | 3783 |
withMessage:message |
255 | 3784 |
|
3785 |
"Created: / 7.1.1998 / 10:34:24 / cg" |
|
3786 |
"Modified: / 7.1.1998 / 15:26:25 / cg" |
|
3787 |
! |
|
3788 |
||
2151 | 3789 |
throwIllegalAccessError |
3790 |
^ self throwExceptionClassName: 'java.lang.IllegalAccessError' |
|
3791 |
withMessage: 'illegal access' |
|
3792 |
||
3793 |
"Created: / 13-04-2011 / 23:07:54 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
|
3794 |
! |
|
3795 |
||
261 | 3796 |
throwIllegalAccessException |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3797 |
^ self |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3798 |
throwExceptionClassName:'java.lang.IllegalAccessException' |
616 | 3799 |
withMessage:'illegal access' |
261 | 3800 |
|
3801 |
"Modified: / 7.1.1998 / 15:25:35 / cg" |
|
3802 |
"Created: / 14.1.1998 / 23:13:44 / cg" |
|
3803 |
! |
|
3804 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3805 |
throwIllegalArgumentException: message |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3806 |
^ self |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3807 |
throwExceptionClassName:'java.lang.IllegalArgumentException' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3808 |
withMessage: 'illegal argument: ', message |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3809 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3810 |
"Modified: / 07-01-1998 / 15:25:35 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3811 |
"Created: / 14-01-1998 / 23:13:44 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3812 |
"Created: / 07-09-2011 / 14:18:17 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3813 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3814 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3815 |
throwIllegalMonitorStateException: message |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3816 |
self throwExceptionClassName: 'java.lang.IllegalMonitorStateException' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3817 |
withMessage: message. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3818 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3819 |
"Created: / 29-11-2011 / 14:21:31 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3820 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3821 |
|
2151 | 3822 |
throwIncompatibleClassChangeError |
3823 |
^ self throwExceptionClassName: 'java.lang.IncompatibleClassChangeError' |
|
3824 |
withMessage: 'illegal change'. |
|
3825 |
||
3826 |
"Created: / 11-04-2011 / 20:03:21 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
|
3827 |
! |
|
3828 |
||
261 | 3829 |
throwInstantiationException |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3830 |
^ self |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3831 |
throwExceptionClassName:'java.lang.InstantiationException' |
616 | 3832 |
withMessage:'cannot instantiate' |
261 | 3833 |
|
3834 |
"Modified: / 7.1.1998 / 15:25:35 / cg" |
|
3835 |
"Created: / 14.1.1998 / 23:15:01 / cg" |
|
3836 |
! |
|
3837 |
||
3838 |
throwInstantiationExceptionFor:aJavaClass |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3839 |
^ self |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3840 |
throwExceptionClassName:'java.lang.InstantiationException' |
691 | 3841 |
withMessage:('cannot instantiate: ' , aJavaClass javaName) |
261 | 3842 |
|
3843 |
"Modified: / 7.1.1998 / 15:25:35 / cg" |
|
3844 |
"Created: / 14.1.1998 / 23:17:02 / cg" |
|
3845 |
! |
|
3846 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3847 |
throwInterruptedException: message |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3848 |
^ self throwExceptionClassName: 'java.lang.InterruptedException' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3849 |
withMessage:message |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3850 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3851 |
"Created: / 30-11-2011 / 12:23:44 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3852 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3853 |
|
2678
c865275e48a7
Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2580
diff
changeset
|
3854 |
throwInterruptedIOException: message |
c865275e48a7
Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2580
diff
changeset
|
3855 |
^ self throwExceptionClassName: 'java.io.InterruptedIOException' withMessage:message |
c865275e48a7
Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2580
diff
changeset
|
3856 |
|
c865275e48a7
Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2580
diff
changeset
|
3857 |
"Created: / 15-08-2013 / 21:36:20 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
c865275e48a7
Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2580
diff
changeset
|
3858 |
! |
c865275e48a7
Updated to match Mercurial revision a00302fe5083 with two tweaks:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2580
diff
changeset
|
3859 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3860 |
throwInvocationTargetException: message target: target |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3861 |
| exClass ex | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3862 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3863 |
exClass := self classForName: #'java/lang/reflect/InvocationTargetException' definedBy: nil. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3864 |
ex := exClass newWith_String: message. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3865 |
ex instVarNamed: #target put: target. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3866 |
^ self throwException: ex |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3867 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3868 |
"Created: / 05-07-2012 / 17:48:53 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3869 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3870 |
|
2151 | 3871 |
throwLinkageError: message |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3872 |
^ self |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3873 |
throwExceptionClassName:'java.lang.LinkageError' |
2151 | 3874 |
withMessage: message |
3875 |
||
3876 |
"Modified: / 10-11-1998 / 13:20:31 / cg" |
|
3877 |
"Created: / 26-11-2010 / 11:26:02 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
3878 |
! |
|
3879 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3880 |
throwNegativeArraySizeException: size |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3881 |
^ self |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3882 |
throwExceptionClassName: 'java.lang.NegativeArraySizeException' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3883 |
withMessage: 'negative array size: ' , size printString |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3884 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3885 |
"Created: / 13-05-2012 / 14:46:40 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3886 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3887 |
|
2151 | 3888 |
throwNoSuchFieldException |
3889 |
^ self throwExceptionClassName: 'java.lang.NoSuchFieldError' |
|
3890 |
withMessage: 'looking up a field failed'. |
|
3891 |
||
3892 |
"Created: / 13-04-2011 / 12:16:36 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
|
3893 |
! |
|
3894 |
||
3895 |
throwNoSuchMethodError |
|
3896 |
^ self throwExceptionClassName: 'java.lang.NoSuchMethodError' |
|
3897 |
withMessage: 'looking up a method failed'. |
|
3898 |
||
3899 |
"Created: / 11-04-2011 / 20:33:19 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
|
3900 |
! |
|
3901 |
||
255 | 3902 |
throwNullPointerException |
2515
bcfe9f4dca6b
Improvements in JavaCompiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2457
diff
changeset
|
3903 |
self throwNullPointerException:'null pointer' |
2151 | 3904 |
|
3905 |
"Created: / 09-01-1998 / 02:26:08 / cg" |
|
3906 |
"Modified: / 28-01-1998 / 02:30:09 / cg" |
|
2515
bcfe9f4dca6b
Improvements in JavaCompiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2457
diff
changeset
|
3907 |
"Modified: / 15-04-2013 / 21:18:04 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
255 | 3908 |
! |
3909 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3910 |
throwNullPointerException:message |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3911 |
NullPointerExceptionDebug == true ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3912 |
self halt: 'Null Pointer exception'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3913 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3914 |
^ self throwExceptionClassName: 'java.lang.NullPointerException' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3915 |
withMessage: message |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3916 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3917 |
"Created: / 09-01-1998 / 02:26:08 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3918 |
"Modified: / 28-01-1998 / 02:30:09 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3919 |
"Modified: / 13-08-2011 / 01:10:42 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3920 |
"Created: / 09-12-2011 / 11:13:40 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3921 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3922 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3923 |
throwNumberFormatException |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3924 |
^ self |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3925 |
throwExceptionClassName:'java.lang.NumberFormatException' |
616 | 3926 |
withMessage:'bad number format' |
255 | 3927 |
|
3928 |
"Modified: / 7.1.1998 / 15:25:35 / cg" |
|
3929 |
"Created: / 11.1.1998 / 16:08:22 / cg" |
|
2151 | 3930 |
! |
3931 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3932 |
throwOutOfMemoryError |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3933 |
^ self |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3934 |
throwExceptionClassName:'java.lang.OutOfMemoryError' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3935 |
withMessage:'Oops, out of memory!!' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3936 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3937 |
"Created: / 04-01-1998 / 22:26:09 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3938 |
"Modified: / 10-11-1998 / 13:20:31 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3939 |
"Created: / 30-08-2011 / 09:23:42 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3940 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3941 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3942 |
throwSecurityException |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3943 |
JavaClassReader classLoaderQuerySignal |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3944 |
answer: nil |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3945 |
do: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3946 |
^ self throwExceptionClassName: 'java.lang.SecurityException' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3947 |
withMessage: 'trying to load class from java.lang using different class loader?' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3948 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3949 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3950 |
"Created: / 01-11-2011 / 15:55:45 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3951 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3952 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3953 |
throwSecurityExceptionWith: message |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3954 |
JavaClassReader classLoaderQuerySignal answer: nil |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3955 |
do: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3956 |
^ self throwExceptionClassName: 'java.lang.SecurityException' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3957 |
withMessage: 'trying to load class from java.lang: ' , message. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3958 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3959 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3960 |
"Created: / 01-11-2011 / 16:28:51 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3961 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3962 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3963 |
throwSocketException: message |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3964 |
JavaClassReader classLoaderQuerySignal answer: nil |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3965 |
do: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3966 |
^ self throwExceptionClassName: 'java.net.SocketException' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3967 |
withMessage: message |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3968 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3969 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3970 |
"Created: / 01-11-2011 / 16:28:51 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3971 |
"Created: / 03-11-2011 / 23:31:18 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3972 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3973 |
|
2151 | 3974 |
throwZipException |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3975 |
^ self throwZipException:'error in opening zip file'. |
2151 | 3976 |
|
3977 |
"Created: / 27-03-2011 / 16:25:43 / 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:
2159
diff
changeset
|
3978 |
"Modified: / 20-07-2012 / 19:15:39 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3979 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3980 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3981 |
throwZipException: message |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3982 |
^ self throwExceptionClassName: 'java.util.zip.ZipException' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3983 |
withMessage: 'error in opening zip file'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3984 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3985 |
"Created: / 20-07-2012 / 19:15:22 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
253 | 3986 |
! ! |
3987 |
||
3988 |
!JavaVM class methodsFor:'helpers - io'! |
|
3989 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3990 |
commonOpenStreamUsing: aBlock |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3991 |
"Helper for opening a stream. Catches 'too many files' open error |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3992 |
and tries to GC to cleanup if necessary" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3993 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3994 |
| stream retry | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3995 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3996 |
retry := false. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3997 |
[ stream := aBlock value ] on:OpenError do:[:ex| |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3998 |
(ex errorCode) == (OperatingSystem errorNumberFor:#EMFILE) ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
3999 |
"Worst case, try to cleanup" |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
4000 |
Logger log: 'maximum number of open files reached, forcing finalization...' severity: Logger severityWARN facility: #JVM. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4001 |
[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4002 |
FinalizationLobby finalizeNow. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4003 |
Delay waitForSeconds: 5. "/Give Java finalization thread a chance to clean up |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4004 |
ObjectMemory garbageCollect. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4005 |
retry := true. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4006 |
JavaVM performance printOpenExternalStreamsOn: Stderr. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4007 |
] on: Error do:[:ex| |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4008 |
Logger log: 'failed to force finalization: ', ex description severity: #error facility: #JVM |
2151 | 4009 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4010 |
] ifFalse:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4011 |
ex pass. |
2151 | 4012 |
]. |
307 | 4013 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4014 |
retry ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4015 |
stream := aBlock value. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4016 |
Logger log: 'good, forced finalization solved the problem' severity: #info facility: #JVM |
2151 | 4017 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4018 |
^stream |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4019 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4020 |
"Created: / 23-07-2012 / 19:33:02 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4021 |
"Modified: / 14-08-2012 / 02:25:06 / jv" |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
4022 |
"Modified: / 02-03-2015 / 14:00:43 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2151 | 4023 |
! ! |
4024 |
||
4025 |
!JavaVM class methodsFor:'helpers - reflection'! |
|
4026 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4027 |
classForJavaClassObject:aJavaClassObject |
2151 | 4028 |
"given java.lang.class instance, return the real class for it." |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4029 |
|
2151 | 4030 |
^ self reflection classForJavaClassObject:aJavaClassObject |
4031 |
||
4032 |
"Created: / 23-01-1998 / 17:44:09 / cg" |
|
4033 |
"Modified: / 03-02-2011 / 21:33:14 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
4034 |
"Modified: / 09-02-2011 / 01:02:17 / Marcel Hlopko <hlopik@gmail.com>" |
|
4035 |
! |
|
4036 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4037 |
javaClassObjectForClass: aClass |
2151 | 4038 |
"given a real class, return the corresponding java.lang.class |
4039 |
instance for it." |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4040 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4041 |
"/ | class | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4042 |
"/ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4043 |
"/ "find reflection of StClass in the Java World" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4044 |
"/ (JavaObjectDictionary new hasReflection: aClass name) ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4045 |
"/ class := JavaObjectDictionary new reflectionOf: aClass name |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4046 |
"/ ] ifFalse: [ class := aClass. ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4047 |
^ self reflection javaClassObjectForClass: aClass. |
2151 | 4048 |
|
4049 |
"Created: / 23-01-1998 / 17:43:38 / cg" |
|
4050 |
"Modified: / 05-12-1998 / 15:29:32 / cg" |
|
4051 |
"Modified: / 17-01-2011 / 19:24:22 / kursjan <kursjan@fit.cvut.cz>" |
|
4052 |
"Modified: / 28-01-2011 / 14:31:25 / Marcel Hlopko <hlopik@gmail.com>" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4053 |
"Modified: / 31-07-2012 / 00:49:00 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4054 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4055 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4056 |
javaConstructorObjectForMethod:method |
2151 | 4057 |
"given a real method, return the corresponding java.lang.reflect.Constructor |
4058 |
instance for it." |
|
4059 |
self breakPoint:#mh info:'refactor my sender to call reflection directly'. |
|
4060 |
^ self reflection javaConstructorObjectForMethod: method. |
|
4061 |
||
4062 |
"Modified: / 09-02-2011 / 00:58:09 / Marcel Hlopko <hlopik@gmail.com>" |
|
4063 |
! |
|
4064 |
||
3196
d617b4590431
(Class reading) optimization [2/4]: rewrite slow ifNil:... by faster isNil ifTrue:...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3122
diff
changeset
|
4065 |
javaFieldObjectForField:aJavaField in:aJavaLangClass |
2151 | 4066 |
"given a java field, return the corresponding java.lang.Field |
4067 |
instance for it." |
|
4068 |
" |
|
4069 |
See OpenJDK7 source: |
|
4070 |
jdk7/hotspot/src/share/vm/runtime/reflection.cpp, |
|
4071 |
oop Reflection::new_field" |
|
3196
d617b4590431
(Class reading) optimization [2/4]: rewrite slow ifNil:... by faster isNil ifTrue:...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3122
diff
changeset
|
4072 |
|
d617b4590431
(Class reading) optimization [2/4]: rewrite slow ifNil:... by faster isNil ifTrue:...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3122
diff
changeset
|
4073 |
| field clazz nm slot type modifiers | |
2151 | 4074 |
|
4075 |
clazz := aJavaLangClass. |
|
3196
d617b4590431
(Class reading) optimization [2/4]: rewrite slow ifNil:... by faster isNil ifTrue:...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3122
diff
changeset
|
4076 |
nm := self reflection javaStringObjectForString:aJavaField name |
d617b4590431
(Class reading) optimization [2/4]: rewrite slow ifNil:... by faster isNil ifTrue:...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3122
diff
changeset
|
4077 |
interned:true. |
2151 | 4078 |
slot := aJavaField index. |
3196
d617b4590431
(Class reading) optimization [2/4]: rewrite slow ifNil:... by faster isNil ifTrue:...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3122
diff
changeset
|
4079 |
type := self javaClassObjectForClass:aJavaField typeClass. |
2151 | 4080 |
modifiers := aJavaField accessFlags. |
3196
d617b4590431
(Class reading) optimization [2/4]: rewrite slow ifNil:... by faster isNil ifTrue:...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3122
diff
changeset
|
4081 |
field := (self classForName:'java.lang.reflect.Field') new. |
2151 | 4082 |
field |
3196
d617b4590431
(Class reading) optimization [2/4]: rewrite slow ifNil:... by faster isNil ifTrue:...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3122
diff
changeset
|
4083 |
instVarNamed:#clazz put:clazz; |
d617b4590431
(Class reading) optimization [2/4]: rewrite slow ifNil:... by faster isNil ifTrue:...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3122
diff
changeset
|
4084 |
instVarNamed:#name put:nm; |
d617b4590431
(Class reading) optimization [2/4]: rewrite slow ifNil:... by faster isNil ifTrue:...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3122
diff
changeset
|
4085 |
instVarNamed:#slot put:slot; |
d617b4590431
(Class reading) optimization [2/4]: rewrite slow ifNil:... by faster isNil ifTrue:...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3122
diff
changeset
|
4086 |
instVarNamed:#type put:type; |
d617b4590431
(Class reading) optimization [2/4]: rewrite slow ifNil:... by faster isNil ifTrue:...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3122
diff
changeset
|
4087 |
instVarNamed:#modifiers put:modifiers; |
2151 | 4088 |
yourself. |
3196
d617b4590431
(Class reading) optimization [2/4]: rewrite slow ifNil:... by faster isNil ifTrue:...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3122
diff
changeset
|
4089 |
aJavaField annotations notNil ifTrue:[ |
d617b4590431
(Class reading) optimization [2/4]: rewrite slow ifNil:... by faster isNil ifTrue:...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3122
diff
changeset
|
4090 |
field instVarNamed:#annotations |
d617b4590431
(Class reading) optimization [2/4]: rewrite slow ifNil:... by faster isNil ifTrue:...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3122
diff
changeset
|
4091 |
put:aJavaField annotations runtimeVisible rawAnnotations |
d617b4590431
(Class reading) optimization [2/4]: rewrite slow ifNil:... by faster isNil ifTrue:...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3122
diff
changeset
|
4092 |
]. |
2151 | 4093 |
^ field. |
4094 |
||
4095 |
"Modified: / 05-12-1998 / 15:29:32 / cg" |
|
4096 |
"Created: / 22-11-2010 / 17:01:33 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
4097 |
"Modified: / 09-02-2011 / 01:06:20 / Marcel Hlopko <hlopik@gmail.com>" |
|
4098 |
"Modified: / 01-04-2011 / 12:11:11 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
|
4099 |
"Modified: / 25-04-2011 / 20:23:16 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
4100 |
! |
|
4101 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4102 |
javaMethodObjectForMethod:method |
2151 | 4103 |
"given a real method, return the corresponding java.lang.reflect.Constructor |
4104 |
instance for it." |
|
4105 |
||
4106 |
^ self reflection javaMethodObjectForMethod:method. |
|
4107 |
||
4108 |
"Modified: / 28-02-2011 / 17:08:36 / Marcel Hlopko <hlopik@gmail.com>" |
|
4109 |
! |
|
4110 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4111 |
methodForJavaConstructorObject:constructor |
2151 | 4112 |
"given a java.lang.reflect.Constructor, return the corresponding method |
4113 |
it." |
|
4114 |
self breakPoint:#mh info: 'refactor my sender to call reflection directly'. |
|
4115 |
^ self reflection methodForJavaConstructorObject: constructor. |
|
4116 |
||
4117 |
"Modified: / 09-02-2011 / 00:59:43 / Marcel Hlopko <hlopik@gmail.com>" |
|
4118 |
! |
|
4119 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4120 |
methodForJavaMethodObject:aJavaMethodObject |
2151 | 4121 |
" |
4122 |
Given an instance of java.lang.reflect.Method, answers |
|
4123 |
real method associated with it." |
|
4124 |
^ self reflection methodForJavaMethodObject:aJavaMethodObject. |
|
4125 |
||
4126 |
"Modified: / 07-02-2011 / 09:50:05 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
4127 |
"Modified: / 28-02-2011 / 16:58:05 / Marcel Hlopko <hlopik@gmail.com>" |
|
4128 |
! ! |
|
4129 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4130 |
!JavaVM class methodsFor:'monitors'! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4131 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4132 |
getJavaMonitorFor:someObject |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4133 |
| mon | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4134 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4135 |
"/ JV@2012-04-13: Removed the critical section - this method should be called |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4136 |
"/ only when interrupts are blocked |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4137 |
"/ LockTableAccess |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4138 |
"/ critical: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4139 |
mon := LockTable at:someObject ifAbsent:nil. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4140 |
mon isNil ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4141 |
LockTable at:someObject put:(mon := JavaMonitor for:someObject) |
2151 | 4142 |
]. |
4143 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4144 |
"/ ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4145 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4146 |
^ mon |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4147 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4148 |
"Created: / 02-01-1998 / 19:01:52 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4149 |
"Modified: / 30-11-2011 / 20:40:26 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4150 |
"Modified: / 13-04-2012 / 00:44:01 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4151 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4152 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4153 |
monitorEnter:someObject in:aJavaContext |
2955
55692310d4e6
Fix in JavaVM>>monitorEnter:in: inflate thinlock using #getMonitor.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2945
diff
changeset
|
4154 |
| thisProcess wasBlocked | |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4155 |
|
2457
0cef0ce3d1ac
Make JavaContext>>acquiredMonitors obsolete.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2429
diff
changeset
|
4156 |
"/ Following assesrtion no longer holds as native methods are not |
0cef0ce3d1ac
Make JavaContext>>acquiredMonitors obsolete.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2429
diff
changeset
|
4157 |
"/ JavaMethods (they are smalltalk trampolines) and thus their |
0cef0ce3d1ac
Make JavaContext>>acquiredMonitors obsolete.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2429
diff
changeset
|
4158 |
"/ activation does not create Java context |
0cef0ce3d1ac
Make JavaContext>>acquiredMonitors obsolete.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2429
diff
changeset
|
4159 |
|
0cef0ce3d1ac
Make JavaContext>>acquiredMonitors obsolete.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2429
diff
changeset
|
4160 |
"/ self assert:(aJavaContext isNil or:[ aJavaContext isJavaContext ]). |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4161 |
someObject isNil ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4162 |
self throwNullPointerException. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4163 |
self breakPoint:#mh. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4164 |
^ self |
2151 | 4165 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4166 |
thisProcess := Processor activeProcess. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4167 |
MonitorTrace ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4168 |
Logger |
2457
0cef0ce3d1ac
Make JavaContext>>acquiredMonitors obsolete.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2429
diff
changeset
|
4169 |
log:('MONENTER: entering monitor for %1 in %2 thread %3' |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4170 |
bindWith:(self monitorFriendlyPrintStringOf:someObject) |
2457
0cef0ce3d1ac
Make JavaContext>>acquiredMonitors obsolete.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2429
diff
changeset
|
4171 |
with: aJavaContext selector |
0cef0ce3d1ac
Make JavaContext>>acquiredMonitors obsolete.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2429
diff
changeset
|
4172 |
with: thisProcess id) |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
4173 |
severity:Logger severityTRACE |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4174 |
facility:#JVM. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4175 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4176 |
wasBlocked := OperatingSystem blockInterrupts. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4177 |
|
2955
55692310d4e6
Fix in JavaVM>>monitorEnter:in: inflate thinlock using #getMonitor.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2945
diff
changeset
|
4178 |
"/ Ensure any eventual thinlock is inflated here... |
55692310d4e6
Fix in JavaVM>>monitorEnter:in: inflate thinlock using #getMonitor.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2945
diff
changeset
|
4179 |
someObject getJavaMonitor. |
2151 | 4180 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4181 |
"/ Now, we're sure that the lock is fat JavaMonitor, enter it |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4182 |
self enterMonitor:someObject ofProcess:thisProcess. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4183 |
"/ aJavaContext notNil ifTrue:[aJavaContext addMonitor:someObject]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4184 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4185 |
wasBlocked ifFalse:[ OperatingSystem unblockInterrupts ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4186 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4187 |
MonitorTrace ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4188 |
Logger |
2457
0cef0ce3d1ac
Make JavaContext>>acquiredMonitors obsolete.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2429
diff
changeset
|
4189 |
log:('MONENTER: monitor entered for %1 in %2 thread %3' |
0cef0ce3d1ac
Make JavaContext>>acquiredMonitors obsolete.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2429
diff
changeset
|
4190 |
bindWith:(self monitorFriendlyPrintStringOf:someObject) |
0cef0ce3d1ac
Make JavaContext>>acquiredMonitors obsolete.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2429
diff
changeset
|
4191 |
with: aJavaContext selector |
0cef0ce3d1ac
Make JavaContext>>acquiredMonitors obsolete.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2429
diff
changeset
|
4192 |
with: thisProcess id) |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4193 |
severity:#debug |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4194 |
facility:#JVM. |
2151 | 4195 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4196 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4197 |
"Created: / 08-11-2011 / 15:15:43 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
4198 |
"Modified: / 02-03-2015 / 13:59:01 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4199 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4200 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4201 |
monitorExit: someObject in: aJavaContext |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4202 |
| thisProcess wasBlocked| |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4203 |
"/ self assert: (aJavaContext isJavaContext). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4204 |
someObject isNil ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4205 |
self throwNullPointerException. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4206 |
self breakPoint: #mh. |
2151 | 4207 |
^ self |
4208 |
]. |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4209 |
thisProcess := Processor activeProcess. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4210 |
MonitorTrace ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4211 |
Logger |
2457
0cef0ce3d1ac
Make JavaContext>>acquiredMonitors obsolete.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2429
diff
changeset
|
4212 |
log: ('MONEXIT: leaving monitor for %1 in %2 thread %3' |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4213 |
bindWith: (self monitorFriendlyPrintStringOf: someObject) |
2457
0cef0ce3d1ac
Make JavaContext>>acquiredMonitors obsolete.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2429
diff
changeset
|
4214 |
with: aJavaContext selector |
0cef0ce3d1ac
Make JavaContext>>acquiredMonitors obsolete.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2429
diff
changeset
|
4215 |
with: thisProcess id) |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
4216 |
severity: Logger severityTRACE |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4217 |
facility: #JVM. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4218 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4219 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4220 |
wasBlocked := OperatingSystem blockInterrupts. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4221 |
self leaveMonitor: someObject ofProcess: thisProcess. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4222 |
"/ aJavaContext notNil ifTrue:[aJavaContext removeMonitor: someObject]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4223 |
wasBlocked ifFalse:[OperatingSystem unblockInterrupts]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4224 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4225 |
MonitorTrace ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4226 |
Logger |
2457
0cef0ce3d1ac
Make JavaContext>>acquiredMonitors obsolete.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2429
diff
changeset
|
4227 |
log: ('MONEXIT: monitor left for %1 in %2 thread %3' |
0cef0ce3d1ac
Make JavaContext>>acquiredMonitors obsolete.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2429
diff
changeset
|
4228 |
bindWith: (self monitorFriendlyPrintStringOf: someObject) |
0cef0ce3d1ac
Make JavaContext>>acquiredMonitors obsolete.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2429
diff
changeset
|
4229 |
with: aJavaContext selector |
0cef0ce3d1ac
Make JavaContext>>acquiredMonitors obsolete.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2429
diff
changeset
|
4230 |
with: thisProcess id) |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4231 |
severity: #info |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4232 |
facility: #JVM. |
2151 | 4233 |
]. |
4234 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4235 |
"Created: / 08-11-2011 / 15:17:03 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
4236 |
"Modified: / 02-03-2015 / 13:58:48 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4237 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4238 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4239 |
notify: obj |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4240 |
| mon thisProcess wasBlocked| |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4241 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4242 |
wasBlocked := OperatingSystem blockInterrupts. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4243 |
thisProcess := Processor activeProcess. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4244 |
mon := obj getJavaMonitor. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4245 |
(mon isOwnedBy: thisProcess) ifFalse: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4246 |
wasBlocked ifFalse:[OperatingSystem unblockInterrupts]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4247 |
self |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4248 |
throwIllegalMonitorStateException: 'monitor was not owned when called notify'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4249 |
^self. |
2151 | 4250 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4251 |
mon notify. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4252 |
wasBlocked ifFalse:[OperatingSystem unblockInterrupts]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4253 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4254 |
"Created: / 22-11-2011 / 13:26:24 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4255 |
"Modified: / 26-08-2012 / 18:39:34 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4256 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4257 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4258 |
notifyAll: obj |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4259 |
| mon thisProcess wasBlocked| |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4260 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4261 |
wasBlocked := OperatingSystem blockInterrupts. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4262 |
thisProcess := Processor activeProcess. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4263 |
mon := obj getJavaMonitor. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4264 |
(mon isOwnedBy: thisProcess) ifFalse: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4265 |
wasBlocked ifFalse:[OperatingSystem unblockInterrupts]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4266 |
self |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4267 |
throwIllegalMonitorStateException: 'monitor was not owned when called notify'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4268 |
^self |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4269 |
|
2151 | 4270 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4271 |
mon notifyAll. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4272 |
wasBlocked ifFalse:[OperatingSystem unblockInterrupts]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4273 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4274 |
"Created: / 22-11-2011 / 13:26:30 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4275 |
"Modified: / 26-08-2012 / 18:39:47 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4276 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4277 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4278 |
releaseMonitorsOfUnwindingContext: aJavaContext |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4279 |
"Forcibly releases all monitors acquired by given context. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4280 |
Use by unwind handlers" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4281 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4282 |
| thisProcess wasBlocked receiver lockWord | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4283 |
MonitorTrace ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4284 |
Logger |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4285 |
log: ('UNWIND HANDLER: force-leaving ',aJavaContext acquiredMonitors size printString,'monitors acquired by: ' , aJavaContext printString ) |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
4286 |
severity: Logger severityDEBUG |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4287 |
facility: #JVM. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4288 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4289 |
thisProcess := Processor activeProcess. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4290 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4291 |
wasBlocked := OperatingSystem blockInterrupts. |
2457
0cef0ce3d1ac
Make JavaContext>>acquiredMonitors obsolete.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2429
diff
changeset
|
4292 |
"/self assert: aJavaContext method isSynchronized. |
0cef0ce3d1ac
Make JavaContext>>acquiredMonitors obsolete.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2429
diff
changeset
|
4293 |
receiver := aJavaContext receiver. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4294 |
receiver notNil ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4295 |
lockWord := receiver getJavaLockWord. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4296 |
] ifFalse:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4297 |
lockWord := 0. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4298 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4299 |
%{ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4300 |
if (lockWord != __MKINT(0)) { |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4301 |
__monitorExit(receiver); |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4302 |
} |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4303 |
%}. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4304 |
wasBlocked ifFalse:[OperatingSystem unblockInterrupts]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4305 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4306 |
MonitorTrace ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4307 |
Logger |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4308 |
log: ('UNWIND HANDLER: leftover monitors left for ' , aJavaContext printString ) |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4309 |
severity: #info |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4310 |
facility: #JVM. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4311 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4312 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4313 |
"Created: / 05-04-2012 / 11:35:42 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
4314 |
"Modified: / 02-03-2015 / 13:57:34 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4315 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4316 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4317 |
sleepForTimeout: tmo state: state |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4318 |
"wait" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4319 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4320 |
| thisProcess | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4321 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4322 |
thisProcess := Processor activeProcess. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4323 |
thisProcess isInterrupted ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4324 |
thisProcess clearInterrupted. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4325 |
self throwInterruptedException: 'process was interrupted before/during sleep !!?' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4326 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4327 |
thisProcess state: state. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4328 |
(Delay forMilliseconds: tmo) waitWithState: state. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4329 |
thisProcess isInterrupted ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4330 |
thisProcess clearInterrupted. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4331 |
self throwInterruptedException: 'process was interrupted before/during sleep !!?' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4332 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4333 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4334 |
"Created: / 30-12-1998 / 19:19:35 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4335 |
"Modified: / 08-01-1999 / 17:29:24 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4336 |
"Created: / 30-11-2011 / 11:04:27 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4337 |
"Modified (format): / 26-08-2012 / 18:40:26 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4338 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4339 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4340 |
waitOn: obj forTimeout: tmo state: state |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4341 |
"wait" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4342 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4343 |
| wasBlocked thisProcess mon | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4344 |
thisProcess := Processor activeProcess. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4345 |
thisProcess isInterrupted ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4346 |
thisProcess clearInterrupted. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4347 |
self |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4348 |
throwInterruptedException: 'process was interrupted before/during wait !!?' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4349 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4350 |
wasBlocked := OperatingSystem blockInterrupts. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4351 |
mon := obj getJavaMonitor. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4352 |
(mon isOwnedBy: thisProcess) ifFalse: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4353 |
wasBlocked ifFalse: [ OperatingSystem unblockInterrupts ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4354 |
self throwIllegalMonitorStateException: 'monitor was not owned on wait by ' , thisProcess printString. |
2151 | 4355 |
^self. |
4356 |
]. |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4357 |
state notNil ifTrue: [ thisProcess state: state ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4358 |
wasBlocked ifFalse: [ OperatingSystem unblockInterrupts ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4359 |
mon waitForMilliseconds: tmo. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4360 |
thisProcess isInterrupted ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4361 |
thisProcess clearInterrupted. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4362 |
self |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4363 |
throwInterruptedException: 'process was interrupted before/during wait !!?' |
2151 | 4364 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4365 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4366 |
"Created: / 30-12-1998 / 19:19:35 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4367 |
"Modified: / 08-01-1999 / 17:29:24 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4368 |
"Created: / 22-11-2011 / 13:20:42 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4369 |
"Modified: / 26-08-2012 / 18:40:04 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4370 |
! ! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4371 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4372 |
!JavaVM class methodsFor:'monitors-internal'! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4373 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4374 |
acquireMonitor: obj ofProcess: aProcess |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4375 |
"Acquire* (stay in the queue and get it) monitor. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4376 |
*leave is the word used by jvm spec" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4377 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4378 |
| mon | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4379 |
mon := obj getJavaMonitor. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4380 |
self assert: mon notNil. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4381 |
MonitorTrace ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4382 |
Logger |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4383 |
log: ('acquiring monitor %1 owned by thread: %2' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4384 |
bindWith: (self monitorFriendlyPrintStringOf: obj) |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4385 |
with: aProcess name) |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
4386 |
severity: Logger severityDEBUG |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4387 |
facility: #JVM. |
2151 | 4388 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4389 |
mon acquire. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4390 |
self assert:(mon isOwnedBy: aProcess). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4391 |
"/ self acquiredMonitorsOf: aProcess add: obj. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4392 |
"/ self assert: ((self enteredMonitorsOfProcessAt: aProcess) includes: obj). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4393 |
"/ self assert: ((self acquiredMonitorsOfProcessAt: aProcess) includes: obj). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4394 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4395 |
"Created: / 17-11-2011 / 19:01:58 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
4396 |
"Modified: / 02-03-2015 / 13:56:18 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4397 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4398 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4399 |
acquireMonitorAndNotifyAll: handle |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4400 |
| mon | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4401 |
mon := handle getJavaMonitor. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4402 |
mon enter. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4403 |
self notifyAll: handle. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4404 |
mon exit. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4405 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4406 |
"Created: / 29-11-2011 / 14:24:04 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4407 |
"Modified: / 27-08-2012 / 01:06:32 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4408 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4409 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4410 |
acquireMonitorsOfProcess: aProcess |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4411 |
"will try to acquire all entered monitors of process" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4412 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4413 |
| enteredMonitors | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4414 |
(self hasEnteredMonitorsOfProcess: aProcess) ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4415 |
enteredMonitors := self copyEnteredMonitorsOfProcessAt: aProcess. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4416 |
self assert: enteredMonitors notNil. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4417 |
enteredMonitors do: [:each | self acquireMonitor: each ofProcess: aProcess. ]. |
2151 | 4418 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4419 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4420 |
"Created: / 17-11-2011 / 17:16:21 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4421 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4422 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4423 |
acquiredMonitorsOf: aProcess add: anyObject |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4424 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4425 |
^ (self acquiredMonitorsOfProcess: aProcess) add: anyObject. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4426 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4427 |
"Modified: / 08-01-1999 / 14:02:15 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4428 |
"Created: / 17-11-2011 / 18:29:16 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4429 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4430 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4431 |
acquiredMonitorsOf: aProcess remove: anyObject |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4432 |
"/ self assert: ((self acquiredMonitorsOfProcess: aProcess) includes: anyObject). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4433 |
MonitorTrace ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4434 |
self assert: ((self acquiredMonitorsOfProcess: aProcess) last first == anyObject). |
2151 | 4435 |
] ifFalse:[ |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4436 |
self assert: ((self acquiredMonitorsOfProcess: aProcess) last == anyObject). |
2151 | 4437 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4438 |
(self acquiredMonitorsOfProcess: aProcess) removeLast. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4439 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4440 |
"Modified: / 08-01-1999 / 14:02:15 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4441 |
"Created: / 17-11-2011 / 18:40:29 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4442 |
"Modified: / 11-04-2012 / 23:37:05 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4443 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4444 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4445 |
acquiredMonitorsOfProcess: aProcess |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4446 |
^ AcquiredMonitorsPerProcess at: aProcess |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4447 |
ifAbsent: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4448 |
| monitors | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4449 |
monitors := OrderedCollection new. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4450 |
AcquiredMonitorsPerProcess at: aProcess put: monitors. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4451 |
monitors |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4452 |
] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4453 |
. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4454 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4455 |
"Created: / 17-11-2011 / 18:29:09 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4456 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4457 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4458 |
acquiredMonitorsOfProcessAt: aProcess |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4459 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4460 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4461 |
^ AcquiredMonitorsPerProcess at: aProcess ifAbsent: nil. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4462 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4463 |
"Created: / 08-01-1999 / 14:02:02 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4464 |
"Created: / 17-11-2011 / 17:03:22 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4465 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4466 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4467 |
copyAcquiredMonitorsOfProcessAt: aProcess |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4468 |
"does not create empty collection like enteredMonitorsOfProcess" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4469 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4470 |
^ (AcquiredMonitorsPerProcess at: aProcess ifAbsent: nil) copy. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4471 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4472 |
"Created: / 08-01-1999 / 14:02:02 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4473 |
"Created: / 17-11-2011 / 19:23:42 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4474 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4475 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4476 |
copyEnteredMonitorsOfProcessAt: aProcess |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4477 |
"does not create empty collection like enteredMonitorsOfProcess" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4478 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4479 |
^ (EnteredMonitorsPerProcess at: aProcess ifAbsent: nil) copy. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4480 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4481 |
"Created: / 08-01-1999 / 14:02:02 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4482 |
"Created: / 17-11-2011 / 19:22:43 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4483 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4484 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4485 |
countAcquiredMonitorsOfProcess: aProcess |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4486 |
| acquiredMonitors | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4487 |
acquiredMonitors := self acquiredMonitorsOfProcessAt: aProcess. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4488 |
^ acquiredMonitors isNil ifTrue: [ 0 ] ifFalse: [ acquiredMonitors size ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4489 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4490 |
"Created: / 17-11-2011 / 18:23:49 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4491 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4492 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4493 |
countEnteredMonitorsOfProcess: aProcess |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4494 |
| enteredMonitors | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4495 |
enteredMonitors := self enteredMonitorsOfProcessAt: aProcess. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4496 |
^ enteredMonitors isNil ifTrue: [ 0 ] ifFalse: [ enteredMonitors size ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4497 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4498 |
"Created: / 17-11-2011 / 17:14:14 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4499 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4500 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4501 |
enterMonitor: obj ofProcess: aProcess |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4502 |
"registers itself as one of processes wanting monitor and then tries to acquire it." |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4503 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4504 |
| mon objInLists | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4505 |
MonitorTrace ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4506 |
MonitorTraceId := MonitorTraceId + 1. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4507 |
objInLists := { obj . MonitorTraceId } |
2151 | 4508 |
] ifFalse:[ |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4509 |
objInLists := obj |
2151 | 4510 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4511 |
"/ self enteredMonitorsOf: aProcess add: objInLists. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4512 |
mon := obj getJavaMonitor. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4513 |
self assert: mon notNil. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4514 |
MonitorTrace ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4515 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4516 |
Logger |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4517 |
log: ('[trace id %3] Entering monitor %1 owned by thread: %2' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4518 |
bindWith: (self monitorFriendlyPrintStringOf: obj) |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4519 |
with: aProcess id |
2457
0cef0ce3d1ac
Make JavaContext>>acquiredMonitors obsolete.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2429
diff
changeset
|
4520 |
with: '???' "MonitorTraceId") |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
4521 |
severity: Logger severityTRACE |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4522 |
facility: #JVM |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4523 |
originator: self |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4524 |
"/attachment: thisContext fullPrintAllString |
2151 | 4525 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4526 |
mon enter. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4527 |
self assert: (mon isOwnedBy: aProcess). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4528 |
"/ self acquiredMonitorsOf: aProcess add: objInLists. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4529 |
"/ self assert: ((self enteredMonitorsOfProcessAt: aProcess) includes: objInLists). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4530 |
"/ self assert: ((self acquiredMonitorsOfProcessAt: aProcess) includes: objInLists). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4531 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4532 |
"Created: / 17-11-2011 / 19:03:43 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
4533 |
"Modified: / 02-03-2015 / 14:00:08 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4534 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4535 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4536 |
enteredMonitorsOf: aProcess add: anyObject |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4537 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4538 |
^ (self enteredMonitorsOfProcess: aProcess) addLast: anyObject. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4539 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4540 |
"Modified: / 08-01-1999 / 14:02:15 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4541 |
"Created: / 17-11-2011 / 16:25:04 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4542 |
"Modified: / 13-04-2012 / 01:05:59 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4543 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4544 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4545 |
enteredMonitorsOf: aProcess remove: anyObject |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4546 |
"/ self assert: ((self enteredMonitorsOfProcess: aProcess) includes: anyObject). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4547 |
"/ self assert: ((self enteredMonitorsOfProcess: aProcess) last == anyObject). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4548 |
MonitorTrace ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4549 |
self assert: ((self enteredMonitorsOfProcess: aProcess) last first == anyObject). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4550 |
] ifFalse:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4551 |
self assert: ((self enteredMonitorsOfProcess: aProcess) last == anyObject). |
2151 | 4552 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4553 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4554 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4555 |
(self enteredMonitorsOfProcess: aProcess) removeLast. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4556 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4557 |
"Modified: / 08-01-1999 / 14:02:15 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4558 |
"Created: / 17-11-2011 / 18:40:45 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4559 |
"Modified: / 11-04-2012 / 23:37:48 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4560 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4561 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4562 |
enteredMonitorsOfProcess: aProcess |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4563 |
^ EnteredMonitorsPerProcess at: aProcess |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4564 |
ifAbsent: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4565 |
| monitors | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4566 |
monitors := OrderedCollection new. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4567 |
EnteredMonitorsPerProcess at: aProcess put: monitors. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4568 |
monitors |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4569 |
] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4570 |
. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4571 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4572 |
"Created: / 08-01-1999 / 14:02:02 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4573 |
"Modified: / 17-11-2011 / 19:22:26 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4574 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4575 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4576 |
enteredMonitorsOfProcessAt: aProcess |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4577 |
"does not create empty collection like enteredMonitorsOfProcess" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4578 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4579 |
^ EnteredMonitorsPerProcess at: aProcess ifAbsent: nil. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4580 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4581 |
"Created: / 08-01-1999 / 14:02:02 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4582 |
"Created: / 16-11-2011 / 15:37:58 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4583 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4584 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4585 |
exitOwnedMonitorsOfProcess |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4586 |
|thisProcess monitors| |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4587 |
thisProcess := Processor activeProcess. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4588 |
monitors := self acquiredMonitorsOfProcess: thisProcess. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4589 |
monitors do: [:each | self assert: (each isOwnedBy:thisProcess). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4590 |
each exit. |
2151 | 4591 |
] |
4592 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4593 |
"Created: / 05-12-2011 / 21:15:54 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4594 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4595 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4596 |
has: aProcess enteredMonitorFor: anyObject |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4597 |
^ (self enteredMonitorsOfProcess: aProcess) includes: anyObject. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4598 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4599 |
"Created: / 17-11-2011 / 16:28:44 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4600 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4601 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4602 |
hasAcquiredMonitorsOfProcess: aProcess |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4603 |
| acquiredMonitors | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4604 |
acquiredMonitors := self acquiredMonitorsOfProcessAt: aProcess. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4605 |
^ acquiredMonitors isNil |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4606 |
ifTrue: [ false ] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4607 |
ifFalse: [ acquiredMonitors size > 0 ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4608 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4609 |
"Created: / 17-11-2011 / 17:07:01 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4610 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4611 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4612 |
hasEnteredMonitorsOfProcess: aProcess |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4613 |
| enteredMonitors | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4614 |
enteredMonitors := self enteredMonitorsOfProcessAt: aProcess. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4615 |
^ enteredMonitors isNil ifTrue: [ false ] ifFalse: [ enteredMonitors size > 0]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4616 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4617 |
"Created: / 17-11-2011 / 17:09:57 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4618 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4619 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4620 |
inflateLockFor: obj lockword: lw |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4621 |
| threadId count mon | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4622 |
%{ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4623 |
threadId = __MKINT(__LOCKWORD_TID_GET(lw)); |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4624 |
count = __MKINT(__LOCKWORD_CNT_GET(lw)); |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4625 |
%}. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4626 |
^ JavaMonitor for: obj thread: threadId nestedLockCount: count. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4627 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4628 |
"Modified (format): / 27-08-2012 / 15:34:52 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4629 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4630 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4631 |
leaveMonitor: obj ofProcess: aProcess |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4632 |
"Leave* (release and never come back, exit) monitor owned by given project. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4633 |
*leave is the word used by jvm spec" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4634 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4635 |
| mon | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4636 |
mon := obj getJavaMonitor. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4637 |
self assert: mon notNil. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4638 |
"/self assert: (mon isOwnedBy: aProcess). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4639 |
MonitorTrace ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4640 |
Logger |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4641 |
log: ('[trace id %3] leaving monitor %1 owned by thread: %2 ' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4642 |
bindWith: (self monitorFriendlyPrintStringOf: obj) |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4643 |
with: aProcess name |
2457
0cef0ce3d1ac
Make JavaContext>>acquiredMonitors obsolete.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2429
diff
changeset
|
4644 |
with: '???' "(self enteredMonitorsOfProcess: aProcess) last second") |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
4645 |
severity: Logger severityTRACE |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4646 |
facility: #JVM |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4647 |
originator: self |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4648 |
"/attachment: thisContext fullPrintAllString |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4649 |
|
2151 | 4650 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4651 |
mon exit. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4652 |
"/ self acquiredMonitorsOf: aProcess remove: obj. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4653 |
"/ self enteredMonitorsOf: aProcess remove: obj. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4654 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4655 |
"Created: / 17-11-2011 / 18:46:33 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
4656 |
"Modified: / 02-03-2015 / 13:59:30 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4657 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4658 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4659 |
leaveMonitorsOfProcess: aProcess |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4660 |
"Leave* (release and never come back, exit) all monitors owned by given project. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4661 |
Called when cleaning up after process death or when handling smalltalk (non-java) exceptions |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4662 |
(such an exception in native method) |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4663 |
*leave is the word used by jvm spec" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4664 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4665 |
| monitors | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4666 |
monitors := EnteredMonitorsPerProcess at: aProcess ifAbsent: nil. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4667 |
monitors notNil ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4668 |
monitors do: [:obj | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4669 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4670 |
| mon | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4671 |
mon := obj getJavaMonitor. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4672 |
mon notNil ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4673 |
(mon isOwnedBy: aProcess) ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4674 |
Logger |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4675 |
log: ('leaving monitor owned by dying thread: ' , aProcess name) |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
4676 |
severity: Logger severityDEBUG |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4677 |
facility: #JVM. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4678 |
self breakPoint: #jv. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4679 |
mon exit |
2151 | 4680 |
]. |
4681 |
]. |
|
4682 |
]. |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4683 |
EnteredMonitorsPerProcess removeKey: aProcess. |
2151 | 4684 |
]. |
4685 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4686 |
"Created: / 17-11-2011 / 16:51:28 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
4687 |
"Modified: / 02-03-2015 / 13:59:14 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4688 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4689 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4690 |
monitorExit: someObject in: aJavaContext ifOwnedBy: aProcess |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4691 |
| monitor | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4692 |
monitor := someObject getJavaMonitor. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4693 |
(monitor isOwnedBy: aProcess) ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4694 |
self monitorExit: someObject in: aJavaContext |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4695 |
] ifFalse: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4696 |
MonitorTrace ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4697 |
Logger |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4698 |
log: ('%1 trying to exit monitor for %2, but it does not own it. Ignoring' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4699 |
bindWith: aProcess name |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4700 |
with: (self monitorFriendlyPrintStringOf: someObject)) |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
4701 |
severity: Logger severityDEBUG |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4702 |
facility: #JVM |
2151 | 4703 |
] |
4704 |
]. |
|
4705 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4706 |
"Created: / 17-11-2011 / 21:17:57 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
4707 |
"Modified: / 02-03-2015 / 13:58:26 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4708 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4709 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4710 |
monitorFriendlyPrintStringOf: someObject |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4711 |
| objString | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4712 |
someObject isJavaClass ifTrue: [ objString := someObject name ] ifFalse: [ |
2841
6fa1bcf9c997
JavaClass>>#name vs. #binaryName refactoring
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2806
diff
changeset
|
4713 |
objString := someObject class binaryName , '@' |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4714 |
, someObject identityHash printString. |
2151 | 4715 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4716 |
^ objString |
2841
6fa1bcf9c997
JavaClass>>#name vs. #binaryName refactoring
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2806
diff
changeset
|
4717 |
|
6fa1bcf9c997
JavaClass>>#name vs. #binaryName refactoring
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2806
diff
changeset
|
4718 |
"Modified: / 08-10-2013 / 22:49:12 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4719 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4720 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4721 |
releaseMonitor: obj ofProcess: aProcess |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4722 |
"Release* (let go and wait for it again) monitor owned by given project. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4723 |
*word used by jvm spec" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4724 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4725 |
| mon | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4726 |
mon := obj getJavaMonitor. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4727 |
self assert: mon notNil. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4728 |
self assert: (mon isOwnedBy: aProcess). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4729 |
MonitorTrace ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4730 |
Logger |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4731 |
log: ('releasing monitor %1 owned by thread: %2' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4732 |
bindWith: (self monitorFriendlyPrintStringOf: obj) |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4733 |
with: aProcess name) |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
4734 |
severity: Logger severityDEBUG |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4735 |
facility: #JVM. |
284 | 4736 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4737 |
mon release. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4738 |
self acquiredMonitorsOf: aProcess remove: obj. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4739 |
"/ self assert: ((self enteredMonitorsOfProcessAt: aProcess) includes: obj). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4740 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4741 |
"Created: / 17-11-2011 / 18:51:00 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
4742 |
"Modified: / 02-03-2015 / 13:57:39 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4743 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4744 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4745 |
releaseMonitorsOfProcess |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4746 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4747 |
self releaseMonitorsOfProcess: Processor activeProcess |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4748 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4749 |
"Created: / 04-11-2011 / 22:15:31 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4750 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4751 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4752 |
releaseMonitorsOfProcess: aProcess |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4753 |
"Releases* all monitors owned by given project. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4754 |
Monitor can be acquired again, (aProcess going into WAIT) |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4755 |
*word used by jvm spec" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4756 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4757 |
| monitors | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4758 |
monitors := self copyAcquiredMonitorsOfProcessAt: aProcess. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4759 |
monitors notNil ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4760 |
monitors do: [:obj | self releaseMonitor: obj ofProcess: aProcess. ]. |
284 | 4761 |
]. |
4762 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4763 |
"Created: / 04-11-2011 / 22:15:06 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4764 |
"Modified: / 17-11-2011 / 21:29:17 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4765 |
"Modified (comment): / 05-12-2011 / 21:13:29 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4766 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4767 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4768 |
unwindHandlerForJavaContext: aJavaContext |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4769 |
"given a context which has been marked for unwind, |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4770 |
retrieve the handler block. This method is called when ST |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4771 |
exception raises and stack is unwinding. JavaClass instance |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4772 |
has an opportunity to clean up monitors" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4773 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4774 |
^ [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4775 |
| thisProcess | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4776 |
aJavaContext shouldExecuteFinallyOnUnwind ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4777 |
self throwExceptionForFinallyIn: aJavaContext |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4778 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4779 |
self releaseMonitorsOfUnwindingContext: aJavaContext. |
544 | 4780 |
]. |
284 | 4781 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4782 |
"Created: / 08-11-2011 / 12:30:19 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4783 |
"Modified: / 17-11-2011 / 21:33:17 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4784 |
"Modified: / 10-04-2012 / 11:08:23 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
284 | 4785 |
! ! |
4786 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4787 |
!JavaVM class methodsFor:'monitors-obsolete'! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4788 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4789 |
waitFor: sema state: pState timeOut: tmo |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4790 |
"wait" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4791 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4792 |
| wasBlocked thisProcess releasedCount acquiredCount | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4793 |
thisProcess := Processor activeProcess. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4794 |
wasBlocked := OperatingSystem blockInterrupts. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4795 |
releasedCount := self countAcquiredMonitorsOfProcess: thisProcess. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4796 |
(self hasAcquiredMonitorsOfProcess: thisProcess) ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4797 |
MonitorTrace ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4798 |
Logger |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4799 |
log: thisProcess name , ' going into WAIT - releasing ' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4800 |
, (self countAcquiredMonitorsOfProcess: thisProcess) printString |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4801 |
, ' monitors' |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
4802 |
severity: Logger severityDEBUG |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4803 |
facility: #JVM. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4804 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4805 |
self releaseMonitorsOfProcess: thisProcess. |
2151 | 4806 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4807 |
wasBlocked ifFalse: [ OperatingSystem unblockInterrupts ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4808 |
pState notNil ifTrue: [ thisProcess state: pState ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4809 |
sema isNil ifTrue: [ Delay waitForMilliseconds: tmo ] ifFalse: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4810 |
(tmo isNil or: [ tmo = 0 ]) ifTrue: [ sema wait. ] ifFalse: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4811 |
sema waitWithTimeout: tmo / 1000. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4812 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4813 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4814 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4815 |
"/ re-enter monitors. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4816 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4817 |
(self hasEnteredMonitorsOfProcess: thisProcess) ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4818 |
wasBlocked := OperatingSystem blockInterrupts. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4819 |
Logger |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4820 |
log: thisProcess name , ' has been notified - trying to acquire ' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4821 |
, (self countEnteredMonitorsOfProcess: thisProcess) printString |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4822 |
, ' monitors' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4823 |
severity: #debug |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4824 |
facility: #JVM. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4825 |
self acquireMonitorsOfProcess: thisProcess. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4826 |
acquiredCount := self countAcquiredMonitorsOfProcess: thisProcess. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4827 |
self assert: acquiredCount = releasedCount. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4828 |
wasBlocked ifFalse: [ OperatingSystem unblockInterrupts ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4829 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4830 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4831 |
"Created: / 30-12-1998 / 19:19:35 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4832 |
"Modified: / 08-01-1999 / 17:29:24 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4833 |
"Modified: / 20-11-2011 / 12:36:47 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
4834 |
"Modified: / 02-03-2015 / 14:11:54 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
440 | 4835 |
! ! |
4836 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4837 |
!JavaVM class methodsFor:'native - java.lang'! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4838 |
|
2914
1f4c3054998c
Native java.lang.Object#clone() refactored to use ACX_CLOENABLE flag.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2908
diff
changeset
|
4839 |
_java_lang_Object_clone: this |
1f4c3054998c
Native java.lang.Object#clone() refactored to use ACX_CLOENABLE flag.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2908
diff
changeset
|
4840 |
"Forward here as optimized code delegates to JavaVM" |
1f4c3054998c
Native java.lang.Object#clone() refactored to use ACX_CLOENABLE flag.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2908
diff
changeset
|
4841 |
|
1f4c3054998c
Native java.lang.Object#clone() refactored to use ACX_CLOENABLE flag.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2908
diff
changeset
|
4842 |
^ NativeMethodsImplementation _java_lang_Object_clone: this |
1f4c3054998c
Native java.lang.Object#clone() refactored to use ACX_CLOENABLE flag.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2908
diff
changeset
|
4843 |
|
1f4c3054998c
Native java.lang.Object#clone() refactored to use ACX_CLOENABLE flag.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2908
diff
changeset
|
4844 |
"Created: / 12-11-2013 / 01:09:52 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
1f4c3054998c
Native java.lang.Object#clone() refactored to use ACX_CLOENABLE flag.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2908
diff
changeset
|
4845 |
! |
1f4c3054998c
Native java.lang.Object#clone() refactored to use ACX_CLOENABLE flag.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2908
diff
changeset
|
4846 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4847 |
_java_lang_System_arraycopy: nativeContext |
2914
1f4c3054998c
Native java.lang.Object#clone() refactored to use ACX_CLOENABLE flag.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2908
diff
changeset
|
4848 |
<resource: #obsolete> |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4849 |
"Forward here as optimized code delegates to JavaVM" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4850 |
|
2966 | 4851 |
^ NativeMethodsImplementation _java_lang_System_arraycopy: nativeContext receiver _:(nativeContext argAt:1) _: (nativeContext argAt:2) _: (nativeContext argAt:3) _: (nativeContext argAt:4) _: (nativeContext argAt:5) |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4852 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4853 |
"Modified: / 21-01-2013 / 09:18:44 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2914
1f4c3054998c
Native java.lang.Object#clone() refactored to use ACX_CLOENABLE flag.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2908
diff
changeset
|
4854 |
! |
1f4c3054998c
Native java.lang.Object#clone() refactored to use ACX_CLOENABLE flag.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2908
diff
changeset
|
4855 |
|
1f4c3054998c
Native java.lang.Object#clone() refactored to use ACX_CLOENABLE flag.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2908
diff
changeset
|
4856 |
_java_lang_System_arraycopy: this _:a1 _: a2 _: a3 _: a4 _: a5 |
1f4c3054998c
Native java.lang.Object#clone() refactored to use ACX_CLOENABLE flag.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2908
diff
changeset
|
4857 |
"Forward here as optimized code delegates to JavaVM" |
1f4c3054998c
Native java.lang.Object#clone() refactored to use ACX_CLOENABLE flag.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2908
diff
changeset
|
4858 |
|
1f4c3054998c
Native java.lang.Object#clone() refactored to use ACX_CLOENABLE flag.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2908
diff
changeset
|
4859 |
^ NativeMethodsImplementation _java_lang_System_arraycopy: this _:a1 _: a2 _: a3 _: a4 _: a5 |
1f4c3054998c
Native java.lang.Object#clone() refactored to use ACX_CLOENABLE flag.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2908
diff
changeset
|
4860 |
|
1f4c3054998c
Native java.lang.Object#clone() refactored to use ACX_CLOENABLE flag.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2908
diff
changeset
|
4861 |
"Created: / 12-11-2013 / 01:11:42 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2396
fadc6d7a2f5b
Updated to rev 009a0df3afce
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2372
diff
changeset
|
4862 |
! ! |
fadc6d7a2f5b
Updated to rev 009a0df3afce
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2372
diff
changeset
|
4863 |
|
2151 | 4864 |
!JavaVM class methodsFor:'queries'! |
4865 |
||
4866 |
booted |
|
4867 |
||
4868 |
| jVM | |
|
4869 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4870 |
"/Slightly faster variant of the code below |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4871 |
^SystemClassLoader notNil and:[ |
2578
fc6186a4961f
Performance optimization: rewrote 'JavaVM classNamed:' to 'JavaVM classNamed:...definedBy:...'.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2577
diff
changeset
|
4872 |
jVM := JavaVM classNamed: 'sun.misc.VM' definedBy: nil. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4873 |
jVM notNil and: [ (jVM instVarNamed: #booted) == 1 ] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4874 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4875 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4876 |
"/ jVM := JavaVM classNamed: 'sun.misc.VM'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4877 |
"/ ^ jVM notNil and: [ (jVM instVarNamed: #booted) == 1 ] and: [self systemClassLoader notNil]. |
2151 | 4878 |
|
4879 |
" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4880 |
JavaVM booted" |
2151 | 4881 |
|
4882 |
"Created: / 08-08-2011 / 10:04:54 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4883 |
"Modified: / 02-11-2011 / 22:08:53 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
2578
fc6186a4961f
Performance optimization: rewrote 'JavaVM classNamed:' to 'JavaVM classNamed:...definedBy:...'.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2577
diff
changeset
|
4884 |
"Modified: / 02-05-2013 / 01:22:34 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
572 | 4885 |
! ! |
4886 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4887 |
!JavaVM class methodsFor:'threads'! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4888 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4889 |
clearInterrupted: process |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4890 |
ThreadInterrupts removeKey: process ifAbsent: [] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4891 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4892 |
"Created: / 16-08-2012 / 22:03:10 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4893 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4894 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4895 |
isInterrupted: process |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4896 |
^ThreadInterrupts at: process ifAbsent:[false]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4897 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4898 |
"Created: / 16-08-2012 / 22:05:11 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4899 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4900 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4901 |
park: process timeout: tout |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4902 |
"A helper for sun.misc.Unsafe.park()" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4903 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4904 |
| blocked sema | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4905 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4906 |
blocked := OperatingSystem blockInterrupts. |
2928
08a14f3553a2
Fix in JavaVM>>#unpark: (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2925
diff
changeset
|
4907 |
ParkUnparkSemaphores isNil ifTrue:[ ParkUnparkSemaphores := Dictionary new ]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4908 |
sema := ParkUnparkSemaphores at: process ifAbsentPut:[Semaphore new]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4909 |
blocked ifFalse:[ OperatingSystem unblockInterrupts ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4910 |
|
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
4911 |
Logger log: 'parking thread ', process printString severity: Logger severityDEBUG facility: #JVM. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4912 |
sema parkWithTimeoutMs: tout. |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
4913 |
Logger log: 'parked thread ', process printString , ' resumed' severity: Logger severityDEBUG facility: #JVM. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4914 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4915 |
"Created: / 16-08-2012 / 21:51:14 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
4916 |
"Modified: / 02-03-2015 / 13:58:21 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4917 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4918 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4919 |
setInterrupted: process |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4920 |
ThreadInterrupts at: process put: true |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4921 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4922 |
"Created: / 16-08-2012 / 22:03:23 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4923 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4924 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4925 |
terminateAllThreads |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4926 |
Java terminateAllThreads. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4927 |
JavaEventThread := nil. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4928 |
JavaScreenUpdaterThread := JavaEventQueueThread := nil. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4929 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4930 |
"Created: / 8.1.1998 / 17:43:54 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4931 |
"Modified: / 24.12.1999 / 02:33:16 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4932 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4933 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4934 |
threadStart: nativeContext |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4935 |
"start the thread" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4936 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4937 |
| jThread jName nm stProcess helper | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4938 |
jThread := nativeContext receiver. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4939 |
self assert: (jThread instVarNamed: 'priority') > 0. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4940 |
stProcess := JavaProcess for: (helper := JavaProcess newHelper) |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4941 |
priority: (Processor activePriority). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4942 |
helper javaThreadObject: jThread. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4943 |
helper javaProcess: stProcess. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4944 |
jName := jThread instVarNamed: 'name'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4945 |
jName isString ifFalse: [ nm := Java as_ST_String: jName. ] ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4946 |
nm := jName |
520 | 4947 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4948 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4949 |
"/ kludge - remember the ScreenUpdater ... |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4950 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4951 |
nm = 'Screen Updater' ifTrue: [ JavaScreenUpdaterThread := stProcess. ] ifFalse: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4952 |
nm = 'AWT-Windows' ifTrue: [ JavaEventThread := stProcess. ] ifFalse: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4953 |
(nm startsWith: 'AWT-EventQueue') ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4954 |
JavaEventQueueThread := stProcess. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4955 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4956 |
] |
526 | 4957 |
]. |
4958 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4959 |
"/ when that process terminates, wakup any waiters |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4960 |
"/mh 29.11.11 this makes join work |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4961 |
"/mh 30.11.11 disable wait is to ensure that join can be called on thread after its finished and dont wait forever" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4962 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4963 |
stProcess |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4964 |
addExitAction: [ |
2850
e4f0dcc42f4a
Fixed logging of monitor-related events - honour JavaVM.MonitorTrace flag.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2806
diff
changeset
|
4965 |
MonitorTrace ifTrue:[ |
e4f0dcc42f4a
Fixed logging of monitor-related events - honour JavaVM.MonitorTrace flag.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2806
diff
changeset
|
4966 |
Logger |
e4f0dcc42f4a
Fixed logging of monitor-related events - honour JavaVM.MonitorTrace flag.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2806
diff
changeset
|
4967 |
log: ('%1 is going to die, notifying all waiters and disabling waiting on its monitor' |
e4f0dcc42f4a
Fixed logging of monitor-related events - honour JavaVM.MonitorTrace flag.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2806
diff
changeset
|
4968 |
bindWith: jThread printString) |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
4969 |
severity: Logger severityDEBUG |
2850
e4f0dcc42f4a
Fixed logging of monitor-related events - honour JavaVM.MonitorTrace flag.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2806
diff
changeset
|
4970 |
facility: #JVM. |
e4f0dcc42f4a
Fixed logging of monitor-related events - honour JavaVM.MonitorTrace flag.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2806
diff
changeset
|
4971 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4972 |
jThread instVarNamed: 'threadStatus' put: 0. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4973 |
jThread getJavaMonitor disableWait. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4974 |
self acquireMonitorAndNotifyAll: jThread. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4975 |
ThreadInterrupts notNil ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4976 |
ThreadInterrupts removeKey: stProcess ifAbsent:[] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4977 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4978 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4979 |
stProcess name: 'JAVA-' , nm. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4980 |
stProcess restartable: true. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4981 |
jThread instVarNamed: 'threadStatus' put: 1. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4982 |
Java addThread: jThread for: stProcess. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4983 |
stProcess resume. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4984 |
^ nil |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4985 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4986 |
"Modified: / 24-12-1999 / 03:14:33 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4987 |
"Created: / 14-12-2010 / 21:31:02 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4988 |
"Modified: / 09-12-2011 / 12:58:31 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
4989 |
"Modified: / 02-03-2015 / 13:57:16 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4990 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4991 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4992 |
unpark: process |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4993 |
"A helper for sun.misc.Unsafe.unpark()" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4994 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4995 |
| blocked sema | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4996 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4997 |
blocked := OperatingSystem blockInterrupts. |
2928
08a14f3553a2
Fix in JavaVM>>#unpark: (typo)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2925
diff
changeset
|
4998 |
ParkUnparkSemaphores isNil ifTrue:[ ParkUnparkSemaphores := Dictionary new ]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
4999 |
sema := ParkUnparkSemaphores at: process ifAbsentPut:[Semaphore new]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5000 |
blocked ifFalse:[ OperatingSystem unblockInterrupts ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5001 |
|
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
5002 |
Logger log: 'unparking thread ', process printString severity: Logger severityDEBUG facility: #JVM. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5003 |
sema signal. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5004 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5005 |
"Created: / 16-08-2012 / 21:52:31 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
3384
98eb8443f4f4
Use new Logger API (use Logger severityXXX instead of symbols)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3324
diff
changeset
|
5006 |
"Modified: / 02-03-2015 / 13:56:48 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
253 | 5007 |
! ! |
5008 |
||
5009 |
!JavaVM class methodsFor:'vm support'! |
|
5010 |
||
3070
3f6f3b935c17
Fixed unimplemented native java.lang.reflect.Array.get()
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3066
diff
changeset
|
5011 |
_AALOAD: arr _: idx |
2568
2a2741b4cda1
AALOAD/AASTORE refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2567
diff
changeset
|
5012 |
"Called from the VM (___aaload()) for unhandled cases" |
2966 | 5013 |
|
3070
3f6f3b935c17
Fixed unimplemented native java.lang.reflect.Array.get()
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3066
diff
changeset
|
5014 |
(idx between: 0 and: arr size - 1) ifFalse:[ |
3f6f3b935c17
Fixed unimplemented native java.lang.reflect.Array.get()
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3066
diff
changeset
|
5015 |
^ JavaVM throwArrayIndexOutOfBoundsException: arr _: idx. |
3f6f3b935c17
Fixed unimplemented native java.lang.reflect.Array.get()
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3066
diff
changeset
|
5016 |
]. |
3f6f3b935c17
Fixed unimplemented native java.lang.reflect.Array.get()
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3066
diff
changeset
|
5017 |
arr basicAt: idx + 1 |
2568
2a2741b4cda1
AALOAD/AASTORE refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2567
diff
changeset
|
5018 |
|
2a2741b4cda1
AALOAD/AASTORE refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2567
diff
changeset
|
5019 |
"Created: / 29-04-2013 / 21:22:02 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
3070
3f6f3b935c17
Fixed unimplemented native java.lang.reflect.Array.get()
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3066
diff
changeset
|
5020 |
"Modified: / 10-04-2014 / 09:59:04 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2568
2a2741b4cda1
AALOAD/AASTORE refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2567
diff
changeset
|
5021 |
! |
2a2741b4cda1
AALOAD/AASTORE refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2567
diff
changeset
|
5022 |
|
2567
b7befaec5b54
Added JavaVM class>>_AASTORE:_:_: insn implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2527
diff
changeset
|
5023 |
_AASTORE: arr _: val _: index |
b7befaec5b54
Added JavaVM class>>_AASTORE:_:_: insn implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2527
diff
changeset
|
5024 |
"Called from the VM (___aastore()) for unhandled cases" |
b7befaec5b54
Added JavaVM class>>_AASTORE:_:_: insn implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2527
diff
changeset
|
5025 |
|
b7befaec5b54
Added JavaVM class>>_AASTORE:_:_: insn implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2527
diff
changeset
|
5026 |
(val notNil and:[arr isJavaArray])"false" ifTrue:[ |
b7befaec5b54
Added JavaVM class>>_AASTORE:_:_: insn implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2527
diff
changeset
|
5027 |
(self canCast: val class to: arr class javaComponentClass) ifFalse: [ |
3114
ba69147aea97
Better error message for VM-thrown ArrayStoreException.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3112
diff
changeset
|
5028 |
self throwArrayStoreException: ('Incompatible types: try to store %1 in %2' bindWith: val class javaName with: arr class javaName). |
2567
b7befaec5b54
Added JavaVM class>>_AASTORE:_:_: insn implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2527
diff
changeset
|
5029 |
^ nil "Not reached" |
b7befaec5b54
Added JavaVM class>>_AASTORE:_:_: insn implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2527
diff
changeset
|
5030 |
]. |
b7befaec5b54
Added JavaVM class>>_AASTORE:_:_: insn implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2527
diff
changeset
|
5031 |
]. |
b7befaec5b54
Added JavaVM class>>_AASTORE:_:_: insn implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2527
diff
changeset
|
5032 |
arr basicAt: index + 1 put: val |
b7befaec5b54
Added JavaVM class>>_AASTORE:_:_: insn implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2527
diff
changeset
|
5033 |
|
b7befaec5b54
Added JavaVM class>>_AASTORE:_:_: insn implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2527
diff
changeset
|
5034 |
"Created: / 29-04-2013 / 21:22:02 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
3114
ba69147aea97
Better error message for VM-thrown ArrayStoreException.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3112
diff
changeset
|
5035 |
"Modified: / 02-06-2014 / 14:17:00 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2567
b7befaec5b54
Added JavaVM class>>_AASTORE:_:_: insn implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2527
diff
changeset
|
5036 |
! |
b7befaec5b54
Added JavaVM class>>_AASTORE:_:_: insn implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2527
diff
changeset
|
5037 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5038 |
_ANEWARRAY:cls _:size |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5039 |
"Returns a new array of elements of type class." |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5040 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5041 |
self assert: cls isBehavior. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5042 |
size < 0 ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5043 |
self throwExceptionClassName:'java.lang.NegativeArraySizeException' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5044 |
withMessage:'negative array size not allowed'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5045 |
^nil |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5046 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5047 |
self assert:cls javaArrayClass isJavaArrayClass. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5048 |
^ cls javaArrayClass new:size |
2151 | 5049 |
|
5050 |
"Created: / 17-12-2010 / 14:28:29 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5051 |
"Modified: / 22-11-2011 / 09:46:00 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2151 | 5052 |
! |
5053 |
||
2975
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5054 |
_ANEWARRAY_R:classRef _:size |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5055 |
"Returns a new array of elements of type referenced by classRef. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5056 |
Sent from jitted code when classRef is not resolved during jit-compilation" |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5057 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5058 |
^ self _ANEWARRAY: classRef resolve _: size |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5059 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5060 |
"Created: / 16-01-2014 / 22:26:11 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5061 |
! |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5062 |
|
524 | 5063 |
_ARRAYLENGTH:arr |
586 | 5064 |
arr isNil ifTrue:[ |
2151 | 5065 |
"/self halt:'should not happen'. |
5066 |
self throwNullPointerException. |
|
586 | 5067 |
]. |
524 | 5068 |
^ arr size |
5069 |
||
2151 | 5070 |
"Created: / 08-01-1999 / 14:38:27 / cg" |
5071 |
"Modified: / 31-05-2011 / 10:09:00 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
524 | 5072 |
! |
5073 |
||
523 | 5074 |
_ATHROW:aJavaException |
2151 | 5075 |
|
5076 |
<resource: #skipInDebuggersWalkBack> |
|
5077 |
||
2526
ef415ed11871
Added JavaUnresolvedCompilationError.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2515
diff
changeset
|
5078 |
| message | |
ef415ed11871
Added JavaUnresolvedCompilationError.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2515
diff
changeset
|
5079 |
|
586 | 5080 |
aJavaException isNil ifTrue:[ |
2151 | 5081 |
self halt:'cannot happen' |
586 | 5082 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5083 |
"When an exception is handled in Smalltalk code and the stack is |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5084 |
being unwound, then all intermediate Java finally blocks are executed. |
2841
6fa1bcf9c997
JavaClass>>#name vs. #binaryName refactoring
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2806
diff
changeset
|
5085 |
This is done by fake-throwing special FinallyToken, as there must be an |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5086 |
exception instance for Java. A Java compiler compiles unconditional |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5087 |
ATHROW at the end of finally block to pass execution to another handler. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5088 |
We don't want to do so, in case we're manually invoking finally blocks. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5089 |
Hence following hack: we teleport back to handler caller" |
2527
c380a7c258fb
Makes JavaUnresolvedCompilationError proceedable.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2526
diff
changeset
|
5090 |
aJavaException class == JavaContext finallyTokenClass ifTrue:[ |
2843
36f000314bcd
Fix in mixed exception handling.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2841
diff
changeset
|
5091 |
| sender | |
36f000314bcd
Fix in mixed exception handling.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2841
diff
changeset
|
5092 |
|
36f000314bcd
Fix in mixed exception handling.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2841
diff
changeset
|
5093 |
"/ First, if the method is synchronized, leave its monitor |
36f000314bcd
Fix in mixed exception handling.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2841
diff
changeset
|
5094 |
sender := thisContext sender. |
36f000314bcd
Fix in mixed exception handling.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2841
diff
changeset
|
5095 |
sender method isSynchronized ifTrue:[ |
36f000314bcd
Fix in mixed exception handling.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2841
diff
changeset
|
5096 |
self releaseMonitorsOfUnwindingContext: thisContext sender. |
36f000314bcd
Fix in mixed exception handling.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2841
diff
changeset
|
5097 |
]. |
36f000314bcd
Fix in mixed exception handling.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2841
diff
changeset
|
5098 |
"/ Proceed to unwind or exception handler. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5099 |
aJavaException pass. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5100 |
self halt:'Should never be reached'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5101 |
]. |
2526
ef415ed11871
Added JavaUnresolvedCompilationError.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2515
diff
changeset
|
5102 |
"Another kludge: ECJ compiler throws java.lang.Error in case |
ef415ed11871
Added JavaUnresolvedCompilationError.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2515
diff
changeset
|
5103 |
there's an unresolved compilation problem. We want to open debugger |
ef415ed11871
Added JavaUnresolvedCompilationError.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2515
diff
changeset
|
5104 |
in this case tp be more Smalltalk-like - so translate such exception |
ef415ed11871
Added JavaUnresolvedCompilationError.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2515
diff
changeset
|
5105 |
to JavaUnresolvedCompilationError" |
2868
90724c4fa7f8
Fix to recompile erroneous classes upon reload.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2851
diff
changeset
|
5106 |
aJavaException class binaryName == #'stx/libjava/tools/compiler/CompileError' ifTrue:[ |
2526
ef415ed11871
Added JavaUnresolvedCompilationError.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2515
diff
changeset
|
5107 |
message := aJavaException getMessage. |
ef415ed11871
Added JavaUnresolvedCompilationError.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2515
diff
changeset
|
5108 |
(message startsWith: 'Unresolved compilation problem:') ifTrue:[ |
ef415ed11871
Added JavaUnresolvedCompilationError.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2515
diff
changeset
|
5109 |
JavaUnresolvedCompilationError newException |
ef415ed11871
Added JavaUnresolvedCompilationError.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2515
diff
changeset
|
5110 |
messageText: (message copyFrom: 'Unresolved compilation problem:' size + 1) trimSeparators; |
2527
c380a7c258fb
Makes JavaUnresolvedCompilationError proceedable.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2526
diff
changeset
|
5111 |
proceedable: true; |
c380a7c258fb
Makes JavaUnresolvedCompilationError proceedable.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2526
diff
changeset
|
5112 |
raiseSignal. |
c380a7c258fb
Makes JavaUnresolvedCompilationError proceedable.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2526
diff
changeset
|
5113 |
^thisContext sender return |
2526
ef415ed11871
Added JavaUnresolvedCompilationError.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2515
diff
changeset
|
5114 |
] |
ef415ed11871
Added JavaUnresolvedCompilationError.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2515
diff
changeset
|
5115 |
]. |
ef415ed11871
Added JavaUnresolvedCompilationError.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2515
diff
changeset
|
5116 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5117 |
self throwException:aJavaException |
519 | 5118 |
|
2151 | 5119 |
"Created: / 08-01-1999 / 14:15:36 / cg" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5120 |
"Modified: / 08-11-2011 / 16:32:54 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
2868
90724c4fa7f8
Fix to recompile erroneous classes upon reload.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2851
diff
changeset
|
5121 |
"Modified: / 16-10-2013 / 12:53:08 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5122 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5123 |
|
2593
adf8741afdf1
Java CHECKCAST instruction refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2592
diff
changeset
|
5124 |
_CHECKCAST: obj _: cls |
2595
77ab6e032c7f
CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2594
diff
changeset
|
5125 |
"A principal implementation of CHECKCAST instruction. Called by the bytecode |
2966 | 5126 |
interpreter for unhandled cases." |
5127 |
||
2595
77ab6e032c7f
CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2594
diff
changeset
|
5128 |
obj isNil ifTrue:[ ^ obj ]. |
2593
adf8741afdf1
Java CHECKCAST instruction refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2592
diff
changeset
|
5129 |
(self canCast: obj class to: cls) ifFalse: [ |
adf8741afdf1
Java CHECKCAST instruction refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2592
diff
changeset
|
5130 |
self throwClassCastException. |
adf8741afdf1
Java CHECKCAST instruction refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2592
diff
changeset
|
5131 |
^ nil |
adf8741afdf1
Java CHECKCAST instruction refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2592
diff
changeset
|
5132 |
]. |
adf8741afdf1
Java CHECKCAST instruction refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2592
diff
changeset
|
5133 |
^ obj |
adf8741afdf1
Java CHECKCAST instruction refactored.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2592
diff
changeset
|
5134 |
|
524 | 5135 |
! |
5136 |
||
2587
b09eaedf206a
Optimization: use Context>>findSpecialHandle:raise: to search for exception handlers.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
5137 |
_CHECKCAST_R: object _: classRef |
2595
77ab6e032c7f
CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2594
diff
changeset
|
5138 |
"An implementation of CHECKCAST instruction. Called by the jitted code |
77ab6e032c7f
CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2594
diff
changeset
|
5139 |
when if the classRef hasn't been resolved at the time of jitting." |
2587
b09eaedf206a
Optimization: use Context>>findSpecialHandle:raise: to search for exception handlers.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
5140 |
| class | |
b09eaedf206a
Optimization: use Context>>findSpecialHandle:raise: to search for exception handlers.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
5141 |
|
b09eaedf206a
Optimization: use Context>>findSpecialHandle:raise: to search for exception handlers.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
5142 |
object isNil ifTrue: [ ^ object ]. |
b09eaedf206a
Optimization: use Context>>findSpecialHandle:raise: to search for exception handlers.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
5143 |
class := classRef resolve. |
2594
6b2c378121a3
Reimplementation of INSTANCEOF in same spirit as CHECKCAST.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2593
diff
changeset
|
5144 |
(self canCast: object class to: class) ifFalse:[ |
6b2c378121a3
Reimplementation of INSTANCEOF in same spirit as CHECKCAST.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2593
diff
changeset
|
5145 |
self throwClassCastException. |
6b2c378121a3
Reimplementation of INSTANCEOF in same spirit as CHECKCAST.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2593
diff
changeset
|
5146 |
^nil. |
6b2c378121a3
Reimplementation of INSTANCEOF in same spirit as CHECKCAST.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2593
diff
changeset
|
5147 |
]. |
6b2c378121a3
Reimplementation of INSTANCEOF in same spirit as CHECKCAST.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2593
diff
changeset
|
5148 |
^object. |
2587
b09eaedf206a
Optimization: use Context>>findSpecialHandle:raise: to search for exception handlers.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
5149 |
|
b09eaedf206a
Optimization: use Context>>findSpecialHandle:raise: to search for exception handlers.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
5150 |
"Created: / 19-05-2011 / 10:12:23 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
b09eaedf206a
Optimization: use Context>>findSpecialHandle:raise: to search for exception handlers.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
5151 |
"Modified (comment): / 09-10-2012 / 11:56:14 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
b09eaedf206a
Optimization: use Context>>findSpecialHandle:raise: to search for exception handlers.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
5152 |
! |
b09eaedf206a
Optimization: use Context>>findSpecialHandle:raise: to search for exception handlers.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2584
diff
changeset
|
5153 |
|
524 | 5154 |
_D2I:op1 |
5155 |
|v| |
|
5156 |
||
5157 |
v := op1 asInteger. |
|
5158 |
v > 16r7FFFFFFF ifTrue:[ |
|
616 | 5159 |
self halt. |
5160 |
v := 16r7FFFFFFF |
|
524 | 5161 |
] ifFalse:[ |
616 | 5162 |
v < 16r80000000 negated ifTrue:[ |
5163 |
self halt. |
|
5164 |
v := 16r80000000 negated |
|
5165 |
] |
|
524 | 5166 |
]. |
5167 |
^ v |
|
5168 |
||
5169 |
"Modified: / 17.10.1998 / 21:55:49 / cg" |
|
5170 |
"Created: / 8.1.1999 / 14:47:13 / cg" |
|
5171 |
! |
|
5172 |
||
5173 |
_D2L:op1 |
|
5174 |
|v| |
|
5175 |
||
5176 |
v := op1 asInteger. |
|
5177 |
v > 16r7FFFFFFFFFFFFFFF ifTrue:[ |
|
616 | 5178 |
self halt. |
5179 |
v := 16r7FFFFFFFFFFFFFFF |
|
524 | 5180 |
] ifFalse:[ |
616 | 5181 |
v < 16r8000000000000000 negated ifTrue:[ |
5182 |
self halt. |
|
5183 |
v := 16r8000000000000000 negated |
|
5184 |
] |
|
524 | 5185 |
]. |
5186 |
^ v |
|
5187 |
||
5188 |
"Modified: / 17.10.1998 / 21:55:49 / cg" |
|
5189 |
"Created: / 8.1.1999 / 14:46:44 / cg" |
|
5190 |
! |
|
5191 |
||
5192 |
_DADD:op1 _:op2 |
|
5193 |
^ op1 asFloat + op2 asFloat |
|
5194 |
||
5195 |
"Created: / 8.1.1999 / 15:11:59 / cg" |
|
5196 |
! |
|
5197 |
||
5198 |
_DDIV:op1 _:op2 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5199 |
^ op1 asFloat uncheckedDivide: op2 asFloat. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5200 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5201 |
"Created: / 08-01-1999 / 15:09:10 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5202 |
"Modified: / 06-09-2011 / 19:31:45 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
524 | 5203 |
! |
5204 |
||
5205 |
_DMUL:op1 _:op2 |
|
5206 |
^ op1 asFloat * op2 asFloat |
|
5207 |
||
5208 |
"Created: / 8.1.1999 / 14:49:52 / cg" |
|
5209 |
! |
|
5210 |
||
5211 |
_DNEG:op |
|
5212 |
^ op asFloat negated |
|
5213 |
||
5214 |
"Created: / 8.1.1999 / 15:06:15 / cg" |
|
5215 |
! |
|
5216 |
||
5217 |
_DSUB:op1 _:op2 |
|
5218 |
^ op1 asFloat - op2 asFloat |
|
5219 |
||
5220 |
"Created: / 8.1.1999 / 15:10:59 / cg" |
|
5221 |
! |
|
5222 |
||
5223 |
_F2I:op1 |
|
5224 |
^ self _D2I:op1 |
|
5225 |
||
5226 |
"Created: / 8.1.1999 / 14:47:42 / cg" |
|
5227 |
! |
|
5228 |
||
5229 |
_F2L:op1 |
|
5230 |
^ self _D2L:op1 |
|
5231 |
||
5232 |
"Created: / 8.1.1999 / 14:47:53 / cg" |
|
5233 |
! |
|
5234 |
||
5235 |
_FADD:op1 _:op2 |
|
5236 |
^ op1 asShortFloat + op2 asShortFloat |
|
5237 |
||
5238 |
"Created: / 8.1.1999 / 15:11:36 / cg" |
|
5239 |
! |
|
5240 |
||
5241 |
_FDIV:op1 _:op2 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5242 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5243 |
op1 isZero ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5244 |
op2 isZero ifTrue:[ ^ Float NaN ] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5245 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5246 |
op2 isZero ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5247 |
^ Float infinity |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5248 |
]. |
524 | 5249 |
^ op1 asShortFloat / op2 asShortFloat. |
5250 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5251 |
"Created: / 08-01-1999 / 15:09:32 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5252 |
"Modified: / 06-07-2012 / 13:12:22 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
524 | 5253 |
! |
5254 |
||
5255 |
_FMUL:op1 _:op2 |
|
5256 |
^ op1 asShortFloat * op2 asShortFloat |
|
5257 |
||
5258 |
"Created: / 8.1.1999 / 14:50:10 / cg" |
|
5259 |
! |
|
5260 |
||
5261 |
_FNEG:op |
|
5262 |
^ op asShortFloat negated |
|
5263 |
||
5264 |
"Created: / 8.1.1999 / 15:06:33 / cg" |
|
5265 |
! |
|
5266 |
||
5267 |
_FSUB:op1 _:op2 |
|
5268 |
^ op1 asShortFloat - op2 asShortFloat |
|
5269 |
||
5270 |
"Created: / 8.1.1999 / 15:08:17 / cg" |
|
5271 |
! |
|
5272 |
||
2978
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5273 |
_GETFIELD_R: fieldRef _: obj |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5274 |
"Called by jitted code for GETFIELD insn iff fieldref is not yet resolved" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5275 |
|
3235 | 5276 |
| class offset | |
5277 |
||
2990
21011804a910
Fixed _GETFIELD_R: / _PUTFIELD_R: to throw NPE when an object is nil.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2989
diff
changeset
|
5278 |
obj isNil ifTrue:[ |
2992
732f9db2a195
Cleanup & refactoring of constant pool references (JavaRef2 hierarchy)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2990
diff
changeset
|
5279 |
^self throwNullPointerException. |
2990
21011804a910
Fixed _GETFIELD_R: / _PUTFIELD_R: to throw NPE when an object is nil.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2989
diff
changeset
|
5280 |
]. |
3235 | 5281 |
class := fieldRef classRef resolve; javaClass. |
5282 |
class hasMultipleVersions ifTrue:[ |
|
5283 |
fieldRef classRef resolveForVersionOf: obj or: nil. |
|
5284 |
fieldRef resolve. |
|
5285 |
offset := fieldRef resolvedOffset. |
|
5286 |
fieldRef invalidate. |
|
5287 |
] ifFalse:[ |
|
5288 |
fieldRef resolve. |
|
5289 |
offset := fieldRef resolvedOffset. |
|
5290 |
]. |
|
5291 |
^ obj instVarAt: offset. |
|
2978
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5292 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5293 |
"Created: / 20-01-2014 / 14:56:11 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
3235 | 5294 |
"Modified: / 16-08-2014 / 07:55:48 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2978
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5295 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5296 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5297 |
_GETSTATIC_R: fieldRef |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5298 |
"Called by jitted code for GETSTATIC insn iff fieldref is not yet resolved" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5299 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5300 |
| class | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5301 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5302 |
fieldRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5303 |
class := fieldRef javaClass. |
2979
c69ab7aefc53
Fixed _GETSTATIC_R: / _PUTSTATIC_R: - initialize class if not already.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2978
diff
changeset
|
5304 |
class classInitInternal. |
2992
732f9db2a195
Cleanup & refactoring of constant pool references (JavaRef2 hierarchy)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2990
diff
changeset
|
5305 |
^ class instVarAt: fieldRef resolvedOffset. |
2978
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5306 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5307 |
"Created: / 20-01-2014 / 15:03:36 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2992
732f9db2a195
Cleanup & refactoring of constant pool references (JavaRef2 hierarchy)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2990
diff
changeset
|
5308 |
"Modified: / 31-01-2014 / 09:15:55 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2978
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5309 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5310 |
|
2594
6b2c378121a3
Reimplementation of INSTANCEOF in same spirit as CHECKCAST.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2593
diff
changeset
|
5311 |
_INSTANCEOF:obj _:cls |
2595
77ab6e032c7f
CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2594
diff
changeset
|
5312 |
"A principal implementation of INSTANCEOF instruction. Called by the bytecode |
2966 | 5313 |
interpreter for unhandled cases." |
2595
77ab6e032c7f
CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2594
diff
changeset
|
5314 |
|
77ab6e032c7f
CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2594
diff
changeset
|
5315 |
obj isNil ifTrue: [ ^ 0 ]. |
2594
6b2c378121a3
Reimplementation of INSTANCEOF in same spirit as CHECKCAST.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2593
diff
changeset
|
5316 |
(self canCast: obj class to: cls) ifFalse: [ |
6b2c378121a3
Reimplementation of INSTANCEOF in same spirit as CHECKCAST.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2593
diff
changeset
|
5317 |
^ 0 |
6b2c378121a3
Reimplementation of INSTANCEOF in same spirit as CHECKCAST.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2593
diff
changeset
|
5318 |
]. |
6b2c378121a3
Reimplementation of INSTANCEOF in same spirit as CHECKCAST.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2593
diff
changeset
|
5319 |
^ 1 |
6b2c378121a3
Reimplementation of INSTANCEOF in same spirit as CHECKCAST.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2593
diff
changeset
|
5320 |
|
2151 | 5321 |
|
5322 |
"Created: / 08-01-1999 / 14:52:54 / cg" |
|
5323 |
"Modified: / 27-01-1999 / 20:56:25 / cg" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5324 |
"Modified: / 09-10-2012 / 11:55:52 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5325 |
"Modified (comment): / 15-10-2012 / 21:51:18 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5326 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5327 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5328 |
_INSTANCEOF_R: object _: classRef |
2595
77ab6e032c7f
CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2594
diff
changeset
|
5329 |
"An implementation of INSTANCEOF instruction. Called by the jitted code |
77ab6e032c7f
CHECKCAST/INSTANCEOF/ARRAYLENGTH refactoring (part 1)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2594
diff
changeset
|
5330 |
when if the classRef hasn't been resolved at the time of jitting." |
2966 | 5331 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5332 |
| class | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5333 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5334 |
object isNil ifTrue: [ ^ 0 ]. |
2966 | 5335 |
class := classRef resolve. |
5336 |
^(self canCast: object class to: class) |
|
2594
6b2c378121a3
Reimplementation of INSTANCEOF in same spirit as CHECKCAST.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2593
diff
changeset
|
5337 |
ifTrue: [ 1 ] |
6b2c378121a3
Reimplementation of INSTANCEOF in same spirit as CHECKCAST.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2593
diff
changeset
|
5338 |
ifFalse: [ 0 ]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5339 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
5340 |
"Created: / 15-10-2012 / 21:51:07 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
524 | 5341 |
! |
5342 |
||
2978
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5343 |
_INVOKEINTERFACE_R: methodRef _: receiver |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5344 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5345 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5346 |
| method | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5347 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5348 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5349 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5350 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5351 |
^ receiver perform: method selector withArguments: #() |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5352 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5353 |
"Created: / 17-01-2014 / 12:09:23 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5354 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5355 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5356 |
_INVOKEINTERFACE_R: methodRef _: receiver _: a1 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5357 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5358 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5359 |
| method args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5360 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5361 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5362 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5363 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5364 |
args := Array new: 1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5365 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5366 |
^ receiver perform: method selector withArguments: args |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5367 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5368 |
"Created: / 17-01-2014 / 12:09:41 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5369 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5370 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5371 |
_INVOKEINTERFACE_R: methodRef _: receiver _: a1 _: a2 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5372 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5373 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5374 |
| method args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5375 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5376 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5377 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5378 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5379 |
args := Array new: 2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5380 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5381 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5382 |
^ receiver perform: method selector withArguments: args |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5383 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5384 |
"Created: / 17-01-2014 / 12:09:53 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5385 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5386 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5387 |
_INVOKEINTERFACE_R: methodRef _: receiver _: a1 _: a2 _: a3 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5388 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5389 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5390 |
| method args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5391 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5392 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5393 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5394 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5395 |
args := Array new: 3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5396 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5397 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5398 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5399 |
^ receiver perform: method selector withArguments: args |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5400 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5401 |
"Created: / 17-01-2014 / 12:10:06 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5402 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5403 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5404 |
_INVOKEINTERFACE_R: methodRef _: receiver _: a1 _: a2 _: a3 _: a4 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5405 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5406 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5407 |
| method args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5408 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5409 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5410 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5411 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5412 |
args := Array new: 4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5413 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5414 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5415 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5416 |
args at: 4 put: a4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5417 |
^ receiver perform: method selector withArguments: args |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5418 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5419 |
"Created: / 17-01-2014 / 12:10:53 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5420 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5421 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5422 |
_INVOKEINTERFACE_R: methodRef _: receiver _: a1 _: a2 _: a3 _: a4 _: a5 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5423 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5424 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5425 |
| method args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5426 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5427 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5428 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5429 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5430 |
args := Array new: 5. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5431 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5432 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5433 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5434 |
args at: 4 put: a4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5435 |
args at: 5 put: a5. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5436 |
^ receiver perform: method selector withArguments: args |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5437 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5438 |
"Created: / 17-01-2014 / 12:10:53 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5439 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5440 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5441 |
_INVOKEINTERFACE_R: methodRef _: receiver _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 |
2975
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5442 |
"Called by jitted code for sends with unresolved method ref" |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5443 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5444 |
| method args | |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5445 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5446 |
method := methodRef resolve. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5447 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5448 |
|
2978
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5449 |
args := Array new: 6. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5450 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5451 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5452 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5453 |
args at: 4 put: a4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5454 |
args at: 5 put: a5. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5455 |
args at: 6 put: a6. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5456 |
^ receiver perform: method selector withArguments: args |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5457 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5458 |
"Created: / 17-01-2014 / 12:11:24 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5459 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5460 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5461 |
_INVOKEINTERFACE_R: methodRef _: receiver _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5462 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5463 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5464 |
| method args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5465 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5466 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5467 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5468 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5469 |
args := Array new: 7. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5470 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5471 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5472 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5473 |
args at: 4 put: a4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5474 |
args at: 5 put: a5. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5475 |
args at: 6 put: a6. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5476 |
args at: 7 put: a7. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5477 |
^ receiver perform: method selector withArguments: args |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5478 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5479 |
"Created: / 17-01-2014 / 12:14:03 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5480 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5481 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5482 |
_INVOKEINTERFACE_R: methodRef _: receiver _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5483 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5484 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5485 |
| method args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5486 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5487 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5488 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5489 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5490 |
args := Array new: 8. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5491 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5492 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5493 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5494 |
args at: 4 put: a4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5495 |
args at: 5 put: a5. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5496 |
args at: 6 put: a6. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5497 |
args at: 7 put: a7. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5498 |
args at: 8 put: a8. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5499 |
^ receiver perform: method selector withArguments: args |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5500 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5501 |
"Created: / 17-01-2014 / 12:14:51 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5502 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5503 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5504 |
_INVOKEINTERFACE_R: methodRef _: receiver _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 _: a9 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5505 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5506 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5507 |
| method args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5508 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5509 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5510 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5511 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5512 |
args := Array new: 9. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5513 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5514 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5515 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5516 |
args at: 4 put: a4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5517 |
args at: 5 put: a5. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5518 |
args at: 6 put: a6. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5519 |
args at: 7 put: a7. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5520 |
args at: 8 put: a8. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5521 |
args at: 9 put: a9. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5522 |
^ receiver perform: method selector withArguments: args |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5523 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5524 |
"Created: / 17-01-2014 / 12:15:57 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5525 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5526 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5527 |
_INVOKEINTERFACE_R: methodRef _: receiver _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 _: a9 _: a10 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5528 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5529 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5530 |
| method args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5531 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5532 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5533 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5534 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5535 |
args := Array new: 10. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5536 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5537 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5538 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5539 |
args at: 4 put: a4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5540 |
args at: 5 put: a5. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5541 |
args at: 6 put: a6. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5542 |
args at: 7 put: a7. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5543 |
args at: 8 put: a8. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5544 |
args at: 9 put: a9. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5545 |
args at:10 put: a10. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5546 |
^ receiver perform: method selector withArguments: args |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5547 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5548 |
"Created: / 17-01-2014 / 12:16:14 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5549 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5550 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5551 |
_INVOKEINTERFACE_R: methodRef _: receiver _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 _: a9 _: a10 _: a11 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5552 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5553 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5554 |
| method args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5555 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5556 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5557 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5558 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5559 |
args := Array new: 11. |
2975
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5560 |
args at: 1 put: a1. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5561 |
args at: 2 put: a2. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5562 |
args at: 3 put: a3. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5563 |
args at: 4 put: a4. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5564 |
args at: 5 put: a5. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5565 |
args at: 6 put: a6. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5566 |
args at: 7 put: a7. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5567 |
args at: 8 put: a8. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5568 |
args at: 9 put: a9. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5569 |
args at:10 put: a10. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5570 |
args at:11 put: a11. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5571 |
^ receiver perform: method selector withArguments: args |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5572 |
|
2978
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5573 |
"Created: / 17-01-2014 / 12:16:31 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2975
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5574 |
! |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5575 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5576 |
_INVOKEINTERFACE_R: methodRef _: receiver _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 _: a9 _: a10 _: a11 _: a12 |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5577 |
"Called by jitted code for sends with unresolved method ref" |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5578 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5579 |
| method args | |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5580 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5581 |
method := methodRef resolve. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5582 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5583 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5584 |
args := Array new: 12. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5585 |
args at: 1 put: a1. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5586 |
args at: 2 put: a2. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5587 |
args at: 3 put: a3. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5588 |
args at: 4 put: a4. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5589 |
args at: 5 put: a5. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5590 |
args at: 6 put: a6. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5591 |
args at: 7 put: a7. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5592 |
args at: 8 put: a8. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5593 |
args at: 9 put: a9. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5594 |
args at:10 put: a10. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5595 |
args at:11 put: a11. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5596 |
args at:12 put: a12. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5597 |
^ receiver perform: method selector withArguments: args |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5598 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5599 |
"Created: / 17-01-2014 / 12:16:47 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5600 |
! |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5601 |
|
2978
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5602 |
_INVOKEINTERFACE_R: methodRef _: receiver _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 _: a9 _: a10 _: a11 _: a12 _: a13 |
2975
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5603 |
"Called by jitted code for sends with unresolved method ref" |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5604 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5605 |
| method args | |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5606 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5607 |
method := methodRef resolve. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5608 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5609 |
|
2978
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5610 |
args := Array new: 13. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5611 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5612 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5613 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5614 |
args at: 4 put: a4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5615 |
args at: 5 put: a5. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5616 |
args at: 6 put: a6. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5617 |
args at: 7 put: a7. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5618 |
args at: 8 put: a8. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5619 |
args at: 9 put: a9. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5620 |
args at:10 put: a10. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5621 |
args at:11 put: a11. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5622 |
args at:12 put: a12. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5623 |
args at:13 put: a13. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5624 |
^ receiver perform: method selector withArguments: args |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5625 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5626 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5627 |
"Created: / 17-01-2014 / 12:17:00 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5628 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5629 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5630 |
_INVOKESPECIAL_R: methodRef _: receiver |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5631 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5632 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5633 |
| method class | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5634 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5635 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5636 |
class := method javaClass. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5637 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5638 |
^ method valueWithReceiver:receiver arguments:#() selector:method selector search:class sender: thisContext sender |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5639 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5640 |
"Created: / 17-01-2014 / 12:09:23 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5641 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5642 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5643 |
_INVOKESPECIAL_R: methodRef _: receiver _: a1 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5644 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5645 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5646 |
| method class args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5647 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5648 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5649 |
class := method javaClass. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5650 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5651 |
args := Array new: 1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5652 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5653 |
^ method valueWithReceiver:receiver arguments:args selector:method selector search:class sender: thisContext sender |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5654 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5655 |
"Created: / 17-01-2014 / 12:09:41 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5656 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5657 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5658 |
_INVOKESPECIAL_R: methodRef _: receiver _: a1 _: a2 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5659 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5660 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5661 |
| method class args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5662 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5663 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5664 |
class := method javaClass. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5665 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5666 |
args := Array new: 2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5667 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5668 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5669 |
^ method valueWithReceiver:receiver arguments:args selector:method selector search:class sender: thisContext sender |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5670 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5671 |
"Created: / 17-01-2014 / 12:09:53 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5672 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5673 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5674 |
_INVOKESPECIAL_R: methodRef _: receiver _: a1 _: a2 _: a3 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5675 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5676 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5677 |
| method class args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5678 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5679 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5680 |
class := method javaClass. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5681 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5682 |
args := Array new: 3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5683 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5684 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5685 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5686 |
^ method valueWithReceiver:receiver arguments:args selector:method selector search:class sender: thisContext sender |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5687 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5688 |
"Created: / 17-01-2014 / 12:10:06 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5689 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5690 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5691 |
_INVOKESPECIAL_R: methodRef _: receiver _: a1 _: a2 _: a3 _: a4 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5692 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5693 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5694 |
| method class args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5695 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5696 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5697 |
class := method javaClass. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5698 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5699 |
args := Array new: 4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5700 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5701 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5702 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5703 |
args at: 4 put: a4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5704 |
^ method valueWithReceiver:receiver arguments:args selector:method selector search:class sender: thisContext sender |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5705 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5706 |
"Created: / 17-01-2014 / 12:10:53 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5707 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5708 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5709 |
_INVOKESPECIAL_R: methodRef _: receiver _: a1 _: a2 _: a3 _: a4 _: a5 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5710 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5711 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5712 |
| method class args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5713 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5714 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5715 |
class := method javaClass. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5716 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5717 |
args := Array new: 5. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5718 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5719 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5720 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5721 |
args at: 4 put: a4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5722 |
args at: 5 put: a5. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5723 |
^ method valueWithReceiver:receiver arguments:args selector:method selector search:class sender: thisContext sender |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5724 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5725 |
"Created: / 17-01-2014 / 12:10:53 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5726 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5727 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5728 |
_INVOKESPECIAL_R: methodRef _: receiver _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5729 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5730 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5731 |
| method class args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5732 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5733 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5734 |
class := method javaClass. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5735 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5736 |
args := Array new: 6. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5737 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5738 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5739 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5740 |
args at: 4 put: a4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5741 |
args at: 5 put: a5. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5742 |
args at: 6 put: a6. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5743 |
^ method valueWithReceiver:receiver arguments:args selector:method selector search:class sender: thisContext sender |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5744 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5745 |
"Created: / 17-01-2014 / 12:11:24 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5746 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5747 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5748 |
_INVOKESPECIAL_R: methodRef _: receiver _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5749 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5750 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5751 |
| method class args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5752 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5753 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5754 |
class := method javaClass. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5755 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5756 |
args := Array new: 7. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5757 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5758 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5759 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5760 |
args at: 4 put: a4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5761 |
args at: 5 put: a5. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5762 |
args at: 6 put: a6. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5763 |
args at: 7 put: a7. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5764 |
^ method valueWithReceiver:receiver arguments:args selector:method selector search:class sender: thisContext sender |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5765 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5766 |
"Created: / 17-01-2014 / 12:14:03 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5767 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5768 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5769 |
_INVOKESPECIAL_R: methodRef _: receiver _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5770 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5771 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5772 |
| method class args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5773 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5774 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5775 |
class := method javaClass. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5776 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5777 |
args := Array new: 8. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5778 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5779 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5780 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5781 |
args at: 4 put: a4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5782 |
args at: 5 put: a5. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5783 |
args at: 6 put: a6. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5784 |
args at: 7 put: a7. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5785 |
args at: 8 put: a8. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5786 |
^ method valueWithReceiver:receiver arguments:args selector:method selector search:class sender: thisContext sender |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5787 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5788 |
"Created: / 17-01-2014 / 12:14:51 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5789 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5790 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5791 |
_INVOKESPECIAL_R: methodRef _: receiver _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 _: a9 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5792 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5793 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5794 |
| method class args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5795 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5796 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5797 |
class := method javaClass. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5798 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5799 |
args := Array new: 9. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5800 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5801 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5802 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5803 |
args at: 4 put: a4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5804 |
args at: 5 put: a5. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5805 |
args at: 6 put: a6. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5806 |
args at: 7 put: a7. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5807 |
args at: 8 put: a8. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5808 |
args at: 9 put: a9. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5809 |
^ method valueWithReceiver:receiver arguments:args selector:method selector search:class sender: thisContext sender |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5810 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5811 |
"Created: / 17-01-2014 / 12:15:57 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5812 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5813 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5814 |
_INVOKESPECIAL_R: methodRef _: receiver _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 _: a9 _: a10 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5815 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5816 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5817 |
| method class args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5818 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5819 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5820 |
class := method javaClass. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5821 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5822 |
args := Array new: 10. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5823 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5824 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5825 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5826 |
args at: 4 put: a4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5827 |
args at: 5 put: a5. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5828 |
args at: 6 put: a6. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5829 |
args at: 7 put: a7. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5830 |
args at: 8 put: a8. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5831 |
args at: 9 put: a9. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5832 |
args at:10 put: a10. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5833 |
^ method valueWithReceiver:receiver arguments:args selector:method selector search:class sender: thisContext sender |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5834 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5835 |
"Created: / 17-01-2014 / 12:16:14 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5836 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5837 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5838 |
_INVOKESPECIAL_R: methodRef _: receiver _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 _: a9 _: a10 _: a11 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5839 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5840 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5841 |
| method class args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5842 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5843 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5844 |
class := method javaClass. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5845 |
|
2975
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5846 |
args := Array new: 11. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5847 |
args at: 1 put: a1. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5848 |
args at: 2 put: a2. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5849 |
args at: 3 put: a3. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5850 |
args at: 4 put: a4. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5851 |
args at: 5 put: a5. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5852 |
args at: 6 put: a6. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5853 |
args at: 7 put: a7. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5854 |
args at: 8 put: a8. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5855 |
args at: 9 put: a9. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5856 |
args at:10 put: a10. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5857 |
args at:11 put: a11. |
2978
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5858 |
^ method valueWithReceiver:receiver arguments:args selector:method selector search:class sender: thisContext sender |
2975
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5859 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5860 |
"Created: / 17-01-2014 / 12:16:31 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5861 |
! |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5862 |
|
2978
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5863 |
_INVOKESPECIAL_R: methodRef _: receiver _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 _: a9 _: a10 _: a11 _: a12 |
2975
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5864 |
"Called by jitted code for sends with unresolved method ref" |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5865 |
|
2978
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5866 |
| method class args | |
2975
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5867 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5868 |
method := methodRef resolve. |
2978
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5869 |
class := method javaClass. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5870 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5871 |
args := Array new: 12. |
2975
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5872 |
args at: 1 put: a1. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5873 |
args at: 2 put: a2. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5874 |
args at: 3 put: a3. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5875 |
args at: 4 put: a4. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5876 |
args at: 5 put: a5. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5877 |
args at: 6 put: a6. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5878 |
args at: 7 put: a7. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5879 |
args at: 8 put: a8. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5880 |
args at: 9 put: a9. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5881 |
args at:10 put: a10. |
2978
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5882 |
args at:11 put: a11. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5883 |
args at:12 put: a12. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5884 |
^ method valueWithReceiver:receiver arguments:args selector:method selector search:class sender: thisContext sender |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5885 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5886 |
"Created: / 17-01-2014 / 12:16:47 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2975
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5887 |
! |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5888 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5889 |
_INVOKESPECIAL_R: methodRef _: receiver _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 _: a9 _: a10 _: a11 _: a12 _: a13 |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5890 |
"Called by jitted code for sends with unresolved method ref" |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5891 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5892 |
| method class args | |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5893 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5894 |
method := methodRef resolve. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5895 |
class := method javaClass. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5896 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5897 |
args := Array new: 13. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5898 |
args at: 1 put: a1. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5899 |
args at: 2 put: a2. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5900 |
args at: 3 put: a3. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5901 |
args at: 4 put: a4. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5902 |
args at: 5 put: a5. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5903 |
args at: 6 put: a6. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5904 |
args at: 7 put: a7. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5905 |
args at: 8 put: a8. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5906 |
args at: 9 put: a9. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5907 |
args at:10 put: a10. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5908 |
args at:11 put: a11. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5909 |
args at:12 put: a12. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5910 |
args at:13 put: a13. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5911 |
^ method valueWithReceiver:receiver arguments:args selector:method selector search:class sender: thisContext sender |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5912 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5913 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5914 |
"Created: / 17-01-2014 / 12:17:00 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5915 |
! |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
5916 |
|
2978
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5917 |
_INVOKESTATIC_R: methodRef |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5918 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5919 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5920 |
| method class | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5921 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5922 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5923 |
class := method javaClass. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5924 |
class classInitInternal. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5925 |
^ method valueWithReceiver:class arguments:#() selector:method selector search:class sender: thisContext sender |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5926 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5927 |
"Created: / 17-01-2014 / 12:09:23 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5928 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5929 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5930 |
_INVOKESTATIC_R: methodRef _: a1 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5931 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5932 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5933 |
| method class args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5934 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5935 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5936 |
class := method javaClass. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5937 |
class classInitInternal. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5938 |
args := Array new: 1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5939 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5940 |
^ method valueWithReceiver:class arguments:args selector:method selector search:class sender: thisContext sender |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5941 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5942 |
"Created: / 17-01-2014 / 12:09:41 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5943 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5944 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5945 |
_INVOKESTATIC_R: methodRef _: a1 _: a2 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5946 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5947 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5948 |
| method class args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5949 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5950 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5951 |
class := method javaClass. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5952 |
class classInitInternal. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5953 |
args := Array new: 2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5954 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5955 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5956 |
^ method valueWithReceiver:class arguments:args selector:method selector search:class sender: thisContext sender |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5957 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5958 |
"Created: / 17-01-2014 / 12:09:53 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5959 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5960 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5961 |
_INVOKESTATIC_R: methodRef _: a1 _: a2 _: a3 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5962 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5963 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5964 |
| method class args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5965 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5966 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5967 |
class := method javaClass. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5968 |
class classInitInternal. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5969 |
args := Array new: 3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5970 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5971 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5972 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5973 |
^ method valueWithReceiver:class arguments:args selector:method selector search:class sender: thisContext sender |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5974 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5975 |
"Created: / 17-01-2014 / 12:10:06 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5976 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5977 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5978 |
_INVOKESTATIC_R: methodRef _: a1 _: a2 _: a3 _: a4 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5979 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5980 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5981 |
| method class args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5982 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5983 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5984 |
class := method javaClass. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5985 |
class classInitInternal. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5986 |
args := Array new: 4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5987 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5988 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5989 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5990 |
args at: 4 put: a4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5991 |
^ method valueWithReceiver:class arguments:args selector:method selector search:class sender: thisContext sender |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5992 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5993 |
"Created: / 17-01-2014 / 12:10:53 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5994 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5995 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5996 |
_INVOKESTATIC_R: methodRef _: a1 _: a2 _: a3 _: a4 _: a5 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5997 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5998 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
5999 |
| method class args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6000 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6001 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6002 |
class := method javaClass. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6003 |
class classInitInternal. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6004 |
args := Array new: 5. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6005 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6006 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6007 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6008 |
args at: 4 put: a4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6009 |
args at: 5 put: a5. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6010 |
^ method valueWithReceiver:class arguments:args selector:method selector search:class sender: thisContext sender |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6011 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6012 |
"Created: / 17-01-2014 / 12:10:53 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6013 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6014 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6015 |
_INVOKESTATIC_R: methodRef _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 |
2975
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6016 |
"Called by jitted code for sends with unresolved method ref" |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6017 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6018 |
| method class args | |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6019 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6020 |
method := methodRef resolve. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6021 |
class := method javaClass. |
2978
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6022 |
class classInitInternal. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6023 |
args := Array new: 6. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6024 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6025 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6026 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6027 |
args at: 4 put: a4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6028 |
args at: 5 put: a5. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6029 |
args at: 6 put: a6. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6030 |
^ method valueWithReceiver:class arguments:args selector:method selector search:class sender: thisContext sender |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6031 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6032 |
"Created: / 17-01-2014 / 12:11:24 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6033 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6034 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6035 |
_INVOKESTATIC_R: methodRef _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6036 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6037 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6038 |
| method class args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6039 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6040 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6041 |
class := method javaClass. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6042 |
class classInitInternal. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6043 |
args := Array new: 7. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6044 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6045 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6046 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6047 |
args at: 4 put: a4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6048 |
args at: 5 put: a5. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6049 |
args at: 6 put: a6. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6050 |
args at: 7 put: a7. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6051 |
^ method valueWithReceiver:class arguments:args selector:method selector search:class sender: thisContext sender |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6052 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6053 |
"Created: / 17-01-2014 / 12:14:03 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6054 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6055 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6056 |
_INVOKESTATIC_R: methodRef _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6057 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6058 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6059 |
| method class args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6060 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6061 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6062 |
class := method javaClass. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6063 |
class classInitInternal. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6064 |
args := Array new: 8. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6065 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6066 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6067 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6068 |
args at: 4 put: a4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6069 |
args at: 5 put: a5. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6070 |
args at: 6 put: a6. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6071 |
args at: 7 put: a7. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6072 |
args at: 8 put: a8. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6073 |
^ method valueWithReceiver:class arguments:args selector:method selector search:class sender: thisContext sender |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6074 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6075 |
"Created: / 17-01-2014 / 12:14:51 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6076 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6077 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6078 |
_INVOKESTATIC_R: methodRef _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 _: a9 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6079 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6080 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6081 |
| method class args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6082 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6083 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6084 |
class := method javaClass. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6085 |
class classInitInternal. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6086 |
args := Array new: 9. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6087 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6088 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6089 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6090 |
args at: 4 put: a4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6091 |
args at: 5 put: a5. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6092 |
args at: 6 put: a6. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6093 |
args at: 7 put: a7. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6094 |
args at: 8 put: a8. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6095 |
args at: 9 put: a9. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6096 |
^ method valueWithReceiver:class arguments:args selector:method selector search:class sender: thisContext sender |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6097 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6098 |
"Created: / 17-01-2014 / 12:15:57 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6099 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6100 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6101 |
_INVOKESTATIC_R: methodRef _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 _: a9 _: a10 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6102 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6103 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6104 |
| method class args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6105 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6106 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6107 |
class := method javaClass. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6108 |
class classInitInternal. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6109 |
args := Array new: 10. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6110 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6111 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6112 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6113 |
args at: 4 put: a4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6114 |
args at: 5 put: a5. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6115 |
args at: 6 put: a6. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6116 |
args at: 7 put: a7. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6117 |
args at: 8 put: a8. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6118 |
args at: 9 put: a9. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6119 |
args at:10 put: a10. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6120 |
^ method valueWithReceiver:class arguments:args selector:method selector search:class sender: thisContext sender |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6121 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6122 |
"Created: / 17-01-2014 / 12:16:14 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6123 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6124 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6125 |
_INVOKESTATIC_R: methodRef _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 _: a9 _: a10 _: a11 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6126 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6127 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6128 |
| method class args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6129 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6130 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6131 |
class := method javaClass. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6132 |
class classInitInternal. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6133 |
args := Array new: 11. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6134 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6135 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6136 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6137 |
args at: 4 put: a4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6138 |
args at: 5 put: a5. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6139 |
args at: 6 put: a6. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6140 |
args at: 7 put: a7. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6141 |
args at: 8 put: a8. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6142 |
args at: 9 put: a9. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6143 |
args at:10 put: a10. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6144 |
args at:11 put: a11. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6145 |
^ method valueWithReceiver:class arguments:args selector:method selector search:class sender: thisContext sender |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6146 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6147 |
"Created: / 17-01-2014 / 12:16:31 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6148 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6149 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6150 |
_INVOKESTATIC_R: methodRef _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 _: a9 _: a10 _: a11 _: a12 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6151 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6152 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6153 |
| method class args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6154 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6155 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6156 |
class := method javaClass. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6157 |
class classInitInternal. |
2975
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6158 |
args := Array new: 12. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6159 |
args at: 1 put: a1. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6160 |
args at: 2 put: a2. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6161 |
args at: 3 put: a3. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6162 |
args at: 4 put: a4. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6163 |
args at: 5 put: a5. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6164 |
args at: 6 put: a6. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6165 |
args at: 7 put: a7. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6166 |
args at: 8 put: a8. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6167 |
args at: 9 put: a9. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6168 |
args at:10 put: a10. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6169 |
args at:11 put: a11. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6170 |
args at:12 put: a12. |
2978
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6171 |
^ method valueWithReceiver:class arguments:args selector:method selector search:class sender: thisContext sender |
2975
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6172 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6173 |
"Created: / 17-01-2014 / 12:16:47 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6174 |
! |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6175 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6176 |
_INVOKESTATIC_R: methodRef _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 _: a9 _: a10 _: a11 _: a12 _: a13 |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6177 |
"Called by jitted code for sends with unresolved method ref" |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6178 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6179 |
| method class args | |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6180 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6181 |
method := methodRef resolve. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6182 |
class := method javaClass. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6183 |
class classInitInternal. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6184 |
args := Array new: 13. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6185 |
args at: 1 put: a1. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6186 |
args at: 2 put: a2. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6187 |
args at: 3 put: a3. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6188 |
args at: 4 put: a4. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6189 |
args at: 5 put: a5. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6190 |
args at: 6 put: a6. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6191 |
args at: 7 put: a7. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6192 |
args at: 8 put: a8. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6193 |
args at: 9 put: a9. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6194 |
args at:10 put: a10. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6195 |
args at:11 put: a11. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6196 |
args at:12 put: a12. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6197 |
args at:13 put: a13. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6198 |
^ method valueWithReceiver:class arguments:args selector:method selector search:class sender: thisContext sender |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6199 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6200 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6201 |
"Created: / 17-01-2014 / 12:17:00 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6202 |
! |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6203 |
|
2978
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6204 |
_INVOKEVIRTUAL_R: methodRef _: receiver |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6205 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6206 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6207 |
| method | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6208 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6209 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6210 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6211 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6212 |
^ receiver perform: method selector withArguments: #() |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6213 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6214 |
"Created: / 17-01-2014 / 12:09:23 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6215 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6216 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6217 |
_INVOKEVIRTUAL_R: methodRef _: receiver _: a1 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6218 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6219 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6220 |
| method args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6221 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6222 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6223 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6224 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6225 |
args := Array new: 1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6226 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6227 |
^ receiver perform: method selector withArguments: args |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6228 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6229 |
"Created: / 17-01-2014 / 12:09:41 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6230 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6231 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6232 |
_INVOKEVIRTUAL_R: methodRef _: receiver _: a1 _: a2 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6233 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6234 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6235 |
| method args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6236 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6237 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6238 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6239 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6240 |
args := Array new: 2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6241 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6242 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6243 |
^ receiver perform: method selector withArguments: args |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6244 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6245 |
"Created: / 17-01-2014 / 12:09:53 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6246 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6247 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6248 |
_INVOKEVIRTUAL_R: methodRef _: receiver _: a1 _: a2 _: a3 |
2975
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6249 |
"Called by jitted code for sends with unresolved method ref" |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6250 |
|
2978
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6251 |
| method args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6252 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6253 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6254 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6255 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6256 |
args := Array new: 3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6257 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6258 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6259 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6260 |
^ receiver perform: method selector withArguments: args |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6261 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6262 |
"Created: / 17-01-2014 / 12:10:06 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6263 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6264 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6265 |
_INVOKEVIRTUAL_R: methodRef _: receiver _: a1 _: a2 _: a3 _: a4 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6266 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6267 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6268 |
| method args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6269 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6270 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6271 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6272 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6273 |
args := Array new: 4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6274 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6275 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6276 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6277 |
args at: 4 put: a4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6278 |
^ receiver perform: method selector withArguments: args |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6279 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6280 |
"Created: / 17-01-2014 / 12:10:53 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6281 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6282 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6283 |
_INVOKEVIRTUAL_R: methodRef _: receiver _: a1 _: a2 _: a3 _: a4 _: a5 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6284 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6285 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6286 |
| method args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6287 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6288 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6289 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6290 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6291 |
args := Array new: 5. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6292 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6293 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6294 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6295 |
args at: 4 put: a4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6296 |
args at: 5 put: a5. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6297 |
^ receiver perform: method selector withArguments: args |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6298 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6299 |
"Created: / 17-01-2014 / 12:10:53 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6300 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6301 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6302 |
_INVOKEVIRTUAL_R: methodRef _: receiver _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6303 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6304 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6305 |
| method args | |
2975
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6306 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6307 |
method := methodRef resolve. |
2978
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6308 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6309 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6310 |
args := Array new: 6. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6311 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6312 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6313 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6314 |
args at: 4 put: a4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6315 |
args at: 5 put: a5. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6316 |
args at: 6 put: a6. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6317 |
^ receiver perform: method selector withArguments: args |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6318 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6319 |
"Created: / 17-01-2014 / 12:11:24 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6320 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6321 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6322 |
_INVOKEVIRTUAL_R: methodRef _: receiver _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6323 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6324 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6325 |
| method args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6326 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6327 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6328 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6329 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6330 |
args := Array new: 7. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6331 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6332 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6333 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6334 |
args at: 4 put: a4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6335 |
args at: 5 put: a5. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6336 |
args at: 6 put: a6. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6337 |
args at: 7 put: a7. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6338 |
^ receiver perform: method selector withArguments: args |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6339 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6340 |
"Created: / 17-01-2014 / 12:14:03 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6341 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6342 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6343 |
_INVOKEVIRTUAL_R: methodRef _: receiver _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6344 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6345 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6346 |
| method args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6347 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6348 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6349 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6350 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6351 |
args := Array new: 8. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6352 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6353 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6354 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6355 |
args at: 4 put: a4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6356 |
args at: 5 put: a5. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6357 |
args at: 6 put: a6. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6358 |
args at: 7 put: a7. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6359 |
args at: 8 put: a8. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6360 |
^ receiver perform: method selector withArguments: args |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6361 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6362 |
"Created: / 17-01-2014 / 12:14:51 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6363 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6364 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6365 |
_INVOKEVIRTUAL_R: methodRef _: receiver _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 _: a9 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6366 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6367 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6368 |
| method args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6369 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6370 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6371 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6372 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6373 |
args := Array new: 9. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6374 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6375 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6376 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6377 |
args at: 4 put: a4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6378 |
args at: 5 put: a5. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6379 |
args at: 6 put: a6. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6380 |
args at: 7 put: a7. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6381 |
args at: 8 put: a8. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6382 |
args at: 9 put: a9. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6383 |
^ receiver perform: method selector withArguments: args |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6384 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6385 |
"Created: / 17-01-2014 / 12:15:57 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6386 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6387 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6388 |
_INVOKEVIRTUAL_R: methodRef _: receiver _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 _: a9 _: a10 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6389 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6390 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6391 |
| method args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6392 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6393 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6394 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6395 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6396 |
args := Array new: 10. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6397 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6398 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6399 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6400 |
args at: 4 put: a4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6401 |
args at: 5 put: a5. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6402 |
args at: 6 put: a6. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6403 |
args at: 7 put: a7. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6404 |
args at: 8 put: a8. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6405 |
args at: 9 put: a9. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6406 |
args at:10 put: a10. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6407 |
^ receiver perform: method selector withArguments: args |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6408 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6409 |
"Created: / 17-01-2014 / 12:16:14 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6410 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6411 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6412 |
_INVOKEVIRTUAL_R: methodRef _: receiver _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 _: a9 _: a10 _: a11 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6413 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6414 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6415 |
| method args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6416 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6417 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6418 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6419 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6420 |
args := Array new: 11. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6421 |
args at: 1 put: a1. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6422 |
args at: 2 put: a2. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6423 |
args at: 3 put: a3. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6424 |
args at: 4 put: a4. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6425 |
args at: 5 put: a5. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6426 |
args at: 6 put: a6. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6427 |
args at: 7 put: a7. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6428 |
args at: 8 put: a8. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6429 |
args at: 9 put: a9. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6430 |
args at:10 put: a10. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6431 |
args at:11 put: a11. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6432 |
^ receiver perform: method selector withArguments: args |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6433 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6434 |
"Created: / 17-01-2014 / 12:16:31 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6435 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6436 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6437 |
_INVOKEVIRTUAL_R: methodRef _: receiver _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 _: a9 _: a10 _: a11 _: a12 |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6438 |
"Called by jitted code for sends with unresolved method ref" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6439 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6440 |
| method args | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6441 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6442 |
method := methodRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6443 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6444 |
|
2975
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6445 |
args := Array new: 12. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6446 |
args at: 1 put: a1. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6447 |
args at: 2 put: a2. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6448 |
args at: 3 put: a3. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6449 |
args at: 4 put: a4. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6450 |
args at: 5 put: a5. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6451 |
args at: 6 put: a6. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6452 |
args at: 7 put: a7. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6453 |
args at: 8 put: a8. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6454 |
args at: 9 put: a9. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6455 |
args at:10 put: a10. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6456 |
args at:11 put: a11. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6457 |
args at:12 put: a12. |
2978
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6458 |
^ receiver perform: method selector withArguments: args |
2975
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6459 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6460 |
"Created: / 17-01-2014 / 12:16:47 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6461 |
! |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6462 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6463 |
_INVOKEVIRTUAL_R: methodRef _: receiver _: a1 _: a2 _: a3 _: a4 _: a5 _: a6 _: a7 _: a8 _: a9 _: a10 _: a11 _: a12 _: a13 |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6464 |
"Called by jitted code for sends with unresolved method ref" |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6465 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6466 |
| method args | |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6467 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6468 |
method := methodRef resolve. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6469 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6470 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6471 |
args := Array new: 13. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6472 |
args at: 1 put: a1. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6473 |
args at: 2 put: a2. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6474 |
args at: 3 put: a3. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6475 |
args at: 4 put: a4. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6476 |
args at: 5 put: a5. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6477 |
args at: 6 put: a6. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6478 |
args at: 7 put: a7. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6479 |
args at: 8 put: a8. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6480 |
args at: 9 put: a9. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6481 |
args at:10 put: a10. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6482 |
args at:11 put: a11. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6483 |
args at:12 put: a12. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6484 |
args at:13 put: a13. |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6485 |
^ receiver perform: method selector withArguments: args |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6486 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6487 |
|
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6488 |
"Created: / 17-01-2014 / 12:17:00 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6489 |
! |
ec1f7113fac0
Added _INVOKE*R: methods used by new JIT compiler.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2966
diff
changeset
|
6490 |
|
524 | 6491 |
_L2D:op1 |
6492 |
^ op1 asFloat |
|
6493 |
||
6494 |
"Created: / 8.1.1999 / 14:46:09 / cg" |
|
6495 |
! |
|
6496 |
||
6497 |
_L2F:op1 |
|
6498 |
^ op1 asShortFloat |
|
6499 |
||
6500 |
"Created: / 8.1.1999 / 14:46:18 / cg" |
|
6501 |
"Modified: / 8.1.1999 / 14:50:18 / cg" |
|
6502 |
! |
|
6503 |
||
6504 |
_LADD:op1 _:op2 |
|
6505 |
|sum| |
|
6506 |
||
6507 |
sum := (op1 + op2) bitAnd:16rFFFFFFFFFFFFFFFF. |
|
6508 |
^ sum |
|
6509 |
||
6510 |
"Created: / 8.1.1999 / 15:07:39 / cg" |
|
6511 |
! |
|
6512 |
||
6513 |
_LAND:op1 _:op2 |
|
6514 |
|rslt| |
|
6515 |
||
6516 |
(op1 < 0 or:[op2 < 0]) ifTrue:[ |
|
616 | 6517 |
self halt. |
524 | 6518 |
]. |
6519 |
rslt := op1 bitAnd: op2. |
|
6520 |
^ rslt |
|
6521 |
||
6522 |
"Modified: / 7.1.1998 / 21:21:53 / cg" |
|
6523 |
"Created: / 8.1.1999 / 14:54:22 / cg" |
|
6524 |
! |
|
6525 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6526 |
_LDC_R: ref |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6527 |
"Called by JIT-compiled code for non-constant |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6528 |
reference (StringRef or ClassRef" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6529 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6530 |
^ref isJavaClassRef ifTrue:[ |
2584
af1783f58d87
Bugfix in _LDC_R: - do not initilalize class.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2582
diff
changeset
|
6531 |
self javaClassObjectForClass: (ref resolve: false) |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6532 |
] ifFalse:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6533 |
ref resolve |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6534 |
] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6535 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6536 |
"Created: / 16-10-2012 / 09:34:27 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6537 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6538 |
|
524 | 6539 |
_LDIV:op1 _:op2 |
6540 |
|quo| |
|
6541 |
||
6542 |
quo := op1 quo: op2. |
|
6543 |
^ quo |
|
6544 |
||
6545 |
"Created: / 8.1.1999 / 15:04:47 / cg" |
|
6546 |
! |
|
6547 |
||
6548 |
_LMUL:op1 _:op2 |
|
6549 |
|prod o1 o2 sign| |
|
6550 |
||
6551 |
"/ self halt. |
|
6552 |
"/ ST's largeIntegers compute a correct result; |
|
6553 |
"/ but here, we want the overflow to flow into the |
|
6554 |
"/ sign bit ... (sigh) |
|
6555 |
||
6556 |
sign := 1. |
|
6557 |
(o1 := op1) < 0 ifTrue:[ |
|
616 | 6558 |
sign := -1. |
6559 |
o1 := o1 negated. |
|
524 | 6560 |
]. |
6561 |
(o2 := op2) < 0 ifTrue:[ |
|
616 | 6562 |
sign := sign negated. |
6563 |
o2 := o2 negated. |
|
524 | 6564 |
]. |
6565 |
||
6566 |
prod := (o1 * o2) bitAnd:16rFFFFFFFFFFFFFFFF. |
|
6567 |
(prod bitAnd:16r8000000000000000) ~~ 0 ifTrue:[ |
|
6568 |
]. |
|
6569 |
sign == -1 ifTrue:[ |
|
616 | 6570 |
prod := prod negated |
524 | 6571 |
]. |
6572 |
^ prod |
|
6573 |
||
6574 |
"Created: / 8.1.1999 / 15:10:04 / cg" |
|
6575 |
! |
|
6576 |
||
6577 |
_LNEG:op |
|
6578 |
^ op asInteger negated |
|
6579 |
||
6580 |
"Created: / 8.1.1999 / 15:06:59 / cg" |
|
6581 |
! |
|
6582 |
||
6583 |
_LOR:op1 _:op2 |
|
6584 |
|rslt| |
|
6585 |
||
6586 |
(op1 < 0 or:[op2 < 0]) ifTrue:[ |
|
616 | 6587 |
self halt. |
524 | 6588 |
]. |
6589 |
rslt := op1 bitOr: op2. |
|
6590 |
^ rslt |
|
6591 |
||
6592 |
"Created: / 8.1.1999 / 15:05:10 / cg" |
|
6593 |
! |
|
6594 |
||
6595 |
_LREM:op1 _:op2 |
|
6596 |
|rem| |
|
6597 |
||
6598 |
rem := op1 rem: op2. |
|
6599 |
^ rem |
|
6600 |
||
6601 |
"Modified: / 7.1.1998 / 00:23:11 / cg" |
|
6602 |
"Created: / 8.1.1999 / 15:04:23 / cg" |
|
6603 |
! |
|
6604 |
||
6605 |
_LSHL:op1 _:op2 |
|
6606 |
|rslt| |
|
6607 |
||
6608 |
(op1 < 0) ifTrue:[ |
|
616 | 6609 |
self halt. |
524 | 6610 |
]. |
6611 |
rslt := (op1 bitShift:op2) bitAnd:16rFFFFFFFFFFFFFFFF. |
|
6612 |
^ rslt |
|
6613 |
||
6614 |
"Created: / 8.1.1999 / 14:51:08 / cg" |
|
6615 |
! |
|
6616 |
||
6617 |
_LSHR:op1 _:op2 |
|
6618 |
|rslt| |
|
6619 |
||
6620 |
op1 < 0 ifTrue:[ |
|
616 | 6621 |
self halt |
524 | 6622 |
]. |
6623 |
||
6624 |
(op1 < 0) ifTrue:[ |
|
616 | 6625 |
self halt. |
524 | 6626 |
]. |
6627 |
rslt := (op1 bitShift:op2 negated) bitAnd:16rFFFFFFFFFFFFFFFF. |
|
6628 |
^ rslt |
|
6629 |
||
6630 |
"Created: / 8.1.1999 / 14:51:57 / cg" |
|
6631 |
! |
|
6632 |
||
6633 |
_LSUB:op1 _:op2 |
|
6634 |
|diff| |
|
6635 |
||
6636 |
diff := (op1 - op2) bitAnd:16rFFFFFFFFFFFFFFFF. |
|
6637 |
^ diff |
|
6638 |
||
6639 |
"Created: / 8.1.1999 / 15:10:33 / cg" |
|
6640 |
! |
|
6641 |
||
6642 |
_LUSHR:op1 _:op2 |
|
6643 |
|rslt| |
|
6644 |
||
6645 |
op1 < 0 ifTrue:[ |
|
616 | 6646 |
self halt |
524 | 6647 |
]. |
6648 |
||
6649 |
(op1 < 0) ifTrue:[ |
|
616 | 6650 |
self halt. |
524 | 6651 |
]. |
6652 |
rslt := (op1 bitShift:op2 negated) bitAnd:16rFFFFFFFFFFFFFFFF. |
|
6653 |
^ rslt |
|
6654 |
||
6655 |
"Modified: / 7.1.1998 / 21:22:17 / cg" |
|
6656 |
"Created: / 8.1.1999 / 14:51:32 / cg" |
|
6657 |
! |
|
6658 |
||
6659 |
_LXOR:op1 _:op2 |
|
6660 |
|rslt| |
|
6661 |
||
6662 |
(op1 < 0 or:[op2 < 0]) ifTrue:[ |
|
616 | 6663 |
self halt. |
524 | 6664 |
]. |
6665 |
rslt := op1 bitXor: op2. |
|
6666 |
^ rslt |
|
6667 |
||
6668 |
"Created: / 8.1.1999 / 15:12:28 / cg" |
|
6669 |
! |
|
6670 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6671 |
_MONITORENTER: someObject |
2956
17be352f0130
Added lockWord to JavaBehavior to enable thinlocking for static methods and resolver.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2955
diff
changeset
|
6672 |
"/self assert: (thisContext sender isJavaContext). |
17be352f0130
Added lockWord to JavaBehavior to enable thinlocking for static methods and resolver.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2955
diff
changeset
|
6673 |
"/self assert: (thisContext sender isMarkedForUnwind). |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6674 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6675 |
self monitorEnter: someObject in: thisContext sender. |
253 | 6676 |
|
2151 | 6677 |
"Created: / 08-01-1999 / 14:23:10 / cg" |
6678 |
"Modified: / 08-01-1999 / 18:47:26 / cg" |
|
6679 |
"Modified: / 10-08-2011 / 20:19:52 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6680 |
"Modified: / 09-11-2011 / 19:23:12 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6681 |
"Modified (format): / 26-08-2012 / 15:20:39 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6682 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6683 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6684 |
_MONITOREXIT: someObject |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6685 |
self monitorExit: someObject in: thisContext sender. |
528 | 6686 |
|
2151 | 6687 |
"Created: / 08-01-1999 / 14:23:19 / cg" |
6688 |
"Modified: / 08-01-1999 / 18:47:08 / cg" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6689 |
"Modified: / 09-11-2011 / 12:42:06 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6690 |
"Modified: / 26-08-2012 / 23:51:46 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6691 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6692 |
|
2987
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6693 |
_MULTIANEWARRAY1: cls _: dim1 |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6694 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6695 |
| a1 | |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6696 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6697 |
dim1 < 0 ifTrue:[ |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6698 |
self throwExceptionClassName:'java.lang.NegativeArraySizeException' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6699 |
withMessage:'negative array size not allowed'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6700 |
^nil |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6701 |
]. |
2987
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6702 |
a1 := cls new: dim1. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6703 |
^ a1. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6704 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6705 |
"Created: / 28-01-2014 / 10:02:55 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
3066 | 6706 |
"Modified: / 09-04-2014 / 15:49:18 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2987
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6707 |
! |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6708 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6709 |
_MULTIANEWARRAY1_R: clsRef _: dim1 |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6710 |
^ self _MULTIANEWARRAY1: clsRef resolve _: dim1 |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6711 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6712 |
"Created: / 28-01-2014 / 10:04:26 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6713 |
! |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6714 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6715 |
_MULTIANEWARRAY2: cls _: dim1 _: dim2 |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6716 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6717 |
| a1 | |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6718 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6719 |
dim1 < 0 ifTrue:[ |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6720 |
self throwExceptionClassName:'java.lang.NegativeArraySizeException' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6721 |
withMessage:'negative array size not allowed'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6722 |
^nil |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6723 |
]. |
2987
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6724 |
dim2 < 0 ifTrue:[ |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6725 |
self throwExceptionClassName:'java.lang.NegativeArraySizeException' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6726 |
withMessage:'negative array size not allowed'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6727 |
^nil |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6728 |
]. |
2987
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6729 |
a1 := cls new: dim1. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6730 |
1 to: dim1 do:[:i1| |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6731 |
| a2 | |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6732 |
a2 := (a1 class javaComponentClass new: dim2). |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6733 |
a1 at: i1 put: a2. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6734 |
]. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6735 |
^ a1. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6736 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6737 |
"Created: / 28-01-2014 / 10:03:03 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6738 |
! |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6739 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6740 |
_MULTIANEWARRAY2_R: clsRef _: dim1 _: dim2 |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6741 |
^ self _MULTIANEWARRAY2: clsRef resolve _: dim1 _: dim2 |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6742 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6743 |
"Created: / 28-01-2014 / 10:04:11 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6744 |
! |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6745 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6746 |
_MULTIANEWARRAY3: cls _: dim1 _: dim2 _: dim3 |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6747 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6748 |
| a1 | |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6749 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6750 |
dim1 < 0 ifTrue:[ |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6751 |
self throwExceptionClassName:'java.lang.NegativeArraySizeException' |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6752 |
withMessage:'negative array size not allowed'. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6753 |
^nil |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6754 |
]. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6755 |
dim2 < 0 ifTrue:[ |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6756 |
self throwExceptionClassName:'java.lang.NegativeArraySizeException' |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6757 |
withMessage:'negative array size not allowed'. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6758 |
^nil |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6759 |
]. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6760 |
dim3 < 0 ifTrue:[ |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6761 |
self throwExceptionClassName:'java.lang.NegativeArraySizeException' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6762 |
withMessage:'negative array size not allowed'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6763 |
^nil |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6764 |
]. |
2987
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6765 |
a1 := cls new: dim1. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6766 |
1 to: dim1 do:[:i1| |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6767 |
| a2 | |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6768 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6769 |
a2 := a1 class javaComponentClass new: dim2. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6770 |
1 to: dim2 do:[:i2 | |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6771 |
| a3 | |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6772 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6773 |
a3 := a2 class javaComponentClass new: dim3. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6774 |
a2 at: i2 put: a3. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6775 |
]. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6776 |
a1 at: i1 put: a2. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6777 |
]. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6778 |
^ a1. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6779 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6780 |
"Created: / 28-01-2014 / 10:04:36 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6781 |
! |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6782 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6783 |
_MULTIANEWARRAY3_R: clsRef _: dim1 _: dim2 _: dim3 |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6784 |
^ self _MULTIANEWARRAY3: clsRef resolve _: dim1 _: dim2 _: dim3 |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6785 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6786 |
"Created: / 28-01-2014 / 10:05:01 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6787 |
! |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6788 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6789 |
_MULTIANEWARRAY4: cls _: dim1 _: dim2 _: dim3 _: dim4 |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6790 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6791 |
| a1 | |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6792 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6793 |
dim1 < 0 ifTrue:[ |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6794 |
self throwExceptionClassName:'java.lang.NegativeArraySizeException' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6795 |
withMessage:'negative array size not allowed'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6796 |
^nil |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6797 |
]. |
2987
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6798 |
dim2 < 0 ifTrue:[ |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6799 |
self throwExceptionClassName:'java.lang.NegativeArraySizeException' |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6800 |
withMessage:'negative array size not allowed'. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6801 |
^nil |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6802 |
]. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6803 |
dim3 < 0 ifTrue:[ |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6804 |
self throwExceptionClassName:'java.lang.NegativeArraySizeException' |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6805 |
withMessage:'negative array size not allowed'. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6806 |
^nil |
2990
21011804a910
Fixed _GETFIELD_R: / _PUTFIELD_R: to throw NPE when an object is nil.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2989
diff
changeset
|
6807 |
]. |
2987
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6808 |
dim4 < 0 ifTrue:[ |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6809 |
self throwExceptionClassName:'java.lang.NegativeArraySizeException' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6810 |
withMessage:'negative array size not allowed'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6811 |
^nil |
2990
21011804a910
Fixed _GETFIELD_R: / _PUTFIELD_R: to throw NPE when an object is nil.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2989
diff
changeset
|
6812 |
]. |
2987
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6813 |
a1 := cls new: dim1. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6814 |
1 to: dim1 do:[:i1| |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6815 |
| a2 | |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6816 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6817 |
a2 := a1 class javaComponentClass new: dim2. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6818 |
1 to: dim2 do:[:i2 | |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6819 |
| a3 | |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6820 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6821 |
a3 := a2 class javaComponentClass new: dim3. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6822 |
1 to: dim3 do:[:i3 | |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6823 |
| a4 | |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6824 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6825 |
a4 := a3 class javaComponentClass new: dim4. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6826 |
a3 at: i3 put: a4. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6827 |
]. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6828 |
a2 at: i2 put: a3. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6829 |
]. |
2987
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6830 |
a1 at: i1 put: a2. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6831 |
]. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6832 |
^ a1. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6833 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6834 |
"Created: / 28-01-2014 / 10:03:12 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6835 |
! |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6836 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6837 |
_MULTIANEWARRAY4_R: clsRef _: dim1 _: dim2 _: dim3 _: dim4 |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6838 |
^ self _MULTIANEWARRAY4: clsRef resolve _: dim1 _: dim2 _: dim3 _: dim4 |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6839 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6840 |
"Created: / 28-01-2014 / 10:05:12 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6841 |
! |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6842 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6843 |
_MULTIANEWARRAY5: cls _: dim1 _: dim2 _: dim3 _: dim4 _: dim5 |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6844 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6845 |
| a1 | |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6846 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6847 |
dim1 < 0 ifTrue:[ |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6848 |
self throwExceptionClassName:'java.lang.NegativeArraySizeException' |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6849 |
withMessage:'negative array size not allowed'. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6850 |
^nil |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6851 |
]. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6852 |
dim2 < 0 ifTrue:[ |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6853 |
self throwExceptionClassName:'java.lang.NegativeArraySizeException' |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6854 |
withMessage:'negative array size not allowed'. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6855 |
^nil |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6856 |
]. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6857 |
dim3 < 0 ifTrue:[ |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6858 |
self throwExceptionClassName:'java.lang.NegativeArraySizeException' |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6859 |
withMessage:'negative array size not allowed'. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6860 |
^nil |
2990
21011804a910
Fixed _GETFIELD_R: / _PUTFIELD_R: to throw NPE when an object is nil.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2989
diff
changeset
|
6861 |
]. |
2987
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6862 |
dim4 < 0 ifTrue:[ |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6863 |
self throwExceptionClassName:'java.lang.NegativeArraySizeException' |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6864 |
withMessage:'negative array size not allowed'. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6865 |
^nil |
2990
21011804a910
Fixed _GETFIELD_R: / _PUTFIELD_R: to throw NPE when an object is nil.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2989
diff
changeset
|
6866 |
]. |
2987
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6867 |
dim5 < 0 ifTrue:[ |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6868 |
self throwExceptionClassName:'java.lang.NegativeArraySizeException' |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6869 |
withMessage:'negative array size not allowed'. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6870 |
^nil |
2990
21011804a910
Fixed _GETFIELD_R: / _PUTFIELD_R: to throw NPE when an object is nil.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2989
diff
changeset
|
6871 |
]. |
2987
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6872 |
a1 := cls new: dim1. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6873 |
1 to: dim1 do:[:i1| |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6874 |
| a2 | |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6875 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6876 |
a2 := a1 class javaComponentClass new: dim2. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6877 |
1 to: dim2 do:[:i2 | |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6878 |
| a3 | |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6879 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6880 |
a3 := a2 class javaComponentClass new: dim3. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6881 |
1 to: dim3 do:[:i3 | |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6882 |
| a4 | |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6883 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6884 |
a4 := a3 class javaComponentClass new: dim4. |
2990
21011804a910
Fixed _GETFIELD_R: / _PUTFIELD_R: to throw NPE when an object is nil.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2989
diff
changeset
|
6885 |
1 to: dim4 do:[:i4 | |
2987
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6886 |
| a5 | |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6887 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6888 |
a5 := a4 class javaComponentClass new: dim5. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6889 |
a4 at: i4 put: a5. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6890 |
]. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6891 |
a3 at: i3 put: a4. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6892 |
]. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6893 |
a2 at: i2 put: a3. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6894 |
]. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6895 |
a1 at: i1 put: a2. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6896 |
]. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6897 |
^ a1. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6898 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6899 |
"Created: / 28-01-2014 / 10:03:18 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6900 |
! |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6901 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6902 |
_MULTIANEWARRAY5_R: clsRef _: dim1 _: dim2 _: dim3 _: dim4 _: dim5 |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6903 |
^ self _MULTIANEWARRAY5: clsRef resolve _: dim1 _: dim2 _: dim3 _: dim4 _: dim5 |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6904 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6905 |
"Created: / 28-01-2014 / 10:05:58 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6906 |
! |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6907 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6908 |
_MULTIANEWARRAY: cls _: dims |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6909 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6910 |
| allocator | |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6911 |
|
2990
21011804a910
Fixed _GETFIELD_R: / _PUTFIELD_R: to throw NPE when an object is nil.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2989
diff
changeset
|
6912 |
dims isEmptyOrNil ifTrue:[ |
2987
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6913 |
self throwExceptionClassName:'java.lang.NegativeArraySizeException' |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6914 |
withMessage:'zero dimensions given, should not happen!!'. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6915 |
]. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6916 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6917 |
dims do:[:d | |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6918 |
d < 0 ifTrue:[ |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6919 |
self throwExceptionClassName:'java.lang.NegativeArraySizeException' |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6920 |
withMessage:'negative array size not allowed'. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6921 |
^nil |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6922 |
]. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6923 |
]. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6924 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6925 |
allocator := [ :arrayClass :dimIndex | |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6926 |
| array | |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6927 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6928 |
array := arrayClass new: (dims at: dimIndex). |
2990
21011804a910
Fixed _GETFIELD_R: / _PUTFIELD_R: to throw NPE when an object is nil.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2989
diff
changeset
|
6929 |
dimIndex ~~ dims size ifTrue:[ |
2987
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6930 |
1 to: (dims at: dimIndex) do:[:i | |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6931 |
array at: i put: (allocator value: arrayClass javaComponentClass value: dimIndex + 1). |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6932 |
] |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6933 |
]. |
2989
593add70a2cd
Added _MULTIANEWARRAY* methods to suppott new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6934 |
array. |
2987
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6935 |
]. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6936 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6937 |
^ allocator value: cls value: 1. |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6938 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6939 |
"Created: / 28-01-2014 / 09:46:06 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2989
593add70a2cd
Added _MULTIANEWARRAY* methods to suppott new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6940 |
"Modified: / 28-01-2014 / 14:40:44 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2987
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6941 |
! |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6942 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6943 |
_MULTIANEWARRAY_R: clsRef _: dims |
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6944 |
|
2989
593add70a2cd
Added _MULTIANEWARRAY* methods to suppott new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6945 |
^ self _MULTIANEWARRAY: clsRef resolve _: dims |
2987
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6946 |
|
1badaa4fa024
Added support for new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6947 |
"Created: / 28-01-2014 / 09:43:41 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2989
593add70a2cd
Added _MULTIANEWARRAY* methods to suppott new MULTIANEWARRAY implementation.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2979
diff
changeset
|
6948 |
"Modified: / 28-01-2014 / 14:36:22 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6949 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6950 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6951 |
_NEW: cls |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6952 |
| inst | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6953 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6954 |
cls classInit. "/initializes the class if it is not already" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6955 |
inst := cls basicNew. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6956 |
thisContext sender method flushCode. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6957 |
^inst. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6958 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6959 |
"Created: / 15-10-2012 / 21:53:57 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6960 |
"Modified: / 02-11-2012 / 21:09:56 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6961 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6962 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6963 |
_NEWARRAY:type _:size |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6964 |
"VM helper method NEWARRAY insn. Called only when |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6965 |
size is not an SmallInt or negative" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6966 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6967 |
size < 0 ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6968 |
self throwNegativeArraySizeException: size. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6969 |
] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6970 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6971 |
"Created: / 13-05-2012 / 14:46:40 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6972 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6973 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6974 |
_NEW_R: clsRef |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6975 |
| cls inst | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6976 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6977 |
cls := clsRef resolve. "/initializes the class if it is not already" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6978 |
inst := cls basicNew. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6979 |
thisContext sender method flushCode. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6980 |
^inst. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6981 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6982 |
"Created: / 15-10-2012 / 21:54:23 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
6983 |
"Modified: / 02-11-2012 / 21:10:00 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2978
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6984 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6985 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6986 |
_PUTFIELD_R: fieldRef _: obj _: value |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6987 |
"Called by jitted code for PUTFIELD insn iff fieldref is not yet resolved" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
6988 |
|
3235 | 6989 |
| class offset | |
6990 |
||
6991 |
obj isNil ifTrue:[ |
|
6992 |
^self throwNullPointerException. |
|
6993 |
]. |
|
2990
21011804a910
Fixed _GETFIELD_R: / _PUTFIELD_R: to throw NPE when an object is nil.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2989
diff
changeset
|
6994 |
obj isNil ifTrue:[ |
2992
732f9db2a195
Cleanup & refactoring of constant pool references (JavaRef2 hierarchy)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2990
diff
changeset
|
6995 |
^self throwNullPointerException. |
2990
21011804a910
Fixed _GETFIELD_R: / _PUTFIELD_R: to throw NPE when an object is nil.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2989
diff
changeset
|
6996 |
]. |
3235 | 6997 |
class := fieldRef classRef resolve; javaClass. |
6998 |
class hasMultipleVersions ifTrue:[ |
|
6999 |
fieldRef classRef resolveForVersionOf: obj or: nil. |
|
7000 |
fieldRef resolve. |
|
7001 |
offset := fieldRef resolvedOffset. |
|
7002 |
fieldRef invalidate. |
|
7003 |
] ifFalse:[ |
|
7004 |
fieldRef resolve. |
|
7005 |
offset := fieldRef resolvedOffset. |
|
7006 |
]. |
|
7007 |
obj instVarAt: offset put: value |
|
2978
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
7008 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
7009 |
"Created: / 20-01-2014 / 15:01:24 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
3235 | 7010 |
"Modified: / 16-08-2014 / 07:57:40 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2978
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
7011 |
! |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
7012 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
7013 |
_PUTSTATIC_R: fieldRef _: value |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
7014 |
"Called by jitted code for PUTSTATIC insn iff fieldref is not yet resolved" |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
7015 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
7016 |
| class | |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
7017 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
7018 |
fieldRef resolve. |
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
7019 |
class := fieldRef javaClass. |
2979
c69ab7aefc53
Fixed _GETSTATIC_R: / _PUTSTATIC_R: - initialize class if not already.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2978
diff
changeset
|
7020 |
class classInitInternal. |
2992
732f9db2a195
Cleanup & refactoring of constant pool references (JavaRef2 hierarchy)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2990
diff
changeset
|
7021 |
^ class instVarAt: fieldRef resolvedOffset put: value |
2978
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
7022 |
|
f44a7499454b
Added _GETFIELD_R:_:/ _GETSTATIC_R: / _PUTFIELD_R:_:_: / _PUTSTATIC_R:_: (used by new JIT code)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2975
diff
changeset
|
7023 |
"Created: / 20-01-2014 / 15:06:00 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2992
732f9db2a195
Cleanup & refactoring of constant pool references (JavaRef2 hierarchy)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2990
diff
changeset
|
7024 |
"Modified: / 31-01-2014 / 09:16:05 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
253 | 7025 |
! ! |
7026 |
||
255 | 7027 |
!JavaVM class methodsFor:'windows - events'! |
7028 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7029 |
awtEventsForEvent: anEvent javaWindow: jWin |
255 | 7030 |
"given an ST/X event, create corresponding AWT event(s) for it" |
7031 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7032 |
| jEv jEv1 jEv2 modifiers key keyChar untranslatedKey id type x y w h view menu resized moved eventArgs clickCount jRect jKeyEventClass jInputEventClass jMouseEventClass jWindowEventClass jPaintEventClass jComponentEventClass | |
255 | 7033 |
|
7034 |
type := anEvent type. |
|
7035 |
eventArgs := anEvent arguments. |
|
7036 |
key := 0. |
|
7037 |
modifiers := 0. |
|
7038 |
x := 0. |
|
7039 |
y := 0. |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7040 |
((type == #exposeX:y:width:height:) |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7041 |
or: [ (type == #graphicExposeX:y:width:height:) or: [ (type == #damage) ] ]) |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7042 |
ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7043 |
"/ jWindowEventClass := Java classForName:'java.awt.event.WindowEvent'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7044 |
"/ id := (jPaintEventClass instVarNamed:'PAINT'). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7045 |
jPaintEventClass := self classForName: 'java.awt.event.PaintEvent'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7046 |
id := (jPaintEventClass instVarNamed: 'UPDATE'). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7047 |
((type == #exposeX:y:width:height:) |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7048 |
or: [ (type == #graphicExposeX:y:width:height:) ]) |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7049 |
ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7050 |
x := eventArgs at: 1. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7051 |
y := eventArgs at: 2. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7052 |
w := eventArgs at: 3. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7053 |
h := eventArgs at: 4. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7054 |
] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7055 |
ifFalse: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7056 |
x := eventArgs left. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7057 |
y := eventArgs top. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7058 |
w := eventArgs width. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7059 |
h := eventArgs height. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7060 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7061 |
jRect := (Java classForName: 'java.awt.Rectangle') basicNew. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7062 |
jRect instVarNamed: 'x' put: x. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7063 |
jRect instVarNamed: 'y' put: y. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7064 |
jRect instVarNamed: 'width' put: w. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7065 |
jRect instVarNamed: 'height' put: h. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7066 |
jEv := jPaintEventClass newCleared. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7067 |
jEv instVarNamed: 'id' put: id. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7068 |
jEv instVarNamed: 'updateRect' put: jRect. |
476 | 7069 |
|
7070 |
"/ jEv instVarNamed:'g' put:jWin. |
|
7071 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7072 |
^ Array with: jEv. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7073 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7074 |
(anEvent isKeyEvent |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7075 |
or: [ anEvent isButtonEvent or: [ anEvent isPointerEnterLeaveEvent ] ]) |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7076 |
ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7077 |
jInputEventClass := Java classForName: 'java.awt.event.InputEvent'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7078 |
anEvent hasAlt ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7079 |
modifiers := modifiers bitOr: (jInputEventClass instVarNamed: 'ALT_MASK') |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7080 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7081 |
anEvent hasCtrl ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7082 |
modifiers := modifiers bitOr: (jInputEventClass instVarNamed: 'CTRL_MASK') |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7083 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7084 |
anEvent hasMeta ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7085 |
modifiers := modifiers bitOr: (jInputEventClass instVarNamed: 'META_MASK') |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7086 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7087 |
anEvent hasShift ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7088 |
modifiers := modifiers |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7089 |
bitOr: (jInputEventClass instVarNamed: 'SHIFT_MASK') |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7090 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7091 |
anEvent hasButton1 ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7092 |
modifiers := modifiers |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7093 |
bitOr: (jInputEventClass instVarNamed: 'BUTTON1_MASK') |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7094 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7095 |
anEvent hasButton2 ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7096 |
modifiers := modifiers |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7097 |
bitOr: (jInputEventClass instVarNamed: 'BUTTON2_MASK') |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7098 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7099 |
anEvent hasButton3 ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7100 |
modifiers := modifiers |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7101 |
bitOr: (jInputEventClass instVarNamed: 'BUTTON3_MASK') |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7102 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7103 |
anEvent isPointerEnterLeaveEvent ifFalse: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7104 |
"/ ST/X does not (yet) record this information |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7105 |
"/ with pointerLeave events. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7106 |
x := anEvent x. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7107 |
y := anEvent y. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7108 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7109 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7110 |
anEvent isKeyEvent ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7111 |
jKeyEventClass := Java classForName: 'java.awt.event.KeyEvent'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7112 |
key := 0. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7113 |
keyChar := 0. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7114 |
key := anEvent key. |
3594 | 7115 |
key isCharacter ifTrue: [ key := keyChar := key codePoint ] ifFalse: [ |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7116 |
untranslatedKey := anEvent view device keyboardMap keyAtValue: key |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7117 |
ifAbsent: key. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7118 |
untranslatedKey == #Insert ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7119 |
key := jKeyEventClass instVarNamed: 'VK_INSERT' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7120 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7121 |
untranslatedKey == #Delete ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7122 |
key := jKeyEventClass instVarNamed: 'VK_DELETE' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7123 |
"/ 127 |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7124 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7125 |
untranslatedKey == #BackSpace ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7126 |
key := jKeyEventClass instVarNamed: 'VK_BACK_SPACE' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7127 |
"/ 8 |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7128 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7129 |
untranslatedKey == #Return ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7130 |
key := jKeyEventClass instVarNamed: 'VK_ENTER' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7131 |
"/ 13 |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7132 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7133 |
untranslatedKey == #Tab ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7134 |
key := jKeyEventClass instVarNamed: 'VK_TAB' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7135 |
"/ 9 |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7136 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7137 |
untranslatedKey == #Home ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7138 |
key := jKeyEventClass instVarNamed: 'VK_HOME' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7139 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7140 |
untranslatedKey == #End ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7141 |
key := jKeyEventClass instVarNamed: 'VK_END' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7142 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7143 |
(key == #PreviousPage or: [ untranslatedKey == #Prior ]) ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7144 |
key := jKeyEventClass instVarNamed: 'VK_PAGE_UP' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7145 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7146 |
(key == #NextPage or: [ key == #EndOfText ]) ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7147 |
key := jKeyEventClass instVarNamed: 'VK_PAGE_DOWN' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7148 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7149 |
untranslatedKey == #CursorUp ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7150 |
key := jKeyEventClass instVarNamed: 'VK_UP' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7151 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7152 |
untranslatedKey == #CursorDown ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7153 |
key := jKeyEventClass instVarNamed: 'VK_DOWN' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7154 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7155 |
untranslatedKey == #CursorLeft ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7156 |
key := jKeyEventClass instVarNamed: 'VK_LEFT' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7157 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7158 |
untranslatedKey == #CursorRight ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7159 |
key := jKeyEventClass instVarNamed: 'VK_RIGHT' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7160 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7161 |
(#( #F1 #F2 #F3 #F4 #F5 #F6 #F7 #F8 #F9 #F10 #F11 #F12 ) |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7162 |
includes: untranslatedKey) |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7163 |
ifTrue: [ key := jKeyEventClass instVarNamed: ('VK_' , untranslatedKey) ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7164 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7165 |
(type == #keyPress:x:y:) ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7166 |
id := jKeyEventClass instVarNamed: 'KEY_PRESSED' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7167 |
] ifFalse: [ id := jKeyEventClass instVarNamed: 'KEY_RELEASED' ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7168 |
jEv := jKeyEventClass newCleared. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7169 |
jEv instVarNamed: 'modifiers' put: modifiers. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7170 |
jEv instVarNamed: 'keyCode' put: key. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7171 |
jEv instVarNamed: 'keyChar' put: keyChar. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7172 |
jEv instVarNamed: 'id' put: id. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7173 |
|
255 | 7174 |
"/ jEv instVarNamed:'x' put:x. |
7175 |
"/ jEv instVarNamed:'y' put:y. |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7176 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7177 |
jEv instVarNamed: 'when' put: (OperatingSystem getMillisecondTime). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7178 |
^ Array with: jEv |
255 | 7179 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7180 |
(anEvent isButtonEvent or: [ anEvent isPointerEnterLeaveEvent ]) ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7181 |
jMouseEventClass := Java classForName: 'java.awt.event.MouseEvent'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7182 |
clickCount := 1. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7183 |
(type == #buttonPress:x:y:) ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7184 |
id := jMouseEventClass instVarNamed: 'MOUSE_PRESSED'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7185 |
] ifFalse: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7186 |
(type == #buttonRelease:x:y:) ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7187 |
id := jMouseEventClass instVarNamed: 'MOUSE_RELEASED'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7188 |
] ifFalse: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7189 |
(type == #buttonMotion:x:y:) ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7190 |
(anEvent state bitAnd: (anEvent view device anyButtonMotionMask)) == 0 ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7191 |
id := jMouseEventClass instVarNamed: 'MOUSE_MOVED'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7192 |
] ifFalse: [ id := jMouseEventClass instVarNamed: 'MOUSE_DRAGGED'. ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7193 |
] ifFalse: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7194 |
"/ (type == #'pointerMotion:x:y:') ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7195 |
"/ id := jMouseEventClass instVarNamed:'MOUSE_MOVED'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7196 |
"/ ] ifFalse:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7197 |
(type == #pointerEnter:x:y:) ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7198 |
id := jMouseEventClass instVarNamed: 'MOUSE_ENTERED'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7199 |
] ifFalse: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7200 |
(type == #pointerLeave:) ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7201 |
id := jMouseEventClass instVarNamed: 'MOUSE_EXITED'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7202 |
] ifFalse: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7203 |
(type == #buttonMultiPress:x:y:) ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7204 |
id := jMouseEventClass instVarNamed: 'MOUSE_PRESSED'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7205 |
clickCount := 2. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7206 |
] ifFalse: [ self halt. ] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7207 |
|
255 | 7208 |
"/ ] |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7209 |
] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7210 |
] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7211 |
] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7212 |
] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7213 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7214 |
jEv := jMouseEventClass newCleared. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7215 |
jEv instVarNamed: 'modifiers' put: modifiers. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7216 |
jEv instVarNamed: 'id' put: id. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7217 |
jEv instVarNamed: 'x' put: x. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7218 |
jEv instVarNamed: 'y' put: y. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7219 |
jEv instVarNamed: 'when' put: (OperatingSystem getMillisecondTime). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7220 |
^ Array with: jEv |
255 | 7221 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7222 |
(type == #configureX:y:width:height:) ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7223 |
view := anEvent view. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7224 |
x := eventArgs at: 1. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7225 |
y := eventArgs at: 2. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7226 |
w := eventArgs at: 3. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7227 |
h := eventArgs at: 4. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7228 |
resized := (w ~~ view width or: [ h ~~ view height ]). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7229 |
moved := (x ~~ view left or: [ y ~~ view top ]). |
493 | 7230 |
|
7231 |
"/ (view isTopView or:[view isPopUpView]) ifTrue:[ |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7232 |
"/ view must update its origin/extent. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7233 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7234 |
view dispatchEvent: anEvent. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7235 |
|
493 | 7236 |
"/ ]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7237 |
"/ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7238 |
"/ must change the components extent |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7239 |
"/ is there no cleaner way to do this ? |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7240 |
"/ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7241 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7242 |
view isTopView ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7243 |
view isPopUpView ifFalse: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7244 |
"/ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7245 |
"/ sigh - don't include the menu. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7246 |
"/ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7247 |
menu := self topViewsMenu: view. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7248 |
menu notNil ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7249 |
"/ must add the menus height |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7250 |
h := h - menu height |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7251 |
] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7252 |
] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7253 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7254 |
jWin instVarNamed: 'width' put: w. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7255 |
jWin instVarNamed: 'height' put: h. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7256 |
jWin instVarNamed: 'x' put: x. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7257 |
jWin instVarNamed: 'y' put: y. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7258 |
jComponentEventClass := Java classForName: 'java.awt.event.ComponentEvent'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7259 |
moved ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7260 |
id := (jComponentEventClass instVarNamed: 'COMPONENT_MOVED'). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7261 |
jEv1 := jComponentEventClass newCleared. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7262 |
jEv1 instVarNamed: 'id' put: id. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7263 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7264 |
resized ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7265 |
id := (jComponentEventClass instVarNamed: 'COMPONENT_RESIZED'). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7266 |
jEv2 := jComponentEventClass newCleared. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7267 |
jEv2 instVarNamed: 'id' put: id. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7268 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7269 |
jEv1 isNil ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7270 |
jEv2 isNil ifTrue: [ ^ nil ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7271 |
^ Array with: jEv2 |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7272 |
] ifFalse: [ jEv2 isNil ifTrue: [ ^ Array with: jEv1 ] ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7273 |
^ Array with: jEv1 with: jEv2. |
255 | 7274 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7275 |
(type == #focusIn) ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7276 |
"/ 'focusIn' printCR. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7277 |
jComponentEventClass := Java classForName: 'java.awt.event.FocusEvent'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7278 |
id := (jComponentEventClass instVarNamed: 'FOCUS_GAINED'). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7279 |
jEv := jComponentEventClass newCleared. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7280 |
jEv instVarNamed: 'id' put: id. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7281 |
^ Array with: jEv. |
255 | 7282 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7283 |
(type == #focusOut) ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7284 |
"/ 'focusOut' printCR. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7285 |
jComponentEventClass := Java classForName: 'java.awt.event.FocusEvent'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7286 |
id := (jComponentEventClass instVarNamed: 'FOCUS_LOST'). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7287 |
jEv := jComponentEventClass newCleared. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7288 |
jEv instVarNamed: 'id' put: id. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7289 |
^ Array with: jEv. |
255 | 7290 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7291 |
(type == #mapped) ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7292 |
"/ 'mapped' printCR. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7293 |
jComponentEventClass := Java classForName: 'java.awt.event.ComponentEvent'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7294 |
id := (jComponentEventClass instVarNamed: 'COMPONENT_SHOWN'). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7295 |
|
255 | 7296 |
"/ x := eventArgs at:1. |
7297 |
"/ y := eventArgs at:2. |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7298 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7299 |
jEv := jComponentEventClass newCleared. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7300 |
jEv instVarNamed: 'id' put: id. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7301 |
^ Array with: jEv. |
255 | 7302 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7303 |
(type == #unmapped) ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7304 |
"/ 'unmapped' printCR. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7305 |
jComponentEventClass := Java classForName: 'java.awt.event.ComponentEvent'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7306 |
id := (jComponentEventClass instVarNamed: 'COMPONENT_HIDDEN'). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7307 |
|
255 | 7308 |
"/ x := eventArgs at:1. |
7309 |
"/ y := eventArgs at:2. |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7310 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7311 |
jEv := jComponentEventClass newCleared. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7312 |
jEv instVarNamed: 'id' put: id. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7313 |
^ Array with: jEv. |
255 | 7314 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7315 |
(type == #terminate) ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7316 |
jWindowEventClass := Java classForName: 'java.awt.event.WindowEvent'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7317 |
"NEW |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7318 |
id := (jWindowEventClass instVarNamed:'WINDOW_CLOSING'). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7319 |
" "OLD " |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7320 |
id := (jWindowEventClass instVarNamed: 'WINDOW_CLOSED'). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7321 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7322 |
jEv := jWindowEventClass newCleared. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7323 |
jEv instVarNamed: 'id' put: id. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7324 |
^ Array with: jEv. |
255 | 7325 |
]. |
3385
58d72cc6d5f6
Replaced old-style `'string' infoPrintCR` logging with new-style `Logger log:'string'` logging
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3384
diff
changeset
|
7326 |
EventTrace == true ifTrue: [ Logger log: ('JAVA: unhandled event:' , type) infoPrintCR. ]. |
255 | 7327 |
^ nil. |
7328 |
||
3385
58d72cc6d5f6
Replaced old-style `'string' infoPrintCR` logging with new-style `Logger log:'string'` logging
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3384
diff
changeset
|
7329 |
"Created: / 06-01-1998 / 20:38:58 / cg" |
58d72cc6d5f6
Replaced old-style `'string' infoPrintCR` logging with new-style `Logger log:'string'` logging
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3384
diff
changeset
|
7330 |
"Modified: / 09-01-1999 / 09:29:58 / cg" |
58d72cc6d5f6
Replaced old-style `'string' infoPrintCR` logging with new-style `Logger log:'string'` logging
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3384
diff
changeset
|
7331 |
"Modified: / 02-03-2015 / 15:54:15 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
255 | 7332 |
! |
7333 |
||
603 | 7334 |
delegatesTo:someOne |
7335 |
^ false |
|
7336 |
||
7337 |
"Created: / 25.9.1999 / 16:11:48 / cg" |
|
7338 |
! |
|
7339 |
||
255 | 7340 |
doWindowsEventThread |
7341 |
"invoked in an endless loop by the WToolkit-eventLoop |
|
7342 |
native method." |
|
7343 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7344 |
| sensor event more | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7345 |
(JavaWindowGroup isNil or: [ KnownWindows isNil ]) ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7346 |
"/ '*** eventThread: no windowGroup / views ...' printCR. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7347 |
self halt: 'monitors are reimplemented, change me if you know how and why'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7348 |
"self |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7349 |
waitFor: FirstWindowCreationSemaphore |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7350 |
state: #eventWait |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7351 |
timeOut: nil." |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7352 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7353 |
"/ Delay waitForSeconds:0.1. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7354 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7355 |
^ self |
255 | 7356 |
]. |
7357 |
||
7358 |
"/ wait for an event to arrive ... |
|
7359 |
||
7360 |
sensor := JavaWindowGroup sensor. |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7361 |
[ sensor hasEvents or: [ sensor damageCount ~~ 0 ] ] whileFalse: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7362 |
EventTrace ifTrue: [ '*** eventThread waiting ...' printCR. ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7363 |
Processor activeProcess state: #eventWait. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7364 |
self |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7365 |
waitFor: sensor eventSemaphore |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7366 |
state: #eventWait |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7367 |
timeOut: nil. |
255 | 7368 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7369 |
EventTrace ifTrue: [ '*** eventThread event arrived ...' printCR. ]. |
255 | 7370 |
|
7371 |
"/ EventTrace := true |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7372 |
|
270 | 7373 |
more := true. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7374 |
[ more ] whileTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7375 |
sensor hasDamage ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7376 |
EventTrace ifTrue: [ '*** eventThread: damage arrived ...' printCR. ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7377 |
event := sensor nextDamage. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7378 |
] ifFalse: [ event := sensor nextEvent. ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7379 |
event isNil ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7380 |
EventTrace == true ifTrue: [ '*** eventThread: nil event ignored' printCR. ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7381 |
^ self |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7382 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7383 |
more := self processEvent: event |
270 | 7384 |
] |
255 | 7385 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7386 |
"Created: / 06-01-1998 / 21:02:40 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7387 |
"Modified: / 30-12-1998 / 19:21:36 / cg" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7388 |
"Modified: / 22-11-2011 / 13:22:32 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7389 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7390 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7391 |
processEvent: event |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7392 |
| evQ jEvents jWToolKitClass jWToolKit jWinPeer jWin v eventConsumed | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7393 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7394 |
KnownWindows isNil ifTrue: [ ^ false ]. |
255 | 7395 |
v := event view. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7396 |
jWinPeer := self jPeerForView: v. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7397 |
jWinPeer isNil ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7398 |
v isJavaView ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7399 |
"/ mhmh - an event for a JavaView, |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7400 |
"/ which has no peer (anyMore ?) |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7401 |
"/ should not happen. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7402 |
] ifFalse: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7403 |
"/ mhmh - an event for a subcomponent of an ST widget. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7404 |
"/ let it be handled normally. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7405 |
EventTrace ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7406 |
('*** eventThread: ' , event type |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7407 |
, '-event for unknown java-view - passed to view.') printCR. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7408 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7409 |
event view dispatchEvent: event. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7410 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7411 |
^ true |
261 | 7412 |
]. |
7413 |
||
7414 |
"/ change: |
|
7415 |
"/ in the previous version, events for ST/X widgets (i.e. buttons etc) |
|
7416 |
"/ where not passed to java, but instead forwarded directly to the widget |
|
7417 |
"/ by the code below. |
|
7418 |
"/ This has changed, to pass it to Java, which eventually passes it to the |
|
7419 |
"/ peer via the handleEvent native method (unless the event got consumed). |
|
7420 |
"/ This is req'd to let java keep track of keyboard/mouse input for widgets. |
|
7421 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7422 |
(event isDamage and: [ v isJavaView ]) ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7423 |
"/ "/ most views handle their events themself (being ST/X views) ... |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7424 |
"/ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7425 |
"/ v class ~~ JavaView ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7426 |
"/"/ v class ~~ StandardSystemView ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7427 |
"/"/ EventTrace ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7428 |
"/"/ ('*** eventThread: event handled by view itself (' , v class name , ')') printCR. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7429 |
"/"/ ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7430 |
"/"/ event sendEventWithFocusOn:nil. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7431 |
"/"/ ^ self. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7432 |
"/"/ ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7433 |
"/ (event type == #'exposeX:y:width:height' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7434 |
"/ or:[event type == #'graphicsExposeX:y:width:height']) ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7435 |
"/ "/ send to view, but also handle in JAVA |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7436 |
"/ event sendEventWithFocusOn:nil. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7437 |
"/ ] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7438 |
"/ ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7439 |
(#( #mapped |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7440 |
#unmapped |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7441 |
#configureX:y:width:height: |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7442 |
#exposeX:y:width:height: |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7443 |
#graphicsExposeX:y:width:height: ) includes: event type) ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7444 |
event sendEventWithFocusOn: nil. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7445 |
]. |
255 | 7446 |
]. |
261 | 7447 |
|
7448 |
"/ what a kludge - some events are passed back to |
|
7449 |
"/ ST via the WComponent-handleEvent native method. |
|
7450 |
"/ However, repaints are not. |
|
7451 |
"/ In order to let ST widgets do the drawing, |
|
7452 |
"/ selectively filter exposeEvents from Java ... |
|
7453 |
||
7454 |
eventConsumed := false. |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7455 |
v isJavaView ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7456 |
"/ all events handled by Java ... |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7457 |
] ifFalse: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7458 |
eventConsumed := true. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7459 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7460 |
"/ let widget handle it. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7461 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7462 |
event view dispatchEvent: event. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7463 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7464 |
"/ some are not passed to Java ... |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7465 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7466 |
event isDamage ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7467 |
(v isKindOf: Button) ifTrue: [ ^ true ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7468 |
(v isKindOf: TextView) ifTrue: [ ^ true ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7469 |
(v isKindOf: Label) ifTrue: [ ^ true ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7470 |
(v isKindOf: ComboBoxView) ifTrue: [ ^ true ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7471 |
(v isKindOf: ScrollBar) ifTrue: [ ^ true ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7472 |
(v isKindOf: Scroller) ifTrue: [ ^ true ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7473 |
(v isKindOf: MenuPanel) ifTrue: [ ^ true ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7474 |
]. |
261 | 7475 |
]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7476 |
jWin := jWinPeer instVarNamed: 'target'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7477 |
EventTrace ifTrue: [ |
3385
58d72cc6d5f6
Replaced old-style `'string' infoPrintCR` logging with new-style `Logger log:'string'` logging
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3384
diff
changeset
|
7478 |
Logger log: (('*** eventThread: event (' , event type , ') handled by JAVA: ') , jWinPeer class name ,' (' , jWin class name , ')') severity: Logger severityTRACE facility: #JVM |
255 | 7479 |
]. |
7480 |
||
7481 |
"/ create an event |
|
7482 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7483 |
jEvents := self awtEventsForEvent: event javaWindow: jWin. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7484 |
jEvents isNil ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7485 |
EventTrace ifTrue: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7486 |
('*** eventThread: event ignored: ' , event type) printCR. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7487 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7488 |
^ true |
255 | 7489 |
]. |
7490 |
||
7491 |
"/ v superView isNil ifTrue:[ |
|
7492 |
"/ ('*** eventThread: event ignored for topView: ' , event type) printCR. |
|
7493 |
"/ ^ self |
|
7494 |
"/ ]. |
|
7495 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7496 |
jWToolKitClass := self classForName: 'java.awt.Toolkit'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7497 |
|
439 | 7498 |
"/ jWToolKit := jWToolKitClass perform:#getDefaultToolkit. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7499 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7500 |
jWToolKit := jWToolKitClass |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7501 |
performStatic: #'getDefaultToolkit()Ljava/awt/Toolkit;'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7502 |
jEvents do: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7503 |
:jEv | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7504 |
jEv instVarNamed: 'source' put: jWin. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7505 |
jEv instVarNamed: 'consumed' put: 0. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7506 |
eventConsumed ifFalse: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7507 |
"/ the first gets the original event as data |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7508 |
jEv instVarNamed: 'data' put: event. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7509 |
eventConsumed := true |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7510 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7511 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7512 |
"/ post it (them) to the event queue |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7513 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7514 |
EventTrace == true ifTrue: [ 'postEvent to Java ...' printCR. ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7515 |
jWToolKit "class" perform: #'postEvent(Ljava/awt/AWTEvent;)V' with: jEv. |
255 | 7516 |
]. |
270 | 7517 |
^ false |
7518 |
||
3385
58d72cc6d5f6
Replaced old-style `'string' infoPrintCR` logging with new-style `Logger log:'string'` logging
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3384
diff
changeset
|
7519 |
"Created: / 06-01-1998 / 20:36:36 / cg" |
58d72cc6d5f6
Replaced old-style `'string' infoPrintCR` logging with new-style `Logger log:'string'` logging
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3384
diff
changeset
|
7520 |
"Modified: / 10-12-1998 / 19:36:59 / cg" |
58d72cc6d5f6
Replaced old-style `'string' infoPrintCR` logging with new-style `Logger log:'string'` logging
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3384
diff
changeset
|
7521 |
"Modified: / 02-03-2015 / 15:53:56 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
255 | 7522 |
! ! |
7523 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7524 |
!JavaVM::Performance class methodsFor:'documentation'! |
2151 | 7525 |
|
7526 |
documentation |
|
7527 |
" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7528 |
A helper class to keep performance counters for JavaVM |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7529 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7530 |
[author:] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7531 |
Jan Vrany <jan.vrany@fit.cvut.cz> |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7532 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7533 |
[instance variables:] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7534 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7535 |
[class variables:] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7536 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7537 |
[see also:] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7538 |
|
2151 | 7539 |
" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7540 |
! ! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7541 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7542 |
!JavaVM::Performance class methodsFor:'instance creation'! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7543 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7544 |
for: aJavaVM |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7545 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7546 |
^self new setVM: aJavaVM. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7547 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7548 |
"Created: / 21-12-2010 / 19:42:55 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7549 |
! ! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7550 |
|
2396
fadc6d7a2f5b
Updated to rev 009a0df3afce
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2372
diff
changeset
|
7551 |
!JavaVM::Performance methodsFor:'accessing'! |
fadc6d7a2f5b
Updated to rev 009a0df3afce
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2372
diff
changeset
|
7552 |
|
fadc6d7a2f5b
Updated to rev 009a0df3afce
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2372
diff
changeset
|
7553 |
counters |
fadc6d7a2f5b
Updated to rev 009a0df3afce
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2372
diff
changeset
|
7554 |
^ counters |
fadc6d7a2f5b
Updated to rev 009a0df3afce
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2372
diff
changeset
|
7555 |
! ! |
fadc6d7a2f5b
Updated to rev 009a0df3afce
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2372
diff
changeset
|
7556 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7557 |
!JavaVM::Performance methodsFor:'accessing-counters'! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7558 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7559 |
get: name |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7560 |
"Return the value of given performance counter." |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7561 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7562 |
^self set: name to: -1 |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7563 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7564 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7565 |
monitorEnterCount: fatOnly |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7566 |
"Return the number of monitor enter operations. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7567 |
If fatOnly is true, return only those that involves |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7568 |
fat-lock enter (i.e,, uses JavaMonitor, not thinlock)" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7569 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7570 |
%{ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7571 |
extern unsigned int __monitorEnterCount(int fat, int new); |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7572 |
RETURN ( __MKUINT ( __monitorEnterCount( fatOnly == true ? 1 : 0, -1 ) ) ) |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7573 |
%}. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7574 |
^ 0 |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7575 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7576 |
"Created: / 28-08-2012 / 10:37:36 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7577 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7578 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7579 |
monitorExitCount: fatOnly |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7580 |
"Return the number of monitor enter operations. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7581 |
If fatOnly is true, return only those that involves |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7582 |
fat-lock enter (i.e,, uses JavaMonitor, not thinlock)" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7583 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7584 |
%{ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7585 |
extern unsigned int __monitorEnterCount(int fat, int new); |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7586 |
RETURN ( __MKUINT ( __monitorEnterCount( fatOnly == true ? 1 : 0, -1 ) ) ) |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7587 |
%}. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7588 |
^ 0 |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7589 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7590 |
"Created: / 28-08-2012 / 10:37:48 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7591 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7592 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7593 |
set: name to: newValue |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7594 |
"Set and return the value of given performance counter. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7595 |
If newValue >= 0, performance counter is set to given |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7596 |
value and previous value is returned. If newValue < 0, |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7597 |
then the current value is returned" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7598 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7599 |
| value | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7600 |
%{ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7601 |
extern OBJ __javaPerfCounter(OBJ _name, OBJ _newValue ); |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7602 |
value = __javaPerfCounter( name, newValue ); |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7603 |
%}. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7604 |
value isSymbol ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7605 |
self error: value. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7606 |
^nil |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7607 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7608 |
^value |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7609 |
|
2396
fadc6d7a2f5b
Updated to rev 009a0df3afce
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2372
diff
changeset
|
7610 |
"Modified (format): / 20-02-2013 / 00:06:37 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7611 |
! ! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7612 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7613 |
!JavaVM::Performance methodsFor:'initialization'! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7614 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7615 |
setVM: aJavaVM |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7616 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7617 |
"Now, aJavaVM == JavaVM (i.e, the class JavaVM |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7618 |
itself, not its instance)" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7619 |
|
2396
fadc6d7a2f5b
Updated to rev 009a0df3afce
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2372
diff
changeset
|
7620 |
vm := aJavaVM. |
fadc6d7a2f5b
Updated to rev 009a0df3afce
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2372
diff
changeset
|
7621 |
counters := Dictionary new. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7622 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7623 |
"Created: / 21-12-2010 / 19:44:07 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2396
fadc6d7a2f5b
Updated to rev 009a0df3afce
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2372
diff
changeset
|
7624 |
"Modified: / 20-02-2013 / 00:07:36 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2151 | 7625 |
! ! |
7626 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7627 |
!JavaVM::Performance methodsFor:'orinting-streams'! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7628 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7629 |
printOpenExternalStream: stream number: index on: output |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7630 |
"Print info about given external stream to output. Return true, |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7631 |
if the instance is executor, false otherwise" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7632 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7633 |
| executor | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7634 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7635 |
executor := ((3 to: stream class instSize) allSatisfy:[:index| |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7636 |
index == 6 or:[index == 7 or:[(stream instVarAt: index) isNil]] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7637 |
]). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7638 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7639 |
'%-4d %-30s %-15s %s' printf:{ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7640 |
index . |
2841
6fa1bcf9c997
JavaClass>>#name vs. #binaryName refactoring
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2806
diff
changeset
|
7641 |
stream class binaryName. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7642 |
executor ifTrue:['(executor)'] ifFalse:[(self printOpenExternalStreamIdentificationOf: stream)]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7643 |
executor ifTrue:[''] ifFalse:[stream isFileStream ifTrue:[stream pathName ? '??? no pathName ???'] ifFalse:['']] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7644 |
} on: output. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7645 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7646 |
^ executor |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7647 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7648 |
" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7649 |
JavaVM::Performance new printOpenExternalStreams |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7650 |
" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7651 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7652 |
"Created: / 14-08-2012 / 01:02:49 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2841
6fa1bcf9c997
JavaClass>>#name vs. #binaryName refactoring
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2806
diff
changeset
|
7653 |
"Modified: / 08-10-2013 / 22:49:32 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7654 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7655 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7656 |
printOpenExternalStreamIdentificationOf:stream |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7657 |
| zc oft | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7658 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7659 |
(oft := Smalltalk at:#'JavaVMData:OpenFileTable') notNil ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7660 |
| idx | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7661 |
idx := oft identityIndexOf: stream. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7662 |
idx ~~ 0 ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7663 |
^ 'VM OFT[' ,idx printString, ']'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7664 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7665 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7666 |
(zc := Smalltalk at:#'JavaVMData:ZipCache') notNil ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7667 |
| idx | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7668 |
zc withIndexDo:[:each :idx| |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7669 |
(each instVarAt:1 "named: #file") == stream ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7670 |
^ 'VM ZC[' ,idx printString, ']'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7671 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7672 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7673 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7674 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7675 |
((Smalltalk at:#'Java:SourceCache') ? #()) do:[:each| |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7676 |
each == stream ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7677 |
^ 'Java SC' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7678 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7679 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7680 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7681 |
((Smalltalk at:#'JavaClassReader:JavaArchiveCache') ? #()) do:[:each| |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7682 |
(each instVarAt:1 "named: #file") == stream ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7683 |
^ 'JCR JAC' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7684 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7685 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7686 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7687 |
((Smalltalk at:#'Java:SourceArchiveCache') ? #()) do:[:each| |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7688 |
(each instVarAt:1 "named: #file") == stream ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7689 |
^ 'Java SAC' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7690 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7691 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7692 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7693 |
^'' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7694 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7695 |
"Created: / 14-08-2012 / 01:17:59 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7696 |
"Modified: / 11-02-2013 / 12:15:10 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7697 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7698 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7699 |
printOpenExternalStreams |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7700 |
^self printOpenExternalStreamsOn: Transcript |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7701 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7702 |
"Created: / 14-08-2012 / 01:03:17 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7703 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7704 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7705 |
printOpenExternalStreamsOn: aStream |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7706 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7707 |
| nOpenStreams nExecutors | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7708 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7709 |
ObjectMemory garbageCollect. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7710 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7711 |
aStream nextPutLine: '=== JavaVM open external stream statistics ==='. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7712 |
aStream nextPutLine: Timestamp now printString. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7713 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7714 |
nOpenStreams := 0. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7715 |
nExecutors := 0. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7716 |
ExternalStream allSubInstancesDo:[:each| |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7717 |
each isOpen ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7718 |
nOpenStreams := nOpenStreams + 1. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7719 |
(self printOpenExternalStream: each number: nOpenStreams on: aStream) ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7720 |
nExecutors := nExecutors + 1 |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7721 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7722 |
aStream cr. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7723 |
] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7724 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7725 |
aStream cr. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7726 |
aStream nextPutLine: |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7727 |
('SUMMARY: open=%1, executors=%4, java.io=%2, java.util.zip=%3' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7728 |
bindWith: nOpenStreams |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7729 |
with: (((Smalltalk at:#'JavaVMData:OpenFileTable') ? #()) inject:0 into:[:a :s|a + (s notNil ifTrue:[1] ifFalse:[0])]) |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7730 |
with: (((Smalltalk at:#'JavaVMData:ZipCache') ? #()) inject:0 into:[:a :s|a + ((s notNil and:[s file notNil]) ifTrue:[1] ifFalse:[0])]) |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7731 |
with: nExecutors |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7732 |
). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7733 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7734 |
aStream nextPutLine: '=============================================='. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7735 |
aStream nextPutLine: '' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7736 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7737 |
" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7738 |
JavaVM::Performance new printOpenExternalStreams |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7739 |
" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7740 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7741 |
"Created: / 14-08-2012 / 00:48:28 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7742 |
"Modified: / 11-02-2013 / 12:43:29 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7743 |
! ! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7744 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7745 |
!JavaVM::Performance methodsFor:'printing-counters'! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7746 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7747 |
printCounters |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7748 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7749 |
self printCountersOn: Transcript |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7750 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7751 |
"Created: / 14-08-2012 / 00:43:17 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7752 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7753 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7754 |
printCountersOn: aStream |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7755 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7756 |
aStream nextPutLine: '=== JavaVM performance statistics ============'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7757 |
aStream nextPutLine: Timestamp now printString. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7758 |
self printCounters_ExecutionOn: aStream. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7759 |
aStream cr. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7760 |
self printCounters_CompilationOn: aStream. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7761 |
aStream cr. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7762 |
self printCounters_MonitorOn: aStream. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7763 |
aStream cr. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7764 |
self printCounters_TopTenNativesOn: aStream. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7765 |
aStream nextPutLine: '=============================================='. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7766 |
aStream nextPutLine: '' |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7767 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7768 |
" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7769 |
JavaVM performance printCounters |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7770 |
" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7771 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7772 |
"Created: / 14-08-2012 / 00:43:08 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7773 |
"Modified: / 27-10-2012 / 18:12:39 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7774 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7775 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7776 |
printCounters_CompilationOn: aStream |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7777 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7778 |
self printCounterGroup:'Just-In-Time Compilation' on: aStream. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7779 |
self printCounter:'methodsCompiled' on: aStream labeled: 'methods compiled'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7780 |
self printCounter:'methodsCompiledAndBailedOut' on: aStream labeled: 'methods compiled (failed)'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7781 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7782 |
"Created: / 15-10-2012 / 15:33:29 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7783 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7784 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7785 |
printCounters_ExecutionOn: aStream |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7786 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7787 |
self printCounterGroup:'Execution' on: aStream. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7788 |
self printCounter:'methodsInterpreted' on: aStream labeled: 'methods (interpreted)'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7789 |
self printCounter:'bytecodesInterpreted' on: aStream labeled: 'bytecodes (interpreted)'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7790 |
self printCounter:'bytecodesInterpretedWrap' on: aStream labeled: 'bytecodes wrap(interpreted)'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7791 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7792 |
"Created: / 15-10-2012 / 15:33:29 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7793 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7794 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7795 |
printCounters_MonitorOn: aStream |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7796 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7797 |
self printCounterGroup:'Monitors' on: aStream. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7798 |
self printCounter:'monitorEnterCount' on: aStream labeled: 'MONITOR ENTER'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7799 |
self printCounter:'monitorEnterCountFat' on: aStream labeled: 'MONITOR ENTER (fat)'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7800 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7801 |
self printCounter:'monitorExitCount' on: aStream labeled: 'MONITOR EXIT'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7802 |
self printCounter:'monitorExitCountFat' on: aStream labeled: 'MONITOR EXIT (fat)'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7803 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7804 |
"Created: / 28-08-2012 / 10:42:34 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7805 |
"Modified: / 15-10-2012 / 15:31:29 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7806 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7807 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7808 |
printCounters_Top: n nativesOn: aStream |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7809 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7810 |
| nativesSorted | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7811 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7812 |
self printCounterGroup:'top ', n printString , ' (unoptimized) natives' on: aStream. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7813 |
nativesSorted := JavaNativeMethod allInstances asSortedCollection: |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7814 |
[:a :b| a nCalls > b nCalls ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7815 |
1 to: n do:[:idx| |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7816 |
| m | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7817 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7818 |
m := nativesSorted at: idx. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7819 |
aStream nextPutAll: (m nCalls printStringRadix:10 size:8 fill:Character space). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7820 |
aStream nextPutAll:' '. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7821 |
aStream |
2841
6fa1bcf9c997
JavaClass>>#name vs. #binaryName refactoring
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2806
diff
changeset
|
7822 |
nextPutAll: m mclass binaryName; |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7823 |
nextPutAll: ' >> '; |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7824 |
nextPutAll: m selector; |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7825 |
cr. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7826 |
] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7827 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7828 |
"Created: / 27-10-2012 / 18:09:59 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2841
6fa1bcf9c997
JavaClass>>#name vs. #binaryName refactoring
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2806
diff
changeset
|
7829 |
"Modified: / 08-10-2013 / 22:49:28 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7830 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7831 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7832 |
printCounters_TopTenNativesOn: aStream |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7833 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7834 |
self printCounters_Top: 10 nativesOn: aStream |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7835 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7836 |
"Created: / 27-10-2012 / 18:12:22 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7837 |
! ! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7838 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7839 |
!JavaVM::Performance methodsFor:'printing-counters-private'! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7840 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7841 |
printCounter: name on: stream |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7842 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7843 |
self printCounter: name on: stream labeled: name |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7844 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7845 |
"Created: / 15-10-2012 / 15:28:25 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7846 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7847 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7848 |
printCounter: name on: stream labeled: label |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7849 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7850 |
[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7851 |
' %-35s : %10d' printf: { label . (self get: name) } on: stream |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7852 |
] on: Error do:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7853 |
' %-35s : N/A' printf: { label } on: stream |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7854 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7855 |
stream cr. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7856 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7857 |
"Created: / 15-10-2012 / 15:25:08 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7858 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7859 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7860 |
printCounterGroup: gname on: stream |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7861 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7862 |
stream nextPut:$-; nextPut:$-; space; nextPutAll: gname; space; nextPut:$-; nextPut:$-; cr. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7863 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7864 |
"Created: / 15-10-2012 / 15:29:16 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7865 |
! ! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7866 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7867 |
!JavaVM::ReflectionRegistry class methodsFor:'documentation'! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7868 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7869 |
documentation |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7870 |
" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7871 |
A helper class to deal with Java reflection |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7872 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7873 |
[author:] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7874 |
Jan Vrany <jan.vrany@fit.cvut.cz> |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7875 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7876 |
[instance variables:] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7877 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7878 |
[class variables:] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7879 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7880 |
[see also:] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7881 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7882 |
" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7883 |
! ! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7884 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7885 |
!JavaVM::ReflectionRegistry class methodsFor:'instance creation'! |
2151 | 7886 |
|
7887 |
for: aJavaVM |
|
7888 |
||
7889 |
^self new setVM: aJavaVM. |
|
7890 |
||
7891 |
"Created: / 21-12-2010 / 19:42:55 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
7892 |
! |
|
7893 |
||
7894 |
new |
|
7895 |
"return an initialized instance" |
|
7896 |
||
7897 |
^ self basicNew initialize. |
|
7898 |
! ! |
|
7899 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7900 |
!JavaVM::ReflectionRegistry methodsFor:'debugging'! |
2151 | 7901 |
|
7902 |
returnNilIfMissing |
|
7903 |
^ returnNilIfMissing. |
|
7904 |
||
7905 |
"Created: / 28-01-2011 / 15:14:37 / Marcel Hlopko <hlopik@gmail.com>" |
|
7906 |
! |
|
7907 |
||
7908 |
returnNilIfMissing:aBoolean |
|
7909 |
returnNilIfMissing:= aBoolean. |
|
7910 |
||
7911 |
"Created: / 28-01-2011 / 15:25:35 / Marcel Hlopko <hlopik@gmail.com>" |
|
7912 |
! ! |
|
7913 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7914 |
!JavaVM::ReflectionRegistry methodsFor:'initialization'! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7915 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7916 |
flush |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7917 |
self initialize. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7918 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7919 |
"Created: / 09-01-2013 / 16:00:35 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7920 |
! |
2151 | 7921 |
|
7922 |
initialize |
|
7923 |
constantPoolMapping := IdentityDictionary new. |
|
7924 |
javaClasses := Dictionary new. |
|
7925 |
javaArrayClasses := IdentityDictionary new. |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7926 |
realMethods := OrderedCollection new. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7927 |
javaMethodsPerMethod := Dictionary new |
2151 | 7928 |
|
7929 |
"Created: / 21-12-2010 / 19:46:49 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
7930 |
"Modified: / 09-02-2011 / 00:24:28 / Marcel Hlopko <hlopik@gmail.com>" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7931 |
"Modified: / 05-12-2011 / 09:56:36 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2151 | 7932 |
! |
7933 |
||
7934 |
setVM: aJavaVM |
|
7935 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7936 |
"Now, aJavaVM == JavaVM (i.e, the class JavaVM |
2151 | 7937 |
itself, not its instance)" |
7938 |
||
7939 |
vm := aJavaVM |
|
7940 |
||
7941 |
"Created: / 21-12-2010 / 19:44:07 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
7942 |
! ! |
|
7943 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7944 |
!JavaVM::ReflectionRegistry methodsFor:'reflection - classes'! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7945 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7946 |
arrayClassFor: javaClass ifAbsentPut: block |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7947 |
^javaArrayClasses at: javaClass ifAbsentPut: block |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7948 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7949 |
"Created: / 05-07-2012 / 23:21:44 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7950 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7951 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7952 |
classForJavaClassObject: aJavaClassObject |
2151 | 7953 |
" |
7954 |
Given an instance of java.lang.Class, answers |
|
7955 |
real (Java) class associated with it. The instance |
|
7956 |
of java.lang.Class should be first created by myself |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7957 |
(by sending #javaClassObjectForClass:)" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7958 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7959 |
^ javaClasses at: aJavaClassObject |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7960 |
ifAbsent: [ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7961 |
vm internalError: 'No class associated with given java.lang.Class!!'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7962 |
|
2151 | 7963 |
"/Please, no nils |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7964 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7965 |
self returnNilIfMissing ifTrue: nil |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7966 |
]. |
2151 | 7967 |
|
7968 |
"Created: / 28-01-2011 / 15:22:39 / Marcel Hlopko <hlopik@gmail.com>" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7969 |
"Modified: / 21-10-2011 / 13:41:12 / Marcel Hlopko <hlopkmar@fel.cvut.cz>" |
2578
fc6186a4961f
Performance optimization: rewrote 'JavaVM classNamed:' to 'JavaVM classNamed:...definedBy:...'.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2577
diff
changeset
|
7970 |
"Modified: / 02-05-2013 / 01:16:57 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7971 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7972 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7973 |
javaClassObjectArrayForClasses: classes |
2151 | 7974 |
" |
7975 |
Answers an instance of java.lang.Class[] for given |
|
7976 |
real (Java) classes." |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7977 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7978 |
| array | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7979 |
|
2966 | 7980 |
array := _java_lang_Class_CLASS javaArrayClass |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7981 |
new: classes size. |
3506 | 7982 |
classes isEmptyOrNil ifTrue: [ ^ array ]. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7983 |
classes |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7984 |
withIndexDo: [:cls :idx | array at: idx put: (self javaClassObjectForClass: cls) ]. |
2151 | 7985 |
^ array |
7986 |
||
7987 |
"Modified: / 28-01-2011 / 15:15:44 / Marcel Hlopko <hlopik@gmail.com>" |
|
7988 |
"Created: / 04-02-2011 / 22:08:18 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
2605
f343a5ef30b6
An experiment: access to known class java.lang.Class through pool var.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2601
diff
changeset
|
7989 |
"Modified: / 21-05-2013 / 16:29:49 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2151 | 7990 |
! |
7991 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
7992 |
javaClassObjectForClass:aClass |
2151 | 7993 |
|
7994 |
^self javaClassObjectForClass:aClass init: true. |
|
7995 |
||
7996 |
"Modified: / 28-01-2011 / 15:15:44 / Marcel Hlopko <hlopik@gmail.com>" |
|
7997 |
"Modified: / 12-08-2011 / 19:07:29 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
7998 |
! |
|
7999 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8000 |
javaClassObjectForClass: aClass init: init |
2151 | 8001 |
" |
8002 |
Answers an instance of java.lang.Class for given |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8003 |
real (Java) class." |
2151 | 8004 |
|
8005 |
| javaClassObj | |
|
8006 |
||
8007 |
self assert: aClass isBehavior message: 'aClass is not behavior'. |
|
8008 |
self assert: aClass ~~ Array message: 'aClass should not be Array (old impl)'. |
|
8009 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8010 |
javaClasses at: aClass ifPresent: [:javaClassObj | ^ javaClassObj ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8011 |
|
2151 | 8012 |
"/ class must be initialized (with all of its superclasses ?). |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8013 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8014 |
"/ false ifTrue: [ aClass isJavaClass ifTrue: [ aClass classInit ]. ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8015 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8016 |
"/ Here, install Java lookup as Java may send a messages to that |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8017 |
"/ object |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8018 |
(aClass isJavaClass not and:[aClass isJavaArrayClass not and:[aClass isJavaPrimitiveType not]]) ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8019 |
aClass == Object ifTrue:[ self halt. ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8020 |
aClass lookupObject: JavaLookup instance. |
2151 | 8021 |
]. |
2966 | 8022 |
javaClassObj := _java_lang_Class_CLASS new. |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8023 |
self rememberJavaClassObject: javaClassObj for: aClass. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8024 |
^ javaClassObj |
2151 | 8025 |
|
8026 |
"Modified: / 28-01-2011 / 15:15:44 / Marcel Hlopko <hlopik@gmail.com>" |
|
8027 |
"Created: / 12-08-2011 / 19:07:16 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
2605
f343a5ef30b6
An experiment: access to known class java.lang.Class through pool var.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2601
diff
changeset
|
8028 |
"Modified: / 21-05-2013 / 16:28:17 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2151 | 8029 |
! |
8030 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8031 |
javaClassObjectForClassNamed: className |
2151 | 8032 |
" |
8033 |
Answers an instance of java.lang.Class for given |
|
8034 |
(java) class name. The className may be name of primitive |
|
8035 |
type, i.e. 'int', 'double'." |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8036 |
|
2151 | 8037 |
| cls | |
8038 |
||
8039 |
cls := JavaDescriptor baseTypesByTypeName at: className |
|
8040 |
ifAbsent: [ vm classForName: className ]. |
|
8041 |
^ self javaClassObjectForClass: cls. |
|
8042 |
||
8043 |
"Created: / 03-02-2011 / 21:12:02 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
8044 |
"Modified: / 08-04-2011 / 14:45:41 / 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:
2159
diff
changeset
|
8045 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8046 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8047 |
rememberJavaClassObject: jclass for: class |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8048 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8049 |
javaClasses at: class put: jclass. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8050 |
javaClasses at: jclass put: class. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8051 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8052 |
"Created: / 05-12-2011 / 09:57:34 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
3216
1d977d2d3abb
es to ClassLoader#classes list.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3196
diff
changeset
|
8053 |
! |
1d977d2d3abb
es to ClassLoader#classes list.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3196
diff
changeset
|
8054 |
|
1d977d2d3abb
es to ClassLoader#classes list.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3196
diff
changeset
|
8055 |
removeJavaClassObjectForClass: class |
1d977d2d3abb
es to ClassLoader#classes list.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3196
diff
changeset
|
8056 |
| classObject | |
1d977d2d3abb
es to ClassLoader#classes list.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3196
diff
changeset
|
8057 |
|
1d977d2d3abb
es to ClassLoader#classes list.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3196
diff
changeset
|
8058 |
classObject := javaClasses at: class ifAbsent:[ ^ self ]. |
1d977d2d3abb
es to ClassLoader#classes list.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3196
diff
changeset
|
8059 |
|
1d977d2d3abb
es to ClassLoader#classes list.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3196
diff
changeset
|
8060 |
javaClasses removeKey: class. |
1d977d2d3abb
es to ClassLoader#classes list.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3196
diff
changeset
|
8061 |
javaClasses removeKey: classObject. |
1d977d2d3abb
es to ClassLoader#classes list.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3196
diff
changeset
|
8062 |
|
1d977d2d3abb
es to ClassLoader#classes list.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3196
diff
changeset
|
8063 |
"Created: / 09-08-2014 / 00:05:53 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2151 | 8064 |
! ! |
8065 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8066 |
!JavaVM::ReflectionRegistry methodsFor:'reflection - constant pool'! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8067 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8068 |
constantPoolFor:javaConstantPoolObject |
2151 | 8069 |
^ constantPoolMapping at:javaConstantPoolObject |
8070 |
ifAbsent:[self error:'Given ConstantPool was not created by JVM'] |
|
8071 |
||
8072 |
"Created: / 21-12-2010 / 19:56:31 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
8073 |
"Modified: / 28-01-2011 / 14:56:54 / Marcel Hlopko <hlopik@gmail.com>" |
|
8074 |
! |
|
8075 |
||
8076 |
javaConstantPoolObjectFor: aConstantPool |
|
8077 |
||
8078 |
^constantPoolMapping at: aConstantPool ifAbsent: |
|
8079 |
[| javaConstantPoolObject | |
|
8080 |
javaConstantPoolObject := (vm classForName:'sun.reflect.ConstantPool') new. |
|
8081 |
constantPoolMapping at: aConstantPool put: javaConstantPoolObject. |
|
8082 |
constantPoolMapping at: javaConstantPoolObject put: aConstantPool. |
|
8083 |
javaConstantPoolObject] |
|
8084 |
||
8085 |
"Created: / 21-12-2010 / 19:54:02 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
8086 |
! ! |
|
8087 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8088 |
!JavaVM::ReflectionRegistry methodsFor:'reflection - methods & ctors'! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8089 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8090 |
classForJavaConstructorObject:constructor |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8091 |
"given a java.lang.reflect.Constructor, return the corresponding class for it." |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8092 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8093 |
| jclass | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8094 |
jclass := constructor instVarNamed: #clazz. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8095 |
^self classForJavaClassObject: jclass. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8096 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8097 |
"Created: / 22-08-2012 / 12:23:47 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8098 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8099 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8100 |
javaConstructorObjectForMethod:method |
2151 | 8101 |
"given a real method, return the corresponding java.lang.reflect.Constructor |
8102 |
instance for it." |
|
8103 |
||
8104 |
| jCtor | |
|
8105 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8106 |
javaMethodsPerMethod at:method ifPresent:[:existingCtor|^existingCtor]. |
2151 | 8107 |
|
8108 |
jCtor := (Java classForName:'java.lang.reflect.Constructor') new. |
|
8109 |
self javaMethodObjectLikeSlotsInto: jCtor forMethod: method. |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8110 |
self rememberJavaMethodObject: jCtor for: method. |
2151 | 8111 |
|
8112 |
^ jCtor |
|
8113 |
||
8114 |
"Created: / 09-02-2011 / 10:28:12 / Marcel Hlopko <hlopik@gmail.com>" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8115 |
"Modified: / 05-12-2011 / 10:02:11 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8116 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8117 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8118 |
javaMethodObjectForMethod:method |
2151 | 8119 |
"given a real method, return the corresponding java.lang.reflect.Constructor |
8120 |
instance for it." |
|
8121 |
| jMethod | |
|
8122 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8123 |
javaMethodsPerMethod at:method ifPresent:[:existingCtor|^existingCtor]. |
2151 | 8124 |
|
8125 |
jMethod := (Java classForName:'java.lang.reflect.Method') new. |
|
8126 |
self javaMethodObjectLikeSlotsInto: jMethod forMethod: method. |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8127 |
self rememberJavaMethodObject: jMethod for: method. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8128 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8129 |
jMethod |
2151 | 8130 |
instVarNamed: #name put: (self javaStringObjectForString: (method selector upTo:$() interned: true); |
8131 |
instVarNamed: #returnType put: (method descriptor returnClassObject); |
|
8132 |
instVarNamed: #annotationDefault put: (method annotations default bytes); |
|
8133 |
||
8134 |
yourself. |
|
8135 |
||
8136 |
^jMethod |
|
8137 |
||
8138 |
"Created: / 09-02-2011 / 10:29:46 / Marcel Hlopko <hlopik@gmail.com>" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8139 |
"Modified: / 05-12-2011 / 10:02:45 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8140 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8141 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8142 |
javaMethodObjectLikeSlotsInto: jMethod forMethod: method |
2151 | 8143 |
" |
8144 |
Fill in slots of given instance of java.lang.Method or |
|
8145 |
java.lang.Constructor" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8146 |
|
2151 | 8147 |
| desc | |
8148 |
||
8149 |
desc := method descriptor. |
|
8150 |
jMethod |
|
8151 |
instVarNamed: #clazz put: (self javaClassObjectForClass: method javaClass); |
|
8152 |
instVarNamed: #slot put: 0; |
|
8153 |
instVarNamed: #modifiers put: method accessFlags; |
|
8154 |
instVarNamed: #parameterTypes |
|
8155 |
put: (self javaClassObjectArrayForClasses: desc parameterClasses); |
|
8156 |
instVarNamed: #exceptionTypes |
|
8157 |
put: (self javaClassObjectArrayForClasses: method javaExceptionTable); |
|
8158 |
instVarNamed: #annotations put: (method annotations runtimeVisible bytes); |
|
8159 |
yourself. |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8160 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8161 |
method signature notNil ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8162 |
jMethod |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8163 |
instVarNamed: #signature |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8164 |
put: (self javaStringObjectForString: method signature interned: true) |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8165 |
]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8166 |
|
2151 | 8167 |
^ jMethod |
8168 |
||
8169 |
"Created: / 11-02-2011 / 06:44:26 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
8170 |
"Modified: / 04-06-2011 / 17:17:04 / 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:
2159
diff
changeset
|
8171 |
"Modified: / 04-12-2011 / 19:40:00 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8172 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8173 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8174 |
methodForJavaConstructorObject:constructor |
2151 | 8175 |
"given a java.lang.reflect.Constructor, return the corresponding method |
8176 |
it." |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8177 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8178 |
| slot | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8179 |
slot := constructor instVarNamed: #slot. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8180 |
^slot |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8181 |
"/ ^realMethods at: slot ifAbsent:[self error: 'No ctor found for java ctor object']. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8182 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8183 |
"/ |class signature| |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8184 |
"/ class := self classForJavaClassObject:(constructor instVarNamed:#clazz). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8185 |
"/ signature := Java as_ST_String:(constructor instVarNamed:#signature). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8186 |
"/ class methodsDo:[:mthd| |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8187 |
"/ mthd signature = signature ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8188 |
"/ ^mthd |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8189 |
"/ ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8190 |
"/ ]. |
2151 | 8191 |
|
8192 |
"Created: / 09-02-2011 / 10:36:07 / Marcel Hlopko <hlopik@gmail.com>" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8193 |
"Modified: / 01-08-2012 / 11:05:55 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8194 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8195 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8196 |
methodForJavaMethodObject:jmethod |
2151 | 8197 |
" |
8198 |
Given an instance of java.lang.reflect.Method, answers |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8199 |
real method associated with it. |
2151 | 8200 |
" |
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8201 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8202 |
| slot | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8203 |
slot := jmethod instVarNamed: #slot. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8204 |
^slot |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8205 |
"/ ^realMethods at: slot ifAbsent:[self error: 'No method found for java method object']. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8206 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8207 |
"/ |class name signature | |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8208 |
"/ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8209 |
"/ class := self classForJavaClassObject:(aJavaMethodObject instVarNamed:#clazz). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8210 |
"/ name := Java as_ST_String:(aJavaMethodObject instVarNamed:#name). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8211 |
"/ signature := Java as_ST_String:(aJavaMethodObject instVarNamed:#signature). |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8212 |
"/ class methodsDo:[:mthd| |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8213 |
"/ (mthd name = name and:[mthd signature = signature]) ifTrue:[ |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8214 |
"/ ^mthd |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8215 |
"/ ] |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8216 |
"/ ]. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8217 |
"/ self assert: false description: 'No such method, malformed java.lang.reflect.Method object?'. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8218 |
"/ ^nil. |
2151 | 8219 |
|
8220 |
"Created: / 09-02-2011 / 10:32:14 / Marcel Hlopko <hlopik@gmail.com>" |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8221 |
"Modified: / 01-08-2012 / 11:19:07 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8222 |
! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8223 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8224 |
rememberJavaMethodObject: jmethod for: method |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8225 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8226 |
javaMethodsPerMethod at: method put: jmethod. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8227 |
realMethods add: method. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8228 |
jmethod instVarNamed: #slot put: realMethods size. |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8229 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8230 |
"Created: / 05-12-2011 / 10:00:36 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2151 | 8231 |
! ! |
8232 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8233 |
!JavaVM::ReflectionRegistry methodsFor:'reflection - other'! |
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8234 |
|
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8235 |
javaStringObjectForString:string |
2151 | 8236 |
^ self javaStringObjectForString: string interned: false |
8237 |
||
8238 |
"Created: / 09-02-2011 / 10:34:57 / Marcel Hlopko <hlopik@gmail.com>" |
|
8239 |
! |
|
8240 |
||
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8241 |
javaStringObjectForString:string interned:intern |
2151 | 8242 |
| s | |
8243 |
s := Java as_String: string. |
|
8244 |
^intern ifTrue:[Java intern: s] ifFalse:[s] |
|
8245 |
||
8246 |
"Modified: / 22-11-2010 / 17:57:43 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
8247 |
"Created: / 09-02-2011 / 10:34:29 / Marcel Hlopko <hlopik@gmail.com>" |
|
8248 |
! ! |
|
8249 |
||
253 | 8250 |
!JavaVM class methodsFor:'documentation'! |
8251 |
||
2157
a0c2ac13f6c6
#_sun_reflect_NativeMethodAccessorImpl_invoke0: fix for static methods
Claus Gittinger <cg@exept.de>
parents:
2151
diff
changeset
|
8252 |
version |
3506 | 8253 |
^ '$Header$' |
2157
a0c2ac13f6c6
#_sun_reflect_NativeMethodAccessorImpl_invoke0: fix for static methods
Claus Gittinger <cg@exept.de>
parents:
2151
diff
changeset
|
8254 |
! |
a0c2ac13f6c6
#_sun_reflect_NativeMethodAccessorImpl_invoke0: fix for static methods
Claus Gittinger <cg@exept.de>
parents:
2151
diff
changeset
|
8255 |
|
a0c2ac13f6c6
#_sun_reflect_NativeMethodAccessorImpl_invoke0: fix for static methods
Claus Gittinger <cg@exept.de>
parents:
2151
diff
changeset
|
8256 |
version_CVS |
3506 | 8257 |
^ '$Header$' |
2157
a0c2ac13f6c6
#_sun_reflect_NativeMethodAccessorImpl_invoke0: fix for static methods
Claus Gittinger <cg@exept.de>
parents:
2151
diff
changeset
|
8258 |
! |
a0c2ac13f6c6
#_sun_reflect_NativeMethodAccessorImpl_invoke0: fix for static methods
Claus Gittinger <cg@exept.de>
parents:
2151
diff
changeset
|
8259 |
|
3083 | 8260 |
version_HG |
8261 |
||
8262 |
^ '$Changeset: <not expanded> $' |
|
8263 |
! |
|
8264 |
||
2151 | 8265 |
version_SVN |
3506 | 8266 |
^ '$Id$' |
253 | 8267 |
! ! |
2108 | 8268 |
|
2353
fa7400d022a0
Updated to https://swing.fit.cvut.cz/hg/stx.libjava/rev/31f8b995905e
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2159
diff
changeset
|
8269 |
|
2085 | 8270 |
JavaVM initialize! |