I am a student and I'm looking for information about data flow analysis and optimizations used by the Hotspot JIT compiler.
Especially which different data flow analysis/optimizations are used in the compiler and how they are working.
I am thinking about stuff like dead code elimination, liveness analysis, reaching definitions and so on ...
Is there any documentation about what data flow techniques and optimizations are used in Hotspot JVM and how they are working?
I only found general information about data flow analysis yet but no special info about the analysis in Java Hotspot.