Title: What Lies Beneath?: Lessons learned hacking the OpenJDK interpreter/compilers. Abstract: What really happens to your Java code along the way to becoming machine code? Red Hat has been developing an almost pauseless GC for OpenJDK which requires adding read barriers to every object access. We've also developed ARM64 versions of both the server and the client compilers. This has given us quite a bit of experience with the internals of the various methods of generating machine code inside the JVM. This talk will start with a brief tour of the various levels of code generation available and then open up the floor for questions from our panel. Speakers: Andrew Haley, Andrew Dinn, Roman Kennke, and Christine H. Flood Red Hat Inc. Andrew Haley is the engineering lead of the Red Hat Java team, a member of the OpenJDK governing board, and has been a maintainer of GCJ for many years. He is also the lead of the OpenJDK AArch64 port. Andrew Dinn is a member of the Red Hat Java team and also leads the Byteman project. Roman Kennke is a long time free Java (and Software) activist, originally involved in GNU Classpath since 2004, later participated in opening OpenJDK and since then is regular contributor to several parts of OpenJDK (AWT/Swing, general class library, lately Hotspot). After finishing Diploma in 2007 he was employed by aicas, who are building a hard realtime capable Java VM. During 2009 and 2010 worked for Sun Microsystems on Java Webstart. After a short period as contractor for JP Morgan, he's now a Prinipal Software Engineer at Red Hat, where he used to work on Thermostat, the Zero and Shark port of OpenJDK, and currently on the Shenandoah GC. Christine H, Flood has 20+ years experience in programming language design and implementation. She's thrilled to be working for Red Hat on free and open software.