[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/36206.36192acmconferencesArticle/Chapter ViewAbstractPublication PagesasplosConference Proceedingsconference-collections
Article
Free access

Compiling Smalltalk-80 to a RISC

Published: 01 October 1987 Publication History

Abstract

The Smalltalk On A RISC project at U. C. Berkeley proves that a high-level object-oriented language can attain high performance on a modified reduced instruction set architecture. The single most important optimization is the removal of a layer of interpretation, compiling the bytecoded virtual machine instructions into low-level, register-based, hardware instructions. This paper describes the compiler and how it was affected by SOAR architectural features. The compiler generates code of reasonable density and speed. Because of Smalltalk-80's semantics, relatively few optimizations are possible, but hardware and software mechanisms at runtime offset these limitations. Register allocation for an architecture with register windows comprises the major task of the compiler. Performance analysis suggests that SOAR is not simple enough; several hardware features could be efficiently replaced by instruction sequences constructed by the compiler.

References

[1]
'The Design and Evaluation of a High Performance Smalltalk System'; David Michael Ungar; U. C. Berkeley Computer Science Division Report UCB/CSD 86/287, March 1986.
[2]
'Architecture of SOAR: Smalltalk on a RISC'; David Ungar, Ricki Blau, Peter Foley, A. Dain Samples, David Patterson; 11th Annual International Symposium on Computer Architecture, Ann Arbor, Michigan, June 1984.
[3]
'SOAR: Smalltalk Without Bytecodes'; A. Dain Samples, David Ungar, Paul Hilfinger; CACM Object-Oriented Programming Systems, Languages and Applications Proceedings, November 1986, pp 107--118.
[4]
'What Price Smalltalk?'; David Ungar and David Patterson; IEEE Computer, January 1987, pp 67--74.
[5]
'Efficient Implementation of the Smalltalk-80 System'; L. Peter Deutsch, Allan M. Schiffman; 11th ACM Symposium on Principles of Programming Languages, January 1984, pp 297--302.
[6]
'The Design of a Debugger for SOAR'; Peter K. Lee; Master's Report, U. C. Berkeley, 1984.
[7]
'Machine Independent Pascal Code Optimization'; D. R. Perkins and R. L. Sites; CCC SIGPLAN 14, 8, August 1979, pp 201--207.
[8]
'Smalltalk-80 to SOAR Code'; William R. Bush; U. C. Berkeley Computer Science Division Report UCB/CSD 86/297, June 1986.
[9]
'Register Windows for SOAR'; John Blakken; Smalltalk On A RISC -- Proceedings of CS929R, April 1983, pp 126--140.
[10]
'Reduced Instruction Set Computer Architectures for VLSI'; Manolis G. H. Katevenis; U. C. Berkeley Computer Science Division Report UCB/CSD 83/141, October 1983.
[11]
'An MC68000-Based Smalltalk-80 System'; Richard Meyers and David Casseres; in Smalltalk-80 Bits of History, Words of Advice; Glenn Krasner, Editor; Addison-Wesley, 1983, pp 175--187.
[12]
'The Analysis of the Smalltalk-80 System at Hewlett-Packard'; Joseph R. Falcone; in Smalltalk-80 Bits of History, Words of Advice; Glenn Krasner, Editor; Addison-Wesley, 1983, pp 207--237.
[13]
'Implementing a Smalltalk Compiler'; Wayne Citrin, Carl Ponder; Smalltalk On A RISC -- Proceedings of CS929R, April 1983, pp 167--185.

Cited By

View all

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
ASPLOS II: Proceedings of the second international conference on Architectual support for programming languages and operating systems
October 1987
205 pages
ISBN:0818608056
DOI:10.1145/36206
Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for third-party components of this work must be honored. For all other uses, contact the Owner/Author.

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 October 1987

Check for updates

Qualifiers

  • Article

Conference

ASPLOS II
Sponsor:

Acceptance Rates

Overall Acceptance Rate 535 of 2,713 submissions, 20%

Upcoming Conference

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)271
  • Downloads (Last 6 weeks)40
Reflects downloads up to 28 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (1994)Polymorphism considered harmfulACM SIGSOFT Software Engineering Notes10.1145/181628.18163519:2(35-37)Online publication date: 1-Apr-1994
  • (1992)Polymorphism considered harmfulACM SIGPLAN Notices10.1145/130981.13099127:6(76-79)Online publication date: 1-Jun-1992
  • (1991)CLOStrophobia: its etiology and treatmentACM SIGPLAN OOPS Messenger10.1145/126983.1269842:4(4-15)Online publication date: 1-Oct-1991
  • (1988)The architecture of a Linda coprocessorProceedings of the 15th Annual International Symposium on Computer architecture10.5555/52400.52428(240-249)Online publication date: 1-Jun-1988
  • (1988)The architecture of a Linda coprocessorACM SIGARCH Computer Architecture News10.1145/633625.5242816:2(240-249)Online publication date: 17-May-1988
  • (2007)SelfProceedings of the third ACM SIGPLAN conference on History of programming languages10.1145/1238844.1238853(9-1-9-50)Online publication date: 9-Jun-2007
  • (1988)Matching Language and Hardware for Parallel Computation in the Linda MachineIEEE Transactions on Computers10.1109/12.224437:8(921-929)Online publication date: 1-Aug-1988

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media