Dr. Christian Wimmer

Publications

Books and Book Chapters

B.03 Todd Jackson, Babak Salamat, Andrei Homescu, Karthikeyan Manivannan, Gregor Wagner, Andreas Gal, Stefan Brunthaler, Christian Wimmer, Michael Franz: Compiler-Generated Software Diversity. In Sushil Jajodia, Anup Ghosh, Vipin Swarup, Cliff Wang, X. Sean Wang (Editors), Moving Target Defense: Creating Asymmetric Uncertainty for Cyber Threats. Advances in Information Security 54, Springer-Verlag, 2011. ISBN: 978-1-4614-0976-2 doi:10.1007/978-1-4614-0977-9_4
B.02 Christian Wimmer, Christian Probst: Proceedings of the International Conference on the Principles and Practice of Programming in Java. ACM Press, 2011. ISBN: 978-1-4503-0935-6
B.01 Christian Wimmer: Automatic Object Inlining in a Java Virtual Machine. Schriftenreihe der Johannes Kepler Universität Linz, Reihe C, Band 57. Trauner Verlag, 2008. ISBN: 978-3-85499-417-6

Journal Papers (refereed)

J.06 Thomas Würthinger, Christian Wimmer, Lukas Stadler: Unrestricted and Safe Dynamic Code Evolution for Java. In Science of Computer Programming, Elsevier, 2011. doi:10.1016/j.scico.2011.06.005
J.05 Babak Salamat, Todd Jackson, Gregor Wagner, Christian Wimmer, Michael Franz: Run-Time Defense against Code Injection Attacks using Replicated Execution. In IEEE Transactions on Dependable and Secure Computing, volume 8, issue 4, pages 588–601. IEEE Computer Society, 2011. doi:10.1109/TDSC.2011.18
J.04 Christian Wimmer, Hanspeter Mössenböck: Automatic Feedback-Directed Object Fusing. In ACM Transactions on Architecture and Code Optimization, volume 7, issue 2, article 7. ACM Press, 2010. doi:10.1145/1839667.1839669
J.03 Christian Häubl, Christian Wimmer, Hanspeter Mössenböck: Compact and Efficient Strings for Java. In Science of Computer Programming, volume 75, issue 11, pages 1077–1094. Elsevier, 2010. doi:10.1016/j.scico.2010.04.010
J.02 Thomas Würthinger, Christian Wimmer, Hanspeter Mössenböck: Array Bounds Check Elimination in the Context of Deoptimization. In Science of Computer Programming, volume 74, issue 5–6, pages 279–295. Elsevier, 2009. doi:10.1016/j.scico.2009.01.002
J.01 Thomas Kotzmann, Christian Wimmer, Hanspeter Mössenböck, Thomas Rodriguez, Kenneth Russell, David Cox: Design of the Java HotSpot™ Client Compiler for Java 6. In ACM Transactions on Architecture and Code Optimization, volume 5, issue 1, article 7. ACM Press, 2008. doi:10.1145/1369396.1370017

Conference Papers (refereed)

C.20 Christian Häubl, Christian Wimmer, Hanspeter Mössenböck: Evaluation of Trace Inlining Heuristics for Java. Accepted for publication in Proceedings of the ACM Symposium on Applied Computing. ACM Press, 2012.
C.19 Mason Chang, Bernd Mathiske, Edwin Smith, Avik Chaudhuri, Andreas Gal, Michael Bebenita, Christian Wimmer, Michael Franz: The Impact of Optional Type Information on JIT Compilation of Dynamically Typed Languages. In Proceedings of the Dynamic Languages Symposium, pages 13–24. ACM Press, 2011. doi:10.1145/2047849.2047853
C.18 Thomas Würthinger, Danilo Ansaloni, Walter Binder, Christian Wimmer, Hanspeter Mössenböck: Safe and Atomic Run-time Code Evolution for Java and its Application to Dynamic AOP. In Proceedings of the ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, pages 825–844. ACM Press, 2011. doi:10.1145/2048066.2048129
C.17 Gregor Wagner, Andreas Gal, Christian Wimmer, Brendan Eich, Michael Franz: Compartmental Memory Management in a Modern Web Browser. In Proceedings of the International Symposium on Memory Management, pages 119–128. ACM Press, 2011. doi:10.1145/1993478.1993496
C.16 Michael Bebenita, Mason Chang, Gregor Wagner, Andreas Gal, Christian Wimmer, Michael Franz: Trace-Based Compilation in Execution Environments without Interpreters. In Proceedings of the International Conference on Principles and Practice of Programming in Java, pages 59–68. ACM Press, 2010. doi:10.1145/1852761.1852771
C.15 Thomas Würthinger, Christian Wimmer, Lukas Stadler: Dynamic Code Evolution for Java. In Proceedings of the International Conference on Principles and Practice of Programming in Java, pages 10–19. ACM Press, 2010. doi:10.1145/1852761.1852764
C.14 Lukas Stadler, Thomas Würthinger, Christian Wimmer: Efficient Coroutines for the Java Platform. In Proceedings of the International Conference on Principles and Practice of Programming in Java, pages 20–28. ACM Press, 2010. doi:10.1145/1852761.1852765
C.13 Christian Wimmer, Michael Franz: Linear Scan Register Allocation on SSA Form. In Proceedings of the International Symposium on Code Generation and Optimization, pages 170–179. ACM Press, 2010. doi:10.1145/1772954.1772979
C.12 Alexander Yermolovich, Christian Wimmer, Michael Franz: Optimization of Dynamic Languages Using Hierarchical Layering of Virtual Machines. In Proceedings of the Dynamic Languages Symposium, pages 79–88. ACM Press, 2009. doi:10.1145/1640134.1640147
C.11 Christian Wimmer, Marcelo S. Cintra, Michael Bebenita, Mason Chang, Andreas Gal, Michael Franz: Phase Detection using Trace Compilation. In Proceedings of the International Conference on Principles and Practice of Programming in Java, pages 172–181. ACM Press, 2009. doi:10.1145/1596655.1596683
C.10 Lukas Stadler, Christian Wimmer, Thomas Würthinger, Hanspeter Mössenböck, John Rose: Lazy Continuations for Java Virtual Machines. In Proceedings of the International Conference on Principles and Practice of Programming in Java, pages 143–152. ACM Press, 2009. doi:10.1145/1596655.1596679
C.09 Christoph Kerschbaumer, Gregor Wagner, Christian Wimmer, Andreas Gal, Christian Steger, Michael Franz: SlimVM: A Small Footprint Java Virtual Machine for Connected Embedded Systems. In Proceedings of the International Conference on Principles and Practice of Programming in Java, pages 133–142. ACM Press, 2009. doi:10.1145/1596655.1596678
C.08 Mason Chang, Edwin Smith, Rick Reitmaier, Michael Bebenita, Andreas Gal, Christian Wimmer, Brendan Eich, Michael Franz: Tracing for Web 3.0 - Trace Compilation for the Next Generation Web Applications. In Proceedings of the International Conference on Virtual Execution Environments, pages 71–80. ACM Press, 2009. doi:10.1145/1508293.1508304
C.07 Christian Häubl, Christian Wimmer, Hanspeter Mössenböck: Optimized Strings for the Java HotSpot™ VM. In Proceedings of the International Conference on Principles and Practice of Programming in Java, pages 105–114. ACM Press, 2008. Best paper award. doi:10.1145/1411732.1411747
C.06 Christian Wimmer, Hanspeter Mössenböck: Automatic Array Inlining in Java Virtual Machines. In Proceedings of the International Symposium on Code Generation and Optimization, pages 14–23. ACM Press, 2008. doi:10.1145/1356058.1356061
C.05 Thomas Würthinger, Christian Wimmer, Hanspeter Mössenböck: Visualization of Program Dependence Graphs. In Proceedings of the International Conference on Compiler Construction, LNCS 4959, pages 193–196. Springer-Verlag, 2008. doi:10.1007/978-3-540-78791-4_13
C.04 Thomas Würthinger, Christian Wimmer, Hanspeter Mössenböck: Array Bounds Check Elimination for the Java HotSpot™ Client Compiler. In Proceedings of the International Conference on Principles and Practice of Programming in Java, pages 125–133. ACM Press, 2007. doi:10.1145/1294325.1294343
C.03 Christian Wimmer, Hanspeter Mössenböck: Automatic Feedback-Directed Object Inlining in the Java HotSpot™ Virtual Machine. In Proceedings of the International Conference on Virtual Execution Environments, pages 12–21. ACM Press, 2007. doi:10.1145/1254810.1254813
C.02 Christian Wimmer, Hanspeter Mössenböck: Automatic Object Colocation Based on Read Barriers. In Proceedings of the Joint Modular Languages Conference, LNCS 4228, pages 326–345. Springer-Verlag, 2006. doi:10.1007/11860990_20
C.01 Christian Wimmer, Hanspeter Mössenböck: Optimized Interval Splitting in a Linear Scan Register Allocator. In Proceedings of the International Conference on Virtual Execution Environments, pages 132–141. ACM Press, 2005. doi:10.1145/1064979.1064998

Other Papers (refereed)

P.04 Todd Jackson, Babak Salamat, Gregor Wagner, Christian Wimmer, Michael Franz: On the Effectiveness of Multi-Variant Program Execution for Vulnerability Detection and Prevention. In Proceedings of the International Workshop on Security Measurements and Metrics, article 7. ACM Press, 2010. doi:10.1145/1853919.1853929
P.03 Todd Jackson, Christian Wimmer, Michael Franz: Multi-Variant Program Execution for Vulnerability Detection and Analysis. In Proceedings of the Workshop on Cyber Security and Information Intelligence Research, article 38. ACM Press, 2010. doi:10.1145/1852666.1852708
P.02 Karthikeyan Manivannan, Christian Wimmer, Michael Franz: Decentralized Information Flow Control on a Bare-Metal JVM. In Proceedings of the Workshop on Cyber Security and Information Intelligence Research, article 64. ACM Press, 2010. doi:10.1145/1852666.1852738
P.01 Christian Wimmer: A Block-Based Bytecode Format to Simplify and Improve Just-in-Time Compilation. Presented at Fun Ideas and Thoughts at the Conference on Programming Language Design and Implementation, 2009.

Theses

T.02 Christian Wimmer: Automatic Object Inlining in a Java Virtual Machine. PhD thesis, Institute for System Software, Johannes Kepler University Linz, 2008.
T.01 Christian Wimmer: Linear Scan Register Allocation for the Java HotSpot™ Client Compiler. Master's thesis, Institute for System Software, Johannes Kepler University Linz, 2004.