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 Mon, 24 Jul 2006 19:08:41 +0100, Richard Sandiford <richard@codesourcery.com> wrote:
> You can set up DejaGNU's unix.exp to use rsh and rcp.  It's usually
> a case of creating a board file "foo.exp" like this:
...
> and then running with "make -k check RUNTESTFLAGS='--target_board foo'".
>
> FWIW, I can run a gcc test run for you on mips64-linux-gnu (and perhaps
> glibc too, depending on the time).  I should have the results by the weekend.

Good advice, thanks!  I'll setup the environment.  It might take some
time since I'm not familiar with dejagnu, so your results will be
appreciated.

> > +; Since rdhwr always generate a trap for now, it should not be be put
> > +; on delay slot.  It it was on delay slot, the emulation will be
> > +; slower.
> 
> Andreas has already commented on this, but the tense sounds wrong too.
> Maybe it would be better to have something like:
> 
> ; Putting rdhwr in a delay slot would make the kernel's emulation
> ; of it much slower.
> 
> right above the "can_delay" line.  Whatever you feel is best though.

Thank you.  Here is a updated patch with your suggestions.


2006-07-25  Atsushi Nemoto  <anemo@mba.ocn.ne.jp>

	partial PR target/28126
	* config/mips/mips.md (tls_get_tp_<mode>): Set can_delay to no.

Index: gcc/config/mips/mips.md
===================================================================
--- gcc/config/mips/mips.md	(revision 115735)
+++ gcc/config/mips/mips.md	(working copy)
@@ -5458,6 +5458,9 @@
   "HAVE_AS_TLS && !TARGET_MIPS16"
   ".set\tpush\;.set\tmips32r2\t\;rdhwr\t%0,$29\;.set\tpop"
   [(set_attr "type" "unknown")
+; Since rdhwr always generates a trap for now, putting it in a delay
+; slot would make the kernel's emulation of it much slower.
+   (set_attr "can_delay" "no")
    (set_attr "mode" "<MODE>")])
 
 ; The MIPS Paired-Single Floating Point and MIPS-3D Instructions.


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