diff options
author | Nick Clifton <nickc@redhat.com> | 2004-07-27 11:37:12 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2004-07-27 11:37:12 +0000 |
commit | 670ec21de99faddc3a86f9e18fb9ef1a093b3dbf (patch) | |
tree | d809163639cab84dd83ef7b8229321767c541388 /gas/config/tc-crx.h | |
parent | 575eebb19f60c85a0e4973dfa9e2f8b1a197005a (diff) | |
download | gdb-670ec21de99faddc3a86f9e18fb9ef1a093b3dbf.zip gdb-670ec21de99faddc3a86f9e18fb9ef1a093b3dbf.tar.gz gdb-670ec21de99faddc3a86f9e18fb9ef1a093b3dbf.tar.bz2 |
Add CRX insns: pushx, popx
Add support to GAS for expressions which are the difference of two symbols
Diffstat (limited to 'gas/config/tc-crx.h')
-rw-r--r-- | gas/config/tc-crx.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/gas/config/tc-crx.h b/gas/config/tc-crx.h index dc26a70..29e59fe 100644 --- a/gas/config/tc-crx.h +++ b/gas/config/tc-crx.h @@ -48,6 +48,10 @@ extern const struct relax_type md_relax_table[]; linker relaxations easier. */ #define tc_fix_adjustable(fixP) 0 +/* We need to force out some relocations when relaxing. */ +#define TC_FORCE_RELOCATION(FIXP) crx_force_relocation (FIXP) +extern int crx_force_relocation (struct fix *); + /* Fixup debug sections since we will never relax them. */ #define TC_LINKRELAX_FIXUP(seg) (seg->flags & SEC_ALLOC) @@ -58,8 +62,8 @@ extern const struct relax_type md_relax_table[]; /* This is called by emit_expr when creating a reloc for a cons. We could use the definition there, except that we want to handle the CRX reloc type specially, rather than the BFD_RELOC type. */ -#define TC_CONS_FIX_NEW(FRAG,OFF,LEN,EXP) \ - fix_new_exp (FRAG, OFF, (int)LEN, EXP, 0, \ +#define TC_CONS_FIX_NEW(FRAG, OFF, LEN, EXP) \ + fix_new_exp (FRAG, OFF, (int) LEN, EXP, 0, \ LEN == 1 ? BFD_RELOC_CRX_NUM8 \ : LEN == 2 ? BFD_RELOC_CRX_NUM16 \ : LEN == 4 ? BFD_RELOC_CRX_NUM32 \ |