Revision: 6033
Author: [email protected]
Date: Wed Dec 15 08:10:13 2010
Log: Mark TranscendentalCacheSSE2Stub as allowing internal stub calls.
Mark pextrd instruction as requiring SSE 4.1.
Review URL: http://codereview.chromium.org/5901001
http://code.google.com/p/v8/source/detail?r=6033
Modified:
/branches/bleeding_edge/src/code-stubs.h
/branches/bleeding_edge/src/ia32/assembler-ia32.cc
/branches/bleeding_edge/src/ia32/code-stubs-ia32.cc
=======================================
--- /branches/bleeding_edge/src/code-stubs.h Tue Dec 14 05:21:29 2010
+++ /branches/bleeding_edge/src/code-stubs.h Wed Dec 15 08:10:13 2010
@@ -47,6 +47,7 @@
V(Compare) \
V(CompareIC) \
V(MathPow) \
+ V(TranscendentalCacheSSE2) \
V(RecordWrite) \
V(ConvertToDouble) \
V(WriteInt32ToHeapNumber) \
@@ -56,7 +57,6 @@
V(FastNewContext) \
V(FastCloneShallowArray) \
V(TranscendentalCache) \
- V(TranscendentalCacheSSE2) \
V(GenericUnaryOp) \
V(RevertToNumber) \
V(ToBoolean) \
=======================================
--- /branches/bleeding_edge/src/ia32/assembler-ia32.cc Tue Dec 14 05:21:29
2010
+++ /branches/bleeding_edge/src/ia32/assembler-ia32.cc Wed Dec 15 08:10:13
2010
@@ -2502,7 +2502,7 @@
void Assembler::pextrd(const Operand& dst, XMMRegister src, int8_t offset)
{
- ASSERT(CpuFeatures::IsEnabled(SSE2));
+ ASSERT(CpuFeatures::IsEnabled(SSE4_1));
EnsureSpace ensure_space(this);
last_pc_ = pc_;
EMIT(0x66);
=======================================
--- /branches/bleeding_edge/src/ia32/code-stubs-ia32.cc Wed Dec 15 05:56:41
2010
+++ /branches/bleeding_edge/src/ia32/code-stubs-ia32.cc Wed Dec 15 08:10:13
2010
@@ -2790,9 +2790,11 @@
__ bind(&call_runtime);
__ AllocateHeapNumber(eax, edi, no_reg, &skip_cache);
- __ push(eax);
__ movdbl(FieldOperand(eax, HeapNumber::kValueOffset), xmm1);
+ __ EnterInternalFrame();
+ __ push(eax);
__ CallRuntime(RuntimeFunction(), 1);
+ __ LeaveInternalFrame();
__ movdbl(xmm1, FieldOperand(eax, HeapNumber::kValueOffset));
__ Ret();
}
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev