From 77751e719ba1470f3dc869ae309485adb02819b6 Mon Sep 17 00:00:00 2001 From: Mahesh Bodapati Date: Thu, 16 Apr 2020 18:08:58 +0530 Subject: [PATCH 29/52] [Patch,MicroBlaze m64] : This patch will remove imml 0 and imml -1 instructions when the offset is less than 16 bit for Type A branch EA instructions. --- gas/config/tc-microblaze.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/gas/config/tc-microblaze.c b/gas/config/tc-microblaze.c index 647cfb6869..e565b2a99d 100644 --- a/gas/config/tc-microblaze.c +++ b/gas/config/tc-microblaze.c @@ -2150,9 +2150,7 @@ md_assemble (char * str) if (exp.X_op != O_constant) { char *opc; - if (microblaze_arch_size == 64 && (streq (name, "breai") || - streq (name, "breaid") || - streq (name, "brai") || streq (name, "braid"))) + if (microblaze_arch_size == 64 && (streq (name, "brai") || streq (name, "braid"))) opc = str_microblaze_64; else opc = NULL; @@ -2916,7 +2914,7 @@ md_apply_fix (fixS * fixP, case BFD_RELOC_MICROBLAZE_64: case BFD_RELOC_MICROBLAZE_64_PCREL: if (fixP->fx_r_type == BFD_RELOC_MICROBLAZE_64 - || fixP->fx_r_type == BFD_RELOC_MICROBLAZE_64_PCREL) + || fixP->fx_r_type == BFD_RELOC_MICROBLAZE_64_PCREL || (fixP->fx_r_type == BFD_RELOC_64_PCREL && microblaze_arch_size == 64)) { /* Generate the imm instruction. */ if (((long long)val) > (long long)-549755813888 && ((long long)val) < (long long)549755813887) -- 2.17.1