Linux MIPS Architecture development
 help / color / mirror / Atom feed
* GCC 3.4.5 and mftc0
@ 2007-12-14  9:49 Mikael Starvik
  2007-12-14  9:49 ` Mikael Starvik
  2007-12-14 16:26 ` Ralf Baechle
  0 siblings, 2 replies; 5+ messages in thread
From: Mikael Starvik @ 2007-12-14  9:49 UTC (permalink / raw)
  To: linux-mips

mftc0() is implemented as
 
 .word ...
  move %0, $1

With at least gcc 3.4.5 the move is implemented as an addu %0, $1, $0.
But in the MIPS sumulator this fails and %0 gets the value 0xffffffff.
Implementing this as a or %0, $1, $0 instead gives the expected result.

Any suggestions where the problem is and what the correct solution is?

After fixing this my next problem is that IPIs doesn't reach all TCs
correctly (it seams like the code doesn't detect IXMT status correctly,
but I am still investigating). It is likely that it is caused by
something similar to the problem above.

Regards
/Mikael

^ permalink raw reply	[flat|nested] 5+ messages in thread
[parent not found: <BFECAF9E178F144FAEF2BF4CE739C668056FE63A@exmail1.se.axis.com>]

end of thread, other threads:[~2007-12-17  6:45 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-12-14  9:49 GCC 3.4.5 and mftc0 Mikael Starvik
2007-12-14  9:49 ` Mikael Starvik
2007-12-14 16:26 ` Ralf Baechle
     [not found] <BFECAF9E178F144FAEF2BF4CE739C668056FE63A@exmail1.se.axis.com>
2007-12-17  6:45 ` Mikael Starvik
2007-12-17  6:45   ` Mikael Starvik

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox