diff options
author | John van Groningen | 2013-06-25 09:51:26 +0000 |
---|---|---|
committer | John van Groningen | 2013-06-25 09:51:26 +0000 |
commit | d708bcbe51c36723ff7a325e574d46c5e94cad92 (patch) | |
tree | bb1f7ff57845a50570be8e5cdccaa418f198653a | |
parent | use lea when generating position independent code for move descriptor indirect (diff) |
use lea when generating position independent code for cmp with descriptor
-rw-r--r-- | cgaas.c | 8 |
1 files changed, 8 insertions, 0 deletions
@@ -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, |