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]
Other format: [Raw text]

Re: MIPS RDHWR instruction reordering


On 19 Jun 2006 16:45:43 -0700, Ian Lance Taylor <iant@google.com> wrote:
> I tried recreating this, but I couldn't.  I get this:
...
> This of course is not ideal, since it unconditionally executes the
> rdhwr instruction.  But it is not the same as what the OP reported.

I used stock gcc 4.1.1 to get the result: mips-linux-gcc -O2 -S foo.c

If I used -O instead of -O2, I got similer (but not same) result:

foo:
	.frame	$sp,0,$31		# vars= 0, regs= 0/0, args= 0, gp= 0
	.mask	0x00000000,0
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$25
	.set	nomacro
	
	bne	$4,$0,$L2
	.set	push
	.set	mips32r2	
	rdhwr	$3,$29
	.set	pop

	j	$31
	move	$2,$0

$L2:
	lw	$2,%gottprel(x)($28)
	nop
	addu	$2,$2,$3
	lw	$2,0($2)
	j	$31
	nop

JFYI.


Should I file a bug report?

---
Atsushi Nemoto


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