Source/sources/gnu/kawa/xml/Document.java
public static synchronized gnu.kawa.xml.KDocument parseCached(gnu.text.Path r9) throws java.lang.Throwable {
        /*
            java.lang.Class<gnu.kawa.xml.Document> r7 = gnu.kawa.xml.Document.class
            monitor-enter(r7)
        L_0x0003:
            java.lang.ref.ReferenceQueue r6 = gnu.kawa.xml.Document.DocReference.queue     // Catch:{ all -> 0x0037 }
            java.lang.ref.Reference r4 = r6.poll()     // Catch:{ all -> 0x0037 }
            gnu.kawa.xml.Document$DocReference r4 = (gnu.kawa.xml.Document.DocReference) r4     // Catch:{ all -> 0x0037 }
            if (r4 != 0) goto L_0x002f
            gnu.mapping.ThreadLocation r6 = docMapLocation     // Catch:{ all -> 0x0037 }
            gnu.mapping.NamedLocation r2 = r6.getLocation()     // Catch:{ all -> 0x0037 }
            r6 = 0
            java.lang.Object r3 = r2.get(r6)     // Catch:{ all -> 0x0037 }
            java.util.Hashtable r3 = (java.util.Hashtable) r3     // Catch:{ all -> 0x0037 }
            if (r3 != 0) goto L_0x0024
            java.util.Hashtable r3 = new java.util.Hashtable     // Catch:{ all -> 0x0037 }
            r3.<init>()     // Catch:{ all -> 0x0037 }
            r2.set(r3)     // Catch:{ all -> 0x0037 }
        L_0x0024:
            java.lang.Object r0 = r3.get(r9)     // Catch:{ all -> 0x0037 }
            gnu.kawa.xml.KDocument r0 = (gnu.kawa.xml.KDocument) r0     // Catch:{ all -> 0x0037 }
            if (r0 == 0) goto L_0x003a
            r1 = r0
        L_0x002d:
            monitor-exit(r7)
            return r1
        L_0x002f:
            java.util.HashMap r6 = cache     // Catch:{ all -> 0x0037 }
            gnu.text.Path r8 = r4.key     // Catch:{ all -> 0x0037 }
            r6.remove(r8)     // Catch:{ all -> 0x0037 }
            goto L_0x0003
        L_0x0037:
            r6 = move-exception
            monitor-exit(r7)
            throw r6
        L_0x003a:
            java.util.HashMap r6 = cache     // Catch:{ all -> 0x0037 }
            java.lang.Object r5 = r6.get(r9)     // Catch:{ all -> 0x0037 }
            gnu.kawa.xml.Document$DocReference r5 = (gnu.kawa.xml.Document.DocReference) r5     // Catch:{ all -> 0x0037 }
            if (r5 == 0) goto L_0x0051
            java.lang.Object r0 = r5.get()     // Catch:{ all -> 0x0037 }
            gnu.kawa.xml.KDocument r0 = (gnu.kawa.xml.KDocument) r0     // Catch:{ all -> 0x0037 }
            if (r0 != 0) goto L_0x0064
            java.util.HashMap r6 = cache     // Catch:{ all -> 0x0037 }
            r6.remove(r9)     // Catch:{ all -> 0x0037 }
        L_0x0051:
            gnu.kawa.xml.KDocument r0 = parse(r9)     // Catch:{ all -> 0x0037 }
            r3.put(r9, r0)     // Catch:{ all -> 0x0037 }
            java.util.HashMap r6 = cache     // Catch:{ all -> 0x0037 }
            gnu.kawa.xml.Document$DocReference r8 = new gnu.kawa.xml.Document$DocReference     // Catch:{ all -> 0x0037 }
            r8.<init>(r9, r0)     // Catch:{ all -> 0x0037 }
            r6.put(r9, r8)     // Catch:{ all -> 0x0037 }
            r1 = r0
            goto L_0x002d
        L_0x0064:
            r3.put(r9, r0)     // Catch:{ all -> 0x0037 }
            r1 = r0
            goto L_0x002d
        */
        throw new UnsupportedOperationException("Method not decompiled: gnu.kawa.xml.Document.parseCached(gnu.text.Path):gnu.kawa.xml.KDocument");
    }
/* Code decompiled incorrectly, please refer to instructions dump. */
Code decompiled incorrectly, please refer to instructions dump.
Code decompiled incorrectly please refer to instructions dump .
public static synchronized gnu.kawa.xml.KDocument parseCached(gnu.text.Path r9) throws java.lang.Throwable {
        /*
            java.lang.Class<gnu.kawa.xml.Document> r7 = gnu.kawa.xml.Document.class
            monitor-enter(r7)
        L_0x0003:
            java.lang.ref.ReferenceQueue r6 = gnu.kawa.xml.Document.DocReference.queue     // Catch:{ all -> 0x0037 }
            java.lang.ref.Reference r4 = r6.poll()     // Catch:{ all -> 0x0037 }
            gnu.kawa.xml.Document$DocReference r4 = (gnu.kawa.xml.Document.DocReference) r4     // Catch:{ all -> 0x0037 }
            if (r4 != 0) goto L_0x002f
            gnu.mapping.ThreadLocation r6 = docMapLocation     // Catch:{ all -> 0x0037 }
            gnu.mapping.NamedLocation r2 = r6.getLocation()     // Catch:{ all -> 0x0037 }
            r6 = 0
            java.lang.Object r3 = r2.get(r6)     // Catch:{ all -> 0x0037 }
            java.util.Hashtable r3 = (java.util.Hashtable) r3     // Catch:{ all -> 0x0037 }
            if (r3 != 0) goto L_0x0024
            java.util.Hashtable r3 = new java.util.Hashtable     // Catch:{ all -> 0x0037 }
            r3.<init>()     // Catch:{ all -> 0x0037 }
            r2.set(r3)     // Catch:{ all -> 0x0037 }
        L_0x0024:
            java.lang.Object r0 = r3.get(r9)     // Catch:{ all -> 0x0037 }
            gnu.kawa.xml.KDocument r0 = (gnu.kawa.xml.KDocument) r0     // Catch:{ all -> 0x0037 }
            if (r0 == 0) goto L_0x003a
            r1 = r0
        L_0x002d:
            monitor-exit(r7)
            return r1
        L_0x002f:
            java.util.HashMap r6 = cache     // Catch:{ all -> 0x0037 }
            gnu.text.Path r8 = r4.key     // Catch:{ all -> 0x0037 }
            r6.remove(r8)     // Catch:{ all -> 0x0037 }
            goto L_0x0003
        L_0x0037:
            r6 = move-exception
            monitor-exit(r7)
            throw r6
        L_0x003a:
            java.util.HashMap r6 = cache     // Catch:{ all -> 0x0037 }
            java.lang.Object r5 = r6.get(r9)     // Catch:{ all -> 0x0037 }
            gnu.kawa.xml.Document$DocReference r5 = (gnu.kawa.xml.Document.DocReference) r5     // Catch:{ all -> 0x0037 }
            if (r5 == 0) goto L_0x0051
            java.lang.Object r0 = r5.get()     // Catch:{ all -> 0x0037 }
            gnu.kawa.xml.KDocument r0 = (gnu.kawa.xml.KDocument) r0     // Catch:{ all -> 0x0037 }
            if (r0 != 0) goto L_0x0064
            java.util.HashMap r6 = cache     // Catch:{ all -> 0x0037 }
            r6.remove(r9)     // Catch:{ all -> 0x0037 }
        L_0x0051:
            gnu.kawa.xml.KDocument r0 = parse(r9)     // Catch:{ all -> 0x0037 }
            r3.put(r9, r0)     // Catch:{ all -> 0x0037 }
            java.util.HashMap r6 = cache     // Catch:{ all -> 0x0037 }
            gnu.kawa.xml.Document$DocReference r8 = new gnu.kawa.xml.Document$DocReference     // Catch:{ all -> 0x0037 }
            r8.<init>(r9, r0)     // Catch:{ all -> 0x0037 }
            r6.put(r9, r8)     // Catch:{ all -> 0x0037 }
            r1 = r0
            goto L_0x002d
        L_0x0064:
            r3.put(r9, r0)     // Catch:{ all -> 0x0037 }
            r1 = r0
            goto L_0x002d
        */
        throw new UnsupportedOperationException("Method not decompiled: gnu.kawa.xml.Document.parseCached(gnu.text.Path):gnu.kawa.xml.KDocument");
    }
public static synchronized gnu . kawa . xml . KDocument parseCached ( gnu . text . Path r9 ) throws java . lang . Throwable { /*
            java.lang.Class<gnu.kawa.xml.Document> r7 = gnu.kawa.xml.Document.class
            monitor-enter(r7)
        L_0x0003:
            java.lang.ref.ReferenceQueue r6 = gnu.kawa.xml.Document.DocReference.queue     // Catch:{ all -> 0x0037 }
            java.lang.ref.Reference r4 = r6.poll()     // Catch:{ all -> 0x0037 }
            gnu.kawa.xml.Document$DocReference r4 = (gnu.kawa.xml.Document.DocReference) r4     // Catch:{ all -> 0x0037 }
            if (r4 != 0) goto L_0x002f
            gnu.mapping.ThreadLocation r6 = docMapLocation     // Catch:{ all -> 0x0037 }
            gnu.mapping.NamedLocation r2 = r6.getLocation()     // Catch:{ all -> 0x0037 }
            r6 = 0
            java.lang.Object r3 = r2.get(r6)     // Catch:{ all -> 0x0037 }
            java.util.Hashtable r3 = (java.util.Hashtable) r3     // Catch:{ all -> 0x0037 }
            if (r3 != 0) goto L_0x0024
            java.util.Hashtable r3 = new java.util.Hashtable     // Catch:{ all -> 0x0037 }
            r3.<init>()     // Catch:{ all -> 0x0037 }
            r2.set(r3)     // Catch:{ all -> 0x0037 }
        L_0x0024:
            java.lang.Object r0 = r3.get(r9)     // Catch:{ all -> 0x0037 }
            gnu.kawa.xml.KDocument r0 = (gnu.kawa.xml.KDocument) r0     // Catch:{ all -> 0x0037 }
            if (r0 == 0) goto L_0x003a
            r1 = r0
        L_0x002d:
            monitor-exit(r7)
            return r1
        L_0x002f:
            java.util.HashMap r6 = cache     // Catch:{ all -> 0x0037 }
            gnu.text.Path r8 = r4.key     // Catch:{ all -> 0x0037 }
            r6.remove(r8)     // Catch:{ all -> 0x0037 }
            goto L_0x0003
        L_0x0037:
            r6 = move-exception
            monitor-exit(r7)
            throw r6
        L_0x003a:
            java.util.HashMap r6 = cache     // Catch:{ all -> 0x0037 }
            java.lang.Object r5 = r6.get(r9)     // Catch:{ all -> 0x0037 }
            gnu.kawa.xml.Document$DocReference r5 = (gnu.kawa.xml.Document.DocReference) r5     // Catch:{ all -> 0x0037 }
            if (r5 == 0) goto L_0x0051
            java.lang.Object r0 = r5.get()     // Catch:{ all -> 0x0037 }
            gnu.kawa.xml.KDocument r0 = (gnu.kawa.xml.KDocument) r0     // Catch:{ all -> 0x0037 }
            if (r0 != 0) goto L_0x0064
            java.util.HashMap r6 = cache     // Catch:{ all -> 0x0037 }
            r6.remove(r9)     // Catch:{ all -> 0x0037 }
        L_0x0051:
            gnu.kawa.xml.KDocument r0 = parse(r9)     // Catch:{ all -> 0x0037 }
            r3.put(r9, r0)     // Catch:{ all -> 0x0037 }
            java.util.HashMap r6 = cache     // Catch:{ all -> 0x0037 }
            gnu.kawa.xml.Document$DocReference r8 = new gnu.kawa.xml.Document$DocReference     // Catch:{ all -> 0x0037 }
            r8.<init>(r9, r0)     // Catch:{ all -> 0x0037 }
            r6.put(r9, r8)     // Catch:{ all -> 0x0037 }
            r1 = r0
            goto L_0x002d
        L_0x0064:
            r3.put(r9, r0)     // Catch:{ all -> 0x0037 }
            r1 = r0
            goto L_0x002d
        */ throw new UnsupportedOperationException ( "Method not decompiled: gnu.kawa.xml.Document.parseCached(gnu.text.Path):gnu.kawa.xml.KDocument" ) ; }
Code decompiled incorrectly, please refer to instructions dump.
Code decompiled incorrectly please refer to instructions dump .