The GNU Compiler Collection (GCC) uses a set of files describing a target architecture to guide it in producing code for that architecture. In order to retarget GCC, a large number of interdependent aspects of the desired architecture must be captured in these machine description files. The authors advocate an incremental approach to developing machine description files, in which a small amount of information is encoded and the result is tested at each level. Thus, each advance rests on a trusted base, resulting in easy error location and correction.
The paper provides a short description of each level, with samples of the information that the user must provide at that level. A Web-based tool to guide and assist in the process is briefly described, and a case study showing experience in using the methodology is given. There is a reasonable bibliography and discussion of related work.
This is not a novice’s introduction to GCC retargeting, but it is accessible to anyone with a background in compiler construction and an understanding of machine architecture. The references point to the necessary GCC documentation. Unfortunately, there is no direct access to the Web-based tool.
I found the general strategy appealing. The paper provides a broad overview of the process, but it would likely be of interest only to those readers about to undertake a GCC retargeting effort.