SC21 Proceedings

The International Conference for High Performance Computing, Networking, Storage, and Analysis

Automatic and Customizable Code Rewriting and Refactoring with Clang


Workshop:LLVM-HPC2021: The Seventh Workshop on the LLVM Compiler Infrastructure in HPC

Authors: Alister Johnson (University of Oregon) and Johannes Doerfert (Argonne National Laboratory (ANL))


Abstract: Refactoring code for cleanliness, API changes, and new programming models is a common, yet time-consuming task for application developers. Many of the changes done while refactoring are simple and mechanical and can be easily automated. Other changes, however, still require input from a human programmer to ensure the desired result is achieved.

This work describes a prototype tool built on top of Clang that will allow programmers to automate these more complex changes via a user-friendly, pure C++ framework. As a motivating example, we present an alternative, customizable implementation of hipify, which translates CUDA to HIP, using our framework.





Back to LLVM-HPC2021: The Seventh Workshop on the LLVM Compiler Infrastructure in HPC Archive Listing



Back to Full Workshop Archive Listing