|
From: | Eric Fronberg |
Subject: | [Qemu-discuss] Mac access to sse4.2 x86 extentions |
Date: | Thu, 1 Nov 2012 17:53:51 -0500 |
I'm running into problems with qemu. I tend to pack my emails with lots of data (trying to identify the issue first) Installed on my early 2011 macbook pro via MacPorts. (v1.2.0) I've verified that sse4.2 functionality is available on this mac. I'm using the following command to invoke. /usr/local/bin/qemu-system-x86_64 -cpu SandyBridge,+sse,+sse4_2,+xsave,+avx,check -device e1000,netdev=mynet0 -serial telnet::4446,server -m 768M -vga std -hda /Users/enf/enf-default.img -netdev user,id=mynet0 -hdc /dev/null Qemu comes up but complains about ... warning: host cpuid 0000_0001 lacks requested flag 'sse4.1|sse4_1' [0x00080000] warning: host cpuid 0000_0001 lacks requested flag 'sse4.2|sse4_2' [0x00100000] ... Issue 1 (?) ------- I downloaded the source code and noticed that host_cpuid will ALWAYS return 0 as CONFIG_KVM is not defined. This seems wrong. ( I hacked up the code to comment out the CONFIG_KVM and I don't see the warnings any more). Seems that the cpuid in the mac (bsd) environment has been dummied down. Is this correct. Issue 2 ------- Even with code that retrieves the correct cpuid, I run into a problem. Running code that uses some of the sse4.2 x86 extensions but gets an invalid opcode error when trying to execute the sse4.2 instructions. Note that the same code works on a non VM system. Issue3 (related probably to issue 2) ------ Again running the modified qemu code, I'm getting the hostid directly to see if sse4.2 functionally is present. Call returns back that VM doesn't support sse4.2. So it would seem that beyond the host_cpuid() function, there are additional limitations on the instruction set in the VM. How do I get qemu to give me a more fully functional emulation? thanks! -- Eric
|
[Prev in Thread] | Current Thread | [Next in Thread] |