Reviewers: danno, Jakob, Paul Lind, kisg,

Description:
MIPS: Enabled native/cross-compilation for MIPS targets in the gyp system.

Also added selectable mips32r2 mode.

BUG=
TEST=


Please review this at http://codereview.chromium.org/9361024/

Affected files:
  M build/common.gypi
  M build/mipsu.gypi


Index: build/common.gypi
diff --git a/build/common.gypi b/build/common.gypi
index 8201e2c036af9d0a42ca3b679717aa20cf151984..548df7bdad2ffee2d4933ebccc16e02d55e940ab 100644
--- a/build/common.gypi
+++ b/build/common.gypi
@@ -169,6 +169,28 @@
               'V8_TARGET_ARCH_MIPS',
             ],
             'conditions': [
+              [ 'target_arch=="mips"', {
+                '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=="mips32r2"', {
+                        'cflags': ['-mips32r2', '-Wa,-mips32r2'],
+                      }, {
+                        'cflags': ['-mips32', '-Wa,-mips32'],
+                      }],
+                    ],
+                  }],
+                ],
+              }],
               [ 'v8_can_use_fpu_instructions=="true"', {
                 'defines': [
                   'CAN_USE_FPU_INSTRUCTIONS',
@@ -184,6 +206,9 @@
                   '__mips_soft_float=1'
                 ],
               }],
+              ['mips_arch_variant=="mips32r2"', {
+                'defines': ['_MIPS_ARCH_MIPS32R2',],
+              }],
               # The MIPS assembler assumes the host is 32 bits,
               # so force building 32-bit host tools.
               ['host_arch=="x64"', {
Index: build/mipsu.gypi
diff --git a/build/mipsu.gypi b/build/mipsu.gypi
index 8dfea7490674037c2327a3685b597715dc7cd683..306f105dbd56c223f0b94eda9760895d609c947f 100644
--- a/build/mipsu.gypi
+++ b/build/mipsu.gypi
@@ -29,5 +29,6 @@
   'variables': {
     'target_arch': 'ia32',
     'v8_target_arch': 'mips',
+    'mips_arch_variant': 'mips32r2',
   },
 }


--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to