diff options
| author | 2023-06-22 21:54:08 +0200 | |
|---|---|---|
| committer | 2023-06-22 21:54:08 +0200 | |
| commit | d313c6e49bfb32ae24745e90eebe833da20efa1a (patch) | |
| tree | 73f950f515b4442a800ecc4e35c346b0cc263a89 /abi0.c | |
| parent | 836f91535f421be4cba2840aed55aba3c5f72f1b (diff) | |
change RMORE -> RADDR; use RXXX (RNONE) for special args,also undef
Diffstat (limited to 'abi0.c')
| -rw-r--r-- | abi0.c | 6 |
1 files changed, 3 insertions, 3 deletions
@@ -316,7 +316,7 @@ abi0(struct function *fn) do { union ref arg = blk->jmp.arg[0]; if (blk->jmp.t != Jret) continue; - if (!arg.t) continue; + if (!arg.bits) continue; if (arg.t != RTMP || !oisalloca(instrtab[arg.i].op)) { rvovar = -1; break; @@ -342,8 +342,8 @@ abi0(struct function *fn) } /* adjust returns */ - if (isagg(fn->retty) && blk->jmp.t == Jret && blk->jmp.arg[0].t) { - assert(!blk->jmp.arg[1].t); + if (isagg(fn->retty) && blk->jmp.t == Jret && blk->jmp.arg[0].bits) { + assert(!blk->jmp.arg[1].bits); if (fn->nabiret) { /* aggregate return in register(s) */ union ref src = blk->jmp.arg[0]; for (int i = 0; i < fn->nabiret; ++i) { |