From badba7005cb265773aedb660a3d86cb80da4cefa Mon Sep 17 00:00:00 2001 From: Christoph Mallon Date: Mon, 21 Sep 2009 15:11:05 +0000 Subject: [PATCH] Implement bemit_call() with AM. [r26570] --- ir/be/ia32/ia32_emitter.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/ir/be/ia32/ia32_emitter.c b/ir/be/ia32/ia32_emitter.c index 25124ddd6..0bff12394 100644 --- a/ir/be/ia32/ia32_emitter.c +++ b/ir/be/ia32/ia32_emitter.c @@ -2827,7 +2827,12 @@ static void bemit_call(const ir_node *node) bemit8(0xE8); bemit_immediate(proc, true); } else { - panic("indirect call NIY"); + bemit8(0xFF); + if (get_ia32_op_type(node) == ia32_Normal) { + bemit_modru(get_in_reg(node, n_ia32_unary_op), 2); + } else { + bemit_mod_am(2, node); + } } } -- 2.20.1