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]

RFA: enable complex float expanders


I've written an abssc2 pattern so that builtins-18 would be happy without an
FPU- it expands to an sfunc call that takes some 72 cycles.

However, to my dismay I found that expand_complex_abs didn't find the expander
because genopinit had ignored it.  The appended patch fixes this.

I'm running a regression test for i686-pc-linux-gnu X sh-elf
--with-multilib_list=sh4-nofpu and a bootstrap for i686-pc-linux-gnu native.

2004-06-21  J"orn Rennecke <joern.rennecke@superh.com>

	* genopinit.c (gen_insn): Check for MODE_COMPLEX_FLOAT patterns for $F.

Index: genopinit.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/genopinit.c,v
retrieving revision 1.75
diff -p -r1.75 genopinit.c
*** genopinit.c	7 May 2004 05:38:14 -0000	1.75
--- genopinit.c	2 Aug 2004 03:53:00 -0000
*************** gen_insn (rtx insn)
*** 264,269 ****
--- 264,270 ----
                              || mode_class[i] == MODE_PARTIAL_INT
  			    || mode_class[i] == MODE_VECTOR_INT)
  			&& (! force_float || mode_class[i] == MODE_FLOAT 
+ 			    || mode_class[i] == MODE_COMPLEX_FLOAT
  			    || mode_class[i] == MODE_VECTOR_FLOAT))
  		      break;
  		  }


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