From: Tomer Levi Date: Thu, 23 Dec 2004 13:50:36 +0000 (+0000) Subject: 2004-12-23 Tomer Levi X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=30c629226c69c7df74c445252e03dee898d8d6d4;p=binutils-gdb.git 2004-12-23 Tomer Levi * config/tc-crx.c: Support 'bcop' relaxation (dealt as in 'cmp&branch' case). --- diff --git a/gas/ChangeLog b/gas/ChangeLog index f9783721290..082e008497f 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +2004-12-23 Tomer Levi + + * config/tc-crx.c: Support 'bcop' relaxation (dealt as in 'cmp&branch' + case). + 2004-12-22 Ian Lance Taylor * configure.tgt: New. diff --git a/gas/config/tc-crx.c b/gas/config/tc-crx.c index 85b7f3136e1..a05fcaa0f7f 100644 --- a/gas/config/tc-crx.c +++ b/gas/config/tc-crx.c @@ -134,7 +134,7 @@ const relax_typeS md_relax_table[] = {0xfffe, -0x10000, 4, 4}, /* 16 */ {0xfffffffe, -0xfffffffe, 6, 0}, /* 32 */ - /* cmpbr */ + /* cmpbr/bcop */ {0xfe, -0x100, 4, 6}, /* 8 */ {0xfffffe, -0x1000000, 6, 0} /* 24 */ }; @@ -707,10 +707,8 @@ process_label_constant (char *str, ins * crx_ins) crx_ins->rtype = BFD_RELOC_CRX_ABS32; else if (IS_INSN_TYPE (BRANCH_NEQ_INS)) crx_ins->rtype = BFD_RELOC_CRX_REL4; - else if (IS_INSN_TYPE (CMPBR_INS)) + else if (IS_INSN_TYPE (CMPBR_INS) || IS_INSN_TYPE (COP_BRANCH_INS)) crx_ins->rtype = BFD_RELOC_CRX_REL8_CMP; - else if (IS_INSN_TYPE (COP_BRANCH_INS)) - crx_ins->rtype = BFD_RELOC_CRX_REL24; break; case arg_ic: @@ -1949,8 +1947,8 @@ print_insn (ins *insn) /* bal */ else if (IS_INSN_TYPE (DCR_BRANCH_INS) || IS_INSN_MNEMONIC ("bal")) relax_subtype = 3; - /* cmpbr */ - else if (IS_INSN_TYPE (CMPBR_INS)) + /* cmpbr/bcop */ + else if (IS_INSN_TYPE (CMPBR_INS) || IS_INSN_TYPE (COP_BRANCH_INS)) relax_subtype = 5; else abort ();