From d708bcbe51c36723ff7a325e574d46c5e94cad92 Mon Sep 17 00:00:00 2001 From: John van Groningen Date: Tue, 25 Jun 2013 09:51:26 +0000 Subject: use lea when generating position independent code for cmp with descriptor --- cgaas.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/cgaas.c b/cgaas.c index 3de682e..7063a66 100644 --- a/cgaas.c +++ b/cgaas.c @@ -2123,6 +2123,14 @@ static void as_cmp_instruction (struct instruction *instruction) switch (parameter_0.parameter_type){ case P_DESCRIPTOR_NUMBER: +#ifdef LINUX + if (pic_flag){ + as_move_d_r (parameter_0.parameter_data.l,parameter_0.parameter_offset,REGISTER_O0); + + parameter_0.parameter_type=P_REGISTER; + parameter_0.parameter_data.reg.r=REGISTER_O0; + } else +#endif switch (parameter_1.parameter_type){ case P_REGISTER: as_d_r2 (0201,0070,0075,parameter_0.parameter_data.l,parameter_0.parameter_offset, -- cgit v1.2.3