Created
May 27, 2016 04:56
-
-
Save cberner/b97cc27dcc1160061bdfd204943c883b to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Compiled method (c2) 362 311 4 io.airlift.slice.Junk::rawArrayAccess (24 bytes) | |
total in heap [0x000000010f53af90,0x000000010f53b420] = 1168 | |
relocation [0x000000010f53b0b8,0x000000010f53b0c8] = 16 | |
main code [0x000000010f53b0e0,0x000000010f53b260] = 384 | |
stub code [0x000000010f53b260,0x000000010f53b278] = 24 | |
oops [0x000000010f53b278,0x000000010f53b280] = 8 | |
metadata [0x000000010f53b280,0x000000010f53b288] = 8 | |
scopes data [0x000000010f53b288,0x000000010f53b2d8] = 80 | |
scopes pcs [0x000000010f53b2d8,0x000000010f53b408] = 304 | |
dependencies [0x000000010f53b408,0x000000010f53b410] = 8 | |
nul chk table [0x000000010f53b410,0x000000010f53b420] = 16 | |
Decoding compiled method 0x000000010f53af90: | |
Code: | |
[Entry Point] | |
[Verified Entry Point] | |
[Constants] | |
# {method} {0x00000001236024c8} 'rawArrayAccess' '([B)I' in 'io/airlift/slice/Junk' | |
# parm0: rsi:rsi = '[B' | |
# [sp+0x40] (sp of caller) | |
0x000000010f53b0e0: mov %eax,-0x14000(%rsp) | |
0x000000010f53b0e7: push %rbp | |
0x000000010f53b0e8: sub $0x30,%rsp ;*synchronization entry | |
; - io.airlift.slice.Junk::rawArrayAccess@-1 (line 24) | |
0x000000010f53b0ec: mov 0xc(%rsi),%r9d ;*arraylength | |
; - io.airlift.slice.Junk::rawArrayAccess@6 (line 25) | |
; implicit exception: dispatches to 0x000000010f53b23d | |
0x000000010f53b0f0: test %r9d,%r9d | |
0x000000010f53b0f3: jle 0x000000010f53b224 ;*if_icmpge | |
; - io.airlift.slice.Junk::rawArrayAccess@7 (line 25) | |
0x000000010f53b0f9: test %r9d,%r9d | |
0x000000010f53b0fc: jbe 0x000000010f53b228 | |
0x000000010f53b102: mov %r9d,%r11d | |
0x000000010f53b105: dec %r11d | |
0x000000010f53b108: cmp %r9d,%r11d | |
0x000000010f53b10b: jae 0x000000010f53b228 ;*iload_1 | |
; - io.airlift.slice.Junk::rawArrayAccess@10 (line 26) | |
0x000000010f53b111: movsbl 0x10(%rsi),%eax ;*baload | |
; - io.airlift.slice.Junk::rawArrayAccess@13 (line 26) | |
0x000000010f53b115: mov %r9d,%ecx | |
0x000000010f53b118: add $0xfffffffffffffff1,%ecx | |
0x000000010f53b11b: mov $0x1,%r14d | |
0x000000010f53b121: mov $0x80000000,%r8d | |
0x000000010f53b127: cmp %ecx,%r11d | |
0x000000010f53b12a: cmovl %r8d,%ecx | |
0x000000010f53b12e: cmp $0x1,%ecx | |
0x000000010f53b131: jle 0x000000010f53b1fc | |
0x000000010f53b137: vmovd %r9d,%xmm0 | |
0x000000010f53b13c: mov %ecx,0x14(%rsp) ;*iload_1 | |
; - io.airlift.slice.Junk::rawArrayAccess@10 (line 26) | |
0x000000010f53b140: movslq %r14d,%r10 | |
0x000000010f53b143: movsbl 0x10(%rsi,%r10,1),%r10d | |
0x000000010f53b149: xor %r10d,%eax | |
0x000000010f53b14c: movslq %r14d,%rbp | |
0x000000010f53b14f: movsbl 0x11(%rsi,%rbp,1),%r10d | |
0x000000010f53b155: movsbl 0x1f(%rsi,%rbp,1),%r8d | |
0x000000010f53b15b: mov %r8d,(%rsp) | |
0x000000010f53b15f: movsbl 0x12(%rsi,%rbp,1),%r11d | |
0x000000010f53b165: movsbl 0x1e(%rsi,%rbp,1),%r8d | |
0x000000010f53b16b: mov %r8d,0x4(%rsp) | |
0x000000010f53b170: movsbl 0x1d(%rsi,%rbp,1),%r9d | |
0x000000010f53b176: mov %r9d,0x8(%rsp) | |
0x000000010f53b17b: movsbl 0x1c(%rsi,%rbp,1),%r9d | |
0x000000010f53b181: mov %r9d,0xc(%rsp) | |
0x000000010f53b186: movsbl 0x1b(%rsi,%rbp,1),%r9d | |
0x000000010f53b18c: mov %r9d,0x10(%rsp) | |
0x000000010f53b191: movsbl 0x1a(%rsi,%rbp,1),%r9d | |
0x000000010f53b197: movsbl 0x19(%rsi,%rbp,1),%r8d | |
0x000000010f53b19d: movsbl 0x18(%rsi,%rbp,1),%ebx | |
0x000000010f53b1a2: movsbl 0x17(%rsi,%rbp,1),%ecx | |
0x000000010f53b1a7: movsbl 0x16(%rsi,%rbp,1),%edx | |
0x000000010f53b1ac: movsbl 0x15(%rsi,%rbp,1),%edi | |
0x000000010f53b1b1: movsbl 0x14(%rsi,%rbp,1),%r13d | |
0x000000010f53b1b7: movsbl 0x13(%rsi,%rbp,1),%ebp | |
0x000000010f53b1bc: xor %r10d,%eax | |
0x000000010f53b1bf: xor %r11d,%eax | |
0x000000010f53b1c2: xor %ebp,%eax | |
0x000000010f53b1c4: xor %r13d,%eax | |
0x000000010f53b1c7: xor %edi,%eax | |
0x000000010f53b1c9: xor %edx,%eax | |
0x000000010f53b1cb: xor %ecx,%eax | |
0x000000010f53b1cd: xor %ebx,%eax | |
0x000000010f53b1cf: xor %r8d,%eax | |
0x000000010f53b1d2: xor %r9d,%eax | |
0x000000010f53b1d5: xor 0x10(%rsp),%eax | |
0x000000010f53b1d9: xor 0xc(%rsp),%eax | |
0x000000010f53b1dd: xor 0x8(%rsp),%eax | |
0x000000010f53b1e1: xor 0x4(%rsp),%eax | |
0x000000010f53b1e5: xor (%rsp),%eax ;*ixor | |
; - io.airlift.slice.Junk::rawArrayAccess@14 (line 26) | |
0x000000010f53b1e8: add $0x10,%r14d ;*iinc | |
; - io.airlift.slice.Junk::rawArrayAccess@16 (line 25) | |
0x000000010f53b1ec: cmp 0x14(%rsp),%r14d | |
0x000000010f53b1f1: jl 0x000000010f53b140 ;*if_icmpge | |
; - io.airlift.slice.Junk::rawArrayAccess@7 (line 25) | |
0x000000010f53b1f7: vmovd %xmm0,%r9d | |
0x000000010f53b1fc: cmp %r9d,%r14d | |
0x000000010f53b1ff: jge 0x000000010f53b218 | |
0x000000010f53b201: data32 xchg %ax,%ax ;*iload_1 | |
; - io.airlift.slice.Junk::rawArrayAccess@10 (line 26) | |
0x000000010f53b204: movslq %r14d,%r10 | |
0x000000010f53b207: movsbl 0x10(%rsi,%r10,1),%r10d | |
0x000000010f53b20d: xor %r10d,%eax ;*ixor | |
; - io.airlift.slice.Junk::rawArrayAccess@14 (line 26) | |
0x000000010f53b210: inc %r14d ;*iinc | |
; - io.airlift.slice.Junk::rawArrayAccess@16 (line 25) | |
0x000000010f53b213: cmp %r9d,%r14d | |
0x000000010f53b216: jl 0x000000010f53b204 ;*if_icmpge | |
; - io.airlift.slice.Junk::rawArrayAccess@7 (line 25) | |
0x000000010f53b218: add $0x30,%rsp | |
0x000000010f53b21c: pop %rbp | |
0x000000010f53b21d: test %eax,-0x21a2223(%rip) # 0x000000010d399000 | |
; {poll_return} | |
0x000000010f53b223: retq | |
0x000000010f53b224: xor %eax,%eax | |
0x000000010f53b226: jmp 0x000000010f53b218 | |
0x000000010f53b228: mov %rsi,%rbp | |
0x000000010f53b22b: mov $0xffffff86,%esi | |
0x000000010f53b230: data32 xchg %ax,%ax | |
0x000000010f53b233: callq 0x000000010f3991a0 ; OopMap{rbp=Oop off=344} | |
;*iload_1 | |
; - io.airlift.slice.Junk::rawArrayAccess@10 (line 26) | |
; {runtime_call} | |
0x000000010f53b238: callq 0x000000010e8805e8 ;*iload_1 | |
; - io.airlift.slice.Junk::rawArrayAccess@10 (line 26) | |
; {runtime_call} | |
0x000000010f53b23d: mov $0xfffffff6,%esi | |
0x000000010f53b242: nop | |
0x000000010f53b243: callq 0x000000010f3991a0 ; OopMap{off=360} | |
;*arraylength | |
; - io.airlift.slice.Junk::rawArrayAccess@6 (line 25) | |
; {runtime_call} | |
0x000000010f53b248: callq 0x000000010e8805e8 ;*arraylength | |
; - io.airlift.slice.Junk::rawArrayAccess@6 (line 25) | |
; {runtime_call} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment