This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [patch] MIPS: 64bit floating point support for MIPS32R2




	(load_df_low, load_df_high): Remove DF mode from template such
	that DI mode works for these patterns.

;; Load the low word of operand 0 with operand 1.
(define_insn "load_df_low"
- [(set (match_operand:DF 0 "register_operand" "=f,f")
- (unspec:DF [(match_operand:SI 1 "general_operand" "dJ,m")]
- UNSPEC_LOAD_DF_LOW))]
+ [(set (match_operand 0 "register_operand" "=f,f")
+ (unspec [(match_operand:SI 1 "general_operand" "dJ,m")]
+ UNSPEC_LOAD_DF_LOW))]
"TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT && !TARGET_64BIT"
{
operands[0] = mips_subword (operands[0], 0);
@@ -3965,10 +3977,10 @@
;; Load the high word of operand 0 from operand 1, preserving the value
;; in the low word.
(define_insn "load_df_high"
- [(set (match_operand:DF 0 "register_operand" "=f,f")
- (unspec:DF [(match_operand:SI 1 "general_operand" "dJ,m")
- (match_operand:DF 2 "register_operand" "0,0")]
- UNSPEC_LOAD_DF_HIGH))]
+ [(set (match_operand 0 "register_operand" "=f,f")
+ (unspec [(match_operand:SI 1 "general_operand" "dJ,m")
+ (match_operand:DF 2 "register_operand" "0,0")]
+ UNSPEC_LOAD_DF_HIGH))]
"TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT && !TARGET_64BIT"
{
operands[0] = mips_subword (operands[0], 1);

I think I'm missing something, why do you need these changes again?


-eric


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]