Created
May 27, 2016 04:56
-
-
Save cberner/d20e96bb0b9d1a0f698f197b0fc6bbdc 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) 381 330 4 io.airlift.slice.Junk::sliceUnchecked (28 bytes) | |
total in heap [0x0000000109144790,0x0000000109144ad0] = 832 | |
relocation [0x00000001091448b8,0x00000001091448c8] = 16 | |
main code [0x00000001091448e0,0x0000000109144960] = 128 | |
stub code [0x0000000109144960,0x0000000109144978] = 24 | |
oops [0x0000000109144978,0x0000000109144980] = 8 | |
metadata [0x0000000109144980,0x0000000109144990] = 16 | |
scopes data [0x0000000109144990,0x00000001091449e8] = 88 | |
scopes pcs [0x00000001091449e8,0x0000000109144ab8] = 208 | |
dependencies [0x0000000109144ab8,0x0000000109144ac0] = 8 | |
nul chk table [0x0000000109144ac0,0x0000000109144ad0] = 16 | |
Decoding compiled method 0x0000000109144790: | |
Code: | |
[Entry Point] | |
[Verified Entry Point] | |
[Constants] | |
# {method} {0x000000011d2025b8} 'sliceUnchecked' '(Lio/airlift/slice/Slice;)I' in 'io/airlift/slice/Junk' | |
# parm0: rsi:rsi = 'io/airlift/slice/Slice' | |
# [sp+0x20] (sp of caller) | |
0x00000001091448e0: mov %eax,-0x14000(%rsp) | |
0x00000001091448e7: push %rbp | |
0x00000001091448e8: sub $0x10,%rsp ;*synchronization entry | |
; - io.airlift.slice.Junk::sliceUnchecked@-1 (line 33) | |
0x00000001091448ec: mov 0xc(%rsi),%r10d ; implicit exception: dispatches to 0x000000010914493b | |
0x00000001091448f0: xor %eax,%eax | |
0x00000001091448f2: test %r10d,%r10d | |
0x00000001091448f5: jle 0x000000010914492f ;*if_icmpge | |
; - io.airlift.slice.Junk::sliceUnchecked@9 (line 34) | |
0x00000001091448f7: xor %r11d,%r11d | |
0x00000001091448fa: jmp 0x0000000109144903 | |
0x00000001091448fc: nopl 0x0(%rax) | |
0x0000000109144900: mov %r9d,%r11d ;*invokevirtual getByte | |
; - io.airlift.slice.Slice::getByteUnchecked@14 (line 349) | |
; - io.airlift.slice.Junk::sliceUnchecked@15 (line 35) | |
0x0000000109144903: mov 0x20(%rsi),%r10d ;*getfield base | |
; - io.airlift.slice.Slice::getByteUnchecked@4 (line 349) | |
; - io.airlift.slice.Junk::sliceUnchecked@15 (line 35) | |
0x0000000109144907: mov %r11d,%r9d | |
0x000000010914490a: inc %r9d ;*iinc | |
; - io.airlift.slice.Junk::sliceUnchecked@20 (line 34) | |
0x000000010914490d: shl $0x3,%r10 | |
0x0000000109144911: movslq %r11d,%r11 | |
0x0000000109144914: add 0x10(%rsi),%r11 | |
0x0000000109144918: movsbl (%r10,%r11,1),%r11d ;*invokevirtual getByte | |
; - io.airlift.slice.Slice::getByteUnchecked@14 (line 349) | |
; - io.airlift.slice.Junk::sliceUnchecked@15 (line 35) | |
0x000000010914491d: xor %r11d,%eax ; OopMap{rsi=Oop off=64} | |
;*goto | |
; - io.airlift.slice.Junk::sliceUnchecked@23 (line 34) | |
0x0000000109144920: test %eax,-0x22df926(%rip) # 0x0000000106e65000 | |
;*goto | |
; - io.airlift.slice.Junk::sliceUnchecked@23 (line 34) | |
; {poll} | |
0x0000000109144926: mov 0xc(%rsi),%r10d | |
0x000000010914492a: cmp %r10d,%r9d | |
0x000000010914492d: jl 0x0000000109144900 ;*if_icmpge | |
; - io.airlift.slice.Junk::sliceUnchecked@9 (line 34) | |
0x000000010914492f: add $0x10,%rsp | |
0x0000000109144933: pop %rbp | |
0x0000000109144934: test %eax,-0x22df93a(%rip) # 0x0000000106e65000 | |
; {poll_return} | |
0x000000010914493a: retq | |
0x000000010914493b: mov $0xfffffff6,%esi | |
0x0000000109144940: data32 xchg %ax,%ax | |
0x0000000109144943: callq 0x0000000108f991a0 ; OopMap{off=104} | |
;*invokevirtual length | |
; - io.airlift.slice.Junk::sliceUnchecked@6 (line 34) | |
; {runtime_call} | |
0x0000000109144948: callq 0x00000001084805e8 ;*invokevirtual length | |
; - io.airlift.slice.Junk::sliceUnchecked@6 (line 34) | |
; {runtime_call} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment