GNATS-1110: in_cksum_hdr error in PC386 BSP
Joel Sherrill
joel.sherrill at oarcorp.com
Thu Jul 6 15:29:29 UTC 2006
Ralf Corsepius wrote:
>On Wed, 2006-07-05 at 13:47 -0500, Eric Norum wrote:
>
>
>>I'm beginning to think that we really ought to just switch over to the
>>C version which was posted with the original problem report.
>>
>>
>I'm inclined to agree. In particular, from my experience, in many cases,
>GCC is doing a pretty good job at optimizing byte ops etc., and thereby
>rendering things much easier maintenance-wise.
>
>
I don't care which version ends up committed -- we just need to close
this one before
the branch is made.
>
>
>>>Till Straumann wrote:
>>>
>>>
>>>
>>>
>>>>I just found another problem with
>>>>in_cksum_hdr (freebsd mailing list).
>>>>
>>>>
>>>>Currently, (i386, ppc) the algorithm is split into several
>>>>'asm' constructs and we assume that the carry bit
>>>>is preserved across these. This is not a valid assumption,
>>>>however.
>>>>
>>>>
>This explanation makes sense - I had a gut feeling the explanation might
>be along these lines, but didn't dare to pronounce it ;)
>
>
>
>>>Does their code base have a fixed version?
>>>
>>>
>>>
>>>
>>>>We definitively should try harder to eliminate 'asm'
>>>>
>>>>
>>>>
>>>>
>>>Unfortunately, it is a necessary evel.
>>>
>>>
>Really? Did anybody analyze the asm resulting from using the C version
>of these routines?
>Unless they perform significantly worse than asm, or unless the asm is
>eye-strikingly simple (which it had not been), I would not think using
>asm is still worth it.
>
>Ralf
>
>
>
>
More information about the users
mailing list