Re: mmx instruction support on bohcs
Hatte John <[email protected]> Mon, 12 Aug 2013 23:40:56 +0800
| Newsgroups | gmane.comp.emulators.bochs.devel |
|---|---|
| Message-ID | <CAOo4JD=ZSQQh=EY74t5y2-452k3o_aTtf1FgKuMJu4k6L5dVww@mail.gmail.com> |
Do you mean my program does not match the bochs configuration ? I have not set CR0 and CR4 to accurate state , which is needed by bochs , so exception happened . Am I right? Thanks! 2013/4/25 Stanislav Shwartsman <[email protected]>: > 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 ! >>>> >>>> >>> >>> >> > ------------------------------------------------------------------------------ Get 100% visibility into Java/.NET code with AppDynamics Lite! It's a free troubleshooting tool designed for production. Get down to code-level detail for bottlenecks, with <2% overhead. Download for free and get started troubleshooting in minutes. http://pubads.g.doubleclick.net/gampad/clk?id=48897031&iu=/4140/ostg.clktrk