Accept and ignore the R_BPF_64_NODLYD32 relocation.
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 1b9d13a..2b12eb3 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,7 @@
+2023-10-30  Nick Clifton  <nickc@redhat.com>
+
+	* bpf-reloc.def (R_BPF_64_NODLD32): Add entry.
+
 2023-10-16  Nick Clifton  <nickc@redhat.com>
 
 	PR 28910
diff --git a/bfd/bpf-reloc.def b/bfd/bpf-reloc.def
index 31f761d..7e74978 100644
--- a/bfd/bpf-reloc.def
+++ b/bfd/bpf-reloc.def
@@ -87,3 +87,20 @@
         0xffff,                /* src_mask */
         0xffff,                /* dst_mask */
         true)                  /* pcrel_offset */
+
+  /* R_BPF_64_NODYLD32 is not used by GNU tools - but it is generated by LLVM.
+     We provide an entry here so that tools like strip can safely handle BPF
+     binaries generated by other tools.  */
+  BPF_HOWTO (R_BPF_64_NODYLD32,	/* type */
+	 0,			/* rightshift */
+	 0,			/* size */
+	 0,			/* bitsize */
+	 false,			/* pc_relative */
+	 0,			/* bitpos */
+	 complain_overflow_dont, /* complain_on_overflow */
+	 bpf_elf_generic_reloc, /* special_function */
+	 "R_BPF_64_NODYLD32",	/* name */
+	 false,			/* partial_inplace */
+	 0,			/* src_mask */
+	 0,			/* dst_mask */
+	 false)			/* pcrel_offset */
diff --git a/include/ChangeLog b/include/ChangeLog
index 90ee736..e0f0cb3 100644
--- a/include/ChangeLog
+++ b/include/ChangeLog
@@ -1,3 +1,8 @@
+2023-10-30  Nick Clifton  <nickc@redhat.com>
+
+	* elf/bpf.h (R_BPF_64_NODYLD32): Add a note that this reloc is
+	generated by other tools, eg LLVM.
+
 2023-09-28  Frederic Cambus  <fred@statdns.com>
 
 	* elf/common.h (PT_OPENBSD_NOBTCFI): Define.
diff --git a/include/elf/bpf.h b/include/elf/bpf.h
index e4d4162..1ad074f 100644
--- a/include/elf/bpf.h
+++ b/include/elf/bpf.h
@@ -30,8 +30,8 @@
   RELOC_NUMBER (R_BPF_64_64,       		1)
   RELOC_NUMBER (R_BPF_64_ABS64,    		2)
   RELOC_NUMBER (R_BPF_64_ABS32,    		3)
-/* R_BPF_64_NODYLD32 is not used by GNU tools.
- * It is kept in this file to remind that the value is already taken. */
+/* R_BPF_64_NODYLD32 is not used by GNU tools - but it is generated by LLVM.
+   It is kept in this file to remind that the value is already taken.  */
   RELOC_NUMBER (R_BPF_64_NODYLD32, 		4)
   RELOC_NUMBER (R_BPF_64_32,      		10)
   RELOC_NUMBER (R_BPF_GNU_64_16,                256)