Skip to content

Instantly share code, notes, and snippets.

@chanwit
Created July 13, 2009 22:03
Show Gist options
  • Select an option

  • Save chanwit/146483 to your computer and use it in GitHub Desktop.

Select an option

Save chanwit/146483 to your computer and use it in GitHub Desktop.
0xb3e3bc5f: call 0xb3e0d060 ; OopMap{[16]=Oop [36]=Oop off=3012}
;*invokedynamic
; - g7.tests.classgen.Fib::fib@43
; - g7.tests.classgen.Fib::fib@33
; {optimized virtual_call}
0xb3e3bc64: mov esp, ebp ;*invokedynamic
; - g7.tests.classgen.Fib::fib@43
; - g7.tests.classgen.Fib::fib@33
0xb3e3bc66: mov [esp+0x1C], eax
0xb3e3bc6a: jmp 0xb3e3bcb4
0xb3e3bc6c: mov ebp, [esp+0x20]
0xb3e3bc70: mov ebp, [ebp+0x8] ; implicit exception: dispatches to 0xb3e3cc71
0xb3e3bc73: mov ecx, [ebx+0x8] ;*getfield value
; - java.lang.Integer::intValue@1 (line 708)
; - com.chanwit.g7.runtime.DefaultNumberMethods::minus@5 (line 42)
; - g7.tests.classgen.Fib::fib@43
; - g7.tests.classgen.Fib::fib@33
; implicit exception: dispatches to 0xb3e3cc81
0xb3e3bc76: sub ebp, ecx ;*isub
; - com.chanwit.g7.runtime.DefaultNumberMethods::minus@8 (line 42)
; - g7.tests.classgen.Fib::fib@43
; - g7.tests.classgen.Fib::fib@33
0xb3e3bc78: mov [esp+0x18], ebp
0xb3e3bc7c: cmp ebp, 0x00000080
0xb3e3bc7f: jl 0xb3e3c1e5 ;*if_icmplt
; - java.lang.Integer::valueOf@25 (line 647)
; - com.chanwit.g7.runtime.DefaultNumberMethods::minus@9 (line 42)
; - g7.tests.classgen.Fib::fib@43
; - g7.tests.classgen.Fib::fib@33
0xb3e3bc85: cmp ebp, 0x0000007f
0xb3e3bc88: jg 0xb3e3c1e5 ;*if_icmpgt
; - java.lang.Integer::valueOf@32 (line 647)
; - com.chanwit.g7.runtime.DefaultNumberMethods::minus@9 (line 42)
; - g7.tests.classgen.Fib::fib@43
; - g7.tests.classgen.Fib::fib@33
0xb3e3bc8e: add ebp, 0x00000080 ;*iadd
; - java.lang.Integer::valueOf@42 (line 648)
; - com.chanwit.g7.runtime.DefaultNumberMethods::minus@9 (line 42)
; - g7.tests.classgen.Fib::fib@43
; - g7.tests.classgen.Fib::fib@33
0xb3e3bc94: cmp ebp, 0x00000100
0xb3e3bc9a: jnc 0xb3e3c759
0xb3e3bca0: mov ebx, a 'java/lang/Integer'[256]
; {oop(a 'java/lang/Integer'[256] )}
0xb3e3bca5: mov ecx, [esp+0x18]
0xb3e3bca9: mov eax, [ebx+ecx*4+0x20C]
;*invokestatic valueOf
; - com.chanwit.g7.runtime.DefaultNumberMethods::minus@9 (line 42)
; - g7.tests.classgen.Fib::fib@43
; - g7.tests.classgen.Fib::fib@33
0xb3e3bcb0: mov [esp+0x1C], eax ;*synchronization entry
; - g7.tests.classgen.Fib::fib@-1
; - g7.tests.classgen.Fib::fib@33
0xb3e3bcb4: mov ecx, 0x000000c8
0xb3e3bcb9: mov ecx, [ecx-0x50166C48] ; {oop({constant pool cache})}
0xb3e3bcbf: mov ebp, [ecx+0x14]
0xb3e3bcc2: cmp ebp, a 'sun/dyn/DirectMethodHandle'
; {oop(a 'sun/dyn/DirectMethodHandle')}
0xb3e3bcc8: jz 0xb3e3bce1
0xb3e3bcca: mov ecx, [ecx+0x14]
0xb3e3bccd: mov edx, [esp+0x1C]
0xb3e3bcd1: mov ebp, esp
0xb3e3bcd3: call 0xb3e0d060 ; OopMap{[16]=Oop [36]=Oop off=3128}
;*invokedynamic
; - g7.tests.classgen.Fib::fib@48
; - g7.tests.classgen.Fib::fib@33
; {optimized virtual_call}
0xb3e3bcd8: mov esp, ebp ;*invokedynamic
; - g7.tests.classgen.Fib::fib@48
; - g7.tests.classgen.Fib::fib@33
0xb3e3bcda: mov edi, eax
0xb3e3bcdc: jmp 0xb3e3b142
0xb3e3bce1: mov ebx, 0x00000214
0xb3e3bce6: mov ebx, [ebx-0x5432A650] ;*aaload
; - java.lang.Integer::valueOf@43 (line 648)
; - g7.tests.classgen.Fib::fib@2
; - g7.tests.classgen.Fib::fib@48
; - g7.tests.classgen.Fib::fib@33
; {oop(a 'java/lang/Integer'[256] )}
0xb3e3bcec: mov ecx, {constant pool cache}
; {oop({constant pool cache})}
0xb3e3bcf1: mov ebp, [ecx+0x68]
0xb3e3bcf4: mov ecx, [ebp+0x14]
0xb3e3bcf7: cmp ecx, a 'sun/dyn/AdapterMethodHandle'
; {oop(a 'sun/dyn/AdapterMethodHandle')}
0xb3e3bcfd: jnz 0xb3e3bd36 ;*invokedynamic
; - g7.tests.classgen.Fib::fib@5
; - g7.tests.classgen.Fib::fib@48
; - g7.tests.classgen.Fib::fib@33
0xb3e3bcff: mov ebp, [esp+0x1C]
0xb3e3bd03: mov ecx, [ebp+0x8] ; implicit exception: dispatches to 0xb3e3cd11
0xb3e3bd06: mov ebp, [ebx+0x8] ; implicit exception: dispatches to 0xb3e3cd21
0xb3e3bd09: cmp ecx, ebp
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment