Add STT_GNU_IFUNC support
Add ARM specific STT_GNU_IFUNC support to Binutils. Ignore GOLD for now.
- Loïc Minier
- Andrew Stubbs
- Needs approval
- Richard Sandiford
- Series goal:
- Accepted for 11.05
- Milestone target:
- Started by
- Michael Hope on 2010-12-08
- Completed by
- Michael Hope on 2011-06-23
michaelh1 shifted off the demonstration side to cortex-strings for next cycle.
From the summit:
- a bit harder than GCC hardware-
- used on i386 for string functions in addition to hardware caps.
- instead of linking to particular function
- can have problems with JIT compilers
- can run without libc?
- can be used to create an OS that works on any device (and is then stripped of unused codepaths post install)
- ARM have officially allocated relocation number 160 for R_ARM_IRELATIVE.
- binutils support submitted upstream & committed.
- GLIBC support written. Submission underway..
Investigate extent of the work: DONE
Implement using a private relocation: DONE
Get ABI extensions from ARM: DONE
Document ABI extensions: DONE
Finish implementation using public relocation (binutils): DONE
Finish implementation using public relocation (glibc): DONE
Add test cases: DONE
* Blueprints in grey have been implemented.