Bug 29779 - Hard dependency on SSE2 instruction set with JIT
Summary: Hard dependency on SSE2 instruction set with JIT
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: 528+ (Nightly build)
Hardware: PC Linux
: P2 Major
Assignee: Nobody
Depends on:
Reported: 2009-09-27 02:32 PDT by Priit Laes (IRC: plaes)
Modified: 2009-09-28 13:43 PDT (History)
3 users (show)

See Also:

Patch v1 (3.49 KB, patch)
2009-09-28 13:35 PDT, Oliver Hunt
ggaren: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Priit Laes (IRC: plaes) 2009-09-27 02:32:40 PDT
It seems that a while ago JIT code has hard dependency on machines with SSE instruction set, as it has hardcoded xorpd instruction into the source. This breaks at least athlon-xp machines on x86 platform:

Program received signal SIGILL, Illegal instruction.
[Switching to Thread 0xb463b940 (LWP 10463)]
0xae14e01a in ?? ()
(gdb) x/8i $pc
0xae14e01a:	xorpd  %xmm0,%xmm0
0xae14e01e:	movsd  (%edi),%xmm1
0xae14e022:	ucomisd %xmm1,%xmm0
0xae14e026:	je     0xae14e1ce
0xae14e02c:	mov    $0xae340080,%eax
0xae14e031:	mov    0xaf051c3c,%edx
0xae14e037:	cmp    0x4(%eax),%edx
0xae14e03a:	jne    0xae14e60d

There's also similar bug report on debian bugtracker: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=548339

processor	: 0
vendor_id	: AuthenticAMD
cpu family	: 6
model		: 6
model name	: AMD Athlon(tm) XP 2000+
stepping	: 2
cpu MHz		: 1663.937
cache size	: 256 KB
fdiv_bug	: no
hlt_bug		: no
f00f_bug	: no
coma_bug	: no
fpu		: yes
fpu_exception	: yes
cpuid level	: 1
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 mmx fxsr sse syscall mmxext 3dnowext 3dnow
bogomips	: 3327.87
clflush size	: 32
power management: ts
Comment 1 Oliver Hunt 2009-09-28 13:35:18 PDT
Created attachment 40254 [details]
Patch v1
Comment 2 Geoffrey Garen 2009-09-28 13:39:16 PDT
Comment on attachment 40254 [details]
Patch v1

Comment 3 Oliver Hunt 2009-09-28 13:43:15 PDT
Committed r48830