diff options
author | jfrijters <jfrijters> | 2010-11-20 10:41:00 +0300 |
---|---|---|
committer | jfrijters <jfrijters> | 2010-11-20 10:41:00 +0300 |
commit | 1eeadb53331c1013870c15bda88a3caaa26645a9 (patch) | |
tree | 69aabf2cfb765d6fd6cc7c9d7ee03199b0756937 /openjdk/map.xml | |
parent | d22a8e25af558960ca4fd3cb08321a09d111e2ed (diff) |
- Replaced reflection based implementation of isCCLOverridden() with an MSIL version that directly compares the method pointers.
- Always use isCCLOverridden() to determine if we need to call parent.getContextClassLoader(), this avoids resolving ClassLoader.DUMMY when we're creating a new thread.
Diffstat (limited to 'openjdk/map.xml')
-rw-r--r-- | openjdk/map.xml | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/openjdk/map.xml b/openjdk/map.xml index b46491df..237f844b 100644 --- a/openjdk/map.xml +++ b/openjdk/map.xml @@ -1390,6 +1390,22 @@ <class name="java.lang.Thread"> <field name="parkLock" sig="Ljava.lang.Object;" modifiers="" /> <field name="parkState" sig="I" modifiers="" /> + <method name="isCCLOverridden" sig="(Ljava.lang.Thread;)Z"> + <body> + <ldftn class="java.lang.Thread" name="getContextClassLoader" sig="()Ljava.lang.ClassLoader;" /> + <ldarg_0 /> + <ldvirtftn class="java.lang.Thread" name="getContextClassLoader" sig="()Ljava.lang.ClassLoader;" /> + <ceq /> + <ldftn class="java.lang.Thread" name="setContextClassLoader" sig="(Ljava.lang.ClassLoader;)V" /> + <ldarg_0 /> + <ldvirtftn class="java.lang.Thread" name="setContextClassLoader" sig="(Ljava.lang.ClassLoader;)V" /> + <ceq /> + <and /> + <ldc_i4_0 /> + <ceq /> + <ret /> + </body> + </method> </class> <class name="java.lang.ThreadGroup"> <method name="createRootGroup" sig="()Ljava.lang.ThreadGroup;" modifiers="static"> |