x32: disable turbofan for x32 port
authortitzer@chromium.org <titzer@chromium.org>
Wed, 5 Nov 2014 09:02:51 +0000 (09:02 +0000)
committertitzer@chromium.org <titzer@chromium.org>
Wed, 5 Nov 2014 09:03:12 +0000 (09:03 +0000)
BUG=
R=titzer@chromium.org

Review URL: https://codereview.chromium.org/697353003

Patch from Weilang Lin <weiliang.lin@intel.com>.

Cr-Commit-Position: refs/heads/master@{#25133}
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25133 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

src/compiler/instruction-selector.cc
src/globals.h
tools/gyp/v8.gyp

index 877230c..ffbf2a3 100644 (file)
@@ -833,7 +833,7 @@ void InstructionSelector::VisitLoadStackPointer(Node* node) {
 #endif  // V8_TURBOFAN_BACKEND
 
 // 32 bit targets do not implement the following instructions.
-#if V8_TARGET_ARCH_32_BIT && V8_TURBOFAN_BACKEND
+#if V8_TARGET_ARCH_32_BIT && !V8_TARGET_ARCH_X64 && V8_TURBOFAN_BACKEND
 
 void InstructionSelector::VisitWord64And(Node* node) { UNIMPLEMENTED(); }
 
@@ -905,7 +905,7 @@ void InstructionSelector::VisitTruncateInt64ToInt32(Node* node) {
   UNIMPLEMENTED();
 }
 
-#endif  // V8_TARGET_ARCH_32_BIT && V8_TURBOFAN_BACKEND
+#endif  // V8_TARGET_ARCH_32_BIT && !V8_TARGET_ARCH_X64 && V8_TURBOFAN_BACKEND
 
 
 void InstructionSelector::VisitFinish(Node* node) {
index ae79038..660263f 100644 (file)
@@ -26,8 +26,8 @@
 # define V8_INFINITY INFINITY
 #endif
 
-#if V8_TARGET_ARCH_IA32 || V8_TARGET_ARCH_X64 || V8_TARGET_ARCH_ARM || \
-    V8_TARGET_ARCH_ARM64 || V8_TARGET_ARCH_MIPS
+#if V8_TARGET_ARCH_IA32 || (V8_TARGET_ARCH_X64 && !V8_TARGET_ARCH_32_BIT) || \
+    V8_TARGET_ARCH_ARM || V8_TARGET_ARCH_ARM64 || V8_TARGET_ARCH_MIPS
 #define V8_TURBOFAN_BACKEND 1
 #else
 #define V8_TURBOFAN_BACKEND 0
index 5874865..b675e18 100644 (file)
             '../../src/x64/macro-assembler-x64.h',
             '../../src/x64/regexp-macro-assembler-x64.cc',
             '../../src/x64/regexp-macro-assembler-x64.h',
-            '../../src/compiler/x64/code-generator-x64.cc',
-            '../../src/compiler/x64/instruction-codes-x64.h',
-            '../../src/compiler/x64/instruction-selector-x64.cc',
-            '../../src/compiler/x64/linkage-x64.cc',
             '../../src/ic/x64/access-compiler-x64.cc',
             '../../src/ic/x64/handler-compiler-x64.cc',
             '../../src/ic/x64/ic-x64.cc',
             '../../src/ic/x64/stub-cache-x64.cc',
           ],
         }],
+        ['v8_target_arch=="x64"', {
+          'sources': [
+            '../../src/compiler/x64/code-generator-x64.cc',
+            '../../src/compiler/x64/instruction-codes-x64.h',
+            '../../src/compiler/x64/instruction-selector-x64.cc',
+            '../../src/compiler/x64/linkage-x64.cc',
+          ],
+        }],
         ['OS=="linux"', {
             'link_settings': {
               'conditions': [