Re: mmx instruction support on bohcs

Stanislav Shwartsman <[email protected]> Thu, 25 Apr 2013 12:58:44 +0300
Newsgroups gmane.comp.emulators.bochs.devel
Message-ID <CAAAheh10GTnutoELrGu4Wb1rDo6Q+_9s_e_nPh48-5zmtPp2Vw@mail.gmail.com>
Yes, everything is right. PXOR xmm, xmm is SSE2 instruction (and not MMX)
but you have SSE2 enabled.

But if your program doesn't set CR0.EM, CR4.OSFXSR and CR0.TS properly - it
will raise exception.
This is how the arch works.
I'd suggest you to read exceptions information for PXOR instruction in
Intel Software Developers manual.

Stanislav


On Thu, Apr 25, 2013 at 12:43 PM, Hatte John <[email protected]>wrote:

> And I have find some useful clue for that.But I am not quite sure.
>
> at cpu/fetchdecode.cc :
>   if (! BX_CPU_THIS_PTR sse_ok)
>   {
>      if (op_flags & BX_PREPARE_SSE)
>  {
>         if (i->execute != &BX_CPU_C::BxError) i->execute =
> &BX_CPU_C::BxNoSSE;
>         return(1);
>      }
>
> sse_ok affect bochs's execution for pxor instr .
>
> And sse_ok is assigned according to some bits of cr0 and cr4.
>
> hope for guide .
>
>
>
>
>
>
>
>
>
> 2013/4/25 Hatte John <[email protected]>
>
>> here is the output at the start of log file :
>>
>>  00000000000i[     ] System configuration
>> 00000000000i[     ]   processors: 1 (cores=1, HT threads=1)
>> 00000000000i[     ]   A20 line support: yes
>> 00000000000i[     ] IPS is set to 4000000
>> 00000000000i[     ] CPU configuration
>> 00000000000i[     ]   level: 6
>> 00000000000i[     ]   SMP support: no
>> 00000000000i[     ]   APIC support: xapic
>> 00000000000i[     ]   FPU support: yes
>> 00000000000i[     ]   MMX support: yes
>> 00000000000i[     ]   3dnow! support: no
>> 00000000000i[     ]   SEP support: yes
>> 00000000000i[     ]   SSE support: sse2
>> 00000000000i[     ]   XSAVE support: no
>> 00000000000i[     ]   AES support: no
>> 00000000000i[     ]   MOVBE support: no
>> 00000000000i[     ]   ADX support: no
>> 00000000000i[     ]   x86-64 support: no
>> 00000000000i[     ]   MWAIT support: yes
>>
>> My bochs halt at this :  0x40092587:  pxor   %xmm0,%xmm0 .
>>
>>
>> Thanks!
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> 2013/4/25 Stanislav <[email protected]>
>>
>>> Not, enough. How about complete config?****
>>>
>>> What Bochs writes you in the log file when it starts ?****
>>>
>>> ** **
>>>
>>> >BTW,do you know some irc channel dedicated to bochs ?****
>>>
>>> ** **
>>>
>>> Probably there is old IRC channel but nobody is there ….****
>>>
>>> ** **
>>>
>>> Stanislav****
>>>
>>> ** **
>>>
>>> *From:* Hatte John [mailto:[email protected]]
>>> *Sent:* Thursday, April 25, 2013 5:40 AM
>>> *To:* Stanislav
>>> *Cc:* [email protected]
>>> *Subject:* Re: [Bochs-developers] mmx instruction support on bohcs****
>>>
>>> ** **
>>>
>>> thanks at first .****
>>>
>>> ** **
>>>
>>> here is my cpuid config set :cpuid: mmx =1,   sep=1  ,and my coulevel is
>>> 6****
>>>
>>> ** **
>>>
>>> BTW,do you know some irc channel dedicated to bochs ?****
>>>
>>> ** **
>>>
>>> ** **
>>>
>>> ** **
>>>
>>> 2013/4/25 Stanislav <[email protected]>****
>>>
>>> You didn’t post your .bochsrc and configure options so nobody can guess
>>> what are doing wrong …****
>>>
>>>  ****
>>>
>>> *From:* Hatte John [mailto:[email protected]]
>>> *Sent:* Wednesday, April 24, 2013 6:52 PM
>>> *To:* [email protected]
>>> *Subject:* [Bochs-developers] mmx instruction support on bohcs****
>>>
>>>  ****
>>>
>>>    ****
>>>
>>>    My custom bochs can not recognize this inst:  pxor   %xmm0,%xmm0****
>>>
>>>    I think that is needed one config option set for cpuid in bochsrc
>>> file .****
>>>
>>>    how can I write the config option?****
>>>
>>>   ****
>>>
>>>    I have write mmx=1 , but it can not exec that instrc .****
>>>
>>>    So I am confused . I am using 2.6 version .****
>>>
>>>  ****
>>>
>>>    Thanks in advance !****
>>>
>>> ** **
>>>
>>
>>
>

------------------------------------------------------------------------------
Try New Relic Now & We'll Send You this Cool Shirt
New Relic is the only SaaS-based application performance monitoring service 
that delivers powerful full stack analytics. Optimize and monitor your
browser, app, & servers with just a few lines of code. Try New Relic
and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_apr

_______________________________________________
bochs-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bochs-developers