------- Comment #5 from zlynx at acm dot org 2009-07-23 22:26 ------- The actual segfault seems to happen in the .plt section. I am not entirely clear on how this is laid out and how to find what symbol is where.
But on entry to the plt code, the r1 register is set to an invalid memory location and it is then read from. It appears that r1 is supposed to be set from r35 much earlier, perhaps it gets overwritten. It sort of looks like the exception unwinder changed the register value but the code expects the register to still hold the right offset to the PLT. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40841