some SSE2 opcodes work on non-SSE2 motherboards a.i.Athlon XP with effect that the prefix gets ignored and the instruction carried out as a MMX instruction.Since Lock-prefix doesn't work,are there any other similar opcodes like Lock-prefix?
Hello, can you elaborate further and describe exactly what you are trying to do?
Is this for a piece of code you are developing? If so, what is the purpose?
the prefix of a few SSE2 opcodes (pshufhw,movdqu,movq) get ignored on a Athlon XP and instead of initiating a #UD they are treated as MMX instructions and cause problems.Its desired to have #UD.
tracy_carver: AFAIK, OldBoy2k is trying to create the SSE2-emulator for non-SSE2 CPUs like Athlon XP in order to run SSE2-games like Assassin's Creed, Prince of Persia, Dead Space, Lost Planet, Devil May Cry 4 etc.
OldBoy2k: Look, I've told you that this task is almost impossible to complete, IMHO. The only way to make those PC games run on non-SSE2 CPUs is to start a global petition. That's why I was trying to make AMD help us to suggest for PC game developers/publishers to release the non-SSE2 binaries of their games.
BTW, tracy_carver, would you like to help us in such a struggle?
At least i try to help finding infos and solutions to get past the prefix problem.
Originally posted by: avk AFAIK, OldBoy2k is trying to create the SSE2-emulator for non-SSE2 CPUs like Athlon XP in order to run SSE2-games..
There won't be any success in petitions afaik.
If you want to develop SSE3 and SSE2 emulator you can do it! But it is does not help you to run application which support SSE2, SSE3. You can try to USE SSE2, SSE3 exception events to interrupt SSE2 and SSE3 operations. I mean you need to write driver which always scan ALL needed registers and register any related interrupts to determinate if some application try to use SSE2 and SSE3, after you need to fetch this SSE2 and SSE3 command into you driver and emulate it!
OldBoy2k: Every human being has its own point of view. Maybe you're right about petition and maybe I'm wrong about the SSE2-emulator. Let me wish you good luck in your hard but very interesting work !
I think there is such an emulator out there...
I'm not on how this emulator handle the prefix problem, my guess is by translating and for games this should bring the best performance since there isn't much SSE2 instructions usefull for games.
Another way may be by enabling FPU emulation (or only MMX, not sure if possible, but don't think so) and then emulating all x87, MMX, SSE and SSE2 instructions on the trap.