Index: build/toolchain.gypi |
diff --git a/build/toolchain.gypi b/build/toolchain.gypi |
index 0852eac04d6b1182afb7ee2fb6b777db133014cb..d7c52ea38670eb3958045d00d2fa96ec6ac83f9c 100644 |
--- a/build/toolchain.gypi |
+++ b/build/toolchain.gypi |
@@ -56,7 +56,7 @@ |
'v8_use_mips_abi_hardfloat%': 'true', |
# Default arch variant for MIPS. |
- 'mips_arch_variant%': 'mips32r2', |
+ 'mips_arch_variant%': 'r2', |
'v8_enable_backtrace%': 0, |
@@ -247,10 +247,10 @@ |
'cflags': ['-msoft-float'], |
'ldflags': ['-msoft-float'], |
}], |
- ['mips_arch_variant=="mips32r2"', { |
+ ['mips_arch_variant=="r2"', { |
'cflags': ['-mips32r2', '-Wa,-mips32r2'], |
}], |
- ['mips_arch_variant=="mips32r1"', { |
+ ['mips_arch_variant=="r1"', { |
'cflags': ['-mips32', '-Wa,-mips32'], |
}], |
], |
@@ -272,7 +272,7 @@ |
'__mips_soft_float=1' |
], |
}], |
- ['mips_arch_variant=="mips32r2"', { |
+ ['mips_arch_variant=="r2"', { |
'defines': ['_MIPS_ARCH_MIPS32R2',], |
}], |
], |
@@ -298,10 +298,10 @@ |
'cflags': ['-msoft-float'], |
'ldflags': ['-msoft-float'], |
}], |
- ['mips_arch_variant=="mips32r2"', { |
+ ['mips_arch_variant=="r2"', { |
'cflags': ['-mips32r2', '-Wa,-mips32r2'], |
}], |
- ['mips_arch_variant=="mips32r1"', { |
+ ['mips_arch_variant=="r1"', { |
'cflags': ['-mips32', '-Wa,-mips32'], |
}], |
['mips_arch_variant=="loongson"', { |
@@ -326,7 +326,7 @@ |
'__mips_soft_float=1' |
], |
}], |
- ['mips_arch_variant=="mips32r2"', { |
+ ['mips_arch_variant=="r2"', { |
'defines': ['_MIPS_ARCH_MIPS32R2',], |
}], |
['mips_arch_variant=="loongson"', { |
@@ -334,6 +334,65 @@ |
}], |
], |
}], # v8_target_arch=="mipsel" |
+ ['v8_target_arch=="mips64el"', { |
+ 'defines': [ |
+ 'V8_TARGET_ARCH_MIPS64', |
+ ], |
+ 'variables': { |
+ 'mipscompiler': '<!($(echo <(CXX)) -v 2>&1 | grep -q "^Target: mips" && echo "yes" || echo "no")', |
+ }, |
+ 'conditions': [ |
+ ['mipscompiler=="yes"', { |
+ 'target_conditions': [ |
+ ['_toolset=="target"', { |
+ 'cflags': ['-EL'], |
+ 'ldflags': ['-EL'], |
+ 'conditions': [ |
+ [ 'v8_use_mips_abi_hardfloat=="true"', { |
+ 'cflags': ['-mhard-float'], |
+ 'ldflags': ['-mhard-float'], |
+ }, { |
+ 'cflags': ['-msoft-float'], |
+ 'ldflags': ['-msoft-float'], |
+ }], |
+ ['mips_arch_variant=="r2"', { |
+ 'cflags': ['-mips64r2', '-mabi=64', '-Wa,-mips64r2'], |
+ 'ldflags': [ |
+ '-mips64r2', '-mabi=64', |
+ '-Wl,--dynamic-linker=$(LDSO_PATH)', |
+ '-Wl,--rpath=$(LD_R_PATH)', |
+ ], |
+ }], |
+ ['mips_arch_variant=="loongson"', { |
+ 'cflags': ['-mips3', '-Wa,-mips3'], |
+ }], |
+ ], |
+ }], |
+ ], |
+ }], |
+ [ 'v8_can_use_fpu_instructions=="true"', { |
+ 'defines': [ |
+ 'CAN_USE_FPU_INSTRUCTIONS', |
+ ], |
+ }], |
+ [ 'v8_use_mips_abi_hardfloat=="true"', { |
+ 'defines': [ |
+ '__mips_hard_float=1', |
+ 'CAN_USE_FPU_INSTRUCTIONS', |
+ ], |
+ }, { |
+ 'defines': [ |
+ '__mips_soft_float=1' |
+ ], |
+ }], |
+ ['mips_arch_variant=="r2"', { |
+ 'defines': ['_MIPS_ARCH_MIPS64R2',], |
+ }], |
+ ['mips_arch_variant=="loongson"', { |
+ 'defines': ['_MIPS_ARCH_LOONGSON',], |
+ }], |
+ ], |
+ }], # v8_target_arch=="mips64el" |
['v8_target_arch=="x64"', { |
'defines': [ |
'V8_TARGET_ARCH_X64', |