[clang] [clang][bytecode] Use tailcalls via `[[clang::musttail]]` (PR #173756)

Timm Baeder via cfe-commits cfe-commits at lists.llvm.org
Sun Dec 28 01:50:12 PST 2025


Timm =?utf-8?q?Bäder?= <tbaeder at redhat.com>,
Timm =?utf-8?q?Bäder?= <tbaeder at redhat.com>
Message-ID:
In-Reply-To: <llvm.org/llvm/llvm-project/pull/173756 at github.com>


tbaederr wrote:

Here's the result for compiling the sqlite3 amalgamation (which doesn't produce any bytecode):
```
BASELINE:
Benchmark 1: bin/clang -c /home/fedora/sqlite3.c -fconstexpr-steps=1000000000
  Time (mean ± σ):      1.692 s ±  0.067 s    [User: 1.615 s, System: 0.071 s]
  Range (min … max):    1.596 s …  1.844 s    30 runs


BEFORE:
Benchmark 1: bin/clang -c /home/fedora/sqlite3.c -fconstexpr-steps=1000000000 -fexperimental-new-constant-interpreter
  Time (mean ± σ):      1.758 s ±  0.055 s    [User: 1.670 s, System: 0.082 s]
  Range (min … max):    1.660 s …  1.885 s    30 runs


AFTER:
Benchmark 1: bin/clang -c /home/fedora/sqlite3.c -fconstexpr-steps=1000000000 -fexperimental-new-constant-interpreter
  Time (mean ± σ):      1.753 s ±  0.049 s    [User: 1.666 s, System: 0.081 s]
  Range (min … max):    1.663 s …  1.862 s    30 runs
```

https://github.com/llvm/llvm-project/pull/173756


More information about the cfe-commits mailing list