From 33bc7f974f72e1a7d8a99946e1f2f2b62bd1c184 Mon Sep 17 00:00:00 2001 From: "ricow@chromium.org" Date: Wed, 2 Mar 2011 07:52:14 +0000 Subject: [PATCH] X64: Always use rax as left register from DoInstanceOfKnownGlobal. On IA32 we use InstanceofStub::left(), but on x64 we have just used rax and rdx directly. This fixes the assertion crashes on x64 crankshaft. Review URL: http://codereview.chromium.org/6596101 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7010 ce2b1a6d-e550-0410-aec6-3dcde31c8c00 --- src/x64/lithium-x64.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/x64/lithium-x64.cc b/src/x64/lithium-x64.cc index 59c0935..f0ab11e 100644 --- a/src/x64/lithium-x64.cc +++ b/src/x64/lithium-x64.cc @@ -1158,7 +1158,7 @@ LInstruction* LChunkBuilder::DoInstanceOf(HInstanceOf* instr) { LInstruction* LChunkBuilder::DoInstanceOfKnownGlobal( HInstanceOfKnownGlobal* instr) { LInstanceOfKnownGlobal* result = - new LInstanceOfKnownGlobal(UseRegisterAtStart(instr->value())); + new LInstanceOfKnownGlobal(UseFixed(instr->value(), rax)); return MarkAsCall(DefineFixed(result, rax), instr); } -- 2.7.4