Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove R_RISCV_GNU_VTINHERIT and R_RISCV_GNU_VTENTRY #323

Merged
merged 1 commit into from
Aug 8, 2022

Conversation

MaskRay
Copy link
Collaborator

@MaskRay MaskRay commented Aug 5, 2022

They appeared to be copied from other ports while there is no assembly syntax
for them. Just remove them like we remove R_RISCV_GPREL_[IS].

Fix #320

@rui314
Copy link
Collaborator

rui314 commented Aug 5, 2022

All relocation types from 0 to 255 are either allocated or reserved in this psABI. I think we want to be consistent with it.

They appeared to be copied from other ports while there is no assembly syntax
for them. Just remove them like we remove R_RISCV_GPREL_[IS].

Fix riscv-non-isa#320
@rui314
Copy link
Collaborator

rui314 commented Aug 5, 2022

I think it's OK to return them back to "reserved" as these relocations have never been actually used. We need to actively remove declarations of these two relocations from GNU and LLVM toolchains, though. With that, LGTM, but please wait for other reviewers' responses.

Copy link
Collaborator

@kito-cheng kito-cheng left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Although this is not internal use only relocation like R_RISCV_GPREL_[IS], but we never use those two relocation anywhere, and no way to use that since lack of assembly syntax, so just remove that is LGTM.

@kito-cheng kito-cheng merged commit 14b37d7 into riscv-non-isa:master Aug 8, 2022
@MaskRay MaskRay deleted the GNU_VTINHERIT branch August 8, 2022 06:26
saagarjha pushed a commit to ahjragaas/binutils-gdb that referenced this pull request Aug 11, 2022
They were legacy relocation types copied from other ports.  The related
-fvtable-gc was removed from GCC in 2003.

The associated assembler directives (.vtable_inherit and .vtable_entry)
have never been supported by the RISC-V port.  Remove related ld code.

Link: riscv-non-isa/riscv-elf-psabi-doc#323
dogtopus pushed a commit to Project-Muteki/binutils-gdb that referenced this pull request Aug 24, 2022
They were legacy relocation types copied from other ports.  The related
-fvtable-gc was removed from GCC in 2003.

The associated assembler directives (.vtable_inherit and .vtable_entry)
have never been supported by the RISC-V port.  Remove related ld code.

Link: riscv-non-isa/riscv-elf-psabi-doc#323
@kito-cheng kito-cheng added this to the Public Review for 1.0 milestone Sep 2, 2022
MaskRay added a commit to MaskRay/musl that referenced this pull request Jan 26, 2024
Note:sSome relocation types were only used by binutils and accidentally
exposed to previous versions of psABI (e.g.
riscv-non-isa/riscv-elf-psabi-doc#205
riscv-non-isa/riscv-elf-psabi-doc#323). One of
the value has been has been reused by GOT32_PCREL.
MaskRay added a commit to MaskRay/musl that referenced this pull request Jan 26, 2024
Note: Some relocation types were only used by binutils and accidentally
exposed to previous versions of psABI (e.g.
riscv-non-isa/riscv-elf-psabi-doc#205
riscv-non-isa/riscv-elf-psabi-doc#323). One of
the values has been reused by GOT32_PCREL.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

What are GNU_VTINHERIT and GNU_VTENTRY?
3 participants