summaryrefslogtreecommitdiffhomepage
path: root/ir/be/beasm.c
diff options
context:
space:
mode:
authorChristoph Mallon <christoph.mallon@gmx.de>2019-03-18 21:54:01 +0100
committerChristoph Mallon <christoph.mallon@gmx.de>2019-03-18 21:54:01 +0100
commitd9e915ec4a29fc815530522589243a0a0dfc00ff (patch)
tree98cf183d9f6e9a206b50e7b83a780574c5b28c4a /ir/be/beasm.c
parent9c1fb3b665f810c237d1f98c00f9a0d83f8a0349 (diff)
beasm: Ignore the fixed inputs/outputs when deciding which strategy to use to make the node register pressure faithful.
Diffstat (limited to 'ir/be/beasm.c')
-rw-r--r--ir/be/beasm.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/ir/be/beasm.c b/ir/be/beasm.c
index 0221f1d..2896cd2 100644
--- a/ir/be/beasm.c
+++ b/ir/be/beasm.c
@@ -307,7 +307,7 @@ ir_node *be_make_asm(ir_node const *const node, be_asm_info_t const *const info,
*/
uint8_t add_pressure[ir_target.isa->n_register_classes];
memset(add_pressure, 0, sizeof(add_pressure));
- if (n_outs < n_ins) {
+ if (n_outs - pn_be_Asm_first_out < n_ins - n_be_Asm_first_in) {
bitset_t *const used_ins = bitset_alloca(n_ins);
for (size_t o = pn_be_Asm_first_out; o < n_outs; ++o) {
arch_register_req_t const *const outreq = out_reqs[o];