RISC-V: Enable elf attributes when default configure option isn't set.
authorNelson Chu <nelson.chu@sifive.com>
Fri, 9 Jul 2021 03:22:20 +0000 (20:22 -0700)
committerNelson Chu <nelson.chu@sifive.com>
Tue, 13 Jul 2021 06:07:57 +0000 (14:07 +0800)
Since gcc commit, 3c70b3ca1ef58f302bf8c16d9e7c7bb8626408bf, we now enable
elf attributes for all riscv targets by default in gcc.  Therefore, I
think binutils should have the same behavior, in case users are writing
assembly files.  If --enable-default-riscv-attribute isn't set, then we
enable the elf attributes for all riscv targets by default.

ChangLog:

binutils/

* testsuite/binutils-all/readelf.s: Add comments for riscv.
* testsuite/binutils-all/readelf.s-64: Likewise.
* testsuite/binutils-all/readelf.s-64-unused: Likewise.
* testsuite/binutils-all/readelf.ss: Likewise.
* testsuite/binutils-all/readelf.ss-64: Likewise.
* testsuite/binutils-all/readelf.ss-64-unused: Likewise.

gas/

* configure.ac: If --enable-default-riscv-attribute isn't set,
then we enable the elf attributes for all riscv targets by
default.
* configure: Regenerated.

binutils/testsuite/binutils-all/readelf.s
binutils/testsuite/binutils-all/readelf.s-64
binutils/testsuite/binutils-all/readelf.s-64-unused
binutils/testsuite/binutils-all/readelf.ss
binutils/testsuite/binutils-all/readelf.ss-64
binutils/testsuite/binutils-all/readelf.ss-64-unused
gas/configure
gas/configure.ac

index 6ae4dc756b974698b472665bf062d0dd46724e31..ff37acb4da86bdc4ce90ac69888d34f4c5cc5311 100644 (file)
@@ -11,9 +11,10 @@ Section Headers:
 #...
  +\[ .\] .* +PROGBITS +00000000 0000(3c|40|44|48|50) 0000(04|10) 00 +WA +0 +0 +(.|..)
  +\[ .\] .* +NOBITS +00000000 0000(40|44|48|4c|60) 000000 00 +WA +0 +0 +(.|..)
-# ARM targets put .ARM.attributes here
+# ARM targets put .ARM.attributes here.
 # MIPS targets put .reginfo, .mdebug, .MIPS.abiflags and .gnu.attributes here.
 # v850 targets put .call_table_data and .call_table_text here.
+# riscv targets put .riscv.attributes here.
 #...
  +\[..\] .symtab +SYMTAB +00000000 0+.* 0+.* 10 +.. +.+ +4
  +\[..\] .strtab +STRTAB +00000000 0+.* 0+.* 00 .* +0 +0 +1
index 92ec05f03769457eda57bbc337d1bbff0795b8e7..4c957f7a938bdc2077d4892a018f8b60e79160a1 100644 (file)
@@ -14,10 +14,12 @@ Section Headers:
  +\[ 4\] .bss +NOBITS +0000000000000000 +000000(4c|50|54|58|68)
  +0000000000000000 +0000000000000000 +WA +0 +0 +.*
 # x86 targets may put .note.gnu.property here.
+# riscv targets put .riscv.attributes here.
 #...
  +\[ .\] .symtab +SYMTAB +0000000000000000 +0+.*
 # aarch64-elf targets have one more data symbol.
 # x86 targets may have .note.gnu.property.
+# riscv targets have .riscv.attributes.
  +0+.* +0000000000000018 +(6|7) +(3|4) +8
  +\[ .\] .strtab +STRTAB +0000000000000000 +0+.*
  +0+.* +0000000000000000 .* +0 +0 +1
index a1e6cd1bbd8cb4a4c54cb18db2ab86e602783747..771439411a0b67fe6c83346f874a8eee967714f9 100644 (file)
@@ -14,10 +14,12 @@ Section Headers:
  +\[ 4\] .bss +NOBITS +0000000000000000 +000000(4c|50|54|58)
  +0000000000000000 +0000000000000000 +WA +0 +0 +.*
 # x86 targets may put .note.gnu.property here.
+# riscv targets put .riscv.attributes here.
 #...
  +\[ .\] .symtab +SYMTAB +0000000000000000 +0+.*
 # aarch64-elf targets have one more data symbol.
 # x86 targets may have .note.gnu.property.
+# riscv targets have .riscv.attributes.
  +0+.* +0000000000000018 +(6|7) +(6|7) +8
  +\[ .\] .strtab +STRTAB +0000000000000000 +0+.*
  +0+.* +0000000000000000 .* +0 +0 +1
index 5fbb5d002e332c63e62a919c18c8e877d1418ea0..b81c016e9e76177e3d6cfed94666f6d60d8c5ee8 100644 (file)
@@ -9,6 +9,7 @@ Symbol table '.symtab' contains .* entries:
  +.: 00000000 +0 +NOTYPE +LOCAL +DEFAULT +[34] static_data_symbol
 # v850 targets include extra SECTION symbols here for the .call_table_data
 # and .call_table_text sections.
+# riscv targets add .riscv.attribute symbol here...
 #...
  +[0-9]+: 00000000 +0 +NOTYPE +GLOBAL +DEFAULT +1 text_symbol
  +[0-9]+: 00000000 +0 +NOTYPE +GLOBAL +DEFAULT +UND external_symbol
index 99a732f71f53829d3655372eb1d54fdf1322f7c8..c6ffb0fc523baa8064a70d4181447d90a28836ee 100644 (file)
@@ -7,6 +7,7 @@ Symbol table '.symtab' contains .* entries:
 #...
  +.: 0000000000000000 +0 +NOTYPE +LOCAL +DEFAULT +3 static_data_symbol
 # ... or here ...
+# riscv targets add .riscv.attribute symbol here...
 #...
 .* +.: 0000000000000000 +0 +NOTYPE +GLOBAL +DEFAULT +1 text_symbol
  +.: 0000000000000000 +0 +NOTYPE +GLOBAL +DEFAULT +UND external_symbol
index f48a4b2bbd28ec2e14a698dcdc33ffeb76ba6449..cf515aa60d0efbcf6c590119f5ecfee7757c06c7 100644 (file)
@@ -10,6 +10,7 @@ Symbol table '.symtab' contains .* entries:
 #...
  +.: 0000000000000000 +0 +NOTYPE +LOCAL +DEFAULT +3 static_data_symbol
 # ... or here ...
+# riscv targets add .riscv.attribute symbol here...
 #...
 .* +.: 0000000000000000 +0 +NOTYPE +GLOBAL +DEFAULT +1 text_symbol
  +.: 0000000000000000 +0 +NOTYPE +GLOBAL +DEFAULT +UND external_symbol
index 110d707f07991b7521d36be944f4896d5a304d0c..7a528fd485e33d59b934d86a5cb3324425a4a1dc 100755 (executable)
@@ -12550,14 +12550,7 @@ _ACEOF
 
 
 if test ${ac_default_generate_riscv_attr} = unset; then
-    case ${target_os} in
-      elf)
-       ac_default_generate_riscv_attr=1
-       ;;
-      *)
-       ac_default_generate_riscv_attr=0
-       ;;
-  esac
+  ac_default_generate_riscv_attr=1
 fi
 
 
index 78efba88e23e6fd9187a0590ced2a92432a7ef6f..e2374268c5608a02813bce8dcea1502ff1b8ec09 100644 (file)
@@ -727,14 +727,7 @@ AC_DEFINE_UNQUOTED(DEFAULT_X86_USED_NOTE,
    properties by default.])
 
 if test ${ac_default_generate_riscv_attr} = unset; then
-    case ${target_os} in
-      elf)
-       ac_default_generate_riscv_attr=1
-       ;;
-      *)
-       ac_default_generate_riscv_attr=0
-       ;;
-  esac
+  ac_default_generate_riscv_attr=1
 fi
 
 AC_DEFINE_UNQUOTED(DEFAULT_RISCV_ATTR,