On Fri, Apr 27, 2007 at 08:24:11AM -0700, Richard Henderson wrote:
On Fri, Apr 27, 2007 at 04:00:13PM +0200, Rask Ingemann Lambertsen wrote:
I don't see how emit_move_complex_push() can ever generate a push
instruction. Here's a backtrace:
emit_move_insn (gen_rtx_MEM (submode, XEXP
On Fri, Apr 27, 2007 at 08:24:11AM -0700, Richard Henderson wrote:
This doesn't look like frame pointer elimination at all,
just different stack slots allocated. But that said, if
there's a bug in elimination, it should be fixed, not
hacked around in one backend.
$ ./xgcc -B./
On Thu, Apr 26, 2007 at 01:52:37PM -0700, Richard Henderson wrote:
On Thu, Apr 26, 2007 at 09:49:16PM +0200, Rask Ingemann Lambertsen wrote:
Unfortunately, the fallback code isn't exactly optimum, as it produces
something like
addw$-N*2, %sp
movw%sp,%basereg
On Fri, Apr 27, 2007 at 04:00:13PM +0200, Rask Ingemann Lambertsen wrote:
I don't see how emit_move_complex_push() can ever generate a push
instruction. Here's a backtrace:
emit_move_insn (gen_rtx_MEM (submode, XEXP (x, 0)),
read_complex_part (y, imag_first));
return
On Wed, Apr 25, 2007 at 09:11:52AM -0700, Richard Henderson wrote:
On Wed, Apr 25, 2007 at 01:51:34PM +0200, Rask Ingemann Lambertsen wrote:
(define_mode_macro GT16 [SI DI TI SF DF XF SC DC XC SD DD TD CHI CSI CDI
CTI])
(define_insn_and_split *pushmode1
You almost certainly do not
On Thu, Apr 26, 2007 at 09:49:16PM +0200, Rask Ingemann Lambertsen wrote:
Unfortunately, the fallback code isn't exactly optimum, as it produces
something like
addw$-N*2, %sp
movw%sp,%basereg
movw%wordN, N*2(%basereg)
...
movw%word0,
I just got
/home/rask/cvssrc/gcc/gcc/testsuite/gcc.c-torture/compile/complex-3.c:17:
error: unrecognizable insn:
(insn 69 67 70 5 (set (mem:SC (pre_dec:HI (reg/f:HI 12 sp)) [0 S8 A8])
(concat:SC (reg:SF 36)
(reg:SF 37))) -1 (nil)
(nil))
which I thought I'd covered with
Rask Ingemann Lambertsen [EMAIL PROTECTED] writes:
I just got
/home/rask/cvssrc/gcc/gcc/testsuite/gcc.c-torture/compile/complex-3.c:17:
error: unrecognizable insn:
(insn 69 67 70 5 (set (mem:SC (pre_dec:HI (reg/f:HI 12 sp)) [0 S8 A8])
(concat:SC (reg:SF 36)
(reg:SF
On Wed, Apr 25, 2007 at 01:51:34PM +0200, Rask Ingemann Lambertsen wrote:
(define_mode_macro GT16 [SI DI TI SF DF XF SC DC XC SD DD TD CHI CSI CDI
CTI])
(define_insn_and_split *pushmode1
You almost certainly do not want to handle complex yourself,
and instead rely on the fallback code in