[PATCH 1/2] Remove NaCl/arm target support

Alan Modra amodra@gmail.com
Mon Jul 21 03:16:27 GMT 2025


On Sat, Jul 19, 2025 at 03:31:21PM -0700, H.J. Lu wrote:
> NaCl has been deprecated:
> 
> https://developer.chrome.com/native-client/migration
> 
> It is now in the process of being removed from llvm:
> 
> https://github.com/llvm/llvm-project/pull/133661
> 
> Remove NaCl/arm target support from bfd, binutils, gas and ld.

There were some errors in your testsuite changes.

> NB: elf32_arm_stub_long_branch_arm_nacl[_pic] are changed to dummy instead
> of being removed to avoid changing the test from
> 
> 014a7c0fa36 ld: fix alignment issue for ARM thumb long branch stub using Pur
> eCode section

I think the testsuite ought to be updated even if it is a pain.

OK with the following on top of your changes.

diff --git a/bfd/config.bfd b/bfd/config.bfd
index 473e31e6dd6..eb20a01ef54 100644
--- a/bfd/config.bfd
+++ b/bfd/config.bfd
@@ -83,6 +83,7 @@ case $targ in
  *-sony-* | \
  *-tandem-* | \
  *-*-ieee* | \
+ *-*-nacl* | \
  *-*-netbsdpe* | \
  *-*-netware* | \
  *-*-rtemsaout* | \
diff --git a/bfd/elf32-arm.c b/bfd/elf32-arm.c
index c9bd2839f2e..b5d1866eae8 100644
--- a/bfd/elf32-arm.c
+++ b/bfd/elf32-arm.c
@@ -2709,26 +2709,6 @@ static const insn_sequence elf32_arm_stub_long_branch_v4t_thumb_tls_pic[] =
   DATA_WORD (0, R_ARM_REL32, -4),    /* dcd  R_ARM_REL32(X) */
 };
 
-/* FIXME : Dummy to avoid changing the test from
-
-   014a7c0fa36 ld: fix alignment issue for ARM thumb long branch stub using PureCode section
-
- */
-static const insn_sequence elf32_arm_stub_long_branch_arm_nacl[] =
-{
-  0
-};
-
-/* FIXME : Dummy to avoid changing the test from
-
-   014a7c0fa36 ld: fix alignment issue for ARM thumb long branch stub using PureCode section
-
- */
-static const insn_sequence elf32_arm_stub_long_branch_arm_nacl_pic[] =
-{
-  0
-};
-
 /* Stub used for transition to secure state (aka SG veneer).  */
 static const insn_sequence elf32_arm_stub_cmse_branch_thumb_only[] =
 {
@@ -2813,8 +2793,6 @@ static const insn_sequence elf32_arm_stub_a8_veneer_blx[] =
   DEF_STUB (long_branch_thumb_only_pic) \
   DEF_STUB (long_branch_any_tls_pic) \
   DEF_STUB (long_branch_v4t_thumb_tls_pic) \
-  DEF_STUB (long_branch_arm_nacl) \
-  DEF_STUB (long_branch_arm_nacl_pic) \
   DEF_STUB (cmse_branch_thumb_only) \
   DEF_STUB (a8_veneer_b_cond) \
   DEF_STUB (a8_veneer_b) \
diff --git a/gas/testsuite/gas/arm/attr-empty-string.d b/gas/testsuite/gas/arm/attr-empty-string.d
index b4a91418e80..9a7437e9f9c 100644
--- a/gas/testsuite/gas/arm/attr-empty-string.d
+++ b/gas/testsuite/gas/arm/attr-empty-string.d
@@ -3,7 +3,7 @@
 # as:
 # readelf: -T -A
 # This test is only valid on EABI based ports.
-# target: *-*-*eabi* *-*-nacl*
+# target: *-*-*eabi*
 
 Attribute Section: aeabi
 File Attributes
diff --git a/gas/testsuite/gas/arm/attr-non-null-terminated-string.d b/gas/testsuite/gas/arm/attr-non-null-terminated-string.d
index ac376a9ab9f..e7e1771c3b2 100644
--- a/gas/testsuite/gas/arm/attr-non-null-terminated-string.d
+++ b/gas/testsuite/gas/arm/attr-non-null-terminated-string.d
@@ -1,7 +1,7 @@
 # name: EABI attribute - non-null terminated string
 # source: attr-non-null-terminated-string.s
 # This test is only valid on EABI based ports.
-# target: *-*-*eabi* *-*-nacl*
+# target: *-*-*eabi*
 # as:
 # readelf: --silent-truncation -A
 Attribute Section: aeabi
diff --git a/gas/testsuite/gas/arm/got_prel.d b/gas/testsuite/gas/arm/got_prel.d
index 1d46694235c..b32848db93c 100644
--- a/gas/testsuite/gas/arm/got_prel.d
+++ b/gas/testsuite/gas/arm/got_prel.d
@@ -2,7 +2,7 @@
 # source: got_prel.s
 # as: -march=armv5te -meabi=5 --generate-missing-build-notes=no
 # readelf: -x 4 -r
-# notarget: *-*-*eabi*
+# target: *-*-*eabi* *-*-linux-* *-*-elf
 
 Relocation section '.rel.text.foo' at offset .* contains 1 entry:
  Offset     Info    Type            Sym.Value  Sym. Name
diff --git a/gas/testsuite/gas/arm/mapdir.d b/gas/testsuite/gas/arm/mapdir.d
index ed4a77dd55e..8e102985064 100644
--- a/gas/testsuite/gas/arm/mapdir.d
+++ b/gas/testsuite/gas/arm/mapdir.d
@@ -2,7 +2,7 @@
 #objdump: --syms --special-syms -d
 #name: ARM Mapping Symbols for .arm/.thumb
 # This test is only valid on EABI based ports.
-# notarget: *-*-*eabi*
+# target: *-*-*eabi* *-*-linux-* *-*-elf
 #source: mapdir.s
 
 
diff --git a/gas/testsuite/gas/arm/mapmisc.d b/gas/testsuite/gas/arm/mapmisc.d
index e9a8a88f4a0..7aa3afce42f 100644
--- a/gas/testsuite/gas/arm/mapmisc.d
+++ b/gas/testsuite/gas/arm/mapmisc.d
@@ -2,7 +2,7 @@
 #objdump: --syms --special-syms -d
 #name: ARM Mapping Symbols for miscellaneous directives
 # This test is only valid on EABI based ports.
-# notarget: *-*-*eabi*
+# target: *-*-*eabi* *-*-linux-* *-*-elf
 #source: mapmisc.s
 
 
diff --git a/gas/testsuite/gas/arm/mapsecs.d b/gas/testsuite/gas/arm/mapsecs.d
index 6b507caef4f..03f9e9a3661 100644
--- a/gas/testsuite/gas/arm/mapsecs.d
+++ b/gas/testsuite/gas/arm/mapsecs.d
@@ -2,7 +2,7 @@
 #objdump: --syms --special-syms -d
 #name: ARM Mapping Symbols with multiple sections
 # This test is only valid on EABI based ports.
-# notarget: *-*-*eabi*
+# target: *-*-*eabi* *-*-linux-* *-*-elf
 #source: mapsecs.s
 
 
diff --git a/gas/testsuite/gas/arm/mapshort-eabi.d b/gas/testsuite/gas/arm/mapshort-eabi.d
index 7664d07b3f3..b37933d1860 100644
--- a/gas/testsuite/gas/arm/mapshort-eabi.d
+++ b/gas/testsuite/gas/arm/mapshort-eabi.d
@@ -2,7 +2,7 @@
 #as:  --generate-missing-build-notes=no
 #name: ARM Mapping Symbols for .short (EABI version)
 # This test is only valid on EABI based ports.
-# notarget: *-*-*eabi*
+# target: *-*-*eabi* *-*-linux-* *-*-elf
 #source: mapshort.s
 
 # Test the generation and use of ARM ELF Mapping Symbols
diff --git a/ld/testsuite/ld-arm/farcall-thumb2-purecode-consecutive-veneer.d b/ld/testsuite/ld-arm/farcall-thumb2-purecode-consecutive-veneer.d
index b89da03eec0..0d74ca31c43 100644
--- a/ld/testsuite/ld-arm/farcall-thumb2-purecode-consecutive-veneer.d
+++ b/ld/testsuite/ld-arm/farcall-thumb2-purecode-consecutive-veneer.d
@@ -11,17 +11,17 @@ Disassembly of section .text:
 Disassembly of section .foo:
 
 02001020 <_start>:
- 2001020:	f000 f802 	bl	2001028 <__bar_veneer>
- 2001024:	f000 f806 	bl	2001034 <__baz_veneer>
+ 2001020:	f000 f808 	bl	2001034 <__bar_veneer>
+ 2001024:	f000 f800 	bl	2001028 <__baz_veneer>
 
-02001028 <__bar_veneer>:
- 2001028:	f241 0c01 	movw	ip, #4097	@ 0x1001
+02001028 <__baz_veneer>:
+ 2001028:	f241 0c03 	movw	ip, #4099	@ 0x1003
  200102c:	f2c0 0c00 	movt	ip, #0
  2001030:	4760      	bx	ip
  2001032:	bf00      	nop
 
-02001034 <__baz_veneer>:
- 2001034:	f241 0c03 	movw	ip, #4099	@ 0x1003
+02001034 <__bar_veneer>:
+ 2001034:	f241 0c01 	movw	ip, #4097	@ 0x1001
  2001038:	f2c0 0c00 	movt	ip, #0
  200103c:	4760      	bx	ip
  200103e:	bf00      	nop

-- 
Alan Modra


More information about the Binutils mailing list