diff options
author | Sachin Monga <smonga@linux.ibm.com> | 2024-11-20 16:50:00 -0500 |
---|---|---|
committer | Peter Bergner <bergner@linux.ibm.com> | 2024-11-20 16:50:34 -0500 |
commit | 3051f3495cad507afebe2f654d32b51629554e3e (patch) | |
tree | f1e43cba5a37cb6f22cbc167a4df585bdaf07e7e /sysdeps/i386/gccframe.h | |
parent | c0365d3791666c67ad410007efb52fc9b16d4287 (diff) | |
download | glibc-3051f3495cad507afebe2f654d32b51629554e3e.tar.gz glibc-3051f3495cad507afebe2f654d32b51629554e3e.tar.xz glibc-3051f3495cad507afebe2f654d32b51629554e3e.zip |
powerpc64le: _init/_fini file changes for ROP
The ROP instructions were added in ISA 3.1 (ie, Power10), however they were defined so that if executed on older cpus, they would behave as nops. This allows us to emit them on older cpus and they'd just be ignored, but if run on a Power10, then the binary would be ROP protected. Hash instructions use negative offsets so the default position of ROP pointer is FRAME_ROP_SAVE from caller's SP. Modified FRAME_MIN_SIZE_PARM to 112 for ELFv2 to reserve additional 16 bytes for ROP save slot and padding. Signed-off-by: Sachin Monga <smonga@linux.ibm.com> Reviewed-by: Peter Bergner <bergner@linux.ibm.com>
Diffstat (limited to 'sysdeps/i386/gccframe.h')
0 files changed, 0 insertions, 0 deletions