This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Alpha peepholes commented out
- To: meissner at cygnus dot com
- Subject: Re: Alpha peepholes commented out
- From: daemon at cygnus dot com
- Date: Thu, 7 Oct 1999 12:27:56 -0700 (PDT)
- References: <199910071927.PAA02958@tiktok.cygnus.com>
Sorry, I am unable to deliver your mail note to egcs-patches@cygnus.com,
that list name is no longer used. Please try resending your mail
note to the new list name: egcs-patches@egcs.cygnus.com.
If you have any questions about this, send mail to sourcemaster@cygnus.com.
This is a machine-generated message.
Here is a copy of the note you sent.
-----------------------------------------------------------------------------
The peepholes in the alpha.md file prevent the compiler from
bootstrap'ing itself. The following patch, applied wtih rth's
blessing, comments them out while rth fixes the real problem.
Thu Oct 7 15:23:28 1999 Michael Meissner <meissner@cygnus.com>
* alpha.md (peephole2's): Comment out peephole2's that generate
buggy code.
*** gcc/config/alpha/alpha.md.~1~ Tue Oct 5 11:22:45 1999
--- gcc/config/alpha/alpha.md Thu Oct 7 15:23:24 1999
***************
*** 5407,5431 ****
;; Optimize sign-extension of SImode loads. This shows up in the wake of
;; reload when converting fp->int.
! (define_peephole2
! [(set (match_operand:SI 0 "register_operand" "=r")
! (match_operand:SI 1 "memory_operand" "m"))
! (set (match_operand:DI 2 "register_operand" "=r")
! (sign_extend:DI (match_dup 0)))]
! "rtx_equal_p (operands[0], operands[2])
! || reg_dead_p (insn, operands[0])"
! [(set (match_dup 2)
! (sign_extend:DI (match_dup 1)))]
! "")
!
! (define_peephole2
! [(set (match_operand:SI 0 "register_operand" "=r")
! (match_operand:SI 1 "hard_fp_register_operand" "f"))
! (set (match_operand:DI 2 "register_operand" "=r")
! (sign_extend:DI (match_dup 0)))]
! "TARGET_FIX
! && (rtx_equal_p (operands[0], operands[2])
! || reg_dead_p (insn, operands[0]))"
! [(set (match_dup 2)
! (sign_extend:DI (match_dup 1)))]
! "")
--- 5407,5431 ----
;; Optimize sign-extension of SImode loads. This shows up in the wake of
;; reload when converting fp->int.
! ;(define_peephole2
! ; [(set (match_operand:SI 0 "register_operand" "=r")
! ; (match_operand:SI 1 "memory_operand" "m"))
! ; (set (match_operand:DI 2 "register_operand" "=r")
! ; (sign_extend:DI (match_dup 0)))]
! ; "rtx_equal_p (operands[0], operands[2])
! ; || reg_dead_p (insn, operands[0])"
! ; [(set (match_dup 2)
! ; (sign_extend:DI (match_dup 1)))]
! ; "")
! ;
! ;(define_peephole2
! ; [(set (match_operand:SI 0 "register_operand" "=r")
! ; (match_operand:SI 1 "hard_fp_register_operand" "f"))
! ; (set (match_operand:DI 2 "register_operand" "=r")
! ; (sign_extend:DI (match_dup 0)))]
! ; "TARGET_FIX
! ; && (rtx_equal_p (operands[0], operands[2])
! ; || reg_dead_p (insn, operands[0]))"
! ; [(set (match_dup 2)
! ; (sign_extend:DI (match_dup 1)))]
! ; "")
--
Michael Meissner, Cygnus Solutions
PMB 198, 174 Littleton Road #3, Westford, Massachusetts 01886
email: meissner@cygnus.com phone: 978-486-9304 fax: 978-692-4482