Remix.run Logo
sjmulder 2 hours ago

Doesn't the loaded code have to be patched for relocations?

ptspts an hour ago | parent | next [-]

It does, so not 100% is reused. The patched parts are in different sections though, so the entire .text (code) section ends up being reused.

monocasa an hour ago | parent | prev | next [-]

Not on modern archs that provide decent support for PIE (position independent executables).

201984 25 minutes ago | parent [-]

How do you think position independent code can call functions from other .so's without being patched with their addresses?

They can't, so even PIC code still has to have a relocation table that gets patched. It's in a different page than the code though, so code does still get reused.

t-3 an hour ago | parent | prev [-]

Not if it's position-independent.