Efficient Calling Conventions for Irregular Architectures
Philipp K. Krause

TL;DR
This paper empirically evaluates various C calling conventions on irregular microcontroller architectures, demonstrating significant improvements in code size and speed that led to changes in SDCC's default calling convention.
Contribution
It introduces optimized calling conventions tailored for irregular architectures, showing substantial performance and size benefits over previous standards.
Findings
Significant reduction in code size and execution time.
SDCC adopted new calling conventions based on findings.
Potential for further optimization in embedded compiler design.
Abstract
We empirically evaluated thousands of different C calling conventions for irregular microcontroller architectures, and found potential for improvement over the calling conventions previously used in the Small Device C Compiler (SDCC). The improvements in code size and speed are substantial enough that SDCC made changes to its default calling convention, breaking ABI compatibility.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Embedded Systems Design Techniques · Real-Time Systems Scheduling
