Talk About Network

Google


Register and Login
Nick
Password
Register create new account Sign up is FREE and you can post replies, new topics, bookmark posts and more!
Recover lost password


Programming > Assembly x86 > Re: Any more gr...
Latest [ Topics | Posts ] Archive Post A New Topic Post a Reply
<< Topic < Post Post 28 of 39 Topic 4612 of 4729
Post > Topic >>

Re: Any more graceful way to saturate adds?

by Jim Leonard <spamtrap@[EMAIL PROTECTED] > Apr 21, 2008 at 07:33 AM

On Apr 18, 1:21 pm, Terje Mathisen  <spamt...@[EMAIL PROTECTED]
> wrote:
> The only cache at all is a 6/8 byte prefetch queue for instruction
> bytes, but on 8088 that queue is very often empty since it has to
> compete with all memory accesses.

4 bytes, actually, on 8088.  It's 6 on 8086 and NEC V20/30.

> Taken branches were something like 4-8 cycles afair, might be wrong.

17, actually.  That's where the detective work comes in; to "beat" the
penalty of a jump, the alternate solution has to be 16 cycles or less
(including opcode fetch as you noted).

I think, based on what you wrote, that 17 cycles is not that big a
deal when alternate solutions would most likely be longer/slower.

> If most samples turn out to be in range, then we should simplify the
> code to optimize this path even further:

"Most" is subjective, but in an ADPCM decoder (what this code is for)
I would agree that the ratio of needing clamping to not needing is
about 1:8, so yes, most samples will be in range.

>   xor dx,dx
> next:                   ; bytes
>   mov dl,[bx+si]                ; 2+1
>   lodsb                 ; 1+1
>   cbw                   ; 1     -128 to 127
>   add ax,dx             ; 2     -128 to 383
>   test ah,0ffh
>    jnz clamp
>   stosb
>   jmp next
>
> clamp:
>    js underflow
>   mov al,255
>   stosb
>   jmp next
>
> underflow:
>   xor ax,ax
>   stosb
>   jmp next
>
> Terje

Looks like a winner; thanks for all your help!
 




 39 Posts in Topic:
Any more graceful way to saturate adds?
Jim Leonard <spamtrap  2008-04-10 14:59:55 
Re: Any more graceful way to saturate adds?
(Dick Wesseling) <spam  2008-04-11 02:32:55 
Re: Any more graceful way to saturate adds?
Terje Mathisen <spamt  2008-04-11 09:41:42 
Re: Any more graceful way to saturate adds?
Jim Leonard <spamtrap  2008-04-11 11:05:19 
Re: Any more graceful way to saturate adds?
Terence <spamtrap@[EM  2008-04-11 16:40:10 
Re: Any more graceful way to saturate adds?
Terence <spamtrap@[EM  2008-04-11 23:28:22 
Re: Any more graceful way to saturate adds?
"Wolfgang Kern"  2008-04-12 12:51:54 
Re: Any more graceful way to saturate adds?
Robert Redelmeier <red  2008-04-12 19:29:18 
Re: Any more graceful way to saturate adds?
Richard Russell <spam  2008-04-12 13:52:03 
Re: Any more graceful way to saturate adds?
Terje Mathisen <spamt  2008-04-13 15:31:59 
Re: Any more graceful way to saturate adds?
Terence <spamtrap@[EM  2008-04-12 17:03:07 
Re: Any more graceful way to saturate adds?
"Rod Pemberton"  2008-04-12 23:06:56 
Re: Any more graceful way to saturate adds?
"Rod Pemberton"  2008-04-12 23:10:57 
Re: Any more graceful way to saturate adds?
Terje Mathisen <spamt  2008-04-13 15:00:06 
Re: Any more graceful way to saturate adds?
"Rod Pemberton"  2008-04-13 11:27:29 
Re: Any more graceful way to saturate adds?
"Alexei A. Frounze&q  2008-04-13 17:19:25 
Re: Any more graceful way to saturate adds?
"Rod Pemberton"  2008-04-14 02:41:38 
Re: Any more graceful way to saturate adds?
Jim Leonard <spamtrap  2008-04-14 06:58:12 
Re: Any more graceful way to saturate adds?
"Alexei A. Frounze&q  2008-04-14 03:39:12 
Re: Any more graceful way to saturate adds?
pete <spamtrap@[EMAIL   2008-04-15 05:11:19 
Re: Any more graceful way to saturate adds?
Jim Leonard <spamtrap  2008-04-15 07:30:34 
Re: Any more graceful way to saturate adds?
pete <spamtrap@[EMAIL   2008-04-17 17:05:43 
Re: Any more graceful way to saturate adds?
Terje Mathisen <spamt  2008-04-17 13:14:08 
Re: Any more graceful way to saturate adds?
Danjel McGougan <spam  2008-04-18 02:31:30 
Re: Any more graceful way to saturate adds?
Terje Mathisen <spamt  2008-04-18 11:21:01 
Re: Any more graceful way to saturate adds?
dave <spamtrap@[EMAIL   2008-04-18 13:57:11 
Re: Any more graceful way to saturate adds?
Jim Leonard <spamtrap  2008-04-21 07:23:39 
Re: Any more graceful way to saturate adds?
Jim Leonard <spamtrap  2008-04-21 07:33:56 
Re: Any more graceful way to saturate adds?
Esra Sdrawkcab <spamt  2008-04-21 20:07:15 
Re: Any more graceful way to saturate adds?
Terje Mathisen <spamt  2008-04-22 11:01:06 
Re: Any more graceful way to saturate adds?
Esra Sdrawkcab <spamt  2008-04-23 08:20:41 
Re: Any more graceful way to saturate adds?
"H. Peter Anvin"  2008-06-02 09:43:53 
Re: Any more graceful way to saturate adds?
Terje Mathisen <spamt  2008-06-02 19:53:52 
Re: Any more graceful way to saturate adds?
aku ankka <spamtrap@[  2008-04-22 00:38:05 
Re: Any more graceful way to saturate adds?
Terje Mathisen <spamt  2008-04-22 11:03:00 
Re: Any more graceful way to saturate adds?
aku ankka <spamtrap@[  2008-04-22 23:43:47 
Re: Any more graceful way to saturate adds?
Jim Leonard <spamtrap  2008-05-01 13:13:06 
Re: Any more graceful way to saturate adds?
Terje Mathisen <spamt  2008-05-02 09:11:22 
Re: Any more graceful way to saturate adds?
pete <spamtrap@[EMAIL   2008-05-02 04:38:05 

Post A Reply:
  Go here to Signup

AddThis Feed Button


About - Advertising - Contact - Frequently Asked Questions - Privacy Policy - Terms of Use - Signup

Contact
tan12V112 Fri Jul 25 21:03:40 CDT 2008.