savi-lang / savi

A fast language for programmers who are passionate about their craft.
BSD 3-Clause "New" or "Revised" License
157 stars 12 forks source link

Mark as many LLVM functions as possible with private linkage. #329

Closed jemc closed 2 years ago

jemc commented 2 years ago

We're not compiling a library, so we want to mark as many functions as possible with private linkage, so LLVM can optimize them aggressively, including inlining them, eliminating them if they are not used, and/or marking them to use the fastest available calling convention.

Prior to this commit, the public runtime functions were all marked as external, so they would miss out on optimizations if we don't do this.