Hi Rich, I just find a very interesting article written by you: http://www.openwall.com/lists/musl/2012/05/24/1 I want to do the similar thing on ARM linux. I see _static_pie_reloc does the relocation, which would be done by loader in dynamic PIE. But with "-static", those reloc entries has already been fixed by ld. Without that, my code can still run but at fixed address space. To get the benefit of PIE, there should be address randomization (at least for data sections), which should be done in startup code. Is my understanding right? Thanks, weiming