Wrong code emited for psrlw xmm, imm
Peter Johnson
peter at tortall.net
Thu Oct 23 19:33:09 PDT 2003
Fixed in modules/arch/x86/x86id.re r1.61. Thanks for the report!
Peter
On Fri, 24 Oct 2003, Edouard Gomez wrote:
> Edouard Gomez (ed.gomez at free.fr) wrote:
> > Test case:
> > section .text
> > foobar:
> > psrlw xmm0, 1 ; assembled to 66 0f d1 d0 01 instead of 66 0f 71 d0 01
> > psrld xmm0, 1 ; assembled to 66 0f d2 d0 01 instead of 66 0f 72 d0 01
> > psrlq xmm0, 1 ; assembled to 66 0f d3 d0 01 instead of 66 0f 73 d0 01
> >
> > The mmx versions are fine, i suspect a typo somewhere in x86id.re as it
> > assembles this code to the psrl?? xmm, xmm version.
>
> you should check all pshift derived instructions, psrad is buggy too. I
> think these are the causes of xvid segfaults as they gnerated code that
> reading at [esi], which of course is not a valid address.
>
> --
> Edouard Gomez
> _______________________________________________
> bug-yasm mailing list
> bug-yasm at tortall.net
> http://cvs.tortall.net/mailman/listinfo/bug-yasm
>
More information about the bug-yasm
mailing list