diff options
author | Bob Wilson <bob.wilson@acm.org> | 2007-06-22 18:44:50 +0000 |
---|---|---|
committer | Bob Wilson <bob.wilson@acm.org> | 2007-06-22 18:44:50 +0000 |
commit | b81bf389ecc8103ffe23da2f1abbbdda608c132e (patch) | |
tree | f8ad98caf2571dd9d07b560d8cba60395659835c /gas/config/tc-xtensa.h | |
parent | 184d813c13d958ec971c07a5db3145fd8ca0d404 (diff) | |
download | gdb-b81bf389ecc8103ffe23da2f1abbbdda608c132e.zip gdb-b81bf389ecc8103ffe23da2f1abbbdda608c132e.tar.gz gdb-b81bf389ecc8103ffe23da2f1abbbdda608c132e.tar.bz2 |
* config/tc-xtensa.c (xg_assembly_relax): Comment termination rules.
(frag_format_size): Handle RELAX_IMMED_STEP3.
(xtensa_relax_frag, md_convert_frag): Likewise.
* config/tc-xtensa.h (xtensa_relax_statesE): Add RELAX_IMMED_STEP3.
(RELAX_IMMED_MAXSTEPS): Adjust.
* config/xtensa-relax.c (widen_spec_list): Add transitions from
wide branches to branch-over-jumps.
(build_transition): Handle wide branches in transition patterns.
Diffstat (limited to 'gas/config/tc-xtensa.h')
-rw-r--r-- | gas/config/tc-xtensa.h | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/gas/config/tc-xtensa.h b/gas/config/tc-xtensa.h index 251105e..4065321 100644 --- a/gas/config/tc-xtensa.h +++ b/gas/config/tc-xtensa.h @@ -131,18 +131,20 @@ enum xtensa_relax_statesE RELAX_IMMED, /* The last instruction in this fragment (at->fr_opcode) contains - the value defined by fr_symbol (fr_offset = 0). If the value - does not fit, use the specified expansion. This is similar to - "NARROW", except that these may not be expanded in order to align - code. */ + an immediate or symbol. If the value does not fit, relax the + opcode using expansions from the relax table. */ RELAX_IMMED_STEP1, /* The last instruction in this fragment (at->fr_opcode) contains a - literal. It has already been expanded at least 1 step. */ + literal. It has already been expanded 1 step. */ RELAX_IMMED_STEP2, /* The last instruction in this fragment (at->fr_opcode) contains a - literal. It has already been expanded at least 2 steps. */ + literal. It has already been expanded 2 steps. */ + + RELAX_IMMED_STEP3, + /* The last instruction in this fragment (at->fr_opcode) contains a + literal. It has already been expanded 3 steps. */ RELAX_SLOTS, /* There are instructions within the last VLIW instruction that need @@ -179,7 +181,7 @@ enum xtensa_relax_statesE /* This is used as a stopper to bound the number of steps that can be taken. */ -#define RELAX_IMMED_MAXSTEPS (RELAX_IMMED_STEP2 - RELAX_IMMED) +#define RELAX_IMMED_MAXSTEPS (RELAX_IMMED_STEP3 - RELAX_IMMED) struct xtensa_frag_type { |