> + // We get here if a program was not compiled as PIC. > + if (canBePreempted(Body, /*NeedsGot=*/false)) { I don't think the PIC/non-PIC distinction is correct. A reference to a hidden symbol in a shared library cannot be preempted for example. Cheers, Rafael