Skip to content

Instantly share code, notes, and snippets.

@MLLeKander
Last active October 25, 2016 19:38
Show Gist options
  • Save MLLeKander/e7cdf8fa3c1d8667e15f8a920d41b19f to your computer and use it in GitHub Desktop.
Save MLLeKander/e7cdf8fa3c1d8667e15f8a920d41b19f to your computer and use it in GitHub Desktop.
JVM
$ java -XX:+UnlockDiagnosticVMOptions '-XX:CompileCommand=print,*test3.main' test3
CompilerOracle: print *test3.main
OpenJDK 64-Bit Server VM warning: printing of assembly code is enabled; turning on DebugNonSafepoints to gain additional output
Compiled method (c1) 42 19 % 3 test3::main @ 8 (84 bytes)
total in heap [0x00007f9961110610,0x00007f9961111468] = 3672
relocation [0x00007f9961110738,0x00007f99611107e0] = 168
main code [0x00007f99611107e0,0x00007f9961110f20] = 1856
stub code [0x00007f9961110f20,0x00007f9961110fc8] = 168
oops [0x00007f9961110fc8,0x00007f9961110fd0] = 8
metadata [0x00007f9961110fd0,0x00007f9961110fe8] = 24
scopes data [0x00007f9961110fe8,0x00007f9961111138] = 336
scopes pcs [0x00007f9961111138,0x00007f9961111418] = 736
dependencies [0x00007f9961111418,0x00007f9961111420] = 8
nul chk table [0x00007f9961111420,0x00007f9961111468] = 72
Loaded disassembler from /usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/hsdis-amd64.so
Decoding compiled method 0x00007f9961110610:
Code:
[Disassembling for mach='i386:x86-64']
[Entry Point]
[Verified Entry Point]
[Constants]
# {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3'
0x00007f99611107e0: mov %eax,-0x14000(%rsp)
0x00007f99611107e7: push %rbp
0x00007f99611107e8: sub $0x70,%rsp
0x00007f99611107ec: mov $0x7f993fc00878,%rbx ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f99611107f6: mov 0xdc(%rbx),%edx
0x00007f99611107fc: add $0x8,%edx
0x00007f99611107ff: mov %edx,0xdc(%rbx)
0x00007f9961110805: mov $0x7f993fc00368,%rbx ; {metadata({method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f996111080f: and $0x1ff8,%edx
0x00007f9961110815: cmp $0x0,%edx
0x00007f9961110818: je 0x00007f9961110d7d ;*ldc
; - test3::main@0 (line 4)
0x00007f996111081e: mov $0x186a0,%ebx
0x00007f9961110823: mov $0x1000603e8,%rdx ; {metadata('test3$Node'[])}
0x00007f996111082d: movslq %ebx,%rbx
0x00007f9961110830: mov %rbx,%rdi
0x00007f9961110833: cmp $0xffffff,%rbx
0x00007f996111083a: ja 0x00007f9961110d94
0x00007f9961110840: mov $0x17,%rsi
0x00007f996111084a: lea (%rsi,%rbx,4),%rsi
0x00007f996111084e: and $0xfffffffffffffff8,%rsi
0x00007f9961110852: mov 0x60(%r15),%rax
0x00007f9961110856: lea (%rax,%rsi,1),%rsi
0x00007f996111085a: cmp 0x70(%r15),%rsi
0x00007f996111085e: ja 0x00007f9961110d94
0x00007f9961110864: mov %rsi,0x60(%r15)
0x00007f9961110868: sub %rax,%rsi
0x00007f996111086b: movq $0x1,(%rax)
0x00007f9961110872: mov %rdx,%rcx
0x00007f9961110875: shr $0x3,%rcx
0x00007f9961110879: mov %ecx,0x8(%rax)
0x00007f996111087c: mov %ebx,0xc(%rax)
0x00007f996111087f: sub $0x10,%rsi
0x00007f9961110883: je 0x00007f996111089a
0x00007f9961110889: xor %rbx,%rbx
0x00007f996111088c: shr $0x3,%rsi
0x00007f9961110890: mov %rbx,0x8(%rax,%rsi,8)
0x00007f9961110895: dec %rsi
0x00007f9961110898: jne 0x00007f9961110890 ;*anewarray
; - test3::main@2 (line 4)
0x00007f996111089a: mov %rax,%rbx
0x00007f996111089d: mov $0x0,%r8d
0x00007f99611108a3: jmpq 0x00007f9961110aef ;*iload_2
; - test3::main@8 (line 5)
0x00007f99611108a8: mov $0x100060208,%rdx ; {metadata('test3$Node')}
0x00007f99611108b2: mov 0x60(%r15),%rax
0x00007f99611108b6: lea 0x10(%rax),%rdi
0x00007f99611108ba: cmp 0x70(%r15),%rdi
0x00007f99611108be: ja 0x00007f9961110d9e
0x00007f99611108c4: mov %rdi,0x60(%r15)
0x00007f99611108c8: mov 0xa8(%rdx),%rcx
0x00007f99611108cf: mov %rcx,(%rax)
0x00007f99611108d2: mov %rdx,%rcx
0x00007f99611108d5: shr $0x3,%rcx
0x00007f99611108d9: mov %ecx,0x8(%rax)
0x00007f99611108dc: xor %rcx,%rcx
0x00007f99611108df: mov %ecx,0xc(%rax)
0x00007f99611108e2: xor %rcx,%rcx ;*new ; - test3::main@16 (line 6)
0x00007f99611108e5: mov %rax,%rdx
0x00007f99611108e8: mov $0x7f993fc00878,%rsi ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f99611108f2: addq $0x1,0x128(%rsi)
0x00007f99611108fa: mov $0x7f993fc00740,%rdx ; {metadata(method data for {method} {0x00007f993fc00660} '<init>' '(I)V' in 'test3$Node')}
0x00007f9961110904: mov 0xdc(%rdx),%esi
0x00007f996111090a: add $0x8,%esi
0x00007f996111090d: mov %esi,0xdc(%rdx)
0x00007f9961110913: mov $0x7f993fc00660,%rdx ; {metadata({method} {0x00007f993fc00660} '<init>' '(I)V' in 'test3$Node')}
0x00007f996111091d: and $0x7ffff8,%esi
0x00007f9961110923: cmp $0x0,%esi
0x00007f9961110926: je 0x00007f9961110dab
0x00007f996111092c: mov %rax,%rdx
0x00007f996111092f: mov $0x7f993fc00740,%rsi ; {metadata(method data for {method} {0x00007f993fc00660} '<init>' '(I)V' in 'test3$Node')}
0x00007f9961110939: addq $0x1,0x108(%rsi)
0x00007f9961110941: mov $0x7f993f9741b0,%rdx ; {metadata(method data for {method} {0x00007f993f800480} '<init>' '()V' in 'java/lang/Object')}
0x00007f996111094b: mov 0xdc(%rdx),%esi
0x00007f9961110951: add $0x8,%esi
0x00007f9961110954: mov %esi,0xdc(%rdx)
0x00007f996111095a: mov $0x7f993f800480,%rdx ; {metadata({method} {0x00007f993f800480} '<init>' '()V' in 'java/lang/Object')}
0x00007f9961110964: and $0x7ffff8,%esi
0x00007f996111096a: cmp $0x0,%esi
0x00007f996111096d: je 0x00007f9961110dc2
0x00007f9961110973: mov %r8d,0xc(%rax) ;*putfield i
; - test3$Node::<init>@6 (line 18)
; - test3::main@21 (line 6)
0x00007f9961110977: movslq %r8d,%rdx
0x00007f996111097a: lea 0x10(%rbx,%rdx,4),%rdx
0x00007f996111097f: cmp 0xc(%rbx),%r8d ; implicit exception: dispatches to 0x00007f9961110dd9
0x00007f9961110983: jae 0x00007f9961110de3
0x00007f9961110989: cmp $0x0,%rax
0x00007f996111098d: jne 0x00007f99611109a8
0x00007f996111098f: mov $0x7f993fc00878,%rdi ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f9961110999: orl $0x100,0x130(%rdi)
0x00007f99611109a3: jmpq 0x00007f9961110a8c
0x00007f99611109a8: mov 0x8(%rbx),%esi ; implicit exception: dispatches to 0x00007f9961110dec
0x00007f99611109ab: shl $0x3,%rsi
0x00007f99611109af: mov 0x8(%rax),%edi
0x00007f99611109b2: shl $0x3,%rdi
0x00007f99611109b6: mov 0xe0(%rsi),%rsi
0x00007f99611109bd: cmp %rsi,%rdi
0x00007f99611109c0: je 0x00007f99611109ee
0x00007f99611109c6: mov 0xc(%rsi),%ecx
0x00007f99611109c9: cmp (%rdi,%rcx,1),%rsi
0x00007f99611109cd: je 0x00007f99611109ee
0x00007f99611109d3: cmp $0x18,%ecx
0x00007f99611109d6: jne 0x00007f9961110a75
0x00007f99611109dc: push %rdi
0x00007f99611109dd: push %rsi
0x00007f99611109de: callq 0x00007f99610fb960 ; {runtime_call}
0x00007f99611109e3: pop %rdi
0x00007f99611109e4: pop %rsi
0x00007f99611109e5: cmp $0x0,%esi
0x00007f99611109e8: je 0x00007f9961110a75
0x00007f99611109ee: mov $0x7f993fc00878,%rdi ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f99611109f8: mov 0x8(%rax),%esi
0x00007f99611109fb: shl $0x3,%rsi
0x00007f99611109ff: cmp 0x140(%rdi),%rsi
0x00007f9961110a06: jne 0x00007f9961110a15
0x00007f9961110a08: addq $0x1,0x148(%rdi)
0x00007f9961110a10: jmpq 0x00007f9961110a8c
0x00007f9961110a15: cmp 0x150(%rdi),%rsi
0x00007f9961110a1c: jne 0x00007f9961110a2b
0x00007f9961110a1e: addq $0x1,0x158(%rdi)
0x00007f9961110a26: jmpq 0x00007f9961110a8c
0x00007f9961110a2b: cmpq $0x0,0x140(%rdi)
0x00007f9961110a36: jne 0x00007f9961110a4f
0x00007f9961110a38: mov %rsi,0x140(%rdi)
0x00007f9961110a3f: movq $0x1,0x148(%rdi)
0x00007f9961110a4a: jmpq 0x00007f9961110a8c
0x00007f9961110a4f: cmpq $0x0,0x150(%rdi)
0x00007f9961110a5a: jne 0x00007f9961110a73
0x00007f9961110a5c: mov %rsi,0x150(%rdi)
0x00007f9961110a63: movq $0x1,0x158(%rdi)
0x00007f9961110a6e: jmpq 0x00007f9961110a8c
0x00007f9961110a73: jmp 0x00007f9961110a8c
0x00007f9961110a75: mov $0x7f993fc00878,%rdi ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f9961110a7f: subq $0x1,0x138(%rdi)
0x00007f9961110a87: jmpq 0x00007f9961110df1
0x00007f9961110a8c: mov %rax,%r10
0x00007f9961110a8f: mov %r10d,(%rdx)
0x00007f9961110a92: shr $0x9,%rdx
0x00007f9961110a96: mov $0x7f9973d52000,%rsi
0x00007f9961110aa0: movb $0x0,(%rdx,%rsi,1) ;*aastore
; - test3::main@24 (line 6)
0x00007f9961110aa4: inc %r8d
0x00007f9961110aa7: mov $0x7f993fc00878,%rdx ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f9961110ab1: mov 0xe0(%rdx),%esi
0x00007f9961110ab7: add $0x8,%esi
0x00007f9961110aba: mov %esi,0xe0(%rdx)
0x00007f9961110ac0: mov $0x7f993fc00368,%rdx ; {metadata({method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f9961110aca: and $0xfff8,%esi
0x00007f9961110ad0: cmp $0x0,%esi
0x00007f9961110ad3: je 0x00007f9961110dfa ; OopMap{rbx=Oop off=761}
;*goto
; - test3::main@28 (line 5)
0x00007f9961110ad9: test %eax,0x16dd3621(%rip) # 0x00007f9977ee4100
; {poll}
0x00007f9961110adf: mov $0x7f993fc00878,%rdx ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f9961110ae9: incl 0x168(%rdx) ;*goto
; - test3::main@28 (line 5)
0x00007f9961110aef: cmp $0x186a0,%r8d
0x00007f9961110af6: mov $0x7f993fc00878,%rdx ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f9961110b00: mov $0x108,%rsi
0x00007f9961110b0a: jge 0x00007f9961110b1a
0x00007f9961110b10: mov $0x118,%rsi
0x00007f9961110b1a: mov (%rdx,%rsi,1),%rdi
0x00007f9961110b1e: lea 0x1(%rdi),%rdi
0x00007f9961110b22: mov %rdi,(%rdx,%rsi,1)
0x00007f9961110b26: jl 0x00007f99611108a8 ;*if_icmpge
; - test3::main@11 (line 5)
0x00007f9961110b2c: mov $0x0,%edx
0x00007f9961110b31: mov $0x0,%rsi
0x00007f9961110b3b: jmpq 0x00007f9961110c3c ;*iload
; - test3::main@36 (line 9)
0x00007f9961110b40: mov $0x0,%edi
0x00007f9961110b45: jmpq 0x00007f9961110bb6 ;*iload
; - test3::main@46 (line 10)
0x00007f9961110b4a: nopw 0x0(%rax,%rax,1)
0x00007f9961110b50: movslq %edx,%rax
0x00007f9961110b53: cmp 0xc(%rbx),%edx ; implicit exception: dispatches to 0x00007f9961110e11
0x00007f9961110b56: jae 0x00007f9961110e1b
0x00007f9961110b5c: mov 0x10(%rbx,%rax,4),%eax ;*aaload
; - test3::main@57 (line 11)
0x00007f9961110b60: mov 0xc(%rax),%eax ;*getfield i
; - test3::main@58 (line 11)
; implicit exception: dispatches to 0x00007f9961110e24
0x00007f9961110b63: movslq %eax,%rax
0x00007f9961110b66: add %rsi,%rax
0x00007f9961110b69: inc %edi
0x00007f9961110b6b: mov $0x7f993fc00878,%rsi ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f9961110b75: mov 0xe0(%rsi),%ecx
0x00007f9961110b7b: add $0x8,%ecx
0x00007f9961110b7e: mov %ecx,0xe0(%rsi)
0x00007f9961110b84: mov $0x7f993fc00368,%rsi ; {metadata({method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f9961110b8e: and $0xfff8,%ecx
0x00007f9961110b94: cmp $0x0,%ecx
0x00007f9961110b97: je 0x00007f9961110e29 ; OopMap{rbx=Oop off=957}
;*goto
; - test3::main@67 (line 10)
0x00007f9961110b9d: test %eax,0x16dd355d(%rip) # 0x00007f9977ee4100
; {poll}
0x00007f9961110ba3: mov $0x7f993fc00878,%rsi ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f9961110bad: incl 0x1c0(%rsi)
0x00007f9961110bb3: mov %rax,%rsi ;*goto
; - test3::main@67 (line 10)
0x00007f9961110bb6: cmp $0x186a0,%edi
0x00007f9961110bbc: mov $0x7f993fc00878,%rax ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f9961110bc6: mov $0x1a0,%rcx
0x00007f9961110bd0: jge 0x00007f9961110be0
0x00007f9961110bd6: mov $0x1b0,%rcx
0x00007f9961110be0: mov (%rax,%rcx,1),%r8
0x00007f9961110be4: lea 0x1(%r8),%r8
0x00007f9961110be8: mov %r8,(%rax,%rcx,1)
0x00007f9961110bec: jl 0x00007f9961110b50 ;*if_icmpge
; - test3::main@50 (line 10)
0x00007f9961110bf2: inc %edx
0x00007f9961110bf4: mov $0x7f993fc00878,%rdi ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f9961110bfe: mov 0xe0(%rdi),%eax
0x00007f9961110c04: add $0x8,%eax
0x00007f9961110c07: mov %eax,0xe0(%rdi)
0x00007f9961110c0d: mov $0x7f993fc00368,%rdi ; {metadata({method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f9961110c17: and $0xfff8,%eax
0x00007f9961110c1d: cmp $0x0,%eax
0x00007f9961110c20: je 0x00007f9961110e40 ; OopMap{rbx=Oop off=1094}
;*goto
; - test3::main@73 (line 9)
0x00007f9961110c26: test %eax,0x16dd34d4(%rip) # 0x00007f9977ee4100
; {poll}
0x00007f9961110c2c: mov $0x7f993fc00878,%rdi ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f9961110c36: incl 0x1d8(%rdi) ;*goto
; - test3::main@73 (line 9)
0x00007f9961110c3c: cmp $0x186a0,%edx
0x00007f9961110c42: mov $0x7f993fc00878,%rdi ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f9961110c4c: mov $0x180,%rax
0x00007f9961110c56: jge 0x00007f9961110c66
0x00007f9961110c5c: mov $0x190,%rax
0x00007f9961110c66: mov (%rdi,%rax,1),%rcx
0x00007f9961110c6a: lea 0x1(%rcx),%rcx
0x00007f9961110c6e: mov %rcx,(%rdi,%rax,1)
0x00007f9961110c72: jl 0x00007f9961110b40 ;*if_icmpge
; - test3::main@40 (line 9)
0x00007f9961110c78: jmpq 0x00007f9961110eac ; {no_reloc}
0x00007f9961110c7d: add %al,(%rax)
0x00007f9961110c7f: add %al,(%rax)
0x00007f9961110c81: add %ah,0xf(%rsi)
0x00007f9961110c84: (bad)
0x00007f9961110c85: add %r8b,(%rax)
0x00007f9961110c88: jmpq 0x00007f9961110ec6 ; implicit exception: dispatches to 0x00007f9961110eb6
0x00007f9961110c8d: nop ;*getstatic out
; - test3::main@76 (line 14)
0x00007f9961110c8e: cmp (%rdi),%rax ; implicit exception: dispatches to 0x00007f9961110ed0
0x00007f9961110c91: mov %rdi,%rdx
0x00007f9961110c94: mov $0x7f993fc00878,%rbx ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f9961110c9e: mov 0x8(%rdx),%edx
0x00007f9961110ca1: shl $0x3,%rdx
0x00007f9961110ca5: cmp 0x1f8(%rbx),%rdx
0x00007f9961110cac: jne 0x00007f9961110cbb
0x00007f9961110cae: addq $0x1,0x200(%rbx)
0x00007f9961110cb6: jmpq 0x00007f9961110d21
0x00007f9961110cbb: cmp 0x208(%rbx),%rdx
0x00007f9961110cc2: jne 0x00007f9961110cd1
0x00007f9961110cc4: addq $0x1,0x210(%rbx)
0x00007f9961110ccc: jmpq 0x00007f9961110d21
0x00007f9961110cd1: cmpq $0x0,0x1f8(%rbx)
0x00007f9961110cdc: jne 0x00007f9961110cf5
0x00007f9961110cde: mov %rdx,0x1f8(%rbx)
0x00007f9961110ce5: movq $0x1,0x200(%rbx)
0x00007f9961110cf0: jmpq 0x00007f9961110d21
0x00007f9961110cf5: cmpq $0x0,0x208(%rbx)
0x00007f9961110d00: jne 0x00007f9961110d19
0x00007f9961110d02: mov %rdx,0x208(%rbx)
0x00007f9961110d09: movq $0x1,0x210(%rbx)
0x00007f9961110d14: jmpq 0x00007f9961110d21
0x00007f9961110d19: addq $0x1,0x1f0(%rbx)
0x00007f9961110d21: mov %rsi,%rdx
0x00007f9961110d24: mov %rdi,%rsi ;*invokevirtual println
; - test3::main@80 (line 14)
0x00007f9961110d27: nop
0x00007f9961110d28: nop
0x00007f9961110d29: nop
0x00007f9961110d2a: nop
0x00007f9961110d2b: nop
0x00007f9961110d2c: nop
0x00007f9961110d2d: mov $0xffffffffffffffff,%rax
0x00007f9961110d37: callq 0x00007f9961045f60 ; OopMap{off=1372}
;*invokevirtual println
; - test3::main@80 (line 14)
; {virtual_call}
0x00007f9961110d3c: add $0x70,%rsp
0x00007f9961110d40: pop %rbp
0x00007f9961110d41: test %eax,0x16dd33b9(%rip) # 0x00007f9977ee4100
; {poll_return}
0x00007f9961110d47: retq ;*return
; - test3::main@83 (line 15)
0x00007f9961110d48: mov %eax,-0x14000(%rsp)
0x00007f9961110d4f: push %rbp
0x00007f9961110d50: sub $0x70,%rsp
0x00007f9961110d54: mov 0x20(%rsi),%rbx
0x00007f9961110d58: mov 0x18(%rsi),%eax
0x00007f9961110d5b: mov %rsi,%rdi
0x00007f9961110d5e: mov %rbx,0x58(%rsp)
0x00007f9961110d63: mov %eax,0x50(%rsp)
0x00007f9961110d67: callq 0x00007f9976ad0ea0 ; {runtime_call}
0x00007f9961110d6c: mov 0x50(%rsp),%eax
0x00007f9961110d70: mov %rax,%r8
0x00007f9961110d73: mov 0x58(%rsp),%rbx
0x00007f9961110d78: jmpq 0x00007f9961110aef
0x00007f9961110d7d: mov %rbx,0x8(%rsp)
0x00007f9961110d82: movq $0xffffffffffffffff,(%rsp)
0x00007f9961110d8a: callq 0x00007f99610fd820 ; OopMap{rsi=Oop off=1455}
;*synchronization entry
; - test3::main@-1 (line 4)
; {runtime_call}
0x00007f9961110d8f: jmpq 0x00007f996111081e
0x00007f9961110d94: callq 0x00007f99610fa860 ; OopMap{off=1465}
;*anewarray
; - test3::main@2 (line 4)
; {runtime_call}
0x00007f9961110d99: jmpq 0x00007f996111089a
0x00007f9961110d9e: mov %rdx,%rdx
0x00007f9961110da1: callq 0x00007f99610f9b20 ; OopMap{rbx=Oop off=1478}
;*new ; - test3::main@16 (line 6)
; {runtime_call}
0x00007f9961110da6: jmpq 0x00007f99611108e5
0x00007f9961110dab: mov %rdx,0x8(%rsp)
0x00007f9961110db0: movq $0xffffffffffffffff,(%rsp)
0x00007f9961110db8: callq 0x00007f99610fd820 ; OopMap{rbx=Oop rax=Oop off=1501}
;*synchronization entry
; - test3$Node::<init>@-1 (line 18)
; - test3::main@21 (line 6)
; {runtime_call}
0x00007f9961110dbd: jmpq 0x00007f996111092c
0x00007f9961110dc2: mov %rdx,0x8(%rsp)
0x00007f9961110dc7: movq $0xffffffffffffffff,(%rsp)
0x00007f9961110dcf: callq 0x00007f99610fd820 ; OopMap{rbx=Oop rax=Oop off=1524}
;*synchronization entry
; - java.lang.Object::<init>@-1 (line 37)
; - test3$Node::<init>@1 (line 18)
; - test3::main@21 (line 6)
; {runtime_call}
0x00007f9961110dd4: jmpq 0x00007f9961110973
0x00007f9961110dd9: callq 0x00007f99610f93c0 ; OopMap{rbx=Oop rax=Oop off=1534}
;*aastore
; - test3::main@24 (line 6)
; {runtime_call}
0x00007f9961110dde: callq 0x00007f99610f93c0 ; OopMap{rbx=Oop rax=Oop off=1539}
;*aastore
; - test3::main@24 (line 6)
; {runtime_call}
0x00007f9961110de3: mov %r8,(%rsp)
0x00007f9961110de7: callq 0x00007f99610f86c0 ; OopMap{rbx=Oop rax=Oop off=1548}
;*aastore
; - test3::main@24 (line 6)
; {runtime_call}
0x00007f9961110dec: callq 0x00007f99610f93c0 ; OopMap{rbx=Oop rax=Oop off=1553}
;*aastore
; - test3::main@24 (line 6)
; {runtime_call}
0x00007f9961110df1: mov %rax,(%rsp)
0x00007f9961110df5: callq 0x00007f99610fb2c0 ; OopMap{rbx=Oop rax=Oop off=1562}
;*aastore
; - test3::main@24 (line 6)
; {runtime_call}
0x00007f9961110dfa: mov %rdx,0x8(%rsp)
0x00007f9961110dff: movq $0x1c,(%rsp)
0x00007f9961110e07: callq 0x00007f99610fd820 ; OopMap{rbx=Oop off=1580}
;*goto
; - test3::main@28 (line 5)
; {runtime_call}
0x00007f9961110e0c: jmpq 0x00007f9961110ad9
0x00007f9961110e11: callq 0x00007f99610f93c0 ; OopMap{rbx=Oop off=1590}
;*aaload
; - test3::main@57 (line 11)
; {runtime_call}
0x00007f9961110e16: callq 0x00007f99610f93c0 ; OopMap{rbx=Oop off=1595}
;*aaload
; - test3::main@57 (line 11)
; {runtime_call}
0x00007f9961110e1b: mov %rdx,(%rsp)
0x00007f9961110e1f: callq 0x00007f99610f86c0 ; OopMap{rbx=Oop off=1604}
;*aaload
; - test3::main@57 (line 11)
; {runtime_call}
0x00007f9961110e24: callq 0x00007f99610f93c0 ; OopMap{rbx=Oop off=1609}
;*getfield i
; - test3::main@58 (line 11)
; {runtime_call}
0x00007f9961110e29: mov %rsi,0x8(%rsp)
0x00007f9961110e2e: movq $0x43,(%rsp)
0x00007f9961110e36: callq 0x00007f99610fd820 ; OopMap{rbx=Oop off=1627}
;*goto
; - test3::main@67 (line 10)
; {runtime_call}
0x00007f9961110e3b: jmpq 0x00007f9961110b9d
0x00007f9961110e40: mov %rdi,0x8(%rsp)
0x00007f9961110e45: movq $0x49,(%rsp)
0x00007f9961110e4d: callq 0x00007f99610fd820 ; OopMap{rbx=Oop off=1650}
;*goto
; - test3::main@73 (line 9)
; {runtime_call}
0x00007f9961110e52: jmpq 0x00007f9961110c26
0x00007f9961110e57: mov $0x0,%rdx ; {oop(NULL)}
0x00007f9961110e61: push %rax
0x00007f9961110e62: push %rbx
0x00007f9961110e63: mov 0x48(%rdx),%rbx
0x00007f9961110e67: push %rdi
0x00007f9961110e68: push %rsi
0x00007f9961110e69: push %rdx
0x00007f9961110e6a: push %rcx
0x00007f9961110e6b: push %r8
0x00007f9961110e6d: push %r9
0x00007f9961110e6f: push %r10
0x00007f9961110e71: mov %rsp,%r10
0x00007f9961110e74: and $0xfffffffffffffff0,%rsp
0x00007f9961110e78: push %r10
0x00007f9961110e7a: push %r11
0x00007f9961110e7c: mov $0x1,%edi
0x00007f9961110e81: callq 0x00007f99770c33e0 ; {runtime_call}
0x00007f9961110e86: pop %r11
0x00007f9961110e88: pop %rsp
0x00007f9961110e89: pop %r10
0x00007f9961110e8b: pop %r9
0x00007f9961110e8d: pop %r8
0x00007f9961110e8f: pop %rcx
0x00007f9961110e90: pop %rdx
0x00007f9961110e91: pop %rsi
0x00007f9961110e92: pop %rdi
0x00007f9961110e93: cmp 0x108(%rbx),%rax
0x00007f9961110e9a: pop %rbx
0x00007f9961110e9b: pop %rax
0x00007f9961110e9c: jne 0x00007f9961110eac
0x00007f9961110ea2: jmpq 0x00007f9961110c82
0x00007f9961110ea7: mov $0xa4b5500,%eax
0x00007f9961110eac: callq 0x00007f99610fcc20 ; OopMap{off=1745}
;*getstatic out
; - test3::main@76 (line 14)
; {runtime_call}
0x00007f9961110eb1: jmpq 0x00007f9961110c78
0x00007f9961110eb6: callq 0x00007f99610f93c0 ; OopMap{rdx=Oop off=1755}
;*getstatic out
; - test3::main@76 (line 14)
; {runtime_call}
0x00007f9961110ebb: mov 0x0(%rdx),%edi
0x00007f9961110ec1: mov $0x6050b00,%eax
0x00007f9961110ec6: callq 0x00007f99610fc420 ; OopMap{rdx=Oop off=1771}
;*getstatic out
; - test3::main@76 (line 14)
; {runtime_call}
0x00007f9961110ecb: jmpq 0x00007f9961110c88
0x00007f9961110ed0: callq 0x00007f99610f93c0 ; OopMap{rdi=Oop off=1781}
;*invokevirtual println
; - test3::main@80 (line 14)
; {runtime_call}
0x00007f9961110ed5: nop
0x00007f9961110ed6: nop
0x00007f9961110ed7: mov 0x290(%r15),%rax
0x00007f9961110ede: mov $0x0,%r10
0x00007f9961110ee8: mov %r10,0x290(%r15)
0x00007f9961110eef: mov $0x0,%r10
0x00007f9961110ef9: mov %r10,0x298(%r15)
0x00007f9961110f00: add $0x70,%rsp
0x00007f9961110f04: pop %rbp
0x00007f9961110f05: jmpq 0x00007f99610f8b60 ; {runtime_call}
0x00007f9961110f0a: hlt
0x00007f9961110f0b: hlt
0x00007f9961110f0c: hlt
0x00007f9961110f0d: hlt
0x00007f9961110f0e: hlt
0x00007f9961110f0f: hlt
0x00007f9961110f10: hlt
0x00007f9961110f11: hlt
0x00007f9961110f12: hlt
0x00007f9961110f13: hlt
0x00007f9961110f14: hlt
0x00007f9961110f15: hlt
0x00007f9961110f16: hlt
0x00007f9961110f17: hlt
0x00007f9961110f18: hlt
0x00007f9961110f19: hlt
0x00007f9961110f1a: hlt
0x00007f9961110f1b: hlt
0x00007f9961110f1c: hlt
0x00007f9961110f1d: hlt
0x00007f9961110f1e: hlt
0x00007f9961110f1f: hlt
[Stub Code]
0x00007f9961110f20: nop ; {no_reloc}
0x00007f9961110f21: nop
0x00007f9961110f22: nop
0x00007f9961110f23: nop
0x00007f9961110f24: nop
0x00007f9961110f25: mov $0x0,%rbx ; {static_stub}
0x00007f9961110f2f: jmpq 0x00007f9961110f2f ; {runtime_call}
[Exception Handler]
0x00007f9961110f34: callq 0x00007f99610fb1a0 ; {runtime_call}
0x00007f9961110f39: mov %rsp,-0x28(%rsp)
0x00007f9961110f3e: sub $0x80,%rsp
0x00007f9961110f45: mov %rax,0x78(%rsp)
0x00007f9961110f4a: mov %rcx,0x70(%rsp)
0x00007f9961110f4f: mov %rdx,0x68(%rsp)
0x00007f9961110f54: mov %rbx,0x60(%rsp)
0x00007f9961110f59: mov %rbp,0x50(%rsp)
0x00007f9961110f5e: mov %rsi,0x48(%rsp)
0x00007f9961110f63: mov %rdi,0x40(%rsp)
0x00007f9961110f68: mov %r8,0x38(%rsp)
0x00007f9961110f6d: mov %r9,0x30(%rsp)
0x00007f9961110f72: mov %r10,0x28(%rsp)
0x00007f9961110f77: mov %r11,0x20(%rsp)
0x00007f9961110f7c: mov %r12,0x18(%rsp)
0x00007f9961110f81: mov %r13,0x10(%rsp)
0x00007f9961110f86: mov %r14,0x8(%rsp)
0x00007f9961110f8b: mov %r15,(%rsp)
0x00007f9961110f8f: mov $0x7f9976bf1fbe,%rdi ; {external_word}
0x00007f9961110f99: mov $0x7f9961110f39,%rsi ; {internal_word}
0x00007f9961110fa3: mov %rsp,%rdx
0x00007f9961110fa6: and $0xfffffffffffffff0,%rsp
0x00007f9961110faa: callq 0x00007f99769510b0 ; {runtime_call}
0x00007f9961110faf: hlt
[Deopt Handler Code]
0x00007f9961110fb0: mov $0x7f9961110fb0,%r10 ; {section_word}
0x00007f9961110fba: push %r10
0x00007f9961110fbc: jmpq 0x00007f9961047100 ; {runtime_call}
0x00007f9961110fc1: hlt
0x00007f9961110fc2: hlt
0x00007f9961110fc3: hlt
0x00007f9961110fc4: hlt
0x00007f9961110fc5: hlt
0x00007f9961110fc6: hlt
0x00007f9961110fc7: hlt
OopMapSet contains 25 OopMaps
#0
OopMap{rbx=Oop off=761}
#1
OopMap{rbx=Oop off=957}
#2
OopMap{rbx=Oop off=1094}
#3
OopMap{off=1372}
#4
OopMap{rsi=Oop off=1455}
#5
OopMap{off=1465}
#6
OopMap{rbx=Oop off=1478}
#7
OopMap{rbx=Oop rax=Oop off=1501}
#8
OopMap{rbx=Oop rax=Oop off=1524}
#9
OopMap{rbx=Oop rax=Oop off=1534}
#10
OopMap{rbx=Oop rax=Oop off=1539}
#11
OopMap{rbx=Oop rax=Oop off=1548}
#12
OopMap{rbx=Oop rax=Oop off=1553}
#13
OopMap{rbx=Oop rax=Oop off=1562}
#14
OopMap{rbx=Oop off=1580}
#15
OopMap{rbx=Oop off=1590}
#16
OopMap{rbx=Oop off=1595}
#17
OopMap{rbx=Oop off=1604}
#18
OopMap{rbx=Oop off=1609}
#19
OopMap{rbx=Oop off=1627}
#20
OopMap{rbx=Oop off=1650}
#21
OopMap{off=1745}
#22
OopMap{rdx=Oop off=1755}
#23
OopMap{rdx=Oop off=1771}
#24
OopMap{rdi=Oop off=1781}
Compiled method (c1) 49 20 % 3 test3::main @ 46 (84 bytes)
total in heap [0x00007f996110f7d0,0x00007f99611105f8] = 3624
relocation [0x00007f996110f8f8,0x00007f996110f998] = 160
main code [0x00007f996110f9a0,0x00007f99611100e0] = 1856
stub code [0x00007f99611100e0,0x00007f9961110188] = 168
oops [0x00007f9961110188,0x00007f9961110190] = 8
metadata [0x00007f9961110190,0x00007f99611101a8] = 24
scopes data [0x00007f99611101a8,0x00007f99611102f8] = 336
scopes pcs [0x00007f99611102f8,0x00007f99611105b8] = 704
dependencies [0x00007f99611105b8,0x00007f99611105c0] = 8
nul chk table [0x00007f99611105c0,0x00007f99611105f8] = 56
Decoding compiled method 0x00007f996110f7d0:
Code:
[Entry Point]
[Verified Entry Point]
[Constants]
# {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3'
0x00007f996110f9a0: mov %eax,-0x14000(%rsp)
0x00007f996110f9a7: push %rbp
0x00007f996110f9a8: sub $0x70,%rsp
0x00007f996110f9ac: mov $0x7f993fc00878,%rbx ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f996110f9b6: mov 0xdc(%rbx),%edx
0x00007f996110f9bc: add $0x8,%edx
0x00007f996110f9bf: mov %edx,0xdc(%rbx)
0x00007f996110f9c5: mov $0x7f993fc00368,%rbx ; {metadata({method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f996110f9cf: and $0x1ff8,%edx
0x00007f996110f9d5: cmp $0x0,%edx
0x00007f996110f9d8: je 0x00007f996110ff53 ;*ldc
; - test3::main@0 (line 4)
0x00007f996110f9de: mov $0x186a0,%ebx
0x00007f996110f9e3: mov $0x1000603e8,%rdx ; {metadata('test3$Node'[])}
0x00007f996110f9ed: movslq %ebx,%rbx
0x00007f996110f9f0: mov %rbx,%rdi
0x00007f996110f9f3: cmp $0xffffff,%rbx
0x00007f996110f9fa: ja 0x00007f996110ff6a
0x00007f996110fa00: mov $0x17,%rsi
0x00007f996110fa0a: lea (%rsi,%rbx,4),%rsi
0x00007f996110fa0e: and $0xfffffffffffffff8,%rsi
0x00007f996110fa12: mov 0x60(%r15),%rax
0x00007f996110fa16: lea (%rax,%rsi,1),%rsi
0x00007f996110fa1a: cmp 0x70(%r15),%rsi
0x00007f996110fa1e: ja 0x00007f996110ff6a
0x00007f996110fa24: mov %rsi,0x60(%r15)
0x00007f996110fa28: sub %rax,%rsi
0x00007f996110fa2b: movq $0x1,(%rax)
0x00007f996110fa32: mov %rdx,%rcx
0x00007f996110fa35: shr $0x3,%rcx
0x00007f996110fa39: mov %ecx,0x8(%rax)
0x00007f996110fa3c: mov %ebx,0xc(%rax)
0x00007f996110fa3f: sub $0x10,%rsi
0x00007f996110fa43: je 0x00007f996110fa5a
0x00007f996110fa49: xor %rbx,%rbx
0x00007f996110fa4c: shr $0x3,%rsi
0x00007f996110fa50: mov %rbx,0x8(%rax,%rsi,8)
0x00007f996110fa55: dec %rsi
0x00007f996110fa58: jne 0x00007f996110fa50
0x00007f996110fa5a: mov %rax,%rbx ;*anewarray
; - test3::main@2 (line 4)
0x00007f996110fa5d: mov $0x0,%r8d
0x00007f996110fa63: jmpq 0x00007f996110fcaf ;*iload_2
; - test3::main@8 (line 5)
0x00007f996110fa68: mov $0x100060208,%rdx ; {metadata('test3$Node')}
0x00007f996110fa72: mov 0x60(%r15),%rax
0x00007f996110fa76: lea 0x10(%rax),%rdi
0x00007f996110fa7a: cmp 0x70(%r15),%rdi
0x00007f996110fa7e: ja 0x00007f996110ff74
0x00007f996110fa84: mov %rdi,0x60(%r15)
0x00007f996110fa88: mov 0xa8(%rdx),%rcx
0x00007f996110fa8f: mov %rcx,(%rax)
0x00007f996110fa92: mov %rdx,%rcx
0x00007f996110fa95: shr $0x3,%rcx
0x00007f996110fa99: mov %ecx,0x8(%rax)
0x00007f996110fa9c: xor %rcx,%rcx
0x00007f996110fa9f: mov %ecx,0xc(%rax)
0x00007f996110faa2: xor %rcx,%rcx ;*new ; - test3::main@16 (line 6)
0x00007f996110faa5: mov %rax,%rsi
0x00007f996110faa8: mov $0x7f993fc00878,%rdi ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f996110fab2: addq $0x1,0x128(%rdi)
0x00007f996110faba: mov $0x7f993fc00740,%rsi ; {metadata(method data for {method} {0x00007f993fc00660} '<init>' '(I)V' in 'test3$Node')}
0x00007f996110fac4: mov 0xdc(%rsi),%edi
0x00007f996110faca: add $0x8,%edi
0x00007f996110facd: mov %edi,0xdc(%rsi)
0x00007f996110fad3: mov $0x7f993fc00660,%rsi ; {metadata({method} {0x00007f993fc00660} '<init>' '(I)V' in 'test3$Node')}
0x00007f996110fadd: and $0x7ffff8,%edi
0x00007f996110fae3: cmp $0x0,%edi
0x00007f996110fae6: je 0x00007f996110ff81
0x00007f996110faec: mov %rax,%rsi
0x00007f996110faef: mov $0x7f993fc00740,%rdi ; {metadata(method data for {method} {0x00007f993fc00660} '<init>' '(I)V' in 'test3$Node')}
0x00007f996110faf9: addq $0x1,0x108(%rdi)
0x00007f996110fb01: mov $0x7f993f9741b0,%rsi ; {metadata(method data for {method} {0x00007f993f800480} '<init>' '()V' in 'java/lang/Object')}
0x00007f996110fb0b: mov 0xdc(%rsi),%edi
0x00007f996110fb11: add $0x8,%edi
0x00007f996110fb14: mov %edi,0xdc(%rsi)
0x00007f996110fb1a: mov $0x7f993f800480,%rsi ; {metadata({method} {0x00007f993f800480} '<init>' '()V' in 'java/lang/Object')}
0x00007f996110fb24: and $0x7ffff8,%edi
0x00007f996110fb2a: cmp $0x0,%edi
0x00007f996110fb2d: je 0x00007f996110ff98
0x00007f996110fb33: mov %r8d,0xc(%rax) ;*putfield i
; - test3$Node::<init>@6 (line 18)
; - test3::main@21 (line 6)
0x00007f996110fb37: movslq %r8d,%rsi
0x00007f996110fb3a: lea 0x10(%rbx,%rsi,4),%rsi
0x00007f996110fb3f: cmp 0xc(%rbx),%r8d
0x00007f996110fb43: jae 0x00007f996110ffaf
0x00007f996110fb49: cmp $0x0,%rax
0x00007f996110fb4d: jne 0x00007f996110fb68
0x00007f996110fb4f: mov $0x7f993fc00878,%rdx ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f996110fb59: orl $0x100,0x130(%rdx)
0x00007f996110fb63: jmpq 0x00007f996110fc4c
0x00007f996110fb68: mov 0x8(%rbx),%edi ; implicit exception: dispatches to 0x00007f996110ffb8
0x00007f996110fb6b: shl $0x3,%rdi
0x00007f996110fb6f: mov 0x8(%rax),%edx
0x00007f996110fb72: shl $0x3,%rdx
0x00007f996110fb76: mov 0xe0(%rdi),%rdi
0x00007f996110fb7d: cmp %rdi,%rdx
0x00007f996110fb80: je 0x00007f996110fbae
0x00007f996110fb86: mov 0xc(%rdi),%ecx
0x00007f996110fb89: cmp (%rdx,%rcx,1),%rdi
0x00007f996110fb8d: je 0x00007f996110fbae
0x00007f996110fb93: cmp $0x18,%ecx
0x00007f996110fb96: jne 0x00007f996110fc35
0x00007f996110fb9c: push %rdx
0x00007f996110fb9d: push %rdi
0x00007f996110fb9e: callq 0x00007f99610fb960 ; {runtime_call}
0x00007f996110fba3: pop %rdx
0x00007f996110fba4: pop %rdi
0x00007f996110fba5: cmp $0x0,%edi
0x00007f996110fba8: je 0x00007f996110fc35
0x00007f996110fbae: mov $0x7f993fc00878,%rdx ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f996110fbb8: mov 0x8(%rax),%edi
0x00007f996110fbbb: shl $0x3,%rdi
0x00007f996110fbbf: cmp 0x140(%rdx),%rdi
0x00007f996110fbc6: jne 0x00007f996110fbd5
0x00007f996110fbc8: addq $0x1,0x148(%rdx)
0x00007f996110fbd0: jmpq 0x00007f996110fc4c
0x00007f996110fbd5: cmp 0x150(%rdx),%rdi
0x00007f996110fbdc: jne 0x00007f996110fbeb
0x00007f996110fbde: addq $0x1,0x158(%rdx)
0x00007f996110fbe6: jmpq 0x00007f996110fc4c
0x00007f996110fbeb: cmpq $0x0,0x140(%rdx)
0x00007f996110fbf6: jne 0x00007f996110fc0f
0x00007f996110fbf8: mov %rdi,0x140(%rdx)
0x00007f996110fbff: movq $0x1,0x148(%rdx)
0x00007f996110fc0a: jmpq 0x00007f996110fc4c
0x00007f996110fc0f: cmpq $0x0,0x150(%rdx)
0x00007f996110fc1a: jne 0x00007f996110fc33
0x00007f996110fc1c: mov %rdi,0x150(%rdx)
0x00007f996110fc23: movq $0x1,0x158(%rdx)
0x00007f996110fc2e: jmpq 0x00007f996110fc4c
0x00007f996110fc33: jmp 0x00007f996110fc4c
0x00007f996110fc35: mov $0x7f993fc00878,%rdx ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f996110fc3f: subq $0x1,0x138(%rdx)
0x00007f996110fc47: jmpq 0x00007f996110ffbd
0x00007f996110fc4c: mov %rax,%r10
0x00007f996110fc4f: mov %r10d,(%rsi)
0x00007f996110fc52: shr $0x9,%rsi
0x00007f996110fc56: mov $0x7f9973d52000,%rdi
0x00007f996110fc60: movb $0x0,(%rsi,%rdi,1) ;*aastore
; - test3::main@24 (line 6)
0x00007f996110fc64: inc %r8d
0x00007f996110fc67: mov $0x7f993fc00878,%rsi ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f996110fc71: mov 0xe0(%rsi),%edi
0x00007f996110fc77: add $0x8,%edi
0x00007f996110fc7a: mov %edi,0xe0(%rsi)
0x00007f996110fc80: mov $0x7f993fc00368,%rsi ; {metadata({method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f996110fc8a: and $0xfff8,%edi
0x00007f996110fc90: cmp $0x0,%edi
0x00007f996110fc93: je 0x00007f996110ffc6 ; OopMap{rbx=Oop off=761}
;*goto
; - test3::main@28 (line 5)
0x00007f996110fc99: test %eax,0x16dd4461(%rip) # 0x00007f9977ee4100
; {poll}
0x00007f996110fc9f: mov $0x7f993fc00878,%rsi ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f996110fca9: incl 0x168(%rsi) ;*goto
; - test3::main@28 (line 5)
0x00007f996110fcaf: cmp $0x186a0,%r8d
0x00007f996110fcb6: mov $0x7f993fc00878,%rdx ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f996110fcc0: mov $0x108,%rsi
0x00007f996110fcca: jge 0x00007f996110fcda
0x00007f996110fcd0: mov $0x118,%rsi
0x00007f996110fcda: mov (%rdx,%rsi,1),%rdi
0x00007f996110fcde: lea 0x1(%rdi),%rdi
0x00007f996110fce2: mov %rdi,(%rdx,%rsi,1)
0x00007f996110fce6: jl 0x00007f996110fa68 ;*if_icmpge
; - test3::main@11 (line 5)
0x00007f996110fcec: mov $0x0,%esi
0x00007f996110fcf1: mov $0x0,%rdi
0x00007f996110fcfb: jmpq 0x00007f996110fdfc ;*iload
; - test3::main@36 (line 9)
0x00007f996110fd00: mov $0x0,%eax
0x00007f996110fd05: jmpq 0x00007f996110fd76 ;*iload
; - test3::main@46 (line 10)
0x00007f996110fd0a: nopw 0x0(%rax,%rax,1)
0x00007f996110fd10: movslq %esi,%rdx
0x00007f996110fd13: cmp 0xc(%rbx),%esi ; implicit exception: dispatches to 0x00007f996110ffdd
0x00007f996110fd16: jae 0x00007f996110ffe7
0x00007f996110fd1c: mov 0x10(%rbx,%rdx,4),%edx ;*aaload
; - test3::main@57 (line 11)
0x00007f996110fd20: mov 0xc(%rdx),%edx ;*getfield i
; - test3::main@58 (line 11)
; implicit exception: dispatches to 0x00007f996110fff0
0x00007f996110fd23: movslq %edx,%rdx
0x00007f996110fd26: add %rdi,%rdx
0x00007f996110fd29: inc %eax
0x00007f996110fd2b: mov $0x7f993fc00878,%rdi ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f996110fd35: mov 0xe0(%rdi),%ecx
0x00007f996110fd3b: add $0x8,%ecx
0x00007f996110fd3e: mov %ecx,0xe0(%rdi)
0x00007f996110fd44: mov $0x7f993fc00368,%rdi ; {metadata({method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f996110fd4e: and $0xfff8,%ecx
0x00007f996110fd54: cmp $0x0,%ecx
0x00007f996110fd57: je 0x00007f996110fff5 ; OopMap{rbx=Oop off=957}
;*goto
; - test3::main@67 (line 10)
0x00007f996110fd5d: test %eax,0x16dd439d(%rip) # 0x00007f9977ee4100
; {poll}
0x00007f996110fd63: mov $0x7f993fc00878,%rdi ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f996110fd6d: incl 0x1c0(%rdi)
0x00007f996110fd73: mov %rdx,%rdi ;*goto
; - test3::main@67 (line 10)
0x00007f996110fd76: cmp $0x186a0,%eax
0x00007f996110fd7c: mov $0x7f993fc00878,%rdx ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f996110fd86: mov $0x1a0,%rcx
0x00007f996110fd90: jge 0x00007f996110fda0
0x00007f996110fd96: mov $0x1b0,%rcx
0x00007f996110fda0: mov (%rdx,%rcx,1),%r8
0x00007f996110fda4: lea 0x1(%r8),%r8
0x00007f996110fda8: mov %r8,(%rdx,%rcx,1)
0x00007f996110fdac: jl 0x00007f996110fd10 ;*if_icmpge
; - test3::main@50 (line 10)
0x00007f996110fdb2: inc %esi
0x00007f996110fdb4: mov $0x7f993fc00878,%rdx ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f996110fdbe: mov 0xe0(%rdx),%eax
0x00007f996110fdc4: add $0x8,%eax
0x00007f996110fdc7: mov %eax,0xe0(%rdx)
0x00007f996110fdcd: mov $0x7f993fc00368,%rdx ; {metadata({method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f996110fdd7: and $0xfff8,%eax
0x00007f996110fddd: cmp $0x0,%eax
0x00007f996110fde0: je 0x00007f996111000c ; OopMap{rbx=Oop off=1094}
;*goto
; - test3::main@73 (line 9)
0x00007f996110fde6: test %eax,0x16dd4314(%rip) # 0x00007f9977ee4100
; {poll}
0x00007f996110fdec: mov $0x7f993fc00878,%rdx ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f996110fdf6: incl 0x1d8(%rdx) ;*goto
; - test3::main@73 (line 9)
0x00007f996110fdfc: cmp $0x186a0,%esi
0x00007f996110fe02: mov $0x7f993fc00878,%rax ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f996110fe0c: mov $0x180,%rdx
0x00007f996110fe16: jge 0x00007f996110fe26
0x00007f996110fe1c: mov $0x190,%rdx
0x00007f996110fe26: mov (%rax,%rdx,1),%rcx
0x00007f996110fe2a: lea 0x1(%rcx),%rcx
0x00007f996110fe2e: mov %rcx,(%rax,%rdx,1)
0x00007f996110fe32: jl 0x00007f996110fd00 ;*if_icmpge
; - test3::main@40 (line 9)
0x00007f996110fe38: jmpq 0x00007f9961110078 ; {no_reloc}
0x00007f996110fe3d: add %al,(%rax)
0x00007f996110fe3f: add %al,(%rax)
0x00007f996110fe41: add %ah,0xf(%rsi)
0x00007f996110fe44: (bad)
0x00007f996110fe45: add %r8b,(%rax)
0x00007f996110fe48: jmpq 0x00007f9961110092 ; implicit exception: dispatches to 0x00007f9961110082
0x00007f996110fe4d: nop ;*getstatic out
; - test3::main@76 (line 14)
0x00007f996110fe4e: cmp (%rsi),%rax ; implicit exception: dispatches to 0x00007f996111009c
0x00007f996110fe51: mov %rsi,%rdx
0x00007f996110fe54: mov $0x7f993fc00878,%rbx ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f996110fe5e: mov 0x8(%rdx),%edx
0x00007f996110fe61: shl $0x3,%rdx
0x00007f996110fe65: cmp 0x1f8(%rbx),%rdx
0x00007f996110fe6c: jne 0x00007f996110fe7b
0x00007f996110fe6e: addq $0x1,0x200(%rbx)
0x00007f996110fe76: jmpq 0x00007f996110fee1
0x00007f996110fe7b: cmp 0x208(%rbx),%rdx
0x00007f996110fe82: jne 0x00007f996110fe91
0x00007f996110fe84: addq $0x1,0x210(%rbx)
0x00007f996110fe8c: jmpq 0x00007f996110fee1
0x00007f996110fe91: cmpq $0x0,0x1f8(%rbx)
0x00007f996110fe9c: jne 0x00007f996110feb5
0x00007f996110fe9e: mov %rdx,0x1f8(%rbx)
0x00007f996110fea5: movq $0x1,0x200(%rbx)
0x00007f996110feb0: jmpq 0x00007f996110fee1
0x00007f996110feb5: cmpq $0x0,0x208(%rbx)
0x00007f996110fec0: jne 0x00007f996110fed9
0x00007f996110fec2: mov %rdx,0x208(%rbx)
0x00007f996110fec9: movq $0x1,0x210(%rbx)
0x00007f996110fed4: jmpq 0x00007f996110fee1
0x00007f996110fed9: addq $0x1,0x1f0(%rbx)
0x00007f996110fee1: mov %rdi,%rdx ;*invokevirtual println
; - test3::main@80 (line 14)
0x00007f996110fee4: nop
0x00007f996110fee5: mov $0xffffffffffffffff,%rax
0x00007f996110feef: callq 0x00007f9961045f60 ; OopMap{off=1364}
;*invokevirtual println
; - test3::main@80 (line 14)
; {virtual_call}
0x00007f996110fef4: add $0x70,%rsp
0x00007f996110fef8: pop %rbp
0x00007f996110fef9: test %eax,0x16dd4201(%rip) # 0x00007f9977ee4100
; {poll_return}
0x00007f996110feff: retq ;*return
; - test3::main@83 (line 15)
0x00007f996110ff00: mov %eax,-0x14000(%rsp)
0x00007f996110ff07: push %rbp
0x00007f996110ff08: sub $0x70,%rsp
0x00007f996110ff0c: mov 0x20(%rsi),%rbx
0x00007f996110ff10: mov 0x10(%rsi),%rax
0x00007f996110ff14: mov 0x8(%rsi),%edx
0x00007f996110ff17: mov (%rsi),%ecx
0x00007f996110ff19: mov %rsi,%rdi
0x00007f996110ff1c: mov %rbx,0x60(%rsp)
0x00007f996110ff21: mov %rax,0x58(%rsp)
0x00007f996110ff26: mov %edx,0x54(%rsp)
0x00007f996110ff2a: mov %ecx,0x50(%rsp)
0x00007f996110ff2e: callq 0x00007f9976ad0ea0 ; {runtime_call}
0x00007f996110ff33: mov 0x50(%rsp),%ecx
0x00007f996110ff37: mov %rcx,%rax
0x00007f996110ff3a: mov 0x54(%rsp),%edx
0x00007f996110ff3e: mov %rdx,%rsi
0x00007f996110ff41: mov 0x58(%rsp),%rdx
0x00007f996110ff46: mov %rdx,%rdi
0x00007f996110ff49: mov 0x60(%rsp),%rbx
0x00007f996110ff4e: jmpq 0x00007f996110fd76
0x00007f996110ff53: mov %rbx,0x8(%rsp)
0x00007f996110ff58: movq $0xffffffffffffffff,(%rsp)
0x00007f996110ff60: callq 0x00007f99610fd820 ; OopMap{rsi=Oop off=1477}
;*synchronization entry
; - test3::main@-1 (line 4)
; {runtime_call}
0x00007f996110ff65: jmpq 0x00007f996110f9de
0x00007f996110ff6a: callq 0x00007f99610fa860 ; OopMap{off=1487}
;*anewarray
; - test3::main@2 (line 4)
; {runtime_call}
0x00007f996110ff6f: jmpq 0x00007f996110fa5a
0x00007f996110ff74: mov %rdx,%rdx
0x00007f996110ff77: callq 0x00007f99610f9b20 ; OopMap{rbx=Oop off=1500}
;*new ; - test3::main@16 (line 6)
; {runtime_call}
0x00007f996110ff7c: jmpq 0x00007f996110faa5
0x00007f996110ff81: mov %rsi,0x8(%rsp)
0x00007f996110ff86: movq $0xffffffffffffffff,(%rsp)
0x00007f996110ff8e: callq 0x00007f99610fd820 ; OopMap{rbx=Oop rax=Oop off=1523}
;*synchronization entry
; - test3$Node::<init>@-1 (line 18)
; - test3::main@21 (line 6)
; {runtime_call}
0x00007f996110ff93: jmpq 0x00007f996110faec
0x00007f996110ff98: mov %rsi,0x8(%rsp)
0x00007f996110ff9d: movq $0xffffffffffffffff,(%rsp)
0x00007f996110ffa5: callq 0x00007f99610fd820 ; OopMap{rbx=Oop rax=Oop off=1546}
;*synchronization entry
; - java.lang.Object::<init>@-1 (line 37)
; - test3$Node::<init>@1 (line 18)
; - test3::main@21 (line 6)
; {runtime_call}
0x00007f996110ffaa: jmpq 0x00007f996110fb33
0x00007f996110ffaf: mov %r8,(%rsp)
0x00007f996110ffb3: callq 0x00007f99610f86c0 ; OopMap{rbx=Oop rax=Oop off=1560}
;*aastore
; - test3::main@24 (line 6)
; {runtime_call}
0x00007f996110ffb8: callq 0x00007f99610f93c0 ; OopMap{rbx=Oop rax=Oop off=1565}
;*aastore
; - test3::main@24 (line 6)
; {runtime_call}
0x00007f996110ffbd: mov %rax,(%rsp)
0x00007f996110ffc1: callq 0x00007f99610fb2c0 ; OopMap{rbx=Oop rax=Oop off=1574}
;*aastore
; - test3::main@24 (line 6)
; {runtime_call}
0x00007f996110ffc6: mov %rsi,0x8(%rsp)
0x00007f996110ffcb: movq $0x1c,(%rsp)
0x00007f996110ffd3: callq 0x00007f99610fd820 ; OopMap{rbx=Oop off=1592}
;*goto
; - test3::main@28 (line 5)
; {runtime_call}
0x00007f996110ffd8: jmpq 0x00007f996110fc99
0x00007f996110ffdd: callq 0x00007f99610f93c0 ; OopMap{rbx=Oop off=1602}
;*aaload
; - test3::main@57 (line 11)
; {runtime_call}
0x00007f996110ffe2: callq 0x00007f99610f93c0 ; OopMap{rbx=Oop off=1607}
;*aaload
; - test3::main@57 (line 11)
; {runtime_call}
0x00007f996110ffe7: mov %rsi,(%rsp)
0x00007f996110ffeb: callq 0x00007f99610f86c0 ; OopMap{rbx=Oop off=1616}
;*aaload
; - test3::main@57 (line 11)
; {runtime_call}
0x00007f996110fff0: callq 0x00007f99610f93c0 ; OopMap{rbx=Oop off=1621}
;*getfield i
; - test3::main@58 (line 11)
; {runtime_call}
0x00007f996110fff5: mov %rdi,0x8(%rsp)
0x00007f996110fffa: movq $0x43,(%rsp)
0x00007f9961110002: callq 0x00007f99610fd820 ; OopMap{rbx=Oop off=1639}
;*goto
; - test3::main@67 (line 10)
; {runtime_call}
0x00007f9961110007: jmpq 0x00007f996110fd5d
0x00007f996111000c: mov %rdx,0x8(%rsp)
0x00007f9961110011: movq $0x49,(%rsp)
0x00007f9961110019: callq 0x00007f99610fd820 ; OopMap{rbx=Oop off=1662}
;*goto
; - test3::main@73 (line 9)
; {runtime_call}
0x00007f996111001e: jmpq 0x00007f996110fde6
0x00007f9961110023: mov $0x0,%rdx ; {oop(NULL)}
0x00007f996111002d: push %rax
0x00007f996111002e: push %rbx
0x00007f996111002f: mov 0x48(%rdx),%rbx
0x00007f9961110033: push %rdi
0x00007f9961110034: push %rsi
0x00007f9961110035: push %rdx
0x00007f9961110036: push %rcx
0x00007f9961110037: push %r8
0x00007f9961110039: push %r9
0x00007f996111003b: push %r10
0x00007f996111003d: mov %rsp,%r10
0x00007f9961110040: and $0xfffffffffffffff0,%rsp
0x00007f9961110044: push %r10
0x00007f9961110046: push %r11
0x00007f9961110048: mov $0x1,%edi
0x00007f996111004d: callq 0x00007f99770c33e0 ; {runtime_call}
0x00007f9961110052: pop %r11
0x00007f9961110054: pop %rsp
0x00007f9961110055: pop %r10
0x00007f9961110057: pop %r9
0x00007f9961110059: pop %r8
0x00007f996111005b: pop %rcx
0x00007f996111005c: pop %rdx
0x00007f996111005d: pop %rsi
0x00007f996111005e: pop %rdi
0x00007f996111005f: cmp 0x108(%rbx),%rax
0x00007f9961110066: pop %rbx
0x00007f9961110067: pop %rax
0x00007f9961110068: jne 0x00007f9961110078
0x00007f996111006e: jmpq 0x00007f996110fe42
0x00007f9961110073: mov $0xa4b5500,%eax
0x00007f9961110078: callq 0x00007f99610fcc20 ; OopMap{off=1757}
;*getstatic out
; - test3::main@76 (line 14)
; {runtime_call}
0x00007f996111007d: jmpq 0x00007f996110fe38
0x00007f9961110082: callq 0x00007f99610f93c0 ; OopMap{rdx=Oop off=1767}
;*getstatic out
; - test3::main@76 (line 14)
; {runtime_call}
0x00007f9961110087: mov 0x0(%rdx),%esi
0x00007f996111008d: mov $0x6050b00,%eax
0x00007f9961110092: callq 0x00007f99610fc420 ; OopMap{rdx=Oop off=1783}
;*getstatic out
; - test3::main@76 (line 14)
; {runtime_call}
0x00007f9961110097: jmpq 0x00007f996110fe48
0x00007f996111009c: callq 0x00007f99610f93c0 ; OopMap{rsi=Oop off=1793}
;*invokevirtual println
; - test3::main@80 (line 14)
; {runtime_call}
0x00007f99611100a1: nop
0x00007f99611100a2: nop
0x00007f99611100a3: mov 0x290(%r15),%rax
0x00007f99611100aa: mov $0x0,%r10
0x00007f99611100b4: mov %r10,0x290(%r15)
0x00007f99611100bb: mov $0x0,%r10
0x00007f99611100c5: mov %r10,0x298(%r15)
0x00007f99611100cc: add $0x70,%rsp
0x00007f99611100d0: pop %rbp
0x00007f99611100d1: jmpq 0x00007f99610f8b60 ; {runtime_call}
0x00007f99611100d6: hlt
0x00007f99611100d7: hlt
0x00007f99611100d8: hlt
0x00007f99611100d9: hlt
0x00007f99611100da: hlt
0x00007f99611100db: hlt
0x00007f99611100dc: hlt
0x00007f99611100dd: hlt
0x00007f99611100de: hlt
0x00007f99611100df: hlt
[Stub Code]
0x00007f99611100e0: nop ; {no_reloc}
0x00007f99611100e1: nop
0x00007f99611100e2: nop
0x00007f99611100e3: nop
0x00007f99611100e4: nop
0x00007f99611100e5: mov $0x0,%rbx ; {static_stub}
0x00007f99611100ef: jmpq 0x00007f99611100ef ; {runtime_call}
[Exception Handler]
0x00007f99611100f4: callq 0x00007f99610fb1a0 ; {runtime_call}
0x00007f99611100f9: mov %rsp,-0x28(%rsp)
0x00007f99611100fe: sub $0x80,%rsp
0x00007f9961110105: mov %rax,0x78(%rsp)
0x00007f996111010a: mov %rcx,0x70(%rsp)
0x00007f996111010f: mov %rdx,0x68(%rsp)
0x00007f9961110114: mov %rbx,0x60(%rsp)
0x00007f9961110119: mov %rbp,0x50(%rsp)
0x00007f996111011e: mov %rsi,0x48(%rsp)
0x00007f9961110123: mov %rdi,0x40(%rsp)
0x00007f9961110128: mov %r8,0x38(%rsp)
0x00007f996111012d: mov %r9,0x30(%rsp)
0x00007f9961110132: mov %r10,0x28(%rsp)
0x00007f9961110137: mov %r11,0x20(%rsp)
0x00007f996111013c: mov %r12,0x18(%rsp)
0x00007f9961110141: mov %r13,0x10(%rsp)
0x00007f9961110146: mov %r14,0x8(%rsp)
0x00007f996111014b: mov %r15,(%rsp)
0x00007f996111014f: mov $0x7f9976bf1fbe,%rdi ; {external_word}
0x00007f9961110159: mov $0x7f99611100f9,%rsi ; {internal_word}
0x00007f9961110163: mov %rsp,%rdx
0x00007f9961110166: and $0xfffffffffffffff0,%rsp
0x00007f996111016a: callq 0x00007f99769510b0 ; {runtime_call}
0x00007f996111016f: hlt
[Deopt Handler Code]
0x00007f9961110170: mov $0x7f9961110170,%r10 ; {section_word}
0x00007f996111017a: push %r10
0x00007f996111017c: jmpq 0x00007f9961047100 ; {runtime_call}
0x00007f9961110181: hlt
0x00007f9961110182: hlt
0x00007f9961110183: hlt
0x00007f9961110184: hlt
0x00007f9961110185: hlt
0x00007f9961110186: hlt
0x00007f9961110187: hlt
OopMapSet contains 23 OopMaps
#0
OopMap{rbx=Oop off=761}
#1
OopMap{rbx=Oop off=957}
#2
OopMap{rbx=Oop off=1094}
#3
OopMap{off=1364}
#4
OopMap{rsi=Oop off=1477}
#5
OopMap{off=1487}
#6
OopMap{rbx=Oop off=1500}
#7
OopMap{rbx=Oop rax=Oop off=1523}
#8
OopMap{rbx=Oop rax=Oop off=1546}
#9
OopMap{rbx=Oop rax=Oop off=1560}
#10
OopMap{rbx=Oop rax=Oop off=1565}
#11
OopMap{rbx=Oop rax=Oop off=1574}
#12
OopMap{rbx=Oop off=1592}
#13
OopMap{rbx=Oop off=1602}
#14
OopMap{rbx=Oop off=1607}
#15
OopMap{rbx=Oop off=1616}
#16
OopMap{rbx=Oop off=1621}
#17
OopMap{rbx=Oop off=1639}
#18
OopMap{rbx=Oop off=1662}
#19
OopMap{off=1757}
#20
OopMap{rdx=Oop off=1767}
#21
OopMap{rdx=Oop off=1783}
#22
OopMap{rsi=Oop off=1793}
Compiled method (c2) 56 21 % 4 test3::main @ 46 (84 bytes)
total in heap [0x00007f996110f290,0x00007f996110f7b0] = 1312
relocation [0x00007f996110f3b8,0x00007f996110f3d0] = 24
main code [0x00007f996110f3e0,0x00007f996110f560] = 384
stub code [0x00007f996110f560,0x00007f996110f578] = 24
oops [0x00007f996110f578,0x00007f996110f580] = 8
metadata [0x00007f996110f580,0x00007f996110f598] = 24
scopes data [0x00007f996110f598,0x00007f996110f5f8] = 96
scopes pcs [0x00007f996110f5f8,0x00007f996110f798] = 416
dependencies [0x00007f996110f798,0x00007f996110f7a0] = 8
nul chk table [0x00007f996110f7a0,0x00007f996110f7b0] = 16
Decoding compiled method 0x00007f996110f290:
Code:
[Entry Point]
[Verified Entry Point]
[Constants]
# {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3'
0x00007f996110f3e0: callq 0x00007f9976a26fb0 ; {runtime_call}
0x00007f996110f3e5: nopw 0x0(%rax,%rax,1)
0x00007f996110f3f0: mov %eax,-0x14000(%rsp)
0x00007f996110f3f7: push %rbp
0x00007f996110f3f8: sub $0x30,%rsp
0x00007f996110f3fc: mov (%rsi),%r13d
0x00007f996110f3ff: mov 0x20(%rsi),%r14
0x00007f996110f403: mov 0x10(%rsi),%rbx
0x00007f996110f407: mov 0x8(%rsi),%ebp
0x00007f996110f40a: mov %rsi,%rdi
0x00007f996110f40d: mov $0x7f9976ad0ea0,%r10
0x00007f996110f417: callq *%r10
0x00007f996110f41a: test %r14,%r14
0x00007f996110f41d: je 0x00007f996110f4fd
0x00007f996110f423: mov 0x8(%r14),%r10d
0x00007f996110f427: cmp $0x2000c07d,%r10d ; {metadata('test3$Node'[])}
0x00007f996110f42e: jne 0x00007f996110f530
0x00007f996110f434: mov 0xc(%r14),%r10d
0x00007f996110f438: cmp %r10d,%ebp
0x00007f996110f43b: jae 0x00007f996110f500 ;*iload
; - test3::main@46 (line 10)
0x00007f996110f441: mov 0x10(%r14,%rbp,4),%r10d ;*aaload
; - test3::main@57 (line 11)
0x00007f996110f446: movslq 0xc(%r10),%r10 ;*i2l ; - test3::main@61 (line 11)
; implicit exception: dispatches to 0x00007f996110f500
0x00007f996110f44a: cmp $0x186a0,%r13d
0x00007f996110f451: jge 0x00007f996110f4df ;*if_icmpge
; - test3::main@50 (line 10)
0x00007f996110f457: mov %r13d,%r11d
0x00007f996110f45a: inc %r11d ;*goto
; - test3::main@67 (line 10)
0x00007f996110f45d: add %r10,%rbx ;*ladd
; - test3::main@62 (line 11)
0x00007f996110f460: mov %r13d,%r9d
0x00007f996110f463: inc %r9d ;*iinc
; - test3::main@64 (line 10)
0x00007f996110f466: cmp %r11d,%r9d
0x00007f996110f469: jge 0x00007f996110f470 ;*if_icmpge
; - test3::main@50 (line 10)
0x00007f996110f46b: mov %r9d,%r13d
0x00007f996110f46e: jmp 0x00007f996110f45d
0x00007f996110f470: cmp $0x18691,%r9d
0x00007f996110f477: jge 0x00007f996110f51d
0x00007f996110f47d: jmp 0x00007f996110f483
0x00007f996110f47f: nop
0x00007f996110f480: mov %r13d,%r9d ;*goto
; - test3::main@67 (line 10)
0x00007f996110f483: add %r10,%rbx
0x00007f996110f486: add %r10,%rbx
0x00007f996110f489: add %r10,%rbx
0x00007f996110f48c: add %r10,%rbx
0x00007f996110f48f: add %r10,%rbx
0x00007f996110f492: add %r10,%rbx
0x00007f996110f495: add %r10,%rbx
0x00007f996110f498: add %r10,%rbx
0x00007f996110f49b: add %r10,%rbx
0x00007f996110f49e: add %r10,%rbx
0x00007f996110f4a1: add %r10,%rbx
0x00007f996110f4a4: add %r10,%rbx
0x00007f996110f4a7: add %r10,%rbx
0x00007f996110f4aa: add %r10,%rbx
0x00007f996110f4ad: add %r10,%rbx
0x00007f996110f4b0: add %r10,%rbx ;*ladd
; - test3::main@62 (line 11)
0x00007f996110f4b3: mov %r9d,%r13d
0x00007f996110f4b6: add $0x10,%r13d ;*iinc
; - test3::main@64 (line 10)
0x00007f996110f4ba: cmp $0x18691,%r13d
0x00007f996110f4c1: jl 0x00007f996110f480 ;*if_icmpge
; - test3::main@50 (line 10)
0x00007f996110f4c3: add $0xf,%r9d ;*iinc
; - test3::main@64 (line 10)
0x00007f996110f4c7: cmp $0x186a0,%r13d
0x00007f996110f4ce: jge 0x00007f996110f528 ;*goto
; - test3::main@67 (line 10)
0x00007f996110f4d0: add %r10,%rbx ;*ladd
; - test3::main@62 (line 11)
0x00007f996110f4d3: inc %r13d ;*iinc
; - test3::main@64 (line 10)
0x00007f996110f4d6: cmp $0x186a0,%r13d
0x00007f996110f4dd: jl 0x00007f996110f4d0 ;*if_icmpge
; - test3::main@50 (line 10)
0x00007f996110f4df: mov $0xffffff65,%esi
0x00007f996110f4e4: mov %rbx,(%rsp)
0x00007f996110f4e8: mov %r13d,0xc(%rsp)
0x00007f996110f4ed: mov %r14,0x10(%rsp)
0x00007f996110f4f2: nop
0x00007f996110f4f3: callq 0x00007f9961004ee0 ; OopMap{[16]=Oop off=280}
;*if_icmpge
; - test3::main@50 (line 10)
; {runtime_call}
0x00007f996110f4f8: callq 0x00007f9976a26fb0 ;*if_icmpge
; - test3::main@50 (line 10)
; {runtime_call}
0x00007f996110f4fd: xor %r14d,%r14d
0x00007f996110f500: mov $0xffffff86,%esi
0x00007f996110f505: mov %rbx,(%rsp)
0x00007f996110f509: mov %r13d,0x8(%rsp)
0x00007f996110f50e: mov %r14,0x10(%rsp)
0x00007f996110f513: callq 0x00007f9961004ee0 ; OopMap{[16]=Oop off=312}
;*iload
; - test3::main@46 (line 10)
; {runtime_call}
0x00007f996110f518: callq 0x00007f9976a26fb0 ;*iload
; - test3::main@46 (line 10)
; {runtime_call}
0x00007f996110f51d: mov %r13d,%r11d
0x00007f996110f520: mov %r9d,%r13d
0x00007f996110f523: mov %r11d,%r9d
0x00007f996110f526: jmp 0x00007f996110f4c7
0x00007f996110f528: mov %r9d,%r13d
0x00007f996110f52b: inc %r13d ;*iinc
; - test3::main@64 (line 10)
0x00007f996110f52e: jmp 0x00007f996110f4df
0x00007f996110f530: mov $0xffffff9d,%esi
0x00007f996110f535: mov %rbx,(%rsp)
0x00007f996110f539: mov %r13d,0x8(%rsp)
0x00007f996110f53e: mov %r14,0x10(%rsp)
0x00007f996110f543: callq 0x00007f9961004ee0 ; OopMap{[16]=Oop off=360}
;*iload
; - test3::main@46 (line 10)
; {runtime_call}
0x00007f996110f548: callq 0x00007f9976a26fb0 ;*iinc
; - test3::main@64 (line 10)
; {runtime_call}
0x00007f996110f54d: hlt
0x00007f996110f54e: hlt
0x00007f996110f54f: hlt
0x00007f996110f550: hlt
0x00007f996110f551: hlt
0x00007f996110f552: hlt
0x00007f996110f553: hlt
0x00007f996110f554: hlt
0x00007f996110f555: hlt
0x00007f996110f556: hlt
0x00007f996110f557: hlt
0x00007f996110f558: hlt
0x00007f996110f559: hlt
0x00007f996110f55a: hlt
0x00007f996110f55b: hlt
0x00007f996110f55c: hlt
0x00007f996110f55d: hlt
0x00007f996110f55e: hlt
0x00007f996110f55f: hlt
[Exception Handler]
[Stub Code]
0x00007f996110f560: jmpq 0x00007f99610f8e20 ; {no_reloc}
[Deopt Handler Code]
0x00007f996110f565: callq 0x00007f996110f56a
0x00007f996110f56a: subq $0x5,(%rsp)
0x00007f996110f56f: jmpq 0x00007f9961047100 ; {runtime_call}
0x00007f996110f574: hlt
0x00007f996110f575: hlt
0x00007f996110f576: hlt
0x00007f996110f577: hlt
OopMapSet contains 3 OopMaps
#0
OopMap{[16]=Oop off=280}
#1
OopMap{[16]=Oop off=312}
#2
OopMap{[16]=Oop off=360}
Compiled method (c2) 61 22 4 test3::main (84 bytes)
total in heap [0x00007f996110eb10,0x00007f996110f268] = 1880
relocation [0x00007f996110ec38,0x00007f996110ec68] = 48
main code [0x00007f996110ec80,0x00007f996110eec0] = 576
stub code [0x00007f996110eec0,0x00007f996110eee8] = 40
oops [0x00007f996110eee8,0x00007f996110eef0] = 8
metadata [0x00007f996110eef0,0x00007f996110ef08] = 24
scopes data [0x00007f996110ef08,0x00007f996110efd8] = 208
scopes pcs [0x00007f996110efd8,0x00007f996110f208] = 560
dependencies [0x00007f996110f208,0x00007f996110f210] = 8
handler table [0x00007f996110f210,0x00007f996110f258] = 72
nul chk table [0x00007f996110f258,0x00007f996110f268] = 16
Decoding compiled method 0x00007f996110eb10:
Code:
[Entry Point]
[Verified Entry Point]
[Constants]
# {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3'
# parm0: rsi:rsi = '[Ljava/lang/String;'
# [sp+0x50] (sp of caller)
0x00007f996110ec80: mov %eax,-0x14000(%rsp)
0x00007f996110ec87: push %rbp
0x00007f996110ec88: sub $0x40,%rsp ;*synchronization entry
; - test3::main@-1 (line 4)
0x00007f996110ec8c: mov 0x60(%r15),%r8
0x00007f996110ec90: mov %r8,%r10
0x00007f996110ec93: add $0x61a90,%r10
0x00007f996110ec9a: cmp 0x70(%r15),%r10
0x00007f996110ec9e: jae 0x00007f996110ee71
0x00007f996110eca4: mov %r10,0x60(%r15)
0x00007f996110eca8: prefetchnta 0xc0(%r10)
0x00007f996110ecb0: movq $0x1,(%r8)
0x00007f996110ecb7: prefetchnta 0x100(%r10)
0x00007f996110ecbf: movl $0x2000c07d,0x8(%r8) ; {metadata('test3$Node'[])}
0x00007f996110ecc7: prefetchnta 0x140(%r10)
0x00007f996110eccf: movl $0x186a0,0xc(%r8)
0x00007f996110ecd7: prefetchnta 0x180(%r10)
0x00007f996110ecdf: mov %r8,%rdi
0x00007f996110ece2: add $0x10,%rdi
0x00007f996110ece6: mov $0xc350,%ecx
0x00007f996110eceb: xor %rax,%rax
0x00007f996110ecee: shl $0x3,%rcx
0x00007f996110ecf2: rex.W rep stos %al,%es:(%rdi) ;*anewarray
; - test3::main@2 (line 4)
0x00007f996110ecf5: mov $0x2000c041,%r11d ; {metadata('test3$Node')}
0x00007f996110ecfb: mov $0x0,%rbp
0x00007f996110ed05: lea 0x0(%rbp,%r11,8),%rbp
0x00007f996110ed0a: xor %r10d,%r10d
0x00007f996110ed0d: xor %r11d,%r11d
0x00007f996110ed10: jmp 0x00007f996110ed25
0x00007f996110ed12: nopw 0x0(%rax,%rax,1)
0x00007f996110ed1c: xchg %ax,%ax
0x00007f996110ed20: mov 0x18(%rsp),%r11d ;*aload_1
; - test3::main@14 (line 6)
0x00007f996110ed25: mov 0x60(%r15),%rax
0x00007f996110ed29: mov %rax,%r9
0x00007f996110ed2c: add $0x10,%r9
0x00007f996110ed30: cmp 0x70(%r15),%r9
0x00007f996110ed34: jae 0x00007f996110ee4d
0x00007f996110ed3a: mov %r9,0x60(%r15)
0x00007f996110ed3e: prefetchnta 0xc0(%r9)
0x00007f996110ed46: mov 0xa8(%rbp),%r9
0x00007f996110ed4d: mov %r9,(%rax)
0x00007f996110ed50: movl $0x2000c041,0x8(%rax) ; {metadata('test3$Node')}
0x00007f996110ed57: mov %r12d,0xc(%rax)
0x00007f996110ed5b: mov %r10d,(%rsp)
0x00007f996110ed5f: mov %r8,0x10(%rsp)
0x00007f996110ed64: mov %r11d,0x18(%rsp)
0x00007f996110ed69: mov %rax,0x8(%rsp) ;*new ; - test3::main@16 (line 6)
0x00007f996110ed6e: mov %rax,%rsi
0x00007f996110ed71: mov (%rsp),%edx
0x00007f996110ed74: xchg %ax,%ax
0x00007f996110ed77: callq 0x00007f9961045d60 ; OopMap{[8]=Oop [16]=Oop off=252}
;*invokespecial <init>
; - test3::main@21 (line 6)
; {optimized virtual_call}
0x00007f996110ed7c: mov (%rsp),%r9d
0x00007f996110ed80: mov 0x10(%rsp),%r8
0x00007f996110ed85: lea 0x10(%r8,%r9,4),%r10
0x00007f996110ed8a: mov 0x8(%rsp),%r11
0x00007f996110ed8f: mov %r11d,(%r10)
0x00007f996110ed92: shr $0x9,%r10
0x00007f996110ed96: mov $0x7f9973d52000,%r11
0x00007f996110eda0: mov %r12b,(%r11,%r10,1) ;*aastore
; - test3::main@24 (line 6)
0x00007f996110eda4: mov (%rsp),%r10d
0x00007f996110eda8: inc %r10d ;*iinc
; - test3::main@25 (line 5)
0x00007f996110edab: cmp $0x186a0,%r10d
0x00007f996110edb2: jl 0x00007f996110ed20 ;*if_icmpge
; - test3::main@11 (line 5)
0x00007f996110edb8: xor %r10d,%r10d
0x00007f996110edbb: jmp 0x00007f996110edde
0x00007f996110edbd: xchg %ax,%ax ;*lload_2
; - test3::main@53 (line 11)
0x00007f996110edc0: add %r11,%r10 ;*ladd
; - test3::main@62 (line 11)
0x00007f996110edc3: inc %ebx ;*iinc
; - test3::main@64 (line 10)
0x00007f996110edc5: cmp $0x186a0,%ebx
0x00007f996110edcb: jl 0x00007f996110edc0 ;*if_icmpge
; - test3::main@50 (line 10)
0x00007f996110edcd: inc %r9d ;*iinc
; - test3::main@70 (line 9)
0x00007f996110edd0: cmp $0x186a0,%r9d
0x00007f996110edd7: jge 0x00007f996110ee39 ;*if_icmpge
; - test3::main@40 (line 9)
0x00007f996110edd9: mov %r9d,0x18(%rsp) ;*iconst_0
; - test3::main@43 (line 10)
0x00007f996110edde: mov 0x18(%rsp),%r9d
0x00007f996110ede3: mov 0x10(%r8,%r9,4),%r11d ;*aaload
; - test3::main@57 (line 11)
0x00007f996110ede8: movslq 0xc(%r11),%r11 ;*i2l ; - test3::main@61 (line 11)
; implicit exception: dispatches to 0x00007f996110ee90
0x00007f996110edec: add %r11,%r10 ;*ladd
; - test3::main@62 (line 11)
0x00007f996110edef: mov $0x1,%ebx ;*lload_2
; - test3::main@53 (line 11)
0x00007f996110edf4: add %r11,%r10
0x00007f996110edf7: add %r11,%r10
0x00007f996110edfa: add %r11,%r10
0x00007f996110edfd: add %r11,%r10
0x00007f996110ee00: add %r11,%r10
0x00007f996110ee03: add %r11,%r10
0x00007f996110ee06: add %r11,%r10
0x00007f996110ee09: add %r11,%r10
0x00007f996110ee0c: add %r11,%r10
0x00007f996110ee0f: add %r11,%r10
0x00007f996110ee12: add %r11,%r10
0x00007f996110ee15: add %r11,%r10
0x00007f996110ee18: add %r11,%r10
0x00007f996110ee1b: add %r11,%r10
0x00007f996110ee1e: add %r11,%r10
0x00007f996110ee21: add %r11,%r10 ;*ladd
; - test3::main@62 (line 11)
0x00007f996110ee24: add $0x10,%ebx ;*iinc
; - test3::main@64 (line 10)
0x00007f996110ee27: cmp $0x18691,%ebx
0x00007f996110ee2d: jl 0x00007f996110edf4 ;*if_icmpge
; - test3::main@50 (line 10)
0x00007f996110ee2f: cmp $0x186a0,%ebx
0x00007f996110ee35: jl 0x00007f996110edc0
0x00007f996110ee37: jmp 0x00007f996110edcd ;*if_icmpge
; - test3::main@40 (line 9)
0x00007f996110ee39: mov $0x1e,%esi
0x00007f996110ee3e: mov %r10,%rbp
0x00007f996110ee41: xchg %ax,%ax
0x00007f996110ee43: callq 0x00007f9961004ee0 ; OopMap{off=456}
;*getstatic out
; - test3::main@76 (line 14)
; {runtime_call}
0x00007f996110ee48: callq 0x00007f9976a26fb0 ;*getstatic out
; - test3::main@76 (line 14)
; {runtime_call}
0x00007f996110ee4d: mov %r11d,0x18(%rsp)
0x00007f996110ee52: mov %r8,0x10(%rsp)
0x00007f996110ee57: mov %r10d,(%rsp) ;*aload_1
; - test3::main@14 (line 6)
0x00007f996110ee5b: mov $0x100060208,%rsi ; {metadata('test3$Node')}
0x00007f996110ee65: xchg %ax,%ax
0x00007f996110ee67: callq 0x00007f99611016a0 ; OopMap{[16]=Oop off=492}
;*new ; - test3::main@16 (line 6)
; {runtime_call}
0x00007f996110ee6c: jmpq 0x00007f996110ed69
0x00007f996110ee71: mov $0x1000603e8,%rsi ; {metadata('test3$Node'[])}
0x00007f996110ee7b: mov $0x186a0,%edx
0x00007f996110ee80: xchg %ax,%ax
0x00007f996110ee83: callq 0x00007f99611017a0 ; OopMap{off=520}
;*anewarray
; - test3::main@2 (line 4)
; {runtime_call}
0x00007f996110ee88: mov %rax,%r8
0x00007f996110ee8b: jmpq 0x00007f996110ecf5
0x00007f996110ee90: mov $0xffffff86,%esi
0x00007f996110ee95: mov %r8,%rbp
0x00007f996110ee98: mov %r10,(%rsp)
0x00007f996110ee9c: xchg %ax,%ax
0x00007f996110ee9f: callq 0x00007f9961004ee0 ; OopMap{rbp=Oop off=548}
;*lload_2
; - test3::main@53 (line 11)
; {runtime_call}
0x00007f996110eea4: callq 0x00007f9976a26fb0 ;*anewarray
; - test3::main@2 (line 4)
; {runtime_call}
0x00007f996110eea9: mov %rax,%rsi
0x00007f996110eeac: jmp 0x00007f996110eeb6 ;*new
; - test3::main@16 (line 6)
0x00007f996110eeae: mov %rax,%rsi
0x00007f996110eeb1: jmp 0x00007f996110eeb6 ;*invokespecial <init>
; - test3::main@21 (line 6)
0x00007f996110eeb3: mov %rax,%rsi ;*anewarray
; - test3::main@2 (line 4)
0x00007f996110eeb6: add $0x40,%rsp
0x00007f996110eeba: pop %rbp
0x00007f996110eebb: jmpq 0x00007f99611018a0 ; {runtime_call}
[Stub Code]
0x00007f996110eec0: mov $0x0,%rbx ; {no_reloc}
0x00007f996110eeca: jmpq 0x00007f996110eeca ; {runtime_call}
[Exception Handler]
0x00007f996110eecf: jmpq 0x00007f99610f8e20 ; {runtime_call}
[Deopt Handler Code]
0x00007f996110eed4: callq 0x00007f996110eed9
0x00007f996110eed9: subq $0x5,(%rsp)
0x00007f996110eede: jmpq 0x00007f9961047100 ; {runtime_call}
0x00007f996110eee3: hlt
0x00007f996110eee4: hlt
0x00007f996110eee5: hlt
0x00007f996110eee6: hlt
0x00007f996110eee7: hlt
OopMapSet contains 5 OopMaps
#0
OopMap{[8]=Oop [16]=Oop off=252}
#1
OopMap{off=456}
#2
OopMap{[16]=Oop off=492}
#3
OopMap{off=520}
#4
OopMap{rbp=Oop off=548}
Compiled method (c1) 63 23 % 3 test3::main @ 46 (84 bytes)
total in heap [0x00007f9961114fd0,0x00007f9961115df8] = 3624
relocation [0x00007f99611150f8,0x00007f9961115198] = 160
main code [0x00007f99611151a0,0x00007f99611158e0] = 1856
stub code [0x00007f99611158e0,0x00007f9961115988] = 168
oops [0x00007f9961115988,0x00007f9961115990] = 8
metadata [0x00007f9961115990,0x00007f99611159a8] = 24
scopes data [0x00007f99611159a8,0x00007f9961115af8] = 336
scopes pcs [0x00007f9961115af8,0x00007f9961115db8] = 704
dependencies [0x00007f9961115db8,0x00007f9961115dc0] = 8
nul chk table [0x00007f9961115dc0,0x00007f9961115df8] = 56
Decoding compiled method 0x00007f9961114fd0:
Code:
[Entry Point]
[Verified Entry Point]
[Constants]
# {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3'
0x00007f99611151a0: mov %eax,-0x14000(%rsp)
0x00007f99611151a7: push %rbp
0x00007f99611151a8: sub $0x70,%rsp
0x00007f99611151ac: mov $0x7f993fc00878,%rbx ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f99611151b6: mov 0xdc(%rbx),%edx
0x00007f99611151bc: add $0x8,%edx
0x00007f99611151bf: mov %edx,0xdc(%rbx)
0x00007f99611151c5: mov $0x7f993fc00368,%rbx ; {metadata({method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f99611151cf: and $0x1ff8,%edx
0x00007f99611151d5: cmp $0x0,%edx
0x00007f99611151d8: je 0x00007f9961115753 ;*ldc
; - test3::main@0 (line 4)
0x00007f99611151de: mov $0x186a0,%ebx
0x00007f99611151e3: mov $0x1000603e8,%rdx ; {metadata('test3$Node'[])}
0x00007f99611151ed: movslq %ebx,%rbx
0x00007f99611151f0: mov %rbx,%rdi
0x00007f99611151f3: cmp $0xffffff,%rbx
0x00007f99611151fa: ja 0x00007f996111576a
0x00007f9961115200: mov $0x17,%rsi
0x00007f996111520a: lea (%rsi,%rbx,4),%rsi
0x00007f996111520e: and $0xfffffffffffffff8,%rsi
0x00007f9961115212: mov 0x60(%r15),%rax
0x00007f9961115216: lea (%rax,%rsi,1),%rsi
0x00007f996111521a: cmp 0x70(%r15),%rsi
0x00007f996111521e: ja 0x00007f996111576a
0x00007f9961115224: mov %rsi,0x60(%r15)
0x00007f9961115228: sub %rax,%rsi
0x00007f996111522b: movq $0x1,(%rax)
0x00007f9961115232: mov %rdx,%rcx
0x00007f9961115235: shr $0x3,%rcx
0x00007f9961115239: mov %ecx,0x8(%rax)
0x00007f996111523c: mov %ebx,0xc(%rax)
0x00007f996111523f: sub $0x10,%rsi
0x00007f9961115243: je 0x00007f996111525a
0x00007f9961115249: xor %rbx,%rbx
0x00007f996111524c: shr $0x3,%rsi
0x00007f9961115250: mov %rbx,0x8(%rax,%rsi,8)
0x00007f9961115255: dec %rsi
0x00007f9961115258: jne 0x00007f9961115250
0x00007f996111525a: mov %rax,%rbx ;*anewarray
; - test3::main@2 (line 4)
0x00007f996111525d: mov $0x0,%r8d
0x00007f9961115263: jmpq 0x00007f99611154af ;*iload_2
; - test3::main@8 (line 5)
0x00007f9961115268: mov $0x100060208,%rdx ; {metadata('test3$Node')}
0x00007f9961115272: mov 0x60(%r15),%rax
0x00007f9961115276: lea 0x10(%rax),%rdi
0x00007f996111527a: cmp 0x70(%r15),%rdi
0x00007f996111527e: ja 0x00007f9961115774
0x00007f9961115284: mov %rdi,0x60(%r15)
0x00007f9961115288: mov 0xa8(%rdx),%rcx
0x00007f996111528f: mov %rcx,(%rax)
0x00007f9961115292: mov %rdx,%rcx
0x00007f9961115295: shr $0x3,%rcx
0x00007f9961115299: mov %ecx,0x8(%rax)
0x00007f996111529c: xor %rcx,%rcx
0x00007f996111529f: mov %ecx,0xc(%rax)
0x00007f99611152a2: xor %rcx,%rcx ;*new ; - test3::main@16 (line 6)
0x00007f99611152a5: mov %rax,%rsi
0x00007f99611152a8: mov $0x7f993fc00878,%rdi ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f99611152b2: addq $0x1,0x128(%rdi)
0x00007f99611152ba: mov $0x7f993fc00740,%rsi ; {metadata(method data for {method} {0x00007f993fc00660} '<init>' '(I)V' in 'test3$Node')}
0x00007f99611152c4: mov 0xdc(%rsi),%edi
0x00007f99611152ca: add $0x8,%edi
0x00007f99611152cd: mov %edi,0xdc(%rsi)
0x00007f99611152d3: mov $0x7f993fc00660,%rsi ; {metadata({method} {0x00007f993fc00660} '<init>' '(I)V' in 'test3$Node')}
0x00007f99611152dd: and $0x7ffff8,%edi
0x00007f99611152e3: cmp $0x0,%edi
0x00007f99611152e6: je 0x00007f9961115781
0x00007f99611152ec: mov %rax,%rsi
0x00007f99611152ef: mov $0x7f993fc00740,%rdi ; {metadata(method data for {method} {0x00007f993fc00660} '<init>' '(I)V' in 'test3$Node')}
0x00007f99611152f9: addq $0x1,0x108(%rdi)
0x00007f9961115301: mov $0x7f993f9741b0,%rsi ; {metadata(method data for {method} {0x00007f993f800480} '<init>' '()V' in 'java/lang/Object')}
0x00007f996111530b: mov 0xdc(%rsi),%edi
0x00007f9961115311: add $0x8,%edi
0x00007f9961115314: mov %edi,0xdc(%rsi)
0x00007f996111531a: mov $0x7f993f800480,%rsi ; {metadata({method} {0x00007f993f800480} '<init>' '()V' in 'java/lang/Object')}
0x00007f9961115324: and $0x7ffff8,%edi
0x00007f996111532a: cmp $0x0,%edi
0x00007f996111532d: je 0x00007f9961115798
0x00007f9961115333: mov %r8d,0xc(%rax) ;*putfield i
; - test3$Node::<init>@6 (line 18)
; - test3::main@21 (line 6)
0x00007f9961115337: movslq %r8d,%rsi
0x00007f996111533a: lea 0x10(%rbx,%rsi,4),%rsi
0x00007f996111533f: cmp 0xc(%rbx),%r8d
0x00007f9961115343: jae 0x00007f99611157af
0x00007f9961115349: cmp $0x0,%rax
0x00007f996111534d: jne 0x00007f9961115368
0x00007f996111534f: mov $0x7f993fc00878,%rdx ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f9961115359: orl $0x100,0x130(%rdx)
0x00007f9961115363: jmpq 0x00007f996111544c
0x00007f9961115368: mov 0x8(%rbx),%edi ; implicit exception: dispatches to 0x00007f99611157b8
0x00007f996111536b: shl $0x3,%rdi
0x00007f996111536f: mov 0x8(%rax),%edx
0x00007f9961115372: shl $0x3,%rdx
0x00007f9961115376: mov 0xe0(%rdi),%rdi
0x00007f996111537d: cmp %rdi,%rdx
0x00007f9961115380: je 0x00007f99611153ae
0x00007f9961115386: mov 0xc(%rdi),%ecx
0x00007f9961115389: cmp (%rdx,%rcx,1),%rdi
0x00007f996111538d: je 0x00007f99611153ae
0x00007f9961115393: cmp $0x18,%ecx
0x00007f9961115396: jne 0x00007f9961115435
0x00007f996111539c: push %rdx
0x00007f996111539d: push %rdi
0x00007f996111539e: callq 0x00007f99610fb960 ; {runtime_call}
0x00007f99611153a3: pop %rdx
0x00007f99611153a4: pop %rdi
0x00007f99611153a5: cmp $0x0,%edi
0x00007f99611153a8: je 0x00007f9961115435
0x00007f99611153ae: mov $0x7f993fc00878,%rdx ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f99611153b8: mov 0x8(%rax),%edi
0x00007f99611153bb: shl $0x3,%rdi
0x00007f99611153bf: cmp 0x140(%rdx),%rdi
0x00007f99611153c6: jne 0x00007f99611153d5
0x00007f99611153c8: addq $0x1,0x148(%rdx)
0x00007f99611153d0: jmpq 0x00007f996111544c
0x00007f99611153d5: cmp 0x150(%rdx),%rdi
0x00007f99611153dc: jne 0x00007f99611153eb
0x00007f99611153de: addq $0x1,0x158(%rdx)
0x00007f99611153e6: jmpq 0x00007f996111544c
0x00007f99611153eb: cmpq $0x0,0x140(%rdx)
0x00007f99611153f6: jne 0x00007f996111540f
0x00007f99611153f8: mov %rdi,0x140(%rdx)
0x00007f99611153ff: movq $0x1,0x148(%rdx)
0x00007f996111540a: jmpq 0x00007f996111544c
0x00007f996111540f: cmpq $0x0,0x150(%rdx)
0x00007f996111541a: jne 0x00007f9961115433
0x00007f996111541c: mov %rdi,0x150(%rdx)
0x00007f9961115423: movq $0x1,0x158(%rdx)
0x00007f996111542e: jmpq 0x00007f996111544c
0x00007f9961115433: jmp 0x00007f996111544c
0x00007f9961115435: mov $0x7f993fc00878,%rdx ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f996111543f: subq $0x1,0x138(%rdx)
0x00007f9961115447: jmpq 0x00007f99611157bd
0x00007f996111544c: mov %rax,%r10
0x00007f996111544f: mov %r10d,(%rsi)
0x00007f9961115452: shr $0x9,%rsi
0x00007f9961115456: mov $0x7f9973d52000,%rdi
0x00007f9961115460: movb $0x0,(%rsi,%rdi,1) ;*aastore
; - test3::main@24 (line 6)
0x00007f9961115464: inc %r8d
0x00007f9961115467: mov $0x7f993fc00878,%rsi ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f9961115471: mov 0xe0(%rsi),%edi
0x00007f9961115477: add $0x8,%edi
0x00007f996111547a: mov %edi,0xe0(%rsi)
0x00007f9961115480: mov $0x7f993fc00368,%rsi ; {metadata({method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f996111548a: and $0xfff8,%edi
0x00007f9961115490: cmp $0x0,%edi
0x00007f9961115493: je 0x00007f99611157c6 ; OopMap{rbx=Oop off=761}
;*goto
; - test3::main@28 (line 5)
0x00007f9961115499: test %eax,0x16dcec61(%rip) # 0x00007f9977ee4100
; {poll}
0x00007f996111549f: mov $0x7f993fc00878,%rsi ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f99611154a9: incl 0x168(%rsi) ;*goto
; - test3::main@28 (line 5)
0x00007f99611154af: cmp $0x186a0,%r8d
0x00007f99611154b6: mov $0x7f993fc00878,%rdx ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f99611154c0: mov $0x108,%rsi
0x00007f99611154ca: jge 0x00007f99611154da
0x00007f99611154d0: mov $0x118,%rsi
0x00007f99611154da: mov (%rdx,%rsi,1),%rdi
0x00007f99611154de: lea 0x1(%rdi),%rdi
0x00007f99611154e2: mov %rdi,(%rdx,%rsi,1)
0x00007f99611154e6: jl 0x00007f9961115268 ;*if_icmpge
; - test3::main@11 (line 5)
0x00007f99611154ec: mov $0x0,%esi
0x00007f99611154f1: mov $0x0,%rdi
0x00007f99611154fb: jmpq 0x00007f99611155fc ;*iload
; - test3::main@36 (line 9)
0x00007f9961115500: mov $0x0,%eax
0x00007f9961115505: jmpq 0x00007f9961115576 ;*iload
; - test3::main@46 (line 10)
0x00007f996111550a: nopw 0x0(%rax,%rax,1)
0x00007f9961115510: movslq %esi,%rdx
0x00007f9961115513: cmp 0xc(%rbx),%esi ; implicit exception: dispatches to 0x00007f99611157dd
0x00007f9961115516: jae 0x00007f99611157e7
0x00007f996111551c: mov 0x10(%rbx,%rdx,4),%edx ;*aaload
; - test3::main@57 (line 11)
0x00007f9961115520: mov 0xc(%rdx),%edx ;*getfield i
; - test3::main@58 (line 11)
; implicit exception: dispatches to 0x00007f99611157f0
0x00007f9961115523: movslq %edx,%rdx
0x00007f9961115526: add %rdi,%rdx
0x00007f9961115529: inc %eax
0x00007f996111552b: mov $0x7f993fc00878,%rdi ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f9961115535: mov 0xe0(%rdi),%ecx
0x00007f996111553b: add $0x8,%ecx
0x00007f996111553e: mov %ecx,0xe0(%rdi)
0x00007f9961115544: mov $0x7f993fc00368,%rdi ; {metadata({method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f996111554e: and $0xfff8,%ecx
0x00007f9961115554: cmp $0x0,%ecx
0x00007f9961115557: je 0x00007f99611157f5 ; OopMap{rbx=Oop off=957}
;*goto
; - test3::main@67 (line 10)
0x00007f996111555d: test %eax,0x16dceb9d(%rip) # 0x00007f9977ee4100
; {poll}
0x00007f9961115563: mov $0x7f993fc00878,%rdi ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f996111556d: incl 0x1c0(%rdi)
0x00007f9961115573: mov %rdx,%rdi ;*goto
; - test3::main@67 (line 10)
0x00007f9961115576: cmp $0x186a0,%eax
0x00007f996111557c: mov $0x7f993fc00878,%rdx ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f9961115586: mov $0x1a0,%rcx
0x00007f9961115590: jge 0x00007f99611155a0
0x00007f9961115596: mov $0x1b0,%rcx
0x00007f99611155a0: mov (%rdx,%rcx,1),%r8
0x00007f99611155a4: lea 0x1(%r8),%r8
0x00007f99611155a8: mov %r8,(%rdx,%rcx,1)
0x00007f99611155ac: jl 0x00007f9961115510 ;*if_icmpge
; - test3::main@50 (line 10)
0x00007f99611155b2: inc %esi
0x00007f99611155b4: mov $0x7f993fc00878,%rdx ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f99611155be: mov 0xe0(%rdx),%eax
0x00007f99611155c4: add $0x8,%eax
0x00007f99611155c7: mov %eax,0xe0(%rdx)
0x00007f99611155cd: mov $0x7f993fc00368,%rdx ; {metadata({method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f99611155d7: and $0xfff8,%eax
0x00007f99611155dd: cmp $0x0,%eax
0x00007f99611155e0: je 0x00007f996111580c ; OopMap{rbx=Oop off=1094}
;*goto
; - test3::main@73 (line 9)
0x00007f99611155e6: test %eax,0x16dceb14(%rip) # 0x00007f9977ee4100
; {poll}
0x00007f99611155ec: mov $0x7f993fc00878,%rdx ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f99611155f6: incl 0x1d8(%rdx) ;*goto
; - test3::main@73 (line 9)
0x00007f99611155fc: cmp $0x186a0,%esi
0x00007f9961115602: mov $0x7f993fc00878,%rax ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f996111560c: mov $0x180,%rdx
0x00007f9961115616: jge 0x00007f9961115626
0x00007f996111561c: mov $0x190,%rdx
0x00007f9961115626: mov (%rax,%rdx,1),%rcx
0x00007f996111562a: lea 0x1(%rcx),%rcx
0x00007f996111562e: mov %rcx,(%rax,%rdx,1)
0x00007f9961115632: jl 0x00007f9961115500 ;*if_icmpge
; - test3::main@40 (line 9)
0x00007f9961115638: jmpq 0x00007f9961115878 ; {no_reloc}
0x00007f996111563d: add %al,(%rax)
0x00007f996111563f: add %al,(%rax)
0x00007f9961115641: add %ah,0xf(%rsi)
0x00007f9961115644: (bad)
0x00007f9961115645: add %r8b,(%rax)
0x00007f9961115648: jmpq 0x00007f9961115892 ; implicit exception: dispatches to 0x00007f9961115882
0x00007f996111564d: nop ;*getstatic out
; - test3::main@76 (line 14)
0x00007f996111564e: cmp (%rsi),%rax ; implicit exception: dispatches to 0x00007f996111589c
0x00007f9961115651: mov %rsi,%rdx
0x00007f9961115654: mov $0x7f993fc00878,%rbx ; {metadata(method data for {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f996111565e: mov 0x8(%rdx),%edx
0x00007f9961115661: shl $0x3,%rdx
0x00007f9961115665: cmp 0x1f8(%rbx),%rdx
0x00007f996111566c: jne 0x00007f996111567b
0x00007f996111566e: addq $0x1,0x200(%rbx)
0x00007f9961115676: jmpq 0x00007f99611156e1
0x00007f996111567b: cmp 0x208(%rbx),%rdx
0x00007f9961115682: jne 0x00007f9961115691
0x00007f9961115684: addq $0x1,0x210(%rbx)
0x00007f996111568c: jmpq 0x00007f99611156e1
0x00007f9961115691: cmpq $0x0,0x1f8(%rbx)
0x00007f996111569c: jne 0x00007f99611156b5
0x00007f996111569e: mov %rdx,0x1f8(%rbx)
0x00007f99611156a5: movq $0x1,0x200(%rbx)
0x00007f99611156b0: jmpq 0x00007f99611156e1
0x00007f99611156b5: cmpq $0x0,0x208(%rbx)
0x00007f99611156c0: jne 0x00007f99611156d9
0x00007f99611156c2: mov %rdx,0x208(%rbx)
0x00007f99611156c9: movq $0x1,0x210(%rbx)
0x00007f99611156d4: jmpq 0x00007f99611156e1
0x00007f99611156d9: addq $0x1,0x1f0(%rbx)
0x00007f99611156e1: mov %rdi,%rdx ;*invokevirtual println
; - test3::main@80 (line 14)
0x00007f99611156e4: nop
0x00007f99611156e5: mov $0xffffffffffffffff,%rax
0x00007f99611156ef: callq 0x00007f9961045f60 ; OopMap{off=1364}
;*invokevirtual println
; - test3::main@80 (line 14)
; {virtual_call}
0x00007f99611156f4: add $0x70,%rsp
0x00007f99611156f8: pop %rbp
0x00007f99611156f9: test %eax,0x16dcea01(%rip) # 0x00007f9977ee4100
; {poll_return}
0x00007f99611156ff: retq ;*return
; - test3::main@83 (line 15)
0x00007f9961115700: mov %eax,-0x14000(%rsp)
0x00007f9961115707: push %rbp
0x00007f9961115708: sub $0x70,%rsp
0x00007f996111570c: mov 0x20(%rsi),%rbx
0x00007f9961115710: mov 0x10(%rsi),%rax
0x00007f9961115714: mov 0x8(%rsi),%edx
0x00007f9961115717: mov (%rsi),%ecx
0x00007f9961115719: mov %rsi,%rdi
0x00007f996111571c: mov %rbx,0x60(%rsp)
0x00007f9961115721: mov %rax,0x58(%rsp)
0x00007f9961115726: mov %edx,0x54(%rsp)
0x00007f996111572a: mov %ecx,0x50(%rsp)
0x00007f996111572e: callq 0x00007f9976ad0ea0 ; {runtime_call}
0x00007f9961115733: mov 0x50(%rsp),%ecx
0x00007f9961115737: mov %rcx,%rax
0x00007f996111573a: mov 0x54(%rsp),%edx
0x00007f996111573e: mov %rdx,%rsi
0x00007f9961115741: mov 0x58(%rsp),%rdx
0x00007f9961115746: mov %rdx,%rdi
0x00007f9961115749: mov 0x60(%rsp),%rbx
0x00007f996111574e: jmpq 0x00007f9961115576
0x00007f9961115753: mov %rbx,0x8(%rsp)
0x00007f9961115758: movq $0xffffffffffffffff,(%rsp)
0x00007f9961115760: callq 0x00007f99610fd820 ; OopMap{rsi=Oop off=1477}
;*synchronization entry
; - test3::main@-1 (line 4)
; {runtime_call}
0x00007f9961115765: jmpq 0x00007f99611151de
0x00007f996111576a: callq 0x00007f99610fa860 ; OopMap{off=1487}
;*anewarray
; - test3::main@2 (line 4)
; {runtime_call}
0x00007f996111576f: jmpq 0x00007f996111525a
0x00007f9961115774: mov %rdx,%rdx
0x00007f9961115777: callq 0x00007f99610f9b20 ; OopMap{rbx=Oop off=1500}
;*new ; - test3::main@16 (line 6)
; {runtime_call}
0x00007f996111577c: jmpq 0x00007f99611152a5
0x00007f9961115781: mov %rsi,0x8(%rsp)
0x00007f9961115786: movq $0xffffffffffffffff,(%rsp)
0x00007f996111578e: callq 0x00007f99610fd820 ; OopMap{rbx=Oop rax=Oop off=1523}
;*synchronization entry
; - test3$Node::<init>@-1 (line 18)
; - test3::main@21 (line 6)
; {runtime_call}
0x00007f9961115793: jmpq 0x00007f99611152ec
0x00007f9961115798: mov %rsi,0x8(%rsp)
0x00007f996111579d: movq $0xffffffffffffffff,(%rsp)
0x00007f99611157a5: callq 0x00007f99610fd820 ; OopMap{rbx=Oop rax=Oop off=1546}
;*synchronization entry
; - java.lang.Object::<init>@-1 (line 37)
; - test3$Node::<init>@1 (line 18)
; - test3::main@21 (line 6)
; {runtime_call}
0x00007f99611157aa: jmpq 0x00007f9961115333
0x00007f99611157af: mov %r8,(%rsp)
0x00007f99611157b3: callq 0x00007f99610f86c0 ; OopMap{rbx=Oop rax=Oop off=1560}
;*aastore
; - test3::main@24 (line 6)
; {runtime_call}
0x00007f99611157b8: callq 0x00007f99610f93c0 ; OopMap{rbx=Oop rax=Oop off=1565}
;*aastore
; - test3::main@24 (line 6)
; {runtime_call}
0x00007f99611157bd: mov %rax,(%rsp)
0x00007f99611157c1: callq 0x00007f99610fb2c0 ; OopMap{rbx=Oop rax=Oop off=1574}
;*aastore
; - test3::main@24 (line 6)
; {runtime_call}
0x00007f99611157c6: mov %rsi,0x8(%rsp)
0x00007f99611157cb: movq $0x1c,(%rsp)
0x00007f99611157d3: callq 0x00007f99610fd820 ; OopMap{rbx=Oop off=1592}
;*goto
; - test3::main@28 (line 5)
; {runtime_call}
0x00007f99611157d8: jmpq 0x00007f9961115499
0x00007f99611157dd: callq 0x00007f99610f93c0 ; OopMap{rbx=Oop off=1602}
;*aaload
; - test3::main@57 (line 11)
; {runtime_call}
0x00007f99611157e2: callq 0x00007f99610f93c0 ; OopMap{rbx=Oop off=1607}
;*aaload
; - test3::main@57 (line 11)
; {runtime_call}
0x00007f99611157e7: mov %rsi,(%rsp)
0x00007f99611157eb: callq 0x00007f99610f86c0 ; OopMap{rbx=Oop off=1616}
;*aaload
; - test3::main@57 (line 11)
; {runtime_call}
0x00007f99611157f0: callq 0x00007f99610f93c0 ; OopMap{rbx=Oop off=1621}
;*getfield i
; - test3::main@58 (line 11)
; {runtime_call}
0x00007f99611157f5: mov %rdi,0x8(%rsp)
0x00007f99611157fa: movq $0x43,(%rsp)
0x00007f9961115802: callq 0x00007f99610fd820 ; OopMap{rbx=Oop off=1639}
;*goto
; - test3::main@67 (line 10)
; {runtime_call}
0x00007f9961115807: jmpq 0x00007f996111555d
0x00007f996111580c: mov %rdx,0x8(%rsp)
0x00007f9961115811: movq $0x49,(%rsp)
0x00007f9961115819: callq 0x00007f99610fd820 ; OopMap{rbx=Oop off=1662}
;*goto
; - test3::main@73 (line 9)
; {runtime_call}
0x00007f996111581e: jmpq 0x00007f99611155e6
0x00007f9961115823: mov $0x0,%rdx ; {oop(NULL)}
0x00007f996111582d: push %rax
0x00007f996111582e: push %rbx
0x00007f996111582f: mov 0x48(%rdx),%rbx
0x00007f9961115833: push %rdi
0x00007f9961115834: push %rsi
0x00007f9961115835: push %rdx
0x00007f9961115836: push %rcx
0x00007f9961115837: push %r8
0x00007f9961115839: push %r9
0x00007f996111583b: push %r10
0x00007f996111583d: mov %rsp,%r10
0x00007f9961115840: and $0xfffffffffffffff0,%rsp
0x00007f9961115844: push %r10
0x00007f9961115846: push %r11
0x00007f9961115848: mov $0x1,%edi
0x00007f996111584d: callq 0x00007f99770c33e0 ; {runtime_call}
0x00007f9961115852: pop %r11
0x00007f9961115854: pop %rsp
0x00007f9961115855: pop %r10
0x00007f9961115857: pop %r9
0x00007f9961115859: pop %r8
0x00007f996111585b: pop %rcx
0x00007f996111585c: pop %rdx
0x00007f996111585d: pop %rsi
0x00007f996111585e: pop %rdi
0x00007f996111585f: cmp 0x108(%rbx),%rax
0x00007f9961115866: pop %rbx
0x00007f9961115867: pop %rax
0x00007f9961115868: jne 0x00007f9961115878
0x00007f996111586e: jmpq 0x00007f9961115642
0x00007f9961115873: mov $0xa4b5500,%eax
0x00007f9961115878: callq 0x00007f99610fcc20 ; OopMap{off=1757}
;*getstatic out
; - test3::main@76 (line 14)
; {runtime_call}
0x00007f996111587d: jmpq 0x00007f9961115638
0x00007f9961115882: callq 0x00007f99610f93c0 ; OopMap{rdx=Oop off=1767}
;*getstatic out
; - test3::main@76 (line 14)
; {runtime_call}
0x00007f9961115887: mov 0x0(%rdx),%esi
0x00007f996111588d: mov $0x6050b00,%eax
0x00007f9961115892: callq 0x00007f99610fc420 ; OopMap{rdx=Oop off=1783}
;*getstatic out
; - test3::main@76 (line 14)
; {runtime_call}
0x00007f9961115897: jmpq 0x00007f9961115648
0x00007f996111589c: callq 0x00007f99610f93c0 ; OopMap{rsi=Oop off=1793}
;*invokevirtual println
; - test3::main@80 (line 14)
; {runtime_call}
0x00007f99611158a1: nop
0x00007f99611158a2: nop
0x00007f99611158a3: mov 0x290(%r15),%rax
0x00007f99611158aa: mov $0x0,%r10
0x00007f99611158b4: mov %r10,0x290(%r15)
0x00007f99611158bb: mov $0x0,%r10
0x00007f99611158c5: mov %r10,0x298(%r15)
0x00007f99611158cc: add $0x70,%rsp
0x00007f99611158d0: pop %rbp
0x00007f99611158d1: jmpq 0x00007f99610f8b60 ; {runtime_call}
0x00007f99611158d6: hlt
0x00007f99611158d7: hlt
0x00007f99611158d8: hlt
0x00007f99611158d9: hlt
0x00007f99611158da: hlt
0x00007f99611158db: hlt
0x00007f99611158dc: hlt
0x00007f99611158dd: hlt
0x00007f99611158de: hlt
0x00007f99611158df: hlt
[Stub Code]
0x00007f99611158e0: nop ; {no_reloc}
0x00007f99611158e1: nop
0x00007f99611158e2: nop
0x00007f99611158e3: nop
0x00007f99611158e4: nop
0x00007f99611158e5: mov $0x0,%rbx ; {static_stub}
0x00007f99611158ef: jmpq 0x00007f99611158ef ; {runtime_call}
[Exception Handler]
0x00007f99611158f4: callq 0x00007f99610fb1a0 ; {runtime_call}
0x00007f99611158f9: mov %rsp,-0x28(%rsp)
0x00007f99611158fe: sub $0x80,%rsp
0x00007f9961115905: mov %rax,0x78(%rsp)
0x00007f996111590a: mov %rcx,0x70(%rsp)
0x00007f996111590f: mov %rdx,0x68(%rsp)
0x00007f9961115914: mov %rbx,0x60(%rsp)
0x00007f9961115919: mov %rbp,0x50(%rsp)
0x00007f996111591e: mov %rsi,0x48(%rsp)
0x00007f9961115923: mov %rdi,0x40(%rsp)
0x00007f9961115928: mov %r8,0x38(%rsp)
0x00007f996111592d: mov %r9,0x30(%rsp)
0x00007f9961115932: mov %r10,0x28(%rsp)
0x00007f9961115937: mov %r11,0x20(%rsp)
0x00007f996111593c: mov %r12,0x18(%rsp)
0x00007f9961115941: mov %r13,0x10(%rsp)
0x00007f9961115946: mov %r14,0x8(%rsp)
0x00007f996111594b: mov %r15,(%rsp)
0x00007f996111594f: mov $0x7f9976bf1fbe,%rdi ; {external_word}
0x00007f9961115959: mov $0x7f99611158f9,%rsi ; {internal_word}
0x00007f9961115963: mov %rsp,%rdx
0x00007f9961115966: and $0xfffffffffffffff0,%rsp
0x00007f996111596a: callq 0x00007f99769510b0 ; {runtime_call}
0x00007f996111596f: hlt
[Deopt Handler Code]
0x00007f9961115970: mov $0x7f9961115970,%r10 ; {section_word}
0x00007f996111597a: push %r10
0x00007f996111597c: jmpq 0x00007f9961047100 ; {runtime_call}
0x00007f9961115981: hlt
0x00007f9961115982: hlt
0x00007f9961115983: hlt
0x00007f9961115984: hlt
0x00007f9961115985: hlt
0x00007f9961115986: hlt
0x00007f9961115987: hlt
OopMapSet contains 23 OopMaps
#0
OopMap{rbx=Oop off=761}
#1
OopMap{rbx=Oop off=957}
#2
OopMap{rbx=Oop off=1094}
#3
OopMap{off=1364}
#4
OopMap{rsi=Oop off=1477}
#5
OopMap{off=1487}
#6
OopMap{rbx=Oop off=1500}
#7
OopMap{rbx=Oop rax=Oop off=1523}
#8
OopMap{rbx=Oop rax=Oop off=1546}
#9
OopMap{rbx=Oop rax=Oop off=1560}
#10
OopMap{rbx=Oop rax=Oop off=1565}
#11
OopMap{rbx=Oop rax=Oop off=1574}
#12
OopMap{rbx=Oop off=1592}
#13
OopMap{rbx=Oop off=1602}
#14
OopMap{rbx=Oop off=1607}
#15
OopMap{rbx=Oop off=1616}
#16
OopMap{rbx=Oop off=1621}
#17
OopMap{rbx=Oop off=1639}
#18
OopMap{rbx=Oop off=1662}
#19
OopMap{off=1757}
#20
OopMap{rdx=Oop off=1767}
#21
OopMap{rdx=Oop off=1783}
#22
OopMap{rsi=Oop off=1793}
Compiled method (c2) 145 24 % 4 test3::main @ 46 (84 bytes)
total in heap [0x00007f9961111ad0,0x00007f9961112188] = 1720
relocation [0x00007f9961111bf8,0x00007f9961111c18] = 32
main code [0x00007f9961111c20,0x00007f9961111e00] = 480
stub code [0x00007f9961111e00,0x00007f9961111e18] = 24
oops [0x00007f9961111e18,0x00007f9961111e20] = 8
metadata [0x00007f9961111e20,0x00007f9961111e38] = 24
scopes data [0x00007f9961111e38,0x00007f9961111ee8] = 176
scopes pcs [0x00007f9961111ee8,0x00007f9961112128] = 576
dependencies [0x00007f9961112128,0x00007f9961112130] = 8
nul chk table [0x00007f9961112130,0x00007f9961112188] = 88
Decoding compiled method 0x00007f9961111ad0:
Code:
[Entry Point]
[Verified Entry Point]
[Constants]
# {method} {0x00007f993fc00368} 'main' '([Ljava/lang/String;)V' in 'test3'
0x00007f9961111c20: callq 0x00007f9976a26fb0 ; {runtime_call}
0x00007f9961111c25: nopw 0x0(%rax,%rax,1)
0x00007f9961111c30: mov %eax,-0x14000(%rsp)
0x00007f9961111c37: push %rbp
0x00007f9961111c38: sub $0x30,%rsp
0x00007f9961111c3c: mov (%rsi),%r13d
0x00007f9961111c3f: mov 0x20(%rsi),%rbx
0x00007f9961111c43: mov 0x10(%rsi),%r14
0x00007f9961111c47: mov 0x8(%rsi),%ebp
0x00007f9961111c4a: mov %rsi,%rdi
0x00007f9961111c4d: mov $0x7f9976ad0ea0,%r10
0x00007f9961111c57: callq *%r10
0x00007f9961111c5a: test %rbx,%rbx
0x00007f9961111c5d: je 0x00007f9961111d6e
0x00007f9961111c63: mov 0x8(%rbx),%r10d
0x00007f9961111c67: cmp $0x2000c07d,%r10d ; {metadata('test3$Node'[])}
0x00007f9961111c6e: jne 0x00007f9961111db5 ;*iload
; - test3::main@46 (line 10)
0x00007f9961111c74: mov %rbx,%rax
0x00007f9961111c77: add $0xc,%rax
0x00007f9961111c7b: jmpq 0x00007f9961111d30
0x00007f9961111c80: mov %rdx,%r14
0x00007f9961111c83: mov 0x10(%rbx,%rbp,4),%r11d ;*aaload
; - test3::main@57 (line 11)
0x00007f9961111c88: mov 0xc(%r11),%r8d ;*getfield i
; - test3::main@58 (line 11)
; implicit exception: dispatches to 0x00007f9961111ded
0x00007f9961111c8c: mov 0x10(%rbx,%rbp,4),%r10d ;*aaload
; - test3::main@57 (line 11)
0x00007f9961111c91: mov 0xc(%r10),%r11d ;*getfield i
; - test3::main@58 (line 11)
; implicit exception: dispatches to 0x00007f9961111ded
0x00007f9961111c95: mov 0x10(%rbx,%rbp,4),%r9d ;*aaload
; - test3::main@57 (line 11)
0x00007f9961111c9a: mov 0xc(%r9),%ecx ;*getfield i
; - test3::main@58 (line 11)
; implicit exception: dispatches to 0x00007f9961111ded
0x00007f9961111c9e: mov 0x10(%rbx,%rbp,4),%r10d ;*aaload
; - test3::main@57 (line 11)
0x00007f9961111ca3: mov 0xc(%r10),%r9d ;*getfield i
; - test3::main@58 (line 11)
; implicit exception: dispatches to 0x00007f9961111ded
0x00007f9961111ca7: mov 0x10(%rbx,%rbp,4),%edi
0x00007f9961111cab: movslq 0xc(%rdi),%rdi ; implicit exception: dispatches to 0x00007f9961111ded
0x00007f9961111caf: mov 0x10(%rbx,%rbp,4),%r10d
0x00007f9961111cb4: movslq 0xc(%r10),%rsi ; implicit exception: dispatches to 0x00007f9961111ded
0x00007f9961111cb8: mov 0x10(%rbx,%rbp,4),%r10d
0x00007f9961111cbd: movslq 0xc(%r10),%r10 ; implicit exception: dispatches to 0x00007f9961111ded
0x00007f9961111cc1: mov 0x10(%rbx,%rbp,4),%edx ;*aaload
; - test3::main@57 (line 11)
0x00007f9961111cc5: movslq 0xc(%rdx),%rdx ; implicit exception: dispatches to 0x00007f9961111ded
0x00007f9961111cc9: movslq %r9d,%r9
0x00007f9961111ccc: movslq %ecx,%rcx
0x00007f9961111ccf: movslq %r8d,%r8
0x00007f9961111cd2: add %r14,%r8
0x00007f9961111cd5: movslq %r11d,%r11
0x00007f9961111cd8: add %r8,%r11
0x00007f9961111cdb: add %r11,%rcx
0x00007f9961111cde: add %rcx,%r9
0x00007f9961111ce1: add %r9,%rdi
0x00007f9961111ce4: add %rdi,%rsi
0x00007f9961111ce7: add %rsi,%r10
0x00007f9961111cea: add %r10,%rdx ;*ladd
; - test3::main@62 (line 11)
0x00007f9961111ced: add $0x8,%r13d ;*iinc
; - test3::main@64 (line 10)
0x00007f9961111cf1: cmp $0x18699,%r13d
0x00007f9961111cf8: jl 0x00007f9961111c80 ;*if_icmpge
; - test3::main@50 (line 10)
0x00007f9961111cfa: cmp $0x186a0,%r13d
0x00007f9961111d01: jge 0x00007f9961111d1c
0x00007f9961111d03: nop
0x00007f9961111d04: mov 0x10(%rbx,%rbp,4),%r11d ;*aaload
; - test3::main@57 (line 11)
0x00007f9961111d09: movslq 0xc(%r11),%r10 ; implicit exception: dispatches to 0x00007f9961111ded
0x00007f9961111d0d: add %r10,%rdx ;*ladd
; - test3::main@62 (line 11)
0x00007f9961111d10: inc %r13d ;*iinc
; - test3::main@64 (line 10)
0x00007f9961111d13: cmp $0x186a0,%r13d
0x00007f9961111d1a: jl 0x00007f9961111d04 ;*iload
; - test3::main@46 (line 10)
0x00007f9961111d1c: inc %ebp ;*iinc
; - test3::main@70 (line 9)
0x00007f9961111d1e: cmp $0x186a0,%ebp
0x00007f9961111d24: jge 0x00007f9961111dd5 ;*if_icmpge
; - test3::main@40 (line 9)
0x00007f9961111d2a: mov %rdx,%r14
0x00007f9961111d2d: xor %r13d,%r13d ;*iload
; - test3::main@46 (line 10)
0x00007f9961111d30: cmp $0x186a0,%r13d
0x00007f9961111d37: jge 0x00007f9961111d77 ;*if_icmpge
; - test3::main@50 (line 10)
0x00007f9961111d39: mov %r13d,%r11d
0x00007f9961111d3c: inc %r11d
0x00007f9961111d3f: test %rbx,%rbx
0x00007f9961111d42: je 0x00007f9961111d7c
0x00007f9961111d44: mov (%rax),%r10d
0x00007f9961111d47: cmp %r10d,%ebp
0x00007f9961111d4a: jae 0x00007f9961111d8d
0x00007f9961111d4c: mov 0x10(%rbx,%rbp,4),%r10d ;*aaload
; - test3::main@57 (line 11)
0x00007f9961111d51: movslq 0xc(%r10),%r10 ; implicit exception: dispatches to 0x00007f9961111ded
0x00007f9961111d55: add %r10,%r14 ;*ladd
; - test3::main@62 (line 11)
0x00007f9961111d58: inc %r13d ;*iinc
; - test3::main@64 (line 10)
0x00007f9961111d5b: cmp %r11d,%r13d
0x00007f9961111d5e: jl 0x00007f9961111d3f ;*if_icmpge
; - test3::main@50 (line 10)
0x00007f9961111d60: cmp $0x18699,%r13d
0x00007f9961111d67: jge 0x00007f9961111dad
0x00007f9961111d69: jmpq 0x00007f9961111c83
0x00007f9961111d6e: mov $0xc,%eax
0x00007f9961111d73: xor %ebx,%ebx
0x00007f9961111d75: jmp 0x00007f9961111d30
0x00007f9961111d77: mov %r14,%rdx
0x00007f9961111d7a: jmp 0x00007f9961111d1c
0x00007f9961111d7c: mov $0xfffffff6,%esi
0x00007f9961111d81: xchg %ax,%ax
0x00007f9961111d83: callq 0x00007f9961004ee0 ; OopMap{off=360}
;*aaload
; - test3::main@57 (line 11)
; {runtime_call}
0x00007f9961111d88: callq 0x00007f9976a26fb0 ; {runtime_call}
0x00007f9961111d8d: mov $0xffffffe4,%esi
0x00007f9961111d92: mov %r13d,0x8(%rsp)
0x00007f9961111d97: mov %r14,0x10(%rsp)
0x00007f9961111d9c: mov %rbx,0x18(%rsp)
0x00007f9961111da1: xchg %ax,%ax
0x00007f9961111da3: callq 0x00007f9961004ee0 ; OopMap{[24]=Oop off=392}
;*aaload
; - test3::main@57 (line 11)
; {runtime_call}
0x00007f9961111da8: callq 0x00007f9976a26fb0 ;*aaload
; - test3::main@57 (line 11)
; {runtime_call}
0x00007f9961111dad: mov %r14,%rdx
0x00007f9961111db0: jmpq 0x00007f9961111cfa
0x00007f9961111db5: mov $0xffffff9d,%esi
0x00007f9961111dba: mov %rbx,(%rsp)
0x00007f9961111dbe: mov %r14,0x8(%rsp)
0x00007f9961111dc3: mov %r13d,0x10(%rsp)
0x00007f9961111dc8: xchg %ax,%ax
0x00007f9961111dcb: callq 0x00007f9961004ee0 ; OopMap{[0]=Oop off=432}
;*iload
; - test3::main@46 (line 10)
; {runtime_call}
0x00007f9961111dd0: callq 0x00007f9976a26fb0 ;*if_icmpge
; - test3::main@40 (line 9)
; {runtime_call}
0x00007f9961111dd5: mov $0xffffff65,%esi
0x00007f9961111dda: mov %rbx,(%rsp)
0x00007f9961111dde: mov %rdx,0x8(%rsp)
0x00007f9961111de3: callq 0x00007f9961004ee0 ; OopMap{[0]=Oop off=456}
;*if_icmpge
; - test3::main@40 (line 9)
; {runtime_call}
0x00007f9961111de8: callq 0x00007f9976a26fb0 ;*getfield i
; - test3::main@58 (line 11)
; {runtime_call}
0x00007f9961111ded: mov $0xfffffff6,%esi
0x00007f9961111df2: nop
0x00007f9961111df3: callq 0x00007f9961004ee0 ; OopMap{off=472}
;*getfield i
; - test3::main@58 (line 11)
; {runtime_call}
0x00007f9961111df8: callq 0x00007f9976a26fb0 ;*aaload
; - test3::main@57 (line 11)
; {runtime_call}
0x00007f9961111dfd: hlt
0x00007f9961111dfe: hlt
0x00007f9961111dff: hlt
[Exception Handler]
[Stub Code]
0x00007f9961111e00: jmpq 0x00007f99610f8e20 ; {no_reloc}
[Deopt Handler Code]
0x00007f9961111e05: callq 0x00007f9961111e0a
0x00007f9961111e0a: subq $0x5,(%rsp)
0x00007f9961111e0f: jmpq 0x00007f9961047100 ; {runtime_call}
0x00007f9961111e14: hlt
0x00007f9961111e15: hlt
0x00007f9961111e16: hlt
0x00007f9961111e17: hlt
OopMapSet contains 5 OopMaps
#0
OopMap{off=360}
#1
OopMap{[24]=Oop off=392}
#2
OopMap{[0]=Oop off=432}
#3
OopMap{[0]=Oop off=456}
#4
OopMap{off=472}
499995000000000
$ java -XX:+UnlockDiagnosticVMOptions '-XX:CompileCommand=print,*test3.main' test3
CompilerOracle: print *test3.main
OpenJDK 64-Bit Server VM warning: printing of assembly code is enabled; turning on DebugNonSafepoints to gain additional output
Compiled method (c1) 39 19 % 3 test3::main @ 9 (88 bytes)
total in heap [0x00007f53c5110690,0x00007f53c5111520] = 3728
relocation [0x00007f53c51107b8,0x00007f53c5110860] = 168
main code [0x00007f53c5110860,0x00007f53c5110fc0] = 1888
stub code [0x00007f53c5110fc0,0x00007f53c5111068] = 168
oops [0x00007f53c5111068,0x00007f53c5111070] = 8
metadata [0x00007f53c5111070,0x00007f53c5111088] = 24
scopes data [0x00007f53c5111088,0x00007f53c51111e0] = 344
scopes pcs [0x00007f53c51111e0,0x00007f53c51114d0] = 752
dependencies [0x00007f53c51114d0,0x00007f53c51114d8] = 8
nul chk table [0x00007f53c51114d8,0x00007f53c5111520] = 72
Loaded disassembler from /usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/hsdis-amd64.so
Decoding compiled method 0x00007f53c5110690:
Code:
[Disassembling for mach='i386:x86-64']
[Entry Point]
[Verified Entry Point]
[Constants]
# {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3'
0x00007f53c5110860: mov %eax,-0x14000(%rsp)
0x00007f53c5110867: push %rbp
0x00007f53c5110868: sub $0x70,%rsp
0x00007f53c511086c: mov $0x7f53d8a94968,%rbx ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c5110876: mov 0xdc(%rbx),%edx
0x00007f53c511087c: add $0x8,%edx
0x00007f53c511087f: mov %edx,0xdc(%rbx)
0x00007f53c5110885: mov $0x7f53d8a94388,%rbx ; {metadata({method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c511088f: and $0x1ff8,%edx
0x00007f53c5110895: cmp $0x0,%edx
0x00007f53c5110898: je 0x00007f53c5110e15
0x00007f53c511089e: mov $0xd6fe0408,%rbx ; {oop(a 'java/lang/Class' = 'test3')}
0x00007f53c51108a8: mov 0x68(%rbx),%ebx ;*getstatic MAX
; - test3::main@0 (line 4)
0x00007f53c51108ab: mov $0x1000603e8,%rdx ; {metadata('test3$Node'[])}
0x00007f53c51108b5: movslq %ebx,%rbx
0x00007f53c51108b8: mov %rbx,%rdi
0x00007f53c51108bb: cmp $0xffffff,%rbx
0x00007f53c51108c2: ja 0x00007f53c5110e2c
0x00007f53c51108c8: mov $0x17,%rsi
0x00007f53c51108d2: lea (%rsi,%rbx,4),%rsi
0x00007f53c51108d6: and $0xfffffffffffffff8,%rsi
0x00007f53c51108da: mov 0x60(%r15),%rax
0x00007f53c51108de: lea (%rax,%rsi,1),%rsi
0x00007f53c51108e2: cmp 0x70(%r15),%rsi
0x00007f53c51108e6: ja 0x00007f53c5110e2c
0x00007f53c51108ec: mov %rsi,0x60(%r15)
0x00007f53c51108f0: sub %rax,%rsi
0x00007f53c51108f3: movq $0x1,(%rax)
0x00007f53c51108fa: mov %rdx,%rcx
0x00007f53c51108fd: shr $0x3,%rcx
0x00007f53c5110901: mov %ecx,0x8(%rax)
0x00007f53c5110904: mov %ebx,0xc(%rax)
0x00007f53c5110907: sub $0x10,%rsi
0x00007f53c511090b: je 0x00007f53c5110922
0x00007f53c5110911: xor %rbx,%rbx
0x00007f53c5110914: shr $0x3,%rsi
0x00007f53c5110918: mov %rbx,0x8(%rax,%rsi,8)
0x00007f53c511091d: dec %rsi
0x00007f53c5110920: jne 0x00007f53c5110918 ;*anewarray
; - test3::main@3 (line 4)
0x00007f53c5110922: mov %rax,%rbx
0x00007f53c5110925: mov $0x0,%r8d
0x00007f53c511092b: jmpq 0x00007f53c5110b77 ;*iload_2
; - test3::main@9 (line 5)
0x00007f53c5110930: mov $0x100060208,%rdx ; {metadata('test3$Node')}
0x00007f53c511093a: mov 0x60(%r15),%rax
0x00007f53c511093e: lea 0x10(%rax),%rdi
0x00007f53c5110942: cmp 0x70(%r15),%rdi
0x00007f53c5110946: ja 0x00007f53c5110e36
0x00007f53c511094c: mov %rdi,0x60(%r15)
0x00007f53c5110950: mov 0xa8(%rdx),%rcx
0x00007f53c5110957: mov %rcx,(%rax)
0x00007f53c511095a: mov %rdx,%rcx
0x00007f53c511095d: shr $0x3,%rcx
0x00007f53c5110961: mov %ecx,0x8(%rax)
0x00007f53c5110964: xor %rcx,%rcx
0x00007f53c5110967: mov %ecx,0xc(%rax)
0x00007f53c511096a: xor %rcx,%rcx ;*new ; - test3::main@18 (line 6)
0x00007f53c511096d: mov %rax,%rdx
0x00007f53c5110970: mov $0x7f53d8a94968,%rsi ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c511097a: addq $0x1,0x128(%rsi)
0x00007f53c5110982: mov $0x7f53d8a94830,%rdx ; {metadata(method data for {method} {0x00007f53d8a94750} '<init>' '(I)V' in 'test3$Node')}
0x00007f53c511098c: mov 0xdc(%rdx),%esi
0x00007f53c5110992: add $0x8,%esi
0x00007f53c5110995: mov %esi,0xdc(%rdx)
0x00007f53c511099b: mov $0x7f53d8a94750,%rdx ; {metadata({method} {0x00007f53d8a94750} '<init>' '(I)V' in 'test3$Node')}
0x00007f53c51109a5: and $0x7ffff8,%esi
0x00007f53c51109ab: cmp $0x0,%esi
0x00007f53c51109ae: je 0x00007f53c5110e43
0x00007f53c51109b4: mov %rax,%rdx
0x00007f53c51109b7: mov $0x7f53d8a94830,%rsi ; {metadata(method data for {method} {0x00007f53d8a94750} '<init>' '(I)V' in 'test3$Node')}
0x00007f53c51109c1: addq $0x1,0x108(%rsi)
0x00007f53c51109c9: mov $0x7f53d88081b0,%rdx ; {metadata(method data for {method} {0x00007f53d8694480} '<init>' '()V' in 'java/lang/Object')}
0x00007f53c51109d3: mov 0xdc(%rdx),%esi
0x00007f53c51109d9: add $0x8,%esi
0x00007f53c51109dc: mov %esi,0xdc(%rdx)
0x00007f53c51109e2: mov $0x7f53d8694480,%rdx ; {metadata({method} {0x00007f53d8694480} '<init>' '()V' in 'java/lang/Object')}
0x00007f53c51109ec: and $0x7ffff8,%esi
0x00007f53c51109f2: cmp $0x0,%esi
0x00007f53c51109f5: je 0x00007f53c5110e5a
0x00007f53c51109fb: mov %r8d,0xc(%rax) ;*putfield i
; - test3$Node::<init>@6 (line 18)
; - test3::main@23 (line 6)
0x00007f53c51109ff: movslq %r8d,%rdx
0x00007f53c5110a02: lea 0x10(%rbx,%rdx,4),%rdx
0x00007f53c5110a07: cmp 0xc(%rbx),%r8d ; implicit exception: dispatches to 0x00007f53c5110e71
0x00007f53c5110a0b: jae 0x00007f53c5110e7b
0x00007f53c5110a11: cmp $0x0,%rax
0x00007f53c5110a15: jne 0x00007f53c5110a30
0x00007f53c5110a17: mov $0x7f53d8a94968,%rdi ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c5110a21: orl $0x100,0x130(%rdi)
0x00007f53c5110a2b: jmpq 0x00007f53c5110b14
0x00007f53c5110a30: mov 0x8(%rbx),%esi ; implicit exception: dispatches to 0x00007f53c5110e84
0x00007f53c5110a33: shl $0x3,%rsi
0x00007f53c5110a37: mov 0x8(%rax),%edi
0x00007f53c5110a3a: shl $0x3,%rdi
0x00007f53c5110a3e: mov 0xe0(%rsi),%rsi
0x00007f53c5110a45: cmp %rsi,%rdi
0x00007f53c5110a48: je 0x00007f53c5110a76
0x00007f53c5110a4e: mov 0xc(%rsi),%ecx
0x00007f53c5110a51: cmp (%rdi,%rcx,1),%rsi
0x00007f53c5110a55: je 0x00007f53c5110a76
0x00007f53c5110a5b: cmp $0x18,%ecx
0x00007f53c5110a5e: jne 0x00007f53c5110afd
0x00007f53c5110a64: push %rdi
0x00007f53c5110a65: push %rsi
0x00007f53c5110a66: callq 0x00007f53c50fb960 ; {runtime_call}
0x00007f53c5110a6b: pop %rdi
0x00007f53c5110a6c: pop %rsi
0x00007f53c5110a6d: cmp $0x0,%esi
0x00007f53c5110a70: je 0x00007f53c5110afd
0x00007f53c5110a76: mov $0x7f53d8a94968,%rdi ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c5110a80: mov 0x8(%rax),%esi
0x00007f53c5110a83: shl $0x3,%rsi
0x00007f53c5110a87: cmp 0x140(%rdi),%rsi
0x00007f53c5110a8e: jne 0x00007f53c5110a9d
0x00007f53c5110a90: addq $0x1,0x148(%rdi)
0x00007f53c5110a98: jmpq 0x00007f53c5110b14
0x00007f53c5110a9d: cmp 0x150(%rdi),%rsi
0x00007f53c5110aa4: jne 0x00007f53c5110ab3
0x00007f53c5110aa6: addq $0x1,0x158(%rdi)
0x00007f53c5110aae: jmpq 0x00007f53c5110b14
0x00007f53c5110ab3: cmpq $0x0,0x140(%rdi)
0x00007f53c5110abe: jne 0x00007f53c5110ad7
0x00007f53c5110ac0: mov %rsi,0x140(%rdi)
0x00007f53c5110ac7: movq $0x1,0x148(%rdi)
0x00007f53c5110ad2: jmpq 0x00007f53c5110b14
0x00007f53c5110ad7: cmpq $0x0,0x150(%rdi)
0x00007f53c5110ae2: jne 0x00007f53c5110afb
0x00007f53c5110ae4: mov %rsi,0x150(%rdi)
0x00007f53c5110aeb: movq $0x1,0x158(%rdi)
0x00007f53c5110af6: jmpq 0x00007f53c5110b14
0x00007f53c5110afb: jmp 0x00007f53c5110b14
0x00007f53c5110afd: mov $0x7f53d8a94968,%rdi ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c5110b07: subq $0x1,0x138(%rdi)
0x00007f53c5110b0f: jmpq 0x00007f53c5110e89
0x00007f53c5110b14: mov %rax,%r10
0x00007f53c5110b17: mov %r10d,(%rdx)
0x00007f53c5110b1a: shr $0x9,%rdx
0x00007f53c5110b1e: mov $0x7f53d98df000,%rsi
0x00007f53c5110b28: movb $0x0,(%rdx,%rsi,1) ;*aastore
; - test3::main@26 (line 6)
0x00007f53c5110b2c: inc %r8d
0x00007f53c5110b2f: mov $0x7f53d8a94968,%rdx ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c5110b39: mov 0xe0(%rdx),%esi
0x00007f53c5110b3f: add $0x8,%esi
0x00007f53c5110b42: mov %esi,0xe0(%rdx)
0x00007f53c5110b48: mov $0x7f53d8a94388,%rdx ; {metadata({method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c5110b52: and $0xfff8,%esi
0x00007f53c5110b58: cmp $0x0,%esi
0x00007f53c5110b5b: je 0x00007f53c5110e92 ; OopMap{rbx=Oop off=769}
;*goto
; - test3::main@30 (line 5)
0x00007f53c5110b61: test %eax,0x18960599(%rip) # 0x00007f53dda71100
; {poll}
0x00007f53c5110b67: mov $0x7f53d8a94968,%rdx ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c5110b71: incl 0x168(%rdx) ;*goto
; - test3::main@30 (line 5)
0x00007f53c5110b77: mov $0xd6fe0408,%rdx ; {oop(a 'java/lang/Class' = 'test3')}
0x00007f53c5110b81: mov 0x68(%rdx),%r9d ;*getstatic MAX
; - test3::main@10 (line 5)
0x00007f53c5110b85: cmp %r9d,%r8d
0x00007f53c5110b88: mov $0x7f53d8a94968,%rdx ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c5110b92: mov $0x108,%rsi
0x00007f53c5110b9c: jge 0x00007f53c5110bac
0x00007f53c5110ba2: mov $0x118,%rsi
0x00007f53c5110bac: mov (%rdx,%rsi,1),%rdi
0x00007f53c5110bb0: lea 0x1(%rdi),%rdi
0x00007f53c5110bb4: mov %rdi,(%rdx,%rsi,1)
0x00007f53c5110bb8: jl 0x00007f53c5110930 ;*if_icmpge
; - test3::main@13 (line 5)
0x00007f53c5110bbe: mov $0x0,%edx
0x00007f53c5110bc3: mov $0x0,%rsi
0x00007f53c5110bcd: jmpq 0x00007f53c5110cd1 ;*iload
; - test3::main@38 (line 9)
0x00007f53c5110bd2: nopw 0x0(%rax,%rax,1)
0x00007f53c5110bd8: mov $0x0,%edi
0x00007f53c5110bdd: jmpq 0x00007f53c5110c4e ;*iload
; - test3::main@49 (line 10)
0x00007f53c5110be2: nopw 0x0(%rax,%rax,1)
0x00007f53c5110be8: movslq %edx,%rax
0x00007f53c5110beb: cmp 0xc(%rbx),%edx ; implicit exception: dispatches to 0x00007f53c5110ea9
0x00007f53c5110bee: jae 0x00007f53c5110eb3
0x00007f53c5110bf4: mov 0x10(%rbx,%rax,4),%eax ;*aaload
; - test3::main@61 (line 11)
0x00007f53c5110bf8: mov 0xc(%rax),%eax ;*getfield i
; - test3::main@62 (line 11)
; implicit exception: dispatches to 0x00007f53c5110ebc
0x00007f53c5110bfb: movslq %eax,%rax
0x00007f53c5110bfe: add %rsi,%rax
0x00007f53c5110c01: inc %edi
0x00007f53c5110c03: mov $0x7f53d8a94968,%rsi ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c5110c0d: mov 0xe0(%rsi),%ecx
0x00007f53c5110c13: add $0x8,%ecx
0x00007f53c5110c16: mov %ecx,0xe0(%rsi)
0x00007f53c5110c1c: mov $0x7f53d8a94388,%rsi ; {metadata({method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c5110c26: and $0xfff8,%ecx
0x00007f53c5110c2c: cmp $0x0,%ecx
0x00007f53c5110c2f: je 0x00007f53c5110ec1 ; OopMap{rbx=Oop off=981}
;*goto
; - test3::main@71 (line 10)
0x00007f53c5110c35: test %eax,0x189604c5(%rip) # 0x00007f53dda71100
; {poll}
0x00007f53c5110c3b: mov $0x7f53d8a94968,%rsi ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c5110c45: incl 0x1c0(%rsi)
0x00007f53c5110c4b: mov %rax,%rsi ;*goto
; - test3::main@71 (line 10)
0x00007f53c5110c4e: cmp %r9d,%edi
0x00007f53c5110c51: mov $0x7f53d8a94968,%rax ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c5110c5b: mov $0x1a0,%rcx
0x00007f53c5110c65: jge 0x00007f53c5110c75
0x00007f53c5110c6b: mov $0x1b0,%rcx
0x00007f53c5110c75: mov (%rax,%rcx,1),%r8
0x00007f53c5110c79: lea 0x1(%r8),%r8
0x00007f53c5110c7d: mov %r8,(%rax,%rcx,1)
0x00007f53c5110c81: jl 0x00007f53c5110be8 ;*if_icmpge
; - test3::main@54 (line 10)
0x00007f53c5110c87: inc %edx
0x00007f53c5110c89: mov $0x7f53d8a94968,%rdi ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c5110c93: mov 0xe0(%rdi),%eax
0x00007f53c5110c99: add $0x8,%eax
0x00007f53c5110c9c: mov %eax,0xe0(%rdi)
0x00007f53c5110ca2: mov $0x7f53d8a94388,%rdi ; {metadata({method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c5110cac: and $0xfff8,%eax
0x00007f53c5110cb2: cmp $0x0,%eax
0x00007f53c5110cb5: je 0x00007f53c5110ed8 ; OopMap{rbx=Oop off=1115}
;*goto
; - test3::main@77 (line 9)
0x00007f53c5110cbb: test %eax,0x1896043f(%rip) # 0x00007f53dda71100
; {poll}
0x00007f53c5110cc1: mov $0x7f53d8a94968,%rdi ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c5110ccb: incl 0x1d8(%rdi) ;*goto
; - test3::main@77 (line 9)
0x00007f53c5110cd1: cmp %r9d,%edx
0x00007f53c5110cd4: mov $0x7f53d8a94968,%rdi ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c5110cde: mov $0x180,%rax
0x00007f53c5110ce8: jge 0x00007f53c5110cf8
0x00007f53c5110cee: mov $0x190,%rax
0x00007f53c5110cf8: mov (%rdi,%rax,1),%rcx
0x00007f53c5110cfc: lea 0x1(%rcx),%rcx
0x00007f53c5110d00: mov %rcx,(%rdi,%rax,1)
0x00007f53c5110d04: jl 0x00007f53c5110bd8 ;*if_icmpge
; - test3::main@43 (line 9)
0x00007f53c5110d0a: nopw 0x0(%rax,%rax,1)
0x00007f53c5110d10: jmpq 0x00007f53c5110f44 ; {no_reloc}
0x00007f53c5110d15: add %al,(%rax)
0x00007f53c5110d17: add %al,(%rax)
0x00007f53c5110d19: add %ah,0xf(%rsi)
0x00007f53c5110d1c: (bad)
0x00007f53c5110d1d: add %r8b,(%rax)
0x00007f53c5110d20: jmpq 0x00007f53c5110f5e ; implicit exception: dispatches to 0x00007f53c5110f4e
0x00007f53c5110d25: nop ;*getstatic out
; - test3::main@80 (line 14)
0x00007f53c5110d26: cmp (%rdi),%rax ; implicit exception: dispatches to 0x00007f53c5110f68
0x00007f53c5110d29: mov %rdi,%rdx
0x00007f53c5110d2c: mov $0x7f53d8a94968,%rbx ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c5110d36: mov 0x8(%rdx),%edx
0x00007f53c5110d39: shl $0x3,%rdx
0x00007f53c5110d3d: cmp 0x1f8(%rbx),%rdx
0x00007f53c5110d44: jne 0x00007f53c5110d53
0x00007f53c5110d46: addq $0x1,0x200(%rbx)
0x00007f53c5110d4e: jmpq 0x00007f53c5110db9
0x00007f53c5110d53: cmp 0x208(%rbx),%rdx
0x00007f53c5110d5a: jne 0x00007f53c5110d69
0x00007f53c5110d5c: addq $0x1,0x210(%rbx)
0x00007f53c5110d64: jmpq 0x00007f53c5110db9
0x00007f53c5110d69: cmpq $0x0,0x1f8(%rbx)
0x00007f53c5110d74: jne 0x00007f53c5110d8d
0x00007f53c5110d76: mov %rdx,0x1f8(%rbx)
0x00007f53c5110d7d: movq $0x1,0x200(%rbx)
0x00007f53c5110d88: jmpq 0x00007f53c5110db9
0x00007f53c5110d8d: cmpq $0x0,0x208(%rbx)
0x00007f53c5110d98: jne 0x00007f53c5110db1
0x00007f53c5110d9a: mov %rdx,0x208(%rbx)
0x00007f53c5110da1: movq $0x1,0x210(%rbx)
0x00007f53c5110dac: jmpq 0x00007f53c5110db9
0x00007f53c5110db1: addq $0x1,0x1f0(%rbx)
0x00007f53c5110db9: mov %rsi,%rdx
0x00007f53c5110dbc: mov %rdi,%rsi ;*invokevirtual println
; - test3::main@84 (line 14)
0x00007f53c5110dbf: nop
0x00007f53c5110dc0: nop
0x00007f53c5110dc1: nop
0x00007f53c5110dc2: nop
0x00007f53c5110dc3: nop
0x00007f53c5110dc4: nop
0x00007f53c5110dc5: mov $0xffffffffffffffff,%rax
0x00007f53c5110dcf: callq 0x00007f53c5045f60 ; OopMap{off=1396}
;*invokevirtual println
; - test3::main@84 (line 14)
; {virtual_call}
0x00007f53c5110dd4: add $0x70,%rsp
0x00007f53c5110dd8: pop %rbp
0x00007f53c5110dd9: test %eax,0x18960321(%rip) # 0x00007f53dda71100
; {poll_return}
0x00007f53c5110ddf: retq ;*return
; - test3::main@87 (line 15)
0x00007f53c5110de0: mov %eax,-0x14000(%rsp)
0x00007f53c5110de7: push %rbp
0x00007f53c5110de8: sub $0x70,%rsp
0x00007f53c5110dec: mov 0x20(%rsi),%rbx
0x00007f53c5110df0: mov 0x18(%rsi),%eax
0x00007f53c5110df3: mov %rsi,%rdi
0x00007f53c5110df6: mov %rbx,0x58(%rsp)
0x00007f53c5110dfb: mov %eax,0x50(%rsp)
0x00007f53c5110dff: callq 0x00007f53dc65dea0 ; {runtime_call}
0x00007f53c5110e04: mov 0x50(%rsp),%eax
0x00007f53c5110e08: mov %rax,%r8
0x00007f53c5110e0b: mov 0x58(%rsp),%rbx
0x00007f53c5110e10: jmpq 0x00007f53c5110b77
0x00007f53c5110e15: mov %rbx,0x8(%rsp)
0x00007f53c5110e1a: movq $0xffffffffffffffff,(%rsp)
0x00007f53c5110e22: callq 0x00007f53c50fd820 ; OopMap{rsi=Oop off=1479}
;*synchronization entry
; - test3::main@-1 (line 4)
; {runtime_call}
0x00007f53c5110e27: jmpq 0x00007f53c511089e
0x00007f53c5110e2c: callq 0x00007f53c50fa860 ; OopMap{off=1489}
;*anewarray
; - test3::main@3 (line 4)
; {runtime_call}
0x00007f53c5110e31: jmpq 0x00007f53c5110922
0x00007f53c5110e36: mov %rdx,%rdx
0x00007f53c5110e39: callq 0x00007f53c50f9b20 ; OopMap{rbx=Oop off=1502}
;*new ; - test3::main@18 (line 6)
; {runtime_call}
0x00007f53c5110e3e: jmpq 0x00007f53c511096d
0x00007f53c5110e43: mov %rdx,0x8(%rsp)
0x00007f53c5110e48: movq $0xffffffffffffffff,(%rsp)
0x00007f53c5110e50: callq 0x00007f53c50fd820 ; OopMap{rbx=Oop rax=Oop off=1525}
;*synchronization entry
; - test3$Node::<init>@-1 (line 18)
; - test3::main@23 (line 6)
; {runtime_call}
0x00007f53c5110e55: jmpq 0x00007f53c51109b4
0x00007f53c5110e5a: mov %rdx,0x8(%rsp)
0x00007f53c5110e5f: movq $0xffffffffffffffff,(%rsp)
0x00007f53c5110e67: callq 0x00007f53c50fd820 ; OopMap{rbx=Oop rax=Oop off=1548}
;*synchronization entry
; - java.lang.Object::<init>@-1 (line 37)
; - test3$Node::<init>@1 (line 18)
; - test3::main@23 (line 6)
; {runtime_call}
0x00007f53c5110e6c: jmpq 0x00007f53c51109fb
0x00007f53c5110e71: callq 0x00007f53c50f93c0 ; OopMap{rbx=Oop rax=Oop off=1558}
;*aastore
; - test3::main@26 (line 6)
; {runtime_call}
0x00007f53c5110e76: callq 0x00007f53c50f93c0 ; OopMap{rbx=Oop rax=Oop off=1563}
;*aastore
; - test3::main@26 (line 6)
; {runtime_call}
0x00007f53c5110e7b: mov %r8,(%rsp)
0x00007f53c5110e7f: callq 0x00007f53c506b980 ; OopMap{rbx=Oop rax=Oop off=1572}
;*aastore
; - test3::main@26 (line 6)
; {runtime_call}
0x00007f53c5110e84: callq 0x00007f53c50f93c0 ; OopMap{rbx=Oop rax=Oop off=1577}
;*aastore
; - test3::main@26 (line 6)
; {runtime_call}
0x00007f53c5110e89: mov %rax,(%rsp)
0x00007f53c5110e8d: callq 0x00007f53c50fb2c0 ; OopMap{rbx=Oop rax=Oop off=1586}
;*aastore
; - test3::main@26 (line 6)
; {runtime_call}
0x00007f53c5110e92: mov %rdx,0x8(%rsp)
0x00007f53c5110e97: movq $0x1e,(%rsp)
0x00007f53c5110e9f: callq 0x00007f53c50fd820 ; OopMap{rbx=Oop off=1604}
;*goto
; - test3::main@30 (line 5)
; {runtime_call}
0x00007f53c5110ea4: jmpq 0x00007f53c5110b61
0x00007f53c5110ea9: callq 0x00007f53c50f93c0 ; OopMap{rbx=Oop off=1614}
;*aaload
; - test3::main@61 (line 11)
; {runtime_call}
0x00007f53c5110eae: callq 0x00007f53c50f93c0 ; OopMap{rbx=Oop off=1619}
;*aaload
; - test3::main@61 (line 11)
; {runtime_call}
0x00007f53c5110eb3: mov %rdx,(%rsp)
0x00007f53c5110eb7: callq 0x00007f53c506b980 ; OopMap{rbx=Oop off=1628}
;*aaload
; - test3::main@61 (line 11)
; {runtime_call}
0x00007f53c5110ebc: callq 0x00007f53c50f93c0 ; OopMap{rbx=Oop off=1633}
;*getfield i
; - test3::main@62 (line 11)
; {runtime_call}
0x00007f53c5110ec1: mov %rsi,0x8(%rsp)
0x00007f53c5110ec6: movq $0x47,(%rsp)
0x00007f53c5110ece: callq 0x00007f53c50fd820 ; OopMap{rbx=Oop off=1651}
;*goto
; - test3::main@71 (line 10)
; {runtime_call}
0x00007f53c5110ed3: jmpq 0x00007f53c5110c35
0x00007f53c5110ed8: mov %rdi,0x8(%rsp)
0x00007f53c5110edd: movq $0x4d,(%rsp)
0x00007f53c5110ee5: callq 0x00007f53c50fd820 ; OopMap{rbx=Oop off=1674}
;*goto
; - test3::main@77 (line 9)
; {runtime_call}
0x00007f53c5110eea: jmpq 0x00007f53c5110cbb
0x00007f53c5110eef: mov $0x0,%rdx ; {oop(NULL)}
0x00007f53c5110ef9: push %rax
0x00007f53c5110efa: push %rbx
0x00007f53c5110efb: mov 0x48(%rdx),%rbx
0x00007f53c5110eff: push %rdi
0x00007f53c5110f00: push %rsi
0x00007f53c5110f01: push %rdx
0x00007f53c5110f02: push %rcx
0x00007f53c5110f03: push %r8
0x00007f53c5110f05: push %r9
0x00007f53c5110f07: push %r10
0x00007f53c5110f09: mov %rsp,%r10
0x00007f53c5110f0c: and $0xfffffffffffffff0,%rsp
0x00007f53c5110f10: push %r10
0x00007f53c5110f12: push %r11
0x00007f53c5110f14: mov $0x1,%edi
0x00007f53c5110f19: callq 0x00007f53dcc503e0 ; {runtime_call}
0x00007f53c5110f1e: pop %r11
0x00007f53c5110f20: pop %rsp
0x00007f53c5110f21: pop %r10
0x00007f53c5110f23: pop %r9
0x00007f53c5110f25: pop %r8
0x00007f53c5110f27: pop %rcx
0x00007f53c5110f28: pop %rdx
0x00007f53c5110f29: pop %rsi
0x00007f53c5110f2a: pop %rdi
0x00007f53c5110f2b: cmp 0x108(%rbx),%rax
0x00007f53c5110f32: pop %rbx
0x00007f53c5110f33: pop %rax
0x00007f53c5110f34: jne 0x00007f53c5110f44
0x00007f53c5110f3a: jmpq 0x00007f53c5110d1a
0x00007f53c5110f3f: mov $0xa4b5500,%eax
0x00007f53c5110f44: callq 0x00007f53c50fcc20 ; OopMap{off=1769}
;*getstatic out
; - test3::main@80 (line 14)
; {runtime_call}
0x00007f53c5110f49: jmpq 0x00007f53c5110d10
0x00007f53c5110f4e: callq 0x00007f53c50f93c0 ; OopMap{rdx=Oop off=1779}
;*getstatic out
; - test3::main@80 (line 14)
; {runtime_call}
0x00007f53c5110f53: mov 0x0(%rdx),%edi
0x00007f53c5110f59: mov $0x6050b00,%eax
0x00007f53c5110f5e: callq 0x00007f53c50fc420 ; OopMap{rdx=Oop off=1795}
;*getstatic out
; - test3::main@80 (line 14)
; {runtime_call}
0x00007f53c5110f63: jmpq 0x00007f53c5110d20
0x00007f53c5110f68: callq 0x00007f53c50f93c0 ; OopMap{rdi=Oop off=1805}
;*invokevirtual println
; - test3::main@84 (line 14)
; {runtime_call}
0x00007f53c5110f6d: nop
0x00007f53c5110f6e: nop
0x00007f53c5110f6f: mov 0x290(%r15),%rax
0x00007f53c5110f76: mov $0x0,%r10
0x00007f53c5110f80: mov %r10,0x290(%r15)
0x00007f53c5110f87: mov $0x0,%r10
0x00007f53c5110f91: mov %r10,0x298(%r15)
0x00007f53c5110f98: add $0x70,%rsp
0x00007f53c5110f9c: pop %rbp
0x00007f53c5110f9d: jmpq 0x00007f53c506be20 ; {runtime_call}
0x00007f53c5110fa2: hlt
0x00007f53c5110fa3: hlt
0x00007f53c5110fa4: hlt
0x00007f53c5110fa5: hlt
0x00007f53c5110fa6: hlt
0x00007f53c5110fa7: hlt
0x00007f53c5110fa8: hlt
0x00007f53c5110fa9: hlt
0x00007f53c5110faa: hlt
0x00007f53c5110fab: hlt
0x00007f53c5110fac: hlt
0x00007f53c5110fad: hlt
0x00007f53c5110fae: hlt
0x00007f53c5110faf: hlt
0x00007f53c5110fb0: hlt
0x00007f53c5110fb1: hlt
0x00007f53c5110fb2: hlt
0x00007f53c5110fb3: hlt
0x00007f53c5110fb4: hlt
0x00007f53c5110fb5: hlt
0x00007f53c5110fb6: hlt
0x00007f53c5110fb7: hlt
0x00007f53c5110fb8: hlt
0x00007f53c5110fb9: hlt
0x00007f53c5110fba: hlt
0x00007f53c5110fbb: hlt
0x00007f53c5110fbc: hlt
0x00007f53c5110fbd: hlt
0x00007f53c5110fbe: hlt
0x00007f53c5110fbf: hlt
[Stub Code]
0x00007f53c5110fc0: nop ; {no_reloc}
0x00007f53c5110fc1: nop
0x00007f53c5110fc2: nop
0x00007f53c5110fc3: nop
0x00007f53c5110fc4: nop
0x00007f53c5110fc5: mov $0x0,%rbx ; {static_stub}
0x00007f53c5110fcf: jmpq 0x00007f53c5110fcf ; {runtime_call}
[Exception Handler]
0x00007f53c5110fd4: callq 0x00007f53c50fb1a0 ; {runtime_call}
0x00007f53c5110fd9: mov %rsp,-0x28(%rsp)
0x00007f53c5110fde: sub $0x80,%rsp
0x00007f53c5110fe5: mov %rax,0x78(%rsp)
0x00007f53c5110fea: mov %rcx,0x70(%rsp)
0x00007f53c5110fef: mov %rdx,0x68(%rsp)
0x00007f53c5110ff4: mov %rbx,0x60(%rsp)
0x00007f53c5110ff9: mov %rbp,0x50(%rsp)
0x00007f53c5110ffe: mov %rsi,0x48(%rsp)
0x00007f53c5111003: mov %rdi,0x40(%rsp)
0x00007f53c5111008: mov %r8,0x38(%rsp)
0x00007f53c511100d: mov %r9,0x30(%rsp)
0x00007f53c5111012: mov %r10,0x28(%rsp)
0x00007f53c5111017: mov %r11,0x20(%rsp)
0x00007f53c511101c: mov %r12,0x18(%rsp)
0x00007f53c5111021: mov %r13,0x10(%rsp)
0x00007f53c5111026: mov %r14,0x8(%rsp)
0x00007f53c511102b: mov %r15,(%rsp)
0x00007f53c511102f: mov $0x7f53dc77efbe,%rdi ; {external_word}
0x00007f53c5111039: mov $0x7f53c5110fd9,%rsi ; {internal_word}
0x00007f53c5111043: mov %rsp,%rdx
0x00007f53c5111046: and $0xfffffffffffffff0,%rsp
0x00007f53c511104a: callq 0x00007f53dc4de0b0 ; {runtime_call}
0x00007f53c511104f: hlt
[Deopt Handler Code]
0x00007f53c5111050: mov $0x7f53c5111050,%r10 ; {section_word}
0x00007f53c511105a: push %r10
0x00007f53c511105c: jmpq 0x00007f53c5047100 ; {runtime_call}
0x00007f53c5111061: hlt
0x00007f53c5111062: hlt
0x00007f53c5111063: hlt
0x00007f53c5111064: hlt
0x00007f53c5111065: hlt
0x00007f53c5111066: hlt
0x00007f53c5111067: hlt
OopMapSet contains 25 OopMaps
#0
OopMap{rbx=Oop off=769}
#1
OopMap{rbx=Oop off=981}
#2
OopMap{rbx=Oop off=1115}
#3
OopMap{off=1396}
#4
OopMap{rsi=Oop off=1479}
#5
OopMap{off=1489}
#6
OopMap{rbx=Oop off=1502}
#7
OopMap{rbx=Oop rax=Oop off=1525}
#8
OopMap{rbx=Oop rax=Oop off=1548}
#9
OopMap{rbx=Oop rax=Oop off=1558}
#10
OopMap{rbx=Oop rax=Oop off=1563}
#11
OopMap{rbx=Oop rax=Oop off=1572}
#12
OopMap{rbx=Oop rax=Oop off=1577}
#13
OopMap{rbx=Oop rax=Oop off=1586}
#14
OopMap{rbx=Oop off=1604}
#15
OopMap{rbx=Oop off=1614}
#16
OopMap{rbx=Oop off=1619}
#17
OopMap{rbx=Oop off=1628}
#18
OopMap{rbx=Oop off=1633}
#19
OopMap{rbx=Oop off=1651}
#20
OopMap{rbx=Oop off=1674}
#21
OopMap{off=1769}
#22
OopMap{rdx=Oop off=1779}
#23
OopMap{rdx=Oop off=1795}
#24
OopMap{rdi=Oop off=1805}
Compiled method (c1) 46 20 % 3 test3::main @ 49 (88 bytes)
total in heap [0x00007f53c510f7d0,0x00007f53c5110648] = 3704
relocation [0x00007f53c510f8f8,0x00007f53c510f9a0] = 168
main code [0x00007f53c510f9a0,0x00007f53c5110100] = 1888
stub code [0x00007f53c5110100,0x00007f53c51101a8] = 168
oops [0x00007f53c51101a8,0x00007f53c51101b0] = 8
metadata [0x00007f53c51101b0,0x00007f53c51101c8] = 24
scopes data [0x00007f53c51101c8,0x00007f53c5110328] = 352
scopes pcs [0x00007f53c5110328,0x00007f53c5110608] = 736
dependencies [0x00007f53c5110608,0x00007f53c5110610] = 8
nul chk table [0x00007f53c5110610,0x00007f53c5110648] = 56
Decoding compiled method 0x00007f53c510f7d0:
Code:
[Entry Point]
[Verified Entry Point]
[Constants]
# {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3'
0x00007f53c510f9a0: mov %eax,-0x14000(%rsp)
0x00007f53c510f9a7: push %rbp
0x00007f53c510f9a8: sub $0x70,%rsp
0x00007f53c510f9ac: mov $0x7f53d8a94968,%rbx ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510f9b6: mov 0xdc(%rbx),%edx
0x00007f53c510f9bc: add $0x8,%edx
0x00007f53c510f9bf: mov %edx,0xdc(%rbx)
0x00007f53c510f9c5: mov $0x7f53d8a94388,%rbx ; {metadata({method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510f9cf: and $0x1ff8,%edx
0x00007f53c510f9d5: cmp $0x0,%edx
0x00007f53c510f9d8: je 0x00007f53c510ff7b
0x00007f53c510f9de: mov $0xd6fe0408,%rbx ; {oop(a 'java/lang/Class' = 'test3')}
0x00007f53c510f9e8: mov 0x68(%rbx),%r8d ;*getstatic MAX
; - test3::main@0 (line 4)
0x00007f53c510f9ec: mov %r8,%rbx
0x00007f53c510f9ef: mov $0x1000603e8,%rdx ; {metadata('test3$Node'[])}
0x00007f53c510f9f9: movslq %ebx,%rbx
0x00007f53c510f9fc: mov %rbx,%rdi
0x00007f53c510f9ff: cmp $0xffffff,%rbx
0x00007f53c510fa06: ja 0x00007f53c510ff92
0x00007f53c510fa0c: mov $0x17,%rsi
0x00007f53c510fa16: lea (%rsi,%rbx,4),%rsi
0x00007f53c510fa1a: and $0xfffffffffffffff8,%rsi
0x00007f53c510fa1e: mov 0x60(%r15),%rax
0x00007f53c510fa22: lea (%rax,%rsi,1),%rsi
0x00007f53c510fa26: cmp 0x70(%r15),%rsi
0x00007f53c510fa2a: ja 0x00007f53c510ff92
0x00007f53c510fa30: mov %rsi,0x60(%r15)
0x00007f53c510fa34: sub %rax,%rsi
0x00007f53c510fa37: movq $0x1,(%rax)
0x00007f53c510fa3e: mov %rdx,%rcx
0x00007f53c510fa41: shr $0x3,%rcx
0x00007f53c510fa45: mov %ecx,0x8(%rax)
0x00007f53c510fa48: mov %ebx,0xc(%rax)
0x00007f53c510fa4b: sub $0x10,%rsi
0x00007f53c510fa4f: je 0x00007f53c510fa66
0x00007f53c510fa55: xor %rbx,%rbx
0x00007f53c510fa58: shr $0x3,%rsi
0x00007f53c510fa5c: mov %rbx,0x8(%rax,%rsi,8)
0x00007f53c510fa61: dec %rsi
0x00007f53c510fa64: jne 0x00007f53c510fa5c
0x00007f53c510fa66: mov %rax,%rbx ;*anewarray
; - test3::main@3 (line 4)
0x00007f53c510fa69: mov $0x0,%r9d
0x00007f53c510fa6f: jmpq 0x00007f53c510fcbf ;*iload_2
; - test3::main@9 (line 5)
0x00007f53c510fa74: nopl 0x0(%rax)
0x00007f53c510fa78: mov $0x100060208,%rdx ; {metadata('test3$Node')}
0x00007f53c510fa82: mov 0x60(%r15),%rax
0x00007f53c510fa86: lea 0x10(%rax),%rdi
0x00007f53c510fa8a: cmp 0x70(%r15),%rdi
0x00007f53c510fa8e: ja 0x00007f53c510ff9c
0x00007f53c510fa94: mov %rdi,0x60(%r15)
0x00007f53c510fa98: mov 0xa8(%rdx),%rcx
0x00007f53c510fa9f: mov %rcx,(%rax)
0x00007f53c510faa2: mov %rdx,%rcx
0x00007f53c510faa5: shr $0x3,%rcx
0x00007f53c510faa9: mov %ecx,0x8(%rax)
0x00007f53c510faac: xor %rcx,%rcx
0x00007f53c510faaf: mov %ecx,0xc(%rax)
0x00007f53c510fab2: xor %rcx,%rcx ;*new ; - test3::main@18 (line 6)
0x00007f53c510fab5: mov %rax,%rsi
0x00007f53c510fab8: mov $0x7f53d8a94968,%rdi ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510fac2: addq $0x1,0x128(%rdi)
0x00007f53c510faca: mov $0x7f53d8a94830,%rsi ; {metadata(method data for {method} {0x00007f53d8a94750} '<init>' '(I)V' in 'test3$Node')}
0x00007f53c510fad4: mov 0xdc(%rsi),%edi
0x00007f53c510fada: add $0x8,%edi
0x00007f53c510fadd: mov %edi,0xdc(%rsi)
0x00007f53c510fae3: mov $0x7f53d8a94750,%rsi ; {metadata({method} {0x00007f53d8a94750} '<init>' '(I)V' in 'test3$Node')}
0x00007f53c510faed: and $0x7ffff8,%edi
0x00007f53c510faf3: cmp $0x0,%edi
0x00007f53c510faf6: je 0x00007f53c510ffa9
0x00007f53c510fafc: mov %rax,%rsi
0x00007f53c510faff: mov $0x7f53d8a94830,%rdi ; {metadata(method data for {method} {0x00007f53d8a94750} '<init>' '(I)V' in 'test3$Node')}
0x00007f53c510fb09: addq $0x1,0x108(%rdi)
0x00007f53c510fb11: mov $0x7f53d88081b0,%rsi ; {metadata(method data for {method} {0x00007f53d8694480} '<init>' '()V' in 'java/lang/Object')}
0x00007f53c510fb1b: mov 0xdc(%rsi),%edi
0x00007f53c510fb21: add $0x8,%edi
0x00007f53c510fb24: mov %edi,0xdc(%rsi)
0x00007f53c510fb2a: mov $0x7f53d8694480,%rsi ; {metadata({method} {0x00007f53d8694480} '<init>' '()V' in 'java/lang/Object')}
0x00007f53c510fb34: and $0x7ffff8,%edi
0x00007f53c510fb3a: cmp $0x0,%edi
0x00007f53c510fb3d: je 0x00007f53c510ffc0
0x00007f53c510fb43: mov %r9d,0xc(%rax) ;*putfield i
; - test3$Node::<init>@6 (line 18)
; - test3::main@23 (line 6)
0x00007f53c510fb47: movslq %r9d,%rsi
0x00007f53c510fb4a: lea 0x10(%rbx,%rsi,4),%rsi
0x00007f53c510fb4f: cmp 0xc(%rbx),%r9d
0x00007f53c510fb53: jae 0x00007f53c510ffd7
0x00007f53c510fb59: cmp $0x0,%rax
0x00007f53c510fb5d: jne 0x00007f53c510fb78
0x00007f53c510fb5f: mov $0x7f53d8a94968,%rdx ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510fb69: orl $0x100,0x130(%rdx)
0x00007f53c510fb73: jmpq 0x00007f53c510fc5c
0x00007f53c510fb78: mov 0x8(%rbx),%edi ; implicit exception: dispatches to 0x00007f53c510ffe0
0x00007f53c510fb7b: shl $0x3,%rdi
0x00007f53c510fb7f: mov 0x8(%rax),%edx
0x00007f53c510fb82: shl $0x3,%rdx
0x00007f53c510fb86: mov 0xe0(%rdi),%rdi
0x00007f53c510fb8d: cmp %rdi,%rdx
0x00007f53c510fb90: je 0x00007f53c510fbbe
0x00007f53c510fb96: mov 0xc(%rdi),%ecx
0x00007f53c510fb99: cmp (%rdx,%rcx,1),%rdi
0x00007f53c510fb9d: je 0x00007f53c510fbbe
0x00007f53c510fba3: cmp $0x18,%ecx
0x00007f53c510fba6: jne 0x00007f53c510fc45
0x00007f53c510fbac: push %rdx
0x00007f53c510fbad: push %rdi
0x00007f53c510fbae: callq 0x00007f53c50fb960 ; {runtime_call}
0x00007f53c510fbb3: pop %rdx
0x00007f53c510fbb4: pop %rdi
0x00007f53c510fbb5: cmp $0x0,%edi
0x00007f53c510fbb8: je 0x00007f53c510fc45
0x00007f53c510fbbe: mov $0x7f53d8a94968,%rdx ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510fbc8: mov 0x8(%rax),%edi
0x00007f53c510fbcb: shl $0x3,%rdi
0x00007f53c510fbcf: cmp 0x140(%rdx),%rdi
0x00007f53c510fbd6: jne 0x00007f53c510fbe5
0x00007f53c510fbd8: addq $0x1,0x148(%rdx)
0x00007f53c510fbe0: jmpq 0x00007f53c510fc5c
0x00007f53c510fbe5: cmp 0x150(%rdx),%rdi
0x00007f53c510fbec: jne 0x00007f53c510fbfb
0x00007f53c510fbee: addq $0x1,0x158(%rdx)
0x00007f53c510fbf6: jmpq 0x00007f53c510fc5c
0x00007f53c510fbfb: cmpq $0x0,0x140(%rdx)
0x00007f53c510fc06: jne 0x00007f53c510fc1f
0x00007f53c510fc08: mov %rdi,0x140(%rdx)
0x00007f53c510fc0f: movq $0x1,0x148(%rdx)
0x00007f53c510fc1a: jmpq 0x00007f53c510fc5c
0x00007f53c510fc1f: cmpq $0x0,0x150(%rdx)
0x00007f53c510fc2a: jne 0x00007f53c510fc43
0x00007f53c510fc2c: mov %rdi,0x150(%rdx)
0x00007f53c510fc33: movq $0x1,0x158(%rdx)
0x00007f53c510fc3e: jmpq 0x00007f53c510fc5c
0x00007f53c510fc43: jmp 0x00007f53c510fc5c
0x00007f53c510fc45: mov $0x7f53d8a94968,%rdx ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510fc4f: subq $0x1,0x138(%rdx)
0x00007f53c510fc57: jmpq 0x00007f53c510ffe5
0x00007f53c510fc5c: mov %rax,%r10
0x00007f53c510fc5f: mov %r10d,(%rsi)
0x00007f53c510fc62: shr $0x9,%rsi
0x00007f53c510fc66: mov $0x7f53d98df000,%rdi
0x00007f53c510fc70: movb $0x0,(%rsi,%rdi,1) ;*aastore
; - test3::main@26 (line 6)
0x00007f53c510fc74: inc %r9d
0x00007f53c510fc77: mov $0x7f53d8a94968,%rsi ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510fc81: mov 0xe0(%rsi),%edi
0x00007f53c510fc87: add $0x8,%edi
0x00007f53c510fc8a: mov %edi,0xe0(%rsi)
0x00007f53c510fc90: mov $0x7f53d8a94388,%rsi ; {metadata({method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510fc9a: and $0xfff8,%edi
0x00007f53c510fca0: cmp $0x0,%edi
0x00007f53c510fca3: je 0x00007f53c510ffee ; OopMap{rbx=Oop off=777}
;*goto
; - test3::main@30 (line 5)
0x00007f53c510fca9: test %eax,0x18961451(%rip) # 0x00007f53dda71100
; {poll}
0x00007f53c510fcaf: mov $0x7f53d8a94968,%rsi ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510fcb9: incl 0x168(%rsi) ;*goto
; - test3::main@30 (line 5)
0x00007f53c510fcbf: cmp %r8d,%r9d
0x00007f53c510fcc2: mov $0x7f53d8a94968,%rdx ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510fccc: mov $0x108,%rsi
0x00007f53c510fcd6: jge 0x00007f53c510fce6
0x00007f53c510fcdc: mov $0x118,%rsi
0x00007f53c510fce6: mov (%rdx,%rsi,1),%rdi
0x00007f53c510fcea: lea 0x1(%rdi),%rdi
0x00007f53c510fcee: mov %rdi,(%rdx,%rsi,1)
0x00007f53c510fcf2: jl 0x00007f53c510fa78 ;*if_icmpge
; - test3::main@13 (line 5)
0x00007f53c510fcf8: mov $0x0,%esi
0x00007f53c510fcfd: mov $0x0,%rdi
0x00007f53c510fd07: jmpq 0x00007f53c510fe15 ;*iload
; - test3::main@38 (line 9)
0x00007f53c510fd0c: nopl 0x0(%rax)
0x00007f53c510fd10: mov $0x0,%eax
0x00007f53c510fd15: jmpq 0x00007f53c510fd86 ;*iload
; - test3::main@49 (line 10)
0x00007f53c510fd1a: nopw 0x0(%rax,%rax,1)
0x00007f53c510fd20: movslq %esi,%rdx
0x00007f53c510fd23: cmp 0xc(%rbx),%esi ; implicit exception: dispatches to 0x00007f53c5110005
0x00007f53c510fd26: jae 0x00007f53c511000f
0x00007f53c510fd2c: mov 0x10(%rbx,%rdx,4),%edx ;*aaload
; - test3::main@61 (line 11)
0x00007f53c510fd30: mov 0xc(%rdx),%edx ;*getfield i
; - test3::main@62 (line 11)
; implicit exception: dispatches to 0x00007f53c5110018
0x00007f53c510fd33: movslq %edx,%rdx
0x00007f53c510fd36: add %rdi,%rdx
0x00007f53c510fd39: inc %eax
0x00007f53c510fd3b: mov $0x7f53d8a94968,%rdi ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510fd45: mov 0xe0(%rdi),%ecx
0x00007f53c510fd4b: add $0x8,%ecx
0x00007f53c510fd4e: mov %ecx,0xe0(%rdi)
0x00007f53c510fd54: mov $0x7f53d8a94388,%rdi ; {metadata({method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510fd5e: and $0xfff8,%ecx
0x00007f53c510fd64: cmp $0x0,%ecx
0x00007f53c510fd67: je 0x00007f53c511001d ; OopMap{rbx=Oop off=973}
;*goto
; - test3::main@71 (line 10)
0x00007f53c510fd6d: test %eax,0x1896138d(%rip) # 0x00007f53dda71100
; {poll}
0x00007f53c510fd73: mov $0x7f53d8a94968,%rdi ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510fd7d: incl 0x1c0(%rdi)
0x00007f53c510fd83: mov %rdx,%rdi ;*goto
; - test3::main@71 (line 10)
0x00007f53c510fd86: mov $0xd6fe0408,%rdx ; {oop(a 'java/lang/Class' = 'test3')}
0x00007f53c510fd90: mov 0x68(%rdx),%edx ;*getstatic MAX
; - test3::main@51 (line 10)
0x00007f53c510fd93: cmp %edx,%eax
0x00007f53c510fd95: mov $0x7f53d8a94968,%rdx ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510fd9f: mov $0x1a0,%rcx
0x00007f53c510fda9: jge 0x00007f53c510fdb9
0x00007f53c510fdaf: mov $0x1b0,%rcx
0x00007f53c510fdb9: mov (%rdx,%rcx,1),%r8
0x00007f53c510fdbd: lea 0x1(%r8),%r8
0x00007f53c510fdc1: mov %r8,(%rdx,%rcx,1)
0x00007f53c510fdc5: jl 0x00007f53c510fd20 ;*if_icmpge
; - test3::main@54 (line 10)
0x00007f53c510fdcb: inc %esi
0x00007f53c510fdcd: mov $0x7f53d8a94968,%rdx ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510fdd7: mov 0xe0(%rdx),%eax
0x00007f53c510fddd: add $0x8,%eax
0x00007f53c510fde0: mov %eax,0xe0(%rdx)
0x00007f53c510fde6: mov $0x7f53d8a94388,%rdx ; {metadata({method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510fdf0: and $0xfff8,%eax
0x00007f53c510fdf6: cmp $0x0,%eax
0x00007f53c510fdf9: je 0x00007f53c5110034 ; OopMap{rbx=Oop off=1119}
;*goto
; - test3::main@77 (line 9)
0x00007f53c510fdff: test %eax,0x189612fb(%rip) # 0x00007f53dda71100
; {poll}
0x00007f53c510fe05: mov $0x7f53d8a94968,%rdx ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510fe0f: incl 0x1d8(%rdx) ;*goto
; - test3::main@77 (line 9)
0x00007f53c510fe15: mov $0xd6fe0408,%rax ; {oop(a 'java/lang/Class' = 'test3')}
0x00007f53c510fe1f: mov 0x68(%rax),%eax ;*getstatic MAX
; - test3::main@40 (line 9)
0x00007f53c510fe22: cmp %eax,%esi
0x00007f53c510fe24: mov $0x7f53d8a94968,%rax ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510fe2e: mov $0x180,%rdx
0x00007f53c510fe38: jge 0x00007f53c510fe48
0x00007f53c510fe3e: mov $0x190,%rdx
0x00007f53c510fe48: mov (%rax,%rdx,1),%rcx
0x00007f53c510fe4c: lea 0x1(%rcx),%rcx
0x00007f53c510fe50: mov %rcx,(%rax,%rdx,1)
0x00007f53c510fe54: jl 0x00007f53c510fd10 ;*if_icmpge
; - test3::main@43 (line 9)
0x00007f53c510fe5a: nopw 0x0(%rax,%rax,1)
0x00007f53c510fe60: jmpq 0x00007f53c51100a0 ; {no_reloc}
0x00007f53c510fe65: add %al,(%rax)
0x00007f53c510fe67: add %al,(%rax)
0x00007f53c510fe69: add %ah,0xf(%rsi)
0x00007f53c510fe6c: (bad)
0x00007f53c510fe6d: add %r8b,(%rax)
0x00007f53c510fe70: jmpq 0x00007f53c51100ba ; implicit exception: dispatches to 0x00007f53c51100aa
0x00007f53c510fe75: nop ;*getstatic out
; - test3::main@80 (line 14)
0x00007f53c510fe76: cmp (%rsi),%rax ; implicit exception: dispatches to 0x00007f53c51100c4
0x00007f53c510fe79: mov %rsi,%rdx
0x00007f53c510fe7c: mov $0x7f53d8a94968,%rbx ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510fe86: mov 0x8(%rdx),%edx
0x00007f53c510fe89: shl $0x3,%rdx
0x00007f53c510fe8d: cmp 0x1f8(%rbx),%rdx
0x00007f53c510fe94: jne 0x00007f53c510fea3
0x00007f53c510fe96: addq $0x1,0x200(%rbx)
0x00007f53c510fe9e: jmpq 0x00007f53c510ff09
0x00007f53c510fea3: cmp 0x208(%rbx),%rdx
0x00007f53c510feaa: jne 0x00007f53c510feb9
0x00007f53c510feac: addq $0x1,0x210(%rbx)
0x00007f53c510feb4: jmpq 0x00007f53c510ff09
0x00007f53c510feb9: cmpq $0x0,0x1f8(%rbx)
0x00007f53c510fec4: jne 0x00007f53c510fedd
0x00007f53c510fec6: mov %rdx,0x1f8(%rbx)
0x00007f53c510fecd: movq $0x1,0x200(%rbx)
0x00007f53c510fed8: jmpq 0x00007f53c510ff09
0x00007f53c510fedd: cmpq $0x0,0x208(%rbx)
0x00007f53c510fee8: jne 0x00007f53c510ff01
0x00007f53c510feea: mov %rdx,0x208(%rbx)
0x00007f53c510fef1: movq $0x1,0x210(%rbx)
0x00007f53c510fefc: jmpq 0x00007f53c510ff09
0x00007f53c510ff01: addq $0x1,0x1f0(%rbx)
0x00007f53c510ff09: mov %rdi,%rdx ;*invokevirtual println
; - test3::main@84 (line 14)
0x00007f53c510ff0c: nop
0x00007f53c510ff0d: mov $0xffffffffffffffff,%rax
0x00007f53c510ff17: callq 0x00007f53c5045f60 ; OopMap{off=1404}
;*invokevirtual println
; - test3::main@84 (line 14)
; {virtual_call}
0x00007f53c510ff1c: add $0x70,%rsp
0x00007f53c510ff20: pop %rbp
0x00007f53c510ff21: test %eax,0x189611d9(%rip) # 0x00007f53dda71100
; {poll_return}
0x00007f53c510ff27: retq ;*return
; - test3::main@87 (line 15)
0x00007f53c510ff28: mov %eax,-0x14000(%rsp)
0x00007f53c510ff2f: push %rbp
0x00007f53c510ff30: sub $0x70,%rsp
0x00007f53c510ff34: mov 0x20(%rsi),%rbx
0x00007f53c510ff38: mov 0x10(%rsi),%rax
0x00007f53c510ff3c: mov 0x8(%rsi),%edx
0x00007f53c510ff3f: mov (%rsi),%ecx
0x00007f53c510ff41: mov %rsi,%rdi
0x00007f53c510ff44: mov %rbx,0x60(%rsp)
0x00007f53c510ff49: mov %rax,0x58(%rsp)
0x00007f53c510ff4e: mov %edx,0x54(%rsp)
0x00007f53c510ff52: mov %ecx,0x50(%rsp)
0x00007f53c510ff56: callq 0x00007f53dc65dea0 ; {runtime_call}
0x00007f53c510ff5b: mov 0x50(%rsp),%ecx
0x00007f53c510ff5f: mov %rcx,%rax
0x00007f53c510ff62: mov 0x54(%rsp),%edx
0x00007f53c510ff66: mov %rdx,%rsi
0x00007f53c510ff69: mov 0x58(%rsp),%rdx
0x00007f53c510ff6e: mov %rdx,%rdi
0x00007f53c510ff71: mov 0x60(%rsp),%rbx
0x00007f53c510ff76: jmpq 0x00007f53c510fd86
0x00007f53c510ff7b: mov %rbx,0x8(%rsp)
0x00007f53c510ff80: movq $0xffffffffffffffff,(%rsp)
0x00007f53c510ff88: callq 0x00007f53c50fd820 ; OopMap{rsi=Oop off=1517}
;*synchronization entry
; - test3::main@-1 (line 4)
; {runtime_call}
0x00007f53c510ff8d: jmpq 0x00007f53c510f9de
0x00007f53c510ff92: callq 0x00007f53c50fa860 ; OopMap{off=1527}
;*anewarray
; - test3::main@3 (line 4)
; {runtime_call}
0x00007f53c510ff97: jmpq 0x00007f53c510fa66
0x00007f53c510ff9c: mov %rdx,%rdx
0x00007f53c510ff9f: callq 0x00007f53c50f9b20 ; OopMap{rbx=Oop off=1540}
;*new ; - test3::main@18 (line 6)
; {runtime_call}
0x00007f53c510ffa4: jmpq 0x00007f53c510fab5
0x00007f53c510ffa9: mov %rsi,0x8(%rsp)
0x00007f53c510ffae: movq $0xffffffffffffffff,(%rsp)
0x00007f53c510ffb6: callq 0x00007f53c50fd820 ; OopMap{rbx=Oop rax=Oop off=1563}
;*synchronization entry
; - test3$Node::<init>@-1 (line 18)
; - test3::main@23 (line 6)
; {runtime_call}
0x00007f53c510ffbb: jmpq 0x00007f53c510fafc
0x00007f53c510ffc0: mov %rsi,0x8(%rsp)
0x00007f53c510ffc5: movq $0xffffffffffffffff,(%rsp)
0x00007f53c510ffcd: callq 0x00007f53c50fd820 ; OopMap{rbx=Oop rax=Oop off=1586}
;*synchronization entry
; - java.lang.Object::<init>@-1 (line 37)
; - test3$Node::<init>@1 (line 18)
; - test3::main@23 (line 6)
; {runtime_call}
0x00007f53c510ffd2: jmpq 0x00007f53c510fb43
0x00007f53c510ffd7: mov %r9,(%rsp)
0x00007f53c510ffdb: callq 0x00007f53c506b980 ; OopMap{rbx=Oop rax=Oop off=1600}
;*aastore
; - test3::main@26 (line 6)
; {runtime_call}
0x00007f53c510ffe0: callq 0x00007f53c50f93c0 ; OopMap{rbx=Oop rax=Oop off=1605}
;*aastore
; - test3::main@26 (line 6)
; {runtime_call}
0x00007f53c510ffe5: mov %rax,(%rsp)
0x00007f53c510ffe9: callq 0x00007f53c50fb2c0 ; OopMap{rbx=Oop rax=Oop off=1614}
;*aastore
; - test3::main@26 (line 6)
; {runtime_call}
0x00007f53c510ffee: mov %rsi,0x8(%rsp)
0x00007f53c510fff3: movq $0x1e,(%rsp)
0x00007f53c510fffb: callq 0x00007f53c50fd820 ; OopMap{rbx=Oop off=1632}
;*goto
; - test3::main@30 (line 5)
; {runtime_call}
0x00007f53c5110000: jmpq 0x00007f53c510fca9
0x00007f53c5110005: callq 0x00007f53c50f93c0 ; OopMap{rbx=Oop off=1642}
;*aaload
; - test3::main@61 (line 11)
; {runtime_call}
0x00007f53c511000a: callq 0x00007f53c50f93c0 ; OopMap{rbx=Oop off=1647}
;*aaload
; - test3::main@61 (line 11)
; {runtime_call}
0x00007f53c511000f: mov %rsi,(%rsp)
0x00007f53c5110013: callq 0x00007f53c506b980 ; OopMap{rbx=Oop off=1656}
;*aaload
; - test3::main@61 (line 11)
; {runtime_call}
0x00007f53c5110018: callq 0x00007f53c50f93c0 ; OopMap{rbx=Oop off=1661}
;*getfield i
; - test3::main@62 (line 11)
; {runtime_call}
0x00007f53c511001d: mov %rdi,0x8(%rsp)
0x00007f53c5110022: movq $0x47,(%rsp)
0x00007f53c511002a: callq 0x00007f53c50fd820 ; OopMap{rbx=Oop off=1679}
;*goto
; - test3::main@71 (line 10)
; {runtime_call}
0x00007f53c511002f: jmpq 0x00007f53c510fd6d
0x00007f53c5110034: mov %rdx,0x8(%rsp)
0x00007f53c5110039: movq $0x4d,(%rsp)
0x00007f53c5110041: callq 0x00007f53c50fd820 ; OopMap{rbx=Oop off=1702}
;*goto
; - test3::main@77 (line 9)
; {runtime_call}
0x00007f53c5110046: jmpq 0x00007f53c510fdff
0x00007f53c511004b: mov $0x0,%rdx ; {oop(NULL)}
0x00007f53c5110055: push %rax
0x00007f53c5110056: push %rbx
0x00007f53c5110057: mov 0x48(%rdx),%rbx
0x00007f53c511005b: push %rdi
0x00007f53c511005c: push %rsi
0x00007f53c511005d: push %rdx
0x00007f53c511005e: push %rcx
0x00007f53c511005f: push %r8
0x00007f53c5110061: push %r9
0x00007f53c5110063: push %r10
0x00007f53c5110065: mov %rsp,%r10
0x00007f53c5110068: and $0xfffffffffffffff0,%rsp
0x00007f53c511006c: push %r10
0x00007f53c511006e: push %r11
0x00007f53c5110070: mov $0x1,%edi
0x00007f53c5110075: callq 0x00007f53dcc503e0 ; {runtime_call}
0x00007f53c511007a: pop %r11
0x00007f53c511007c: pop %rsp
0x00007f53c511007d: pop %r10
0x00007f53c511007f: pop %r9
0x00007f53c5110081: pop %r8
0x00007f53c5110083: pop %rcx
0x00007f53c5110084: pop %rdx
0x00007f53c5110085: pop %rsi
0x00007f53c5110086: pop %rdi
0x00007f53c5110087: cmp 0x108(%rbx),%rax
0x00007f53c511008e: pop %rbx
0x00007f53c511008f: pop %rax
0x00007f53c5110090: jne 0x00007f53c51100a0
0x00007f53c5110096: jmpq 0x00007f53c510fe6a
0x00007f53c511009b: mov $0xa4b5500,%eax
0x00007f53c51100a0: callq 0x00007f53c50fcc20 ; OopMap{off=1797}
;*getstatic out
; - test3::main@80 (line 14)
; {runtime_call}
0x00007f53c51100a5: jmpq 0x00007f53c510fe60
0x00007f53c51100aa: callq 0x00007f53c50f93c0 ; OopMap{rdx=Oop off=1807}
;*getstatic out
; - test3::main@80 (line 14)
; {runtime_call}
0x00007f53c51100af: mov 0x0(%rdx),%esi
0x00007f53c51100b5: mov $0x6050b00,%eax
0x00007f53c51100ba: callq 0x00007f53c50fc420 ; OopMap{rdx=Oop off=1823}
;*getstatic out
; - test3::main@80 (line 14)
; {runtime_call}
0x00007f53c51100bf: jmpq 0x00007f53c510fe70
0x00007f53c51100c4: callq 0x00007f53c50f93c0 ; OopMap{rsi=Oop off=1833}
;*invokevirtual println
; - test3::main@84 (line 14)
; {runtime_call}
0x00007f53c51100c9: nop
0x00007f53c51100ca: nop
0x00007f53c51100cb: mov 0x290(%r15),%rax
0x00007f53c51100d2: mov $0x0,%r10
0x00007f53c51100dc: mov %r10,0x290(%r15)
0x00007f53c51100e3: mov $0x0,%r10
0x00007f53c51100ed: mov %r10,0x298(%r15)
0x00007f53c51100f4: add $0x70,%rsp
0x00007f53c51100f8: pop %rbp
0x00007f53c51100f9: jmpq 0x00007f53c506be20 ; {runtime_call}
0x00007f53c51100fe: hlt
0x00007f53c51100ff: hlt
[Stub Code]
0x00007f53c5110100: nop ; {no_reloc}
0x00007f53c5110101: nop
0x00007f53c5110102: nop
0x00007f53c5110103: nop
0x00007f53c5110104: nop
0x00007f53c5110105: mov $0x0,%rbx ; {static_stub}
0x00007f53c511010f: jmpq 0x00007f53c511010f ; {runtime_call}
[Exception Handler]
0x00007f53c5110114: callq 0x00007f53c50fb1a0 ; {runtime_call}
0x00007f53c5110119: mov %rsp,-0x28(%rsp)
0x00007f53c511011e: sub $0x80,%rsp
0x00007f53c5110125: mov %rax,0x78(%rsp)
0x00007f53c511012a: mov %rcx,0x70(%rsp)
0x00007f53c511012f: mov %rdx,0x68(%rsp)
0x00007f53c5110134: mov %rbx,0x60(%rsp)
0x00007f53c5110139: mov %rbp,0x50(%rsp)
0x00007f53c511013e: mov %rsi,0x48(%rsp)
0x00007f53c5110143: mov %rdi,0x40(%rsp)
0x00007f53c5110148: mov %r8,0x38(%rsp)
0x00007f53c511014d: mov %r9,0x30(%rsp)
0x00007f53c5110152: mov %r10,0x28(%rsp)
0x00007f53c5110157: mov %r11,0x20(%rsp)
0x00007f53c511015c: mov %r12,0x18(%rsp)
0x00007f53c5110161: mov %r13,0x10(%rsp)
0x00007f53c5110166: mov %r14,0x8(%rsp)
0x00007f53c511016b: mov %r15,(%rsp)
0x00007f53c511016f: mov $0x7f53dc77efbe,%rdi ; {external_word}
0x00007f53c5110179: mov $0x7f53c5110119,%rsi ; {internal_word}
0x00007f53c5110183: mov %rsp,%rdx
0x00007f53c5110186: and $0xfffffffffffffff0,%rsp
0x00007f53c511018a: callq 0x00007f53dc4de0b0 ; {runtime_call}
0x00007f53c511018f: hlt
[Deopt Handler Code]
0x00007f53c5110190: mov $0x7f53c5110190,%r10 ; {section_word}
0x00007f53c511019a: push %r10
0x00007f53c511019c: jmpq 0x00007f53c5047100 ; {runtime_call}
0x00007f53c51101a1: hlt
0x00007f53c51101a2: hlt
0x00007f53c51101a3: hlt
0x00007f53c51101a4: hlt
0x00007f53c51101a5: hlt
0x00007f53c51101a6: hlt
0x00007f53c51101a7: hlt
OopMapSet contains 23 OopMaps
#0
OopMap{rbx=Oop off=777}
#1
OopMap{rbx=Oop off=973}
#2
OopMap{rbx=Oop off=1119}
#3
OopMap{off=1404}
#4
OopMap{rsi=Oop off=1517}
#5
OopMap{off=1527}
#6
OopMap{rbx=Oop off=1540}
#7
OopMap{rbx=Oop rax=Oop off=1563}
#8
OopMap{rbx=Oop rax=Oop off=1586}
#9
OopMap{rbx=Oop rax=Oop off=1600}
#10
OopMap{rbx=Oop rax=Oop off=1605}
#11
OopMap{rbx=Oop rax=Oop off=1614}
#12
OopMap{rbx=Oop off=1632}
#13
OopMap{rbx=Oop off=1642}
#14
OopMap{rbx=Oop off=1647}
#15
OopMap{rbx=Oop off=1656}
#16
OopMap{rbx=Oop off=1661}
#17
OopMap{rbx=Oop off=1679}
#18
OopMap{rbx=Oop off=1702}
#19
OopMap{off=1797}
#20
OopMap{rdx=Oop off=1807}
#21
OopMap{rdx=Oop off=1823}
#22
OopMap{rsi=Oop off=1833}
Compiled method (c1) 52 21 3 test3::main (88 bytes)
total in heap [0x00007f53c510ea10,0x00007f53c510f7b0] = 3488
relocation [0x00007f53c510eb38,0x00007f53c510ebd8] = 160
main code [0x00007f53c510ebe0,0x00007f53c510f2e0] = 1792
stub code [0x00007f53c510f2e0,0x00007f53c510f388] = 168
oops [0x00007f53c510f388,0x00007f53c510f390] = 8
metadata [0x00007f53c510f390,0x00007f53c510f3a8] = 24
scopes data [0x00007f53c510f3a8,0x00007f53c510f4f0] = 328
scopes pcs [0x00007f53c510f4f0,0x00007f53c510f780] = 656
dependencies [0x00007f53c510f780,0x00007f53c510f788] = 8
nul chk table [0x00007f53c510f788,0x00007f53c510f7b0] = 40
Decoding compiled method 0x00007f53c510ea10:
Code:
[Entry Point]
[Verified Entry Point]
[Constants]
# {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3'
# parm0: rsi:rsi = '[Ljava/lang/String;'
# [sp+0x70] (sp of caller)
0x00007f53c510ebe0: mov %eax,-0x14000(%rsp)
0x00007f53c510ebe7: push %rbp
0x00007f53c510ebe8: sub $0x60,%rsp
0x00007f53c510ebec: mov $0x7f53d8a94968,%rbx ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510ebf6: mov 0xdc(%rbx),%edx
0x00007f53c510ebfc: add $0x8,%edx
0x00007f53c510ebff: mov %edx,0xdc(%rbx)
0x00007f53c510ec05: mov $0x7f53d8a94388,%rbx ; {metadata({method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510ec0f: and $0x1ff8,%edx
0x00007f53c510ec15: cmp $0x0,%edx
0x00007f53c510ec18: je 0x00007f53c510f158
0x00007f53c510ec1e: mov $0xd6fe0408,%rbx ; {oop(a 'java/lang/Class' = 'test3')}
0x00007f53c510ec28: mov 0x68(%rbx),%r8d ;*getstatic MAX
; - test3::main@0 (line 4)
0x00007f53c510ec2c: mov %r8,%rbx
0x00007f53c510ec2f: mov $0x1000603e8,%rdx ; {metadata('test3$Node'[])}
0x00007f53c510ec39: movslq %ebx,%rbx
0x00007f53c510ec3c: mov %rbx,%rdi
0x00007f53c510ec3f: cmp $0xffffff,%rbx
0x00007f53c510ec46: ja 0x00007f53c510f16f
0x00007f53c510ec4c: mov $0x17,%rsi
0x00007f53c510ec56: lea (%rsi,%rbx,4),%rsi
0x00007f53c510ec5a: and $0xfffffffffffffff8,%rsi
0x00007f53c510ec5e: mov 0x60(%r15),%rax
0x00007f53c510ec62: lea (%rax,%rsi,1),%rsi
0x00007f53c510ec66: cmp 0x70(%r15),%rsi
0x00007f53c510ec6a: ja 0x00007f53c510f16f
0x00007f53c510ec70: mov %rsi,0x60(%r15)
0x00007f53c510ec74: sub %rax,%rsi
0x00007f53c510ec77: movq $0x1,(%rax)
0x00007f53c510ec7e: mov %rdx,%rcx
0x00007f53c510ec81: shr $0x3,%rcx
0x00007f53c510ec85: mov %ecx,0x8(%rax)
0x00007f53c510ec88: mov %ebx,0xc(%rax)
0x00007f53c510ec8b: sub $0x10,%rsi
0x00007f53c510ec8f: je 0x00007f53c510eca6
0x00007f53c510ec95: xor %rbx,%rbx
0x00007f53c510ec98: shr $0x3,%rsi
0x00007f53c510ec9c: mov %rbx,0x8(%rax,%rsi,8)
0x00007f53c510eca1: dec %rsi
0x00007f53c510eca4: jne 0x00007f53c510ec9c
0x00007f53c510eca6: mov %rax,%rbx ;*anewarray
; - test3::main@3 (line 4)
0x00007f53c510eca9: mov $0x0,%r9d
0x00007f53c510ecaf: jmpq 0x00007f53c510eeff ;*iload_2
; - test3::main@9 (line 5)
0x00007f53c510ecb4: nopl 0x0(%rax)
0x00007f53c510ecb8: mov $0x100060208,%rdx ; {metadata('test3$Node')}
0x00007f53c510ecc2: mov 0x60(%r15),%rax
0x00007f53c510ecc6: lea 0x10(%rax),%rdi
0x00007f53c510ecca: cmp 0x70(%r15),%rdi
0x00007f53c510ecce: ja 0x00007f53c510f179
0x00007f53c510ecd4: mov %rdi,0x60(%r15)
0x00007f53c510ecd8: mov 0xa8(%rdx),%rcx
0x00007f53c510ecdf: mov %rcx,(%rax)
0x00007f53c510ece2: mov %rdx,%rcx
0x00007f53c510ece5: shr $0x3,%rcx
0x00007f53c510ece9: mov %ecx,0x8(%rax)
0x00007f53c510ecec: xor %rcx,%rcx
0x00007f53c510ecef: mov %ecx,0xc(%rax)
0x00007f53c510ecf2: xor %rcx,%rcx ;*new ; - test3::main@18 (line 6)
0x00007f53c510ecf5: mov %rax,%rdx
0x00007f53c510ecf8: mov $0x7f53d8a94968,%rsi ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510ed02: addq $0x1,0x128(%rsi)
0x00007f53c510ed0a: mov $0x7f53d8a94830,%rdx ; {metadata(method data for {method} {0x00007f53d8a94750} '<init>' '(I)V' in 'test3$Node')}
0x00007f53c510ed14: mov 0xdc(%rdx),%esi
0x00007f53c510ed1a: add $0x8,%esi
0x00007f53c510ed1d: mov %esi,0xdc(%rdx)
0x00007f53c510ed23: mov $0x7f53d8a94750,%rdx ; {metadata({method} {0x00007f53d8a94750} '<init>' '(I)V' in 'test3$Node')}
0x00007f53c510ed2d: and $0x7ffff8,%esi
0x00007f53c510ed33: cmp $0x0,%esi
0x00007f53c510ed36: je 0x00007f53c510f186
0x00007f53c510ed3c: mov %rax,%rdx
0x00007f53c510ed3f: mov $0x7f53d8a94830,%rsi ; {metadata(method data for {method} {0x00007f53d8a94750} '<init>' '(I)V' in 'test3$Node')}
0x00007f53c510ed49: addq $0x1,0x108(%rsi)
0x00007f53c510ed51: mov $0x7f53d88081b0,%rdx ; {metadata(method data for {method} {0x00007f53d8694480} '<init>' '()V' in 'java/lang/Object')}
0x00007f53c510ed5b: mov 0xdc(%rdx),%esi
0x00007f53c510ed61: add $0x8,%esi
0x00007f53c510ed64: mov %esi,0xdc(%rdx)
0x00007f53c510ed6a: mov $0x7f53d8694480,%rdx ; {metadata({method} {0x00007f53d8694480} '<init>' '()V' in 'java/lang/Object')}
0x00007f53c510ed74: and $0x7ffff8,%esi
0x00007f53c510ed7a: cmp $0x0,%esi
0x00007f53c510ed7d: je 0x00007f53c510f19d
0x00007f53c510ed83: mov %r9d,0xc(%rax) ;*putfield i
; - test3$Node::<init>@6 (line 18)
; - test3::main@23 (line 6)
0x00007f53c510ed87: movslq %r9d,%rdx
0x00007f53c510ed8a: lea 0x10(%rbx,%rdx,4),%rdx
0x00007f53c510ed8f: cmp 0xc(%rbx),%r9d
0x00007f53c510ed93: jae 0x00007f53c510f1b4
0x00007f53c510ed99: cmp $0x0,%rax
0x00007f53c510ed9d: jne 0x00007f53c510edb8
0x00007f53c510ed9f: mov $0x7f53d8a94968,%rdi ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510eda9: orl $0x100,0x130(%rdi)
0x00007f53c510edb3: jmpq 0x00007f53c510ee9c
0x00007f53c510edb8: mov 0x8(%rbx),%esi ; implicit exception: dispatches to 0x00007f53c510f1bd
0x00007f53c510edbb: shl $0x3,%rsi
0x00007f53c510edbf: mov 0x8(%rax),%edi
0x00007f53c510edc2: shl $0x3,%rdi
0x00007f53c510edc6: mov 0xe0(%rsi),%rsi
0x00007f53c510edcd: cmp %rsi,%rdi
0x00007f53c510edd0: je 0x00007f53c510edfe
0x00007f53c510edd6: mov 0xc(%rsi),%ecx
0x00007f53c510edd9: cmp (%rdi,%rcx,1),%rsi
0x00007f53c510eddd: je 0x00007f53c510edfe
0x00007f53c510ede3: cmp $0x18,%ecx
0x00007f53c510ede6: jne 0x00007f53c510ee85
0x00007f53c510edec: push %rdi
0x00007f53c510eded: push %rsi
0x00007f53c510edee: callq 0x00007f53c50fb960 ; {runtime_call}
0x00007f53c510edf3: pop %rdi
0x00007f53c510edf4: pop %rsi
0x00007f53c510edf5: cmp $0x0,%esi
0x00007f53c510edf8: je 0x00007f53c510ee85
0x00007f53c510edfe: mov $0x7f53d8a94968,%rdi ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510ee08: mov 0x8(%rax),%esi
0x00007f53c510ee0b: shl $0x3,%rsi
0x00007f53c510ee0f: cmp 0x140(%rdi),%rsi
0x00007f53c510ee16: jne 0x00007f53c510ee25
0x00007f53c510ee18: addq $0x1,0x148(%rdi)
0x00007f53c510ee20: jmpq 0x00007f53c510ee9c
0x00007f53c510ee25: cmp 0x150(%rdi),%rsi
0x00007f53c510ee2c: jne 0x00007f53c510ee3b
0x00007f53c510ee2e: addq $0x1,0x158(%rdi)
0x00007f53c510ee36: jmpq 0x00007f53c510ee9c
0x00007f53c510ee3b: cmpq $0x0,0x140(%rdi)
0x00007f53c510ee46: jne 0x00007f53c510ee5f
0x00007f53c510ee48: mov %rsi,0x140(%rdi)
0x00007f53c510ee4f: movq $0x1,0x148(%rdi)
0x00007f53c510ee5a: jmpq 0x00007f53c510ee9c
0x00007f53c510ee5f: cmpq $0x0,0x150(%rdi)
0x00007f53c510ee6a: jne 0x00007f53c510ee83
0x00007f53c510ee6c: mov %rsi,0x150(%rdi)
0x00007f53c510ee73: movq $0x1,0x158(%rdi)
0x00007f53c510ee7e: jmpq 0x00007f53c510ee9c
0x00007f53c510ee83: jmp 0x00007f53c510ee9c
0x00007f53c510ee85: mov $0x7f53d8a94968,%rdi ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510ee8f: subq $0x1,0x138(%rdi)
0x00007f53c510ee97: jmpq 0x00007f53c510f1c2
0x00007f53c510ee9c: mov %rax,%r10
0x00007f53c510ee9f: mov %r10d,(%rdx)
0x00007f53c510eea2: shr $0x9,%rdx
0x00007f53c510eea6: mov $0x7f53d98df000,%rsi
0x00007f53c510eeb0: movb $0x0,(%rdx,%rsi,1) ;*aastore
; - test3::main@26 (line 6)
0x00007f53c510eeb4: inc %r9d
0x00007f53c510eeb7: mov $0x7f53d8a94968,%rdx ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510eec1: mov 0xe0(%rdx),%esi
0x00007f53c510eec7: add $0x8,%esi
0x00007f53c510eeca: mov %esi,0xe0(%rdx)
0x00007f53c510eed0: mov $0x7f53d8a94388,%rdx ; {metadata({method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510eeda: and $0xfff8,%esi
0x00007f53c510eee0: cmp $0x0,%esi
0x00007f53c510eee3: je 0x00007f53c510f1cb ; OopMap{rbx=Oop off=777}
;*goto
; - test3::main@30 (line 5)
0x00007f53c510eee9: test %eax,0x18962211(%rip) # 0x00007f53dda71100
; {poll}
0x00007f53c510eeef: mov $0x7f53d8a94968,%rdx ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510eef9: incl 0x168(%rdx) ;*goto
; - test3::main@30 (line 5)
0x00007f53c510eeff: cmp %r8d,%r9d
0x00007f53c510ef02: mov $0x7f53d8a94968,%rdx ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510ef0c: mov $0x108,%rsi
0x00007f53c510ef16: jge 0x00007f53c510ef26
0x00007f53c510ef1c: mov $0x118,%rsi
0x00007f53c510ef26: mov (%rdx,%rsi,1),%rdi
0x00007f53c510ef2a: lea 0x1(%rdi),%rdi
0x00007f53c510ef2e: mov %rdi,(%rdx,%rsi,1)
0x00007f53c510ef32: jl 0x00007f53c510ecb8 ;*if_icmpge
; - test3::main@13 (line 5)
0x00007f53c510ef38: mov $0x0,%edx
0x00007f53c510ef3d: mov $0x0,%rsi
0x00007f53c510ef47: jmpq 0x00007f53c510f049 ;*iload
; - test3::main@38 (line 9)
0x00007f53c510ef4c: nopl 0x0(%rax)
0x00007f53c510ef50: mov $0x0,%edi
0x00007f53c510ef55: jmpq 0x00007f53c510efc6 ;*iload
; - test3::main@49 (line 10)
0x00007f53c510ef5a: nopw 0x0(%rax,%rax,1)
0x00007f53c510ef60: movslq %edx,%rax
0x00007f53c510ef63: cmp 0xc(%rbx),%edx
0x00007f53c510ef66: jae 0x00007f53c510f1e2
0x00007f53c510ef6c: mov 0x10(%rbx,%rax,4),%eax ;*aaload
; - test3::main@61 (line 11)
0x00007f53c510ef70: mov 0xc(%rax),%eax ;*getfield i
; - test3::main@62 (line 11)
; implicit exception: dispatches to 0x00007f53c510f1eb
0x00007f53c510ef73: movslq %eax,%rax
0x00007f53c510ef76: add %rsi,%rax
0x00007f53c510ef79: inc %edi
0x00007f53c510ef7b: mov $0x7f53d8a94968,%rsi ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510ef85: mov 0xe0(%rsi),%ecx
0x00007f53c510ef8b: add $0x8,%ecx
0x00007f53c510ef8e: mov %ecx,0xe0(%rsi)
0x00007f53c510ef94: mov $0x7f53d8a94388,%rsi ; {metadata({method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510ef9e: and $0xfff8,%ecx
0x00007f53c510efa4: cmp $0x0,%ecx
0x00007f53c510efa7: je 0x00007f53c510f1f0 ; OopMap{rbx=Oop off=973}
;*goto
; - test3::main@71 (line 10)
0x00007f53c510efad: test %eax,0x1896214d(%rip) # 0x00007f53dda71100
; {poll}
0x00007f53c510efb3: mov $0x7f53d8a94968,%rsi ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510efbd: incl 0x1c0(%rsi)
0x00007f53c510efc3: mov %rax,%rsi ;*goto
; - test3::main@71 (line 10)
0x00007f53c510efc6: cmp %r8d,%edi
0x00007f53c510efc9: mov $0x7f53d8a94968,%rax ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510efd3: mov $0x1a0,%rcx
0x00007f53c510efdd: jge 0x00007f53c510efed
0x00007f53c510efe3: mov $0x1b0,%rcx
0x00007f53c510efed: mov (%rax,%rcx,1),%r9
0x00007f53c510eff1: lea 0x1(%r9),%r9
0x00007f53c510eff5: mov %r9,(%rax,%rcx,1)
0x00007f53c510eff9: jl 0x00007f53c510ef60 ;*if_icmpge
; - test3::main@54 (line 10)
0x00007f53c510efff: inc %edx
0x00007f53c510f001: mov $0x7f53d8a94968,%rdi ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510f00b: mov 0xe0(%rdi),%eax
0x00007f53c510f011: add $0x8,%eax
0x00007f53c510f014: mov %eax,0xe0(%rdi)
0x00007f53c510f01a: mov $0x7f53d8a94388,%rdi ; {metadata({method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510f024: and $0xfff8,%eax
0x00007f53c510f02a: cmp $0x0,%eax
0x00007f53c510f02d: je 0x00007f53c510f207 ; OopMap{rbx=Oop off=1107}
;*goto
; - test3::main@77 (line 9)
0x00007f53c510f033: test %eax,0x189620c7(%rip) # 0x00007f53dda71100
; {poll}
0x00007f53c510f039: mov $0x7f53d8a94968,%rdi ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510f043: incl 0x1d8(%rdi) ;*goto
; - test3::main@77 (line 9)
0x00007f53c510f049: cmp %r8d,%edx
0x00007f53c510f04c: mov $0x7f53d8a94968,%rdi ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510f056: mov $0x180,%rax
0x00007f53c510f060: jge 0x00007f53c510f070
0x00007f53c510f066: mov $0x190,%rax
0x00007f53c510f070: mov (%rdi,%rax,1),%rcx
0x00007f53c510f074: lea 0x1(%rcx),%rcx
0x00007f53c510f078: mov %rcx,(%rdi,%rax,1)
0x00007f53c510f07c: jl 0x00007f53c510ef50 ;*if_icmpge
; - test3::main@43 (line 9)
0x00007f53c510f082: nopw 0x0(%rax,%rax,1)
0x00007f53c510f088: jmpq 0x00007f53c510f273 ; {no_reloc}
0x00007f53c510f08d: add %al,(%rax)
0x00007f53c510f08f: add %al,(%rax)
0x00007f53c510f091: add %ah,0xf(%rsi)
0x00007f53c510f094: (bad)
0x00007f53c510f095: add %r8b,(%rax)
0x00007f53c510f098: jmpq 0x00007f53c510f28d ; implicit exception: dispatches to 0x00007f53c510f27d
0x00007f53c510f09d: nop ;*getstatic out
; - test3::main@80 (line 14)
0x00007f53c510f09e: cmp (%rdi),%rax ; implicit exception: dispatches to 0x00007f53c510f297
0x00007f53c510f0a1: mov %rdi,%rdx
0x00007f53c510f0a4: mov $0x7f53d8a94968,%rbx ; {metadata(method data for {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3')}
0x00007f53c510f0ae: mov 0x8(%rdx),%edx
0x00007f53c510f0b1: shl $0x3,%rdx
0x00007f53c510f0b5: cmp 0x1f8(%rbx),%rdx
0x00007f53c510f0bc: jne 0x00007f53c510f0cb
0x00007f53c510f0be: addq $0x1,0x200(%rbx)
0x00007f53c510f0c6: jmpq 0x00007f53c510f131
0x00007f53c510f0cb: cmp 0x208(%rbx),%rdx
0x00007f53c510f0d2: jne 0x00007f53c510f0e1
0x00007f53c510f0d4: addq $0x1,0x210(%rbx)
0x00007f53c510f0dc: jmpq 0x00007f53c510f131
0x00007f53c510f0e1: cmpq $0x0,0x1f8(%rbx)
0x00007f53c510f0ec: jne 0x00007f53c510f105
0x00007f53c510f0ee: mov %rdx,0x1f8(%rbx)
0x00007f53c510f0f5: movq $0x1,0x200(%rbx)
0x00007f53c510f100: jmpq 0x00007f53c510f131
0x00007f53c510f105: cmpq $0x0,0x208(%rbx)
0x00007f53c510f110: jne 0x00007f53c510f129
0x00007f53c510f112: mov %rdx,0x208(%rbx)
0x00007f53c510f119: movq $0x1,0x210(%rbx)
0x00007f53c510f124: jmpq 0x00007f53c510f131
0x00007f53c510f129: addq $0x1,0x1f0(%rbx)
0x00007f53c510f131: mov %rsi,%rdx
0x00007f53c510f134: mov %rdi,%rsi ;*invokevirtual println
; - test3::main@84 (line 14)
0x00007f53c510f137: nop
0x00007f53c510f138: nop
0x00007f53c510f139: nop
0x00007f53c510f13a: nop
0x00007f53c510f13b: nop
0x00007f53c510f13c: nop
0x00007f53c510f13d: mov $0xffffffffffffffff,%rax
0x00007f53c510f147: callq 0x00007f53c5045f60 ; OopMap{off=1388}
;*invokevirtual println
; - test3::main@84 (line 14)
; {virtual_call}
0x00007f53c510f14c: add $0x60,%rsp
0x00007f53c510f150: pop %rbp
0x00007f53c510f151: test %eax,0x18961fa9(%rip) # 0x00007f53dda71100
; {poll_return}
0x00007f53c510f157: retq
0x00007f53c510f158: mov %rbx,0x8(%rsp)
0x00007f53c510f15d: movq $0xffffffffffffffff,(%rsp)
0x00007f53c510f165: callq 0x00007f53c50fd820 ; OopMap{rsi=Oop off=1418}
;*synchronization entry
; - test3::main@-1 (line 4)
; {runtime_call}
0x00007f53c510f16a: jmpq 0x00007f53c510ec1e
0x00007f53c510f16f: callq 0x00007f53c50fa860 ; OopMap{off=1428}
;*anewarray
; - test3::main@3 (line 4)
; {runtime_call}
0x00007f53c510f174: jmpq 0x00007f53c510eca6
0x00007f53c510f179: mov %rdx,%rdx
0x00007f53c510f17c: callq 0x00007f53c50f9b20 ; OopMap{rbx=Oop off=1441}
;*new ; - test3::main@18 (line 6)
; {runtime_call}
0x00007f53c510f181: jmpq 0x00007f53c510ecf5
0x00007f53c510f186: mov %rdx,0x8(%rsp)
0x00007f53c510f18b: movq $0xffffffffffffffff,(%rsp)
0x00007f53c510f193: callq 0x00007f53c50fd820 ; OopMap{rbx=Oop rax=Oop off=1464}
;*synchronization entry
; - test3$Node::<init>@-1 (line 18)
; - test3::main@23 (line 6)
; {runtime_call}
0x00007f53c510f198: jmpq 0x00007f53c510ed3c
0x00007f53c510f19d: mov %rdx,0x8(%rsp)
0x00007f53c510f1a2: movq $0xffffffffffffffff,(%rsp)
0x00007f53c510f1aa: callq 0x00007f53c50fd820 ; OopMap{rbx=Oop rax=Oop off=1487}
;*synchronization entry
; - java.lang.Object::<init>@-1 (line 37)
; - test3$Node::<init>@1 (line 18)
; - test3::main@23 (line 6)
; {runtime_call}
0x00007f53c510f1af: jmpq 0x00007f53c510ed83
0x00007f53c510f1b4: mov %r9,(%rsp)
0x00007f53c510f1b8: callq 0x00007f53c506b980 ; OopMap{rbx=Oop rax=Oop off=1501}
;*aastore
; - test3::main@26 (line 6)
; {runtime_call}
0x00007f53c510f1bd: callq 0x00007f53c50f93c0 ; OopMap{rbx=Oop rax=Oop off=1506}
;*aastore
; - test3::main@26 (line 6)
; {runtime_call}
0x00007f53c510f1c2: mov %rax,(%rsp)
0x00007f53c510f1c6: callq 0x00007f53c50fb2c0 ; OopMap{rbx=Oop rax=Oop off=1515}
;*aastore
; - test3::main@26 (line 6)
; {runtime_call}
0x00007f53c510f1cb: mov %rdx,0x8(%rsp)
0x00007f53c510f1d0: movq $0x1e,(%rsp)
0x00007f53c510f1d8: callq 0x00007f53c50fd820 ; OopMap{rbx=Oop off=1533}
;*goto
; - test3::main@30 (line 5)
; {runtime_call}
0x00007f53c510f1dd: jmpq 0x00007f53c510eee9
0x00007f53c510f1e2: mov %rdx,(%rsp)
0x00007f53c510f1e6: callq 0x00007f53c506b980 ; OopMap{rbx=Oop off=1547}
;*aaload
; - test3::main@61 (line 11)
; {runtime_call}
0x00007f53c510f1eb: callq 0x00007f53c50f93c0 ; OopMap{rbx=Oop off=1552}
;*getfield i
; - test3::main@62 (line 11)
; {runtime_call}
0x00007f53c510f1f0: mov %rsi,0x8(%rsp)
0x00007f53c510f1f5: movq $0x47,(%rsp)
0x00007f53c510f1fd: callq 0x00007f53c50fd820 ; OopMap{rbx=Oop off=1570}
;*goto
; - test3::main@71 (line 10)
; {runtime_call}
0x00007f53c510f202: jmpq 0x00007f53c510efad
0x00007f53c510f207: mov %rdi,0x8(%rsp)
0x00007f53c510f20c: movq $0x4d,(%rsp)
0x00007f53c510f214: callq 0x00007f53c50fd820 ; OopMap{rbx=Oop off=1593}
;*goto
; - test3::main@77 (line 9)
; {runtime_call}
0x00007f53c510f219: jmpq 0x00007f53c510f033
0x00007f53c510f21e: mov $0x0,%rdx ; {oop(NULL)}
0x00007f53c510f228: push %rax
0x00007f53c510f229: push %rbx
0x00007f53c510f22a: mov 0x48(%rdx),%rbx
0x00007f53c510f22e: push %rdi
0x00007f53c510f22f: push %rsi
0x00007f53c510f230: push %rdx
0x00007f53c510f231: push %rcx
0x00007f53c510f232: push %r8
0x00007f53c510f234: push %r9
0x00007f53c510f236: push %r10
0x00007f53c510f238: mov %rsp,%r10
0x00007f53c510f23b: and $0xfffffffffffffff0,%rsp
0x00007f53c510f23f: push %r10
0x00007f53c510f241: push %r11
0x00007f53c510f243: mov $0x1,%edi
0x00007f53c510f248: callq 0x00007f53dcc503e0 ; {runtime_call}
0x00007f53c510f24d: pop %r11
0x00007f53c510f24f: pop %rsp
0x00007f53c510f250: pop %r10
0x00007f53c510f252: pop %r9
0x00007f53c510f254: pop %r8
0x00007f53c510f256: pop %rcx
0x00007f53c510f257: pop %rdx
0x00007f53c510f258: pop %rsi
0x00007f53c510f259: pop %rdi
0x00007f53c510f25a: cmp 0x108(%rbx),%rax
0x00007f53c510f261: pop %rbx
0x00007f53c510f262: pop %rax
0x00007f53c510f263: jne 0x00007f53c510f273
0x00007f53c510f269: jmpq 0x00007f53c510f092
0x00007f53c510f26e: mov $0xa4b5500,%eax
0x00007f53c510f273: callq 0x00007f53c50fcc20 ; OopMap{off=1688}
;*getstatic out
; - test3::main@80 (line 14)
; {runtime_call}
0x00007f53c510f278: jmpq 0x00007f53c510f088
0x00007f53c510f27d: callq 0x00007f53c50f93c0 ; OopMap{rdx=Oop off=1698}
;*getstatic out
; - test3::main@80 (line 14)
; {runtime_call}
0x00007f53c510f282: mov 0x0(%rdx),%edi
0x00007f53c510f288: mov $0x6050b00,%eax
0x00007f53c510f28d: callq 0x00007f53c50fc420 ; OopMap{rdx=Oop off=1714}
;*getstatic out
; - test3::main@80 (line 14)
; {runtime_call}
0x00007f53c510f292: jmpq 0x00007f53c510f098
0x00007f53c510f297: callq 0x00007f53c50f93c0 ; OopMap{rdi=Oop off=1724}
;*invokevirtual println
; - test3::main@84 (line 14)
; {runtime_call}
0x00007f53c510f29c: nop
0x00007f53c510f29d: nop
0x00007f53c510f29e: mov 0x290(%r15),%rax
0x00007f53c510f2a5: mov $0x0,%r10
0x00007f53c510f2af: mov %r10,0x290(%r15)
0x00007f53c510f2b6: mov $0x0,%r10
0x00007f53c510f2c0: mov %r10,0x298(%r15)
0x00007f53c510f2c7: add $0x60,%rsp
0x00007f53c510f2cb: pop %rbp
0x00007f53c510f2cc: jmpq 0x00007f53c506be20 ; {runtime_call}
0x00007f53c510f2d1: hlt
0x00007f53c510f2d2: hlt
0x00007f53c510f2d3: hlt
0x00007f53c510f2d4: hlt
0x00007f53c510f2d5: hlt
0x00007f53c510f2d6: hlt
0x00007f53c510f2d7: hlt
0x00007f53c510f2d8: hlt
0x00007f53c510f2d9: hlt
0x00007f53c510f2da: hlt
0x00007f53c510f2db: hlt
0x00007f53c510f2dc: hlt
0x00007f53c510f2dd: hlt
0x00007f53c510f2de: hlt
0x00007f53c510f2df: hlt
[Stub Code]
0x00007f53c510f2e0: nop ; {no_reloc}
0x00007f53c510f2e1: nop
0x00007f53c510f2e2: nop
0x00007f53c510f2e3: nop
0x00007f53c510f2e4: nop
0x00007f53c510f2e5: mov $0x0,%rbx ; {static_stub}
0x00007f53c510f2ef: jmpq 0x00007f53c510f2ef ; {runtime_call}
[Exception Handler]
0x00007f53c510f2f4: callq 0x00007f53c50fb1a0 ; {runtime_call}
0x00007f53c510f2f9: mov %rsp,-0x28(%rsp)
0x00007f53c510f2fe: sub $0x80,%rsp
0x00007f53c510f305: mov %rax,0x78(%rsp)
0x00007f53c510f30a: mov %rcx,0x70(%rsp)
0x00007f53c510f30f: mov %rdx,0x68(%rsp)
0x00007f53c510f314: mov %rbx,0x60(%rsp)
0x00007f53c510f319: mov %rbp,0x50(%rsp)
0x00007f53c510f31e: mov %rsi,0x48(%rsp)
0x00007f53c510f323: mov %rdi,0x40(%rsp)
0x00007f53c510f328: mov %r8,0x38(%rsp)
0x00007f53c510f32d: mov %r9,0x30(%rsp)
0x00007f53c510f332: mov %r10,0x28(%rsp)
0x00007f53c510f337: mov %r11,0x20(%rsp)
0x00007f53c510f33c: mov %r12,0x18(%rsp)
0x00007f53c510f341: mov %r13,0x10(%rsp)
0x00007f53c510f346: mov %r14,0x8(%rsp)
0x00007f53c510f34b: mov %r15,(%rsp)
0x00007f53c510f34f: mov $0x7f53dc77efbe,%rdi ; {external_word}
0x00007f53c510f359: mov $0x7f53c510f2f9,%rsi ; {internal_word}
0x00007f53c510f363: mov %rsp,%rdx
0x00007f53c510f366: and $0xfffffffffffffff0,%rsp
0x00007f53c510f36a: callq 0x00007f53dc4de0b0 ; {runtime_call}
0x00007f53c510f36f: hlt
[Deopt Handler Code]
0x00007f53c510f370: mov $0x7f53c510f370,%r10 ; {section_word}
0x00007f53c510f37a: push %r10
0x00007f53c510f37c: jmpq 0x00007f53c5047100 ; {runtime_call}
0x00007f53c510f381: hlt
0x00007f53c510f382: hlt
0x00007f53c510f383: hlt
0x00007f53c510f384: hlt
0x00007f53c510f385: hlt
0x00007f53c510f386: hlt
0x00007f53c510f387: hlt
OopMapSet contains 21 OopMaps
#0
OopMap{rbx=Oop off=777}
#1
OopMap{rbx=Oop off=973}
#2
OopMap{rbx=Oop off=1107}
#3
OopMap{off=1388}
#4
OopMap{rsi=Oop off=1418}
#5
OopMap{off=1428}
#6
OopMap{rbx=Oop off=1441}
#7
OopMap{rbx=Oop rax=Oop off=1464}
#8
OopMap{rbx=Oop rax=Oop off=1487}
#9
OopMap{rbx=Oop rax=Oop off=1501}
#10
OopMap{rbx=Oop rax=Oop off=1506}
#11
OopMap{rbx=Oop rax=Oop off=1515}
#12
OopMap{rbx=Oop off=1533}
#13
OopMap{rbx=Oop off=1547}
#14
OopMap{rbx=Oop off=1552}
#15
OopMap{rbx=Oop off=1570}
#16
OopMap{rbx=Oop off=1593}
#17
OopMap{off=1688}
#18
OopMap{rdx=Oop off=1698}
#19
OopMap{rdx=Oop off=1714}
#20
OopMap{rdi=Oop off=1724}
Compiled method (c2) 92 22 % 4 test3::main @ 49 (88 bytes)
total in heap [0x00007f53c5114390,0x00007f53c5114ac8] = 1848
relocation [0x00007f53c51144b8,0x00007f53c51144e0] = 40
main code [0x00007f53c51144e0,0x00007f53c5114720] = 576
stub code [0x00007f53c5114720,0x00007f53c5114738] = 24
oops [0x00007f53c5114738,0x00007f53c5114740] = 8
metadata [0x00007f53c5114740,0x00007f53c5114758] = 24
scopes data [0x00007f53c5114758,0x00007f53c5114808] = 176
scopes pcs [0x00007f53c5114808,0x00007f53c5114a68] = 608
dependencies [0x00007f53c5114a68,0x00007f53c5114a70] = 8
nul chk table [0x00007f53c5114a70,0x00007f53c5114ac8] = 88
Decoding compiled method 0x00007f53c5114390:
Code:
[Entry Point]
[Verified Entry Point]
[Constants]
# {method} {0x00007f53d8a94388} 'main' '([Ljava/lang/String;)V' in 'test3'
0x00007f53c51144e0: callq 0x00007f53dc5b3fb0 ; {runtime_call}
0x00007f53c51144e5: nopw 0x0(%rax,%rax,1)
0x00007f53c51144f0: mov %eax,-0x14000(%rsp)
0x00007f53c51144f7: push %rbp
0x00007f53c51144f8: sub $0x30,%rsp
0x00007f53c51144fc: mov (%rsi),%r14d
0x00007f53c51144ff: mov 0x20(%rsi),%rbx
0x00007f53c5114503: mov 0x10(%rsi),%r13
0x00007f53c5114507: mov 0x8(%rsi),%ebp
0x00007f53c511450a: mov %rsi,%rdi
0x00007f53c511450d: mov $0x7f53dc65dea0,%r10
0x00007f53c5114517: callq *%r10
0x00007f53c511451a: test %rbx,%rbx
0x00007f53c511451d: je 0x00007f53c511466c
0x00007f53c5114523: mov 0x8(%rbx),%r11d
0x00007f53c5114527: cmp $0x2000c07d,%r11d ; {metadata('test3$Node'[])}
0x00007f53c511452e: jne 0x00007f53c51146b5 ;*iload
; - test3::main@49 (line 10)
0x00007f53c5114534: mov %rbx,%rsi
0x00007f53c5114537: add $0xc,%rsi ;*aaload
; - test3::main@61 (line 11)
0x00007f53c511453b: mov $0xd6fe0408,%r10 ; {oop(a 'java/lang/Class' = 'test3')}
0x00007f53c5114545: mov 0x68(%r10),%r10d ;*getstatic MAX
; - test3::main@51 (line 10)
0x00007f53c5114549: mov %r10d,%r9d
0x00007f53c511454c: add $0xfffffffffffffff9,%r9d
0x00007f53c5114550: mov $0x80000000,%r8d
0x00007f53c5114556: cmp %r9d,%r10d
0x00007f53c5114559: cmovl %r8d,%r9d
0x00007f53c511455d: mov %r9d,(%rsp)
0x00007f53c5114561: jmpq 0x00007f53c5114635
0x00007f53c5114566: nopw 0x0(%rax,%rax,1)
0x00007f53c5114570: mov %rax,%r13
0x00007f53c5114573: vmovq %xmm0,%rsi
0x00007f53c5114578: vmovd %xmm2,%r10d
0x00007f53c511457d: mov 0x10(%rbx,%rbp,4),%r11d ;*aaload
; - test3::main@61 (line 11)
0x00007f53c5114582: mov 0xc(%r11),%r9d ;*getfield i
; - test3::main@62 (line 11)
; implicit exception: dispatches to 0x00007f53c51146f5
0x00007f53c5114586: mov 0x10(%rbx,%rbp,4),%r8d ;*aaload
; - test3::main@61 (line 11)
0x00007f53c511458b: mov 0xc(%r8),%r8d ;*getfield i
; - test3::main@62 (line 11)
; implicit exception: dispatches to 0x00007f53c51146f5
0x00007f53c511458f: mov 0x10(%rbx,%rbp,4),%r11d ;*aaload
; - test3::main@61 (line 11)
0x00007f53c5114594: mov 0xc(%r11),%edi ;*getfield i
; - test3::main@62 (line 11)
; implicit exception: dispatches to 0x00007f53c51146f5
0x00007f53c5114598: mov 0x10(%rbx,%rbp,4),%r11d ;*aaload
; - test3::main@61 (line 11)
0x00007f53c511459d: mov 0xc(%r11),%ecx ;*getfield i
; - test3::main@62 (line 11)
; implicit exception: dispatches to 0x00007f53c51146f5
0x00007f53c51145a1: mov 0x10(%rbx,%rbp,4),%r11d
0x00007f53c51145a6: movslq 0xc(%r11),%rdx ; implicit exception: dispatches to 0x00007f53c51146f5
0x00007f53c51145aa: mov 0x10(%rbx,%rbp,4),%r11d
0x00007f53c51145af: movslq 0xc(%r11),%r11 ; implicit exception: dispatches to 0x00007f53c51146f5
0x00007f53c51145b3: vmovd %r10d,%xmm2
0x00007f53c51145b8: vmovq %rsi,%xmm0
0x00007f53c51145bd: mov 0x10(%rbx,%rbp,4),%r10d
0x00007f53c51145c2: movslq 0xc(%r10),%rsi ; implicit exception: dispatches to 0x00007f53c51146f5
0x00007f53c51145c6: mov 0x10(%rbx,%rbp,4),%r10d ;*aaload
; - test3::main@61 (line 11)
0x00007f53c51145cb: movslq 0xc(%r10),%rax ; implicit exception: dispatches to 0x00007f53c51146f5
0x00007f53c51145cf: movslq %ecx,%r10
0x00007f53c51145d2: movslq %edi,%rcx
0x00007f53c51145d5: movslq %r9d,%r9
0x00007f53c51145d8: add %r13,%r9
0x00007f53c51145db: movslq %r8d,%r8
0x00007f53c51145de: add %r9,%r8
0x00007f53c51145e1: add %r8,%rcx
0x00007f53c51145e4: add %rcx,%r10
0x00007f53c51145e7: add %r10,%rdx
0x00007f53c51145ea: add %rdx,%r11
0x00007f53c51145ed: add %r11,%rsi
0x00007f53c51145f0: add %rsi,%rax ;*ladd
; - test3::main@66 (line 11)
0x00007f53c51145f3: add $0x8,%r14d ;*iinc
; - test3::main@68 (line 10)
0x00007f53c51145f7: cmp (%rsp),%r14d
0x00007f53c51145fb: jl 0x00007f53c5114570 ;*if_icmpge
; - test3::main@54 (line 10)
0x00007f53c5114601: vmovq %xmm0,%rsi
0x00007f53c5114606: vmovd %xmm2,%r10d
0x00007f53c511460b: cmp %r10d,%r14d
0x00007f53c511460e: jge 0x00007f53c5114624
0x00007f53c5114610: mov 0x10(%rbx,%rbp,4),%r11d ;*aaload
; - test3::main@61 (line 11)
0x00007f53c5114615: movslq 0xc(%r11),%r11 ; implicit exception: dispatches to 0x00007f53c51146f5
0x00007f53c5114619: add %r11,%rax ;*ladd
; - test3::main@66 (line 11)
0x00007f53c511461c: inc %r14d ;*iinc
; - test3::main@68 (line 10)
0x00007f53c511461f: cmp %r10d,%r14d
0x00007f53c5114622: jl 0x00007f53c5114610 ;*iload
; - test3::main@49 (line 10)
0x00007f53c5114624: inc %ebp ;*iinc
; - test3::main@74 (line 9)
0x00007f53c5114626: cmp %r10d,%ebp
0x00007f53c5114629: jge 0x00007f53c51146d5 ;*if_icmpge
; - test3::main@43 (line 9)
0x00007f53c511462f: mov %rax,%r13
0x00007f53c5114632: xor %r14d,%r14d ;*iload
; - test3::main@49 (line 10)
0x00007f53c5114635: cmp %r10d,%r14d
0x00007f53c5114638: jge 0x00007f53c5114678 ;*if_icmpge
; - test3::main@54 (line 10)
0x00007f53c511463a: mov %r14d,%r9d
0x00007f53c511463d: inc %r9d
0x00007f53c5114640: test %rbx,%rbx
0x00007f53c5114643: je 0x00007f53c511467d
0x00007f53c5114645: mov (%rsi),%r11d
0x00007f53c5114648: cmp %r11d,%ebp
0x00007f53c511464b: jae 0x00007f53c511468d
0x00007f53c511464d: mov 0x10(%rbx,%rbp,4),%r11d ;*aaload
; - test3::main@61 (line 11)
0x00007f53c5114652: movslq 0xc(%r11),%r11 ; implicit exception: dispatches to 0x00007f53c51146f5
0x00007f53c5114656: add %r11,%r13 ;*ladd
; - test3::main@66 (line 11)
0x00007f53c5114659: inc %r14d ;*iinc
; - test3::main@68 (line 10)
0x00007f53c511465c: cmp %r9d,%r14d
0x00007f53c511465f: jl 0x00007f53c5114640 ;*if_icmpge
; - test3::main@54 (line 10)
0x00007f53c5114661: cmp (%rsp),%r14d
0x00007f53c5114665: jge 0x00007f53c51146ad
0x00007f53c5114667: jmpq 0x00007f53c511457d
0x00007f53c511466c: xor %ebx,%ebx
0x00007f53c511466e: mov $0xc,%esi
0x00007f53c5114673: jmpq 0x00007f53c511453b
0x00007f53c5114678: mov %r13,%rax
0x00007f53c511467b: jmp 0x00007f53c5114624
0x00007f53c511467d: mov $0xfffffff6,%esi
0x00007f53c5114682: nop
0x00007f53c5114683: callq 0x00007f53c5004ee0 ; OopMap{off=424}
;*aaload
; - test3::main@61 (line 11)
; {runtime_call}
0x00007f53c5114688: callq 0x00007f53dc5b3fb0 ; {runtime_call}
0x00007f53c511468d: mov $0xffffffe4,%esi
0x00007f53c5114692: mov %r14d,0x8(%rsp)
0x00007f53c5114697: mov %r13,0x10(%rsp)
0x00007f53c511469c: mov %rbx,0x18(%rsp)
0x00007f53c51146a1: xchg %ax,%ax
0x00007f53c51146a3: callq 0x00007f53c5004ee0 ; OopMap{[24]=Oop off=456}
;*aaload
; - test3::main@61 (line 11)
; {runtime_call}
0x00007f53c51146a8: callq 0x00007f53dc5b3fb0 ;*aaload
; - test3::main@61 (line 11)
; {runtime_call}
0x00007f53c51146ad: mov %r13,%rax
0x00007f53c51146b0: jmpq 0x00007f53c511460b
0x00007f53c51146b5: mov $0xffffff9d,%esi
0x00007f53c51146ba: mov %rbx,(%rsp)
0x00007f53c51146be: mov %r13,0x8(%rsp)
0x00007f53c51146c3: mov %r14d,0x10(%rsp)
0x00007f53c51146c8: xchg %ax,%ax
0x00007f53c51146cb: callq 0x00007f53c5004ee0 ; OopMap{[0]=Oop off=496}
;*iload
; - test3::main@49 (line 10)
; {runtime_call}
0x00007f53c51146d0: callq 0x00007f53dc5b3fb0 ;*if_icmpge
; - test3::main@43 (line 9)
; {runtime_call}
0x00007f53c51146d5: mov $0xffffff65,%esi
0x00007f53c51146da: mov %rbx,(%rsp)
0x00007f53c51146de: mov %rax,0x8(%rsp)
0x00007f53c51146e3: mov %r10d,0x14(%rsp)
0x00007f53c51146e8: xchg %ax,%ax
0x00007f53c51146eb: callq 0x00007f53c5004ee0 ; OopMap{[0]=Oop off=528}
;*if_icmpge
; - test3::main@43 (line 9)
; {runtime_call}
0x00007f53c51146f0: callq 0x00007f53dc5b3fb0 ;*getfield i
; - test3::main@62 (line 11)
; {runtime_call}
0x00007f53c51146f5: mov $0xfffffff6,%esi
0x00007f53c51146fa: nop
0x00007f53c51146fb: callq 0x00007f53c5004ee0 ; OopMap{off=544}
;*getfield i
; - test3::main@62 (line 11)
; {runtime_call}
0x00007f53c5114700: callq 0x00007f53dc5b3fb0 ;*getfield i
; - test3::main@62 (line 11)
; {runtime_call}
0x00007f53c5114705: hlt
0x00007f53c5114706: hlt
0x00007f53c5114707: hlt
0x00007f53c5114708: hlt
0x00007f53c5114709: hlt
0x00007f53c511470a: hlt
0x00007f53c511470b: hlt
0x00007f53c511470c: hlt
0x00007f53c511470d: hlt
0x00007f53c511470e: hlt
0x00007f53c511470f: hlt
0x00007f53c5114710: hlt
0x00007f53c5114711: hlt
0x00007f53c5114712: hlt
0x00007f53c5114713: hlt
0x00007f53c5114714: hlt
0x00007f53c5114715: hlt
0x00007f53c5114716: hlt
0x00007f53c5114717: hlt
0x00007f53c5114718: hlt
0x00007f53c5114719: hlt
0x00007f53c511471a: hlt
0x00007f53c511471b: hlt
0x00007f53c511471c: hlt
0x00007f53c511471d: hlt
0x00007f53c511471e: hlt
0x00007f53c511471f: hlt
[Exception Handler]
[Stub Code]
0x00007f53c5114720: jmpq 0x00007f53c506c0e0 ; {no_reloc}
[Deopt Handler Code]
0x00007f53c5114725: callq 0x00007f53c511472a
0x00007f53c511472a: subq $0x5,(%rsp)
0x00007f53c511472f: jmpq 0x00007f53c5047100 ; {runtime_call}
0x00007f53c5114734: hlt
0x00007f53c5114735: hlt
0x00007f53c5114736: hlt
0x00007f53c5114737: hlt
OopMapSet contains 5 OopMaps
#0
OopMap{off=424}
#1
OopMap{[24]=Oop off=456}
#2
OopMap{[0]=Oop off=496}
#3
OopMap{[0]=Oop off=528}
#4
OopMap{off=544}
499995000000000
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment