* hppa-tdep.c (hppa_pointer_to_address_hack): Remove function.
[deliverable/binutils-gdb.git] / gas / config / tc-alpha.c
index 08826ecd1dfd67b72d5ecf22b69c07238975cbde..2eb0adfd3b18d528afd6652d7b150963d7801f42 100644 (file)
@@ -21,8 +21,8 @@
 
    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.  */
 
 /* Mach Operating System
    Copyright (c) 1993 Carnegie Mellon University
@@ -109,28 +109,29 @@ struct alpha_macro
 #define O_cpregister   O_md2   /* + a leading comma.  */
 
 /* The alpha_reloc_op table below depends on the ordering of these.  */
-#define O_literal      O_md3   /* !literal relocation.  */
-#define O_lituse_addr  O_md4   /* !lituse_addr relocation.  */
-#define O_lituse_base  O_md5   /* !lituse_base relocation.  */
-#define O_lituse_bytoff        O_md6   /* !lituse_bytoff relocation.  */
-#define O_lituse_jsr   O_md7   /* !lituse_jsr relocation.  */
-#define O_lituse_tlsgd O_md8   /* !lituse_tlsgd relocation.  */
-#define O_lituse_tlsldm        O_md9   /* !lituse_tlsldm relocation.  */
-#define O_gpdisp       O_md10  /* !gpdisp relocation.  */
-#define O_gprelhigh    O_md11  /* !gprelhigh relocation.  */
-#define O_gprellow     O_md12  /* !gprellow relocation.  */
-#define O_gprel                O_md13  /* !gprel relocation.  */
-#define O_samegp       O_md14  /* !samegp relocation.  */
-#define O_tlsgd                O_md15  /* !tlsgd relocation.  */
-#define O_tlsldm       O_md16  /* !tlsldm relocation.  */
-#define O_gotdtprel    O_md17  /* !gotdtprel relocation.  */
-#define O_dtprelhi     O_md18  /* !dtprelhi relocation.  */
-#define O_dtprello     O_md19  /* !dtprello relocation.  */
-#define O_dtprel       O_md20  /* !dtprel relocation.  */
-#define O_gottprel     O_md21  /* !gottprel relocation.  */
-#define O_tprelhi      O_md22  /* !tprelhi relocation.  */
-#define O_tprello      O_md23  /* !tprello relocation.  */
-#define O_tprel                O_md24  /* !tprel relocation.  */
+#define O_literal      O_md3           /* !literal relocation.  */
+#define O_lituse_addr  O_md4           /* !lituse_addr relocation.  */
+#define O_lituse_base  O_md5           /* !lituse_base relocation.  */
+#define O_lituse_bytoff        O_md6           /* !lituse_bytoff relocation.  */
+#define O_lituse_jsr   O_md7           /* !lituse_jsr relocation.  */
+#define O_lituse_tlsgd O_md8           /* !lituse_tlsgd relocation.  */
+#define O_lituse_tlsldm        O_md9           /* !lituse_tlsldm relocation.  */
+#define O_lituse_jsrdirect O_md10      /* !lituse_jsrdirect relocation.  */
+#define O_gpdisp       O_md11          /* !gpdisp relocation.  */
+#define O_gprelhigh    O_md12          /* !gprelhigh relocation.  */
+#define O_gprellow     O_md13          /* !gprellow relocation.  */
+#define O_gprel                O_md14          /* !gprel relocation.  */
+#define O_samegp       O_md15          /* !samegp relocation.  */
+#define O_tlsgd                O_md16          /* !tlsgd relocation.  */
+#define O_tlsldm       O_md17          /* !tlsldm relocation.  */
+#define O_gotdtprel    O_md18          /* !gotdtprel relocation.  */
+#define O_dtprelhi     O_md19          /* !dtprelhi relocation.  */
+#define O_dtprello     O_md20          /* !dtprello relocation.  */
+#define O_dtprel       O_md21          /* !dtprel relocation.  */
+#define O_gottprel     O_md22          /* !gottprel relocation.  */
+#define O_tprelhi      O_md23          /* !tprelhi relocation.  */
+#define O_tprello      O_md24          /* !tprello relocation.  */
+#define O_tprel                O_md25          /* !tprel relocation.  */
 
 #define DUMMY_RELOC_LITUSE_ADDR                (BFD_RELOC_UNUSED + 1)
 #define DUMMY_RELOC_LITUSE_BASE                (BFD_RELOC_UNUSED + 2)
@@ -138,6 +139,7 @@ struct alpha_macro
 #define DUMMY_RELOC_LITUSE_JSR         (BFD_RELOC_UNUSED + 4)
 #define DUMMY_RELOC_LITUSE_TLSGD       (BFD_RELOC_UNUSED + 5)
 #define DUMMY_RELOC_LITUSE_TLSLDM      (BFD_RELOC_UNUSED + 6)
+#define DUMMY_RELOC_LITUSE_JSRDIRECT   (BFD_RELOC_UNUSED + 7)
 
 #define USER_RELOC_P(R) ((R) >= O_literal && (R) <= O_tprel)
 
@@ -418,6 +420,7 @@ alpha_reloc_op[] =
   DEF (lituse_jsr, DUMMY_RELOC_LITUSE_JSR, 1, 1),
   DEF (lituse_tlsgd, DUMMY_RELOC_LITUSE_TLSGD, 1, 1),
   DEF (lituse_tlsldm, DUMMY_RELOC_LITUSE_TLSLDM, 1, 1),
+  DEF (lituse_jsrdirect, DUMMY_RELOC_LITUSE_JSRDIRECT, 1, 1),
   DEF (gpdisp, BFD_RELOC_ALPHA_GPDISP, 1, 1),
   DEF (gprelhigh, BFD_RELOC_ALPHA_GPREL_HI16, 0, 0),
   DEF (gprellow, BFD_RELOC_ALPHA_GPREL_LO16, 0, 0),
@@ -770,6 +773,7 @@ debug_exp (expressionS tok[], int ntok)
        case O_lituse_jsr:              name = "O_lituse_jsr";          break;
        case O_lituse_tlsgd:            name = "O_lituse_tlsgd";        break;
        case O_lituse_tlsldm:           name = "O_lituse_tlsldm";       break;
+       case O_lituse_jsrdirect:        name = "O_lituse_jsrdirect";    break;
        case O_gpdisp:                  name = "O_gpdisp";              break;
        case O_gprelhigh:               name = "O_gprelhigh";           break;
        case O_gprellow:                name = "O_gprellow";            break;
@@ -1720,6 +1724,9 @@ emit_insn (struct alpha_insn *insn)
        case DUMMY_RELOC_LITUSE_TLSLDM:
          fixP->fx_offset = LITUSE_ALPHA_TLSLDM;
          goto do_lituse;
+       case DUMMY_RELOC_LITUSE_JSRDIRECT:
+         fixP->fx_offset = LITUSE_ALPHA_JSRDIRECT;
+         goto do_lituse;
        do_lituse:
          fixP->fx_addsy = section_symbol (now_seg);
          fixP->fx_r_type = BFD_RELOC_ALPHA_LITUSE;
@@ -5197,7 +5204,7 @@ md_pcrel_from (fixS *fixP)
    GPDISP.  */
 
 void
-md_apply_fix3 (fixS *fixP, valueT * valP, segT seg)
+md_apply_fix (fixS *fixP, valueT * valP, segT seg)
 {
   char * const fixpos = fixP->fx_frag->fr_literal + fixP->fx_where;
   valueT value = * valP;
@@ -5637,7 +5644,7 @@ tc_gen_reloc (asection *sec ATTRIBUTE_UNUSED,
          symbol, the relocation will entirely be performed at link time, not
          at assembly time.  bfd_perform_reloc doesn't know about this sort
          of thing, and as a result we need to fake it out here.  */
-      if ((S_IS_EXTERN (fixp->fx_addsy) || S_IS_WEAK (fixp->fx_addsy)
+      if ((S_IS_EXTERNAL (fixp->fx_addsy) || S_IS_WEAK (fixp->fx_addsy)
           || (S_GET_SEGMENT (fixp->fx_addsy)->flags & SEC_MERGE)
           || (S_GET_SEGMENT (fixp->fx_addsy)->flags & SEC_THREAD_LOCAL))
          && !S_IS_COMMON (fixp->fx_addsy))
This page took 0.026221 seconds and 4 git commands to generate.