|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
Description: mips arch support backported to v8 3.14 branch
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
Origin: https://github.com/paul99/v8m-rb/tree/dm-mipsbe-3.14
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
Last-Update: 2014-04-09
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
Acked-by: Jérémy Lal <kapouer@melix.org>
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
--- a/Makefile
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+++ b/Makefile
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -133,7 +133,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
# Architectures and modes to be compiled. Consider these to be internal
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
# variables, don't override them (use the targets instead).
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
-ARCHES = ia32 x64 arm mipsel
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ARCHES = ia32 x64 arm mipsel mips
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
DEFAULT_ARCHES = ia32 x64 arm
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
MODES = release debug
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
ANDROID_ARCHES = android_ia32 android_arm
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -168,10 +168,6 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
$(MAKE) -C "$(OUTDIR)" BUILDTYPE=$(BUILDTYPE) \
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
builddir="$(abspath $(OUTDIR))/$(BUILDTYPE)"
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
-mips mips.release mips.debug:
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- @echo "V8 does not support big-endian MIPS builds at the moment," \
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- "please use little-endian builds (mipsel)."
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
-
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
# Compile targets. MODES and ARCHES are convenience targets.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
.SECONDEXPANSION:
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
$(MODES): $(addsuffix .$$@,$(DEFAULT_ARCHES))
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
--- a/build/common.gypi
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+++ b/build/common.gypi
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -176,7 +176,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
'V8_TARGET_ARCH_IA32',
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
],
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
}], # v8_target_arch=="ia32"
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- ['v8_target_arch=="mipsel"', {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ ['v8_target_arch=="mipsel" or v8_target_arch=="mips"', {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
'defines': [
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
'V8_TARGET_ARCH_MIPS',
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
],
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -187,12 +187,17 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
['mipscompiler=="yes"', {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
'target_conditions': [
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
['_toolset=="target"', {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- 'cflags': ['-EL'],
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- 'ldflags': ['-EL'],
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
'conditions': [
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ ['v8_target_arch=="mipsel"', {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ 'cflags': ['-EL'],
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ 'ldflags': ['-EL'],
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ }],
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ ['v8_target_arch=="mips"', {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ 'cflags': ['-EB'],
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ 'ldflags': ['-EB'],
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ }],
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
[ 'v8_use_mips_abi_hardfloat=="true"', {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
'cflags': ['-mhard-float'],
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- 'ldflags': ['-mhard-float'],
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
}, {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
'cflags': ['-msoft-float'],
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
'ldflags': ['-msoft-float'],
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -202,7 +207,8 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
}],
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
['mips_arch_variant=="loongson"', {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
'cflags': ['-mips3', '-Wa,-mips3'],
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- }, {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ }],
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ ['mips_arch_variant=="mips32r1"', {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
'cflags': ['-mips32', '-Wa,-mips32'],
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
}],
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
],
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -290,7 +296,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
['(OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="solaris" \
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
or OS=="netbsd" or OS=="mac" or OS=="android") and \
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
(v8_target_arch=="arm" or v8_target_arch=="ia32" or \
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- v8_target_arch=="mipsel")', {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ v8_target_arch=="mipsel" or v8_target_arch=="mips")', {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
# Check whether the host compiler and target compiler support the
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
# '-m32' option and set it if so.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
'target_conditions': [
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
--- a/build/standalone.gypi
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+++ b/build/standalone.gypi
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -68,6 +68,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
'conditions': [
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
['(v8_target_arch=="arm" and host_arch!="arm") or \
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
(v8_target_arch=="mipsel" and host_arch!="mipsel") or \
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ (v8_target_arch=="mips" and host_arch!="mips") or \
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
(v8_target_arch=="x64" and host_arch!="x64") or \
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
(OS=="android")', {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
'want_separate_host_toolset': 1,
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
--- a/src/conversions-inl.h
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+++ b/src/conversions-inl.h
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -75,7 +75,11 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
if (x < k2Pow52) {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
x += k2Pow52;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
uint32_t result;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#ifndef BIG_ENDIAN_FLOATING_POINT
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
Address mantissa_ptr = reinterpret_cast<Address>(&x);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#else
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ Address mantissa_ptr = reinterpret_cast<Address>(&x) + 4;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#endif
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// Copy least significant 32 bits of mantissa.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
memcpy(&result, mantissa_ptr, sizeof(result));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
return negative ? ~result + 1 : result;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
--- a/src/globals.h
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+++ b/src/globals.h
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -83,7 +83,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
#if CAN_USE_UNALIGNED_ACCESSES
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
#define V8_HOST_CAN_READ_UNALIGNED 1
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
#endif
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
-#elif defined(__MIPSEL__)
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#elif defined(__MIPSEL__) || defined(__MIPSEB__)
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
#define V8_HOST_ARCH_MIPS 1
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
#define V8_HOST_ARCH_32_BIT 1
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
#else
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -101,13 +101,17 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
#define V8_TARGET_ARCH_IA32 1
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
#elif defined(__ARMEL__)
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
#define V8_TARGET_ARCH_ARM 1
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
-#elif defined(__MIPSEL__)
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#elif defined(__MIPSEL__) || defined(__MIPSEB__)
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
#define V8_TARGET_ARCH_MIPS 1
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
#else
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
#error Target architecture was not detected as supported by v8
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
#endif
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
#endif
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#if defined(__MIPSEB__)
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#define BIG_ENDIAN_FLOATING_POINT 1
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#endif
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// Check for supported combinations of host and target architectures.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
#if defined(V8_TARGET_ARCH_IA32) && !defined(V8_HOST_ARCH_IA32)
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
#error Target architecture ia32 is only supported on ia32 host
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
--- a/src/mips/assembler-mips.cc
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+++ b/src/mips/assembler-mips.cc
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -1631,10 +1631,17 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
void Assembler::ldc1(FPURegister fd, const MemOperand& src) {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// Workaround for non-8-byte alignment of HeapNumber, convert 64-bit
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// load to two 32-bit loads.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#ifndef BIG_ENDIAN_FLOATING_POINT
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
GenInstrImmediate(LWC1, src.rm(), fd, src.offset_);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
FPURegister nextfpreg;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
nextfpreg.setcode(fd.code() + 1);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
GenInstrImmediate(LWC1, src.rm(), nextfpreg, src.offset_ + 4);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#else
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ GenInstrImmediate(LWC1, src.rm(), fd, src.offset_ + 4);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ FPURegister nextfpreg;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ nextfpreg.setcode(fd.code() + 1);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ GenInstrImmediate(LWC1, src.rm(), nextfpreg, src.offset_);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#endif
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
}
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -1646,10 +1653,17 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
void Assembler::sdc1(FPURegister fd, const MemOperand& src) {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// Workaround for non-8-byte alignment of HeapNumber, convert 64-bit
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// store to two 32-bit stores.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#ifndef BIG_ENDIAN_FLOATING_POINT
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
GenInstrImmediate(SWC1, src.rm(), fd, src.offset_);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
FPURegister nextfpreg;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
nextfpreg.setcode(fd.code() + 1);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
GenInstrImmediate(SWC1, src.rm(), nextfpreg, src.offset_ + 4);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#else
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ GenInstrImmediate(SWC1, src.rm(), fd, src.offset_ + 4);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ FPURegister nextfpreg;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ nextfpreg.setcode(fd.code() + 1);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ GenInstrImmediate(SWC1, src.rm(), nextfpreg, src.offset_ );
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#endif
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
}
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
--- a/src/mips/assembler-mips.h
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+++ b/src/mips/assembler-mips.h
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -74,6 +74,13 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
static const int kNumRegisters = v8::internal::kNumRegisters;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
static const int kNumAllocatableRegisters = 14; // v0 through t7.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
static const int kSizeInBytes = 4;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#if __BYTE_ORDER == __LITTLE_ENDIAN
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ static const int kMantissaOffset = 0;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ static const int kExponentOffset = 4;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#else
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ static const int kMantissaOffset = 4;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ static const int kExponentOffset = 0;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#endif
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
static int ToAllocationIndex(Register reg) {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
return reg.code() - 2; // zero_reg and 'at' are skipped.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
--- a/src/mips/builtins-mips.cc
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+++ b/src/mips/builtins-mips.cc
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -869,9 +869,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
ASSERT_EQ(3 * kPointerSize, JSObject::kHeaderSize);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ LoadRoot(t7, Heap::kUndefinedValueRootIndex);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
if (count_constructions) {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ lw(a0, FieldMemOperand(a2, Map::kInstanceSizesOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ Ext(a0, a0, Map::kPreAllocatedPropertyFieldsByte * kBitsPerByte,
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- kBitsPerByte);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ lbu(a0, FieldMemOperand(a2, Map::kPreAllocatedPropertyFieldsOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ sll(t0, a0, kPointerSizeLog2);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ addu(a0, t5, t0);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// a0: offset of first field after pre-allocated fields
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -899,14 +897,12 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ lbu(a3, FieldMemOperand(a2, Map::kUnusedPropertyFieldsOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// The field instance sizes contains both pre-allocated property fields
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// and in-object properties.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ lw(a0, FieldMemOperand(a2, Map::kInstanceSizesOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ Ext(t6, a0, Map::kPreAllocatedPropertyFieldsByte * kBitsPerByte,
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- kBitsPerByte);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ lbu(t6, FieldMemOperand(a2, Map::kPreAllocatedPropertyFieldsOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ Addu(a3, a3, Operand(t6));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ Ext(t6, a0, Map::kInObjectPropertiesByte * kBitsPerByte,
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- kBitsPerByte);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ lbu(t6, FieldMemOperand(a2, Map::kInObjectPropertiesOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ subu(a3, a3, t6);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// Done if no extra properties are to be allocated.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ Branch(&allocated, eq, a3, Operand(zero_reg));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ Assert(greater_equal, "Property allocation count failed.",
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
--- a/src/mips/code-stubs-mips.cc
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+++ b/src/mips/code-stubs-mips.cc
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -536,13 +536,8 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
void ConvertToDoubleStub::Generate(MacroAssembler* masm) {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
-#ifndef BIG_ENDIAN_FLOATING_POINT
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
Register exponent = result1_;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
Register mantissa = result2_;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
-#else
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- Register exponent = result2_;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- Register mantissa = result1_;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
-#endif
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
Label not_special;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// Convert from Smi to integer.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ sra(source_, source_, kSmiTagSize);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -679,9 +674,8 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
} else {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
ASSERT(destination == kCoreRegisters);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// Load the double from heap number to dst1 and dst2 in double format.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ lw(dst1, FieldMemOperand(object, HeapNumber::kValueOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ lw(dst2, FieldMemOperand(object,
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- HeapNumber::kValueOffset + kPointerSize));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ lw(dst1, FieldMemOperand(object, HeapNumber::kMantissaOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ lw(dst2, FieldMemOperand(object, HeapNumber::kExponentOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
}
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ Branch(&done);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -1075,6 +1069,11 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// a0-a3 registers to f12/f14 register pairs.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ Move(f12, a0, a1);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ Move(f14, a2, a3);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ } else {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#ifdef BIG_ENDIAN_FLOATING_POINT
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ Swap(a0, a1);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ Swap(a2, a3);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#endif
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
}
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
{
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
AllowExternalCallThatCantCauseGC scope(masm);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -1088,8 +1087,13 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ sdc1(f0, FieldMemOperand(heap_number_result, HeapNumber::kValueOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
} else {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// Double returned in registers v0 and v1.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#ifndef BIG_ENDIAN_FLOATING_POINT
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ sw(v1, FieldMemOperand(heap_number_result, HeapNumber::kExponentOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ sw(v0, FieldMemOperand(heap_number_result, HeapNumber::kMantissaOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#else
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ sw(v0, FieldMemOperand(heap_number_result, HeapNumber::kExponentOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ sw(v1, FieldMemOperand(heap_number_result, HeapNumber::kMantissaOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#endif
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
}
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// Place heap_number_result in v0 and return to the pushed return address.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ pop(ra);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -1320,8 +1324,8 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ ldc1(f12, FieldMemOperand(lhs, HeapNumber::kValueOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
} else {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// Load lhs to a double in a2, a3.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ lw(a3, FieldMemOperand(lhs, HeapNumber::kValueOffset + 4));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ lw(a2, FieldMemOperand(lhs, HeapNumber::kValueOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ lw(a3, FieldMemOperand(lhs, HeapNumber::kExponentOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ lw(a2, FieldMemOperand(lhs, HeapNumber::kMantissaOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// Write Smi from rhs to a1 and a0 in double format. t5 is scratch.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ mov(t6, rhs);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -1366,11 +1370,11 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ pop(ra);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// Load rhs to a double in a1, a0.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
if (rhs.is(a0)) {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ lw(a1, FieldMemOperand(rhs, HeapNumber::kValueOffset + 4));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ lw(a0, FieldMemOperand(rhs, HeapNumber::kValueOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ lw(a1, FieldMemOperand(rhs, HeapNumber::kExponentOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ lw(a0, FieldMemOperand(rhs, HeapNumber::kMantissaOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
} else {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ lw(a0, FieldMemOperand(rhs, HeapNumber::kValueOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ lw(a1, FieldMemOperand(rhs, HeapNumber::kValueOffset + 4));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ lw(a0, FieldMemOperand(rhs, HeapNumber::kMantissaOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ lw(a1, FieldMemOperand(rhs, HeapNumber::kExponentOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
}
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
}
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// Fall through to both_loaded_as_doubles.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -1378,7 +1382,6 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
void EmitNanCheck(MacroAssembler* masm, Condition cc) {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- bool exp_first = (HeapNumber::kExponentOffset == HeapNumber::kValueOffset);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
if (CpuFeatures::IsSupported(FPU)) {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
CpuFeatures::Scope scope(FPU);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// Lhs and rhs are already loaded to f12 and f14 register pairs.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -1391,10 +1394,10 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ mov(t2, a2); // a2 has LS 32 bits of lhs.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ mov(t3, a3); // a3 has MS 32 bits of lhs.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
}
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- Register rhs_exponent = exp_first ? t0 : t1;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- Register lhs_exponent = exp_first ? t2 : t3;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- Register rhs_mantissa = exp_first ? t1 : t0;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- Register lhs_mantissa = exp_first ? t3 : t2;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ Register rhs_exponent = t1;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ Register lhs_exponent = t3;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ Register rhs_mantissa = t0;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ Register lhs_mantissa = t2;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
Label one_is_nan, neither_is_nan;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
Label lhs_not_nan_exp_mask_is_loaded;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -1445,7 +1448,6 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
if (cc == eq) {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// Doubles are not equal unless they have the same bit pattern.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// Exception: 0 and -0.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- bool exp_first = (HeapNumber::kExponentOffset == HeapNumber::kValueOffset);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
if (CpuFeatures::IsSupported(FPU)) {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
CpuFeatures::Scope scope(FPU);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// Lhs and rhs are already loaded to f12 and f14 register pairs.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -1458,10 +1460,10 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ mov(t2, a2); // a2 has LS 32 bits of lhs.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ mov(t3, a3); // a3 has MS 32 bits of lhs.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
}
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- Register rhs_exponent = exp_first ? t0 : t1;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- Register lhs_exponent = exp_first ? t2 : t3;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- Register rhs_mantissa = exp_first ? t1 : t0;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- Register lhs_mantissa = exp_first ? t3 : t2;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ Register rhs_exponent = t1;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ Register lhs_exponent = t3;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ Register rhs_mantissa = t0;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ Register lhs_mantissa = t2;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ xor_(v0, rhs_mantissa, lhs_mantissa);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ Branch(&return_result_not_equal, ne, v0, Operand(zero_reg));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -1495,6 +1497,11 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// a0-a3 registers to f12/f14 register pairs.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ Move(f12, a0, a1);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ Move(f14, a2, a3);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ } else {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#ifdef BIG_ENDIAN_FLOATING_POINT
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ Swap(a0, a1);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ Swap(a2, a3);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#endif
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
}
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
AllowExternalCallThatCantCauseGC scope(masm);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -1582,14 +1589,14 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ ldc1(f12, FieldMemOperand(lhs, HeapNumber::kValueOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ ldc1(f14, FieldMemOperand(rhs, HeapNumber::kValueOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
} else {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ lw(a2, FieldMemOperand(lhs, HeapNumber::kValueOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ lw(a3, FieldMemOperand(lhs, HeapNumber::kValueOffset + 4));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ lw(a2, FieldMemOperand(lhs, HeapNumber::kMantissaOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ lw(a3, FieldMemOperand(lhs, HeapNumber::kExponentOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
if (rhs.is(a0)) {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ lw(a1, FieldMemOperand(rhs, HeapNumber::kValueOffset + 4));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ lw(a0, FieldMemOperand(rhs, HeapNumber::kValueOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ lw(a1, FieldMemOperand(rhs, HeapNumber::kExponentOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ lw(a0, FieldMemOperand(rhs, HeapNumber::kMantissaOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
} else {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ lw(a0, FieldMemOperand(rhs, HeapNumber::kValueOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ lw(a1, FieldMemOperand(rhs, HeapNumber::kValueOffset + 4));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ lw(a0, FieldMemOperand(rhs, HeapNumber::kMantissaOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ lw(a1, FieldMemOperand(rhs, HeapNumber::kExponentOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
}
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
}
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ jmp(both_loaded_as_doubles);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -5902,14 +5909,18 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ Branch(&simple_loop, eq, scratch4, Operand(zero_reg));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// Loop for src/dst that are not aligned the same way.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- // This loop uses lwl and lwr instructions. These instructions
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- // depend on the endianness, and the implementation assumes little-endian.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
{
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
Label loop;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ bind(&loop);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#if __BYTE_ORDER == __BIG_ENDIAN
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ lwl(scratch1, MemOperand(src));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ Addu(src, src, Operand(kReadAlignment));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ lwr(scratch1, MemOperand(src, -1));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#else
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ lwr(scratch1, MemOperand(src));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ Addu(src, src, Operand(kReadAlignment));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ lwl(scratch1, MemOperand(src, -1));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#endif
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ sw(scratch1, MemOperand(dest));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ Addu(dest, dest, Operand(kReadAlignment));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ Subu(scratch2, limit, dest);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -6616,6 +6627,11 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// in a little endian mode).
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ li(t2, Operand(2));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ AllocateAsciiString(v0, t2, t0, t1, t5, &call_runtime);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#if __BYTE_ORDER == __BIG_ENDIAN
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ sll(t0, a2, 8);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ srl(t1, a2, 8);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ or_(a2, t0, t1);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#endif
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ sh(a2, FieldMemOperand(v0, SeqAsciiString::kHeaderSize));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ IncrementCounter(counters->string_add_native(), 1, a2, a3);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ DropAndRet(2);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
--- a/src/mips/codegen-mips.cc
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+++ b/src/mips/codegen-mips.cc
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -210,8 +210,8 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
a1,
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
t7,
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
f0);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ sw(a0, MemOperand(t3)); // mantissa
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ sw(a1, MemOperand(t3, kIntSize)); // exponent
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ sw(a0, MemOperand(t3, Register::kMantissaOffset)); // mantissa
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ sw(a1, MemOperand(t3, Register::kExponentOffset)); // exponent
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ Addu(t3, t3, kDoubleSize);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
}
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ Branch(&entry);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -225,8 +225,8 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ LoadRoot(at, Heap::kTheHoleValueRootIndex);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ Assert(eq, "object found in smi-only array", at, Operand(t5));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
}
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ sw(t0, MemOperand(t3)); // mantissa
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ sw(t1, MemOperand(t3, kIntSize)); // exponent
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ sw(t0, MemOperand(t3, Register::kMantissaOffset)); // mantissa
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ sw(t1, MemOperand(t3, Register::kExponentOffset)); // exponent
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ Addu(t3, t3, kDoubleSize);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ bind(&entry);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -273,7 +273,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ sw(t5, MemOperand(t2, HeapObject::kMapOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// Prepare for conversion loop.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ Addu(t0, t0, Operand(FixedDoubleArray::kHeaderSize - kHeapObjectTag + 4));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ Addu(t0, t0, Operand(FixedDoubleArray::kHeaderSize - kHeapObjectTag + Register::kExponentOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ Addu(a3, t2, Operand(FixedArray::kHeaderSize));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ Addu(t2, t2, Operand(kHeapObjectTag));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ sll(t1, t1, 1);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -282,7 +282,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ LoadRoot(t5, Heap::kHeapNumberMapRootIndex);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// Using offsetted addresses.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// a3: begin of destination FixedArray element fields, not tagged
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- // t0: begin of source FixedDoubleArray element fields, not tagged, +4
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ // t0: begin of source FixedDoubleArray element fields, not tagged, points to the exponent
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// t1: end of destination FixedArray, not tagged
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// t2: destination FixedArray
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// t3: the-hole pointer
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -296,7 +296,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ Branch(fail);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ bind(&loop);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ lw(a1, MemOperand(t0));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ lw(a1, MemOperand(t0, 0)); // exponent
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ Addu(t0, t0, kDoubleSize);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// a1: current element's upper 32 bit
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// t0: address of next element's upper 32 bit
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -305,7 +305,8 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// Non-hole double, copy value into a heap number.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ AllocateHeapNumber(a2, a0, t6, t5, &gc_required);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// a2: new heap number
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ lw(a0, MemOperand(t0, -12));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ // Load mantissa of current element, t0 point to exponent of next element.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ lw(a0, MemOperand(t0, (Register::kMantissaOffset - Register::kExponentOffset - kDoubleSize)));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ sw(a0, FieldMemOperand(a2, HeapNumber::kMantissaOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ sw(a1, FieldMemOperand(a2, HeapNumber::kExponentOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ mov(a0, a3);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
--- a/src/mips/constants-mips.h
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+++ b/src/mips/constants-mips.h
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -69,6 +69,15 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
#endif
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#if __BYTE_ORDER == __LITTLE_ENDIAN
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+const uint32_t kHoleNanUpper32Offset = 4;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+const uint32_t kHoleNanLower32Offset = 0;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#else
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+const uint32_t kHoleNanUpper32Offset = 0;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+const uint32_t kHoleNanLower32Offset = 4;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#endif
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// Defines constants and accessor classes to assemble, disassemble and
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// simulate MIPS32 instructions.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
//
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
--- a/src/mips/lithium-codegen-mips.cc
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+++ b/src/mips/lithium-codegen-mips.cc
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -2699,7 +2699,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
}
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
if (instr->hydrogen()->RequiresHoleCheck()) {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ lw(scratch, MemOperand(elements, sizeof(kHoleNanLower32)));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ lw(scratch, MemOperand(elements, kHoleNanUpper32Offset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
DeoptimizeIf(eq, instr->environment(), scratch, Operand(kHoleNanUpper32));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
}
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -4869,15 +4869,14 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
Handle<FixedDoubleArray>::cast(elements);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
for (int i = 0; i < elements_length; i++) {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
int64_t value = double_array->get_representation(i);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- // We only support little endian mode...
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
int32_t value_low = static_cast<int32_t>(value & 0xFFFFFFFF);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
int32_t value_high = static_cast<int32_t>(value >> 32);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
int total_offset =
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
elements_offset + FixedDoubleArray::OffsetOfElementAt(i);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ li(a2, Operand(value_low));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ sw(a2, FieldMemOperand(result, total_offset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ sw(a2, FieldMemOperand(result, total_offset + Register::kMantissaOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ li(a2, Operand(value_high));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ sw(a2, FieldMemOperand(result, total_offset + 4));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ sw(a2, FieldMemOperand(result, total_offset + Register::kExponentOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
}
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
} else if (elements->IsFixedArray()) {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
Handle<FixedArray> fast_elements = Handle<FixedArray>::cast(elements);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
--- a/src/mips/macro-assembler-mips.cc
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+++ b/src/mips/macro-assembler-mips.cc
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -3300,6 +3300,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// TODO(kalmard) check if this can be optimized to use sw in most cases.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// Can't use unaligned access - copy byte by byte.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#if __BYTE_ORDER == __LITTLE_ENDIAN
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
sb(scratch, MemOperand(dst, 0));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
srl(scratch, scratch, 8);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
sb(scratch, MemOperand(dst, 1));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -3307,6 +3308,16 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
sb(scratch, MemOperand(dst, 2));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
srl(scratch, scratch, 8);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
sb(scratch, MemOperand(dst, 3));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#else
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ sb(scratch, MemOperand(dst, 3));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ srl(scratch, scratch, 8);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ sb(scratch, MemOperand(dst, 2));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ srl(scratch, scratch, 8);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ sb(scratch, MemOperand(dst, 1));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ srl(scratch, scratch, 8);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ sb(scratch, MemOperand(dst, 0));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#endif
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
Addu(dst, dst, 4);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
Subu(length, length, Operand(kPointerSize));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -3412,9 +3423,8 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
bind(&have_double_value);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
sll(scratch1, key_reg, kDoubleSizeLog2 - kSmiTagSize);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
Addu(scratch1, scratch1, elements_reg);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- sw(mantissa_reg, FieldMemOperand(scratch1, FixedDoubleArray::kHeaderSize));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- uint32_t offset = FixedDoubleArray::kHeaderSize + sizeof(kHoleNanLower32);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- sw(exponent_reg, FieldMemOperand(scratch1, offset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ sw(mantissa_reg, FieldMemOperand(scratch1, FixedDoubleArray::kHeaderSize + kHoleNanLower32Offset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ sw(exponent_reg, FieldMemOperand(scratch1, FixedDoubleArray::kHeaderSize + kHoleNanUpper32Offset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
jmp(&done);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
bind(&maybe_nan);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -3459,8 +3469,8 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
CpuFeatures::Scope scope(FPU);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
sdc1(f0, MemOperand(scratch1, 0));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
} else {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- sw(mantissa_reg, MemOperand(scratch1, 0));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- sw(exponent_reg, MemOperand(scratch1, Register::kSizeInBytes));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ sw(mantissa_reg, MemOperand(scratch1, Register::kMantissaOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ sw(exponent_reg, MemOperand(scratch1, Register::kExponentOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
}
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
bind(&done);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
}
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
--- a/src/mips/stub-cache-mips.cc
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+++ b/src/mips/stub-cache-mips.cc
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -2195,7 +2195,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// Start checking for special cases.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// Get the argument exponent and clear the sign bit.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ lw(t1, FieldMemOperand(v0, HeapNumber::kValueOffset + kPointerSize));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ lw(t1, FieldMemOperand(v0, HeapNumber::kExponentOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ And(t2, t1, Operand(~HeapNumber::kSignMask));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ srl(t2, t2, HeapNumber::kMantissaBitsInTopWord);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -3768,8 +3768,8 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ ldc1(f0, MemOperand(t3, 0));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
} else {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// t3: pointer to the beginning of the double we want to load.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ lw(a2, MemOperand(t3, 0));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ lw(a3, MemOperand(t3, Register::kSizeInBytes));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ lw(a2, MemOperand(t3, Register::kMantissaOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ lw(a3, MemOperand(t3, Register::kExponentOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
}
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
break;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
case FAST_ELEMENTS:
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -4132,8 +4132,8 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
CpuFeatures::Scope scope(FPU);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ sdc1(f0, MemOperand(a3, 0));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
} else {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ sw(t2, MemOperand(a3, 0));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ sw(t3, MemOperand(a3, Register::kSizeInBytes));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ sw(t2, MemOperand(a3, Register::kMantissaOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ sw(t3, MemOperand(a3, Register::kExponentOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
}
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
break;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
case FAST_ELEMENTS:
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -4296,8 +4296,8 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ sll(t8, key, 2);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ addu(t8, a3, t8);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// t8: effective address of destination element.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ sw(t4, MemOperand(t8, 0));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ sw(t3, MemOperand(t8, Register::kSizeInBytes));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ sw(t4, MemOperand(t8, Register::kMantissaOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ sw(t3, MemOperand(t8, Register::kExponentOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ mov(v0, a0);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ Ret();
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
} else {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -4497,11 +4497,11 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ lw(scratch, FieldMemOperand(elements_reg, FixedArray::kLengthOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ Branch(&miss_force_generic, hs, key_reg, Operand(scratch));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- // Load the upper word of the double in the fixed array and test for NaN.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ // Load the exponent in the fixed array and test for NaN.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ sll(scratch2, key_reg, kDoubleSizeLog2 - kSmiTagSize);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ Addu(indexed_double_offset, elements_reg, Operand(scratch2));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- uint32_t upper_32_offset = FixedArray::kHeaderSize + sizeof(kHoleNanLower32);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- __ lw(scratch, FieldMemOperand(indexed_double_offset, upper_32_offset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ __ lw(scratch, FieldMemOperand(indexed_double_offset,
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ FixedArray::kHeaderSize + kHoleNanUpper32Offset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ Branch(&miss_force_generic, eq, scratch, Operand(kHoleNanUpper32));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// Non-NaN. Allocate a new heap number and copy the double value into it.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -4509,12 +4509,12 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ AllocateHeapNumber(heap_number_reg, scratch2, scratch3,
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
heap_number_map, &slow_allocate_heapnumber);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- // Don't need to reload the upper 32 bits of the double, it's already in
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ // Don't need to reload the exponent (the upper 32 bits of the double), it's already in
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// scratch.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ sw(scratch, FieldMemOperand(heap_number_reg,
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
HeapNumber::kExponentOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ lw(scratch, FieldMemOperand(indexed_double_offset,
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- FixedArray::kHeaderSize));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ FixedArray::kHeaderSize + kHoleNanLower32Offset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
__ sw(scratch, FieldMemOperand(heap_number_reg,
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
HeapNumber::kMantissaOffset));
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
--- a/src/objects.h
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+++ b/src/objects.h
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -1344,8 +1344,13 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// is a mixture of sign, exponent and mantissa. Our current platforms are all
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// little endian apart from non-EABI arm which is little endian with big
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
// endian floating point word ordering!
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#ifndef BIG_ENDIAN_FLOATING_POINT
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
static const int kMantissaOffset = kValueOffset;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
static const int kExponentOffset = kValueOffset + 4;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#else
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ static const int kMantissaOffset = kValueOffset + 4;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ static const int kExponentOffset = kValueOffset;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#endif
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
static const int kSize = kValueOffset + kDoubleSize;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
static const uint32_t kSignMask = 0x80000000u;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
--- a/src/profile-generator.cc
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+++ b/src/profile-generator.cc
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -1819,7 +1819,9 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
Address field = obj->address() + offset;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
ASSERT(!Memory::Object_at(field)->IsFailure());
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
ASSERT(Memory::Object_at(field)->IsHeapObject());
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- *field |= kFailureTag;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ Object* untagged = *reinterpret_cast<Object**>(field);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ intptr_t tagged = reinterpret_cast<intptr_t>(untagged) | kFailureTag;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ *reinterpret_cast<Object**>(field) = reinterpret_cast<Object*>(tagged);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
}
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
private:
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
--- a/src/runtime.cc
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+++ b/src/runtime.cc
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -8553,8 +8553,15 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
#else
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
typedef uint64_t ObjectPair;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
static inline ObjectPair MakePair(MaybeObject* x, MaybeObject* y) {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#if __BYTE_ORDER == __LITTLE_ENDIAN
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
return reinterpret_cast<uint32_t>(x) |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
(reinterpret_cast<ObjectPair>(y) << 32);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#elif __BYTE_ORDER == __BIG_ENDIAN
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ return reinterpret_cast<uint32_t>(y) |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ (reinterpret_cast<ObjectPair>(x) << 32);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#else
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#error Unknown endianess
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#endif
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
}
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
#endif
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
--- a/test/cctest/cctest.gyp
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+++ b/test/cctest/cctest.gyp
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -118,7 +118,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
'test-disasm-arm.cc'
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
],
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
}],
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- ['v8_target_arch=="mipsel"', {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ ['v8_target_arch=="mipsel" or v8_target_arch=="mips"', {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
'sources': [
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
'test-assembler-mips.cc',
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
'test-disasm-mips.cc',
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
--- a/test/cctest/test-assembler-mips.cc
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+++ b/test/cctest/test-assembler-mips.cc
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -537,11 +537,21 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
USE(dummy);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
CHECK_EQ(0x11223344, t.r1);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#if __BYTE_ORDER == __LITTLE_ENDIAN
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
CHECK_EQ(0x3344, t.r2);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
CHECK_EQ(0xffffbbcc, t.r3);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
CHECK_EQ(0x0000bbcc, t.r4);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
CHECK_EQ(0xffffffcc, t.r5);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
CHECK_EQ(0x3333bbcc, t.r6);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#elif __BYTE_ORDER == __BIG_ENDIAN
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ CHECK_EQ(0x1122, t.r2);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ CHECK_EQ(0xffff99aa, t.r3);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ CHECK_EQ(0x000099aa, t.r4);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ CHECK_EQ(0xffffff99, t.r5);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ CHECK_EQ(0x99aa3333, t.r6);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#else
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#error Unknown endianess
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#endif
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
}
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -955,6 +965,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
Object* dummy = CALL_GENERATED_CODE(f, &t, 0, 0, 0, 0);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
USE(dummy);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#if __BYTE_ORDER == __LITTLE_ENDIAN
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
CHECK_EQ(0x44bbccdd, t.lwl_0);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
CHECK_EQ(0x3344ccdd, t.lwl_1);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
CHECK_EQ(0x223344dd, t.lwl_2);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -974,6 +985,29 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
CHECK_EQ(0xbbccdd44, t.swr_1);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
CHECK_EQ(0xccdd3344, t.swr_2);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
CHECK_EQ(0xdd223344, t.swr_3);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#elif __BYTE_ORDER == __BIG_ENDIAN
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ CHECK_EQ(0x11223344, t.lwl_0);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ CHECK_EQ(0x223344dd, t.lwl_1);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ CHECK_EQ(0x3344ccdd, t.lwl_2);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ CHECK_EQ(0x44bbccdd, t.lwl_3);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ CHECK_EQ(0xaabbcc11, t.lwr_0);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ CHECK_EQ(0xaabb1122, t.lwr_1);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ CHECK_EQ(0xaa112233, t.lwr_2);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ CHECK_EQ(0x11223344, t.lwr_3);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ CHECK_EQ(0xaabbccdd, t.swl_0);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ CHECK_EQ(0x11aabbcc, t.swl_1);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ CHECK_EQ(0x1122aabb, t.swl_2);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ CHECK_EQ(0x112233aa, t.swl_3);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ CHECK_EQ(0xdd223344, t.swr_0);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ CHECK_EQ(0xccdd3344, t.swr_1);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ CHECK_EQ(0xbbccdd44, t.swr_2);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ CHECK_EQ(0xaabbccdd, t.swr_3);
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#else
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#error Unknown endianess
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+#endif
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
}
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
--- a/test/mjsunit/mjsunit.status
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+++ b/test/mjsunit/mjsunit.status
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -49,7 +49,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
##############################################################################
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
# These use a built-in that's only present in debug mode. They take
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
# too long to run in debug mode on ARM and MIPS.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
-fuzz-natives-part*: PASS, SKIP if ($mode == release || $arch == arm || $arch == android_arm || $arch == mipsel)
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+fuzz-natives-part*: PASS, SKIP if ($mode == release || $arch == arm || $arch == android_arm || $arch == mipsel || $arch == mips)
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
big-object-literal: PASS, SKIP if ($arch == arm || $arch == android_arm)
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -57,7 +57,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
array-constructor: PASS || TIMEOUT
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
# Very slow on ARM and MIPS, contains no architecture dependent code.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
-unicode-case-overoptimization: PASS, TIMEOUT if ($arch == arm || $arch == android_arm || $arch == mipsel)
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+unicode-case-overoptimization: PASS, TIMEOUT if ($arch == arm || $arch == android_arm || $arch == mipsel || $arch == mips)
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
##############################################################################
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
# This test sets the umask on a per-process basis and hence cannot be
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -127,7 +127,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
math-floor-of-div-minus-zero: SKIP
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
##############################################################################
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
-[ $arch == mipsel ]
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+[ $arch == mipsel || $arch == mips ]
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
# Slow tests which times out in debug mode.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
try: PASS, SKIP if $mode == debug
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
--- a/test/mozilla/mozilla.status
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+++ b/test/mozilla/mozilla.status
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -126,13 +126,13 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
ecma/Date/15.9.2.2-6: PASS || FAIL
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
# 1026139: These date tests fail on arm and mips
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
-ecma/Date/15.9.5.29-1: PASS || FAIL if ($arch == arm || $arch == mipsel)
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
-ecma/Date/15.9.5.34-1: PASS || FAIL if ($arch == arm || $arch == mipsel)
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
-ecma/Date/15.9.5.28-1: PASS || FAIL if ($arch == arm || $arch == mipsel)
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ecma/Date/15.9.5.29-1: PASS || FAIL if ($arch == arm || $arch == mipsel || $arch == mips)
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ecma/Date/15.9.5.34-1: PASS || FAIL if ($arch == arm || $arch == mipsel || $arch == mips)
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ecma/Date/15.9.5.28-1: PASS || FAIL if ($arch == arm || $arch == mipsel || $arch == mips)
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
# 1050186: Arm/MIPS vm is broken; probably unrelated to dates
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
-ecma/Array/15.4.4.5-3: PASS || FAIL if ($arch == arm || $arch == mipsel)
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
-ecma/Date/15.9.5.22-2: PASS || FAIL if ($arch == arm || $arch == mipsel)
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ecma/Array/15.4.4.5-3: PASS || FAIL if ($arch == arm || $arch == mipsel || $arch == mips)
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ecma/Date/15.9.5.22-2: PASS || FAIL if ($arch == arm || $arch == mipsel || $arch == mips)
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
# Flaky test that fails due to what appears to be a bug in the test.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
# Occurs depending on current time
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -854,6 +854,28 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
# Times out and print so much output that we need to skip it to not
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
# hang the builder.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+js1_5/extensions/regress-342960: SKIP
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+# BUG(3251229): Times out when running new crankshaft test script.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ecma_3/RegExp/regress-311414: SKIP
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ecma/Date/15.9.5.8: SKIP
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ecma/Date/15.9.5.10-2: SKIP
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ecma/Date/15.9.5.11-2: SKIP
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ecma/Date/15.9.5.12-2: SKIP
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+js1_5/Array/regress-99120-02: SKIP
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+js1_5/extensions/regress-371636: SKIP
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+js1_5/Regress/regress-203278-1: SKIP
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+js1_5/Regress/regress-404755: SKIP
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+js1_5/Regress/regress-451322: SKIP
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+# BUG(1040): Allow this test to timeout.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+js1_5/GC/regress-203278-2: PASS || TIMEOUT
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+[ $arch == mips ]
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+# Times out and print so much output that we need to skip it to not
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+# hang the builder.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
js1_5/extensions/regress-342960: SKIP
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
# BUG(3251229): Times out when running new crankshaft test script.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
--- a/test/sputnik/sputnik.status
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+++ b/test/sputnik/sputnik.status
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -229,3 +229,17 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
S15.1.3.4_A2.3_T1: SKIP
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
S15.1.3.1_A2.5_T1: SKIP
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
S15.1.3.2_A2.5_T1: SKIP
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+[ $arch == mips ]
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+# BUG(3251225): Tests that timeout with --nocrankshaft.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+S15.1.3.1_A2.5_T1: SKIP
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+S15.1.3.2_A2.5_T1: SKIP
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+S15.1.3.1_A2.4_T1: SKIP
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+S15.1.3.1_A2.5_T1: SKIP
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+S15.1.3.2_A2.4_T1: SKIP
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+S15.1.3.2_A2.5_T1: SKIP
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+S15.1.3.3_A2.3_T1: SKIP
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+S15.1.3.4_A2.3_T1: SKIP
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+S15.1.3.1_A2.5_T1: SKIP
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+S15.1.3.2_A2.5_T1: SKIP
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
--- a/test/test262/test262.status
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+++ b/test/test262/test262.status
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -74,7 +74,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
S15.1.3.1_A2.5_T1: PASS, SKIP if $mode == debug
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
S15.1.3.2_A2.5_T1: PASS, SKIP if $mode == debug
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
-[ $arch == arm || $arch == mipsel ]
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+[ $arch == arm || $arch == mipsel || $arch == mips ]
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
# TODO(mstarzinger): Causes stack overflow on simulators due to eager
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
# compilation of parenthesized function literals. Needs investigation.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
--- a/tools/gyp/v8.gyp
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+++ b/tools/gyp/v8.gyp
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -564,7 +564,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
'../../src/ia32/stub-cache-ia32.cc',
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
],
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
}],
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- ['v8_target_arch=="mipsel"', {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ ['v8_target_arch=="mipsel" or v8_target_arch=="mips"', {
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
'sources': [
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
'../../src/mips/assembler-mips.cc',
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
'../../src/mips/assembler-mips.h',
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
--- a/tools/run-tests.py
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+++ b/tools/run-tests.py
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -65,6 +65,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
"arm",
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
"ia32",
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
"mipsel",
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ "mips",
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
"x64"]
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -268,7 +269,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
timeout = options.timeout
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
if timeout == -1:
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
# Simulators are slow, therefore allow a longer default timeout.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- if arch in ["android", "arm", "mipsel"]:
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ if arch in ["android", "arm", "mipsel", "mips"]:
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
timeout = 2 * TIMEOUT_DEFAULT;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
else:
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
timeout = TIMEOUT_DEFAULT;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
--- a/tools/test-wrapper-gypbuild.py
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+++ b/tools/test-wrapper-gypbuild.py
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -151,7 +151,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
print "Unknown mode %s" % mode
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
return False
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
for arch in options.arch:
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- if not arch in ['ia32', 'x64', 'arm', 'mipsel', 'android_arm',
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ if not arch in ['ia32', 'x64', 'arm', 'mipsel', 'mips', 'android_arm',
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
'android_ia32']:
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
print "Unknown architecture %s" % arch
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
return False
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
--- a/tools/test.py
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+++ b/tools/test.py
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -1282,7 +1282,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
options.scons_flags.append("arch=" + options.arch)
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
# Simulators are slow, therefore allow a longer default timeout.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
if options.timeout == -1:
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- if options.arch in ['android', 'arm', 'mipsel']:
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ if options.arch in ['android', 'arm', 'mipsel', 'mips']:
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
options.timeout = 2 * TIMEOUT_DEFAULT;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
else:
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
options.timeout = TIMEOUT_DEFAULT;
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
--- a/tools/testrunner/local/statusfile.py
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+++ b/tools/testrunner/local/statusfile.py
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
@@ -59,7 +59,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
# Support arches, modes to be written as keywords instead of strings.
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
VARIABLES = {ALWAYS: True}
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
for var in ["debug", "release", "android_arm", "android_ia32", "arm", "ia32",
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
- "mipsel", "x64"]:
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
+ "mipsel", "mips", "x64"]:
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
VARIABLES[var] = var
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|
|
![](https://seccdn.libravatar.org/avatar/6bc20550c752ba849c045db39b646a1cf4359ecaade6d9cca60b8421d81bd73e?s=16&d=retro) |
866ed07 |
|