Message ID | 20210731042212.2376457-1-hjl.tools@gmail.com |
---|---|
State | Superseded |
Headers | |
Series | Place ENTRY_POINT in .text.startup section [BZ #28153] | |
Checks
Context | Check | Description |
---|---|---|
dj/TryBot-apply_patch | success | Patch applied to master at the time it was sent |
dj/TryBot-32bit | success | Build for i686 |
Commit Message
Comments
diff --git a/gmon/tst-gmon-gprof.sh b/gmon/tst-gmon-gprof.sh index 9d371582b9..dc0be02110 100644 --- a/gmon/tst-gmon-gprof.sh +++ b/gmon/tst-gmon-gprof.sh @@ -39,12 +39,14 @@ trap cleanup 0 cat > "$expected" <<EOF f1 2000 f2 1000 +f3 1 EOF # Special version for powerpc with function descriptors. cat > "$expected_dot" <<EOF .f1 2000 .f2 1000 +.f3 1 EOF "$GPROF" -C "$program" "$data" \ diff --git a/gmon/tst-gmon-static-gprof.sh b/gmon/tst-gmon-static-gprof.sh index 79218df967..4cc99c80d0 100644 --- a/gmon/tst-gmon-static-gprof.sh +++ b/gmon/tst-gmon-static-gprof.sh @@ -39,6 +39,7 @@ trap cleanup 0 cat > "$expected" <<EOF f1 2000 f2 1000 +f3 1 main 1 EOF @@ -46,6 +47,7 @@ EOF cat > "$expected_dot" <<EOF .f1 2000 .f2 1000 +.f3 1 .main 1 EOF diff --git a/sysdeps/aarch64/start.S b/sysdeps/aarch64/start.S index 417da8802b..4d982b6bd9 100644 --- a/sysdeps/aarch64/start.S +++ b/sysdeps/aarch64/start.S @@ -42,7 +42,7 @@ NULL */ - .text + .section .text.startup,"ax",%progbits ENTRY(_start) /* Create an initial frame with 0 LR and FP */ cfi_undefined (x30) diff --git a/sysdeps/alpha/start.S b/sysdeps/alpha/start.S index 65dcd4d392..0fb765c3f1 100644 --- a/sysdeps/alpha/start.S +++ b/sysdeps/alpha/start.S @@ -36,7 +36,7 @@ #include <sysdep.h> - .text + .section .text.startup,"ax",%progbits .align 3 .globl _start .ent _start, 0 diff --git a/sysdeps/arc/start.S b/sysdeps/arc/start.S index 5302a57cab..33403535d4 100644 --- a/sysdeps/arc/start.S +++ b/sysdeps/arc/start.S @@ -33,6 +33,7 @@ env[0...N] environment variables (pointers) NULL. */ + .section .text.startup,"ax",%progbits ENTRY (ENTRY_POINT) /* Needed to make gdb backtraces stop here. */ diff --git a/sysdeps/arm/start.S b/sysdeps/arm/start.S index 9b56bc0cca..756046dd9a 100644 --- a/sysdeps/arm/start.S +++ b/sysdeps/arm/start.S @@ -69,7 +69,7 @@ .syntax unified #endif - .text + .section .text.startup,"ax",%progbits .globl _start .type _start,#function _start: diff --git a/sysdeps/csky/abiv2/start.S b/sysdeps/csky/abiv2/start.S index a565cfa87b..f2b0e74eb6 100644 --- a/sysdeps/csky/abiv2/start.S +++ b/sysdeps/csky/abiv2/start.S @@ -41,7 +41,7 @@ #include <sysdep.h> - .text + .section .text.startup,"ax",%progbits .globl _start; .type _start,@function; .align 4; diff --git a/sysdeps/hppa/start.S b/sysdeps/hppa/start.S index 4a1877f8e8..86a21082e8 100644 --- a/sysdeps/hppa/start.S +++ b/sysdeps/hppa/start.S @@ -51,7 +51,7 @@ .Lp__libc_start_main: .word P%__libc_start_main - .text + .section .text.startup,"ax",%progbits .align 4 .globl _start .export _start, ENTRY diff --git a/sysdeps/i386/start.S b/sysdeps/i386/start.S index 5296b27e65..16767de443 100644 --- a/sysdeps/i386/start.S +++ b/sysdeps/i386/start.S @@ -54,6 +54,7 @@ #include <sysdep.h> + .section .text.startup,"ax",%progbits ENTRY (_start) /* Clearing frame pointer is insufficient, use CFI. */ cfi_undefined (eip) diff --git a/sysdeps/ia64/start.S b/sysdeps/ia64/start.S index b28f8cb429..e2b11f42d6 100644 --- a/sysdeps/ia64/start.S +++ b/sysdeps/ia64/start.S @@ -48,6 +48,7 @@ * out6: stack_end */ + .section .text.startup,"ax",%progbits .align 32 .global _start diff --git a/sysdeps/m68k/start.S b/sysdeps/m68k/start.S index 98da4db9f3..b2a7f171a5 100644 --- a/sysdeps/m68k/start.S +++ b/sysdeps/m68k/start.S @@ -54,7 +54,7 @@ #include <sysdep.h> - .text + .section .text.startup,"ax",%progbits .globl _start .type _start,@function _start: diff --git a/sysdeps/microblaze/start.S b/sysdeps/microblaze/start.S index 6589bd4dc7..66c8d8a18d 100644 --- a/sysdeps/microblaze/start.S +++ b/sysdeps/microblaze/start.S @@ -33,7 +33,7 @@ License along with the GNU C Library. If not, see <https://www.gnu.org/licenses/>. */ - .text + .section .text.startup,"ax",%progbits .globl _start .type _start,@function _start: diff --git a/sysdeps/mips/start.S b/sysdeps/mips/start.S index 4ec42a2a7f..de0e95a9b8 100644 --- a/sysdeps/mips/start.S +++ b/sysdeps/mips/start.S @@ -71,7 +71,7 @@ void (*rtld_fini) (void), void *stack_end) */ - .text + .section .text.startup,"ax",%progbits .globl ENTRY_POINT .type ENTRY_POINT,@function #ifndef __mips16 diff --git a/sysdeps/nios2/start.S b/sysdeps/nios2/start.S index 7c9696977f..bb03937d6e 100644 --- a/sysdeps/nios2/start.S +++ b/sysdeps/nios2/start.S @@ -65,7 +65,7 @@ value, terminated by an AT_NULL tag. */ - .text + .section .text.startup,"ax",%progbits .globl _start .type _start,%function _start: diff --git a/sysdeps/powerpc/powerpc32/start.S b/sysdeps/powerpc/powerpc32/start.S index 39ce1a18ff..5671d5d7a8 100644 --- a/sysdeps/powerpc/powerpc32/start.S +++ b/sysdeps/powerpc/powerpc32/start.S @@ -56,7 +56,7 @@ L(start_addresses): .long 0 /* Used to be fini. */ ASM_SIZE_DIRECTIVE(L(start_addresses)) - .section ".text" + .section .text.startup,"ax",%progbits ENTRY(_start) /* Save the stack pointer, in case we're statically linked under Linux. */ mr r9,r1 diff --git a/sysdeps/powerpc/powerpc64/start.S b/sysdeps/powerpc/powerpc64/start.S index 71c0c67926..e9b6a434f3 100644 --- a/sysdeps/powerpc/powerpc64/start.S +++ b/sysdeps/powerpc/powerpc64/start.S @@ -61,7 +61,7 @@ L(start_addresses): .section ".toc","aw" .L01: .tc L(start_addresses)[TC],L(start_addresses) - .section ".text" + .section .text.startup,"ax",%progbits ENTRY (_start) /* Save the stack pointer, in case we're statically linked under Linux. */ mr r9,r1 diff --git a/sysdeps/riscv/start.S b/sysdeps/riscv/start.S index 806f6aacd6..8bbf77d9dd 100644 --- a/sysdeps/riscv/start.S +++ b/sysdeps/riscv/start.S @@ -42,6 +42,7 @@ a0 contains the address of a function to be passed to atexit. __libc_start_main wants this in a5. */ + .section .text.startup,"ax",%progbits ENTRY (ENTRY_POINT) /* Terminate call stack by noting ra is undefined. Use a dummy .cfi_label to force starting the FDE. */ diff --git a/sysdeps/s390/s390-32/start.S b/sysdeps/s390/s390-32/start.S index b6cfa4caf3..a418b7f1c6 100644 --- a/sysdeps/s390/s390-32/start.S +++ b/sysdeps/s390/s390-32/start.S @@ -55,7 +55,7 @@ NULL */ - .text + .section .text.startup,"ax",%progbits .globl _start .type _start,@function _start: diff --git a/sysdeps/s390/s390-64/start.S b/sysdeps/s390/s390-64/start.S index 4e6526308a..2bc7f89e6a 100644 --- a/sysdeps/s390/s390-64/start.S +++ b/sysdeps/s390/s390-64/start.S @@ -55,7 +55,7 @@ NULL */ - .text + .section .text.startup,"ax",%progbits .globl _start .type _start,@function _start: diff --git a/sysdeps/sh/start.S b/sysdeps/sh/start.S index 606ee59222..4beaf43f81 100644 --- a/sysdeps/sh/start.S +++ b/sysdeps/sh/start.S @@ -57,7 +57,7 @@ NULL */ - .text + .section .text.startup,"ax",%progbits .globl _start .type _start,@function _start: diff --git a/sysdeps/sparc/sparc32/start.S b/sysdeps/sparc/sparc32/start.S index 00bf898fb9..073596d815 100644 --- a/sysdeps/sparc/sparc32/start.S +++ b/sysdeps/sparc/sparc32/start.S @@ -37,7 +37,7 @@ #include <sysdep.h> - .section ".text" + .section .text.startup,"ax",%progbits .align 4 .global _start .type _start,#function diff --git a/sysdeps/sparc/sparc64/start.S b/sysdeps/sparc/sparc64/start.S index 8520717eba..ad65517ef8 100644 --- a/sysdeps/sparc/sparc64/start.S +++ b/sysdeps/sparc/sparc64/start.S @@ -37,7 +37,7 @@ #include <sysdep.h> - .section ".text" + .section .text.startup,"ax",%progbits .align 4 .global _start .type _start,#function diff --git a/sysdeps/x86_64/start.S b/sysdeps/x86_64/start.S index 1b3e36826b..ff5d1d2af4 100644 --- a/sysdeps/x86_64/start.S +++ b/sysdeps/x86_64/start.S @@ -55,6 +55,7 @@ #include <sysdep.h> + .section .text.startup,"ax",%progbits ENTRY (_start) /* Clearing frame pointer is insufficient, use CFI. */ cfi_undefined (rip)