Re: [PATCH 3/4] sparc32: return destination pointer on return from memcpy

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Kjetil Oftedal <oftedal@xxxxxxxxx>
Date: Wed, 19 Oct 2011 23:11:29 +0200 (CEST)

> On Wed, 19 Oct 2011, David Miller wrote:
> 
>> From: Konrad Eisele <konrad@xxxxxxxxxxx>
>> Date: Wed, 19 Oct 2011 10:33:25 +0200
>> 
>> > It seems to me that memcpy is tightly programmed. Is saving 2 lines of gdbstub.c
>> > diff worth a memcpy rewrite?
>> 
>> You really can't find another register to save the initial %o0 value in?
>> Have you even tried?
> 
> This might be considered a ugly hack. But what about using %y ? According 
> to the V8 manual, %y might be destroyed across a procedure call, and none 
> of the functions in memcpy.S use multiply/divide instructions. It is 
> however not mentioned as a available register in the section dealing with 
> leaf procedures. 
> 
> A quick test on a SS20 did not reveal any immediate side-effects, and 
> the return value of memcpy is now the destination pointer.

Never mind, I'll work on this myself.  Trying to get you to implement
this properly is hopeless.  Writing to and reading from the %y
register is extremely expensive compared to a regular register.
--
To unsubscribe from this list: send the line "unsubscribe sparclinux" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Kernel Development]     [DCCP]     [Linux ARM Development]     [Linux]     [Photo]     [Yosemite Help]     [Linux ARM Kernel]     [Linux SCSI]     [Linux x86_64]     [Linux Hams]

  Powered by Linux