Documentation for the ABC Analysis
[cacao.git] / doc / abc_optimization / bibfile.bib
diff --git a/doc/abc_optimization/bibfile.bib b/doc/abc_optimization/bibfile.bib
new file mode 100644 (file)
index 0000000..15bbf48
--- /dev/null
@@ -0,0 +1,854 @@
+# General books and articles that cover the topic over all and are necessary for understanding the whole problem.\r
+###############################################################################\r
+\r
+@Manual{JavaVMSpecification1.0:1995,\r
+  title =      "The {Java} Virtual Machine Specification",\r
+  month =      aug,\r
+  added-by =   "sti",\r
+  URL =        "http://java.sun.com/doc/vmspec/VMSpec.ps",\r
+  keywords =   "java, virtual machine, bytecode",\r
+  edition =    "1.0 Beta",\r
+  annote =     "a virtual machine similar to UCSD p-code or smalltalk.\r
+                stack-machine. dynamic loading. direct support for\r
+                object orientation (e.g. virtual method calls)",\r
+  organization = "Sun Microsystems",\r
+  year =       "1995",\r
+}\r
+\r
+@Book{JavaLanguageSpecificationv3.0:2005,\r
+  author =     "James Gosling and Bill Joy and Guy Steele and Gilad\r
+                Bracha",\r
+  address =    "Boston, Mass.",\r
+  title =      "The {Java} Language Specification, Third Edition",\r
+  publisher =  "Addison-Wesley",\r
+  series =     "The Java Series",\r
+  year =       "2005",\r
+}\r
+\r
+@Article{CompilingJavaJustInTime:1997,\r
+  author =     "Timothy Cramer and Richard Friedman and Terrence\r
+                Miller and David Seherger and Robert Wilson and Mario\r
+                Wolczko",\r
+  title =      "Compiling {Java} Just in Time: Using runtime\r
+                compilation to improve {Java} program performance",\r
+  journal =    "IEEE Micro",\r
+  volume =     "17",\r
+  number =     "3",\r
+  pages =      "36--??",\r
+  month =      may # "\slash " # jun,\r
+  year =       "1997",\r
+  CODEN =      "IEMIDZ",\r
+  ISSN =       "0272-1732",\r
+  bibdate =    "Tue Aug 12 12:35:06 MDT 1997",\r
+  URL =        "http://pascal.computer.org/mi/books/mi1997/pdf/m3036.pdf",\r
+  acknowledgement = "Nelson H. F. Beebe, University of Utah, Department\r
+                of Mathematics, 110 LCB, 155 S 1400 E RM 233, Salt Lake\r
+                City, UT 84112-0090, USA, Tel: +1 801 581 5254, FAX: +1\r
+                801 581 4148, e-mail: \path|beebe@math.utah.edu|,\r
+                \path|beebe@acm.org|, \path|beebe@computer.org|\r
+                (Internet), URL:\r
+                \path|http://www.math.utah.edu/~beebe/|",\r
+}\r
+\r
+@InProceedings{FastEffectiveCodeGenerationInAJustInTimeJavaCompiler:1998,\r
+  title =      "Fast, Effective Code Generation in a Just-In-Time Java\r
+                Compiler",\r
+  author =     "Ali-Reza Adl-Tabatabai and Michal Cierniak and\r
+                Guei-Yuan Lueh and Vishesh M. Parikh and James M.\r
+                Stichnoth",\r
+  year =       "1998",\r
+  bibdate =    "2010-01-10",\r
+  bibsource =  "DBLP,\r
+                http://dblp.uni-trier.de/db/conf/pldi/pldi98.html#Adl-TabatabaiCLPS98",\r
+  booktitle =  "PLDI",\r
+  pages =      "280--290",\r
+  URL =        "http://doi.acm.org/10.1145/277650.277740",\r
+}\r
+\r
+@InProceedings{TheDesignAndImplementationOfACertifyingCompiler:1998,\r
+  author =     "G. Necula and P. Lee",\r
+  title =      "The {D}esign and {I}mplementation of a {C}ertifying\r
+                {C}ompiler",\r
+  booktitle =  "Proc. of PLDI'98",\r
+  year =       "1998",\r
+  publisher =  "ACM Press",\r
+}\r
+\r
+@InProceedings{DesignImplementationAndEvaluationOfOptimizationsInAJavaJustInTimeCompiler:1999,\r
+  title =      "Design, Implementation, and Evaluation of\r
+                Optimizations in a Just-in-Time Compiler",\r
+  author =     "Kazuaki Ishizaki and Motohiro Kawahito and Toshiaki\r
+                Yasue and Mikio Takeuchi and Takeshi Ogasawara and\r
+                Toshio Suganuma and Tamiya Onodera and Hideaki Komatsu\r
+                and Toshio Nakatani",\r
+  year =       "1999",\r
+  bibdate =    "2002-12-17",\r
+  bibsource =  "DBLP,\r
+                http://dblp.uni-trier.de/db/conf/java/java1999.html#IshizakiKYTOSOKN99",\r
+  booktitle =  "Java Grande",\r
+  pages =      "119--128",\r
+  URL =        "http://doi.acm.org/10.1145/304065.304111",\r
+}\r
+\r
+@Article{CacaoA64BitJavaVMJustInTimeCompiler:1997,\r
+  author =     "Andreas Krall and Reinhard Grafl",\r
+  title =      "{CACAO} -- {A} 64-bit Java{VM} Just-in-Time Compiler",\r
+  journal =    "Concurrency: Practice and Experience",\r
+  volume =     "9",\r
+  number =     "11",\r
+  pages =      "1017--1030",\r
+  month =      nov,\r
+  year =       "1997",\r
+  keywords =   "computational science \& engineering Java: simulation\r
+                \& modeling,",\r
+}\r
+\r
+@book{HandbookForJavaCacaoVirtualMachine:1996,\r
+  title=               {Handbook for Java Cacao Virtual Machine},\r
+  author=              {Andreas Krall and Reinhard Grafl et al.},\r
+  publisher=   {http://www.cacaovm.org},\r
+  year=                        {1996},\r
+  pages=               {116}\r
+}\r
+\r
+@Article{MarmotAnOptimizingCompilerForJava:2000,\r
+  title =      "Marmot: an optimizing compiler for Java",\r
+  author =     "Robert P. Fitzgerald and Todd B. Knoblock and Erik Ruf\r
+                and Bjarne Steensgaard and David Tarditi",\r
+  journal =    "Softw, Pract. Exper",\r
+  year =       "2000",\r
+  number =     "3",\r
+  volume =     "30",\r
+  bibdate =    "2003-11-25",\r
+  bibsource =  "DBLP,\r
+                http://dblp.uni-trier.de/db/journals/spe/spe30.html#FitzgeraldKRST00",\r
+  pages =      "199--232",\r
+}\r
+\r
+@InProceedings{VerifiableAnnotationsForEmbeddedJavaEnvironments:2005,\r
+  title =      "Verifiable annotations for embedded java\r
+                environments",\r
+  author =     "Guangyu Chen and Mahmut T. Kandemir",\r
+  bibdate =    "2006-02-15",\r
+  bibsource =  "DBLP,\r
+                http://dblp.uni-trier.de/db/conf/cases/cases2005.html#ChenK05",\r
+  booktitle =  "CASES",\r
+  booktitle =  "Proceedings of the 2005 International Conference on\r
+                Compilers, Architecture, and Synthesis for Embedded\r
+                Systems, {CASES} 2005, San Francisco, California,\r
+                {USA}, September 24-27, 2005",\r
+  publisher =  "ACM",\r
+  year =       "2005",\r
+  editor =     "Thomas M. Conte and Paolo Faraboschi and William H.\r
+                Mangione-Smith and Walid A. Najjar",\r
+  ISBN =       "1-59593-149-X",\r
+  pages =      "105--114",\r
+  URL =        "http://doi.acm.org/10.1145/1086297.1086312",\r
+}\r
+\r
+@Book{ModernCompilerImplementationInC:1998,\r
+  author =     "Andrew W. Appel",\r
+  title =      "Modern Compiler Implementation in {C}",\r
+  publisher =  "Cambridge University Press",\r
+  ISBN =       "0-521-58390-X",\r
+  year =       "1998",\r
+}\r
+\r
+###############################################################################\r
+# Now some references are presented that deal with intermediate representations especially with several SSA forms.\r
+###############################################################################\r
+\r
+@Article{EfficientlyComputingSSAFormAndTheControlDependenceGraph:1991,\r
+  author =     "Ron Cytron and Jeanne Ferrante and Barry K. Rosen and\r
+                Mark N. Wegman and F. Kenneth Zadeck",\r
+  title =      "Efficiently computing static single assignment form\r
+                and the control dependence graph",\r
+  number =     "4",\r
+  volume =     "13",\r
+  month =      oct,\r
+  added-by =   "msteiner",\r
+  URL =        "http://doi.acm.org/10.1145/115372.115320",\r
+  added-at =   "Sat Jul 29 09:22:31 2006",\r
+  annote =     "Classical paper on the SSA (Static Single Assignment)\r
+                form for intermediary code representation in\r
+                (optimizing) compilers. See\r
+                \url{http://www.cs.man.ac.uk/~jsinger/ssa.html} for\r
+                bibliography of SSA related work.",\r
+  pages =      "451--490",\r
+  journal =    "TOPLAS",\r
+  year =       "1991",\r
+}\r
+\r
+@Article{AVerifiableSSAProgramRepresentationForAgressiveCompilerOptimization:2006,\r
+  author =     "Menon and Glew and Murphy and McCreight and Shpeisman\r
+                and Adl-Tabatabai and Petersen",\r
+  title =      "A Verifiable {SSA} Program Representation for\r
+                Aggressive Compiler Optimization",\r
+  journal =    "SPNOTICES: ACM SIGPLAN Notices",\r
+  volume =     "41",\r
+  year =       "2006",\r
+}\r
+\r
+@Article{SafeTSAATypeSafeAndReferentiallySecureMobileCodeRepresentationBasedOnStaticSingleAssignmentForm:2001,\r
+  author =     "Wolfram Amme and Niall Dalton and Jeffery von Ronne\r
+                and Michael Franz",\r
+  title =      "{SafeTSA}: {A} Type Safe and Referentially Secure\r
+                Mobile-Code Representation Based on Static Single\r
+                Assignment Form",\r
+  journal =    "ACM SIG{\-}PLAN Notices",\r
+  volume =     "36",\r
+  number =     "5",\r
+  pages =      "137--147",\r
+  month =      may,\r
+  year =       "2001",\r
+  CODEN =      "SINODQ",\r
+  ISSN =       "0362-1340",\r
+  bibdate =    "Sun Dec 14 09:18:26 MST 2003",\r
+  bibsource =  "http://www.acm.org/sigplan/pldi/pldi2001/pldi_program.html;\r
+                http://portal.acm.org/",\r
+  acknowledgement = "Nelson H. F. Beebe, University of Utah, Department\r
+                of Mathematics, 110 LCB, 155 S 1400 E RM 233, Salt Lake\r
+                City, UT 84112-0090, USA, Tel: +1 801 581 5254, FAX: +1\r
+                801 581 4148, e-mail: \path|beebe@math.utah.edu|,\r
+                \path|beebe@acm.org|, \path|beebe@computer.org|\r
+                (Internet), URL:\r
+                \path|http://www.math.utah.edu/~beebe/|",\r
+}\r
+\r
+@Misc{UsingTheSafeTSARepresentationToBoostThePerformanceOfAnExistingJavaVirtualMachine:2002,\r
+  title =      "Using the Safe{TSA} Representation to Boost the\r
+                Performance of an Existing Java Virtual Machine",\r
+  author =     "Wolfram Amme and Jeffery Von Ronne and Michael Franz",\r
+  year =       "2003",\r
+  month =      dec # "~07",\r
+  abstract =   "High-performance just-in-time compilers for Java need\r
+                to invest considerable effort before actual code\r
+                generation can commence. SafeTSA, a typed intermediate\r
+                representation based on SSA form, was designed to ease\r
+                this burden, decreasing the time required for dynamic\r
+                compilation, without sacrificing safety or code\r
+                quality.",\r
+  citeseer-references = "oai:CiteSeerPSU:2678; oai:CiteSeerPSU:717751;\r
+                oai:CiteSeerPSU:284691; oai:CiteSeerPSU:554814;\r
+                oai:CiteSeerPSU:114398; oai:CiteSeerPSU:328282;\r
+                oai:CiteSeerPSU:89224",\r
+  annote =     "Wolfram Amme (Friedrich-Schiller-Universit at Jena;\r
+                Institut f ur Informatik; Ernst-Abbe-Platz 1-4; D-07743\r
+                Jena , Germany); Jeffery Von Ronne (Information and\r
+                Computer Science; 127B Computer Science Trailer);\r
+                Michael Franz (Information and Computer Science; 444\r
+                Computer Science Bldg);",\r
+  bibsource =  "OAI-PMH server at cs1.ist.psu.edu",\r
+  language =   "en",\r
+  oai =        "oai:CiteSeerPSU:599324",\r
+  rights =     "unrestricted",\r
+  URL =        "http://citeseer.ist.psu.edu/599324.html;\r
+                http://www.ics.uci.edu/~jronne/pubs/cpc2003-safetsa5.pdf",\r
+}\r
+\r
+###############################################################################\r
+# The following documents now deal with the special topic of array bound check optimization.\r
+# The order is chronologic from the real beginning to the most recent publications.\r
+###############################################################################\r
+\r
+@Article{CompilerAnalysisOfTheValueRangesForVariables:1977,\r
+  author =     "W. Harrison",\r
+  title =      "Compiler analysis of the value ranges for variables",\r
+  journal =    "IEEE Transactions on Software Engineering",\r
+  volume =     "SE-3",\r
+  number =     "3",\r
+  month =      may,\r
+  year =       "1977",\r
+  keywords =   "data flow analysis,",\r
+}\r
+\r
+@InProceedings{ImplementationOfAnArrayBoundChecker:1977,\r
+  title =      "Implementation of an Array Bound Checker",\r
+  author =     "Norihisa Suzuki and Kiyoshi Ishihata",\r
+  year =       "1977",\r
+  bibdate =    "2010-01-28",\r
+  bibsource =  "DBLP,\r
+                http://dblp.uni-trier.de/db/conf/popl/popl77.html#SuzukiI77",\r
+  booktitle =  "POPL",\r
+  cdrom =      "POPL/00001437.PDF",\r
+  pages =      "132--143",\r
+  URL =        "http://doi.acm.org/10.1145/512950.512963",\r
+}\r
+\r
+@Article{EconomicRangeChecksInPascal:1978,\r
+  author =     "J. Welsh",\r
+  title =      "Economic range checks in {Pascal}",\r
+  journal =    "Software -- Practice \& Experience",\r
+  volume =     "8",\r
+  pages =      "85--97",\r
+  year =       "1978",\r
+}\r
+\r
+@Article{GlobalOptimizationBySuppressionOfPartialRedundancies:1979,\r
+  author =     "E. Morel and C. Renvoise",\r
+  title =      "Global optimization by suppression of partial\r
+                redundancies",\r
+  journal =    "Communications of the ACM",\r
+  volume =     "22",\r
+  number =     "2",\r
+  pages =      "96--103",\r
+  month =      feb,\r
+  year =       "1979",\r
+}\r
+\r
+@InProceedings{OptimizationOfRangeChecking:1982,\r
+  author =     "Victoria Markstein and John Cocke and Peter\r
+                Markstein",\r
+  title =      "Optimization of Range Checking",\r
+  booktitle =  "Proceedings of the {SIGPLAN} '82 Symposium on Compiler\r
+                Construction",\r
+  address =    "Boston, Massachusetts",\r
+  month =      jun # " 23--25,",\r
+  year =       "1982",\r
+  pages =      "114--119",\r
+}\r
+\r
+@Article{OptimizationOfRangeChecking:1987,\r
+  author =     "Victoria Markstein and Peter Markstein and John\r
+                Cocke",\r
+  title =      "Optimization of range checking",\r
+  journal =    "ACM SIG{\-}PLAN Notices",\r
+  volume =     "39",\r
+  number =     "4",\r
+  pages =      "58--65",\r
+  month =      apr,\r
+  year =       "2004",\r
+  CODEN =      "SINODQ",\r
+  ISSN =       "0362-1340",\r
+  bibdate =    "Tue Apr 12 09:38:13 MDT 2005",\r
+  bibsource =  "http://portal.acm.org/",\r
+  acknowledgement = "Nelson H. F. Beebe, University of Utah, Department\r
+                of Mathematics, 110 LCB, 155 S 1400 E RM 233, Salt Lake\r
+                City, UT 84112-0090, USA, Tel: +1 801 581 5254, FAX: +1\r
+                801 581 4148, e-mail: \path|beebe@math.utah.edu|,\r
+                \path|beebe@acm.org|, \path|beebe@computer.org|\r
+                (Internet), URL:\r
+                \path|http://www.math.utah.edu/~beebe/|",\r
+}\r
+\r
+@Article{AFreshLookAtOptimizingArrayBoundChecking:1990,\r
+  author =     "Rajiv Gupta",\r
+  title =      "A fresh look at optimizing array bound checking",\r
+  journal =    "ACM SIG{\-}PLAN Notices",\r
+  volume =     "25",\r
+  number =     "6",\r
+  pages =      "272--282",\r
+  month =      jun,\r
+  year =       "1990",\r
+  CODEN =      "SINODQ",\r
+  ISSN =       "0362-1340",\r
+  bibdate =    "Sun Dec 14 09:15:53 MST 2003",\r
+  bibsource =  "http://portal.acm.org/",\r
+  acknowledgement = "Nelson H. F. Beebe, University of Utah, Department\r
+                of Mathematics, 110 LCB, 155 S 1400 E RM 233, Salt Lake\r
+                City, UT 84112-0090, USA, Tel: +1 801 581 5254, FAX: +1\r
+                801 581 4148, e-mail: \path|beebe@math.utah.edu|,\r
+                \path|beebe@acm.org|, \path|beebe@computer.org|\r
+                (Internet), URL:\r
+                \path|http://www.math.utah.edu/~beebe/|",\r
+}\r
+\r
+@Article{OptimizationOfArraySubscriptRangeChecks:1992,\r
+  title =      "Optimization of Array Subscript Range Checks",\r
+  author =     "Johnathan M. Asuru",\r
+  journal =    "ACM Letters on Programming Languages and Systems",\r
+  pages =      "109--118",\r
+  month =      jun,\r
+  year =       "1992",\r
+  volume =     "1",\r
+  number =     "2",\r
+}\r
+\r
+@Article{OptimizingArrayBoundChecksUsingFlowAnalysis:1993,\r
+  title =      "Optimizing Array Bound Checks Using Flow Analysis",\r
+  author =     "Rajiv Gupta",\r
+  journal =    "LOPLAS",\r
+  year =       "1993",\r
+  number =     "1-4",\r
+  volume =     "2",\r
+  bibdate =    "2002-12-02",\r
+  bibsource =  "DBLP,\r
+                http://dblp.uni-trier.de/db/journals/loplas/loplas2.html#Gupta93",\r
+  pages =      "135--150",\r
+  URL =        "http://doi.acm.org/10.1145/176454.176507",\r
+}\r
+\r
+@InProceedings{EliminationOfRedundantArraySubscriptRangeChecks:1995,\r
+  title =      "Elimination of Redundant Array Subscript Range\r
+                Checks",\r
+  author =     "Priyadarshan Kolte and Michael Wolfe",\r
+  year =       "1995",\r
+  bibdate =    "2010-01-10",\r
+  bibsource =  "DBLP,\r
+                http://dblp.uni-trier.de/db/conf/pldi/pldi95.html#KolteW95",\r
+  booktitle =  "PLDI",\r
+  pages =      "270--278",\r
+  URL =        "http://doi.acm.org/10.1145/207110.207160",\r
+}\r
+\r
+@InProceedings{EliminatingArrayBoundCheckingThroughDependentTypes:1998,\r
+  title =      "Eliminating Array Bound Checking Through Dependent\r
+                Types",\r
+  author =     "Hongwei Xi and Frank Pfenning",\r
+  year =       "1998",\r
+  bibdate =    "2010-01-10",\r
+  bibsource =  "DBLP,\r
+                http://dblp.uni-trier.de/db/conf/pldi/pldi98.html#XiP98",\r
+  booktitle =  "PLDI",\r
+  pages =      "249--257",\r
+  URL =        "http://doi.acm.org/10.1145/277650.277732",\r
+}\r
+\r
+@Article{OptimizingArrayReferenceCheckingInJavaPrograms:1998,\r
+  title =      "Optimizing Array Reference Checking in Java Programs",\r
+  author =     "Samuel P. Midkiff and Jos{\'e} E. Moreira and Marc\r
+                Snir",\r
+  journal =    "IBM Systems Journal",\r
+  year =       "1998",\r
+  number =     "3",\r
+  volume =     "37",\r
+  bibdate =    "2002-01-03",\r
+  bibsource =  "DBLP,\r
+                http://dblp.uni-trier.de/db/journals/ibmsj/ibmsj37.html#MidkiffMS98",\r
+  pages =      "409--453",\r
+}\r
+\r
+@InProceedings{TowardsArrayBoundCheckEliminationInJavaTMVirtualMachineLanguage:1999,\r
+  title =      "Towards array bound check elimination in Java $^{TM}$\r
+                virtual machine language",\r
+  author =     "Hongwei Xi and Songtao Xia",\r
+  bibdate =    "2006-02-15",\r
+  bibsource =  "DBLP,\r
+                http://dblp.uni-trier.de/db/conf/cascon/cascon1999.html#XiX99",\r
+  booktitle =  "CASCON",\r
+  booktitle =  "Proceedings of the 1999 conference of the Centre for\r
+                Advanced Studies on Collaborative Research, November\r
+                8-11, 1999, Mississauga, Ontario, Canada",\r
+  publisher =  "IBM",\r
+  year =       "1999",\r
+  editor =     "Stephen A. MacKay and J. Howard Johnson",\r
+  pages =      "14",\r
+  URL =        "http://doi.acm.org/10.1145/781995.782009",\r
+}\r
+\r
+@InProceedings{ABCDEliminatingArrayBoundsChecksOnDemand:2000,\r
+  author =     "Rastislav Bodik and Rajiv Gupta and Vivek Sarkar",\r
+  title =      "{ABCD}: eliminating array bounds checks on demand",\r
+  booktitle =  "Proceedings of the ACM SIGPLAN 2000 Conference on\r
+                Programming Language Design and Implementation",\r
+  year =       "2000",\r
+  pages =      "321--333",\r
+  abstract =   "similar to SSI, has phi functions, and also pi\r
+                functions to rename at conditional branches and after\r
+                array bounds checks",\r
+  URL =        "http://doi.acm.org/10.1145/349299.349342",\r
+}\r
+\r
+@book{ProcessorWithAcceleratedArrayAcessBoundsChecking:2000,\r
+  title=               {USPatent: Processor with Accelerated Array Acess Bounds Checking},\r
+  author=              {Marc Tremblay and James M. O'Connor and William N. Joy},\r
+  publisher=   {Sun Microsystems, Inc.},\r
+  year=                        {2000},\r
+  pages=               {31}\r
+}\r
+\r
+@InProceedings{AFrameworkForOptimizingJavaUsingAttributes:2000,\r
+  title =      "A framework for optimizing Java using attributes",\r
+  author =     "Patrice Pominville and Feng Qian and Raja\r
+                Vall{\'e}e-Rai and Laurie J. Hendren and Clark\r
+                Verbrugge",\r
+  bibdate =    "2006-02-15",\r
+  bibsource =  "DBLP,\r
+                http://dblp.uni-trier.de/db/conf/cascon/cascon2000.html#PominvilleQVHV00",\r
+  booktitle =  "CASCON",\r
+  booktitle =  "Proceedings of the 2000 conference of the Centre for\r
+                Advanced Studies on Collaborative Research, November\r
+                13-16, 2000, Mississauga, Ontario, Canada",\r
+  publisher =  "IBM",\r
+  year =       "2000",\r
+  editor =     "Stephen A. MacKay and J. Howard Johnson",\r
+  pages =      "8",\r
+  URL =        "http://doi.acm.org/10.1145/782034.782042",\r
+}\r
+\r
+@book{ApparatusAndMethodForArrayBoundsCheckingWithAShadowFile:2001,\r
+  title=               {USPatent: Apparatus and Method for Array Bounds Checking with a Shadow File},\r
+  author=              {Gautam Dewan},\r
+  publisher=   {Sun Microsystems, Inc.},\r
+  address=             {},\r
+  year=                        {2001},\r
+  volume=              {6},\r
+  pages=               {}\r
+}\r
+\r
+@InProceedings{DerivingPreconditionsForArrayBoundCheckElimination:2001,\r
+  title =      "Deriving Pre-Conditions for Array Bound Check\r
+                Elimination",\r
+  author =     "Wei-Ngan Chin and Siau-Cheng Khoo and Dana N. Xu",\r
+  year =       "2000",\r
+  bibdate =    "2004-06-01",\r
+  bibsource =  "DBLP,\r
+                http://dblp.uni-trier.de/db/conf/aplas/aplas2000.html#ChinKX00",\r
+  booktitle =  "APLAS",\r
+  pages =      "9--21",\r
+}\r
+\r
+@InProceedings{AComparisonOfArrayBoundsCheckingOnSuperscalarAndVLIWArchitectures:2002,\r
+    author = {Chris Bentley and Scott A. Watterson and David K. Lowenthal},\r
+    title = {A Comparison of Array Bounds Checking on Superscalar and VLIW Architectures},\r
+    booktitle = {IEEE Workshop on Workload Characterization},\r
+    year = {2002}\r
+}\r
+\r
+@Article{AComprehensiveApproachToArrayBoundsCheckEliminationForJava:2002,\r
+  author =     "Feng Qian and Laurie Hendren and Clark Verbrugge",\r
+  title =      "A Comprehensive Approach to Array Bounds Check\r
+                Elimination for {Java}",\r
+  journal =    "Lecture Notes in Computer Science",\r
+  volume =     "2304",\r
+  pages =      "325--??",\r
+  year =       "2002",\r
+  CODEN =      "LNCSD9",\r
+  ISSN =       "0302-9743",\r
+  bibdate =    "Tue Sep 10 19:09:22 MDT 2002",\r
+  bibsource =  "http://link.springer-ny.com/link/service/series/0558/tocs/t2304.htm",\r
+  URL =        "http://link.springer-ny.com/link/service/series/0558/bibs/2304/23040325.htm;\r
+                http://link.springer-ny.com/link/service/series/0558/papers/2304/23040325.pdf",\r
+  acknowledgement = "Nelson H. F. Beebe, Center for Scientific\r
+                Computing, University of Utah, Department of\r
+                Mathematics, 110 LCB, 155 S 1400 E RM 233, Salt Lake\r
+                City, UT 84112-0090, USA, Tel: +1 801 581 5254, FAX: +1\r
+                801 581 4148, e-mail: \path|beebe@math.utah.edu|,\r
+                \path|beebe@acm.org|, \path|beebe@computer.org|,\r
+                \path|beebe@ieee.org| (Internet), URL:\r
+                \path|http://www.math.utah.edu/~beebe/|",\r
+}\r
+\r
+@InProceedings{EliminationOfJavaArrayBoundsChecksInThePresenceOfIndirection:2002,\r
+  author =     "Mikel Luj{\'a}n and John R. Gurd and T. L. Freeman and\r
+                Jos{\'e} Migue",\r
+  title =      "Elimination of Java array bounds checks in the\r
+                presence of indirection",\r
+  pages =      "76--85",\r
+  booktitle =  "Proceedings of the 2002 joint {ACM}-{ISCOPE}\r
+                conference on Java Grande ({JGI}-02)",\r
+  month =      nov # " ~3--5",\r
+  publisher =  "ACM Press",\r
+  address =    "New York",\r
+  year =       "2002",\r
+}\r
+\r
+@book{MethodForOptimizingArrayBoundsChecksInPrograms:2002,\r
+  title=               {USPatent: Method for Optimizing Array Bounds Checks in Programs},\r
+  author=              {Manish Gupta and Samuel Pratt Midkiff and Jose Eduardo Moreira},\r
+  publisher=   {IBM Corporation},\r
+  year=                        {2002},\r
+  pages=               {58}\r
+}\r
+\r
+@Article{ArrayBoundsCheckEliminationUtilizingAPageProtectionMechanism:2003,\r
+  title=               {Array Bounds Check Elimination Utilizing a Page Protection Mechanism},\r
+  author=              {Motohiro Kawahito},\r
+  publisher=   {IBM Research, Tokyo Research Laboratory},\r
+  journal=             {RT0550 Computer Science},\r
+  address=             {1623-14, Shimotsuruma, Yamato, Kanagawa, 242-8502, Japan},\r
+  year=                        {2003},\r
+  pages=               {6}\r
+}\r
+\r
+@Article{EfficientAndEffectiveArrayBoundChecking:2005,\r
+  author =     "Thi Viet Nga Nguyen and Fran{\c{c}}ois Irigoin",\r
+  title =      "Efficient and effective array bound checking",\r
+  journal =    "ACM Transactions on Programming Languages and\r
+                Systems",\r
+  volume =     "27",\r
+  number =     "3",\r
+  pages =      "527--570",\r
+  month =      may,\r
+  year =       "2005",\r
+  CODEN =      "ATPSDT",\r
+  ISSN =       "0164-0925",\r
+  bibdate =    "Thu Jul 7 12:37:29 MDT 2005",\r
+  bibsource =  "http://www.acm.org/pubs/contents/journals/toplas/",\r
+  acknowledgement = "Nelson H. F. Beebe, University of Utah, Department\r
+                of Mathematics, 110 LCB, 155 S 1400 E RM 233, Salt Lake\r
+                City, UT 84112-0090, USA, Tel: +1 801 581 5254, FAX: +1\r
+                801 581 4148, e-mail: \path|beebe@math.utah.edu|,\r
+                \path|beebe@acm.org|, \path|beebe@computer.org|\r
+                (Internet), URL:\r
+                \path|http://www.math.utah.edu/~beebe/|",\r
+  fjournal =   "ACM Transactions on Programming Languages and\r
+                Systems",\r
+}\r
+\r
+@Article{SymbolicBoundsAnalysisOfPointersArrayIndicesAndAccessedMemoryRegions:2005,\r
+  author =     "Rugina and Rinard",\r
+  title =      "Symbolic Bounds Analysis of Pointers, Array Indices,\r
+                and Accessed Memory Regions",\r
+  journal =    "ACMTOPLAS: ACM Transactions on Programming Languages\r
+                and Systems",\r
+  volume =     "27",\r
+  year =       "2005",\r
+}\r
+\r
+@InProceedings{ArrayBoundsCheckEliminationForTheJavaHotSpotTMClientCompiler:2007,\r
+  title =      "Array bounds check elimination for the Java\r
+                HotSpot{\texttrademark} client compiler",\r
+  author =     "Thomas W{\"u}rthinger and Christian Wimmer and\r
+                Hanspeter M{\"o}ssenb{\"o}ck",\r
+  bibdate =    "2007-10-22",\r
+  bibsource =  "DBLP,\r
+                http://dblp.uni-trier.de/db/conf/pppj/pppj2007.html#WurthingerWM07",\r
+  booktitle =  "PPPJ",\r
+  booktitle =  "Proceedings of the 5th International Symposium on\r
+                Principles and Practice of Programming in Java, {PPPJ}\r
+                2007, Lisboa, Portugal, September 5-7, 2007",\r
+  publisher =  "ACM",\r
+  year =       "2007",\r
+  volume =     "272",\r
+  editor =     "Vasco Amaral and Luis Marcelino and Lu{\'i}s Veiga and\r
+                H. Conrad Cunningham",\r
+  ISBN =       "978-1-59593-672-1",\r
+  pages =      "125--133",\r
+  series =     "ACM International Conference Proceeding Series",\r
+  URL =        "http://doi.acm.org/10.1145/1294325.1294343",\r
+}\r
+\r
+@Misc{VerifiableRangeAnalysisAnnotationsForArrayBoundsCheckElimination:2007,\r
+    author = {Jeffery Von Ronne and Kleanthis Psarris and David Niedzielski},\r
+    title = {Verifiable Range Analysis Annotations for Array Bounds Check Elimination},\r
+    year = {}\r
+}\r
+\r
+@InProceedings{APracticalAndPreciseInferenceAndSpecializerForArrayBoundChecksElimination:2008,\r
+  title =      "A practical and precise inference and specializer for\r
+                array bound checks elimination",\r
+  author =     "Corneliu Popeea and Dana N. Xu and Wei-Ngan Chin",\r
+  bibdate =    "2008-04-04",\r
+  bibsource =  "DBLP,\r
+                http://dblp.uni-trier.de/db/conf/pepm/pepm2008.html#PopeeaXC08",\r
+  booktitle =  "PEPM",\r
+  booktitle =  "Proceedings of the 2008 {ACM} {SIGPLAN} Symposium on\r
+                Partial Evaluation and Semantics-based Program\r
+                Manipulation, {PEPM} 2008, San Francisco, California,\r
+                {USA}, January 7-8, 2008",\r
+  publisher =  "ACM",\r
+  year =       "2008",\r
+  editor =     "Robert Gl{\"u}ck and Oege de Moor",\r
+  ISBN =       "978-1-59593-977-7",\r
+  pages =      "177--187",\r
+  URL =        "http://doi.acm.org/10.1145/1328408.1328434",\r
+}\r
+\r
+@Misc{EfficientIntraproceduralArrayBoundChecking:2008,\r
+  title =      "Efficient Intraprocedural Array Bound Checking",\r
+  author =     "Thi Viet and Nga Nguyenfranc and Ois Irigoin and Ronan\r
+                Keryelllit and Enst Bretagne",\r
+  year =       "2008",\r
+  month =      feb # "~07",\r
+  abstract =   "Array bound checking is critical for code safety and\r
+                debugging but users are not ready to trade much\r
+                execution time for it. A considerable research work has\r
+                been carried out during the past 25 years but\r
+                experimental results are scarce. Commercial\r
+                implementations are limited to intraprocedural array\r
+                bound checking and are not really fulfilling user\r
+                expectations fot compilation and execution times.\r
+                Instead of designing a new specific algorithm, we\r
+                implemented two algorithms representative of the main\r
+                published approaches by re-using automatic\r
+                parallelization techniques available in PIPS, an\r
+                interprocedural parallelizer. The first algorithm is\r
+                based on redundant bound checking elimination. The\r
+                second one is based on insertion of unavoidable tests.\r
+                Results with the SPEC CFP95 benchmarks show that\r
+                commercial products could easily be improved using\r
+                automatic parallelization techniques and that user\r
+                expectations can be fulfilled for most benchmarks.\r
+                However, additional techniques would have be used to\r
+                obtain excellent results for all benchmarks. Our\r
+                approach to optimize bound checking can also be applied\r
+                to other imperative languages such as Fortran, Pascal,\r
+                Java when used for scientific applications.",\r
+  bibsource =  "OAI-PMH server at citeseerx.ist.psu.edu",\r
+  contributor =  "CiteSeerX",\r
+  language =   "en",\r
+  oai =        "oai:CiteSeerXPSU:10.1.1.80.9869",\r
+  relation =   "10.1.1.19.5510; 10.1.1.36.3970; 10.1.1.33.6934;\r
+                10.1.1.127.8252; 10.1.1.121.8818; 10.1.1.44.8796;\r
+                10.1.1.53.9852; 10.1.1.141.4211; 10.1.1.85.5471;\r
+                10.1.1.34.2234; 10.1.1.41.326; 10.1.1.18.3004;\r
+                10.1.1.30.1142; 10.1.1.34.7836",\r
+  rights =     "Metadata may be used without restrictions as long as\r
+                the oai identifier remains attached to it.",\r
+  subject =    "array bound checking; range checking; subscript out of\r
+                range; bound violation; program verification",\r
+  URL =        "http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.80.9869;\r
+                http://www.cri.ensmp.fr/classement/doc/A-316.ps",\r
+}\r
+\r
+@Article{SafeBoundsCheckAnnotations:2008,\r
+  title =      "Safe bounds check annotations",\r
+  author =     "Jeffery von Ronne and Andreas Gampe and David\r
+                Niedzielski and Kleanthis Psarris",\r
+  journal =    "Concurrency and Computation: Practice and Experience",\r
+  year =       "2009",\r
+  number =     "1",\r
+  volume =     "21",\r
+  bibdate =    "2009-05-07",\r
+  bibsource =  "DBLP,\r
+                http://dblp.uni-trier.de/db/journals/concurrency/concurrency21.html#RonneGNP09",\r
+  pages =      "41--57",\r
+  URL =        "http://dx.doi.org/10.1002/cpe.1341",\r
+}\r
+\r
+@InProceedings{SpeculativeImprovementsToVerfifiableBoundsCheckElimination:2008,\r
+  title =      "Speculative improvements to verifiable bounds check\r
+                elimination",\r
+  author =     "Andreas Gampe and Jeffery von Ronne and David\r
+                Niedzielski and Kleanthis Psarris",\r
+  bibdate =    "2008-09-23",\r
+  bibsource =  "DBLP,\r
+                http://dblp.uni-trier.de/db/conf/pppj/pppj2008.html#GampeRNP08",\r
+  booktitle =  "PPPJ",\r
+  booktitle =  "Proceedings of the 6th International Symposium on\r
+                Principles and Practice of Programming in Java, {PPPJ}\r
+                2008, Modena, Italy, September 9-11, 2008",\r
+  publisher =  "ACM",\r
+  year =       "2008",\r
+  volume =     "347",\r
+  editor =     "Lu{\'i}s Veiga and Vasco Amaral and R. Nigel Horspool\r
+                and Giacomo Cabri",\r
+  ISBN =       "978-1-60558-223-8",\r
+  pages =      "85--94",\r
+  series =     "ACM International Conference Proceeding Series",\r
+  URL =        "http://doi.acm.org/10.1145/1411732.1411745",\r
+}\r
+\r
+@InProceedings{ArrayBoundsCheckEliminationForJavaBasedOnSparseRepresentation:2009,\r
+  title =      "Array Bounds Check Elimination for Java Based on\r
+                Sparse Representation",\r
+  author =     "Keqiao Yang and Zeng Huang and Min Yang",\r
+  bibdate =    "2010-04-23",\r
+  bibsource =  "DBLP,\r
+                http://dblp.uni-trier.de/db/conf/sera/sera2009.html#YangHY09",\r
+  booktitle =  "SERA",\r
+  booktitle =  "Proceedings of the Seventh {ACIS} International\r
+                Conference on Software Engineering Research, Management\r
+                and Applications, {SERA} 2009, Haikou, China, 2-4\r
+                December 2009",\r
+  publisher =  "IEEE Computer Society",\r
+  year =       "2009",\r
+  editor =     "Roger Y. Lee and Wencai Du and Haeng-Kon Kim and\r
+                Shaochun Xu",\r
+  ISBN =       "978-0-7695-3903-4",\r
+  pages =      "189--196",\r
+  URL =        "http://doi.ieeecomputersociety.org/10.1109/SERA.2009.11",\r
+}\r
+\r
+@Article{ArrayBoundsCheckEliminationInTheContextOfDeoptimization:2009,\r
+  title =      "Array bounds check elimination in the context of\r
+                deoptimization",\r
+  author =     "Thomas W{\"u}rthinger and Christian Wimmer and\r
+                Hanspeter M{\"o}ssenb{\"o}ck",\r
+  journal =    "Sci. Comput. Program",\r
+  year =       "2009",\r
+  number =     "5-6",\r
+  volume =     "74",\r
+  bibdate =    "2009-06-15",\r
+  bibsource =  "DBLP,\r
+                http://dblp.uni-trier.de/db/journals/scp/scp74.html#WurthingerWM09",\r
+  pages =      "279--295",\r
+  URL =        "http://dx.doi.org/10.1016/j.scico.2009.01.002",\r
+}\r
+\r
+@InProceedings{AVerifiableControlFlowAwareConstraintAnalyzerForBoundsCheckElimination:2009,\r
+  title =      "A Verifiable, Control Flow Aware Constraint Analyzer\r
+                for Bounds Check Elimination",\r
+  author =     "David Niedzielski and Jeffery von Ronne and Andreas\r
+                Gampe and Kleanthis Psarris",\r
+  bibdate =    "2009-08-20",\r
+  bibsource =  "DBLP,\r
+                http://dblp.uni-trier.de/db/conf/sas/sas2009.html#NiedzielskiRGP09",\r
+  booktitle =  "SAS",\r
+  booktitle =  "Static Analysis, 16th International Symposium, {SAS}\r
+                2009, Los Angeles, {CA}, {USA}, August 9-11, 2009.\r
+                Proceedings",\r
+  publisher =  "Springer",\r
+  year =       "2009",\r
+  volume =     "5673",\r
+  editor =     "Jens Palsberg and Zhendong Su",\r
+  ISBN =       "978-3-642-03236-3",\r
+  pages =      "137--153",\r
+  series =     "Lecture Notes in Computer Science",\r
+  URL =        "http://dx.doi.org/10.1007/978-3-642-03237-0",\r
+}\r
+\r
+@Misc{SafeMultiphaseBondsCheckEliminationInJava:2010,\r
+    author = {Andreas Gampe and David Niedzielski and Jeffery Von Ronne and Kleanthis Psarris},\r
+    title = {Safe, Multiphase Bounds Check Elimination in Java},\r
+    year = {2010}\r
+}\r
+\r
+###############################################################################\r
+# Documents that cover important auxiliary information!\r
+###############################################################################\r
+\r
+@Article{AFastAlgorithmForFindingDominatorsInAFlowGraph:1979,\r
+  author =     "Thomas Lengauer and Robert E. Tarjan",\r
+  title =      "A Fast Algorithm for Finding Dominators in a Flow\r
+                Graph",\r
+  journal =    "ACM Transactions on Programming Languages and\r
+                Systems",\r
+  volume =     "1",\r
+  number =     "1",\r
+  pages =      "121--141",\r
+  month =      jul,\r
+  year =       "1979",\r
+  reffrom =    "Touzeau:acm:cc:1984",\r
+}\r
+\r
+@Misc{ASImpleFastDominanceAlgorithm:2001,\r
+  title =      "A Simple, Fast Dominance Algorithm",\r
+  author =     "Keith D. Cooper and Timothy J. Harvey and Ken\r
+                Kennedy",\r
+  year =       "2001",\r
+  month =      aug # "~12",\r
+  abstract =   "This paper returns to a simple formulation of\r
+                dominance as a global data-flow problem. Some insights\r
+                into the nature of dominance lead to an implementation\r
+                of an O(N ) algorithm that runs faster, in practice,\r
+                than the classic Lengauer-Tarjan algorithm, which has a\r
+                timebound of O(E log(N)).Wecompare the algorithm to\r
+                Lengauer-Tarjan because it is the best known and most\r
+                widely used of the fast algorithms for dominance.\r
+                Working from the same implementation insights, we also\r
+                rederive (from earlier work on control dependence by\r
+                Ferrante, et al.)amethod Contract/grant sponsor: This\r
+                research was supported, in part, by Darpa through\r
+                Usafrl contract F30602-97-2-298, and the State of Texas\r
+                through its Advanced Technology Program, grant number\r
+                3604-0122-1999",\r
+  citeseer-references = "oai:CiteSeerPSU:472597; oai:CiteSeerPSU:87236;\r
+                oai:CiteSeerPSU:87236; oai:CiteSeerPSU:106151;\r
+                oai:CiteSeerPSU:54768",\r
+  annote =     "Keith D. Cooper (Rice University; Houston , TX); Ken\r
+                Kennedy (SUMMARY);",\r
+  bibsource =  "OAI-PMH server at cs1.ist.psu.edu",\r
+  language =   "en",\r
+  oai =        "oai:CiteSeerPSU:573270",\r
+  rights =     "unrestricted",\r
+  URL =        "http://citeseer.ist.psu.edu/573270.html;\r
+                http://www.cs.rice.edu/~keith/EMBED/dom.pdf",\r
+}\r
+\r
+\r
+\r
+###############################################################################\r
+# End\r
+###############################################################################\r