aboutsummaryrefslogtreecommitdiff
path: root/libjava
diff options
context:
space:
mode:
authorRichard Sandiford <rsandifo@redhat.com>2004-10-14 07:37:11 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2004-10-14 07:37:11 +0000
commita25036452a7713a01174787b1b13c96eff1534c6 (patch)
treeea8dff30aa2a512ad4558c2e8c0f0d85f3ed1300 /libjava
parentef9af07733703a8309a44b80b1b2d0e35bdd0d87 (diff)
downloadgcc-a25036452a7713a01174787b1b13c96eff1534c6.zip
gcc-a25036452a7713a01174787b1b13c96eff1534c6.tar.gz
gcc-a25036452a7713a01174787b1b13c96eff1534c6.tar.bz2
arm.h (CONDITIONAL_REGISTER_USAGE): Make r11 fixed and global for -mcaller-super-interworking.
* config/arm/arm.h (CONDITIONAL_REGISTER_USAGE): Make r11 fixed and global for -mcaller-super-interworking. (CALLER_INTERWORKING_SLOT_SIZE): New macro. * config/arm/arm.c (thumb_compute_save_reg_mask): Save r11 if CALLER_INTERWORKING_SLOT_SIZE is nonzero and the function does not need a frame pointer. (arm_get_frame_offsets): Add CALLER_INTERWORKING_SLOT_SIZE bytes to the soft frame pointer offset. (thumb_expand_prologue): Set up r11 for -mcaller-super-interworking. * config/arm/arm.md (*call_reg_thumb, *call_value_reg_thumb): Use _interwork_{r7,r11}_call_via_rN if some arguments are passed on the stack. Use frame_pointer_needed to choose between them. * config/arm/lib1funcs.asm (_arm_return_{r7,r11}): New functions. (interwork_with_frame): New macro. (interwork): Add _interwork_{r7,r11}_call_via_rN(). From-SVN: r89031
Diffstat (limited to 'libjava')
0 files changed, 0 insertions, 0 deletions