This is the mail archive of the gcc@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]

Re: Reload problem


Joern Rennecke <amylaar@cygnus.co.uk> writes:

|> > |> I think there is an implicit assumption about output operand numbers being
|> > |> smaller than input operand numbers.  Try to renumebr the operands of the
|> > |> divmodsi4 pattern to match that assumption.
|> > 
|> > That didn't work, it made things only worse.  And btw, every md file that
|> 
|> What reloads do you see with this change?

No reload problems as such, but completely bogus code:

	lea random,%a5
	lea (-14000,%a6),%a4
	lea (-12000,%a6),%a3
	move.l %a6,%d6
	add.l #-10000,%d6
	move.l %a4,%d5
	.align 	2
.L6:
	jbsr (%a5)
	move.l %d2,%d1
	lsl.l #2,%d1
	move.l %d5,%a0
	move.l -14004(%a6),(%a0,%d1.l)  <--- this is weird
	move.l %d2,%d0
	moveq.l #20,%d3
	muls.l %d3,%d0
	add.l %d6,%d0

Moreover, -14004(%a6) has never been initialized.

Andreas.

-- 
Andreas Schwab                                  "And now for something
SuSE Labs                                        completely different."
schwab@suse.de
SuSE GmbH, Schanzäckerstr. 10, D-90443 Nürnberg


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