RE: [PATCH v1 0/4] [RFC] Implement Trampoline File Descriptor
From: David Laight
Date: Mon Aug 03 2020 - 04:27:32 EST
From: Mark Rutland
> Sent: 31 July 2020 19:32
> > It requires PC-relative data references. I have not worked on all architectures.
> > So, I need to study this. But do all ISAs support PC-relative data references?
> Not all do, but pretty much any recent ISA will as it's a practical
> necessity for fast position-independent code.
i386 has neither PC-relative addressing nor moves from %pc.
The cpu architecture knows that the sequence:
1: pop %reg
is used to get the %pc value so is treated specially so that
it doesn't 'trash' the return stack.
So PIC code isn't too bad, but you have to use the correct
Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK
Registration No: 1397386 (Wales)