riscv: rewrite parameter passing
commitc505074a9fcd7a6a31a63e892dfc9dcdcf52e003
authorMichael Matz <matz@suse.de>
Sat, 10 Aug 2019 19:21:43 +0000 (10 21:21 +0200)
committerMichael Matz <matz@suse.de>
Sun, 1 Sep 2019 21:13:21 +0000 (1 23:13 +0200)
tree1c81ce486238a185683dfe24b8b5ecb3ca19b5c3
parent9b0efa934621dfc956e909adadeabd9351328c11
riscv: rewrite parameter passing

this fixes the ret_mixed_test of abitest.c, now everything of the
testsuite works.

The generic code for returns is good enough for our use, except in
the specific case of a mixed int/float structures returned in registers,
so instead of duplicating the whole generic gfunc_return function, add
another modus for gfunc_sret: returning -1 makes the actual register
transfer by a new backend function.
riscv64-gen.c
tcc.h
tccgen.c