diff options
author | Jeffrey A Law <law@cygnus.com> | 1999-07-16 20:07:55 +0000 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 1999-07-16 14:07:55 -0600 |
commit | 7123b6ed1f20ca337ec222656264ac7783b5d00c (patch) | |
tree | 7be139fb0e23a4f85e020bd5243d58153f2435b0 | |
parent | 15c58c19b683768f2a398756bac03e280f0e5527 (diff) | |
download | gcc-7123b6ed1f20ca337ec222656264ac7783b5d00c.zip gcc-7123b6ed1f20ca337ec222656264ac7783b5d00c.tar.gz gcc-7123b6ed1f20ca337ec222656264ac7783b5d00c.tar.bz2 |
pa.c (out_of_line_prologue_epilogue): Delete.
* pa.c (out_of_line_prologue_epilogue): Delete.
(override_options): Remove -mspace related code.
(hppa_expand_prologue, hppa_expand_epilogue): Likewise.
(compute_frame_size): Only allocate space for register that
actually need to be saved.
* pa.h (MASK_SPACE, TARGET_SPACE): Delete.
(TARGET_SWITCHES): Remove -mspace, -mno-space
* pa/t-pa (LIB2FUNCS_EXTRA): Remove ee.asm and ee_fp.asm
* pa/t-pro (LIB2FUNCS_EXTRA): Likewise. Remove -mspace multilib.
* pa/ee.asm, pa/ee_fp.asm: Delete.
From-SVN: r28125
-rw-r--r-- | gcc/ChangeLog | 11 | ||||
-rw-r--r-- | gcc/config/pa/ee.asm | 261 | ||||
-rw-r--r-- | gcc/config/pa/ee_fp.asm | 274 | ||||
-rw-r--r-- | gcc/config/pa/pa.c | 149 | ||||
-rw-r--r-- | gcc/config/pa/pa.h | 7 | ||||
-rw-r--r-- | gcc/config/pa/t-pa | 10 | ||||
-rw-r--r-- | gcc/config/pa/t-pro | 19 |
7 files changed, 15 insertions, 716 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 1ef61a6..1901d20 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,16 @@ Fri Jul 16 13:48:09 1999 Jeffrey A Law (law@cygnus.com) + * pa.c (out_of_line_prologue_epilogue): Delete. + (override_options): Remove -mspace related code. + (hppa_expand_prologue, hppa_expand_epilogue): Likewise. + (compute_frame_size): Only allocate space for register that + actually need to be saved. + * pa.h (MASK_SPACE, TARGET_SPACE): Delete. + (TARGET_SWITCHES): Remove -mspace, -mno-space + * pa/t-pa (LIB2FUNCS_EXTRA): Remove ee.asm and ee_fp.asm + * pa/t-pro (LIB2FUNCS_EXTRA): Likewise. Remove -mspace multilib. + * pa/ee.asm, pa/ee_fp.asm: Delete. + * pa/elf.h (ASM_OUTPUT_DOUBLE_INT): Define. * config/svr4.h (CONST_SECTION_ASM_OP): Do not emit assembler diff --git a/gcc/config/pa/ee.asm b/gcc/config/pa/ee.asm deleted file mode 100644 index f707aa4..0000000 --- a/gcc/config/pa/ee.asm +++ /dev/null @@ -1,261 +0,0 @@ -; Subroutines for out of line prologues and epilogues on for the HPPA -; Copyright (C) 1994, 1995, 1996 Free Software Foundation, Inc. - -; This file is part of GNU CC. - -; GNU CC is free software; you can redistribute it and/or modify -; it under the terms of the GNU General Public License as published by -; the Free Software Foundation; either version 2, or (at your option) -; any later version. - -; GNU CC is distributed in the hope that it will be useful, -; but WITHOUT ANY WARRANTY; without even the implied warranty of -; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -; GNU General Public License for more details. - -; You should have received a copy of the GNU General Public License -; along with GNU CC; see the file COPYING. If not, write to -; the Free Software Foundation, 59 Temple Place - Suite 330, -; Boston, MA 02111-1307, USA. - - .SPACE $PRIVATE$ - .SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31 - .SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82 - .SPACE $TEXT$ - .SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44 - .SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY - .SUBSPA $MILLICODE$,QUAD=0,ALIGN=8,ACCESS=44,SORT=8 - -; This is an out-of-line prologue. -; -; It performs the following operations: -; -; * Saves the return pointer at sp - 20 -; -; * Creates a new stack frame (sp'), size of the frame is passed in %r21 -; -; * The old stack pointer is saved at sp (frame pointer version only). -; -; * Saves grs (passed in low 16 bits of %r22 into the stack frame -; at sp' + local_fsize (passed in %r19). -; -; * Saves frs (passed in high 16 bits of %r22) into the stack -; frame at sp' + local_fsize (passed in %r19). -; -; * Sets up a frame pointer (in %r3) (frame pointer version only). -; -; * Returns to the instruction _immediately_ after the call to -; this function. - - .SPACE $TEXT$ - .SUBSPA $MILLICODE$ - .EXPORT __outline_prologue,MILLICODE - .align 32 -__outline_prologue - .PROC - .CALLINFO FRAME=0,NO_CALLS - .ENTRY - copy %r30,%r20 - - ; Subtract 4 from our return pointer so that we return to - ; the right location. - ldo -4(%r31),%r31 - - ; Save off %r2 - stw %r2,-20(%r30) - - ; Make our new frame. - add %r21,%r30,%r30 - - ; Add in local_fsize to our frame pointer so we do register - ; saves into the right place - add %r20,%r19,%r20 - - ; %r22 tells us what registers we need to save. The upper half - ; is for fp registers, the lower half for integer registers. - ; We put the lower half in %r1 and the upper half into %r22 - ; for later use. - extru %r22,31,16,%r1 - extrs %r22,15,16,%r22 - - ; %r1 now olds a value 0-18 which corresponds to the number - ; of grs we need to save. We need to reverse that value so - ; we can just into the table and straight-line execute to the - ; end of the gr saves. - comb,= %r0,%r1,L$0000 - subi 18,%r1,%r1 - blr,n %r1,%r0 - b,n L$0000 - stws,ma %r18,4(%r20) - nop - stws,ma %r17,4(%r20) - nop - stws,ma %r16,4(%r20) - nop - stws,ma %r15,4(%r20) - nop - stws,ma %r14,4(%r20) - nop - stws,ma %r13,4(%r20) - nop - stws,ma %r12,4(%r20) - nop - stws,ma %r11,4(%r20) - nop - stws,ma %r10,4(%r20) - nop - stws,ma %r9,4(%r20) - nop - stws,ma %r8,4(%r20) - nop - stws,ma %r7,4(%r20) - nop - stws,ma %r6,4(%r20) - nop - stws,ma %r5,4(%r20) - nop - stws,ma %r4,4(%r20) - nop - stws,ma %r3,4(%r20) - nop -L$0000 - ; All gr saves are done. Align the temporary frame pointer and - ; do the fr saves. - ldo 7(%r20),%r20 - depi 0,31,3,%r20 - - comb,= %r0,%r22,L$0001 - subi 21,%r22,%r22 - blr,n %r22,%r0 - b,n L$0001 - fstws,ma %fr21,8(%r20) - nop - fstws,ma %fr20,8(%r20) - nop - fstws,ma %fr19,8(%r20) - nop - fstws,ma %fr18,8(%r20) - nop - fstws,ma %fr17,8(%r20) - nop - fstws,ma %fr16,8(%r20) - nop - fstws,ma %fr15,8(%r20) - nop - fstws,ma %fr14,8(%r20) - nop - fstws,ma %fr13,8(%r20) - nop - fstws,ma %fr12,8(%r20) - nop -L$0001 - ; Return - bv,n %r0(%r31) - .EXIT - .PROCEND - - - - .EXPORT __outline_epilogue,MILLICODE - .align 32 -__outline_epilogue - .PROC - .CALLINFO FRAME=0,NO_CALLS - .ENTRY - ; Get our original stack pointer and put it in %r20 - sub %r30,%r21,%r20 - - ; Subtract 4 from our return pointer so that we return to - ; the right location. - ldo -4(%r31),%r31 - - ; Reload %r2 - ldw -20(%r20),%r2 - - ; Add in local_fsize (%r19) to the frame pointer to find - ; the saved registers. - add %r20,%r19,%r20 - - ; %r22 tells us what registers we need to restore. The upper half - ; is for fp registers, the lower half for integer registers. - ; We put the lower half in %r1 and the upper half into %r22 - ; for later use. - extru %r22,31,16,%r1 - extrs %r22,15,16,%r22 - - ; %r1 now olds a value 0-18 which corresponds to the number - ; of grs we need to restore. We need to reverse that value so - ; we can just into the table and straight-line execute to the - ; end of the gr restore. - comb,= %r0,%r1,L$0004 - subi 18,%r1,%r1 - blr,n %r1,%r0 - b,n L$0004 - ldws,ma 4(%r20),%r18 - nop - ldws,ma 4(%r20),%r17 - nop - ldws,ma 4(%r20),%r16 - nop - ldws,ma 4(%r20),%r15 - nop - ldws,ma 4(%r20),%r14 - nop - ldws,ma 4(%r20),%r13 - nop - ldws,ma 4(%r20),%r12 - nop - ldws,ma 4(%r20),%r11 - nop - ldws,ma 4(%r20),%r10 - nop - ldws,ma 4(%r20),%r9 - nop - ldws,ma 4(%r20),%r8 - nop - ldws,ma 4(%r20),%r7 - nop - ldws,ma 4(%r20),%r6 - nop - ldws,ma 4(%r20),%r5 - nop - ldws,ma 4(%r20),%r4 - nop - ldws,ma 4(%r20),%r3 - nop -L$0004 - ; All gr restore are done. Align the temporary frame pointer and - ; do the fr restore. - ldo 7(%r20),%r20 - depi 0,31,3,%r20 - - comb,= %r0,%r22,L$0005 - subi 21,%r22,%r22 - blr,n %r22,%r0 - b,n L$0005 - fldws,ma 8(%r20),%fr21 - nop - fldws,ma 8(%r20),%fr20 - nop - fldws,ma 8(%r20),%fr19 - nop - fldws,ma 8(%r20),%fr18 - nop - fldws,ma 8(%r20),%fr17 - nop - fldws,ma 8(%r20),%fr16 - nop - fldws,ma 8(%r20),%fr15 - nop - fldws,ma 8(%r20),%fr14 - nop - fldws,ma 8(%r20),%fr13 - nop - fldws,ma 8(%r20),%fr12 - nop -L$0005 - ; Return and deallocate our frame. - bv %r0(%r31) - sub %r30,%r21,%r30 - .EXIT - .PROCEND diff --git a/gcc/config/pa/ee_fp.asm b/gcc/config/pa/ee_fp.asm deleted file mode 100644 index ad08acb..0000000 --- a/gcc/config/pa/ee_fp.asm +++ /dev/null @@ -1,274 +0,0 @@ -; Subroutines for out of line prologues and epilogues on for the HPPA -; Copyright (C) 1994, 1995, 1996 Free Software Foundation, Inc. - -; This file is part of GNU CC. - -; GNU CC is free software; you can redistribute it and/or modify -; it under the terms of the GNU General Public License as published by -; the Free Software Foundation; either version 2, or (at your option) -; any later version. - -; GNU CC is distributed in the hope that it will be useful, -; but WITHOUT ANY WARRANTY; without even the implied warranty of -; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -; GNU General Public License for more details. - -; You should have received a copy of the GNU General Public License -; along with GNU CC; see the file COPYING. If not, write to -; the Free Software Foundation, 59 Temple Place - Suite 330, -; Boston, MA 02111-1307, USA. - - .SPACE $PRIVATE$ - .SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31 - .SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82 - .SPACE $TEXT$ - .SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44 - .SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY - .SUBSPA $MILLICODE$,QUAD=0,ALIGN=8,ACCESS=44,SORT=8 - - -; This is an out-of-line prologue. -; -; It performs the following operations: -; -; * Saves the return pointer at sp - 20 -; -; * Creates a new stack frame (sp'), size of the frame is passed in %r21 -; -; * The old stack pointer is saved at sp (frame pointer version only). -; -; * Saves grs (passed in low 16 bits of %r22 into the stack frame -; at sp' + local_fsize (passed in %r19). -; -; * Saves frs (passed in high 16 bits of %r22) into the stack -; frame at sp' + local_fsize (passed in %r19). -; -; * Sets up a frame pointer (in %r3) (frame pointer version only). -; -; * Returns to the instruction _immediately_ after the call to -; this function. - - .SPACE $TEXT$ - .SUBSPA $MILLICODE$ - .EXPORT __outline_prologue_fp,MILLICODE - .align 32 -__outline_prologue_fp - .PROC - .CALLINFO FRAME=0,NO_CALLS - .ENTRY - copy %r30,%r20 - - ; Subtract 4 from our return pointer so that we return to - ; the right location. - ldo -4(%r31),%r31 - - ; Save off %r2 - stw %r2,-20(%r30) - - ; Make our new frame. - add %r21,%r30,%r30 - - ; Save our old stack pointer. - stw %r20,0(%r20) - - ; Add in local_fsize to our frame pointer so we do register - ; saves into the right place - add %r20,%r19,%r20 - - ; %r22 tells us what registers we need to save. The upper half - ; is for fp registers, the lower half for integer registers. - ; We put the lower half in %r1 and the upper half into %r22 - ; for later use. - extru %r22,31,16,%r1 - extrs %r22,15,16,%r22 - - ; %r1 now olds a value 0-18 which corresponds to the number - ; of grs we need to save. We need to reverse that value so - ; we can just into the table and straight-line execute to the - ; end of the gr saves. - comb,= %r0,%r1,L$0002 - subi 18,%r1,%r1 - blr,n %r1,%r0 - b,n L$0002 - stws,ma %r18,4(%r20) - nop - stws,ma %r17,4(%r20) - nop - stws,ma %r16,4(%r20) - nop - stws,ma %r15,4(%r20) - nop - stws,ma %r14,4(%r20) - nop - stws,ma %r13,4(%r20) - nop - stws,ma %r12,4(%r20) - nop - stws,ma %r11,4(%r20) - nop - stws,ma %r10,4(%r20) - nop - stws,ma %r9,4(%r20) - nop - stws,ma %r8,4(%r20) - nop - stws,ma %r7,4(%r20) - nop - stws,ma %r6,4(%r20) - nop - stws,ma %r5,4(%r20) - nop - stws,ma %r4,4(%r20) - nop - stws,ma %r3,4(%r20) - nop -L$0002 - ; All gr saves are done. Align the temporary frame pointer and - ; do the fr saves. - ldo 7(%r20),%r20 - depi 0,31,3,%r20 - - comb,= %r0,%r22,L$0003 - subi 21,%r22,%r22 - blr,n %r22,%r0 - b,n L$0003 - fstws,ma %fr21,8(%r20) - nop - fstws,ma %fr20,8(%r20) - nop - fstws,ma %fr19,8(%r20) - nop - fstws,ma %fr18,8(%r20) - nop - fstws,ma %fr17,8(%r20) - nop - fstws,ma %fr16,8(%r20) - nop - fstws,ma %fr15,8(%r20) - nop - fstws,ma %fr14,8(%r20) - nop - fstws,ma %fr13,8(%r20) - nop - fstws,ma %fr12,8(%r20) - nop -L$0003 - ; Return, setting up a frame pointer in the delay slot - bv %r0(%r31) - sub %r30,%r21,%r3 - .EXIT - .PROCEND - - -; This is an out-of-line epilogue. It's operation is basically the reverse -; of the out-of-line prologue. - - .EXPORT __outline_epilogue_fp,MILLICODE - .align 32 -__outline_epilogue_fp - .PROC - .CALLINFO FRAME=0,NO_CALLS - .ENTRY - ; Make a copy of our frame pointer into %r20 - copy %r3,%r20 - - ; Subtract 4 from our return pointer so that we return to - ; the right location. - ldo -4(%r31),%r31 - - ; Reload %r2 - ; First save off %r2 - ldw -20(%r20),%r2 - - ; Load our old stack pointer, save it in %r21. - ldw 0(%r20),%r21 - - ; Add in local_fsize (%r19) to the frame pointer to find - ; the saved registers. - add %r20,%r19,%r20 - - ; %r22 tells us what registers we need to restore. The upper half - ; is for fp registers, the lower half for integer registers. - ; We put the lower half in %r1 and the upper half into %r22 - ; for later use. - extru %r22,31,16,%r1 - extrs %r22,15,16,%r22 - - ; %r1 now olds a value 0-18 which corresponds to the number - ; of grs we need to restore. We need to reverse that value so - ; we can just into the table and straight-line execute to the - ; end of the gr restore. - comb,= %r0,%r1,L$0006 - subi 18,%r1,%r1 - blr,n %r1,%r0 - b,n L$0006 - ldws,ma 4(%r20),%r18 - nop - ldws,ma 4(%r20),%r17 - nop - ldws,ma 4(%r20),%r16 - nop - ldws,ma 4(%r20),%r15 - nop - ldws,ma 4(%r20),%r14 - nop - ldws,ma 4(%r20),%r13 - nop - ldws,ma 4(%r20),%r12 - nop - ldws,ma 4(%r20),%r11 - nop - ldws,ma 4(%r20),%r10 - nop - ldws,ma 4(%r20),%r9 - nop - ldws,ma 4(%r20),%r8 - nop - ldws,ma 4(%r20),%r7 - nop - ldws,ma 4(%r20),%r6 - nop - ldws,ma 4(%r20),%r5 - nop - ldws,ma 4(%r20),%r4 - nop - ldws,ma 4(%r20),%r3 - nop -L$0006 - ; All gr restore are done. Align the temporary frame pointer and - ; do the fr restore. - ldo 7(%r20),%r20 - depi 0,31,3,%r20 - - comb,= %r0,%r22,L$0007 - subi 21,%r22,%r22 - blr,n %r22,%r0 - b,n L$0007 - fldws,ma 8(%r20),%fr21 - nop - fldws,ma 8(%r20),%fr20 - nop - fldws,ma 8(%r20),%fr19 - nop - fldws,ma 8(%r20),%fr18 - nop - fldws,ma 8(%r20),%fr17 - nop - fldws,ma 8(%r20),%fr16 - nop - fldws,ma 8(%r20),%fr15 - nop - fldws,ma 8(%r20),%fr14 - nop - fldws,ma 8(%r20),%fr13 - nop - fldws,ma 8(%r20),%fr12 - nop -L$0007 - ; Return and deallocate our frame. - bv %r0(%r31) - copy %r21,%r30 - .EXIT - .PROCEND - - diff --git a/gcc/config/pa/pa.c b/gcc/config/pa/pa.c index 6cf4828..af748e0 100644 --- a/gcc/config/pa/pa.c +++ b/gcc/config/pa/pa.c @@ -71,10 +71,6 @@ int hp_profile_labelno; registers which were saved by the current function's prologue. */ static int gr_saved, fr_saved; -/* Whether or not the current function uses an out-of-line prologue - and epilogue. */ -static int out_of_line_prologue_epilogue; - static rtx find_addr_reg (); /* Keep track of the number of bytes we have output in the CODE subspaces @@ -174,12 +170,6 @@ override_options () warning ("PIC code generation is not compatible with profiling\n"); } - if (TARGET_SPACE && (flag_pic || profile_flag)) - { - warning ("Out of line entry/exit sequences are not compatible\n"); - warning ("with PIC or profiling\n"); - } - if (! TARGET_GAS && write_symbols != NO_DEBUG) { warning ("-g is only supported when using GAS on this processor,"); @@ -2566,31 +2556,23 @@ compute_frame_size (size, fregs_live) we need to add this in because of STARTING_FRAME_OFFSET. */ fsize = size + (size || frame_pointer_needed ? 8 : 0); - /* We must leave enough space for all the callee saved registers - from 3 .. highest used callee save register since we don't - know if we're going to have an inline or out of line prologue - and epilogue. */ for (i = 18; i >= 3; i--) if (regs_ever_live[i]) { - fsize += 4 * (i - 2); + fsize += 4; break; } /* Round the stack. */ fsize = (fsize + 7) & ~7; - /* We must leave enough space for all the callee saved registers - from 3 .. highest used callee save register since we don't - know if we're going to have an inline or out of line prologue - and epilogue. */ for (i = 66; i >= 48; i -= 2) if (regs_ever_live[i] || regs_ever_live[i + 1]) { if (fregs_live) *fregs_live = 1; - fsize += 4 * (i - 46); + fsize += 4; break; } @@ -2691,91 +2673,6 @@ hppa_expand_prologue() tmpreg = gen_rtx_REG (SImode, 1); size_rtx = GEN_INT (actual_fsize); - /* Handle out of line prologues and epilogues. */ - if (TARGET_SPACE) - { - rtx operands[2]; - int saves = 0; - int outline_insn_count = 0; - int inline_insn_count = 0; - - /* Count the number of insns for the inline and out of line - variants so we can choose one appropriately. - - No need to screw with counting actual_fsize operations -- they're - done for both inline and out of line prologues. */ - if (regs_ever_live[2]) - inline_insn_count += 1; - - if (! cint_ok_for_move (local_fsize)) - outline_insn_count += 2; - else - outline_insn_count += 1; - - /* Put the register save info into %r22. */ - for (i = 18; i >= 3; i--) - if (regs_ever_live[i] && ! call_used_regs[i]) - { - /* -1 because the stack adjustment is normally done in - the same insn as a register save. */ - inline_insn_count += (i - 2) - 1; - saves = i; - break; - } - - for (i = 66; i >= 48; i -= 2) - if (regs_ever_live[i] || regs_ever_live[i + 1]) - { - /* +1 needed as we load %r1 with the start of the freg - save area. */ - inline_insn_count += (i/2 - 23) + 1; - saves |= ((i/2 - 12 ) << 16); - break; - } - - if (frame_pointer_needed) - inline_insn_count += 3; - - if (! cint_ok_for_move (saves)) - outline_insn_count += 2; - else - outline_insn_count += 1; - - if (TARGET_PORTABLE_RUNTIME) - outline_insn_count += 2; - else - outline_insn_count += 1; - - /* If there's a lot of insns in the prologue, then do it as - an out-of-line sequence. */ - if (inline_insn_count > outline_insn_count) - { - /* Put the local_fisze into %r19. */ - operands[0] = gen_rtx_REG (SImode, 19); - operands[1] = GEN_INT (local_fsize); - emit_move_insn (operands[0], operands[1]); - - /* Put the stack size into %r21. */ - operands[0] = gen_rtx_REG (SImode, 21); - operands[1] = size_rtx; - emit_move_insn (operands[0], operands[1]); - - operands[0] = gen_rtx_REG (SImode, 22); - operands[1] = GEN_INT (saves); - emit_move_insn (operands[0], operands[1]); - - /* Now call the out-of-line prologue. */ - emit_insn (gen_outline_prologue_call ()); - emit_insn (gen_blockage ()); - - /* Note that we're using an out-of-line prologue. */ - out_of_line_prologue_epilogue = 1; - return; - } - } - - out_of_line_prologue_epilogue = 0; - /* Save RP first. The calling conventions manual states RP will always be stored into the caller's frame at sp-20. */ if (regs_ever_live[2] || profile_flag) @@ -3038,48 +2935,6 @@ hppa_expand_epilogue () int offset,i; int merge_sp_adjust_with_load = 0; - /* Handle out of line prologues and epilogues. */ - if (TARGET_SPACE && out_of_line_prologue_epilogue) - { - int saves = 0; - rtx operands[2]; - - /* Put the register save info into %r22. */ - for (i = 18; i >= 3; i--) - if (regs_ever_live[i] && ! call_used_regs[i]) - { - saves = i; - break; - } - - for (i = 66; i >= 48; i -= 2) - if (regs_ever_live[i] || regs_ever_live[i + 1]) - { - saves |= ((i/2 - 12 ) << 16); - break; - } - - emit_insn (gen_blockage ()); - - /* Put the local_fisze into %r19. */ - operands[0] = gen_rtx_REG (SImode, 19); - operands[1] = GEN_INT (local_fsize); - emit_move_insn (operands[0], operands[1]); - - /* Put the stack size into %r21. */ - operands[0] = gen_rtx_REG (SImode, 21); - operands[1] = GEN_INT (actual_fsize); - emit_move_insn (operands[0], operands[1]); - - operands[0] = gen_rtx_REG (SImode, 22); - operands[1] = GEN_INT (saves); - emit_move_insn (operands[0], operands[1]); - - /* Now call the out-of-line epilogue. */ - emit_insn (gen_outline_epilogue_call ()); - return; - } - /* We will use this often. */ tmpreg = gen_rtx_REG (SImode, 1); diff --git a/gcc/config/pa/pa.h b/gcc/config/pa/pa.h index ad18e4b..8132c7b 100644 --- a/gcc/config/pa/pa.h +++ b/gcc/config/pa/pa.h @@ -108,11 +108,6 @@ extern int target_flags; #define MASK_JUMP_IN_DELAY 8 #define TARGET_JUMP_IN_DELAY (target_flags & MASK_JUMP_IN_DELAY) -/* Optimize for space. Currently this only turns on out of line - prologues and epilogues. */ -#define MASK_SPACE 16 -#define TARGET_SPACE (target_flags & MASK_SPACE) - /* Disable indexed addressing modes. */ #define MASK_DISABLE_INDEXING 32 #define TARGET_DISABLE_INDEXING (target_flags & MASK_DISABLE_INDEXING) @@ -174,8 +169,6 @@ extern int target_flags; {"space-regs", -MASK_NO_SPACE_REGS, "Do not disable space regs"}, \ {"jump-in-delay", MASK_JUMP_IN_DELAY, "Put jumps in call delay slots"},\ {"no-jump-in-delay", -MASK_JUMP_IN_DELAY, "Do not put jumps in call delay slots"}, \ - {"space", MASK_SPACE, "Optimize for code space"}, \ - {"no-space", -MASK_SPACE, "Do not optimize for code space"}, \ {"disable-indexing", MASK_DISABLE_INDEXING, "Disable indexed addressing"},\ {"no-disable-indexing", -MASK_DISABLE_INDEXING, "Do not disable indexed addressing"},\ {"portable-runtime", MASK_PORTABLE_RUNTIME, "Use portable calling conventions"}, \ diff --git a/gcc/config/pa/t-pa b/gcc/config/pa/t-pa index a359918..0d66758 100644 --- a/gcc/config/pa/t-pa +++ b/gcc/config/pa/t-pa @@ -1,18 +1,10 @@ LIBGCC1=libgcc1.null CROSS_LIBGCC1=libgcc1.null ADA_CFLAGS=-mdisable-indexing -LIB2FUNCS_EXTRA=lib2funcs.asm ee.asm ee_fp.asm +LIB2FUNCS_EXTRA=lib2funcs.asm lib2funcs.asm: $(srcdir)/config/pa/lib2funcs.asm rm -f lib2funcs.asm cp $(srcdir)/config/pa/lib2funcs.asm . -ee.asm: $(srcdir)/config/pa/ee.asm - rm -f ee.asm - cp $(srcdir)/config/pa/ee.asm . - -ee_fp.asm: $(srcdir)/config/pa/ee_fp.asm - rm -f ee_fp.asm - cp $(srcdir)/config/pa/ee_fp.asm . - TARGET_LIBGCC2_CFLAGS = -fPIC diff --git a/gcc/config/pa/t-pro b/gcc/config/pa/t-pro index f40b2e4..e68fd17 100644 --- a/gcc/config/pa/t-pro +++ b/gcc/config/pa/t-pro @@ -7,7 +7,7 @@ LIBGCC1_TEST = ADA_CFLAGS=-mdisable-indexing -LIB2FUNCS_EXTRA=fp-bit.c dp-bit.c lib2funcs.asm ee.asm ee_fp.asm +LIB2FUNCS_EXTRA=fp-bit.c dp-bit.c lib2funcs.asm dp-bit.c: $(srcdir)/config/fp-bit.c cat $(srcdir)/config/fp-bit.c > dp-bit.c @@ -19,20 +19,3 @@ fp-bit.c: $(srcdir)/config/fp-bit.c lib2funcs.asm: $(srcdir)/config/pa/lib2funcs.asm rm -f lib2funcs.asm cp $(srcdir)/config/pa/lib2funcs.asm . - -ee.asm: $(srcdir)/config/pa/ee.asm - rm -f ee.asm - cp $(srcdir)/config/pa/ee.asm . - -ee_fp.asm: $(srcdir)/config/pa/ee_fp.asm - rm -f ee_fp.asm - cp $(srcdir)/config/pa/ee_fp.asm . - -# Build the libraries for both speed and space optimizations - -MULTILIB_OPTIONS=mspace -MULTILIB_DIRNAMES=space -MULTILIB_MATCHES= - -LIBGCC = stmp-multilib -INSTALL_LIBGCC = install-multilib |