On 10/19/06, Artem Aliev <[EMAIL PROTECTED]> wrote:
Eugeny,

> The problem can be easily fixed by changing int16 to unit16 in
> atomic16_dec. Do you think this is accaptable way to fix the problem.


> BTW, could somebody explain why 16-bit atomic operation is used for
> 32-bit value?
The suspend_request could be 16bit value some time ago.
Could you please file a JIRA issue with a patch.
It looks reasonable to replace  inc16 by inc32 as a fix.

Oh, I see. Sure, I'll provide a patch soon....
Evgueni


Thanks
Artem




On 10/19/06, Evgueni Brevnov <[EMAIL PROTECTED]> wrote:
> Hi,
>
> Today, I had several hangs of cunit tests. It turned out to be
> infinite cycling in
> while loop of atomic16_inc/atomic16_dec (see
> vm/thread/src/thread_native_suspend.c)
>
> Here is a snip of assembler code produced by msvc for atomic16_dec:
>
> call        port_atomic_cas16 (10004A90h)
> add         esp,0Ch
> movzx       edx,ax <-----------------------------zero extention
> movsx       eax,word ptr [old_value] <----sign extention
> cmp         edx,eax
> je          atomic16_inc+45h (10004A15h)
>
> The problem can be easily fixed by changing int16 to unit16 in
> atomic16_dec. Do you think this is accaptable way to fix the problem.
>
> BTW, could somebody explain why 16-bit atomic operation is used for
> 32-bit value?
>
> Thanks
> Evgueni
>
> ---------------------------------------------------------------------
> Terms of use : http://incubator.apache.org/harmony/mailing.html
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to