aboutsummaryrefslogtreecommitdiff
path: root/libgcc
diff options
context:
space:
mode:
authorKewen Lin <linkw@linux.ibm.com>2023-06-04 22:39:32 -0500
committerKewen Lin <linkw@linux.ibm.com>2023-06-04 22:39:32 -0500
commit83c3550ee96aa2d0c964bfb6d0f82428561479fd (patch)
tree1a1267a71c54acf4287790c63e7eacc69f522e26 /libgcc
parent29b74545531f6afbee9fc38c267524326dbfbedf (diff)
downloadgcc-83c3550ee96aa2d0c964bfb6d0f82428561479fd.zip
gcc-83c3550ee96aa2d0c964bfb6d0f82428561479fd.tar.gz
gcc-83c3550ee96aa2d0c964bfb6d0f82428561479fd.tar.bz2
libgcc: Use initarray section type for .init_stack
One of my workmates found there is a warning like: libgcc/config/rs6000/morestack.S:402: Warning: ignoring incorrect section type for .init_array.00000 when compiling libgcc/config/rs6000/morestack.S. Since commit r13-6545 touched that file recently, which was suspected to be responsible for this warning, I did some investigation and found this is a warning staying for a long time. For section .init_stack*, it's preferred to use section type SHT_INIT_ARRAY. So this patch is use "@init_array" to replace "@progbits". Although the warning is trivial, Segher suggested me to post this to fix it, in order to avoid any possible misunderstanding/confusion on the warning. As Alan confirmed, this doesn't require a premise check on if the existing binutils supports "@init_array" or not, "because if you want split-stack to work, you must link with gold, any version of binutils that has gold has an assembler that understands @init_array". (Thanks Alan!) libgcc/ChangeLog: * config/i386/morestack.S: Use @init_array rather than @progbits for section type of section .init_array. * config/rs6000/morestack.S: Likewise. * config/s390/morestack.S: Likewise.
Diffstat (limited to 'libgcc')
-rw-r--r--libgcc/config/i386/morestack.S2
-rw-r--r--libgcc/config/rs6000/morestack.S2
-rw-r--r--libgcc/config/s390/morestack.S2
3 files changed, 3 insertions, 3 deletions
diff --git a/libgcc/config/i386/morestack.S b/libgcc/config/i386/morestack.S
index 7ae99b5..c822b71 100644
--- a/libgcc/config/i386/morestack.S
+++ b/libgcc/config/i386/morestack.S
@@ -850,7 +850,7 @@ __morestack_make_guard:
# This is ELF specific.
#if HAVE_INITFINI_ARRAY_SUPPORT
- .section .init_array.00000,"aw",@progbits
+ .section .init_array.00000,"aw",@init_array
#else
.section .ctors.65535,"aw",@progbits
#endif
diff --git a/libgcc/config/rs6000/morestack.S b/libgcc/config/rs6000/morestack.S
index f2fea6a..dd1e27c 100644
--- a/libgcc/config/rs6000/morestack.S
+++ b/libgcc/config/rs6000/morestack.S
@@ -399,7 +399,7 @@ ENTRY0(__morestack_make_guard)
# Make __stack_split_initialize a high priority constructor.
#if HAVE_INITFINI_ARRAY_SUPPORT
- .section .init_array.00000,"aw",@progbits
+ .section .init_array.00000,"aw",@init_array
#else
.section .ctors.65535,"aw",@progbits
#endif
diff --git a/libgcc/config/s390/morestack.S b/libgcc/config/s390/morestack.S
index 09a49bb..f52e7a6 100644
--- a/libgcc/config/s390/morestack.S
+++ b/libgcc/config/s390/morestack.S
@@ -597,7 +597,7 @@ __morestack_make_guard:
# Make __stack_split_initialize a high priority constructor.
#if HAVE_INITFINI_ARRAY_SUPPORT
- .section .init_array.00000,"aw",@progbits
+ .section .init_array.00000,"aw",@init_array
#else
.section .ctors.65535,"aw",@progbits
#endif