From a9a70e30a8205a8f835c59fd8297e4a4483cc8d4 Mon Sep 17 00:00:00 2001 From: Quentin Carbonneaux Date: Wed, 31 Aug 2022 17:09:04 +0200 Subject: 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. --- rv64/targ.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'rv64') 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, -- cgit 1.4.1