aboutsummaryrefslogtreecommitdiff
path: root/gas/config/tc-ppc.h
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2008-03-01 07:24:47 +0000
committerAlan Modra <amodra@gmail.com>2008-03-01 07:24:47 +0000
commit783de16343a40cd4e07b51fbfb2b11e101c38ce9 (patch)
treee5ff4ddf0d4c484e950cf002ccdc1763a6da2d45 /gas/config/tc-ppc.h
parentd253b6540f06cba8a3cac5a0f7673f906859ac37 (diff)
downloadgdb-783de16343a40cd4e07b51fbfb2b11e101c38ce9.zip
gdb-783de16343a40cd4e07b51fbfb2b11e101c38ce9.tar.gz
gdb-783de16343a40cd4e07b51fbfb2b11e101c38ce9.tar.bz2
* config/tc-ppc.h (struct _ppc_fix_extra): New.
(ppc_cpu): Declare. (TC_FIX_TYPE, TC_INIT_FIX_DATA): Define. * config/tc-ppc.c (ppu_cpu): Make global. (ppc_insert_operand): Add ppu_cpu parameter. (md_assemble): Adjust for above change. (md_apply_fix): Pass tc_fix_data.ppc_cpu to ppc_insert_operand.
Diffstat (limited to 'gas/config/tc-ppc.h')
-rw-r--r--gas/config/tc-ppc.h15
1 files changed, 14 insertions, 1 deletions
diff --git a/gas/config/tc-ppc.h b/gas/config/tc-ppc.h
index 663419d..5f6f7f2 100644
--- a/gas/config/tc-ppc.h
+++ b/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,
- 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
+ 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
Written by Ian Lance Taylor, Cygnus Support.
This file is part of GAS, the GNU Assembler.
@@ -90,6 +90,19 @@ extern void ppc_handle_align (struct frag *);
&& (((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"));
+
+/* Arrange to store the value of ppc_cpu at the site of a fixup
+ for later use in md_apply_fix. */
+struct _ppc_fix_extra
+{
+ unsigned long ppc_cpu;
+};
+
+extern unsigned long ppc_cpu;
+
+#define TC_FIX_TYPE struct _ppc_fix_extra
+#define TC_INIT_FIX_DATA(FIXP) \
+ do { (FIXP)->tc_fix_data.ppc_cpu = ppc_cpu; } while (0)
#ifdef TE_PE