Slide 29
Slide 29 text
29
In assembler
0x...d26c: mov 0x8(%rsi),%r11d ; implicit exception
0x...d270: mov 0x78(%r12,%r11,8),%rbp ; *invokevirtual getClass
0x...d275: mov $0x7d6bb4228,%r10 ; {oop(a 'j/l/Class' = 'A')}
0x...d27f: cmp %r10,%rbp
0x...d282: jne 0x00007f594911d2c9 ; *if_acmpne
;; B3: # B6 B4 <- B2 Freq: 0.999999
0x...d284: mov 0x40(%r12,%r11,8),%r10
0x...d289: mov $0x77f280d58,%r11 ; {oop('A')}
0x...d293: cmp %r11,%r10
0x...d296: jne 0x00007f594911d2b4 ; *checkcast
;; B4: # B8 B5 <- B3 Freq: 0.999997
0x...d298: nop
0x...d299: mov $0xffffffffffffffff,%rax ; {oop(NULL)}
0x...d2a3: callq 0x00007f59490cdf60 ; OopMap{off=72}
;*invokevirtual m
Not neede !
Direct call
but no inline
r12 : base heap with compressed oops