[Bug gas/32189] Problem with R_X86_64_GOT64 relocation generation

2024-09-22 Thread m...@felix-potthast.de
https://sourceware.org/bugzilla/show_bug.cgi?id=32189

--- Comment #6 from Felix Potthast  ---
Didn't expect this to be fixed so quickly, great!

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug gas/32196] New: R_X86_64_32 relocation generated, expecting R_X86_64_PLT32

2024-09-21 Thread m...@felix-potthast.de
https://sourceware.org/bugzilla/show_bug.cgi?id=32196

Bug ID: 32196
   Summary: R_X86_64_32 relocation generated, expecting
R_X86_64_PLT32
   Product: binutils
   Version: 2.43
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: gas
  Assignee: unassigned at sourceware dot org
  Reporter: m...@felix-potthast.de
  Target Milestone: ---

Created attachment 15711
  --> https://sourceware.org/bugzilla/attachment.cgi?id=15711&action=edit
Test case

I expect gas to generate a R_X86_64_PLT32 when writing:
movq $foo@PLT, %rax

However, a R_X86_64_32 is generated instead.

Assembling the attached file with:
as test.s -o test.o

And linking with:
ld -static test.o -o test

leads to the executable generating a segfault when running.
When assembling with clang and then linking, the generated executable exits
without an error.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


[Bug gas/32189] New: Problem with R_X86_64_GOT64 relocation generation

2024-09-19 Thread m...@felix-potthast.de
https://sourceware.org/bugzilla/show_bug.cgi?id=32189

Bug ID: 32189
   Summary: Problem with R_X86_64_GOT64 relocation generation
   Product: binutils
   Version: 2.43
Status: UNCONFIRMED
  Severity: normal
  Priority: P2
 Component: gas
  Assignee: unassigned at sourceware dot org
  Reporter: m...@felix-potthast.de
  Target Milestone: ---

Created attachment 15710
  --> https://sourceware.org/bugzilla/attachment.cgi?id=15710&action=edit
Test case

When trying out the code snippets from the current x86-64 ABI
(https://gitlab.com/x86-psABIs/x86-64-ABI)
for large model position independent load and store, I get a segfault.

I'm using the large model prolog code from Figure 3.12
and the load store for "ptr = &dst;" from Figure 3.20.

When assembling with:
as --64 lm_pic_gd_lods.s -o lm_pic_gd_lods.o
and linking with:
ld -static lm_pic_gd_lods.o -o lm_pic_gd_lods

Running the resulting executable leads to a segfault.

But when I use clang for assembling:
clang -c lm_pic_gd_lods.s -o lm_pic_gd_lods.o
and then link with the same command, it doesn't segfault.

so it doesn't seem to be a problem of the linker, but the assembler.

I'm using binutils version 2.43.0 from the arch linux repos on an x86-64
machine.

-- 
You are receiving this mail because:
You are on the CC list for the bug.