Message from discussion
r12623 committed - Fix ARM bug introduced in r12604 that caused crashes on ARM...
Received: by 10.236.182.201 with SMTP id o49mr2157136yhm.35.1348731966804;
Thu, 27 Sep 2012 00:46:06 -0700 (PDT)
X-BeenThere: v8-dev@googlegroups.com
Received: by 10.236.149.34 with SMTP id w22ls4296517yhj.8.gmail; Thu, 27 Sep
2012 00:46:06 -0700 (PDT)
Received: by 10.236.115.6 with SMTP id d6mr2477215yhh.40.1348731966101;
Thu, 27 Sep 2012 00:46:06 -0700 (PDT)
Received: by 10.236.115.6 with SMTP id d6mr2477214yhh.40.1348731966084;
Thu, 27 Sep 2012 00:46:06 -0700 (PDT)
Return-Path: <3PQRkUBAKBl48K9AOEPA-JKNALHUCKKCHA.8KIRe-9ARCKKCHACNKQLO....@codesite.bounces.google.com>
Received: from mail-yx0-f203.google.com (mail-yx0-f203.google.com [209.85.213.203])
by gmr-mx.google.com with ESMTPS id u17si595880ank.0.2012.09.27.00.46.06
(version=TLSv1/SSLv3 cipher=OTHER);
Thu, 27 Sep 2012 00:46:06 -0700 (PDT)
Received-SPF: pass (google.com: domain of 3PQRkUBAKBl48K9AOEPA-JKNALHUCKKCHA.8KIRe-9ARCKKCHACNKQLO....@codesite.bounces.google.com designates 209.85.213.203 as permitted sender) client-ip=209.85.213.203;
Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of 3PQRkUBAKBl48K9AOEPA-JKNALHUCKKCHA.8KIRe-9ARCKKCHACNKQLO....@codesite.bounces.google.com designates 209.85.213.203 as permitted sender) smtp.mail=3PQRkUBAKBl48K9AOEPA-JKNALHUCKKCHA.8KIRe-9ARCKKCHACNKQLO....@codesite.bounces.google.com; dkim=pass header...@google.com
Received: by yenr5 with SMTP id r5so6390yen.0
for <v8-dev@googlegroups.com>; Thu, 27 Sep 2012 00:46:06 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=google.com; s=20120113;
h=mime-version:x-generated-by:message-id:date:subject:from:to
:content-type;
bh=kpJ9h1aCH0+CwfAJ4ejeeMzKor4CmQYhpeMwHrW5odw=;
b=jGI7KUr0XDcXeXAAEqi1HvaUjkiDIqTmaBKqf8AEAApSimd5beDKdYnO/pOfCOWwik
F9QycJJZw1eH+w/G1RmdZKFZcJb5RfbeyDYbFSFgVK0HzwetTR4wLyb8rdqvKDudsl62
3CbTQ3FuwOvAFavTYiGC4/N4hEJ43hyryZ0ai3i/tomz9tKpwxvLiz4eI8+JRFuTA2Re
vmbKeaCYNI0ym/zn8M1O19GSUYWyal2EDySbc2vLVzCe1h+baOEEC2RukJfMrKAXxpZt
GRSXVDJvIGIfRGSCziSIGdXQ37mCU6PiLQ5OzkTL15hJUJZrQxJvozfCo8gVVn3RPdm5
d1VA==
MIME-Version: 1.0
Received: by 10.224.223.84 with SMTP id ij20mr2388442qab.5.1348731965910; Thu,
27 Sep 2012 00:46:05 -0700 (PDT)
X-Generated-By: Google Code
Message-ID: <20cf3074b548b9b20104caaa2...@google.com>
Date: Thu, 27 Sep 2012 07:46:05 +0000
Subject: [v8] r12623 committed - Fix ARM bug introduced in r12604 that caused
crashes on ARM...
From: codesite-nore...@google.com
To: v8-dev@googlegroups.com
Content-Type: text/plain; charset=ISO-8859-1; format=flowed; delsp=yes
Revision: 12623
Author: erik.co...@gmail.com
Date: Thu Sep 27 00:45:49 2012
Log: Fix ARM bug introduced in r12604 that caused crashes on ARM
on crypto-md5 from SunSpider. Bug=152402
Review URL: https://chromiumcodereview.appspot.com/10991045
http://code.google.com/p/v8/source/detail?r=12623
Modified:
/branches/bleeding_edge/src/arm/code-stubs-arm.cc
/branches/bleeding_edge/src/arm/ic-arm.cc
/branches/bleeding_edge/src/arm/macro-assembler-arm.cc
/branches/bleeding_edge/src/arm/macro-assembler-arm.h
/branches/bleeding_edge/src/arm/stub-cache-arm.cc
=======================================
--- /branches/bleeding_edge/src/arm/code-stubs-arm.cc Wed Sep 26 04:35:42
2012
+++ /branches/bleeding_edge/src/arm/code-stubs-arm.cc Thu Sep 27 00:45:49
2012
@@ -7561,7 +7561,9 @@
// Array literal has ElementsKind of FAST_DOUBLE_ELEMENTS.
__ bind(&double_elements);
__ ldr(r5, FieldMemOperand(r1, JSObject::kElementsOffset));
- __ StoreNumberToDoubleElements(r0, r3, r1, r5, r6, r7, r9, r2,
+ __ StoreNumberToDoubleElements(r0, r3, r1,
+ // Overwrites all regs after this.
+ r5, r6, r7, r9, r2,
&slow_elements);
__ Ret();
}
=======================================
--- /branches/bleeding_edge/src/arm/ic-arm.cc Tue Sep 25 06:35:42 2012
+++ /branches/bleeding_edge/src/arm/ic-arm.cc Thu Sep 27 00:45:49 2012
@@ -1380,8 +1380,8 @@
__ StoreNumberToDoubleElements(value,
key,
receiver,
- elements,
- r3,
+ elements, // Overwritten.
+ r3, // Scratch regs...
r4,
r5,
r6,
=======================================
--- /branches/bleeding_edge/src/arm/macro-assembler-arm.cc Tue Sep 25
07:32:07 2012
+++ /branches/bleeding_edge/src/arm/macro-assembler-arm.cc Thu Sep 27
00:45:49 2012
@@ -1988,7 +1988,7 @@
destination = FloatingPointHelper::kCoreRegisters;
}
- Register untagged_value = receiver_reg;
+ Register untagged_value = elements_reg;
SmiUntag(untagged_value, value_reg);
FloatingPointHelper::ConvertIntToDouble(this,
untagged_value,
=======================================
--- /branches/bleeding_edge/src/arm/macro-assembler-arm.h Tue Sep 25
07:32:07 2012
+++ /branches/bleeding_edge/src/arm/macro-assembler-arm.h Thu Sep 27
00:45:49 2012
@@ -816,6 +816,7 @@
void StoreNumberToDoubleElements(Register value_reg,
Register key_reg,
Register receiver_reg,
+ // All regs below here overwritten.
Register elements_reg,
Register scratch1,
Register scratch2,
=======================================
--- /branches/bleeding_edge/src/arm/stub-cache-arm.cc Fri Sep 7 02:01:54
2012
+++ /branches/bleeding_edge/src/arm/stub-cache-arm.cc Thu Sep 27 00:45:49
2012
@@ -4686,6 +4686,7 @@
__ StoreNumberToDoubleElements(value_reg,
key_reg,
receiver_reg,
+ // All registers after this are
overwritten.
elements_reg,
scratch1,
scratch2,