diff options
Diffstat (limited to 'contrib/binutils/gas/config/tc-ppc.h')
-rw-r--r-- | contrib/binutils/gas/config/tc-ppc.h | 25 |
1 files changed, 12 insertions, 13 deletions
diff --git a/contrib/binutils/gas/config/tc-ppc.h b/contrib/binutils/gas/config/tc-ppc.h index 0844f84..f7c2da6 100644 --- a/contrib/binutils/gas/config/tc-ppc.h +++ b/contrib/binutils/gas/config/tc-ppc.h @@ -1,6 +1,6 @@ /* tc-ppc.h -- Header file for tc-ppc.c. - Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 - Free Software Foundation, Inc. + Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, + 2004, 2005 Free Software Foundation, Inc. Written by Ian Lance Taylor, Cygnus Support. This file is part of GAS, the GNU Assembler. @@ -17,24 +17,18 @@ You should have received a copy of the GNU General Public License along with GAS; see the file COPYING. If not, write to the Free - Software Foundation, 59 Temple Place - Suite 330, Boston, MA - 02111-1307, USA. */ + Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA + 02110-1301, USA. */ #define TC_PPC -#ifdef ANSI_PROTOTYPES struct fix; -#endif /* Set the endianness we are using. Default to big endian. */ #ifndef TARGET_BYTES_BIG_ENDIAN #define TARGET_BYTES_BIG_ENDIAN 1 #endif -#ifndef BFD_ASSEMBLER - #error PowerPC support requires BFD_ASSEMBLER -#endif - /* If OBJ_COFF is defined, and TE_PE is not defined, we are assembling XCOFF for AIX or PowerMac. If TE_PE is defined, we are assembling COFF for Windows NT. */ @@ -90,7 +84,7 @@ extern char *ppc_target_format PARAMS ((void)); - ((FRAGP)->fr_address + (FRAGP)->fr_fix)); \ if (count != 0 && (count & 3) == 0) \ { \ - unsigned char *dest = (FRAGP)->fr_literal + (FRAGP)->fr_fix; \ + char *dest = (FRAGP)->fr_literal + (FRAGP)->fr_fix; \ \ (FRAGP)->fr_var = 4; \ if (target_big_endian) \ @@ -110,6 +104,11 @@ extern char *ppc_target_format PARAMS ((void)); } \ } +#define md_frag_check(FRAGP) \ + if ((FRAGP)->has_code \ + && (((FRAGP)->fr_address + (FRAGP)->insn_addr) & 3) != 0) \ + as_bad_where ((FRAGP)->fr_file, (FRAGP)->fr_line, \ + _("instruction address is not a multiple of 4")); #ifdef TE_PE @@ -229,7 +228,7 @@ extern const char *ppc_comment_chars; #define tc_fix_adjustable(FIX) ppc_fix_adjustable (FIX) extern int ppc_fix_adjustable PARAMS ((struct fix *)); -/* Values passed to md_apply_fix3 don't include symbol values. */ +/* Values passed to md_apply_fix don't include symbol values. */ #define MD_APPLY_SYM_VALUE(FIX) 0 #define tc_frob_file_before_adjust ppc_frob_file_before_adjust @@ -246,7 +245,7 @@ extern int ppc_force_relocation PARAMS ((struct fix *)); #define MD_PCREL_FROM_SECTION(FIX, SEC) md_pcrel_from_section(FIX, SEC) extern long md_pcrel_from_section PARAMS ((struct fix *, segT)); -#define md_parse_name(name, exp, c) ppc_parse_name (name, exp) +#define md_parse_name(name, exp, mode, c) ppc_parse_name (name, exp) extern int ppc_parse_name PARAMS ((const char *, struct expressionS *)); #define md_operand(x) |