https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61577

--- Comment #61 from EML <elowe at elowe dot com> ---
Sorry, perhaps I have confused the situation.

I have already patched my compiler to remove the gprel in both 32 and 64.

That gprel patch breaks things in both 32 and 64. I'm reasonably convinced the
patch is wrong for HP-UX, so I'm moving forward with that assumption.

When I remove that gprel patch - the 64bit stage 1 compiler is able to compile
hello world, islower, as well as all the other "conftest" programs
successfully. It can compile libstdc++ as well (some duplicate symbols
however).

However, the 32-bit compiler does not work which I believe to be a pointer
swizzle issue.

I've confirmed the binary is 32bit as follows:

-bash-5.0$ file islower
islower:            ELF-32 executable object file - IA64

-bash-5.0$ elfdump -f islower

islower:

                *** ELF Header ***

Class:                   ELF-32
Data:                    Big-endian
OS:                      HP-UX
ABI Version:             1
Type:                    EXEC
Machine:                 IPF
Version:                 1
Entry Addr:              0x40008b0
Program Hdr Offset:      0x34
Section Hdr Offset:      0x1104c
Flags:                   trapnil
Flags:                   big-endian PSR
Flags:                   IA-64
Elf Hdr Size:            0x34
Program Hdr Size:        0x20              
Program Hdr Number:      12
Section Hdr Size:        0x28              
Section Hdr Number:      43
Section Hdr String Idx:  42

Reply via email to