Date: Wed, 3 Feb 2010 21:52:21 -0800 (PST) From: Neelkanth Natu <neelnatu@yahoo.com> To: "C. Jayachandran" <c.jayachandran@gmail.com> Cc: freebsd-mips@freebsd.org Subject: Re: mips ptrace.S fix Message-ID: <203531.99897.qm@web34402.mail.mud.yahoo.com>
index | next in thread | raw e-mail
Hi, I have committed JC's original patch to restore the 'gp' register after the 'jalr'. http://svn.freebsd.org/viewvc/base?view=revision&revision=203475 Sorry about the churn. best Neel --- On Wed, 2/3/10, Neelkanth Natu <neelnatu@yahoo.com> wrote: > From: Neelkanth Natu <neelnatu@yahoo.com> > Subject: Re: mips ptrace.S fix > To: "C. Jayachandran" <c.jayachandran@gmail.com> > Cc: "Rui Paulo" <rpaulo@freebsd.org>, freebsd-mips@freebsd.org > Date: Wednesday, February 3, 2010, 6:56 PM > Hi JC, > > --- On Wed, 2/3/10, C. Jayachandran <c.jayachandran@gmail.com> > wrote: > > > From: C. Jayachandran <c.jayachandran@gmail.com> > > Subject: Re: mips ptrace.S fix > > To: "Neelkanth Natu" <neelnatu@yahoo.com> > > Cc: "Rui Paulo" <rpaulo@freebsd.org>, > freebsd-mips@freebsd.org > > Date: Wednesday, February 3, 2010, 6:09 PM > > On Thu, Feb 4, 2010 at 1:01 AM, > > Neelkanth Natu <neelnatu@yahoo.com> > > wrote: > > > Your patch looks good. I have a few comments > though. > > See inline: > > > > > > Index: lib/libc/mips/sys/ptrace.S > > > > > > =================================================================== > > > --- lib/libc/mips/sys/ptrace.S (revision > 203379) > > > +++ lib/libc/mips/sys/ptrace.S (working > copy) > > > @@ -42,14 +42,26 @@ > > > #endif /* LIBC_SCCS and not lint */ > > > > > > LEAF(ptrace) > > > + .frame > sp,40,ra > > > > > >>> space missing after the ',' > > > > > > + > .mask 0x80000000, -8 > > > #ifdef __ABICALLS__ > > > .set > noreorder > > > .cpload t9 > > > .set > reorder > > > #endif > > > + subu > sp, sp, 40 > > > + sw > ra, 32(sp) > > > +#ifdef __ABICALLS__ > > > + .cprestore 16 > > > +#endif > > > la > t9, _C_LABEL(__error) # > > locate address of errno > > > - jalr > t9 > > > + jalr > t9 > > > > > >>> this change is not required - the newly > added > > line has a tab at the end. > > > > > > +#ifdef __ABICALLS__ > > > + lw > gp, 16(sp) > > > +#endif > > > > > >>> this is redundant - the assembler will > > generate exactly the same line of > > >>> code due to the .cprestore directive > above. > > > > Are you sure about this? I think the assembler > > generates the gp load > > only for the 'jal' and 'bal' not for 'jalr'. > > > > Probably the two lines(la and jalr) can be replaced by > a > > jal. > > > > You are right. My eyes glossed over between the 'jal' and > 'jalr'. I think > combining the two instructions into a single 'jal' is the > way to go. > > best > Neel > > > Regards, > > JC. > > > > > >help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?203531.99897.qm>
