* doc/handbook/s390.tex: New file, docs for the s390 port.
[cacao.git] / doc / handbook / java.bib
1 Ishizaki+00@proceedings{ISMM98,
2   key =          "ISMM",
3   booktitle =    {Proceedings of the First International Symposium on
4                   Memory Management},
5   title =        {Proceedings of the First International Symposium on
6                   Memory Management},
7   editor =       {Richard Jones},
8   address =      {Vancouver},
9   series =       SIGPLAN,
10   volume =       "34(3)",
11   publisher =    ACM,
12   month =        oct,
13   year =         1998,
14   ISBN =         {1-58113-114-3},
15   note =         {ISMM is the successor to the IWMM series of
16                   workshops}
17 }
18
19 @INPROCEEDINGS{Chan:Dadoo:Santhanam:usenix:summer:1990,
20   AUTHOR =       {Paul Chan and Manoj Dadoo and Vatsa Santhanam},
21   TITLE =        {Evolution of the {U-code} Compiler Intermediate
22                   Language at {Hewlett-Packard}},
23   BOOKTITLE =    {Proceedings of the 1990 Summer USENIX Conference},
24   MONTH =        {June},
25   PAGES =        {199--210},
26   YEAR =         1990
27 }
28
29 @INPROCEEDINGS{Taba+98,
30   AUTHOR =       {Ali-Reza Adl-Tabatabai and Michal Ciernak and
31                   Guei-Yuan Lueh and Vishesh M. Parikh and James
32                   M. Stichnoth},
33   TITLE =        {Fast, Effective Code Generation in a Just-In-Time
34                   {Java} Compiler},
35   BOOKTITLE =    {Conference on Programming Language Design and
36                   Implementation},
37   ORGANIZATION = {ACM},
38   SERIES =       {SIGPLAN},
39   VOLUME =       {33(5)},
40   PAGES =        {280--290},
41   ADDRESS =      {Montreal},
42   YEAR =         1998
43 }
44
45 @INPROCEEDINGS{Bacon+98,
46   AUTHOR =       {David F. Bacon and Ravi Konuru and Chet Mruthy and
47                   Mauricio Serrano},
48   TITLE =        {Thin Locks: Featherweight Synchronization for {Java}},
49   BOOKTITLE =    {Conference on Programming Language Design and
50                   Implementation},
51   ORGANIZATION = {ACM},
52   SERIES =       {SIGPLAN},
53   VOLUME =       {33(5)},
54   PAGES =        {258--268},
55   ADDRESS =      {Montreal},
56   YEAR =         1998
57 }
58
59 @INPROCEEDINGS{Cameron+92,
60   AUTHOR =       {Don Cameron and Paul Faust and Dmitry Lenkov and
61                   Michey Mehta},
62   TITLE =        {A Portable Implementation of {C++} Exception
63                   Handling},
64   BOOKTITLE =    {C++ Technical Conference},
65   ORGANIZATION = {USENIX},
66   PAGES =        {225--243},
67   MONTH =        {August},
68   YEAR =         1992
69 }
70
71 @ARTICLE{Chase94,
72   AUTHOR =       {David Chase},
73   TITLE =        {Implementation of Exception Handling},
74   JOURNAL =      {Journal of C Language Translation},
75   VOLUME =       5,
76   NUMBER =       4,
77   PAGES =        {??--??},
78   MONTH =        {June},
79   YEAR =         1994
80 }
81
82 @INPROCEEDINGS{Giering+94,
83   AUTHOR =       {E. W. Giering and Frank Mueller and T. P. Baker},
84   TITLE =        {Features of the {Gnu} {Ada} Runtime Library},
85   BOOKTITLE =    {TRI-Ada '94},
86   ORGANIZATION = {ACM},
87   PAGES =        {93--103},
88   YEAR =         1994
89 }
90
91 @INPROCEEDINGS{Gunter+95,
92   AUTHOR =       {Carl A. Gunter and Didier Remy and Jon G. Riecke},
93   TITLE =        {A Generalization of Exceptions and Control in
94                   {ML}-like languages},
95   BOOKTITLE =    {Seventh International Conference on Functional
96                   Programming Languages and Computer Architecture},
97   ORGANIZATION = {ACM},
98   PAGES =        {12--23},
99   YEAR =         1995
100 }
101
102 @ARTICLE{KoenigStroustrup90,
103   AUTHOR =       {Andrew Koenig and Bjarne Stroustrup},
104   TITLE =        {Exception Handling for {C++}},
105   JOURNAL =      {Journal of Object Oriented Programming},
106   VOLUME =       3,
107   NUMBER =       2,
108   PAGES =        {16--33},
109   MONTH =        {July/August},
110   YEAR =         1990
111 }
112
113 @BOOK{dragon86,
114   AUTHOR =    {Alfred V. Aho and Ravi Sethi and Jeffrey D. Ullman},
115   TITLE =     {Compilers: Principles, Techniques, and Tools},
116   PUBLISHER = {Addison-Wesley},
117   YEAR =      1986
118 }
119
120
121 @BOOK{appel98,
122   AUTHOR =    {Appel, A.W.},
123   TITLE =     {Modern Compiler Implementation in Java},
124   PUBLISHER = {Cambridge University Press},
125   YEAR =      1998
126 }
127
128
129 @BOOK{Stallings95,
130   AUTHOR =       {William Stallings},
131   TITLE =        {Operating Systems},
132   PUBLISHER =    {Prentice Hall},
133   YEAR =         1995
134 }
135
136 @INPROCEEDINGS{Bershad+92,
137   AUTHOR =       {Brian N. Bershad and David D. Redell and John
138                   R. Ellis},
139   TITLE =        {Fast mutual exclusion for uniprocessors},
140   BOOKTITLE =    {Annual Symposium on Architectural Support for
141                   Programming Languages and Operating Systems},
142   ORGANIZATION = {ACM},
143   PAGES =        {223--233},
144   MONTH =        {October},
145   YEAR =         1992
146 }
147
148 @INPROCEEDINGS{Mueller93,
149   AUTHOR =       {Frank Mueller},
150   TITLE =        {A Library Implementation of {POSIX} Threads under
151                   {UNIX}},
152   BOOKTITLE =    {Winter USENIX},
153   PAGES =        {29--41},
154   ADDRESS =      {San Diego},
155   MONTH =        {January},
156   YEAR =         1993
157 }
158
159 @TECHREPORT{Keppel93,
160   AUTHOR =       {David Keppel},
161   TITLE =        {Tools and Techniques for Building Fast Portable
162                   Threads Packages},
163   NUMBER =       {UWCSE 93-05-06},
164   INSTITUTION =  {University of Washington},
165   YEAR =         1993
166 }
167
168 @MISC{BissAWT97,
169   AUTHOR =       {Peter Mehlitz},
170   TITLE =        {Biss {AWT}},
171   HOWPUBLISHED = {{\tt http://www.biss-net.com/biss-awt.html}},
172   YEAR =         1997
173 }
174
175 @MISC{Jigsaw97,
176   KEY =          {Jigsaw97},
177   TITLE =        {Jigsaw},
178   HOWPUBLISHED = {{\tt http://www.w3.org/Jigsaw/}},
179   YEAR =         1997
180 }
181
182 @MISC{PosixThreads96,
183   KEY =          {POSIX},
184   TITLE =        {Standard for Threads Interface to {POSIX}},
185   HOWPUBLISHED = {IEEE, P1003.1c},
186   YEAR =         1996
187 }
188
189 @MISC{SunThreads97,
190   KEY =          {JavaThreads},
191   TITLE =        {Java Threads Whitepaper},
192   HOWPUBLISHED = {{\tt http://java.sun.com/}},
193   INSTITUTION =  {SUN},
194   YEAR =         1997
195 }
196
197 @INPROCEEDINGS{AltmanEbcioglu97,
198   AUTHOR =       {Erik Altman and Kemal Ebcio\u{g}lu},
199   TITLE =        {{DAISY}: Dynamic Compilation for 100\% Architectural
200                   Compatibility},
201   BOOKTITLE =    {ISCA'97 - The 24th Annual International Symposium on
202                   Computer Architecture},
203   ORGANIZATION = {ACM, IEEE},
204   YEAR =         1997
205 }
206
207 @BOOK{javaref96,
208   AUTHOR =       {Ken Arnold and James Gosling},
209   TITLE =        {The {Java} Programming Language},
210   PUBLISHER =    {Addison-Wesley},
211   YEAR =         1996
212 }
213
214 @INPROCEEDINGS{bacon&sweeny96-,
215   author =       {David F. Bacon and Peter F. Sweeney},
216   title =        {Fast Static Analysis of {C++} Virtual Function
217                   Calls},
218   booktitle =    {Conference on Object-Oriented Programming Systems,
219                   Languages \& Applications (OOPSLA'96)},
220   ORGANIZATION = {ACM},
221   pages =        {324--341},
222   year =         1996
223 }
224
225 @ARTICLE{picoJava97,
226   AUTHOR =       {J. Michael O'Connor and Marc Tremblay},
227   TITLE =        {{picoJava-I}: The {Java} Virtual Machine in
228                   Hardware},
229   JOURNAL =      {IEEE Micro},
230   VOLUME =       17,
231   NUMBER =       2,
232   PAGES =        {45--53},
233   MONTH =        {April},
234   YEAR =         1997
235 }
236
237 @ARTICLE{SunJIT97,
238   AUTHOR =       {Timothy Cramer and Richard Friedman and Terrence
239                   Miller and David Seberger and Robert Wilson and
240                   Mario Wolczko},
241   TITLE =        {Compiling {Java} Just in Time},
242   JOURNAL =      {IEEE Micro},
243   VOLUME =       17,
244   NUMBER =       3,
245   PAGES =        {36--43},
246   MONTH =        {June},
247   YEAR =         1997
248 }
249
250 @ARTICLE{ssa91,
251   AUTHOR =       {Ron Cytron and Jeanne Ferrante and Barry K. Rosen
252                   and Mark N. Wegman and F. Kenneth Zadeck},
253   TITLE =        {Efficiently computing Static Single Assignment Form
254                   and the Control Flow Graph},
255   JOURNAL =      {ACM Transactions on Programming Languages and
256                   Systems},
257   VOLUME =       13,
258   NUMBER =       4,
259   PAGES =        {451--490},
260   MONTH =        {October},
261   YEAR =         1991
262 }
263
264 @INPROCEEDINGS{diwan+96-,
265   AUTHOR =       {Amer Diwan and J. Eliot B. Moss and Kathryn
266                   S. McKinley},
267   TITLE =        {Simple and Effective Analysis of Statically-Typed
268                   Object-Oriented Programs},
269   BOOKTITLE =    {Conference on Object-Oriented Programming Systems,
270                   Languages \& Applications (OOPSLA '96)},
271   ORGANIZATION = {ACM},
272   PAGES =        {292--305},
273   YEAR =         1996
274 }
275
276 @INPROCEEDINGS{EbciogluAltman97,
277   AUTHOR =       {Kemal Ebcio\u{g}lu and Erik Altman and Erdem
278                   Hokenek},
279   TITLE =        {A {Java} {ILP} Machine based on fast Dynamic
280                   Compilation},
281   BOOKTITLE =    {MASCOTS'97 - International Workshop on Security and
282                   Efficiency Aspects of {Java}},
283   YEAR =         1997
284 }
285
286 @INPROCEEDINGS{Ertl92-,
287   AUTHOR =       {M. Anton Ertl},
288   TITLE =        {A New Approach to {Forth} native Code Generation},
289   BOOKTITLE =    {EuroForth '92},
290   ADDRESS =      {Southampton},
291   YEAR =         1992
292 }
293
294 @PHDTHESIS{Ertl96phd,
295   AUTHOR =       {M. Anton Ertl},
296   TITLE =        {Implementation of Stack-Based Languages on Register
297                   Machines},
298   SCHOOL =       {Technische Universit\"at Wien},
299   MONTH =        {April},
300   YEAR =         1996
301 }
302
303 @INPROCEEDINGS{ErtlMaierhofer95,
304   AUTHOR =       {M. Anton Ertl and Martin Maierhofer},
305   TITLE =        {Translating {Forth} to native {C}},
306   BOOKTITLE =    {EuroForth '95},
307   ADDRES =       {Dagstuhl},
308   YEAR =         1995
309 }
310
311 @INPROCEEDINGS{Ertl&Pirker97,
312   AUTHOR =       {M. Anton Ertl and Christian Pirker},
313   TITLE =        {The Structure of a {Forth} Native Code Compiler},
314   BOOKTITLE =    {EuroForth '97 Conference Proceedings},
315   ADDRES =       {Oxford},
316   PAGES =        {107--116},
317   YEAR =         1997
318 }
319
320 }
321 @PHDTHESIS{Franz94,
322   AUTHOR =       {Michael Franz},
323   TITLE =        {Code Generation On the Fly: A Key for Portable
324                   Software},
325   SCHOOL =       {ETH Z\"urich},
326   YEAR =         1994
327 }
328
329 @BOOK{smalltalk80,
330   AUTHOR =       {Adele Goldberg and David Robson},
331   TITLE =        {SMALLTALK-80, The Language and its Implementation},
332   PUBLISHER =    {Addison-Wesley},
333   YEAR =         1983
334 }
335
336 @INPROCEEDINGS{Gough97,
337   AUTHOR =       {K. John Gough},
338   TITLE =        {Multi-language, Multi-target Compiler Development:
339                   Evolution of the {Gardens Point} Compiler Project},
340   BOOKTITLE =    {JMLC'97 --Joint Modular Languages Conference},
341   EDITOR =       {Hanspeter M\"ossenb\"ock},
342   PUBLISHER =    {LNCS 1204},
343   ADDRESS =      {Linz},
344   YEAR =         1997
345 }
346
347 @MASTERSTHESIS{Grafl97,
348   AUTHOR =       {Reinhard Grafl},
349   TITLE =        {{CACAO}: {Ein 64Bit JavaVM Just-in-Time Compiler}},
350   SCHOOL =       {Technische Universit\"at Wien},
351   MONTH =        {January},
352   YEAR =         1997
353 }
354
355 @BOOK{hennessy&patterson90,
356   AUTHOR =       {John L. Hennessy and David A. Patterson},
357   TITLE =        {Computer Architecture. A Quantitative Approach},
358   PUBLISHER =    {Morgan Kaufman Publishers},
359   YEAR =         1990
360 }
361
362 @ARTICLE{Hsieh+97,
363   AUTHOR =       {Cheng-Hsueh A. Hsieh and Maria T. Conte and Teresa
364                   L. Johnson and John C. Gyllenhaal and {Wen-mei}
365                   W. Hwu},
366   TITLE =        {Optimizing NET Compilers for Improved {Java}
367                   Performance},
368   JOURNAL =      {IEEE Computer},
369   VOLUME =       30,
370   NUMBER =       6,
371   PAGES =        {67--75},
372   MONTH =        {June},
373   YEAR =         1997
374 }
375
376 @INPROCEEDINGS{HsiehHwu97,
377   AUTHOR =       {Cheng-Hsueh A. Hsieh and John C. Gyllenhaal and
378                   {Wen-mei} W. Hwu},
379   TITLE =        {Java Bytecode to Native Code Translation: The
380                   {Caffeine} Prototype and Preliminary Results},
381   BOOKTITLE =    {29th Annual IEEE/ACM International Symposium on
382                   Microarchitecture (MICRO'29)},
383   ADDRES =       {Paris},
384   YEAR =         1996
385 }
386
387 @ARTICLE{Holmer96,
388   AUTHOR =       {Bruce K. Holmer and Barton Sano and Michael Carlton
389                   and Peter van Roy and Alvin M. Despain},
390   TITLE =        {Design and Analysis of Hardware for High-Performance
391                   {Prolog}},
392   JOURNAL =      {Journal of Logic Programming},
393   PUBLISHER =    {Elsevier},
394   VOLUME =       {29(1-3)},
395   PAGES =        {107--139},
396   YEAR =         1996
397 }
398
399 @BOOK{garbagebook,
400   AUTHOR =       {Richard Jones and Rafael Lins},
401   TITLE =        {Garbage Collection},
402   PUBLISHER =    {John Wiley \& Sons},
403   YEAR =         1996
404 }
405
406 @INPROCEEDINGS{Kistler97,
407   AUTHOR =       {Thomas Kistler},
408   TITLE =        {Dynamic Runtime Optimization},
409   BOOKTITLE =    {JMLC'97 - Joint Modular Languages Conference},
410   EDITOR =       {Hanspeter M\"ossenb\"ock},
411   PUBLISHER =    {LNCS 1204},
412   ADDRESS =      {Linz},
413   YEAR =         1997
414 }
415
416 @INPROCEEDINGS{KrBe95a,
417   AUTHOR =       {Andreas Krall and Thomas Berger},
418   TITLE =        {Incremental Global Compilation of {Prolog} with the
419                   {Vienna Abstract Machine}},
420   BOOKTITLE =    {Twelfth International Conference on Logic
421                   Programming},
422   EDITOR =       {Leon Sterling},
423   PUBLISHER =    {MIT Press},
424   PAGES =        {333--347},
425   ADDRESS =      {Tokyo},
426   YEAR =         1995
427 }
428
429 @INPROCEEDINGS{KrGr97a,
430   AUTHOR =       {Andreas Krall and Reinhard Grafl},
431   TITLE =        {{CACAO} -- A 64 bit {JavaVM} Just-in-Time Compiler},
432   BOOKTITLE =    {Workshop on Java for Science and Engineering
433                   Computation},
434   EDITOR =       {Geoffry C. Fox and Wei Li},
435   ORGANIZATION = {ACM},
436   MONTH =        {June},
437   PAGES =        {},
438   ADDRESS =      {Las Vegas},
439   YEAR =         1997
440 }
441
442 @ARTICLE{KrGr97b,
443   AUTHOR =       {Andreas Krall and Reinhard Grafl},
444   TITLE =        {{CACAO} -- A 64 bit {JavaVM} Just-in-Time Compiler},
445   JOURNAL =      {Concurrency: Practice and Experience},
446   PUBLISHER =    {John Wiley \& Sons},
447   VOLUME =       {9},
448   NUMBER =       {11},
449   PAGES =        {1017--1030},
450   YEAR =         1997
451 }
452
453 @INPROCEEDINGS{KrErGsch98,
454   AUTHOR =       {Andreas Krall and Anton Ertl and Michael Gschwind},
455   TITLE =        {{JavaVM} Implementations: Compilers versus Hardware},
456   BOOKTITLE =    {Australian Computer Architecture Conference
457                   ({ACAC'98})},
458   EDITOR =       {John Morris},
459   VOLUME =       {20(4)},
460   SERIES =       {Australian Computer Science Communications},
461   PUBLISHER =    {Springer},
462   PAGES =        {101--110},
463   ADDRESS =      {Perth},
464   YEAR =         1998
465 }
466
467 @INPROCEEDINGS{KrPr98a,
468   AUTHOR =       {Andreas Krall and Mark Probst},
469   TITLE =        {Monitors and Exceptions: How to implement {Java}
470                   efficiently},
471   BOOKTITLE =    {ACM 1998 Workshop on Java for High-Performance
472                   Computing},
473   EDITOR =       {Siamak Hassanzadeh and Klaus Schauser},
474   ORGANIZATION = {ACM},
475   MONTH =        {March},
476   PAGES =        {15--24},
477   ADDRESS =      {Palo Alto},
478   YEAR =         1998
479 }
480
481 @ARTICLE{KrPr98b,
482   AUTHOR =       {Andreas Krall and Mark Probst},
483   TITLE =        {Monitors and Exceptions: How to implement {Java}
484                   efficiently},
485   JOURNAL =      {Concurrency: Practice and Experience},
486   PUBLISHER =    {John Wiley \& Sons},
487   VOLUME =       {10},
488   NUMBER =       {11--13},
489   PAGES =        {837--850},
490   YEAR =         1998
491 }
492
493 @INPROCEEDINGS{Kr98b,
494   AUTHOR =       {Andreas Krall},
495   TITLE =        {Efficient {JavaVM} Just-in-Time Compilation},
496   BOOKTITLE =    {International Conference on Parallel Architectures
497                   and Compilation Techniques},
498   EDITOR =       {Jean-Luc Gaudiot},
499   ORGANIZATION = {IFIP,ACM,IEEE},
500   PUBLISHER =    {North-Holland},
501   PAGES =        {205--212},
502   ADDRESS =      {Paris},
503   MONTH =        {October},
504   YEAR =         1998
505 }
506
507 @INPROCEEDINGS{GrErKr01b,
508         AUTHOR      = {David Gregg and M.~Anton Ertl and Andreas Krall},
509         TITLE       = {Implementing an Efficient {Java} Interpreter},
510         BOOKTITLE   = {HPCN'01, Java in High Performance Computing},
511         EDITOR      = {Vladimir Getov and George K. Thiruvathukal},
512         SERIES      = {LNCS 2110},
513         PUBLISHER   = {Springer},
514         PAGES       = {613--620},
515         ADDRESS     = {Amsterdam},
516         MONTH       = {June},
517         YEAR        = 2001}
518
519 @BOOK{javavm96,
520   AUTHOR =       {Tim Lindholm and Frank Yellin},
521   TITLE =        {The {Java} Virtual Machine Specification},
522   PUBLISHER =    {Addison-Wesley},
523   YEAR =         1996
524 }
525
526 @INPROCEEDINGS{Muller+97,
527   AUTHOR =       {Gilles Muller and Barbara Moura and Fabrice Bellard
528                   and Charles Consel},
529   TITLE =        {Harrisa: a Flexible and Efficient {Java} Environment
530                   Mixing Bytecode and Compiled Code},
531   BOOKTITLE =    {COOTS'97 - third Conference on Object-Oriented
532                   Technologies and Systems},
533   YEAR =         1997
534 }
535
536 @PHDTHESIS{Lilith?,
537   AUTHOR =       {Richard Stanley Ohran},
538   TITLE =        {Lilith: a workstation computer for Modula-2},
539   SCHOOL =       {ETH Z\"urich},
540   YEAR =         1984
541 }
542
543 @INPROCEEDINGS{PaJoSm97,
544   AUTHOR =       {Subbaro Palacharia and Norman P. Jouppi and
545                   J.E. Smith},
546   TITLE =        {Complexity-Effective Superscalar Processors},
547   BOOKTITLE =    {ISCA'97 - The 24th Annual International Symposium on
548                   Computer Architecture},
549   ORGANIZATION = {ACM, IEEE},
550   YEAR =         1997
551 }
552
553 @BOOK{Pcode82,
554   AUTHOR =       {Steven Pemberton and Martin C. Daniels},
555   TITLE =        {Pascal Implementation, The P4 Compiler},
556   PUBLISHER =    {Ellis Horwood},
557   YEAR =         1982
558 }
559
560 @BOOK{AlphaRef95,
561   AUTHOR =       {R.L. Sites, R.T. Witek},
562   TITLE =        {Alpha AXP Architecture Reference Manual},
563   PUBLISHER =    {Digital Press},
564   YEAR =         1995
565 }
566
567 @INPROCEEDINGS{UNCOL61,
568   AUTHOR =       {T. B. Steel},
569   TITLE =        {A first version of {UNCOL}},
570   BOOKTITLE =    {Proceedings of the Western Joint IRE-AIEE-ACM
571                   Computer Conference},
572   YEAR =         1961,
573   PAGES =        {371 -- 377}
574 }
575
576 @ARTICLE{AmsterdamKit83,
577   AUTHOR =       {Andrew S. Tanenbaum and Hans van {Sta\-ve\-ren} and
578                   E. G. Keizer and Johan W. Stevenson},
579   TITLE =        {A Practical Tool Kit for making Portable Compilers},
580   JOURNAL =      {Communications of the ACM},
581   VOLUME =       16,
582   NUMBER =       9,
583   PAGES =        {654--660},
584   MONTH =        {September},
585   YEAR =         1983
586 }
587
588 @ARTICLE{AmsterdamKit89,
589   AUTHOR =       "A. S. Tanenbaum and M. F. Kaashoek and
590                   K. G. Langendoen and C. J. H. Jacobs",
591   TITLE =        "The design of very fast portable compilers",
592   JOURNAL =      "ACM SIG{\-}PLAN Notices",
593   VOLUME =       24,
594   NUMBER =       11,
595   PAGES =        "125--131",
596   MONTH =        nov,
597   YEAR =         1989
598 }
599
600 @INPROCEEDINGS{Self,
601   AUTHOR =       {David Ungar and Randall B. Smith},
602   TITLE =        {{SELF}: The Power of Simplicity},
603   BOOKTITLE =    {OOPSLA '87 Proceedings},
604   YEAR =         {1987},
605   PAGES =        {227--242}
606 }
607
608 @INPROCEEDINGS{VitekHorspool96,
609   AUTHOR =       {Jan Vitek and R. Nigel Horspool},
610   TITLE =        {Compact Dispatch Tables for Dynamically Typed Object
611                   Oriented Languages},
612   BOOKTITLE =    {6th International Conference CC '96},
613   YEAR =         1996,
614   PAGES =        {307--325}
615 }
616
617 @INPROCEEDINGS{KrViHo97,
618         AUTHOR      = {Andreas Krall and Jan Vitek and Nigel Horspool},
619         TITLE       = {Near Optimal Hierarchical Encoding of Types},
620         BOOKTITLE   = {11th European Conference on Object Oriented Programming ({ECOOP'97})},
621         EDITOR      = {Mehmet Aksit and Satoshi Matsuoka},
622         SERIES      = {LNCS 1241},
623         PUBLISHER   = {Springer},
624         PAGES       = {128--145},
625         ADDRESS     = {Finland},
626         YEAR        = 1997}
627
628 @INPROCEEDINGS{ViHoKr97,
629   AUTHOR =       {Jan Vitek and Nigel Horspool and Andreas Krall},
630   TITLE =        {Efficient Type Inclusion Tests},
631   BOOKTITLE =    {Conference on Object Oriented Programming Systems,
632                   Languages \& Applications ({OOPSLA '97})},
633   EDITOR =       {Toby Bloom},
634   ORGANIZATION = {ACM},
635   MONTH =        {October},
636   PAGES =        {142--157},
637   ADDRESS =      {Atlanta},
638   YEAR =         1997
639 }
640
641 @INPROCEEDINGS{GehmRandScal00,
642   AUTHOR =       {Sanjay Gehmawat and Keith H. Randall and Daniel
643                   J. Scales},
644   TITLE =        {Field Analysis: Getting Useful and Low-cost
645                   Interprocedural Information},
646   BOOKTITLE =    {Conference on Programming Language Design and
647                   Implementation},
648   ORGANIZATION = {ACM},
649   SERIES =       {SIGPLAN},
650   VOLUME =       {35(5)},
651   PAGES =        {334--344},
652   ADDRESS =      {Vancouver},
653   YEAR =         2000
654 }
655
656 @INPROCEEDINGS{BodikGuptaSarkar00,
657   AUTHOR =       {Rastislav Bodik and Rajiv Gupta and Vivek Sarkar},
658   TITLE =        {{ABCD}: Eliminating Array Bound Checks on Demand},
659   BOOKTITLE =    {Conference on Programming Language Design and
660                   Implementation},
661   ORGANIZATION = {ACM},
662   SERIES =       {SIGPLAN},
663   VOLUME =       {35(5)},
664   PAGES =        {321--333},
665   ADDRESS =      {Vancouver},
666   YEAR =         2000
667 }
668
669 @INPROCEEDINGS{Ruf00,
670   AUTHOR =       {Erik Ruf},
671   TITLE =        {Effective Synchronization Removal for {Java}},
672   BOOKTITLE =    {Conference on Programming Language Design and
673                   Implementation},
674   ORGANIZATION = {ACM},
675   SERIES =       {SIGPLAN},
676   VOLUME =       {35(5)},
677   PAGES =        {208--218},
678   ADDRESS =      {Vancouver},
679   YEAR =         2000
680 }
681
682 @ARTICLE{Marmot00,
683   AUTHOR =       "Robert Fitzgerald and Todd B. Knoblock and Erik Ruf and
684                   Bjarne Steensgaard and David Tarditi",
685   TITLE =        "Marmot: an optimizing compiler for {Java}",
686   JOURNAL =      "Software -- Practice and Experience",
687   VOLUME =       30,
688   NUMBER =       3,
689   PAGES =        "199--232",
690   MONTH =        nov,
691   YEAR =         2000
692 }
693
694 @Misc{Wilkinson:97,
695   OPTkey =       {},
696   author =       {Tim Wilkinson},
697   title =        {{KAFFE}: A free virtual machine to run {Java} code},
698   howpublished = {{\tt http://www.kaffe.org}},
699   year =         {1997},
700   OPTmonth =     {},
701   OPTnote =      {},
702   OPTannote =    {}
703 }
704
705 @TechReport{Proebsting+97,
706   author =       {Todd A. Proebsting and Gregg Townsend and Patrick
707                   Bridges and John H. Hartman and Tim Newsham and
708                   Scott A. Watterson},
709   title =        {Toba: {Java} for Applications},
710   institution =  {University of Arizona},
711   year =         {1997},
712   OPTkey =       {},
713   OPTtype =      {},
714   OPTnumber =    {},
715   address =      {Tucson, AZ},
716   OPTmonth =     {},
717   OPTnote =      {},
718   OPTannote =    {}
719 }
720
721 @BOOK{GCBook96,
722   AUTHOR =       {Richard Jones and Rafael Lins},
723   TITLE =        {Garbage Collection},
724   PUBLISHER =    {John Wiley},
725   YEAR =         1996
726 }
727
728 @INCOLLECTION{garbagesurvey,
729   AUTHOR =       {Paul R. Wilson},
730   TITLE =        {Uniprocessor Garbage Collection Techniques},
731   BOOKTITLE =    {ACM Computing Surveys},
732   PUBLISHER =    {ACM},
733   PAGES =        {to apear},
734   YEAR =         {1994}
735 }
736
737 @INPROCEEDINGS{Age+98,
738   AUTHOR =       {Ole Agesen and David Detlefs and J. Eliot B. Moss},
739   TITLE =        {Garbage Collection and Local Variable Type-Precision
740                   and Liveness in {Java} Virtual Machines},
741   BOOKTITLE =    {Conference on Programming Language Design and
742                   Implementation},
743   ORGANIZATION = {ACM},
744   SERIES =       {SIGPLAN},
745   VOLUME =       {33(6)},
746   PAGES =        {269--279},
747   ADDRESS =      {Montreal},
748   YEAR =         1998
749 }
750
751 @INPROCEEDINGS{Johnstone98,
752   AUTHOR =       {Mark S. Johnstone and Paul R. Wilson},
753   TITLE =        {The Memory Fragmentation Problem: Solved?},
754   BOOKTITLE =    {1998 International Symposium on Memory Management},
755   ORGANIZATION = {ACM},
756   PAGES =        {},
757   ADDRESS =      {Vancouver},
758   YEAR =         1998
759 }
760
761 @INPROCEEDINGS{Hicks+98,
762   AUTHOR =       {Michael Hicks and Luke Hornof and Jonathan T. Moore
763                   and Scott Nettles},
764   TITLE =        {A Study of Large Object Spaces},
765   BOOKTITLE =    {1998 International Symposium on Memory Management},
766   ORGANIZATION = {ACM},
767   PAGES =        {138--145},
768   ADDRESS =      {Vancouver},
769   YEAR =         1998
770 }
771
772 @INPROCEEDINGS{Colnet+98,
773   AUTHOR =       {Dominique Colnet and Philippe Coucaud and Olivier
774                   Zendra},
775   TITLE =        {Compiler Support to Customize the Mark and Sweep
776                   Algorithm},
777   BOOKTITLE =    {1998 International Symposium on Memory Management},
778   ORGANIZATION = {ACM},
779   PAGES =        {154--165},
780   ADDRESS =      {Vancouver},
781   YEAR =         1998
782 }
783
784 @ARTICLE{Boehm88,
785   AUTHOR =       {Hans-Juergen Boehm and Mark Weiser},
786   TITLE =        {Garbage Collection in an Uncooperative Environment},
787   JOURNAL =      {Software Practice and Experience},
788   PUBLISHER =    {John Wiley \& Sons},
789   VOLUME =       {18},
790   NUMBER =       {9},
791   PAGES =        {807--820},
792   YEAR =         1988
793 }
794
795 @InProceedings{HudsonMoss:1992,
796   author =       {Richard L. Hudson and J. Eliot B. Moss},
797   title =        {Incremental Collection of Mature Objects},
798   booktitle =    {Proceedings of the International Workshop on Memory
799                   Management},
800   pages =        {388--403},
801   month =        {September},
802   year =         {1992}
803 }
804
805 @TECHREPORT{Petit-Bianco99,
806   AUTHOR =       {Alexandre Petit-Bianco99},
807   TITLE =        {No Silver Bullet - Garbage Collection for {Java} in
808                   Embedded Systems},
809   NUMBER =       {http://sourceware.cygnus.com/java/},
810   INSTITUTION =  {Cygnus Solutions},
811   MONTH =        {August},
812   YEAR =         1998
813 }
814
815 @TECHREPORT{Ritzau99,
816   AUTHOR =       {Alexandre Petit-Bianco99},
817   TITLE =        {No Silver Bullet - Garbage Collection for {Java} in
818                   Embedded Systems},
819   NUMBER =       {thesis proposal, http://www.ida.liu.se/~tobri/},
820   INSTITUTION =  {Link\"oping University},
821   MONTH =        {August},
822   YEAR =         1998
823 }
824
825 @inproceedings{lim98,
826   author =       {Tian F. Lim and Przemyslaw Pardyak and Brian
827                   N. Bershad},
828   title =        {A Memory-Efficient Real-Time Non-Copying Garbage
829                   Collector},
830   pages =        {118--129},
831   crossref =     {ISMM98},
832   URL =          "http://www.cs.washington.edu/homes/tian/ISMM98/",
833   abstract =     {Garbage collectors used in operating systems such as
834                   SPIN and embedded systems such as Java and Inferno
835                   must operate with limited resources and minimize
836                   their impact on application
837                   performance. Consequently, they must maintain short
838                   real-time pauses, low overhead, and a small memory
839                   footprint. Most garbage collectors are not adequate
840                   because they are either not real-time or they
841                   require larger heaps because they trade space for
842                   time. For example, Treadmill uses segregated free
843                   lists to allocate and reclaim memory in constant
844                   time but at the cost of under-utilizing memory. We
845                   have implemented a new version of the Treadmill
846                   collector and used it in the SPIN extensible
847                   operating system kernel. We chose Treadmill for its
848                   excellent real-time latencies and low overhead. We
849                   improve its poor memory utilization by using real-
850                   time page-level management techniques that reduce
851                   the fragmentation caused by segregated free
852                   lists. We use page-wise collection to locate pages
853                   of free memory, which are dynamically reassigned
854                   between free lists as needed. We use virtual memory
855                   to dynamically remap free pages into continuous
856                   ranges. Our experiments demonstrate that we have
857                   substantially improved memory utilization without
858                   compromising latency or overhead, and that the new
859                   collector performs very well for SPIN's workloads.}
860 }
861
862 @Article{IBM:Moreira:2000,
863   author =       {J. E. Moreira and S. P. Midkoff and M. Gupta and P. V. Artigas and M. Snir and R. D. Lawrence},
864   title =        {Java programming for high-performance numerical computing},
865   journal =      {IBM Systems Journal},
866   year =         {2000},
867   OPTkey =       {},
868   volume =       {39},
869   number =       {1},
870   pages =        {21--56},
871   OPTmonth =     {},
872   OPTnote =      {},
873   OPTannote =    {}
874 }
875
876 @Article{IBM:Suganuma:2000,
877   author =       {T. Suganuma and T. Ogasawara and M. TaT. Yasuekeuchi and and M. Kawahito and K. Ishizaki and H. Komatsuatani},
878   title =        {Overview of the {IBM} {Java} Just-in-Time Compiler},
879   journal =      {IBM Systems Journal},
880   year =         {2000},
881   OPTkey =       {},
882   volume =       {39},
883   number =       {1},
884   pages =        {175--193},
885   OPTmonth =     {},
886   OPTnote =      {},
887   OPTannote =    {}
888 }
889
890 @TechReport{Compaq:Scales:2000,
891   author =       {Daniel J. Scales and Keith H. Randall and Sanjay Ghemawat and Jeff Dean},
892   title =        {The {Swift} Compiler: Design and Implementation},
893   institution =  {Compaq Western Research Laboratory},
894   year =         {2000},
895   OPTkey =       {},
896   OPTtype =      {},
897   number =       {2000/2},
898   OPTaddress =   {},
899   month =        {April},
900   OPTnote =      {},
901   OPTannote =    {}
902 }
903
904 @Manual{NaturalBridge,
905   title =        {{BulletTrainTM} optimizing compiler and runtime for {JVM} bytecode},
906   OPTkey =       {},
907   OPTauthor =    {},
908   organization = {NaturalBridge},
909   OPTaddress =   {},
910   OPTedition =   {},
911   OPTmonth =     {},
912   OPTyear =      {},
913   note =         {{\tt http://www.naturalbridge.com}},
914   OPTannote =    {}
915 }
916
917
918 @Manual{TowerJ,
919   title =        {{TowerJ 3.0: A New Generation Native Java Compiler And Runtime Environment}},
920   OPTkey =       {},
921   OPTauthor =    {},
922   organization = {Tower Technologies},
923   OPTaddress =   {},
924   OPTedition =   {},
925   OPTmonth =     {},
926   OPTyear =      {},
927   note =         {{\tt http://www.towerj.com}},
928   OPTannote =    {}
929 }
930
931 @InProceedings{SGI:Smith:2000,
932   author =       {Todd Smith and Suresh Srinivas and Philipp Tomsich and Jinpyo Park},
933   title =        {Practical Experiences with {Java} Compilation},
934   booktitle =    {Proceedings of the Intl. Conf. on High-Performance Computing},
935   OPTcrossref =  {},
936   OPTkey =       {},
937   OPTpages =     {},
938   year =         {2000},
939   OPTeditor =    {},
940   volume =       {1970},
941   OPTnumber =    {},
942   series =       {Lecture Notes in Computer Science},
943   OPTaddress =   {},
944   month =        {December},
945   OPTorganization = {},
946   publisher =    {Springer},
947   OPTnote =      {},
948   OPTannote =    {}
949 }
950
951 @INPROCEEDINGS{DetlefsAgesen,
952   AUTHOR =       "David Detlefs and Ole Agesen",
953   TITLE =        "{The Case for Multiple Compilers}",
954   BOOKTITLE =    "Proc. OOPSLA 1999 VM Workshop on Simplicity,
955                   Performance and Portability in Virtual Machine
956                   Design",
957   YEAR =         1997,
958 }
959
960 @InProceedings{Krall_Tomsich_1999a,
961   author =       {Andreas Krall and Philipp Tomsich},
962   title =        {Garbage Collection for Large Memory {Java} Applications},
963   booktitle =    {Proceedings of the 7th European Conference on High-Performance Computing and Networking (HPCN Europe'99)},
964   pages =        {895--907},
965   year =         {1999},
966   OPTeditor =    {},
967   volume =       {1593},
968   series =       {Lecture Notes in Computer Science},
969   month =        {Apr},
970   publisher =    {Springer Verlag},
971 }
972
973 @INPROCEEDINGS{Sable00,
974   AUTHOR =       {Patrice Pominville and Feng Quian and Raja Vallee-Rai
975               and Laurie Hendren and Clark Verbrugge},
976   TITLE =        {A Framework for Optimizing {Java} Using Attrributes},
977   BOOKTITLE =    {CASCON},
978   ORGANIZATION = {IBM},
979   ADDRESS =      {Mississauga},
980   YEAR =         2000
981 }
982
983 @InProceedings{Hoelzle+91,
984   author =       "Urs H{\"o}lzle and Craig Chambers and David Ungar",
985   title =        "Optimizing Dynamically-Typed Object-Oriented
986                  Programming Languages with Polymorphic Inline Caches",
987   pages =        "21--38",
988   booktitle =    "Proceedings of the European Conference on Object-Oriented
989                  Programming (ECOOP'91)",
990   volume =       {512},
991   series =       {Lecture Notes in Computer Science},
992   month =        jul,
993   publisher =    "Springer Verlag",
994   address =      "Geneva",
995   year =         "1991",
996   annote =       "Abstract: Polymorphic inline caches (PICs) provide a new way to reduce the
997                  overhead of polymorphic message sends by extending inline caches to include more
998                  than one cached lookup result per call site. For a set of typical object-oriented
999                  SELF programs, PICs achieve a median speedup of 11%. 
1000                  As an important side effect, PICs collect type information by recording all of the
1001                  receiver types actually used at a given call site. The compiler can exploit this
1002                  type information to generate better code when recompiling a method. An
1003                  experimental version of such a system achieves a median speedup of 27% for our set
1004                  of SELF programs, reducing the number of non-inlined message sends by a factor of
1005                  two. 
1006                  Implementations of dynamically-typed object-oriented languages have been limited
1007                  by the paucity of type information available to the compiler. The abundance of the
1008                  type information provided by PICs suggests a new compilation approach for these
1009                  languages, adaptive compilation. Such compilers may succeed in generating very
1010                  efficient code for the time-critical parts of a program without incurring
1011                  distracting compilation pauses."
1012
1013 }
1014
1015 @InProceedings{HoelzleUngar94,
1016   author =       "Urs H{\"o}lzle and David Ungar",
1017   title =        "Optimizing Dynamically-Dispatched Calls with Run-Time
1018                  Type Feedback",
1019   pages =        "326--336",
1020   ISBN =         "0-89791-662-X",
1021   booktitle =    "Proceedings of the Conference on Programming Language
1022                  Design and Implementation (PLDI'94)",
1023   month =        jun,
1024   publisher =    "ACM Press",
1025   address =      "New York, NY, USA",
1026   year =         "1994",
1027 }
1028
1029 @InProceedings{DriesenHoelzle96,
1030   author =       "Karel Driesen and Urs H{\"o}lzle",
1031   title =        "The Direct Cost of Virtual Function Calls in {C++}",
1032   booktitle =    "Conference on Object-Oriented Programming Systems,
1033                  Languages \& Applications ({OOPSLA} '96)",
1034   year =         "1996",
1035   pages =        "306--323",
1036   annote =       "Studies the cost of virtual function calls on modern
1037                  processors, taking into account the effects of
1038                  out-of-order execution and caches. On their baseline
1039                  architecture, the standard implementation of virtual
1040                  function calls take 1\%--10\% of the instructions and
1041                  2\%--29\% of the cycles. The thunk implementation is
1042                  slightly faster, for most benchmarks, and much faster
1043                  for a few. The relative cost of virtual function calls
1044                  will increase slightly in the future. The influences of
1045                  architectural variations like branch misprediction
1046                  penalties, branch prediction accuracy, issue widths,
1047                  and load latency. The cost per dispatch is 2--5 cycles
1048                  for most benchmarks (10 cycles for one benchmark) on
1049                  their baseline architecture (4-wide processor, 2 cycle
1050                  load latency, 4 cycle branch latency).",
1051 }
1052
1053 @InProceedings{Oxhoj+92,
1054   author =       "Nicholas Oxh{\o}j and Jens Palsberg and Michael~I.
1055                  Schwartzbach",
1056   editor =       "O. Lehrmann~Madsen",
1057   title =        "{Making Type Inference Practical}",
1058   booktitle =    "Proceedings of the \mbox{ECOOP}~'92 European
1059                  Conference on Object-oriented Programming",
1060   series =       "LNCS 615",
1061   pages =        "329--349",
1062   publisher =    "Springer-Verlag",
1063   address =      "Utrecht, The Netherlands",
1064   month =        jul,
1065   year =         "1992",
1066 }
1067
1068 @Article{IC::Palsberg1995,
1069   refkey =       "C1680; PN2520",
1070   title =        "Efficient Inference of Object Types",
1071   author =       "Jens Palsberg",
1072   pages =        "198--209",
1073   journal =      "Information and Computation",
1074   month =        dec,
1075   year =         "1995",
1076   volume =       "123",
1077   number =       "2",
1078   abstract =     "Abadi and Cardelli have recently investigated a
1079                  calculus of objects (Abadi and Cardelli, 1994). The
1080                  calculus supports a key feature of object-oriented
1081                  languages: an object can be emulated by another object
1082                  that has more refined methods. Abadi and Cardelli
1083                  presented four first-order type systems for the
1084                  calculus. The simplest one is based on finite types and
1085                  no subtyping, and the most powerful one has both
1086                  recursive types and subtyping. Open until now is the
1087                  question of type inference, and in the presence of
1088                  subtyping ``the absence of minimum typings poses
1089                  practical problems for type inference'' (Abadi and
1090                  Cardelli, 1994). \par In this paper we give an $O(n^3)$
1091                  algorithm for each of the four type inference problems
1092                  and we prove that all the problems are P-complete. We
1093                  also indicate how to modify the algorithms to handle
1094                  functions and records.",
1095  }
1096
1097 @InProceedings{TipPalsberg00,
1098   author =       "Frank Tip and Jens Palsberg",
1099   title =        "Scalable propagation-based call graph construction
1100                  algorithms.",
1101   pages =        "281--293",
1102   booktitle =    "Proceedings of the Conference on Object-Oriented
1103                  Programming, Systems, Languages and Application
1104                  ({OOPSLA}-00)",
1105   month =        oct,
1106   series =       "ACM Sigplan Notices",
1107   volume =       "35(10)",
1108   publisher =    "ACM Press",
1109   address =      "N. Y.",
1110   year =         "2000",
1111 }
1112
1113
1114 @InProceedings{Dean+95,
1115   author =       "Jeffrey Dean and David Grove and Craig Chambers",
1116   title =        "Optimization of Object-Oriented Programs Using Static
1117                  Class Hierarchy Analysis",
1118   booktitle =    "Proceedings of the 9th European Conference on Object-Oriented
1119                  Programming (ECOOP'95)",
1120   volume =       {952},
1121   series =       {Lecture Notes in Computer Science},
1122   publisher =    "Springer Verlag",
1123   pages =        "77--101",
1124   year =         "1995",
1125 }
1126
1127 @InProceedings{BaconSweeney96,
1128   author =       "David F. Bacon and Peter F. Sweeney",
1129   title =        "Fast Static Analysis of {C}++ Virtual Function Calls",
1130   booktitle =    "Conference on Object-Oriented Programming Systems,
1131                  Languages \& Applications ({OOPSLA} '96)",
1132   year =         "1996",
1133   pages =        "324--341",
1134   publisher =    "ACM Press",
1135   annote =       "An empirical study of the effectiveness of
1136                  \emph{unique name} analysis, \emph{class hierarchy
1137                  analysis} and \emph{rapid type analysis}. Rapid type
1138                  analysis is an analysis that takes into account which
1139                  classes are actually instantiated. It is very fast and
1140                  detects a a significant percentage of monomorphic calls
1141                  for some benchmarks (up to 100\%).",
1142 }
1143
1144 @phdthesis{Bacon97,
1145   author =       "David Francis Bacon",
1146   title =        "Fast and Effective Optimization of Statically Typed
1147                  Object-Oriented Languages",
1148   school =       "University of California, Berkeley",
1149   year =         "1997",
1150   abstract =     "In this dissertation, we show how a relatively simple
1151                  and extremely fast interprocedural optimization
1152                  algorithm can be used to optimize many of the expensive
1153                  features of statically typed, object-oriented languages
1154                  -- in particular, C++ and Java. We present a new
1155                  optimization algorithm, Rapid Type Analysis, and show
1156                  that it is fast both in theory and in practice, and
1157                  significantly out-performs other {"}fast{"} algorithms
1158                  for virtual function call resolution. We present
1159                  optimization algorithms for the resolution of virtual
1160                  function calls, conversion of virtual inheritance to
1161                  direct inheritance, elimination of dynamic casts and
1162                  dynamic type checks, and removal of object
1163                  synchronization. These algorithms are all presented
1164                  within a common framework that allows them to be driven
1165                  by the information collected by Rapid Type Analysis, or
1166                  by some other type analysis algorithm. Collectively,
1167                  the optimizations in this dissertation free the
1168                  programmer from having to sacrifice modularity and
1169                  extensibility for performance. Instead, the programmer
1170                  can freely make use of the most powerful features of
1171                  object-oriented programming, since the optimizer will
1172                  remove unnecessary extensibility from the program.",
1173 }
1174
1175 @Article{Shivers88,
1176   author =       "Olin Shivers",
1177   title =        "Control-Flow Analysis in {Scheme}",
1178   pages =        "164--174",
1179   journal =      "ACM SIGPLAN Notices",
1180   year =         "1988",
1181   month =        jul,
1182   volume =       "23",
1183   number =       "7",
1184   note =         "Proceedings of the ACM SIGPLAN 1988 Conference on
1185                  Programming Language Design and Implementation.",
1186 }
1187
1188
1189 @PhdThesis{Shivers91,
1190   author =       "Olin Shivers",
1191   title =        "Control-Flow Analysis of Higher-Order Languages",
1192   school =       "Carnegie-Mellon University",
1193   year =         "1991",
1194   month =        may,
1195 }
1196
1197
1198 @InProceedings{Grove+97,
1199   author =       "David Grove and Greg DeFouw and
1200                  Jeffrey Dean and Craig Chambers",
1201   title =        "Call Graph Construction in Object-Oriented Languages",
1202   pages =        "108--124",
1203   booktitle =    "Proceedings of the {ACM} {SIGPLAN} Conference on
1204                  Object-Oriented Programming Systems, Languages and
1205                  Applications ({OOPSLA}-97)",
1206   month =        oct,
1207   series =       "ACM SIGPLAN Notices",
1208   volume =       "32, 10",
1209   publisher =    "ACM Press",
1210   address =      "New York",
1211   year =         "1997",
1212 }
1213
1214 @InProceedings{DeFouw:1998:FIC,
1215   author =       "Greg DeFouw and David Grove and Craig Chambers",
1216   title =        "Fast interprocedural class analysis",
1217   editor =       "ACM",
1218   booktitle =    "Conference record of {POPL} '98: the 25th {ACM}
1219                  {SIGPLAN-SIGACT} Symposium on Principles of Programming
1220                  Languages: papers presented at the Symposium, San
1221                  Diego, California, 19--21 January 1998",
1222   publisher =    "ACM Press",
1223   address =      "New York",
1224   year =         "1998",
1225   pages =        "222--236",
1226   year =         "1998",
1227   url =          "http://www.acm.org:80/pubs/citations/proceedings/plan/268946/p222-defouw/",
1228 }
1229
1230 @Article{Collin:1997:TIL,
1231   author =       "S. Collin and D. Colnet and O. Zendra",
1232   title =        "Type Inference for Late Binding: The {SmallEiffel}
1233                  Compiler",
1234   journal =      "Lecture Notes in Computer Science",
1235   volume =       "1204",
1236   pages =        "67--??",
1237   year =         "1997",
1238   coden =        "LNCSD9",
1239   ISSN =         "0302-9743",
1240   bibdate =      "Fri Aug 22 11:59:49 MDT 1997",
1241   acknowledgement = ack-nhfb,
1242 }
1243
1244
1245 @InProceedings{Zendra+97,
1246   author =       "Olivier Zendra and Dominique Colnet and Suzanne
1247                  Collin",
1248   title =        "Efficient Dynamic Dispatch without Virtual Function
1249                  Tables: The Small {Eiffel} Compiler",
1250   pages =        "125--141",
1251   ISSN =         "0362-1340",
1252   booktitle =    "Proceedings of the {ACM} {SIGPLAN} Conference on
1253                  Object-Oriented Programming Systems, Languages and
1254                  Applications ({OOPSLA}-97)",
1255   month =        oct # "~5--9",
1256   series =       "ACM SIGPLAN Notices",
1257   volume =       "32, 10",
1258   publisher =    "ACM Press",
1259   address =      "New York",
1260   year =         "1997",
1261 }
1262
1263 @InProceedings{Sundaresan+00,
1264   author =       "Vijay Sundaresan and Laurie J. Hendren and Chrislain
1265                  Razafimahefa and Raja Vall{\'e}e-Rai and Patrick Lam
1266                  and Etienne Gagnon and Charles Godin",
1267   title =        "Practical virtual method call resolution for Java.",
1268   pages =        "264--280",
1269   booktitle =    "Proceedings of the Conference on Object-Oriented
1270                  Programming, Systems, Languages and Application
1271                  ({OOPSLA}-00)",
1272   month =        oct # "~15--19",
1273   series =       "ACM Sigplan Notices",
1274   volume =       "35.10",
1275   publisher =    "ACM Press",
1276   address =      "N. Y.",
1277   year =         "2000",
1278 }
1279
1280 @InProceedings{Myers95,
1281   author =       "Andrew C. Myers",
1282   title =        "Bidirectional Object Layout for Separate Compilation",
1283   booktitle =    "{OOPSLA}~'95 Conference Proceedings: Object-Oriented
1284                  Programming Systems, Languages, and Applications",
1285   year =         "1995",
1286   publisher =    "ACM Press",
1287   pages =        "124--139",
1288   url =          "http://www.acm.org/pubs/articles/proceedings/oops/217838/p124-myers/p124-myers.pdf",
1289 }
1290
1291 @InProceedings{Stroustrup89,
1292   author =       "Bjarne Stroustrup",
1293   title =        "Multiple Inheritance for {C++}",
1294   editor =       "{USENIX} Association",
1295   booktitle =    "Computing Systems, Fall, 1989.",
1296   publisher =    "USENIX Association",
1297   address =      "Berkeley, CA, USA",
1298   month =        "Fall",
1299   year =         "1989",
1300   volume =       "2(4)",
1301   pages =        "367--395",
1302 }
1303
1304 @InProceedings{Rose88,
1305   author =       "John R. Rose",
1306   title =        "Fast Dispatch Mechanisms for Stock Hardware",
1307   editor =       "Norman Meyrowitz",
1308   booktitle =    "{OOPSLA}'88: Object-Oriented Programming Systems,
1309                  Languages and Applications: Conference Proceedings",
1310   year =         "1988",
1311   pages =        "27--35",
1312 }
1313
1314 @TechReport{Liskov+95,
1315   author =       "Barbara Liskov and Dorothy Curtis and Mark Day and
1316                  Sanjay Ghemawat and Robert Gruber and Paul Johnson and
1317                  Andrew C. Myers",
1318   title =        "Theta Reference Manual",
1319   institution =  "Massachusetts Institute of Technology, Laboratory for
1320                  Computer Science",
1321   month =        feb,
1322   year =         "1995",
1323   number =       "Programming Methodology Group Memo 88",
1324   url =          "http://clef.lcs.mit.edu/Thor-papers.html",
1325 }
1326
1327
1328 @InProceedings{Ishizaki+00,
1329   author =       "Kazuaki Ishizaki and Motohiro Kawahito and Toshiaki
1330                  Yasue and Hideaki Komatsu and Toshio Nakatani",
1331   title =        "A study of devirtualization techniques for a {JavaTM}
1332                  Just-In-Time compiler.",
1333   pages =        "294--310",
1334   booktitle =    "Proceedings of the Conference on Object-Oriented
1335                  Programming, Systems, Languages and Application
1336                  ({OOPSLA}-00)",
1337   month =        oct # "~15--19",
1338   series =       "ACM Sigplan Notices",
1339   volume =       "35.10",
1340   publisher =    "ACM Press",
1341   address =      "N. Y.",
1342   year =         "2000",
1343 }
1344
1345
1346 @INPROCEEDINGS{Alpern+01,
1347         AUTHOR      = {Bowen Alpern and Anthony Cocchi and David Grove and Derek Lieber},
1348         TITLE       = {Efficient Dispatch of {Java} Interface Methods},
1349         BOOKTITLE   = {HPCN'01, Java in High Performance Computing},
1350         EDITOR      = {Vladimir Getov and George K. Thiruvathukal},
1351         SERIES      = {LNCS 2110},
1352         PUBLISHER   = {Springer},
1353         PAGES       = {621--628},
1354         ADDRESS     = {Amsterdam},
1355         MONTH       = {June},
1356         YEAR        = 2001
1357 }
1358
1359
1360 @BOOK{AbramskyHankin87,
1361    AUTHOR =    {Samson Abramsky and Chris Hankin},
1362    TITLE =     {Abstract Interpretation of Declarative Languages},
1363    PUBLISHER = {Ellis Horwood},
1364    YEAR =      1987
1365 }
1366
1367 @INPROCEEDINGS{Blanchet99,
1368    AUTHOR =    {Bruno Blanchet},
1369    TITLE =     {Escape Analysis for Object Oriented Languages:
1370                 Application to Java},
1371    BOOKTITLE = {Proceedings of OOPSLA'99},
1372    ORGANIZATION = {ACM},
1373    ADDRESS =   {Denver},
1374    PAGES =     {20--34},
1375    MONTH =     {November},
1376    YEAR =      1999
1377 }
1378
1379 @INPROCEEDINGS{Choi99,
1380    AUTHOR =    {J.-G. Choi and M. Gupta and M. Serrano and
1381                 V.C. Sreedhar and S. Midkiff},
1382    TITLE =     {Escape Analysis for Java},
1383    BOOKTITLE = {Proceedings of OOPSLA'99},
1384    ORGANIZATION = {ACM},
1385    ADDRESS =   {Denver},
1386    PAGES =     {1-19},
1387    MONTH =     {November},
1388    YEAR =      1999
1389 }
1390
1391 @ARTICLE{AitKaci89,
1392    AUTHOR =    {H. A\"{i}t-Kaci and R. Boyer and P. Lincoln and R.
1393 Nasr},
1394    TITLE =     {Efficient implementation of lattice operations},
1395    JOURNAL =   {Transactions on Programming Languages and Systems},
1396    ORGANIZATION = {ACM},
1397    VOLUME =    11,
1398    NUMBER =    1,
1399    PAGES =     {115-146},
1400    MONTH =     {November},
1401    YEAR =      1989
1402 }
1403
1404 @INPROCEEDINGS{Caseau93,
1405    AUTHOR =    {Yves Caseau},
1406    TITLE =     {Efficient handling of multiple inheritance hierarchies},
1407    BOOKTITLE = {Proceedings of OOPSLA'93},
1408    ORGANIZATION = {ACM},
1409    SERIES =      {SIGPLAN},
1410    VOLUME =      {28(10)},
1411    PAGES =       {271--287},
1412    YEAR =         1993
1413 }
1414
1415
1416 @ARTICLE{Cohen91,
1417    AUTHOR =    {N.J. Cohen},
1418    TITLE = {Type-extension type tests can be performed in constant time},
1419    JOURNAL =   {Transactions on Programming Languages and Systems},
1420    ORGANIZATION = {ACM},
1421    VOLUME =    13,
1422    NUMBER =    4,
1423    PAGES =     {626--629},
1424    MONTH =     {April},
1425    YEAR =      1991
1426 }
1427
1428
1429 @ARTICLE{Dencker84,
1430    AUTHOR =   {P. Dencker and K. D\"{u}rre and J. Heuft},
1431    TITLE =     {Optimization of Parser Tables for Portable Compilers},
1432    JOURNAL =   {Transactions on Programming Languages and Systems},
1433    ORGANIZATION = {ACM},
1434    VOLUME =    6,
1435    NUMBER =    4,
1436    PAGES =     {546--572},
1437    MONTH =     {April},
1438    YEAR =      1984
1439 }
1440
1441
1442 @ARTICLE{KraViHo97,
1443    AUTHOR =    {A. Krall and J. Vitek and R.N. Horspool},
1444    TITLE =     {Near optimal hierarchical encoding of types},
1445    BOOKTITLE = {European Conference on Object-Oriented Programming
1446                 ({ECOOP'97})},
1447    PAGES =     {128-145},
1448    PUBLISHER = {LNCS 1241},
1449    ADDRESS =   {Jyv\"{a}skyl\"{a}},
1450    YEAR =      1997
1451 }
1452
1453
1454 @ARTICLE{VitekHorspool94,
1455    AUTHOR =    {J. Vitek and R.N. Horspool},
1456    TITLE =     {Taming Message Passing: Efficient Method Look-Up for
1457                 Dynamically Typed Languages},
1458    BOOKTITLE = {European Conference on Object-Oriented Programming
1459                ({ECOOP'94})},
1460    PAGES =     {432--449},
1461    PUBLISHER = {LNCS 821},
1462    ADDRESS =   {Bologna},
1463    YEAR =      1994
1464 }
1465
1466 @InProceedings{Agesen95,
1467   title =        "The {Cartesian} Product Algorithm: Simple and Precise
1468                  Type Inference of Parametric Polymorphism",
1469   author =       "Ole Agesen",
1470   pages =        "2--26",
1471   editor =       "Walter G. Olthoff",
1472   booktitle =    "{ECOOP}'95---Object-Oriented Programming, 9th European
1473                  Conference",
1474   address =      "{\AA}arhus, Denmark",
1475   month =        "7--11~" # aug,
1476   year =         "1995",
1477   series =       "Lecture Notes in Computer Science",
1478   volume =       "952",
1479   publisher =    "Springer",
1480 }
1481
1482 @InProceedings{Jalapeno99,
1483   author =       "Bowen Alpern and Dick Attanasio and Anthony Cocchi and
1484                  Derek Lieber and Stephen Smith and Ton Ngo and John J.
1485                  Barton",
1486   title =        "Implementing Jalapeno in Java",
1487   pages =        "314--324",
1488   editor =       "Loren Meissner",
1489   booktitle =    "Proceeings of the 1999 {ACM} {SIGPLAN} Conference on
1490                  Object-Oriented Programming, Systems, Languages {\&}
1491                  Applications ({OOPSLA}`99)",
1492   month =        nov # "~1--5",
1493   series =       "ACM Sigplan Notices",
1494   volume =       "34.10",
1495   publisher =    "ACM Press",
1496   address =      "N. Y.",
1497   year =         "1999",
1498 }
1499
1500
1501 @Article{Jalapeno00,
1502   author =       "B. Alpern and C. R. Attanasio and J. J. Barton and M.
1503                  G. Burke and P. Cheng and J.-D. Choi and A. Cocchi and
1504                  S. J. Fink and D. Grove and M. Hind and S. F. Hummel
1505                  and D. Lieber and V. Litvinov and M. F. Mergen and T.
1506                  Ngo and J. R. Russell and V. Sarkar and M. J. Serrano
1507                  and J. C. Shepherd and S. E. Smith and V. C. Sreedhar
1508                  and H. Srinivasan and J. Whaley",
1509   title =        "The {Jalape{\~n}o} virtual machine",
1510   journal =      "IBM Systems Journal",
1511   volume =       "39",
1512   number =       "1",
1513   pages =        "211--238",
1514   month =        "????",
1515   year =         "2000",
1516   coden =        "IBMSA7",
1517   ISSN =         "0018-8670",
1518   bibdate =      "Mon Apr 24 15:43:02 MDT 2000",
1519   url =          "http://www.almaden.ibm.com/journal/sj/391/alpern.html",
1520   acknowledgement = ack-nhfb,
1521   keywords =     "Java",
1522 }
1523
1524 @InProceedings{HotSpot01,
1525   author =       "Michael Paleczny and Chnstopher Vick and Cliff Click",
1526   title =        "The {Java} {HotSpot} Server Compiler",
1527   pages =        "1--12",
1528   booktitle =    "Proceedings of the {$Java{\^{TM}}$} Virtual Machine
1529                  Research and Technology Symposium ({JVM}-01)",
1530   month =        apr # " ~23--24",
1531   publisher =    "USENIX Association",
1532   address =      "Berkley, USA",
1533   year =         "2001",
1534 }
1535
1536 @BOOK{javavm99,
1537   AUTHOR =       {Tim Lindholm and Frank Yellin},
1538   TITLE =        {The {Java} Virtual Machine Specification, Second Edition},
1539   PUBLISHER =    {Addison-Wesley},
1540   YEAR =         1999
1541 }
1542
1543 @inproceedings{Coglio02,
1544   author = "A. Coglio",
1545   title = "Simple Verification Technique for Complex Java Bytecode Subroutines",
1546   booktitle = "Proc. 4th ECOOP Workshop on Formal Techniques for Javalike
1547     Programs",
1548   year = "2002",
1549   url = "citeseer.nj.nec.com/coglio02simple.html" 
1550 }
1551
1552 @inproceedings{Coglio01,
1553   author = "A. Coglio",
1554   title = "Improving the official specification of Java bytecode verification",
1555   booktitle = "Proc. 3rd ECOOP Workshop on Formal Techniques for Java Programs",
1556   month =jun,
1557   year = "2001",
1558   url = "citeseer.nj.nec.com/coglio01improving.html"
1559 }
1560
1561 @INPROCEEDINGS{OgKoNa02,
1562   AUTHOR =    {Takeshi Ogasawara and Hideaki Komatsu and Toshio Nakatani},
1563   TITLE =     {{Optimizing Precision Overhead for x86 Processors}},
1564   BOOKTITLE = {2nd Java Virtual Machine Research and Technology Symposium (JVM '02)},
1565   PAGES =     {41--50},
1566   VOLUME =    {August 1--2},
1567   YEAR =      2003
1568 }
1569
1570 @misc{AMD,
1571   KEY =          {AMD},
1572   TITLE =        {{Advanced Micro Devices}},
1573   HOWPUBLISHED = {\texttt{http://www.amd.com/}},
1574   YEAR =         2004
1575 }
1576
1577 @misc{AMD64,
1578   KEY =          {AMD64},
1579   TITLE =        {{AMD64}},
1580   HOWPUBLISHED = {\texttt{http://www.amd64.org/}},
1581   YEAR =         2004
1582 }
1583
1584 @unpublished{AMD64ABI,
1585   KEY =          {AMD64ABI},
1586   AUTHOR =       {Jan Hubicka and Andreas Jaeger and Mark Mitchell},
1587   TITLE =        {{System V Application Binary Interface, AMD64 Architecture Processor Supplement}},
1588   NOTE =         {\texttt{http://www.amd64.org/}},
1589   MONTH =        {July},
1590   YEAR =         2004
1591 }
1592
1593 @misc{Blackdown,
1594   KEY =          {Blackdown},
1595   TITLE =        {Blackdown.org},
1596   HOWPUBLISHED = {\texttt{http://www.blackdown.org/}},
1597   YEAR =         2003
1598 }
1599
1600 @misc{GCJ,
1601   KEY =          {GCJ},
1602   TITLE =        {The {GNU} Compiler for the {J}ava Programming Language},
1603   HOWPUBLISHED = {\texttt{http://gcc.gnu.org/java/}},
1604   YEAR =         2004
1605 }
1606
1607 @misc{Sun,
1608   KEY =          {SUN},
1609   TITLE =        {Sun {M}icrosystems},
1610   HOWPUBLISHED = {\texttt{http://www.sun.com/}},
1611   YEAR =         2004
1612 }
1613
1614 @misc{SunJVM,
1615   KEY =          {SunJVM},
1616   TITLE =        {Sun {M}icrosystems {J}ava {V}irtual {M}achine},
1617   HOWPUBLISHED = {\texttt{http://java.sun.com/j2se/}},
1618   YEAR =         2004
1619 }
1620
1621 @misc{IBMJVM,
1622   KEY =          {IBMJVM},
1623   TITLE =        {{IBM} {J}ava {V}irtual {M}achine},
1624   HOWPUBLISHED = {\texttt{http://www-106.ibm.com/developerworks/java/jdk/}},
1625   YEAR =         2004
1626 }
1627
1628 @misc{SUSE,
1629   KEY =          {SUSE},
1630   TITLE =        {{SUSE} {L}inux},
1631   HOWPUBLISHED = {\texttt{http://www.suse.com/}},
1632   YEAR =         2004
1633 }
1634
1635 @manual{IA32vol1,
1636   TITLE =        {IA-32 Intel Architecture Software Developer's Manual Volume 1: Basic Architecture},
1637   ORGANIZATION = {Intel Cooperation},
1638   ADDRESS =      {P.O. Box 7641 Mt. Prospect IL 60056-7641},
1639   NOTE =         {{Order Number: 245470-009}},
1640   YEAR =         2002
1641 }
1642
1643 @manual{IA32opt,
1644   TITLE =        {IA-32 Intel Architecture Optimization Reference Manual},
1645   ORGANIZATION = {Intel Cooperation},
1646   ADDRESS =      {\texttt{http://developer.intel.com}},
1647   NOTE =         {{Order Number: 248966-009}},
1648   YEAR =         2003
1649 }
1650
1651 @manual{AMDopt,
1652   TITLE =        {AMD Athlon Processor x86 Code Optimization Guide},
1653   ORGANIZATION = {Advanced Micro Devices, Inc.},
1654   NOTE =         {{Publication No. 22007}},
1655   MONTH =        {February},
1656   YEAR =         2002
1657 }
1658
1659 @MISC{KJC,
1660   KEY =          {KJC},
1661   TITLE =        {{KJC} {K}opi {J}ava {C}ompiler},
1662   HOWPUBLISHED = {\texttt{http://www.dms.at/kopi/}},
1663   YEAR =         2004
1664 }
1665
1666 @MASTERSTHESIS{Lackner2001,
1667   AUTHOR =       {Martin Lackner},
1668   TITLE =        {Extending {J}ava},
1669   SCHOOL =       {Technische Universit\"at Wien},
1670   MONTH =        {May},
1671   YEAR =         2001
1672 }
1673
1674 @InProceedings{1998:iccl:jensen,
1675   author =       "T. Jensen and D. Le M{\'e}tayer and T. Thorn",
1676   title =        "Security and Dynamic Class Loading in {J}ava: {A}
1677                  Formalisation",
1678   booktitle =    "Proceedings of the 1998 International Conference on
1679                  Computer Languages",
1680   publisher =    "IEEE Computer Society Press",
1681   year =         "1998",
1682   ISBN =         "0-780-35005-7, 0-8186-8454-2, 0-8186-8456-9",
1683   pages =        "4--15",
1684 }
1685
1686 @Misc{oai:CiteSeerPSU:523425,
1687   title =        "Dynamic Class Loading in the Java",
1688   author =       "Gilad Bracha and Sheng Liang",
1689   year =         "1999",
1690   month =        sep # "~26",
1691   annote =       "The Pennsylvania State University CiteSeer Archives",
1692   language =     "en",
1693   oai =          "oai:CiteSeerPSU:523425",
1694   rights =       "unrestricted",
1695   subject =      "Gilad Bracha,Sheng Liang Dynamic Class Loading in the
1696                  Java",
1697   URL =          "http://citeseer.ist.psu.edu/523425.html;
1698                  http://www.cs.utah.edu/~gary/classloaders.ps",
1699 }
1700
1701 @Article{Norton:2000:DCL,
1702   author =       "James Norton",
1703   title =        "Dynamic Class Loading in {C++}",
1704   journal =      "Linux Journal",
1705   volume =       "73",
1706   pages =        "??--??",
1707   month =        may,
1708   year =         "2000",
1709   CODEN =        "LIJOFX",
1710   ISSN =         "1075-3583",
1711   bibdate =      "Thu Sep 21 07:44:12 MDT 2000",
1712   URL =          "http://noframes.linuxjournal.com/lj-issues/issue73/3687.html",
1713   acknowledgement = ack-nhfb,
1714 }
1715
1716 @InProceedings{alpe02,
1717   title =        "Experiences Porting the {J}ikes {RVM} to
1718                  {L}inux/{IA}32",
1719   author =       "Bowen Alpern and Maria Butrico and Anthony Cocchi and
1720                  Julian Dolby and Stephen Fink and David Grove and Ngo
1721                  Ngo",
1722   booktitle =    "Usenix Java Virtual Machine Research and Technology
1723                  Symposium ({JVM} '02)",
1724   address =      "San Francisco, CA",
1725   month =        aug,
1726   year =         "2002",
1727   URL =          "http://www.research.ibm.com/people/d/dgrove/papers/jvm02.pdf"
1728 }
1729
1730 @Article{Alpern:2000:JAV,
1731   author =       "B. Alpern and C. R. Attanasio and J. J. Barton and Burke
1732                  Burke and P. Cheng and J.-D. Choi and A. Cocchi and
1733                  S. J. Fink and D. Grove and M. Hind and S. F. Hummel
1734                  and D. Lieber and V. Litvinov and M. F. Mergen and Ngo
1735                  Ngo and J. R. Russell and V. Sarkar and M. J. Serrano
1736                  and J. C. Shepherd and S. E. Smith and V. C. Sreedhar
1737                  and H. Srinivasan and J. Whaley",
1738   title =        "The {Jalape{\~n}o} virtual machine",
1739   journal =      "IBM Systems Journal",
1740   volume =       "39",
1741   number =       "1",
1742   pages =        "211--238",
1743   month =        "????",
1744   year =         "2000",
1745   CODEN =        "IBMSA7",
1746   ISSN =         "0018-8670",
1747   bibdate =      "Mon Apr 24 15:43:02 MDT 2000",
1748   URL =          "http://www.research.ibm.com/journal/sj/391/alpern.html",
1749   acknowledgement = ack-nhfb,
1750   keywords =     "Java",
1751   ordernumber =  "G321-0137",
1752 }
1753
1754 @MISC{jpda,
1755   KEY =          {jpda},
1756   TITLE =        {Java Platform Debugger Architecture (JPDA) specification},
1757   HOWPUBLISHED = {{\tt http://java.sun.com/j2se/1.5.0/docs/guide/jpda/architecture.html}},
1758 }
1759
1760 @MISC{jvmti,
1761   KEY =          {jvmti},
1762   TITLE =        {Java Virtual Machine Tool Interface (JVMTI) specification},
1763   HOWPUBLISHED = {{\tt http://java.sun.com/j2se/1.5.0/docs/guide/jvmti/jvmti.html}},
1764 }
1765
1766 @MISC{sablevm,
1767   TITLE = {Sable VM},
1768   HOWPUBLISHED = {{\tt http://www.sablevm.org/}}
1769 }
1770
1771 @MISC{gij,
1772   TITLE = {GCJ/GIJ},
1773   HOWPUBLISHED = {{\tt http://gcc.gnu.org/java/}}
1774 }
1775
1776 @MISC{classpath,
1777   TITLE = {GNU classpath},
1778   HOWPUBLISHED = {{\tt http://www.gnu.org/software/classpath}}
1779 }
1780
1781 @MISC{eclipse,
1782   TITLE = {Eclipse},
1783   HOWPUBLISHED = {{\tt http://www.eclipse.org}}
1784 }
1785
1786 @MISC{ptrace,
1787   TITLE = {PTrace},
1788   HOWPUBLISHED = {see linux manual page for ptrace}
1789 }
1790
1791 @MISC{gdb,
1792   TITLE = {gdb},
1793   HOWPUBLISHED = {{\tt http://www.gnu.org/software/gdb/}}
1794 }
1795
1796 @MISC{s390:bib:principles,
1797         KEY = {PRINCIPLES},
1798         TITLE = {Enterprise Systems Architecture/390, Principles of Operation, Seventh Edition},
1799         YEAR = 1999,
1800         ORGANIZATION = {International Business Machines Corporation}
1801 }
1802
1803 @MISC{s390:bib:gcc,
1804         KEY = {GCC},
1805         TITLE = {Porting GCC to the IBM S/390 platform},
1806         AUTHOR = {Hartmut Penner, Ulrich Weigand},
1807         ORGANIZATION = {IBM Deutschland Entwicklung GmbH},
1808 }
1809
1810 @MISC{s390:bib:abi,
1811         KEY = {ABI},
1812         TITLE = {LINUX for S/390, ELF Application Binary Interface Supplement},
1813         YEAR = 2001,
1814         ORGANIZATION = {International Business Machines Corporation}
1815 }
1816