Skip to content

Instantly share code, notes, and snippets.

@nitsanw
Created January 5, 2018 11:00
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save nitsanw/732b691191c32576d5a441638007ce96 to your computer and use it in GitHub Desktop.
Save nitsanw/732b691191c32576d5a441638007ce96 to your computer and use it in GitHub Desktop.
# c2, level 4, org.jctools.jmh.throughput.generated.QueueThroughputBackoffNone_tpt_jmhTest::offer_thrpt_jmhStub, version 643 (89 bytes)
0,46%| 0xb254: mov %r11,%rcx ;*getfield buffer {reexecute=0 rethrow=0 return_oop=0}
| ; - org.jctools.queues.SpscArrayQueue::offer@14 (line 176)
| ; - org.jctools.jmh.throughput.QueueThroughputBackoffNone::offer@8 (line 92)
| ; - org.jctools.jmh.throughput.generated.QueueThroughputBackoffNone_tpt_jmhTest::offer_thrpt_jmhStub@17 (line 299)
| 0xb257: lea 0x10(%r11,%r10,4),%r13 ;*invokevirtual getObjectVolatile {reexecute=0 rethrow=0 return_oop=0}
| ; - sun.misc.Unsafe::getObjectVolatile@5 (line 923)
| ; - org.jctools.util.UnsafeRefArrayAccess::lvElement@5 (line 103)
| ; - org.jctools.queues.SpscArrayQueue::offerSlowPath@49 (line 202)
| ; - org.jctools.queues.SpscArrayQueue::offer@44 (line 181)
| ; - org.jctools.jmh.throughput.QueueThroughputBackoffNone::offer@8 (line 92)
| ; - org.jctools.jmh.throughput.generated.QueueThroughputBackoffNone_tpt_jmhTest::offer_thrpt_jmhStub@17 (line 299)
0,01%| 0xb25c: mov (%rsp),%r10
| 0xb260: cmp 0x118(%rbp),%r10
| 0xb267: jge 0xb2f9
0,61%| 0xb26d: movsbl 0x340(%r15),%r10d
| 0xb275: test %r10d,%r10d
| 0xb278: jne 0xb340
0,01%| 0xb27e: mov %ebx,0x0(%r13)
0,01%| 0xb282: mov %rbx,%r10
0,50%| 0xb285: mov %r13,%r11
| 0xb288: xor %r11,%r10
| 0xb28b: shr $0x14,%r10
0,01%| 0xb28f: test %r10,%r10
| 0xb292: je 0xb1d0
0,37%| 0xb298: shr $0x9,%r11
| 0xb29c: mov $0x7fe1dfd87000,%rdi
| 0xb2a6: add %r11,%rdi
0,02%| 0xb2a9: movsbl (%rdi),%r10d
0,50%| 0xb2ad: cmp $0x20,%r10d
| 0xb2b1: je 0xb1d0
| 0xb2b7: mov 0x380(%r15),%r10
| 0xb2be: mov 0x388(%r15),%rcx
| 0xb2c5: lock addl $0x0,-0x40(%rsp); WTF?
42,33%| 0xb2cb: movsbl (%rdi),%r11d ; WTF????
| 0xb2cf: test %r11d,%r11d
| 0xb2d2: je 0xb1d0
| 0xb2d8: mov %r12b,(%rdi)
| 0xb2db: test %rcx,%rcx
| 0xb2de: je 0xb1a6
| 0xb2e4: mov %rdi,-0x8(%r10,%rcx,1)
| 0xb2e9: add $0xfffffffffffffff8,%rcx
| 0xb2ed: mov %rcx,0x388(%r15) ;*invokevirtual putObjectRelease {reexecute=0 rethrow=0 return_oop=0}
| ; - sun.misc.Unsafe::putOrderedObject@7 (line 1042)
| ; - org.jctools.util.UnsafeRefArrayAccess::soElement@6 (line 77)
| ; - org.jctools.queues.SpscArrayQueue::offer@64 (line 187)
| ; - org.jctools.jmh.throughput.QueueThroughputBackoffNone::offer@8 (line 92)
| ; - org.jctools.jmh.throughput.generated.QueueThroughputBackoffNone_tpt_jmhTest::offer_thrpt_jmhStub@17 (line 299)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment