diff options
author | Kewen Lin <linkw@linux.ibm.com> | 2023-06-04 22:39:32 -0500 |
---|---|---|
committer | Kewen Lin <linkw@linux.ibm.com> | 2023-06-04 22:39:32 -0500 |
commit | 83c3550ee96aa2d0c964bfb6d0f82428561479fd (patch) | |
tree | 1a1267a71c54acf4287790c63e7eacc69f522e26 /libgcc | |
parent | 29b74545531f6afbee9fc38c267524326dbfbedf (diff) | |
download | gcc-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.S | 2 | ||||
-rw-r--r-- | libgcc/config/rs6000/morestack.S | 2 | ||||
-rw-r--r-- | libgcc/config/s390/morestack.S | 2 |
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 |