diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 2fd2321a429..20a02d9238f 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,8 @@
+2020-08-26  Alan Modra  <amodra@gmail.com>
+
+	PR 26453
+	* som.c (som_prep_for_fixups): Return early when no symbols.
+
 2020-08-26  Alan Modra  <amodra@gmail.com>
 
 	PR 26418
diff --git a/bfd/som.c b/bfd/som.c
index 4f0a606c18a..93a0ad89d52 100644
--- a/bfd/som.c
+++ b/bfd/som.c
@@ -2804,6 +2804,9 @@ som_prep_for_fixups (bfd *abfd, asymbol **syms, unsigned long num_syms)
   asymbol **sorted_syms;
   size_t amt;
 
+  if (num_syms == 0)
+    return TRUE;
+
   /* Most SOM relocations involving a symbol have a length which is
      dependent on the index of the symbol.  So symbols which are
      used often in relocations should have a small index.  */