Understanding PrintAssembly output

Manohar Jonnalagedda manojo10386 at gmail.com
Wed Dec 7 15:56:00 PST 2011

Hello all,

I was just wondering whether you would have some pointers on how to
understand the x86 assembly code output by the PrintAssembly flag? My
question is specifically oriented towards understanding of loops and
branching instructions. In the output that I get, I have many instructions
as follows:

B14 : # info about B14

cmpl R10, R10
jg,s B24

I understand that the above will never go to B24, as the test will always
be equal. However, by doing such an analysis, I find that there the CFG for
a given method is much smaller than the overall size of the compiled
method. Also, some of the branches in this "non-reachable" portion of the
assembler code contains *inner main loops* whose *pre loops* are in the
reachable portion. How do I actually go about understanding such output?

Thanks a lot,
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.openjdk.java.net/pipermail/hotspot-dev/attachments/20111208/65515354/attachment.html 

More information about the hotspot-dev mailing list