diff options
author | John David Anglin <danglin@gcc.gnu.org> | 2017-12-02 14:43:28 -0500 |
---|---|---|
committer | John David Anglin <danglin@gcc.gnu.org> | 2017-12-02 14:43:28 -0500 |
commit | b3f7fb12f5c490787d548ecc479920e608f6f904 (patch) | |
tree | 15f8efbcb6b8c29510e265cc0c1ef7f5904b3094 /sysdeps/hppa/crtn.S | |
parent | 800a496acbb8c43036b3832460220d4ecbbc22a4 (diff) | |
download | glibc-b3f7fb12f5c490787d548ecc479920e608f6f904.tar.gz glibc-b3f7fb12f5c490787d548ecc479920e608f6f904.tar.xz glibc-b3f7fb12f5c490787d548ecc479920e608f6f904.zip |
Handle __gmon_start__ as undefined weak on hppa.
[BZ libc/19170] * sysdeps/hppa/crti.S: Declare PREINIT_FUNCTION weak_extern when PREINIT_FUNCTION_WEAK is nonzero. (gmon_initializer): New function. Put procedure label for it in .init_array section. (_init): Don't call PREINIT_FUNCTION. * sysdeps/hppa/crtn.S (__gmon_start__): Remove. * sysdeps/hppa/dl-lookupcfg.h (DL_FIXUP_MAKE_VALUE): Create null fixup value when map argument is null.
Diffstat (limited to 'sysdeps/hppa/crtn.S')
-rw-r--r-- | sysdeps/hppa/crtn.S | 21 |
1 files changed, 0 insertions, 21 deletions
diff --git a/sysdeps/hppa/crtn.S b/sysdeps/hppa/crtn.S index 42f310d217..49666b81f9 100644 --- a/sysdeps/hppa/crtn.S +++ b/sysdeps/hppa/crtn.S @@ -38,27 +38,6 @@ /* crtn.S puts function epilogues in the .init and .fini sections corresponding to the prologues in crti.S. */ -/* Note that we cannot have a weak undefined __gmon_start__, because - that would require this to be PIC, and the linker is currently not - able to generate a proper procedure descriptor for _init. Sad but - true. Anyway, HPPA is one of those horrible architectures where - making the comparison and indirect call is quite expensive (see the - comment in sysdeps/generic/initfini.c). */ - .text - .align 4 - .weak __gmon_start__ - .type __gmon_start__,@function -__gmon_start__: - .proc - .callinfo - .entry - bv,n %r0(%r2) - .exit - .procend - -/* Here is the tail end of _init. We put __gmon_start before this so - that the assembler creates the .PARISC.unwind section for us, ie. - with the right attributes. */ .section .init, "ax", @progbits ldw -84(%sp),%rp copy %r4,%r19 |