projects
/
binutils-gdb.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Adds support for generating notes in V850 binaries.
[binutils-gdb.git]
/
gas
/
config
/
tc-v850.h
diff --git
a/gas/config/tc-v850.h
b/gas/config/tc-v850.h
index c4a1a2ba84c9e9a5648018062d1b5417cd37a3ce..efce415dfb5a834ce96142845c6d71b96ed5e9bf 100644
(file)
--- a/
gas/config/tc-v850.h
+++ b/
gas/config/tc-v850.h
@@
-1,6
+1,5
@@
/* tc-v850.h -- Header file for tc-v850.c.
/* tc-v850.h -- Header file for tc-v850.c.
- Copyright 1996, 1997, 1998, 2000, 2001, 2002, 2003, 2005, 2006, 2007
- Free Software Foundation, Inc.
+ Copyright (C) 1996-2015 Free Software Foundation, Inc.
This file is part of GAS, the GNU Assembler.
This file is part of GAS, the GNU Assembler.
@@
-26,10
+25,12
@@
#define TARGET_BYTES_BIG_ENDIAN 0
/* The target BFD architecture. */
#define TARGET_BYTES_BIG_ENDIAN 0
/* The target BFD architecture. */
-#define TARGET_ARCH bfd_arch_v850
+#define TARGET_ARCH v850_target_arch
+extern int v850_target_arch;
/* The target BFD format. */
/* The target BFD format. */
-#define TARGET_FORMAT "elf32-v850"
+#define TARGET_FORMAT v850_target_format
+extern const char * v850_target_format;
#define md_operand(x)
#define md_operand(x)
@@
-57,10
+58,11
@@
extern int v850_force_relocation (struct fix *);
/* We need to handle lo(), hi(), etc etc in .hword, .word, etc
directives, so we have to parse "cons" expressions ourselves. */
#define TC_PARSE_CONS_EXPRESSION(EXP, NBYTES) parse_cons_expression_v850 (EXP)
/* We need to handle lo(), hi(), etc etc in .hword, .word, etc
directives, so we have to parse "cons" expressions ourselves. */
#define TC_PARSE_CONS_EXPRESSION(EXP, NBYTES) parse_cons_expression_v850 (EXP)
-extern
void
parse_cons_expression_v850 (expressionS *);
+extern
bfd_reloc_code_real_type
parse_cons_expression_v850 (expressionS *);
#define TC_CONS_FIX_NEW cons_fix_new_v850
#define TC_CONS_FIX_NEW cons_fix_new_v850
-extern void cons_fix_new_v850 (fragS *, int, int, expressionS *);
+extern void cons_fix_new_v850 (fragS *, int, int, expressionS *,
+ bfd_reloc_code_real_type);
#define TC_GENERIC_RELAX_TABLE md_relax_table
extern const struct relax_type md_relax_table[];
#define TC_GENERIC_RELAX_TABLE md_relax_table
extern const struct relax_type md_relax_table[];
@@
-70,6
+72,9
@@
extern const struct relax_type md_relax_table[];
#define HANDLE_ALIGN(frag) v850_handle_align (frag)
extern void v850_handle_align (fragS *);
#define HANDLE_ALIGN(frag) v850_handle_align (frag)
extern void v850_handle_align (fragS *);
+/* We need space in a frag's fixed size to allow for alignment when relaxing. */
+#define TC_FX_SIZE_SLACK(FIX) 2
+
#define MD_PCREL_FROM_SECTION(FIX, SEC) v850_pcrel_from_section (FIX, SEC)
extern long v850_pcrel_from_section (struct fix *, asection *);
#define MD_PCREL_FROM_SECTION(FIX, SEC) v850_pcrel_from_section (FIX, SEC)
extern long v850_pcrel_from_section (struct fix *, asection *);
@@
-79,3
+84,6
@@
extern long v850_pcrel_from_section (struct fix *, asection *);
processed so that the resulting value can be inserted correctly. */
#define TC_FIX_TYPE void *
#define TC_INIT_FIX_DATA(fixP) (fixP)->tc_fix_data = NULL
processed so that the resulting value can be inserted correctly. */
#define TC_FIX_TYPE void *
#define TC_INIT_FIX_DATA(fixP) (fixP)->tc_fix_data = NULL
+
+#define md_end v850_md_end
+extern void v850_md_end (void);