diff options
author | Bob Wilson <bob.wilson@acm.org> | 2008-11-04 23:11:02 +0000 |
---|---|---|
committer | Bob Wilson <bob.wilson@acm.org> | 2008-11-04 23:11:02 +0000 |
commit | 19e8f41aa49baed9fd1f4a154e3611bb19de0442 (patch) | |
tree | 0df808cc4ca68628c4076fe7afd4f7f28a810327 /gas/config/tc-xtensa.h | |
parent | d3fd534293b3e22ff1aac0e141bb22e99fbbe3c2 (diff) | |
download | gdb-19e8f41aa49baed9fd1f4a154e3611bb19de0442.zip gdb-19e8f41aa49baed9fd1f4a154e3611bb19de0442.tar.gz gdb-19e8f41aa49baed9fd1f4a154e3611bb19de0442.tar.bz2 |
2008-11-04 Sterling Augustine <sterling@tensilica.com>
* config/tc-xtensa.c (xtensa_j_opcode): New.
(xg_instruction_matches_option_term): Handle "FREEREG" option.
(xg_build_to_insn): Likewise. Update renamed tls_reloc reference.
(md_begin): Initialize xtensa_j_opcode.
(md_assemble): Update renamed tls_reloc reference. Handle "j.l".
(xg_assemble_vliw_tokens): Save free_reg info in the frag.
(tinsn_immed_from_frag): Get free_reg info back out of the frag.
(vinsn_to_insnbuf): Update renamed tls_reloc references.
Distinguish extra argument for "FREEREG" from extra TLS argument.
* config/tc-xtensa.h (struct xtensa_frag_type): Add free_reg field.
* config/xtensa-istack.h (struct tinsn_struct): Rename tls_reloc
field to extra_arg.
* config/xtensa-relax.c (widen_spec_list): Add rules to relax "j.l".
(build_transition): Handle "FREEREG" operand.
* config/xtensa-relax.h (enum op_type): Add OP_FREEREG.
2008-11-04 Bob Wilson <bob.wilson@acm.org>
* gas/xtensa/all.exp: Run jlong test.
* gas/xtensa/jlong.d: New.
* gas/xtensa/jlong.s: New.
Diffstat (limited to 'gas/config/tc-xtensa.h')
-rw-r--r-- | gas/config/tc-xtensa.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/gas/config/tc-xtensa.h b/gas/config/tc-xtensa.h index dbb5267..91607af 100644 --- a/gas/config/tc-xtensa.h +++ b/gas/config/tc-xtensa.h @@ -253,6 +253,10 @@ struct xtensa_frag_type int literal_expansion[MAX_SLOTS]; int unreported_expansion; + /* For slots that have a free register for relaxation, record that + register. */ + expressionS free_reg[MAX_SLOTS]; + /* For text fragments that can generate literals at relax time: */ fragS *literal_frags[MAX_SLOTS]; enum xtensa_relax_statesE slot_subtypes[MAX_SLOTS]; |