Article View: gnu.gcc.bug
Article #2377Re: Bug report for gcc 1.34 on the Alliant
From: Joe Weening
Date: Sat, 11 Mar 1989 21:20
Date: Sat, 11 Mar 1989 21:20
84 lines
3205 bytes
3205 bytes
The following patch should fix the "invalid operand" bug. It turns
out that none of the Alliant fix-to-float instructions allow immediate
data operands.
*** alliant.md.old Sat Mar 11 13:12:18 1989
--- alliant.md Sat Mar 11 13:13:15 1989
***************
*** 987,991 ****
(define_insn ""
[(set (match_operand:SF 0 "general_operand" "=f")
! (float:SF (match_operand:SI 1 "general_operand" "dmi")))]
"TARGET_68881"
"fmovels %1,%0")
--- 987,991 ----
(define_insn ""
[(set (match_operand:SF 0 "general_operand" "=f")
! (float:SF (match_operand:SI 1 "general_operand" "dm")))]
"TARGET_68881"
"fmovels %1,%0")
***************
*** 999,1003 ****
(define_insn ""
[(set (match_operand:DF 0 "general_operand" "=f")
! (float:DF (match_operand:SI 1 "general_operand" "dmi")))]
"TARGET_68881"
"fmoveld %1,%0")
--- 999,1003 ----
(define_insn ""
[(set (match_operand:DF 0 "general_operand" "=f")
! (float:DF (match_operand:SI 1 "general_operand" "dm")))]
"TARGET_68881"
"fmoveld %1,%0")
***************
*** 1005,1009 ****
(define_insn "floathisf2"
[(set (match_operand:SF 0 "general_operand" "=f")
! (float:SF (match_operand:HI 1 "general_operand" "dmn")))]
"TARGET_68881"
"fmovews %1,%0")
--- 1005,1009 ----
(define_insn "floathisf2"
[(set (match_operand:SF 0 "general_operand" "=f")
! (float:SF (match_operand:HI 1 "general_operand" "dm")))]
"TARGET_68881"
"fmovews %1,%0")
***************
*** 1011,1015 ****
(define_insn "floathidf2"
[(set (match_operand:DF 0 "general_operand" "=f")
! (float:DF (match_operand:HI 1 "general_operand" "dmn")))]
"TARGET_68881"
"fmovewd %1,%0")
--- 1011,1015 ----
(define_insn "floathidf2"
[(set (match_operand:DF 0 "general_operand" "=f")
! (float:DF (match_operand:HI 1 "general_operand" "dm")))]
"TARGET_68881"
"fmovewd %1,%0")
***************
*** 1017,1021 ****
(define_insn "floatqisf2"
[(set (match_operand:SF 0 "general_operand" "=f")
! (float:SF (match_operand:QI 1 "general_operand" "dmn")))]
"TARGET_68881"
"fmovebs %1,%0")
--- 1017,1021 ----
(define_insn "floatqisf2"
[(set (match_operand:SF 0 "general_operand" "=f")
! (float:SF (match_operand:QI 1 "general_operand" "dm")))]
"TARGET_68881"
"fmovebs %1,%0")
***************
*** 1023,1027 ****
(define_insn "floatqidf2"
[(set (match_operand:DF 0 "general_operand" "=f")
! (float:DF (match_operand:QI 1 "general_operand" "dmn")))]
"TARGET_68881"
"fmovebd %1,%0")
--- 1023,1027 ----
(define_insn "floatqidf2"
[(set (match_operand:DF 0 "general_operand" "=f")
! (float:DF (match_operand:QI 1 "general_operand" "dm")))]
"TARGET_68881"
"fmovebd %1,%0")
Technical Details
Message-ID:
<8903112120.AA00296@Gang-of-Four.Stanford.EDU>Path:
arc1-ca.pugleaf.net!utzoo!telly!attcan!uunet!tut.cis.ohio-state.edu!GANG-OF-FOUR.STANFORD.EDU!weeningShow Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!telly!attcan!uunet!tut.cis.ohio-state.edu!GANG-OF-FOUR.STANFORD.EDU!weening From: weening@GANG-OF-FOUR.STANFORD.EDU (Joe Weening) Newsgroups: gnu.gcc.bug Subject: Re: Bug report for gcc 1.34 on the Alliant Message-ID: <8903112120.AA00296@Gang-of-Four.Stanford.EDU> Date: 11 Mar 89 21:20:29 GMT Sender: daemon@tut.cis.ohio-state.edu Distribution: gnu Organization: GNUs Not Usenet Lines: 84