Both Intel and AMD manuals say that if CPUID returns flags saying that
"FPU" and "CMOV" are present, then "FCMOV" is present too.

If you want to be sure, just try it the hard way. Copy the following
code into a text file (named "fcmov.s" in this example):

.code32
.text
.global _start
_start:
fldpi
fldpi
mov $0x0,%eax
cmp $0x0,%eax
fcmove %st(1),%st
mov $0x1,%eax
int $0x80

Then run this:

as -o fcmov.o fcmov.s
ld -o fcmov fcmov.o
./fcmov

If nothing happens, your processor can do FCMOV. If you get a SIGILL
(illegal instruction exception), congratulations, your processor is
FCMOV-less.

You'll have to have some sort of assembler with AT&T syntax support
(normally called "as" or "gas") as well as a linker ("ld") installed on
your machine. Alternatively, you can assemble and link it on a different
machine with the same major and minor kernel version, such as 2.6, and
then run it on your target.

(The code runs only on Linux (the last two statements, asking the system
to quit the process, are Linux-specific). It shouldn't touch any of your
devices, unless the kernel is defective, so there shouldn't be any data
loss, but just like everything originating from me, no warranty is given.)

If you still get bone weight errors even though this program completes
without breaking, then the culprit isn't FCMOV.

~~ Ondra

On 06.10.07 16:54 Uhr, Steve Sumichrast wrote:
I Don't think this is accurate information -- My linux box (AMD Barton 3000+ 
running Arch Linux kernel 2.6.20) is having the bad bone weight error -- and I 
have both of those listed in the output.

However, I do not have FCMOV -- I have CMOV support..  Guessing that's what's 
doing it.

-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Ondrej Hošek
Sent: Saturday, October 06, 2007 08:17 AM
To: hlds_linux@list.valvesoftware.com
Subject: Re: [hlds_linux] Team Fortress 2/Dedicated Server updated

grep ext /proc/cpuinfo

If the output includes "fpu" and "cmov", chances are your machine can do it.

As for the "why"... Windows and Linux use different compilers. GCC
probably compiles into code using FCMOV while cl.exe doesn't.

~~ Ondra

On 06.10.07 5:59 Uhr, Kevin J. Anderson wrote:

In what processor range(s) was this FCMOV introduced?

Alfred Reynolds wrote:

Your CPU needs to support the FCMOV instruction, if you get the bone
weight problem then chances are it doesn't.

- Alfred

Daron Dodd wrote:

i see no fix to the bad bone weight crashes

On 10/5/07, Jason Ruymen <[EMAIL PROTECTED]> wrote:

Required updates to Team Fortress have been released.  Please run
hldsupdatetool to receive them.  The specific changes include:

- Fixed certain crashes with paged pool memory
- Added a warning for when paged pool memory is low
- Fixed some prediction errors with player avoidance
- Fixed columns and row bunching up in server browser
- Fixed a rare bug where the wrong launcher.dll was being used to
launch
the game
- Fixed teleporter/spawn doorway exploit

Jason


_______________________________________________
To unsubscribe, edit your list preferences, or view the list archives, please 
visit:
http://list.valvesoftware.com/mailman/listinfo/hlds_linux

Reply via email to