Skip to content

[SYSVABI] Add example that ifunc resolvers are indirectly called#324

Merged
smithp35 merged 1 commit intoARM-software:mainfrom
smithp35:ifuncbti
Jun 25, 2025
Merged

[SYSVABI] Add example that ifunc resolvers are indirectly called#324
smithp35 merged 1 commit intoARM-software:mainfrom
smithp35:ifuncbti

Conversation

@smithp35
Copy link
Copy Markdown
Contributor

@smithp35 smithp35 commented Apr 8, 2025

An ifunc resolver function needs a BTI as it is called indirectly via the dynamic loader when resolving the R_AARCH64_IRELATIVE relocation. When static linking the relocation is also resolved via an indirect branch to the resolver from a local resolver function like _dl_relocate_static_pie in glibc.

An ifunc resolver function needs a BTI as it is called indirectly
via the dynamic loader when resolving the R_AARCH64_IRELATIVE
relocation. When static linking the relocation is also resolved
via an indirect branch to the resolver from a local resolver
function like _dl_relocate_static_pie in glibc.
@smithp35
Copy link
Copy Markdown
Contributor Author

smithp35 commented Apr 8, 2025

FWIW both clang and gcc add a BTI to the ifunc resolver already. This is just to make sure it is covered in the documentation.

Copy link
Copy Markdown
Contributor

@DanielKristofKiss DanielKristofKiss left a comment

Choose a reason for hiding this comment

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

LGTM

@smithp35 smithp35 merged commit ee6b627 into ARM-software:main Jun 25, 2025
1 check passed
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.

2 participants