Automatic derivation of compiler machine descriptions
— University of Arizona Skip to main navigation Skip to search Skip to main content University of Arizona Home Home Profiles Departments and Centers Scholarly Works Activities Grants Datasets Prizes Search by expertise, name or affiliation Automatic derivation of compiler machine descriptions Christian S. Collberg Computer Science Research output: Contribution to journal › Article › peer-review 4 Scopus citations Overview Fingerprint Abstract We describe a method designed to significantly reduce the effort required to retarget a compiler to a new architecture, while at the same time producing fast and effective compilers. The basic idea is to use the native C compiler at compiler construction time to discover architectural features of the new architecture. From this information a formal machine description is produced. Given this machine description, a native code-generator can be generated by a back-end generator such as BEG or burg. A prototype automatic Architecture Discovery Tool (called ADT) has been implemented. This tool is completely automatic and requires minimal input from the user. Given the Internet address of the target machine and the command-lines by which the native C compiler, assembler, and linker are invoked, ADT will generate a BEG machine specification containing the register set, addressing modes, instruction set, and instruction timings for the architecture. The current version of ADT is general enough to produce machine descriptions for the integer instruction sets of common RISC and CISC architectures such as the Sun SPARC, Digital Alpha, MIPS, DEC VAX and Intel x86. Original language English (US) Pages (from-to) 369-408 Number of pages 40 Journal ACM Transactions on Programming Languages and Systems Volume 24 Issue number 4 DOIs https://doi.org/10.1145/567097.567100 State Published - Jul 2002 Keywords D.2.7 [Software Engineering]: Distribution, Maintenance, and Enhancement - Portability D.3.2 [Programming Languages]: Language Classifications - Macro and assembly languages ASJC Scopus subject areas Software Access to Document 10.1145/567097.567100 Other files and links Link to publication in Scopus Fingerprint Dive into the research topics of 'Automatic derivation of compiler machine descriptions'. Together they form a unique fingerprint. Reduced instruction set computing Engineering & Materials Science 100% Sun Engineering & Materials Science 81% Internet Engineering & Materials Science 54% Specifications Engineering & Materials Science 51% View full fingerprint Cite this APA Standard Harvard Vancouver Author BIBTEX RIS Collberg, C. S. (2002). Automatic derivation of compiler machine descriptions. ACM Transactions on Programming Languages and Systems, 24(4), 369-408. https://doi.org/10.1145/567097.567100 Automatic derivation of compiler machine descriptions. / Collberg, Christian S. In: ACM Transactions on Programming Languages and Systems, Vol. 24, No. 4, 07.2002, p. 369-408. Research output: Contribution to journal › Article › peer-review Collberg, CS 2002, 'Automatic derivation of compiler machine descriptions', ACM Transactions on Programming Languages and Systems, vol. 24, no. 4, pp. 369-408. https://doi.org/10.1145/567097.567100 Collberg CS. Automatic derivation of compiler machine descriptions. ACM Transactions on Programming Languages and Systems. 2002 Jul;24(4):369-408. https://doi.org/10.1145/567097.567100 Collberg, Christian S. / Automatic derivation of compiler machine descriptions. In: ACM Transactions on Programming Languages and Systems. 2002 ; Vol. 24, No. 4. pp. 369-408. @article{315b7116f8224306ba685c68cb02cd1c, title = "Automatic derivation of compiler machine descriptions", abstract = "We describe a method designed to significantly reduce the effort required to retarget a compiler to a new architecture, while at the same time producing fast and effective compilers. The basic idea is to use the native C compiler at compiler construction time to discover architectural features of the new architecture. From this information a formal machine description is produced. Given this machine description, a native code-generator can be generated by a back-end generator such as BEG or burg. A prototype automatic Architecture Discovery Tool (called ADT) has been implemented. This tool is completely automatic and requires minimal input from the user. Given the Internet address of the target machine and the command-lines by which the native C compiler, assembler, and linker are invoked, ADT will generate a BEG machine specification containing the register set, addressing modes, instruction set, and instruction timings for the architecture. The current version of ADT is general enough to produce machine descriptions for the integer instruction sets of common RISC and CISC architectures such as the Sun SPARC, Digital Alpha, MIPS, DEC VAX and Intel x86.", keywords = "D.2.7 [Software Engineering]: Distribution, Maintenance, and Enhancement - Portability, D.3.2 [Programming Languages]: Language Classifications - Macro and assembly languages", author = "Collberg, {Christian S.}", year = "2002", month = jul, doi = "10.1145/567097.567100", language = "English (US)", volume = "24", pages = "369--408", journal = "ACM Transactions on Programming Languages and Systems", issn = "0164-0925", publisher = "Association for Computing Machinery (ACM)", number = "4", } TY - JOUR T1 - Automatic derivation of compiler machine descriptions AU - Collberg, Christian S. PY - 2002/7 Y1 - 2002/7 N2 - We describe a method designed to significantly reduce the effort required to retarget a compiler to a new architecture, while at the same time producing fast and effective compilers. The basic idea is to use the native C compiler at compiler construction time to discover architectural features of the new architecture. From this information a formal machine description is produced. Given this machine description, a native code-generator can be generated by a back-end generator such as BEG or burg. A prototype automatic Architecture Discovery Tool (called ADT) has been implemented. This tool is completely automatic and requires minimal input from the user. Given the Internet address of the target machine and the command-lines by which the native C compiler, assembler, and linker are invoked, ADT will generate a BEG machine specification containing the register set, addressing modes, instruction set, and instruction timings for the architecture. The current version of ADT is general enough to produce machine descriptions for the integer instruction sets of common RISC and CISC architectures such as the Sun SPARC, Digital Alpha, MIPS, DEC VAX and Intel x86. AB - We describe a method designed to significantly reduce the effort required to retarget a compiler to a new architecture, while at the same time producing fast and effective compilers. The basic idea is to use the native C compiler at compiler construction time to discover architectural features of the new architecture. From this information a formal machine description is produced. Given this machine description, a native code-generator can be generated by a back-end generator such as BEG or burg. A prototype automatic Architecture Discovery Tool (called ADT) has been implemented. This tool is completely automatic and requires minimal input from the user. Given the Internet address of the target machine and the command-lines by which the native C compiler, assembler, and linker are invoked, ADT will generate a BEG machine specification containing the register set, addressing modes, instruction set, and instruction timings for the architecture. The current version of ADT is general enough to produce machine descriptions for the integer instruction sets of common RISC and CISC architectures such as the Sun SPARC, Digital Alpha, MIPS, DEC VAX and Intel x86. KW - D.2.7 [Software Engineering]: Distribution, Maintenance, and Enhancement - Portability KW - D.3.2 [Programming Languages]: Language Classifications - Macro and assembly languages UR - http://www.scopus.com/inward/record.url?scp=0038895759&partnerID=8YFLogxK UR - http://www.scopus.com/inward/citedby.url?scp=0038895759&partnerID=8YFLogxK U2 - 10.1145/567097.567100 DO - 10.1145/567097.567100 M3 - Article AN - SCOPUS:0038895759 VL - 24 SP - 369 EP - 408 JO - ACM Transactions on Programming Languages and Systems JF - ACM Transactions on Programming Languages and Systems SN - 0164-0925 IS - 4 ER - Powered by Pure, Scopus & Elsevier Fingerprint Engine™ © 2022 Elsevier B.V We use cookies to help provide and enhance our service and tailor content. By continuing you agree to the use of cookies Log in to Pure About web accessibility Contact us