PR target/592 PR middle-end/11135 * arm.h (struct machine_function): Add pic_reg. * arm.c (arm_pic_register): Make unsigned. (arm_override_options): Only set arm_pic_register if TARGET_SINGLE_PIC_BASE. (use_return_insn): Only test for a pic register if it is fixed. (arm_compute_save_reg0_reg12_mask): Likewise. (thumb_compute_save_reg_mask): Likewise. (legitimate_pic_operand): Factor out some known invariants. (legitimize_pic_address): If we don't have a fixed pic register, then set up a pseudo in the function entry sequence. Handle the pic base being in a pseudo. (arm_load_pic_register): Handle the pic register being in a pseudo. (arm_expand_prologue): Only set up the pic register if it is fixed. (thumb_expand_prologue): Likewise. * arm.md (pic_load_addr_based): Handle the pic base being a pseudo. (pic_load_addr_based_insn): Likewise. (builtin_setjmp_receiver): Don't restore the pic base if it isn't fixed. From-SVN: r109839
| Name | Last commit | Last update | 
|---|---|---|
| .. | ||
| README-interworking | Loading commit data... | |
| aof.h | Loading commit data... | |
| aout.h | Loading commit data... | |
| arm-cores.def | Loading commit data... | |
| arm-generic.md | Loading commit data... | |
| arm-modes.def | Loading commit data... | |
| arm-protos.h | Loading commit data... | |
| arm-tune.md | Loading commit data... | |
| arm.c | Loading commit data... | |
| arm.h | Loading commit data... | |
| arm.md | Loading commit data... | |
| arm.opt | Loading commit data... | |
| arm1020e.md | Loading commit data... | |
| arm1026ejs.md | Loading commit data... | |
| arm1136jfs.md | Loading commit data... | |
| arm926ejs.md | Loading commit data... | |
| bpabi.S | Loading commit data... | |
| bpabi.c | Loading commit data... | |
| bpabi.h | Loading commit data... | |
| cirrus.md | Loading commit data... | |
| coff.h | Loading commit data... | |
| crti.asm | Loading commit data... | |
| crtn.asm | Loading commit data... | |
| ecos-elf.h | Loading commit data... | |
| elf.h | Loading commit data... | |
| fpa.md | Loading commit data... | |
| freebsd.h | Loading commit data... | |
| gentune.sh | Loading commit data... | |
| ieee754-df.S | Loading commit data... | |
| ieee754-sf.S | Loading commit data... | |
| iwmmxt.md | Loading commit data... | |
| kaos-arm.h | Loading commit data... | |
| kaos-strongarm.h | Loading commit data... | |
| lib1funcs.asm | Loading commit data... | |
| libgcc-bpabi.ver | Loading commit data... | |
| libunwind.S | Loading commit data... | |
| linux-eabi.h | Loading commit data... | |
| linux-elf.h | Loading commit data... | |
| linux-gas.h | Loading commit data... | |
| mmintrin.h | Loading commit data... | |
| netbsd-elf.h | Loading commit data... | |
| netbsd.h | Loading commit data... | |
| pe.c | Loading commit data... | |
| pe.h | Loading commit data... | |
| pe.opt | Loading commit data... | |
| pr-support.c | Loading commit data... | |
| predicates.md | Loading commit data... | |
| rtems-elf.h | Loading commit data... | |
| semi.h | Loading commit data... | |
| semiaof.h | Loading commit data... | |
| strongarm-coff.h | Loading commit data... | |
| strongarm-elf.h | Loading commit data... | |
| strongarm-pe.h | Loading commit data... | |
| symbian.h | Loading commit data... | |
| t-arm | Loading commit data... | |
| t-arm-coff | Loading commit data... | |
| t-arm-elf | Loading commit data... | |
| t-bpabi | Loading commit data... | |
| t-linux | Loading commit data... | |
| t-linux-eabi | Loading commit data... | |
| t-netbsd | Loading commit data... | |
| t-pe | Loading commit data... | |
| t-rtems | Loading commit data... | |
| t-semi | Loading commit data... | |
| t-strongarm-elf | Loading commit data... | |
| t-strongarm-pe | Loading commit data... | |
| t-symbian | Loading commit data... | |
| t-vxworks | Loading commit data... | |
| t-wince-pe | Loading commit data... | |
| t-xscale-coff | Loading commit data... | |
| t-xscale-elf | Loading commit data... | |
| uclinux-elf.h | Loading commit data... | |
| unaligned-funcs.c | Loading commit data... | |
| unknown-elf.h | Loading commit data... | |
| unwind-arm.c | Loading commit data... | |
| unwind-arm.h | Loading commit data... | |
| vfp.md | Loading commit data... | |
| vxworks.h | Loading commit data... | |
| wince-pe.h | Loading commit data... | |
| xscale-coff.h | Loading commit data... | |
| xscale-elf.h | Loading commit data... |