QBE as an easy-to-embed library
https://c9x.me/git/qbe.git
This was cute to do, but it is largely inconsequential, as shown by the rough timings below: benchmarking mul8_lea 3.9 ticks ± 0.88 (min: 3) benchmarking mul8_imul 3.3 ticks ± 0.27 (min: 3) benchmarking div8_udiv 6.5 ticks ± 0.52 (min: 6) benchmarking div8_shr 3.3 ticks ± 0.34 (min: 3) |
||
---|---|---|
amd64 | ||
arm64 | ||
doc | ||
minic | ||
rv64 | ||
test | ||
tools | ||
.gitignore | ||
abi.c | ||
alias.c | ||
all.h | ||
cfg.c | ||
copy.c | ||
emit.c | ||
fold.c | ||
LICENSE | ||
live.c | ||
load.c | ||
main.c | ||
Makefile | ||
mem.c | ||
ops.h | ||
parse.c | ||
README | ||
rega.c | ||
simpl.c | ||
spill.c | ||
ssa.c | ||
util.c |
QBE - Backend Compiler http://c9x.me/compile/ doc/ Documentation. minic/ An example C frontend for QBE. tools/ Miscellaneous tools (testing). test/ Tests. amd64/ arm64/ rv64/ Architecture-specific code. The LICENSE file applies to all files distributed. - Compilation and Installation Invoke make in this directory to create the executable file qbe. Install using 'make install', the standard DESTDIR and PREFIX environment variables are supported. Alternatively, you may simply copy the qbe binary manually.