diff --git a/binutils/ChangeLog b/binutils/ChangeLog
index cf11c8d3c3c60ee840fd200705cc1b9e595a005c..2b6d4023b5b9ffe9e90867df80f7b21a72c89420 100644
--- a/binutils/ChangeLog
+++ b/binutils/ChangeLog
@@ -1,3 +1,10 @@
+2019-06-11  Christos Zoulas  <christos@zoulas.com>
+
+	PR 24662
+	* readelf.c (get_alpha_symbol_other): New function.
+	(get_symbol_other): Use for Alpha symbols.
+	(is_32bit_pcrel_reloc): Add R_VAX_PCREL32.
+
 2019-06-11  Christos Zoulas  <christos@zoulas.com>
 
 	PR 24661
diff --git a/binutils/readelf.c b/binutils/readelf.c
index 6246de65fa8dca3442093280159683d159a25f7e..8933ccbb5357f3e645228f3ae08a54d19077358e 100644
--- a/binutils/readelf.c
+++ b/binutils/readelf.c
@@ -11134,6 +11134,19 @@ get_symbol_visibility (unsigned int visibility)
     }
 }
 
+static const char *
+get_alpha_symbol_other (unsigned int other)
+{   
+  switch (other)
+    {
+    case STO_ALPHA_NOPV:       return "NOPV";
+    case STO_ALPHA_STD_GPLOAD: return "STD GPLOAD";
+    default:
+      error (_("Unrecognized alpah specific other value: %u"), other);
+      return _("<unknown>");
+    } 
+}
+
 static const char *
 get_solaris_symbol_visibility (unsigned int visibility)
 {
@@ -11273,6 +11286,9 @@ get_symbol_other (Filedata * filedata, unsigned int other)
 
   switch (filedata->file_header.e_machine)
     {
+    case EM_ALPHA:
+      result = get_alpha_symbol_other (other);
+      break;
     case EM_AARCH64:
       result = get_aarch64_symbol_other (other);
       break;
@@ -12722,6 +12738,8 @@ is_32bit_pcrel_reloc (Filedata * filedata, unsigned int reloc_type)
     case EM_L1OM:
     case EM_K1OM:
       return reloc_type == 2;  /* R_X86_64_PC32.  */
+    case EM_VAX:
+      return reloc_type == 4;  /* R_VAX_PCREL32.  */
     case EM_XTENSA_OLD:
     case EM_XTENSA:
       return reloc_type == 14; /* R_XTENSA_32_PCREL.  */