Clang __usercall: towards native support for user defined calling conventions


연구 분야: Analysis



학회: ESEC/FSE 2022: Proceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering


초록

In reverse engineering interfacing with C/C++ functions is of great interest because it provides much more flexibility for product development and security purpose. However, it has been a great challenge when interfacing functions with user defined calling conventions due to the lack of sufficient and user-friendly tooling. In this work, we design and implement Clang __usercall, which aims to provide programmers with an elegant and familiar syntax to specify user defined calling conventions on functions in C/C++ source code. Our key novelties lie in mimicing the most popular syntax and adapting Clang for interfacing purpose. Our preliminary user study shows that our solution outperforms the existing ones in multiple key aspects including user experience and required lines of code. Clang __usercall is already added to the Compiler Explorer website as well.


Author Profile
Jared Q Widberg

University of Massachusetts at Lowell USA

Austria
Author Profile
Sashank Narain

University of Massachusetts at Lowell USA

Austria
Author Profile
Yimin Chen

University of Massachusetts at Lowell USA

Austria

📄 논문 정보

발행 연도 2022년
인용수 0
출판 국가 Austria
사이트 ACM
좋아요 수 0

연관 논문 목록 (164건)