aboutsummaryrefslogtreecommitdiff
path: root/rv64
diff options
context:
space:
mode:
authorQuentin Carbonneaux <[email protected]>2022-08-31 17:09:04 +0200
committerQuentin Carbonneaux <[email protected]>2022-10-03 10:41:03 +0200
commita9a70e30a8205a8f835c59fd8297e4a4483cc8d4 (patch)
treea4551f26f719951a2301dc248168af385f4ebc68 /rv64
parent0b26cd4f5ecff8a01fb3f0adb902c14e043581e9 (diff)
add new target-specific abi0 pass
The general idea is to give abis a chance to talk before we've done all the optimizations. Currently, all targets eliminate {par,arg,ret}{sb,ub,...} during this pass. The forthcoming arm64_apple will, however, insert proper extensions during abi0. Moving forward abis can, for example, lower small-aggregates passing there so that memory optimizations can interact better with function calls.
Diffstat (limited to 'rv64')
-rw-r--r--rv64/targ.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/rv64/targ.c b/rv64/targ.c
index 70701db..c0e5e18 100644
--- a/rv64/targ.c
+++ b/rv64/targ.c
@@ -44,7 +44,8 @@ Target T_rv64 = {
.retregs = rv64_retregs,
.argregs = rv64_argregs,
.memargs = rv64_memargs,
- .abi = rv64_abi,
+ .abi0 = elimsb,
+ .abi1 = rv64_abi,
.isel = rv64_isel,
.emitfn = rv64_emitfn,
.emitfin = elf_emitfin,