> Trying to avoid doing real work, I searched for "unsupported CPU" and > found it in coregrind/m_main.c. I then found VG_(machine_get_hwcaps)() in > m_machine.c. Putting a few VG_(printf)() calls into this routine, I found > that it fails this test: > > /* cmpxchg8b is a minimum requirement now; if we don't have it we > must simply give up. But all CPUs since Pentium-I have it, so > that doesn't seem like much of a restriction. */ > have_cx8 = (edx & (1<<8)) != 0; /* True => have cmpxchg8b */ > if (!have_cx8) > return False; > > Interestingly, /proc/cpuinfo does not show "cx8" on my machines, while it > does on yours. I didn't think my CPU was that old, since it runs at 1.2 > GHz (I bought the machines in late 2006). Looks like I am out of luck on > these two machines. Given the comment in the source code here, I doubt > very much that provisions would be made to support this CPU. :-)
It may be that the CPU does support cmpxchg8b but doesn't say it does. Try compiling and running the program none/tests/x86/cmpxchg8b.c in the 3.5.0 tree, and see if it runs natively OK (without SIGILL). If yes then comment out the relevant test in VG_(machine_get_hwcaps)(). J ------------------------------------------------------------------------------ Join us December 9, 2009 for the Red Hat Virtual Experience, a free event focused on virtualization and cloud computing. Attend in-depth sessions from your desk. Your couch. Anywhere. http://p.sf.net/sfu/redhat-sfdev2dev _______________________________________________ Valgrind-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/valgrind-users
