diff --git a/build/features.gypi b/build/features.gypi
index 7ce66e4..8201ea9 100644
--- a/build/features.gypi
+++ b/build/features.gypi
@@ -115,7 +115,7 @@
       'Release': {
         'variables': {
           'v8_enable_extra_checks%': 0,
-          'v8_enable_handle_zapping%': 1,
+          'v8_enable_handle_zapping%': 0,
         },
         'conditions': [
           ['v8_enable_extra_checks==1', {
diff --git a/build/standalone.gypi b/build/standalone.gypi
index 47b2763..6cc0599 100644
--- a/build/standalone.gypi
+++ b/build/standalone.gypi
@@ -127,6 +127,16 @@
     'arm_fpu%': 'vfpv3',
     'arm_float_abi%': 'default',
     'arm_thumb': 'default',
+
+    # Default MIPS variable settings.
+    'mips_arch_variant%': 'r2',
+    # Possible values fp32, fp64, fpxx.
+    # fp32 - 32 32-bit FPU registers are available, doubles are placed in
+    #        register pairs.
+    # fp64 - 32 64-bit FPU registers are available.
+    # fpxx - compatibility mode, it chooses fp32 or fp64 depending on runtime
+    #        detection
+    'mips_fpu_mode%': 'fp32',
   },
   'target_defaults': {
     'variables': {
diff --git a/build/toolchain.gypi b/build/toolchain.gypi
index 20c2c94..f8692c3 100644
--- a/build/toolchain.gypi
+++ b/build/toolchain.gypi
@@ -55,17 +55,6 @@
     # Similar to the ARM hard float ABI but on MIPS.
     'v8_use_mips_abi_hardfloat%': 'true',
 
-    # Default arch variant for MIPS.
-    'mips_arch_variant%': 'r2',
-
-    # Possible values fp32, fp64, fpxx.
-    # fp32 - 32 32-bit FPU registers are available, doubles are placed in
-    #        register pairs.
-    # fp64 - 32 64-bit FPU registers are available.
-    # fpxx - compatibility mode, it chooses fp32 or fp64 depending on runtime
-    #        detection
-    'mips_fpu_mode%': 'fp32',
-
     'v8_enable_backtrace%': 0,
 
     # Enable profiling support. Only required on Windows.
@@ -278,10 +267,27 @@
           'V8_TARGET_ARCH_MIPS',
         ],
         'conditions': [
-          ['v8_target_arch==target_arch and android_webview_build==0', {
-            # Target built with a Mips CXX compiler.
-            'target_conditions': [
-              ['_toolset=="target"', {
+          [ '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'
+            ]
+          }],
+        ],
+        'target_conditions': [
+          ['_toolset=="target"', {
+            'conditions': [
+              ['v8_target_arch==target_arch and android_webview_build==0', {
+                # Target built with a Mips CXX compiler.
                 'cflags': ['-EB'],
                 'ldflags': ['-EB'],
                 'conditions': [
@@ -292,16 +298,11 @@
                     'cflags': ['-msoft-float'],
                     'ldflags': ['-msoft-float'],
                   }],
-                  ['mips_fpu_mode=="fp64"', {
-                    'cflags': ['-mfp64'],
-                  }],
-                  ['mips_fpu_mode=="fpxx"', {
-                    'cflags': ['-mfpxx'],
-                  }],
-                  ['mips_fpu_mode=="fp32"', {
-                    'cflags': ['-mfp32'],
-                  }],
                   ['mips_arch_variant=="r6"', {
+                    'defines': [
+                      '_MIPS_ARCH_MIPS32R6',
+                      'FPU_MODE_FP64',
+                    ],
                     'cflags!': ['-mfp32', '-mfpxx'],
                     'cflags': ['-mips32r6', '-Wa,-mips32r6'],
                     'ldflags': [
@@ -311,23 +312,145 @@
                     ],
                   }],
                   ['mips_arch_variant=="r2"', {
+                    'conditions': [
+                      [ 'mips_fpu_mode=="fp64"', {
+                        'defines': [
+                          '_MIPS_ARCH_MIPS32R2',
+                          'FPU_MODE_FP64',
+                        ],
+                        'cflags': ['-mfp64'],
+                      }],
+                      ['mips_fpu_mode=="fpxx"', {
+                        'defines': [
+                          '_MIPS_ARCH_MIPS32R2',
+                          'FPU_MODE_FPXX',
+                        ],
+                        'cflags': ['-mfpxx'],
+                      }],
+                      ['mips_fpu_mode=="fp32"', {
+                        'defines': [
+                          '_MIPS_ARCH_MIPS32R2',
+                          'FPU_MODE_FP32',
+                        ],
+                        'cflags': ['-mfp32'],
+                      }],
+                    ],
                     'cflags': ['-mips32r2', '-Wa,-mips32r2'],
                     'ldflags': ['-mips32r2'],
                   }],
                   ['mips_arch_variant=="r1"', {
+                    'defines': [
+                      'FPU_MODE_FP32',
+                    ],
                     'cflags!': ['-mfp64', '-mfpxx'],
                     'cflags': ['-mips32', '-Wa,-mips32'],
                     'ldflags': ['-mips32'],
                   }],
                   ['mips_arch_variant=="rx"', {
+                    'defines': [
+                      '_MIPS_ARCH_MIPS32RX',
+                      'FPU_MODE_FPXX',
+                    ],
                     'cflags!': ['-mfp64', '-mfp32'],
                     'cflags': ['-mips32', '-Wa,-mips32', '-mfpxx'],
                     'ldflags': ['-mips32'],
                   }],
                 ],
+              }, {
+                # 'v8_target_arch!=target_arch'
+                # Target not built with an MIPS CXX compiler (simulator build).
+                'conditions': [
+                  ['mips_arch_variant=="r6"', {
+                    'defines': [
+                      '_MIPS_ARCH_MIPS32R6',
+                      'FPU_MODE_FP64',
+                    ],
+                  }],
+                  ['mips_arch_variant=="r2"', {
+                    'conditions': [
+                      [ 'mips_fpu_mode=="fp64"', {
+                        'defines': [
+                          '_MIPS_ARCH_MIPS32R2',
+                          'FPU_MODE_FP64',
+                        ],
+                      }],
+                      ['mips_fpu_mode=="fpxx"', {
+                        'defines': [
+                          '_MIPS_ARCH_MIPS32R2',
+                          'FPU_MODE_FPXX',
+                        ],
+                      }],
+                      ['mips_fpu_mode=="fp32"', {
+                        'defines': [
+                          '_MIPS_ARCH_MIPS32R2',
+                          'FPU_MODE_FP32',
+                        ],
+                      }],
+                    ],
+                  }],
+                  ['mips_arch_variant=="r1"', {
+                    'defines': [
+                      'FPU_MODE_FP32',
+                    ],
+                  }],
+                  ['mips_arch_variant=="rx"', {
+                    'defines': [
+                      '_MIPS_ARCH_MIPS32RX',
+                      'FPU_MODE_FPXX',
+                    ],
+                  }],
+                ],
               }],
             ],
-          }],
+          }],  #_toolset=="target"
+          ['_toolset=="host"', {
+            'conditions': [
+              ['mips_arch_variant=="rx"', {
+                'defines': [
+                  '_MIPS_ARCH_MIPS32RX',
+                  'FPU_MODE_FPXX',
+                ],
+              }],
+              ['mips_arch_variant=="r6"', {
+                'defines': [
+                  '_MIPS_ARCH_MIPS32R6',
+                  'FPU_MODE_FP64',
+                ],
+              }],
+              ['mips_arch_variant=="r2"', {
+                'conditions': [
+                  ['mips_fpu_mode=="fp64"', {
+                    'defines': [
+                      '_MIPS_ARCH_MIPS32R2',
+                      'FPU_MODE_FP64',
+                    ],
+                  }],
+                  ['mips_fpu_mode=="fpxx"', {
+                    'defines': [
+                      '_MIPS_ARCH_MIPS32R2',
+                      'FPU_MODE_FPXX',
+                    ],
+                  }],
+                  ['mips_fpu_mode=="fp32"', {
+                    'defines': [
+                      '_MIPS_ARCH_MIPS32R2',
+                      'FPU_MODE_FP32'
+                    ],
+                  }],
+                ],
+              }],
+              ['mips_arch_variant=="r1"', {
+                'defines': ['FPU_MODE_FP32',],
+              }],
+            ]
+          }],  #_toolset=="host"
+        ],
+      }],  # v8_target_arch=="mips"
+      ['v8_target_arch=="mipsel"', {
+        'defines': [
+          'V8_TARGET_ARCH_MIPS',
+        ],
+        'conditions': [
           [ 'v8_can_use_fpu_instructions=="true"', {
             'defines': [
               'CAN_USE_FPU_INSTRUCTIONS',
@@ -343,46 +466,12 @@
               '__mips_soft_float=1'
             ],
           }],
-          ['mips_arch_variant=="rx"', {
-            'defines': [
-              '_MIPS_ARCH_MIPS32RX',
-              'FPU_MODE_FPXX',
-            ],
-          }],
-          ['mips_arch_variant=="r6"', {
-            'defines': [
-              '_MIPS_ARCH_MIPS32R6',
-              'FPU_MODE_FP64',
-            ],
-          }],
-          ['mips_arch_variant=="r2"', {
-            'defines': ['_MIPS_ARCH_MIPS32R2',],
+        ],
+        'target_conditions': [
+          ['_toolset=="target"', {
             'conditions': [
-              ['mips_fpu_mode=="fp64"', {
-                'defines': ['FPU_MODE_FP64',],
-              }],
-              ['mips_fpu_mode=="fpxx"', {
-                'defines': ['FPU_MODE_FPXX',],
-              }],
-              ['mips_fpu_mode=="fp32"', {
-                'defines': ['FPU_MODE_FP32',],
-              }],
-            ],
-          }],
-          ['mips_arch_variant=="r1"', {
-            'defines': ['FPU_MODE_FP32',],
-          }],
-        ],
-      }],  # v8_target_arch=="mips"
-      ['v8_target_arch=="mipsel"', {
-        'defines': [
-          'V8_TARGET_ARCH_MIPS',
-        ],
-        'conditions': [
-          ['v8_target_arch==target_arch and android_webview_build==0', {
-            # Target built with a Mips CXX compiler.
-            'target_conditions': [
-              ['_toolset=="target"', {
+              ['v8_target_arch==target_arch and android_webview_build==0', {
+                # Target built with a Mips CXX compiler.
                 'cflags': ['-EL'],
                 'ldflags': ['-EL'],
                 'conditions': [
@@ -393,16 +482,11 @@
                     'cflags': ['-msoft-float'],
                     'ldflags': ['-msoft-float'],
                   }],
-                  ['mips_fpu_mode=="fp64"', {
-                    'cflags': ['-mfp64'],
-                  }],
-                  ['mips_fpu_mode=="fpxx"', {
-                    'cflags': ['-mfpxx'],
-                  }],
-                  ['mips_fpu_mode=="fp32"', {
-                    'cflags': ['-mfp32'],
-                  }],
                   ['mips_arch_variant=="r6"', {
+                    'defines': [
+                      '_MIPS_ARCH_MIPS32R6',
+                      'FPU_MODE_FP64',
+                    ],
                     'cflags!': ['-mfp32', '-mfpxx'],
                     'cflags': ['-mips32r6', '-Wa,-mips32r6'],
                     'ldflags': [
@@ -412,6 +496,29 @@
                     ],
                   }],
                   ['mips_arch_variant=="r2"', {
+                    'conditions': [
+                      [ 'mips_fpu_mode=="fp64"', {
+                        'defines': [
+                          '_MIPS_ARCH_MIPS32R2',
+                          'FPU_MODE_FP64',
+                        ],
+                        'cflags': ['-mfp64'],
+                      }],
+                      ['mips_fpu_mode=="fpxx"', {
+                        'defines': [
+                          '_MIPS_ARCH_MIPS32R2',
+                          'FPU_MODE_FPXX',
+                        ],
+                        'cflags': ['-mfpxx'],
+                      }],
+                      ['mips_fpu_mode=="fp32"', {
+                        'defines': [
+                          '_MIPS_ARCH_MIPS32R2',
+                          'FPU_MODE_FP32',
+                        ],
+                        'cflags': ['-mfp32'],
+                      }],
+                    ],
                     'cflags': ['-mips32r2', '-Wa,-mips32r2'],
                     'ldflags': ['-mips32r2'],
                   }],
@@ -421,67 +528,122 @@
                     'ldflags': ['-mips32'],
                   }],
                   ['mips_arch_variant=="rx"', {
+                    'defines': [
+                      '_MIPS_ARCH_MIPS32RX',
+                      'FPU_MODE_FPXX',
+                    ],
                     'cflags!': ['-mfp64', '-mfp32'],
                     'cflags': ['-mips32', '-Wa,-mips32', '-mfpxx'],
                     'ldflags': ['-mips32'],
                   }],
                   ['mips_arch_variant=="loongson"', {
+                    'defines': [
+                      '_MIPS_ARCH_LOONGSON',
+                      'FPU_MODE_FP32',
+                    ],
                     'cflags!': ['-mfp64', '-mfp32', '-mfpxx'],
                     'cflags': ['-mips3', '-Wa,-mips3'],
                   }],
                 ],
+              }, {
+                # 'v8_target_arch!=target_arch'
+                # Target not built with an MIPS CXX compiler (simulator build).
+                'conditions': [
+                  ['mips_arch_variant=="r6"', {
+                    'defines': [
+                      '_MIPS_ARCH_MIPS32R6',
+                      'FPU_MODE_FP64',
+                    ],
+                  }],
+                  ['mips_arch_variant=="r2"', {
+                    'conditions': [
+                      [ 'mips_fpu_mode=="fp64"', {
+                        'defines': [
+                          '_MIPS_ARCH_MIPS32R2',
+                          'FPU_MODE_FP64',
+                        ],
+                      }],
+                      ['mips_fpu_mode=="fpxx"', {
+                        'defines': [
+                          '_MIPS_ARCH_MIPS32R2',
+                          'FPU_MODE_FPXX',
+                        ],
+                      }],
+                      ['mips_fpu_mode=="fp32"', {
+                        'defines': [
+                          '_MIPS_ARCH_MIPS32R2',
+                          'FPU_MODE_FP32',
+                        ],
+                      }],
+                    ],
+                  }],
+                  ['mips_arch_variant=="r1"', {
+                    'defines': [
+                      'FPU_MODE_FP32',
+                    ],
+                  }],
+                  ['mips_arch_variant=="rx"', {
+                    'defines': [
+                      '_MIPS_ARCH_MIPS32RX',
+                      'FPU_MODE_FPXX',
+                    ],
+                  }],
+                  ['mips_arch_variant=="loongson"', {
+                    'defines': [
+                      '_MIPS_ARCH_LOONGSON',
+                      'FPU_MODE_FP32',
+                    ],
+                  }],
+                ],
               }],
             ],
-          }],
-          [ '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=="rx"', {
-            'defines': [
-              '_MIPS_ARCH_MIPS32RX',
-              'FPU_MODE_FPXX',
-            ],
-          }],
-          ['mips_arch_variant=="r6"', {
-            'defines': [
-              '_MIPS_ARCH_MIPS32R6',
-               'FPU_MODE_FP64',
-            ],
-          }],
-          ['mips_arch_variant=="r2"', {
-            'defines': ['_MIPS_ARCH_MIPS32R2',],
+          }], #_toolset=="target
+          ['_toolset=="host"', {
             'conditions': [
-              ['mips_fpu_mode=="fp64"', {
-                'defines': ['FPU_MODE_FP64',],
+              ['mips_arch_variant=="rx"', {
+                'defines': [
+                  '_MIPS_ARCH_MIPS32RX',
+                  'FPU_MODE_FPXX',
+                ],
               }],
-              ['mips_fpu_mode=="fpxx"', {
-                'defines': ['FPU_MODE_FPXX',],
+              ['mips_arch_variant=="r6"', {
+                'defines': [
+                  '_MIPS_ARCH_MIPS32R6',
+                  'FPU_MODE_FP64',
+                ],
               }],
-              ['mips_fpu_mode=="fp32"', {
+              ['mips_arch_variant=="r2"', {
+                'conditions': [
+                  ['mips_fpu_mode=="fp64"', {
+                    'defines': [
+                      '_MIPS_ARCH_MIPS32R2',
+                      'FPU_MODE_FP64',
+                    ],
+                  }],
+                  ['mips_fpu_mode=="fpxx"', {
+                    'defines': [
+                      '_MIPS_ARCH_MIPS32R2',
+                      'FPU_MODE_FPXX',
+                    ],
+                  }],
+                  ['mips_fpu_mode=="fp32"', {
+                    'defines': [
+                      '_MIPS_ARCH_MIPS32R2',
+                      'FPU_MODE_FP32'
+                    ],
+                  }],
+                ],
+              }],
+              ['mips_arch_variant=="r1"', {
                 'defines': ['FPU_MODE_FP32',],
               }],
-            ],
-          }],
-          ['mips_arch_variant=="r1"', {
-            'defines': ['FPU_MODE_FP32',],
-          }],
-          ['mips_arch_variant=="loongson"', {
-            'defines': [
-              '_MIPS_ARCH_LOONGSON',
-              'FPU_MODE_FP32',
-            ],
+              ['mips_arch_variant=="loongson"', {
+                'defines': [
+                  '_MIPS_ARCH_LOONGSON',
+                  'FPU_MODE_FP32',
+                ],
+              }],
+            ]
           }],
         ],
       }],  # v8_target_arch=="mipsel"
@@ -490,40 +652,6 @@
           'V8_TARGET_ARCH_MIPS64',
         ],
         'conditions': [
-          ['v8_target_arch==target_arch and android_webview_build==0', {
-            # Target built with a Mips CXX compiler.
-            '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=="r6"', {
-                    'cflags': ['-mips64r6', '-mabi=64', '-Wa,-mips64r6'],
-                    'ldflags': [
-                      '-mips64r6', '-mabi=64',
-                      '-Wl,--dynamic-linker=$(LDSO_PATH)',
-                      '-Wl,--rpath=$(LD_R_PATH)',
-                    ],
-                  }],
-                  ['mips_arch_variant=="r2"', {
-                    'cflags': ['-mips64r2', '-mabi=64', '-Wa,-mips64r2'],
-                    'ldflags': [
-                      '-mips64r2', '-mabi=64',
-                      '-Wl,--dynamic-linker=$(LDSO_PATH)',
-                      '-Wl,--rpath=$(LD_R_PATH)',
-                    ],
-                  }],
-                ],
-              }],
-            ],
-          }],
           [ 'v8_can_use_fpu_instructions=="true"', {
             'defines': [
               'CAN_USE_FPU_INSTRUCTIONS',
@@ -539,12 +667,64 @@
               '__mips_soft_float=1'
             ],
           }],
-          ['mips_arch_variant=="r6"', {
-            'defines': ['_MIPS_ARCH_MIPS64R6',],
-          }],
-          ['mips_arch_variant=="r2"', {
-            'defines': ['_MIPS_ARCH_MIPS64R2',],
-          }],
+         ],
+        'target_conditions': [
+          ['_toolset=="target"', {
+            'conditions': [
+              ['v8_target_arch==target_arch and android_webview_build==0', {
+                '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=="r6"', {
+                    'defines': ['_MIPS_ARCH_MIPS64R6',],
+                    'cflags': ['-mips64r6', '-mabi=64', '-Wa,-mips64r6'],
+                    'ldflags': [
+                      '-mips64r6', '-mabi=64',
+                      '-Wl,--dynamic-linker=$(LDSO_PATH)',
+                      '-Wl,--rpath=$(LD_R_PATH)',
+                    ],
+                  }],
+                  ['mips_arch_variant=="r2"', {
+                    'defines': ['_MIPS_ARCH_MIPS64R2',],
+                    'cflags': ['-mips64r2', '-mabi=64', '-Wa,-mips64r2'],
+                    'ldflags': [
+                      '-mips64r2', '-mabi=64',
+                      '-Wl,--dynamic-linker=$(LDSO_PATH)',
+                      '-Wl,--rpath=$(LD_R_PATH)',
+                    ],
+                  }],
+                ],
+              }, {
+                # 'v8_target_arch!=target_arch'
+                # Target not built with an MIPS CXX compiler (simulator build).
+                'conditions': [
+                  ['mips_arch_variant=="r6"', {
+                    'defines': ['_MIPS_ARCH_MIPS64R6',],
+                  }],
+                  ['mips_arch_variant=="r2"', {
+                    'defines': ['_MIPS_ARCH_MIPS64R2',],
+                  }],
+                ],
+              }],
+            ],
+          }],  #'_toolset=="target"
+          ['_toolset=="host"', {
+            'conditions': [
+              ['mips_arch_variant=="r6"', {
+                'defines': ['_MIPS_ARCH_MIPS64R6',],
+              }],
+              ['mips_arch_variant=="r2"', {
+                'defines': ['_MIPS_ARCH_MIPS64R2',],
+              }],
+            ],
+          }],  #'_toolset=="host"
         ],
       }],  # v8_target_arch=="mips64el"
       ['v8_target_arch=="x64"', {
diff --git a/codereview.settings b/codereview.settings
index b7f853c..48d5cf4 100644
--- a/codereview.settings
+++ b/codereview.settings
@@ -6,3 +6,4 @@
 TRYSERVER_SVN_URL: svn://svn.chromium.org/chrome-try-v8
 TRYSERVER_ROOT: v8
 PROJECT: v8
+PENDING_REF_PREFIX: refs/pending/
diff --git a/src/api.cc b/src/api.cc
index 2c8009e..239c7ac 100644
--- a/src/api.cc
+++ b/src/api.cc
@@ -5545,7 +5545,11 @@
   LOG_API(isolate, "String::New(char)");
   ENTER_V8(isolate);
   i::Handle<i::String> right_string = Utils::OpenHandle(*right);
-  // We do not expect this to fail. Change this if it does.
+  // If we are steering towards a range error, do not wait for the error to be
+  // thrown, and return the null handle instead.
+  if (left_string->length() + right_string->length() > i::String::kMaxLength) {
+    return Local<String>();
+  }
   i::Handle<i::String> result = isolate->factory()->NewConsString(
       left_string, right_string).ToHandleChecked();
   return Utils::ToLocal(result);
diff --git a/src/arm/assembler-arm.cc b/src/arm/assembler-arm.cc
index 364ccfc..7048f96 100644
--- a/src/arm/assembler-arm.cc
+++ b/src/arm/assembler-arm.cc
@@ -1339,7 +1339,7 @@
 void Assembler::b(int branch_offset, Condition cond) {
   DCHECK((branch_offset & 3) == 0);
   int imm24 = branch_offset >> 2;
-  DCHECK(is_int24(imm24));
+  CHECK(is_int24(imm24));
   emit(cond | B27 | B25 | (imm24 & kImm24Mask));
 
   if (cond == al) {
@@ -1353,7 +1353,7 @@
   positions_recorder()->WriteRecordedPositions();
   DCHECK((branch_offset & 3) == 0);
   int imm24 = branch_offset >> 2;
-  DCHECK(is_int24(imm24));
+  CHECK(is_int24(imm24));
   emit(cond | B27 | B25 | B24 | (imm24 & kImm24Mask));
 }
 
@@ -1363,7 +1363,7 @@
   DCHECK((branch_offset & 1) == 0);
   int h = ((branch_offset & 2) >> 1)*B24;
   int imm24 = branch_offset >> 2;
-  DCHECK(is_int24(imm24));
+  CHECK(is_int24(imm24));
   emit(kSpecialCondition | B27 | B25 | h | (imm24 & kImm24Mask));
 }
 
@@ -1505,7 +1505,7 @@
     //
     // When the label gets bound: target_at extracts the link and target_at_put
     // patches the instructions.
-    DCHECK(is_uint24(link));
+    CHECK(is_uint24(link));
     BlockConstPoolScope block_const_pool(this);
     emit(link);
     nop(dst.code());
diff --git a/src/base/atomicops_internals_mips64_gcc.h b/src/base/atomicops_internals_mips64_gcc.h
index 1f629b6..ccb973c 100644
--- a/src/base/atomicops_internals_mips64_gcc.h
+++ b/src/base/atomicops_internals_mips64_gcc.h
@@ -59,7 +59,7 @@
                        "2:\n"
                        ".set pop\n"
                        : "=&r" (prev), "=m" (*ptr), "=&r" (tmp)
-                       : "Ir" (old_value), "r" (new_value), "m" (*ptr)
+                       : "r" (old_value), "r" (new_value), "m" (*ptr)
                        : "memory");
   return prev;
 }
@@ -196,7 +196,7 @@
                        "2:\n"
                        ".set pop\n"
                        : "=&r" (prev), "=m" (*ptr), "=&r" (tmp)
-                       : "Ir" (old_value), "r" (new_value), "m" (*ptr)
+                       : "r" (old_value), "r" (new_value), "m" (*ptr)
                        : "memory");
   return prev;
 }
diff --git a/src/base/atomicops_internals_mips_gcc.h b/src/base/atomicops_internals_mips_gcc.h
index d33b668..442fdd0 100644
--- a/src/base/atomicops_internals_mips_gcc.h
+++ b/src/base/atomicops_internals_mips_gcc.h
@@ -36,7 +36,7 @@
                        "2:\n"
                        ".set pop\n"
                        : "=&r" (prev), "=&r" (tmp)
-                       : "Ir" (old_value), "r" (new_value), "r" (ptr)
+                       : "r" (old_value), "r" (new_value), "r" (ptr)
                        : "memory");
   return prev;
 }
diff --git a/src/debug.cc b/src/debug.cc
index 841b6cf..6ee52fa 100644
--- a/src/debug.cc
+++ b/src/debug.cc
@@ -40,6 +40,7 @@
       live_edit_enabled_(true),  // TODO(yangguo): set to false by default.
       has_break_points_(false),
       break_disabled_(false),
+      in_debug_event_listener_(false),
       break_on_exception_(false),
       break_on_uncaught_exception_(false),
       script_cache_(NULL),
@@ -864,7 +865,7 @@
   LiveEdit::InitializeThreadLocal(this);
 
   // Just continue if breaks are disabled or debugger cannot be loaded.
-  if (break_disabled_) return;
+  if (break_disabled()) return;
 
   // Enter the debugger.
   DebugScope debug_scope(this);
@@ -2781,7 +2782,8 @@
                               Handle<Object> exec_state,
                               Handle<Object> event_data,
                               v8::Debug::ClientData* client_data) {
-  DisableBreak no_break(this, true);
+  bool previous = in_debug_event_listener_;
+  in_debug_event_listener_ = true;
   if (event_listener_->IsForeign()) {
     // Invoke the C debug event listener.
     v8::Debug::EventCallback callback =
@@ -2805,6 +2807,7 @@
     Execution::TryCall(Handle<JSFunction>::cast(event_listener_),
                        global, arraysize(argv), argv);
   }
+  in_debug_event_listener_ = previous;
 }
 
 
@@ -3058,7 +3061,7 @@
   // Ignore debug break during bootstrapping.
   if (isolate_->bootstrapper()->IsActive()) return;
   // Just continue if breaks are disabled.
-  if (break_disabled_) return;
+  if (break_disabled()) return;
   // Ignore debug break if debugger is not active.
   if (!is_active()) return;
 
diff --git a/src/debug.h b/src/debug.h
index 2afe0f6..cb71ed5 100644
--- a/src/debug.h
+++ b/src/debug.h
@@ -511,6 +511,9 @@
   // Check whether there are commands in the command queue.
   inline bool has_commands() const { return !command_queue_.IsEmpty(); }
   inline bool ignore_events() const { return is_suppressed_ || !is_active_; }
+  inline bool break_disabled() const {
+    return break_disabled_ || in_debug_event_listener_;
+  }
 
   void OnException(Handle<Object> exception, bool uncaught,
                    Handle<Object> promise);
@@ -588,6 +591,7 @@
   bool live_edit_enabled_;
   bool has_break_points_;
   bool break_disabled_;
+  bool in_debug_event_listener_;
   bool break_on_exception_;
   bool break_on_uncaught_exception_;
 
@@ -698,14 +702,21 @@
 class DisableBreak BASE_EMBEDDED {
  public:
   explicit DisableBreak(Debug* debug, bool disable_break)
-    : debug_(debug), old_state_(debug->break_disabled_) {
+      : debug_(debug),
+        previous_break_disabled_(debug->break_disabled_),
+        previous_in_debug_event_listener_(debug->in_debug_event_listener_) {
     debug_->break_disabled_ = disable_break;
+    debug_->in_debug_event_listener_ = disable_break;
   }
-  ~DisableBreak() { debug_->break_disabled_ = old_state_; }
+  ~DisableBreak() {
+    debug_->break_disabled_ = previous_break_disabled_;
+    debug_->in_debug_event_listener_ = previous_in_debug_event_listener_;
+  }
 
  private:
   Debug* debug_;
-  bool old_state_;
+  bool previous_break_disabled_;
+  bool previous_in_debug_event_listener_;
   DISALLOW_COPY_AND_ASSIGN(DisableBreak);
 };
 
diff --git a/src/factory.cc b/src/factory.cc
index 72974a3..19df01a 100644
--- a/src/factory.cc
+++ b/src/factory.cc
@@ -1665,6 +1665,7 @@
     return;
   }
 
+  HandleScope inner_scope(isolate());
   Handle<FixedArrayBase> elms;
   ElementsKind elements_kind = array->GetElementsKind();
   if (IsFastDoubleElementsKind(elements_kind)) {
diff --git a/src/heap/heap.cc b/src/heap/heap.cc
index 5c8cd45..c4eed9c 100644
--- a/src/heap/heap.cc
+++ b/src/heap/heap.cc
@@ -2038,7 +2038,17 @@
       // Order is important: slot might be inside of the target if target
       // was allocated over a dead object and slot comes from the store
       // buffer.
-      *slot = target;
+
+      // Unfortunately, the allocation can also write over the slot if the slot
+      // was in free space and the allocation wrote free list data (such as the
+      // free list map or entry size) over the slot.  We guard against this by
+      // checking that the slot still points to the object being moved.  This
+      // should be sufficient because neither the free list map nor the free
+      // list entry size should look like a new space pointer (the former is an
+      // old space pointer, the latter is word-aligned).
+      if (*slot == object) {
+        *slot = target;
+      }
       MigrateObject(heap, object, target, object_size);
 
       if (object_contents == POINTER_OBJECT) {
diff --git a/src/heap/mark-compact.cc b/src/heap/mark-compact.cc
index 2cefebf..23f259c 100644
--- a/src/heap/mark-compact.cc
+++ b/src/heap/mark-compact.cc
@@ -4222,6 +4222,10 @@
 
   // Deallocate evacuated candidate pages.
   ReleaseEvacuationCandidates();
+  CodeRange* code_range = heap()->isolate()->code_range();
+  if (code_range != NULL && code_range->valid()) {
+    code_range->ReserveEmergencyBlock();
+  }
 
   if (FLAG_print_cumulative_gc_stat) {
     heap_->tracer()->AddSweepingTime(base::OS::TimeCurrentMillis() -
diff --git a/src/heap/spaces.cc b/src/heap/spaces.cc
index 2b696ea..68425c0 100644
--- a/src/heap/spaces.cc
+++ b/src/heap/spaces.cc
@@ -93,7 +93,8 @@
       code_range_(NULL),
       free_list_(0),
       allocation_list_(0),
-      current_allocation_block_index_(0) {}
+      current_allocation_block_index_(0),
+      emergency_block_() {}
 
 
 bool CodeRange::SetUp(size_t requested) {
@@ -139,11 +140,13 @@
     base += kReservedCodeRangePages * base::OS::CommitPageSize();
   }
   Address aligned_base = RoundUp(base, MemoryChunk::kAlignment);
-  size_t size = code_range_->size() - (aligned_base - base);
+  size_t size = code_range_->size() - (aligned_base - base) -
+                kReservedCodeRangePages * base::OS::CommitPageSize();
   allocation_list_.Add(FreeBlock(aligned_base, size));
   current_allocation_block_index_ = 0;
 
   LOG(isolate_, NewEvent("CodeRange", code_range_->address(), requested));
+  ReserveEmergencyBlock();
   return true;
 }
 
@@ -202,35 +205,20 @@
                                      const size_t commit_size,
                                      size_t* allocated) {
   DCHECK(commit_size <= requested_size);
-  DCHECK(allocation_list_.length() == 0 ||
-         current_allocation_block_index_ < allocation_list_.length());
-  if (allocation_list_.length() == 0 ||
-      requested_size > allocation_list_[current_allocation_block_index_].size) {
-    // Find an allocation block large enough.
-    if (!GetNextAllocationBlock(requested_size)) return NULL;
+  FreeBlock current;
+  if (!ReserveBlock(requested_size, &current)) {
+    *allocated = 0;
+    return NULL;
   }
-  // Commit the requested memory at the start of the current allocation block.
-  size_t aligned_requested = RoundUp(requested_size, MemoryChunk::kAlignment);
-  FreeBlock current = allocation_list_[current_allocation_block_index_];
-  if (aligned_requested >= (current.size - Page::kPageSize)) {
-    // Don't leave a small free block, useless for a large object or chunk.
-    *allocated = current.size;
-  } else {
-    *allocated = aligned_requested;
-  }
+  *allocated = current.size;
   DCHECK(*allocated <= current.size);
   DCHECK(IsAddressAligned(current.start, MemoryChunk::kAlignment));
   if (!isolate_->memory_allocator()->CommitExecutableMemory(
           code_range_, current.start, commit_size, *allocated)) {
     *allocated = 0;
+    ReleaseBlock(&current);
     return NULL;
   }
-  allocation_list_[current_allocation_block_index_].start += *allocated;
-  allocation_list_[current_allocation_block_index_].size -= *allocated;
-  if (*allocated == current.size) {
-    // This block is used up, get the next one.
-    GetNextAllocationBlock(0);
-  }
   return current.start;
 }
 
@@ -260,6 +248,49 @@
 }
 
 
+bool CodeRange::ReserveBlock(const size_t requested_size, FreeBlock* block) {
+  DCHECK(allocation_list_.length() == 0 ||
+         current_allocation_block_index_ < allocation_list_.length());
+  if (allocation_list_.length() == 0 ||
+      requested_size > allocation_list_[current_allocation_block_index_].size) {
+    // Find an allocation block large enough.
+    if (!GetNextAllocationBlock(requested_size)) return false;
+  }
+  // Commit the requested memory at the start of the current allocation block.
+  size_t aligned_requested = RoundUp(requested_size, MemoryChunk::kAlignment);
+  *block = allocation_list_[current_allocation_block_index_];
+  // Don't leave a small free block, useless for a large object or chunk.
+  if (aligned_requested < (block->size - Page::kPageSize)) {
+    block->size = aligned_requested;
+  }
+  DCHECK(IsAddressAligned(block->start, MemoryChunk::kAlignment));
+  allocation_list_[current_allocation_block_index_].start += block->size;
+  allocation_list_[current_allocation_block_index_].size -= block->size;
+  return true;
+}
+
+
+void CodeRange::ReleaseBlock(const FreeBlock* block) { free_list_.Add(*block); }
+
+
+void CodeRange::ReserveEmergencyBlock() {
+  const size_t requested_size = MemoryAllocator::CodePageAreaSize();
+  if (emergency_block_.size == 0) {
+    ReserveBlock(requested_size, &emergency_block_);
+  } else {
+    DCHECK(emergency_block_.size >= requested_size);
+  }
+}
+
+
+void CodeRange::ReleaseEmergencyBlock() {
+  if (emergency_block_.size != 0) {
+    ReleaseBlock(&emergency_block_);
+    emergency_block_.size = 0;
+  }
+}
+
+
 // -----------------------------------------------------------------------------
 // MemoryAllocator
 //
@@ -1106,6 +1137,14 @@
 
 
 void PagedSpace::CreateEmergencyMemory() {
+  if (identity() == CODE_SPACE) {
+    // Make the emergency block available to the allocator.
+    CodeRange* code_range = heap()->isolate()->code_range();
+    if (code_range != NULL && code_range->valid()) {
+      code_range->ReleaseEmergencyBlock();
+    }
+    DCHECK(MemoryAllocator::CodePageAreaSize() == AreaSize());
+  }
   emergency_memory_ = heap()->isolate()->memory_allocator()->AllocateChunk(
       AreaSize(), AreaSize(), executable(), this);
 }
diff --git a/src/heap/spaces.h b/src/heap/spaces.h
index ef294b2..dcd3364 100644
--- a/src/heap/spaces.h
+++ b/src/heap/spaces.h
@@ -900,6 +900,9 @@
   bool UncommitRawMemory(Address start, size_t length);
   void FreeRawMemory(Address buf, size_t length);
 
+  void ReserveEmergencyBlock();
+  void ReleaseEmergencyBlock();
+
  private:
   Isolate* isolate_;
 
@@ -908,6 +911,7 @@
   // Plain old data class, just a struct plus a constructor.
   class FreeBlock {
    public:
+    FreeBlock() : start(0), size(0) {}
     FreeBlock(Address start_arg, size_t size_arg)
         : start(start_arg), size(size_arg) {
       DCHECK(IsAddressAligned(start, MemoryChunk::kAlignment));
@@ -932,6 +936,12 @@
   List<FreeBlock> allocation_list_;
   int current_allocation_block_index_;
 
+  // Emergency block guarantees that we can always allocate a page for
+  // evacuation candidates when code space is compacted. Emergency block is
+  // reserved immediately after GC and is released immedietely before
+  // allocating a page for evacuation.
+  FreeBlock emergency_block_;
+
   // Finds a block on the allocation list that contains at least the
   // requested amount of memory.  If none is found, sorts and merges
   // the existing free memory blocks, and searches again.
@@ -940,6 +950,8 @@
   // Compares the start addresses of two free blocks.
   static int CompareFreeBlockAddress(const FreeBlock* left,
                                      const FreeBlock* right);
+  bool ReserveBlock(const size_t requested_size, FreeBlock* block);
+  void ReleaseBlock(const FreeBlock* block);
 
   DISALLOW_COPY_AND_ASSIGN(CodeRange);
 };
diff --git a/src/hydrogen.cc b/src/hydrogen.cc
index 31fcd4c..1028a07 100644
--- a/src/hydrogen.cc
+++ b/src/hydrogen.cc
@@ -8301,6 +8301,7 @@
       if (receiver_map.is_null()) return false;
       if (receiver_map->instance_type() != JS_ARRAY_TYPE) return false;
       ElementsKind elements_kind = receiver_map->elements_kind();
+      if (JSArray::IsReadOnlyLengthDescriptor(receiver_map)) return false;
       if (!IsFastElementsKind(elements_kind)) return false;
       if (receiver_map->is_observed()) return false;
       if (!receiver_map->is_extensible()) return false;
@@ -8418,6 +8419,7 @@
       if (receiver_map.is_null()) return false;
       if (receiver_map->instance_type() != JS_ARRAY_TYPE) return false;
       ElementsKind kind = receiver_map->elements_kind();
+      if (JSArray::IsReadOnlyLengthDescriptor(receiver_map)) return false;
       if (!IsFastElementsKind(kind)) return false;
       if (receiver_map->is_observed()) return false;
       if (!receiver_map->is_extensible()) return false;
@@ -8490,10 +8492,12 @@
                   graph()->GetConstant0(), new_length, Token::LT);
               HValue* key = AddUncasted<HAdd>(new_key, graph()->GetConstant1());
               key->ClearFlag(HValue::kCanOverflow);
+              ElementsKind copy_kind =
+                  kind == FAST_HOLEY_SMI_ELEMENTS ? FAST_HOLEY_ELEMENTS : kind;
               HValue* element = AddUncasted<HLoadKeyed>(
-                  elements, key, lengthiszero, kind, ALLOW_RETURN_HOLE);
-              HStoreKeyed* store = Add<HStoreKeyed>(
-                  elements, new_key, element, kind);
+                  elements, key, lengthiszero, copy_kind, ALLOW_RETURN_HOLE);
+              HStoreKeyed* store =
+                  Add<HStoreKeyed>(elements, new_key, element, copy_kind);
               store->SetFlag(HValue::kAllowUndefinedAsNaN);
             }
             loop.EndBody();
@@ -11314,11 +11318,13 @@
       site_context->ExitScope(current_site, value_object);
       Add<HStoreKeyed>(object_elements, key_constant, result, kind);
     } else {
-      HInstruction* value_instruction =
-          Add<HLoadKeyed>(boilerplate_elements, key_constant,
-                          static_cast<HValue*>(NULL), kind,
-                          ALLOW_RETURN_HOLE);
-      Add<HStoreKeyed>(object_elements, key_constant, value_instruction, kind);
+      ElementsKind copy_kind =
+          kind == FAST_HOLEY_SMI_ELEMENTS ? FAST_HOLEY_ELEMENTS : kind;
+      HInstruction* value_instruction = Add<HLoadKeyed>(
+          boilerplate_elements, key_constant, static_cast<HValue*>(NULL),
+          copy_kind, ALLOW_RETURN_HOLE);
+      Add<HStoreKeyed>(object_elements, key_constant, value_instruction,
+                       copy_kind);
     }
   }
 }
diff --git a/src/jsregexp.cc b/src/jsregexp.cc
index d078d07..8111a12 100644
--- a/src/jsregexp.cc
+++ b/src/jsregexp.cc
@@ -1027,6 +1027,8 @@
 
   inline bool ignore_case() { return ignore_case_; }
   inline bool one_byte() { return one_byte_; }
+  inline bool optimize() { return optimize_; }
+  inline void set_optimize(bool value) { optimize_ = value; }
   FrequencyCollator* frequency_collator() { return &frequency_collator_; }
 
   int current_expansion_factor() { return current_expansion_factor_; }
@@ -1047,6 +1049,7 @@
   bool ignore_case_;
   bool one_byte_;
   bool reg_exp_too_big_;
+  bool optimize_;
   int current_expansion_factor_;
   FrequencyCollator frequency_collator_;
   Zone* zone_;
@@ -1079,6 +1082,7 @@
       ignore_case_(ignore_case),
       one_byte_(one_byte),
       reg_exp_too_big_(false),
+      optimize_(FLAG_regexp_optimization),
       current_expansion_factor_(1),
       frequency_collator_(),
       zone_(zone) {
@@ -1094,16 +1098,6 @@
     Handle<String> pattern) {
   Heap* heap = pattern->GetHeap();
 
-  bool use_slow_safe_regexp_compiler = false;
-  if (heap->total_regexp_code_generated() >
-          RegExpImpl::kRegWxpCompiledLimit &&
-      heap->isolate()->memory_allocator()->SizeExecutable() >
-          RegExpImpl::kRegExpExecutableMemoryLimit) {
-    use_slow_safe_regexp_compiler = true;
-  }
-
-  macro_assembler->set_slow_safe(use_slow_safe_regexp_compiler);
-
 #ifdef DEBUG
   if (FLAG_trace_regexp_assembler)
     macro_assembler_ = new RegExpMacroAssemblerTracer(macro_assembler);
@@ -2257,8 +2251,7 @@
   // We are being asked to make a non-generic version.  Keep track of how many
   // non-generic versions we generate so as not to overdo it.
   trace_count_++;
-  if (FLAG_regexp_optimization &&
-      trace_count_ < kMaxCopiesCodeGenerated &&
+  if (compiler->optimize() && trace_count_ < kMaxCopiesCodeGenerated &&
       compiler->recursion_depth() <= RegExpCompiler::kMaxRecursion) {
     return CONTINUE;
   }
@@ -4137,15 +4130,12 @@
     }
     alt_gen->expects_preload = preload->preload_is_current_;
     bool generate_full_check_inline = false;
-    if (FLAG_regexp_optimization &&
+    if (compiler->optimize() &&
         try_to_emit_quick_check_for_alternative(i == 0) &&
-        alternative.node()->EmitQuickCheck(compiler,
-                                           trace,
-                                           &new_trace,
-                                           preload->preload_has_checked_bounds_,
-                                           &alt_gen->possible_success,
-                                           &alt_gen->quick_check_details,
-                                           fall_through_on_failure)) {
+        alternative.node()->EmitQuickCheck(
+            compiler, trace, &new_trace, preload->preload_has_checked_bounds_,
+            &alt_gen->possible_success, &alt_gen->quick_check_details,
+            fall_through_on_failure)) {
       // Quick check was generated for this choice.
       preload->preload_is_current_ = true;
       preload->preload_has_checked_bounds_ = true;
@@ -4943,7 +4933,7 @@
 
   if (body_can_be_empty) {
     body_start_reg = compiler->AllocateRegister();
-  } else if (FLAG_regexp_optimization && !needs_capture_clearing) {
+  } else if (compiler->optimize() && !needs_capture_clearing) {
     // Only unroll if there are no captures and the body can't be
     // empty.
     {
@@ -6041,6 +6031,8 @@
   }
   RegExpCompiler compiler(data->capture_count, ignore_case, is_one_byte, zone);
 
+  compiler.set_optimize(!TooMuchRegExpCode(pattern));
+
   // Sample some characters from the middle of the string.
   static const int kSampleSize = 128;
 
@@ -6143,6 +6135,8 @@
   RegExpMacroAssemblerIrregexp macro_assembler(codes, zone);
 #endif  // V8_INTERPRETED_REGEXP
 
+  macro_assembler.set_slow_safe(TooMuchRegExpCode(pattern));
+
   // Inserted here, instead of in Assembler, because it depends on information
   // in the AST that isn't replicated in the Node structure.
   static const int kMaxBacksearchLimit = 1024;
@@ -6166,4 +6160,14 @@
 }
 
 
+bool RegExpEngine::TooMuchRegExpCode(Handle<String> pattern) {
+  Heap* heap = pattern->GetHeap();
+  bool too_much = pattern->length() > RegExpImpl::kRegExpTooLargeToOptimize;
+  if (heap->total_regexp_code_generated() > RegExpImpl::kRegExpCompiledLimit &&
+      heap->isolate()->memory_allocator()->SizeExecutable() >
+          RegExpImpl::kRegExpExecutableMemoryLimit) {
+    too_much = true;
+  }
+  return too_much;
+}
 }}  // namespace v8::internal
diff --git a/src/jsregexp.h b/src/jsregexp.h
index c65adea..c81ccb2 100644
--- a/src/jsregexp.h
+++ b/src/jsregexp.h
@@ -213,7 +213,8 @@
   // total regexp code compiled including code that has subsequently been freed
   // and the total executable memory at any point.
   static const int kRegExpExecutableMemoryLimit = 16 * MB;
-  static const int kRegWxpCompiledLimit = 1 * MB;
+  static const int kRegExpCompiledLimit = 1 * MB;
+  static const int kRegExpTooLargeToOptimize = 10 * KB;
 
  private:
   static bool CompileIrregexp(Handle<JSRegExp> re,
@@ -1666,6 +1667,8 @@
                                    Handle<String> sample_subject,
                                    bool is_one_byte, Zone* zone);
 
+  static bool TooMuchRegExpCode(Handle<String> pattern);
+
   static void DotPrint(const char* label, RegExpNode* node, bool ignore_case);
 };
 
diff --git a/src/objects.cc b/src/objects.cc
index 9933e9c..a4c3bea 100644
--- a/src/objects.cc
+++ b/src/objects.cc
@@ -2228,17 +2228,20 @@
 // Invalidates a transition target at |key|, and installs |new_descriptors| over
 // the current instance_descriptors to ensure proper sharing of descriptor
 // arrays.
-void Map::DeprecateTarget(Name* key, DescriptorArray* new_descriptors) {
+// Returns true if the transition target at given key was deprecated.
+bool Map::DeprecateTarget(Name* key, DescriptorArray* new_descriptors) {
+  bool transition_target_deprecated = false;
   if (HasTransitionArray()) {
     TransitionArray* transitions = this->transitions();
     int transition = transitions->Search(key);
     if (transition != TransitionArray::kNotFound) {
       transitions->GetTarget(transition)->DeprecateTransitionTree();
+      transition_target_deprecated = true;
     }
   }
 
   // Don't overwrite the empty descriptor array.
-  if (NumberOfOwnDescriptors() == 0) return;
+  if (NumberOfOwnDescriptors() == 0) return transition_target_deprecated;
 
   DescriptorArray* to_replace = instance_descriptors();
   Map* current = this;
@@ -2252,6 +2255,7 @@
   }
 
   set_owns_descriptors(false);
+  return transition_target_deprecated;
 }
 
 
@@ -2685,9 +2689,17 @@
   int split_nof = split_map->NumberOfOwnDescriptors();
   DCHECK_NE(old_nof, split_nof);
 
-  split_map->DeprecateTarget(
-      old_descriptors->GetKey(split_nof), *new_descriptors);
+  bool transition_target_deprecated =
+      split_map->DeprecateTarget(old_descriptors->GetKey(split_nof),
+                                 *new_descriptors);
 
+  // If |transition_target_deprecated| is true then the transition array
+  // already contains entry for given descriptor. This means that the transition
+  // could be inserted regardless of whether transitions array is full or not.
+  if (!transition_target_deprecated && !split_map->CanHaveMoreTransitions()) {
+    return CopyGeneralizeAllRepresentations(old_map, modify_index, store_mode,
+                                            "can't have more transitions");
+  }
   if (FLAG_trace_generalization) {
     PropertyDetails old_details = old_descriptors->GetDetails(modify_index);
     PropertyDetails new_details = new_descriptors->GetDetails(modify_index);
@@ -2709,10 +2721,6 @@
   // Add missing transitions.
   Handle<Map> new_map = split_map;
   for (int i = split_nof; i < old_nof; ++i) {
-    if (!new_map->CanHaveMoreTransitions()) {
-      return CopyGeneralizeAllRepresentations(old_map, modify_index, store_mode,
-                                              "can't have more transitions");
-    }
     new_map = CopyInstallDescriptors(new_map, i, new_descriptors);
   }
   new_map->set_owns_descriptors(true);
diff --git a/src/objects.h b/src/objects.h
index d12896f..3ae21cb 100644
--- a/src/objects.h
+++ b/src/objects.h
@@ -6362,7 +6362,7 @@
   void ZapTransitions();
 
   void DeprecateTransitionTree();
-  void DeprecateTarget(Name* key, DescriptorArray* new_descriptors);
+  bool DeprecateTarget(Name* key, DescriptorArray* new_descriptors);
 
   Map* FindLastMatchMap(int verbatim, int length, DescriptorArray* descriptors);
 
diff --git a/src/runtime/runtime-scopes.cc b/src/runtime/runtime-scopes.cc
index c935cda..cd13b39 100644
--- a/src/runtime/runtime-scopes.cc
+++ b/src/runtime/runtime-scopes.cc
@@ -298,9 +298,11 @@
 
   // The declared const was configurable, and may have been deleted in the
   // meanwhile. If so, re-introduce the variable in the context extension.
-  DCHECK(context_arg->has_extension());
   if (attributes == ABSENT) {
-    holder = handle(context_arg->extension(), isolate);
+    Handle<Context> declaration_context(context_arg->declaration_context());
+    DCHECK(declaration_context->has_extension());
+    holder = handle(declaration_context->extension(), isolate);
+    CHECK(holder->IsJSObject());
   } else {
     // For JSContextExtensionObjects, the initializer can be run multiple times
     // if in a for loop: for (var i = 0; i < 2; i++) { const x = i; }. Only the
diff --git a/src/version.cc b/src/version.cc
index 70a1f9d..0ef9dda 100644
--- a/src/version.cc
+++ b/src/version.cc
@@ -35,7 +35,7 @@
 #define MAJOR_VERSION     3
 #define MINOR_VERSION     30
 #define BUILD_NUMBER      33
-#define PATCH_LEVEL       0
+#define PATCH_LEVEL       16
 // Use 1 for candidates and 0 otherwise.
 // (Boolean macro values are not supported by all preprocessors.)
 #define IS_CANDIDATE_VERSION 0
diff --git a/src/x87/interface-descriptors-x87.cc b/src/x87/interface-descriptors-x87.cc
index 7640343..26ce4dc 100644
--- a/src/x87/interface-descriptors-x87.cc
+++ b/src/x87/interface-descriptors-x87.cc
@@ -155,6 +155,15 @@
 }
 
 
+void AllocateHeapNumberDescriptor::Initialize(
+    CallInterfaceDescriptorData* data) {
+  // register state
+  // esi -- context
+  Register registers[] = {esi};
+  data->Initialize(arraysize(registers), registers, nullptr);
+}
+
+
 void ArrayConstructorConstantArgCountDescriptor::Initialize(
     CallInterfaceDescriptorData* data) {
   // register state
diff --git a/src/x87/lithium-codegen-x87.cc b/src/x87/lithium-codegen-x87.cc
index 2766b65..1945cc0 100644
--- a/src/x87/lithium-codegen-x87.cc
+++ b/src/x87/lithium-codegen-x87.cc
@@ -4065,8 +4065,8 @@
     __ mov(esi, Operand(ebp, StandardFrameConstants::kContextOffset));
     __ push(temp_result);
     __ CallRuntimeSaveDoubles(Runtime::kMathSqrtRT);
-    RecordSafepointWithRegisters(
-        instr->pointer_map(), 0, Safepoint::kNoLazyDeopt);
+    RecordSafepointWithRegisters(instr->pointer_map(), 1,
+                                 Safepoint::kNoLazyDeopt);
     __ StoreToSafepointRegisterSlot(temp_result, eax);
   }
   X87PrepareToWrite(result_reg);
@@ -4280,7 +4280,7 @@
     __ mov(esi, Operand(ebp, StandardFrameConstants::kContextOffset));
     __ push(temp_result);
     __ CallRuntimeSaveDoubles(Runtime::kMathExpRT);
-    RecordSafepointWithRegisters(instr->pointer_map(), 0,
+    RecordSafepointWithRegisters(instr->pointer_map(), 1,
                                  Safepoint::kNoLazyDeopt);
     __ StoreToSafepointRegisterSlot(temp_result, eax);
   }
diff --git a/test/cctest/test-alloc.cc b/test/cctest/test-alloc.cc
index 54d516e..2e071ac 100644
--- a/test/cctest/test-alloc.cc
+++ b/test/cctest/test-alloc.cc
@@ -198,7 +198,8 @@
   const size_t code_range_size = 32*MB;
   CcTest::InitializeVM();
   CodeRange code_range(reinterpret_cast<Isolate*>(CcTest::isolate()));
-  code_range.SetUp(code_range_size);
+  code_range.SetUp(code_range_size +
+                   kReservedCodeRangePages * v8::base::OS::CommitPageSize());
   size_t current_allocated = 0;
   size_t total_allocated = 0;
   List< ::Block> blocks(1000);
diff --git a/test/cctest/test-api.cc b/test/cctest/test-api.cc
index 068a07e..2bcd920 100644
--- a/test/cctest/test-api.cc
+++ b/test/cctest/test-api.cc
@@ -742,23 +742,28 @@
 }
 
 
-class DummyResource : public v8::String::ExternalStringResource {
+class RandomLengthResource : public v8::String::ExternalStringResource {
  public:
+  explicit RandomLengthResource(int length) : length_(length) {}
   virtual const uint16_t* data() const { return string_; }
-  virtual size_t length() const { return 1 << 30; }
+  virtual size_t length() const { return length_; }
 
  private:
   uint16_t string_[10];
+  int length_;
 };
 
 
-class DummyOneByteResource : public v8::String::ExternalOneByteStringResource {
+class RandomLengthOneByteResource
+    : public v8::String::ExternalOneByteStringResource {
  public:
+  explicit RandomLengthOneByteResource(int length) : length_(length) {}
   virtual const char* data() const { return string_; }
-  virtual size_t length() const { return 1 << 30; }
+  virtual size_t length() const { return length_; }
 
  private:
   char string_[10];
+  int length_;
 };
 
 
@@ -767,7 +772,7 @@
     LocalContext env;
     v8::HandleScope scope(env->GetIsolate());
     v8::TryCatch try_catch;
-    DummyOneByteResource r;
+    RandomLengthOneByteResource r(1 << 30);
     v8::Local<v8::String> str = v8::String::NewExternal(CcTest::isolate(), &r);
     CHECK(str.IsEmpty());
     CHECK(try_catch.HasCaught());
@@ -779,7 +784,7 @@
     LocalContext env;
     v8::HandleScope scope(env->GetIsolate());
     v8::TryCatch try_catch;
-    DummyResource r;
+    RandomLengthResource r(1 << 30);
     v8::Local<v8::String> str = v8::String::NewExternal(CcTest::isolate(), &r);
     CHECK(str.IsEmpty());
     CHECK(try_catch.HasCaught());
@@ -24164,3 +24169,17 @@
   const char* chunks[] = {chunk1, chunk2, "foo();", NULL};
   RunStreamingTest(chunks, v8::ScriptCompiler::StreamedSource::UTF8);
 }
+
+
+TEST(StringConcatOverflow) {
+  v8::V8::Initialize();
+  v8::HandleScope scope(CcTest::isolate());
+  RandomLengthOneByteResource* r =
+      new RandomLengthOneByteResource(i::String::kMaxLength);
+  v8::Local<v8::String> str = v8::String::NewExternal(CcTest::isolate(), r);
+  CHECK(!str.IsEmpty());
+  v8::TryCatch try_catch;
+  v8::Local<v8::String> result = v8::String::Concat(str, str);
+  CHECK(result.IsEmpty());
+  CHECK(!try_catch.HasCaught());
+}
diff --git a/test/cctest/test-heap.cc b/test/cctest/test-heap.cc
index 543a89d..cc44c39 100644
--- a/test/cctest/test-heap.cc
+++ b/test/cctest/test-heap.cc
@@ -1694,6 +1694,64 @@
 }
 
 
+TEST(TestSizeOfRegExpCode) {
+  if (!FLAG_regexp_optimization) return;
+
+  v8::V8::Initialize();
+
+  Isolate* isolate = CcTest::i_isolate();
+  HandleScope scope(isolate);
+
+  LocalContext context;
+
+  // Adjust source below and this check to match
+  // RegExpImple::kRegExpTooLargeToOptimize.
+  DCHECK_EQ(i::RegExpImpl::kRegExpTooLargeToOptimize, 10 * KB);
+
+  // Compile a regexp that is much larger if we are using regexp optimizations.
+  CompileRun(
+      "var reg_exp_source = '(?:a|bc|def|ghij|klmno|pqrstu)';"
+      "var half_size_reg_exp;"
+      "while (reg_exp_source.length < 10 * 1024) {"
+      "  half_size_reg_exp = reg_exp_source;"
+      "  reg_exp_source = reg_exp_source + reg_exp_source;"
+      "}"
+      // Flatten string.
+      "reg_exp_source.match(/f/);");
+
+  // Get initial heap size after several full GCs, which will stabilize
+  // the heap size and return with sweeping finished completely.
+  CcTest::heap()->CollectAllGarbage(Heap::kNoGCFlags);
+  CcTest::heap()->CollectAllGarbage(Heap::kNoGCFlags);
+  CcTest::heap()->CollectAllGarbage(Heap::kNoGCFlags);
+  CcTest::heap()->CollectAllGarbage(Heap::kNoGCFlags);
+  CcTest::heap()->CollectAllGarbage(Heap::kNoGCFlags);
+  MarkCompactCollector* collector = CcTest::heap()->mark_compact_collector();
+  if (collector->sweeping_in_progress()) {
+    collector->EnsureSweepingCompleted();
+  }
+  int initial_size = static_cast<int>(CcTest::heap()->SizeOfObjects());
+
+  CompileRun("'foo'.match(reg_exp_source);");
+  CcTest::heap()->CollectAllGarbage(Heap::kNoGCFlags);
+  int size_with_regexp = static_cast<int>(CcTest::heap()->SizeOfObjects());
+
+  CompileRun("'foo'.match(half_size_reg_exp);");
+  CcTest::heap()->CollectAllGarbage(Heap::kNoGCFlags);
+  int size_with_optimized_regexp =
+      static_cast<int>(CcTest::heap()->SizeOfObjects());
+
+  int size_of_regexp_code = size_with_regexp - initial_size;
+
+  CHECK_LE(size_of_regexp_code, 500 * KB);
+
+  // Small regexp is half the size, but compiles to more than twice the code
+  // due to the optimization steps.
+  CHECK_GE(size_with_optimized_regexp,
+           size_with_regexp + size_of_regexp_code * 2);
+}
+
+
 TEST(TestSizeOfObjects) {
   v8::V8::Initialize();
 
@@ -4742,6 +4800,23 @@
 }
 
 
+TEST(Regress442710) {
+  CcTest::InitializeVM();
+  Isolate* isolate = CcTest::i_isolate();
+  Heap* heap = isolate->heap();
+  Factory* factory = isolate->factory();
+
+  HandleScope sc(isolate);
+  Handle<GlobalObject> global(CcTest::i_isolate()->context()->global_object());
+  Handle<JSArray> array = factory->NewJSArray(2);
+
+  Handle<String> name = factory->InternalizeUtf8String("testArray");
+  JSReceiver::SetProperty(global, name, array, SLOPPY).Check();
+  CompileRun("testArray[0] = 1; testArray[1] = 2; testArray.shift();");
+  heap->CollectGarbage(OLD_POINTER_SPACE);
+}
+
+
 #ifdef DEBUG
 TEST(PathTracer) {
   CcTest::InitializeVM();
diff --git a/test/cctest/test-spaces.cc b/test/cctest/test-spaces.cc
index 9ad4423..a84b867 100644
--- a/test/cctest/test-spaces.cc
+++ b/test/cctest/test-spaces.cc
@@ -216,13 +216,14 @@
   if (!code_range->SetUp(
           code_range_size +
           RoundUp(v8::base::OS::CommitPageSize() * kReservedCodeRangePages,
-                  MemoryChunk::kAlignment))) {
+                  MemoryChunk::kAlignment) +
+          v8::internal::MemoryAllocator::CodePageAreaSize())) {
     return;
   }
   Address address;
   size_t size;
-  address = code_range->AllocateRawMemory(code_range_size - MB,
-                                          code_range_size - MB, &size);
+  address = code_range->AllocateRawMemory(code_range_size - 2 * MB,
+                                          code_range_size - 2 * MB, &size);
   CHECK(address != NULL);
   Address null_address;
   size_t null_size;
diff --git a/test/mjsunit/array-shift4.js b/test/mjsunit/array-shift4.js
new file mode 100644
index 0000000..669b11a
--- /dev/null
+++ b/test/mjsunit/array-shift4.js
@@ -0,0 +1,24 @@
+// Copyright 2014 the V8 project authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// Flags: --allow-natives-syntax
+
+// Inlining shift with holey smi arrays shouldn't deopt just because it
+// encounters the hole on the copy step.
+function doShift(a) {
+  var x = a.shift();
+  return x;
+}
+
+function makeArray() {
+  var a = [1, 2,, 3];
+  a[0] = 2;
+  return a;
+}
+
+doShift(makeArray());
+doShift(makeArray());
+%OptimizeFunctionOnNextCall(doShift);
+doShift(makeArray());
+assertOptimized(doShift);
diff --git a/test/mjsunit/regress/regress-410030.js b/test/mjsunit/regress/regress-410030.js
new file mode 100644
index 0000000..efd4b1e
--- /dev/null
+++ b/test/mjsunit/regress/regress-410030.js
@@ -0,0 +1,43 @@
+// Copyright 2014 the V8 project authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+try {
+  throw 0;
+} catch(e) {
+  assertSame(3, eval("delete x; const x=3; x"));
+}
+
+
+try {
+  throw 0;
+} catch(e) {
+  assertSame(3, (1,eval)("delete x1; const x1=3; x1"));
+}
+
+
+try {
+  throw 0;
+} catch(e) {
+  with({}) {
+    assertSame(3, eval("delete x2; const x2=3; x2"));
+  }
+}
+
+
+(function f() {
+  try {
+    throw 0;
+  } catch(e) {
+    assertSame(3, eval("delete x; const x=3; x"));
+  }
+}());
+
+
+(function f() {
+  try {
+    throw 0;
+  } catch(e) {
+    assertSame(3, (1,eval)("delete x4; const x4=3; x4"));
+  }
+}());
diff --git a/test/mjsunit/regress/regress-435073.js b/test/mjsunit/regress/regress-435073.js
new file mode 100644
index 0000000..dbaa612
--- /dev/null
+++ b/test/mjsunit/regress/regress-435073.js
@@ -0,0 +1,12 @@
+// Copyright 2014 the V8 project authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// Flags: --allow-natives-syntax --verify-heap
+
+function test(x) { [x,,]; }
+
+test(0);
+test(0);
+%OptimizeFunctionOnNextCall(test);
+test(0);
diff --git a/test/mjsunit/regress/regress-crbug-432493.js b/test/mjsunit/regress/regress-crbug-432493.js
new file mode 100644
index 0000000..87c4f83
--- /dev/null
+++ b/test/mjsunit/regress/regress-crbug-432493.js
@@ -0,0 +1,57 @@
+// Copyright 2014 the V8 project authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// Flags: --expose-debug-as debug
+
+function f() {
+  var a = 1;
+  var b = 2;
+  return a + b;
+}
+
+var exception = null;
+var break_count = 0;
+var throw_count = 0;
+
+function listener(event, exec_state, event_data, data) {
+  try {
+    if (event == Debug.DebugEvent.Break) {
+      break_count++;
+      // Disable all breakpoints from within the debug event callback.
+      Debug.debuggerFlags().breakPointsActive.setValue(false);
+    } else if (event = Debug.DebugEvent.Exception) {
+      throw_count++;
+      // Enable all breakpoints from within the debug event callback.
+      Debug.debuggerFlags().breakPointsActive.setValue(true);
+    }
+  } catch (e) {
+    exception = e;
+  }
+}
+
+Debug = debug.Debug;
+
+Debug.setListener(listener);
+Debug.setBreakOnException();
+Debug.setBreakPoint(f, 2);
+
+f();
+f();
+
+assertEquals(1, break_count);
+assertEquals(0, throw_count);
+
+// Trigger exception event.
+try { throw 1; } catch (e) {}
+
+f();
+f();
+
+Debug.setListener(null);
+Debug.clearBreakOnException();
+Debug.debuggerFlags().breakPointsActive.setValue(true);
+
+assertEquals(2, break_count);
+assertEquals(1, throw_count);
+assertNull(exception);
diff --git a/tools/gyp/mksnapshot.host.darwin-arm.mk b/tools/gyp/mksnapshot.host.darwin-arm.mk
index d94a958..0c4f379 100644
--- a/tools/gyp/mksnapshot.host.darwin-arm.mk
+++ b/tools/gyp/mksnapshot.host.darwin-arm.mk
@@ -40,7 +40,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -129,7 +128,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -188,8 +186,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/mksnapshot.host.darwin-arm64.mk b/tools/gyp/mksnapshot.host.darwin-arm64.mk
index f850695..1234a94 100644
--- a/tools/gyp/mksnapshot.host.darwin-arm64.mk
+++ b/tools/gyp/mksnapshot.host.darwin-arm64.mk
@@ -40,7 +40,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -127,7 +126,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -184,8 +182,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/mksnapshot.host.darwin-mips.mk b/tools/gyp/mksnapshot.host.darwin-mips.mk
index a2aa745..aa9e51a 100644
--- a/tools/gyp/mksnapshot.host.darwin-mips.mk
+++ b/tools/gyp/mksnapshot.host.darwin-mips.mk
@@ -90,8 +90,6 @@
 	'-DV8_TARGET_ARCH_MIPS' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS32R2' \
-	'-DFPU_MODE_FP32' \
 	'-DV8_I18N_SUPPORT' \
 	'-DU_USING_ICU_NAMESPACE=0' \
 	'-DU_ENABLE_DYLOAD=0' \
@@ -99,6 +97,7 @@
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-DFPU_MODE_FP32' \
 	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
 	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
 	'-D_DEBUG' \
@@ -183,8 +182,6 @@
 	'-DV8_TARGET_ARCH_MIPS' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS32R2' \
-	'-DFPU_MODE_FP32' \
 	'-DV8_I18N_SUPPORT' \
 	'-DU_USING_ICU_NAMESPACE=0' \
 	'-DU_ENABLE_DYLOAD=0' \
@@ -192,10 +189,10 @@
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-DFPU_MODE_FP32' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/mksnapshot.host.darwin-mips64.mk b/tools/gyp/mksnapshot.host.darwin-mips64.mk
index 27e364f..7918f82 100644
--- a/tools/gyp/mksnapshot.host.darwin-mips64.mk
+++ b/tools/gyp/mksnapshot.host.darwin-mips64.mk
@@ -89,7 +89,6 @@
 	'-DV8_TARGET_ARCH_MIPS64' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS64R2' \
 	'-DV8_I18N_SUPPORT' \
 	'-DU_USING_ICU_NAMESPACE=0' \
 	'-DU_ENABLE_DYLOAD=0' \
@@ -97,6 +96,7 @@
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-D_MIPS_ARCH_MIPS64R6' \
 	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
 	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
 	'-D_DEBUG' \
@@ -180,7 +180,6 @@
 	'-DV8_TARGET_ARCH_MIPS64' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS64R2' \
 	'-DV8_I18N_SUPPORT' \
 	'-DU_USING_ICU_NAMESPACE=0' \
 	'-DU_ENABLE_DYLOAD=0' \
@@ -188,10 +187,10 @@
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-D_MIPS_ARCH_MIPS64R6' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/mksnapshot.host.darwin-x86.mk b/tools/gyp/mksnapshot.host.darwin-x86.mk
index 073a5ae..026d4bd 100644
--- a/tools/gyp/mksnapshot.host.darwin-x86.mk
+++ b/tools/gyp/mksnapshot.host.darwin-x86.mk
@@ -40,7 +40,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -128,7 +127,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -186,8 +184,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/mksnapshot.host.darwin-x86_64.mk b/tools/gyp/mksnapshot.host.darwin-x86_64.mk
index 97dd5e7..b981eb5 100644
--- a/tools/gyp/mksnapshot.host.darwin-x86_64.mk
+++ b/tools/gyp/mksnapshot.host.darwin-x86_64.mk
@@ -40,7 +40,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -128,7 +127,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -186,8 +184,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/mksnapshot.host.linux-arm.mk b/tools/gyp/mksnapshot.host.linux-arm.mk
index a2bc764..4613380 100644
--- a/tools/gyp/mksnapshot.host.linux-arm.mk
+++ b/tools/gyp/mksnapshot.host.linux-arm.mk
@@ -40,7 +40,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -129,7 +128,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -188,8 +186,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/mksnapshot.host.linux-arm64.mk b/tools/gyp/mksnapshot.host.linux-arm64.mk
index ff5f296..13d1817 100644
--- a/tools/gyp/mksnapshot.host.linux-arm64.mk
+++ b/tools/gyp/mksnapshot.host.linux-arm64.mk
@@ -40,7 +40,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -127,7 +126,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -184,8 +182,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/mksnapshot.host.linux-mips.mk b/tools/gyp/mksnapshot.host.linux-mips.mk
index e7b6c46..ec93ce0 100644
--- a/tools/gyp/mksnapshot.host.linux-mips.mk
+++ b/tools/gyp/mksnapshot.host.linux-mips.mk
@@ -90,8 +90,6 @@
 	'-DV8_TARGET_ARCH_MIPS' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS32R2' \
-	'-DFPU_MODE_FP32' \
 	'-DV8_I18N_SUPPORT' \
 	'-DU_USING_ICU_NAMESPACE=0' \
 	'-DU_ENABLE_DYLOAD=0' \
@@ -99,6 +97,7 @@
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-DFPU_MODE_FP32' \
 	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
 	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
 	'-D_DEBUG' \
@@ -183,8 +182,6 @@
 	'-DV8_TARGET_ARCH_MIPS' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS32R2' \
-	'-DFPU_MODE_FP32' \
 	'-DV8_I18N_SUPPORT' \
 	'-DU_USING_ICU_NAMESPACE=0' \
 	'-DU_ENABLE_DYLOAD=0' \
@@ -192,10 +189,10 @@
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-DFPU_MODE_FP32' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/mksnapshot.host.linux-mips64.mk b/tools/gyp/mksnapshot.host.linux-mips64.mk
index bc48535..d0bc8ec 100644
--- a/tools/gyp/mksnapshot.host.linux-mips64.mk
+++ b/tools/gyp/mksnapshot.host.linux-mips64.mk
@@ -89,7 +89,6 @@
 	'-DV8_TARGET_ARCH_MIPS64' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS64R2' \
 	'-DV8_I18N_SUPPORT' \
 	'-DU_USING_ICU_NAMESPACE=0' \
 	'-DU_ENABLE_DYLOAD=0' \
@@ -97,6 +96,7 @@
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-D_MIPS_ARCH_MIPS64R6' \
 	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
 	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
 	'-D_DEBUG' \
@@ -180,7 +180,6 @@
 	'-DV8_TARGET_ARCH_MIPS64' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS64R2' \
 	'-DV8_I18N_SUPPORT' \
 	'-DU_USING_ICU_NAMESPACE=0' \
 	'-DU_ENABLE_DYLOAD=0' \
@@ -188,10 +187,10 @@
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-D_MIPS_ARCH_MIPS64R6' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/mksnapshot.host.linux-x86.mk b/tools/gyp/mksnapshot.host.linux-x86.mk
index 198a270..945e245 100644
--- a/tools/gyp/mksnapshot.host.linux-x86.mk
+++ b/tools/gyp/mksnapshot.host.linux-x86.mk
@@ -40,7 +40,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -128,7 +127,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -186,8 +184,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/mksnapshot.host.linux-x86_64.mk b/tools/gyp/mksnapshot.host.linux-x86_64.mk
index 7a29e7b..77731a9 100644
--- a/tools/gyp/mksnapshot.host.linux-x86_64.mk
+++ b/tools/gyp/mksnapshot.host.linux-x86_64.mk
@@ -40,7 +40,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -128,7 +127,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -186,8 +184,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_base.host.darwin-arm.mk b/tools/gyp/v8_base.host.darwin-arm.mk
index 0826c60..840dd46 100644
--- a/tools/gyp/v8_base.host.darwin-arm.mk
+++ b/tools/gyp/v8_base.host.darwin-arm.mk
@@ -290,7 +290,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -380,7 +379,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -440,8 +438,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_base.host.darwin-arm64.mk b/tools/gyp/v8_base.host.darwin-arm64.mk
index b1fb21e..c1b98fc 100644
--- a/tools/gyp/v8_base.host.darwin-arm64.mk
+++ b/tools/gyp/v8_base.host.darwin-arm64.mk
@@ -294,7 +294,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -382,7 +381,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -440,8 +438,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_base.host.darwin-mips.mk b/tools/gyp/v8_base.host.darwin-mips.mk
index 98fa808..8474e5d 100644
--- a/tools/gyp/v8_base.host.darwin-mips.mk
+++ b/tools/gyp/v8_base.host.darwin-mips.mk
@@ -340,8 +340,6 @@
 	'-DV8_TARGET_ARCH_MIPS' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS32R2' \
-	'-DFPU_MODE_FP32' \
 	'-DV8_I18N_SUPPORT' \
 	'-DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC' \
 	'-DU_USING_ICU_NAMESPACE=0' \
@@ -350,6 +348,7 @@
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-DFPU_MODE_FP32' \
 	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
 	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
 	'-D_DEBUG' \
@@ -434,8 +433,6 @@
 	'-DV8_TARGET_ARCH_MIPS' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS32R2' \
-	'-DFPU_MODE_FP32' \
 	'-DV8_I18N_SUPPORT' \
 	'-DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC' \
 	'-DU_USING_ICU_NAMESPACE=0' \
@@ -444,10 +441,10 @@
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-DFPU_MODE_FP32' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_base.host.darwin-mips64.mk b/tools/gyp/v8_base.host.darwin-mips64.mk
index f206c22..f996275 100644
--- a/tools/gyp/v8_base.host.darwin-mips64.mk
+++ b/tools/gyp/v8_base.host.darwin-mips64.mk
@@ -336,7 +336,6 @@
 	'-DV8_TARGET_ARCH_MIPS64' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS64R2' \
 	'-DV8_I18N_SUPPORT' \
 	'-DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC' \
 	'-DU_USING_ICU_NAMESPACE=0' \
@@ -345,6 +344,7 @@
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-D_MIPS_ARCH_MIPS64R6' \
 	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
 	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
 	'-D_DEBUG' \
@@ -428,7 +428,6 @@
 	'-DV8_TARGET_ARCH_MIPS64' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS64R2' \
 	'-DV8_I18N_SUPPORT' \
 	'-DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC' \
 	'-DU_USING_ICU_NAMESPACE=0' \
@@ -437,10 +436,10 @@
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-D_MIPS_ARCH_MIPS64R6' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_base.host.darwin-x86.mk b/tools/gyp/v8_base.host.darwin-x86.mk
index 575f882..fbe8cf1 100644
--- a/tools/gyp/v8_base.host.darwin-x86.mk
+++ b/tools/gyp/v8_base.host.darwin-x86.mk
@@ -288,7 +288,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -377,7 +376,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -436,8 +434,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_base.host.darwin-x86_64.mk b/tools/gyp/v8_base.host.darwin-x86_64.mk
index 2935671..bea4d03 100644
--- a/tools/gyp/v8_base.host.darwin-x86_64.mk
+++ b/tools/gyp/v8_base.host.darwin-x86_64.mk
@@ -288,7 +288,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -377,7 +376,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -436,8 +434,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_base.host.linux-arm.mk b/tools/gyp/v8_base.host.linux-arm.mk
index d73a482..fa9ceba 100644
--- a/tools/gyp/v8_base.host.linux-arm.mk
+++ b/tools/gyp/v8_base.host.linux-arm.mk
@@ -290,7 +290,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -380,7 +379,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -440,8 +438,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_base.host.linux-arm64.mk b/tools/gyp/v8_base.host.linux-arm64.mk
index b1fb21e..c1b98fc 100644
--- a/tools/gyp/v8_base.host.linux-arm64.mk
+++ b/tools/gyp/v8_base.host.linux-arm64.mk
@@ -294,7 +294,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -382,7 +381,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -440,8 +438,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_base.host.linux-mips.mk b/tools/gyp/v8_base.host.linux-mips.mk
index 98fa808..8474e5d 100644
--- a/tools/gyp/v8_base.host.linux-mips.mk
+++ b/tools/gyp/v8_base.host.linux-mips.mk
@@ -340,8 +340,6 @@
 	'-DV8_TARGET_ARCH_MIPS' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS32R2' \
-	'-DFPU_MODE_FP32' \
 	'-DV8_I18N_SUPPORT' \
 	'-DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC' \
 	'-DU_USING_ICU_NAMESPACE=0' \
@@ -350,6 +348,7 @@
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-DFPU_MODE_FP32' \
 	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
 	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
 	'-D_DEBUG' \
@@ -434,8 +433,6 @@
 	'-DV8_TARGET_ARCH_MIPS' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS32R2' \
-	'-DFPU_MODE_FP32' \
 	'-DV8_I18N_SUPPORT' \
 	'-DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC' \
 	'-DU_USING_ICU_NAMESPACE=0' \
@@ -444,10 +441,10 @@
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-DFPU_MODE_FP32' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_base.host.linux-mips64.mk b/tools/gyp/v8_base.host.linux-mips64.mk
index f206c22..f996275 100644
--- a/tools/gyp/v8_base.host.linux-mips64.mk
+++ b/tools/gyp/v8_base.host.linux-mips64.mk
@@ -336,7 +336,6 @@
 	'-DV8_TARGET_ARCH_MIPS64' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS64R2' \
 	'-DV8_I18N_SUPPORT' \
 	'-DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC' \
 	'-DU_USING_ICU_NAMESPACE=0' \
@@ -345,6 +344,7 @@
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-D_MIPS_ARCH_MIPS64R6' \
 	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
 	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
 	'-D_DEBUG' \
@@ -428,7 +428,6 @@
 	'-DV8_TARGET_ARCH_MIPS64' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS64R2' \
 	'-DV8_I18N_SUPPORT' \
 	'-DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC' \
 	'-DU_USING_ICU_NAMESPACE=0' \
@@ -437,10 +436,10 @@
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-D_MIPS_ARCH_MIPS64R6' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_base.host.linux-x86.mk b/tools/gyp/v8_base.host.linux-x86.mk
index 575f882..fbe8cf1 100644
--- a/tools/gyp/v8_base.host.linux-x86.mk
+++ b/tools/gyp/v8_base.host.linux-x86.mk
@@ -288,7 +288,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -377,7 +376,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -436,8 +434,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_base.host.linux-x86_64.mk b/tools/gyp/v8_base.host.linux-x86_64.mk
index 2935671..bea4d03 100644
--- a/tools/gyp/v8_base.host.linux-x86_64.mk
+++ b/tools/gyp/v8_base.host.linux-x86_64.mk
@@ -288,7 +288,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -377,7 +376,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -436,8 +434,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_base.target.darwin-arm.mk b/tools/gyp/v8_base.target.darwin-arm.mk
index cf6d389..90c4518 100644
--- a/tools/gyp/v8_base.target.darwin-arm.mk
+++ b/tools/gyp/v8_base.target.darwin-arm.mk
@@ -290,7 +290,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -406,7 +405,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -486,8 +484,7 @@
 	'-DCHROME_BUILD_ID=""' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_base.target.darwin-arm64.mk b/tools/gyp/v8_base.target.darwin-arm64.mk
index c4e9d5f..a3d5bf8 100644
--- a/tools/gyp/v8_base.target.darwin-arm64.mk
+++ b/tools/gyp/v8_base.target.darwin-arm64.mk
@@ -293,7 +293,6 @@
 # Flags passed to both C and C++ files.
 MY_CFLAGS_Debug := \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -396,7 +395,6 @@
 # Flags passed to both C and C++ files.
 MY_CFLAGS_Release := \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -465,8 +463,7 @@
 	'-DCHROME_BUILD_ID=""' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_base.target.darwin-mips.mk b/tools/gyp/v8_base.target.darwin-mips.mk
index 5bfd50b..9daac3d 100644
--- a/tools/gyp/v8_base.target.darwin-mips.mk
+++ b/tools/gyp/v8_base.target.darwin-mips.mk
@@ -347,8 +347,6 @@
 	'-DV8_TARGET_ARCH_MIPS' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS32R2' \
-	'-DFPU_MODE_FP32' \
 	'-DV8_I18N_SUPPORT' \
 	'-DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC' \
 	'-DU_USING_ICU_NAMESPACE=0' \
@@ -362,6 +360,7 @@
 	'-DUSE_STLPORT=1' \
 	'-D_STLP_USE_PTR_SPECIALIZATIONS=1' \
 	'-DCHROME_BUILD_ID=""' \
+	'-DFPU_MODE_FP32' \
 	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
 	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
 	'-D_DEBUG' \
@@ -459,8 +458,6 @@
 	'-DV8_TARGET_ARCH_MIPS' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS32R2' \
-	'-DFPU_MODE_FP32' \
 	'-DV8_I18N_SUPPORT' \
 	'-DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC' \
 	'-DU_USING_ICU_NAMESPACE=0' \
@@ -474,10 +471,10 @@
 	'-DUSE_STLPORT=1' \
 	'-D_STLP_USE_PTR_SPECIALIZATIONS=1' \
 	'-DCHROME_BUILD_ID=""' \
+	'-DFPU_MODE_FP32' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_base.target.darwin-mips64.mk b/tools/gyp/v8_base.target.darwin-mips64.mk
index 4b79273..5225266 100644
--- a/tools/gyp/v8_base.target.darwin-mips64.mk
+++ b/tools/gyp/v8_base.target.darwin-mips64.mk
@@ -344,7 +344,6 @@
 	'-DV8_TARGET_ARCH_MIPS64' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS64R2' \
 	'-DV8_I18N_SUPPORT' \
 	'-DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC' \
 	'-DU_USING_ICU_NAMESPACE=0' \
@@ -358,6 +357,7 @@
 	'-DUSE_STLPORT=1' \
 	'-D_STLP_USE_PTR_SPECIALIZATIONS=1' \
 	'-DCHROME_BUILD_ID=""' \
+	'-D_MIPS_ARCH_MIPS64R6' \
 	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
 	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
 	'-D_DEBUG' \
@@ -455,7 +455,6 @@
 	'-DV8_TARGET_ARCH_MIPS64' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS64R2' \
 	'-DV8_I18N_SUPPORT' \
 	'-DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC' \
 	'-DU_USING_ICU_NAMESPACE=0' \
@@ -469,10 +468,10 @@
 	'-DUSE_STLPORT=1' \
 	'-D_STLP_USE_PTR_SPECIALIZATIONS=1' \
 	'-DCHROME_BUILD_ID=""' \
+	'-D_MIPS_ARCH_MIPS64R6' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_base.target.darwin-x86.mk b/tools/gyp/v8_base.target.darwin-x86.mk
index 00193dc..272ce49 100644
--- a/tools/gyp/v8_base.target.darwin-x86.mk
+++ b/tools/gyp/v8_base.target.darwin-x86.mk
@@ -287,7 +287,6 @@
 # Flags passed to both C and C++ files.
 MY_CFLAGS_Debug := \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -397,7 +396,6 @@
 # Flags passed to both C and C++ files.
 MY_CFLAGS_Release := \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -473,8 +471,7 @@
 	'-DCHROME_BUILD_ID=""' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_base.target.darwin-x86_64.mk b/tools/gyp/v8_base.target.darwin-x86_64.mk
index daed683..0669b65 100644
--- a/tools/gyp/v8_base.target.darwin-x86_64.mk
+++ b/tools/gyp/v8_base.target.darwin-x86_64.mk
@@ -288,7 +288,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -397,7 +396,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -471,8 +469,7 @@
 	'-DCHROME_BUILD_ID=""' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_base.target.linux-arm.mk b/tools/gyp/v8_base.target.linux-arm.mk
index cf6d389..90c4518 100644
--- a/tools/gyp/v8_base.target.linux-arm.mk
+++ b/tools/gyp/v8_base.target.linux-arm.mk
@@ -290,7 +290,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -406,7 +405,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -486,8 +484,7 @@
 	'-DCHROME_BUILD_ID=""' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_base.target.linux-arm64.mk b/tools/gyp/v8_base.target.linux-arm64.mk
index c4e9d5f..a3d5bf8 100644
--- a/tools/gyp/v8_base.target.linux-arm64.mk
+++ b/tools/gyp/v8_base.target.linux-arm64.mk
@@ -293,7 +293,6 @@
 # Flags passed to both C and C++ files.
 MY_CFLAGS_Debug := \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -396,7 +395,6 @@
 # Flags passed to both C and C++ files.
 MY_CFLAGS_Release := \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -465,8 +463,7 @@
 	'-DCHROME_BUILD_ID=""' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_base.target.linux-mips.mk b/tools/gyp/v8_base.target.linux-mips.mk
index 5bfd50b..9daac3d 100644
--- a/tools/gyp/v8_base.target.linux-mips.mk
+++ b/tools/gyp/v8_base.target.linux-mips.mk
@@ -347,8 +347,6 @@
 	'-DV8_TARGET_ARCH_MIPS' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS32R2' \
-	'-DFPU_MODE_FP32' \
 	'-DV8_I18N_SUPPORT' \
 	'-DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC' \
 	'-DU_USING_ICU_NAMESPACE=0' \
@@ -362,6 +360,7 @@
 	'-DUSE_STLPORT=1' \
 	'-D_STLP_USE_PTR_SPECIALIZATIONS=1' \
 	'-DCHROME_BUILD_ID=""' \
+	'-DFPU_MODE_FP32' \
 	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
 	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
 	'-D_DEBUG' \
@@ -459,8 +458,6 @@
 	'-DV8_TARGET_ARCH_MIPS' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS32R2' \
-	'-DFPU_MODE_FP32' \
 	'-DV8_I18N_SUPPORT' \
 	'-DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC' \
 	'-DU_USING_ICU_NAMESPACE=0' \
@@ -474,10 +471,10 @@
 	'-DUSE_STLPORT=1' \
 	'-D_STLP_USE_PTR_SPECIALIZATIONS=1' \
 	'-DCHROME_BUILD_ID=""' \
+	'-DFPU_MODE_FP32' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_base.target.linux-mips64.mk b/tools/gyp/v8_base.target.linux-mips64.mk
index 4b79273..5225266 100644
--- a/tools/gyp/v8_base.target.linux-mips64.mk
+++ b/tools/gyp/v8_base.target.linux-mips64.mk
@@ -344,7 +344,6 @@
 	'-DV8_TARGET_ARCH_MIPS64' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS64R2' \
 	'-DV8_I18N_SUPPORT' \
 	'-DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC' \
 	'-DU_USING_ICU_NAMESPACE=0' \
@@ -358,6 +357,7 @@
 	'-DUSE_STLPORT=1' \
 	'-D_STLP_USE_PTR_SPECIALIZATIONS=1' \
 	'-DCHROME_BUILD_ID=""' \
+	'-D_MIPS_ARCH_MIPS64R6' \
 	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
 	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
 	'-D_DEBUG' \
@@ -455,7 +455,6 @@
 	'-DV8_TARGET_ARCH_MIPS64' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS64R2' \
 	'-DV8_I18N_SUPPORT' \
 	'-DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_STATIC' \
 	'-DU_USING_ICU_NAMESPACE=0' \
@@ -469,10 +468,10 @@
 	'-DUSE_STLPORT=1' \
 	'-D_STLP_USE_PTR_SPECIALIZATIONS=1' \
 	'-DCHROME_BUILD_ID=""' \
+	'-D_MIPS_ARCH_MIPS64R6' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_base.target.linux-x86.mk b/tools/gyp/v8_base.target.linux-x86.mk
index 00193dc..272ce49 100644
--- a/tools/gyp/v8_base.target.linux-x86.mk
+++ b/tools/gyp/v8_base.target.linux-x86.mk
@@ -287,7 +287,6 @@
 # Flags passed to both C and C++ files.
 MY_CFLAGS_Debug := \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -397,7 +396,6 @@
 # Flags passed to both C and C++ files.
 MY_CFLAGS_Release := \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -473,8 +471,7 @@
 	'-DCHROME_BUILD_ID=""' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_base.target.linux-x86_64.mk b/tools/gyp/v8_base.target.linux-x86_64.mk
index daed683..0669b65 100644
--- a/tools/gyp/v8_base.target.linux-x86_64.mk
+++ b/tools/gyp/v8_base.target.linux-x86_64.mk
@@ -288,7 +288,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -397,7 +396,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -471,8 +469,7 @@
 	'-DCHROME_BUILD_ID=""' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libbase.host.darwin-arm.mk b/tools/gyp/v8_libbase.host.darwin-arm.mk
index c86e1b7..11502dd 100644
--- a/tools/gyp/v8_libbase.host.darwin-arm.mk
+++ b/tools/gyp/v8_libbase.host.darwin-arm.mk
@@ -45,7 +45,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -129,7 +128,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -185,8 +183,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libbase.host.darwin-arm64.mk b/tools/gyp/v8_libbase.host.darwin-arm64.mk
index eb38109..554fd20 100644
--- a/tools/gyp/v8_libbase.host.darwin-arm64.mk
+++ b/tools/gyp/v8_libbase.host.darwin-arm64.mk
@@ -45,7 +45,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -127,7 +126,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -181,8 +179,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libbase.host.darwin-mips.mk b/tools/gyp/v8_libbase.host.darwin-mips.mk
index 3743195..87335b5 100644
--- a/tools/gyp/v8_libbase.host.darwin-mips.mk
+++ b/tools/gyp/v8_libbase.host.darwin-mips.mk
@@ -95,12 +95,11 @@
 	'-DV8_TARGET_ARCH_MIPS' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS32R2' \
-	'-DFPU_MODE_FP32' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-DFPU_MODE_FP32' \
 	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
 	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
 	'-D_DEBUG' \
@@ -183,16 +182,14 @@
 	'-DV8_TARGET_ARCH_MIPS' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS32R2' \
-	'-DFPU_MODE_FP32' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-DFPU_MODE_FP32' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libbase.host.darwin-mips64.mk b/tools/gyp/v8_libbase.host.darwin-mips64.mk
index 7c4c392..aa8f1b0 100644
--- a/tools/gyp/v8_libbase.host.darwin-mips64.mk
+++ b/tools/gyp/v8_libbase.host.darwin-mips64.mk
@@ -94,11 +94,11 @@
 	'-DV8_TARGET_ARCH_MIPS64' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS64R2' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-D_MIPS_ARCH_MIPS64R6' \
 	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
 	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
 	'-D_DEBUG' \
@@ -180,15 +180,14 @@
 	'-DV8_TARGET_ARCH_MIPS64' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS64R2' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-D_MIPS_ARCH_MIPS64R6' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libbase.host.darwin-x86.mk b/tools/gyp/v8_libbase.host.darwin-x86.mk
index ba119e3..2922ae9 100644
--- a/tools/gyp/v8_libbase.host.darwin-x86.mk
+++ b/tools/gyp/v8_libbase.host.darwin-x86.mk
@@ -45,7 +45,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -128,7 +127,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -183,8 +181,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libbase.host.darwin-x86_64.mk b/tools/gyp/v8_libbase.host.darwin-x86_64.mk
index 9648fff..d363901 100644
--- a/tools/gyp/v8_libbase.host.darwin-x86_64.mk
+++ b/tools/gyp/v8_libbase.host.darwin-x86_64.mk
@@ -45,7 +45,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -128,7 +127,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -183,8 +181,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libbase.host.linux-arm.mk b/tools/gyp/v8_libbase.host.linux-arm.mk
index 413b1e9..e6ec23e 100644
--- a/tools/gyp/v8_libbase.host.linux-arm.mk
+++ b/tools/gyp/v8_libbase.host.linux-arm.mk
@@ -45,7 +45,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -130,7 +129,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -187,8 +185,7 @@
 	'-DV8_LIBRT_NOT_AVAILABLE=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libbase.host.linux-arm64.mk b/tools/gyp/v8_libbase.host.linux-arm64.mk
index 09fcd49..695e806 100644
--- a/tools/gyp/v8_libbase.host.linux-arm64.mk
+++ b/tools/gyp/v8_libbase.host.linux-arm64.mk
@@ -45,7 +45,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -128,7 +127,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -183,8 +181,7 @@
 	'-DV8_LIBRT_NOT_AVAILABLE=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libbase.host.linux-mips.mk b/tools/gyp/v8_libbase.host.linux-mips.mk
index e69e4d2..5dd1ba4 100644
--- a/tools/gyp/v8_libbase.host.linux-mips.mk
+++ b/tools/gyp/v8_libbase.host.linux-mips.mk
@@ -95,12 +95,11 @@
 	'-DV8_TARGET_ARCH_MIPS' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS32R2' \
-	'-DFPU_MODE_FP32' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-DFPU_MODE_FP32' \
 	'-DV8_LIBRT_NOT_AVAILABLE=1' \
 	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
 	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
@@ -184,17 +183,15 @@
 	'-DV8_TARGET_ARCH_MIPS' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS32R2' \
-	'-DFPU_MODE_FP32' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-DFPU_MODE_FP32' \
 	'-DV8_LIBRT_NOT_AVAILABLE=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libbase.host.linux-mips64.mk b/tools/gyp/v8_libbase.host.linux-mips64.mk
index 644c338..ee6311c 100644
--- a/tools/gyp/v8_libbase.host.linux-mips64.mk
+++ b/tools/gyp/v8_libbase.host.linux-mips64.mk
@@ -94,11 +94,11 @@
 	'-DV8_TARGET_ARCH_MIPS64' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS64R2' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-D_MIPS_ARCH_MIPS64R6' \
 	'-DV8_LIBRT_NOT_AVAILABLE=1' \
 	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
 	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
@@ -181,16 +181,15 @@
 	'-DV8_TARGET_ARCH_MIPS64' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS64R2' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-D_MIPS_ARCH_MIPS64R6' \
 	'-DV8_LIBRT_NOT_AVAILABLE=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libbase.host.linux-x86.mk b/tools/gyp/v8_libbase.host.linux-x86.mk
index 0159101..b42eb6f 100644
--- a/tools/gyp/v8_libbase.host.linux-x86.mk
+++ b/tools/gyp/v8_libbase.host.linux-x86.mk
@@ -45,7 +45,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -129,7 +128,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -185,8 +183,7 @@
 	'-DV8_LIBRT_NOT_AVAILABLE=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libbase.host.linux-x86_64.mk b/tools/gyp/v8_libbase.host.linux-x86_64.mk
index 6d9373a..6f2f9d2 100644
--- a/tools/gyp/v8_libbase.host.linux-x86_64.mk
+++ b/tools/gyp/v8_libbase.host.linux-x86_64.mk
@@ -45,7 +45,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -129,7 +128,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -185,8 +183,7 @@
 	'-DV8_LIBRT_NOT_AVAILABLE=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libbase.target.darwin-arm.mk b/tools/gyp/v8_libbase.target.darwin-arm.mk
index 5b8d8a2..0e5b505 100644
--- a/tools/gyp/v8_libbase.target.darwin-arm.mk
+++ b/tools/gyp/v8_libbase.target.darwin-arm.mk
@@ -45,7 +45,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -155,7 +154,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -231,8 +229,7 @@
 	'-DCHROME_BUILD_ID=""' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libbase.target.darwin-arm64.mk b/tools/gyp/v8_libbase.target.darwin-arm64.mk
index 3799ad7..246d7b2 100644
--- a/tools/gyp/v8_libbase.target.darwin-arm64.mk
+++ b/tools/gyp/v8_libbase.target.darwin-arm64.mk
@@ -44,7 +44,6 @@
 # Flags passed to both C and C++ files.
 MY_CFLAGS_Debug := \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -141,7 +140,6 @@
 # Flags passed to both C and C++ files.
 MY_CFLAGS_Release := \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -206,8 +204,7 @@
 	'-DCHROME_BUILD_ID=""' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libbase.target.darwin-mips.mk b/tools/gyp/v8_libbase.target.darwin-mips.mk
index 4a4d8fd..c6fc318 100644
--- a/tools/gyp/v8_libbase.target.darwin-mips.mk
+++ b/tools/gyp/v8_libbase.target.darwin-mips.mk
@@ -102,8 +102,6 @@
 	'-DV8_TARGET_ARCH_MIPS' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS32R2' \
-	'-DFPU_MODE_FP32' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
@@ -113,6 +111,7 @@
 	'-DUSE_STLPORT=1' \
 	'-D_STLP_USE_PTR_SPECIALIZATIONS=1' \
 	'-DCHROME_BUILD_ID=""' \
+	'-DFPU_MODE_FP32' \
 	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
 	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
 	'-D_DEBUG' \
@@ -208,8 +207,6 @@
 	'-DV8_TARGET_ARCH_MIPS' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS32R2' \
-	'-DFPU_MODE_FP32' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
@@ -219,10 +216,10 @@
 	'-DUSE_STLPORT=1' \
 	'-D_STLP_USE_PTR_SPECIALIZATIONS=1' \
 	'-DCHROME_BUILD_ID=""' \
+	'-DFPU_MODE_FP32' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libbase.target.darwin-mips64.mk b/tools/gyp/v8_libbase.target.darwin-mips64.mk
index ba2bd02..83baa84 100644
--- a/tools/gyp/v8_libbase.target.darwin-mips64.mk
+++ b/tools/gyp/v8_libbase.target.darwin-mips64.mk
@@ -102,7 +102,6 @@
 	'-DV8_TARGET_ARCH_MIPS64' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS64R2' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
@@ -112,6 +111,7 @@
 	'-DUSE_STLPORT=1' \
 	'-D_STLP_USE_PTR_SPECIALIZATIONS=1' \
 	'-DCHROME_BUILD_ID=""' \
+	'-D_MIPS_ARCH_MIPS64R6' \
 	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
 	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
 	'-D_DEBUG' \
@@ -207,7 +207,6 @@
 	'-DV8_TARGET_ARCH_MIPS64' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS64R2' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
@@ -217,10 +216,10 @@
 	'-DUSE_STLPORT=1' \
 	'-D_STLP_USE_PTR_SPECIALIZATIONS=1' \
 	'-DCHROME_BUILD_ID=""' \
+	'-D_MIPS_ARCH_MIPS64R6' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libbase.target.darwin-x86.mk b/tools/gyp/v8_libbase.target.darwin-x86.mk
index d2e0a45..e9c8b9d 100644
--- a/tools/gyp/v8_libbase.target.darwin-x86.mk
+++ b/tools/gyp/v8_libbase.target.darwin-x86.mk
@@ -44,7 +44,6 @@
 # Flags passed to both C and C++ files.
 MY_CFLAGS_Debug := \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -148,7 +147,6 @@
 # Flags passed to both C and C++ files.
 MY_CFLAGS_Release := \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -220,8 +218,7 @@
 	'-DCHROME_BUILD_ID=""' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libbase.target.darwin-x86_64.mk b/tools/gyp/v8_libbase.target.darwin-x86_64.mk
index 1817980..4dcf7b7 100644
--- a/tools/gyp/v8_libbase.target.darwin-x86_64.mk
+++ b/tools/gyp/v8_libbase.target.darwin-x86_64.mk
@@ -45,7 +45,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -148,7 +147,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -218,8 +216,7 @@
 	'-DCHROME_BUILD_ID=""' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libbase.target.linux-arm.mk b/tools/gyp/v8_libbase.target.linux-arm.mk
index 5b8d8a2..0e5b505 100644
--- a/tools/gyp/v8_libbase.target.linux-arm.mk
+++ b/tools/gyp/v8_libbase.target.linux-arm.mk
@@ -45,7 +45,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -155,7 +154,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -231,8 +229,7 @@
 	'-DCHROME_BUILD_ID=""' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libbase.target.linux-arm64.mk b/tools/gyp/v8_libbase.target.linux-arm64.mk
index 3799ad7..246d7b2 100644
--- a/tools/gyp/v8_libbase.target.linux-arm64.mk
+++ b/tools/gyp/v8_libbase.target.linux-arm64.mk
@@ -44,7 +44,6 @@
 # Flags passed to both C and C++ files.
 MY_CFLAGS_Debug := \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -141,7 +140,6 @@
 # Flags passed to both C and C++ files.
 MY_CFLAGS_Release := \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -206,8 +204,7 @@
 	'-DCHROME_BUILD_ID=""' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libbase.target.linux-mips.mk b/tools/gyp/v8_libbase.target.linux-mips.mk
index 4a4d8fd..c6fc318 100644
--- a/tools/gyp/v8_libbase.target.linux-mips.mk
+++ b/tools/gyp/v8_libbase.target.linux-mips.mk
@@ -102,8 +102,6 @@
 	'-DV8_TARGET_ARCH_MIPS' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS32R2' \
-	'-DFPU_MODE_FP32' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
@@ -113,6 +111,7 @@
 	'-DUSE_STLPORT=1' \
 	'-D_STLP_USE_PTR_SPECIALIZATIONS=1' \
 	'-DCHROME_BUILD_ID=""' \
+	'-DFPU_MODE_FP32' \
 	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
 	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
 	'-D_DEBUG' \
@@ -208,8 +207,6 @@
 	'-DV8_TARGET_ARCH_MIPS' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS32R2' \
-	'-DFPU_MODE_FP32' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
@@ -219,10 +216,10 @@
 	'-DUSE_STLPORT=1' \
 	'-D_STLP_USE_PTR_SPECIALIZATIONS=1' \
 	'-DCHROME_BUILD_ID=""' \
+	'-DFPU_MODE_FP32' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libbase.target.linux-mips64.mk b/tools/gyp/v8_libbase.target.linux-mips64.mk
index ba2bd02..83baa84 100644
--- a/tools/gyp/v8_libbase.target.linux-mips64.mk
+++ b/tools/gyp/v8_libbase.target.linux-mips64.mk
@@ -102,7 +102,6 @@
 	'-DV8_TARGET_ARCH_MIPS64' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS64R2' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
@@ -112,6 +111,7 @@
 	'-DUSE_STLPORT=1' \
 	'-D_STLP_USE_PTR_SPECIALIZATIONS=1' \
 	'-DCHROME_BUILD_ID=""' \
+	'-D_MIPS_ARCH_MIPS64R6' \
 	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
 	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
 	'-D_DEBUG' \
@@ -207,7 +207,6 @@
 	'-DV8_TARGET_ARCH_MIPS64' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS64R2' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
@@ -217,10 +216,10 @@
 	'-DUSE_STLPORT=1' \
 	'-D_STLP_USE_PTR_SPECIALIZATIONS=1' \
 	'-DCHROME_BUILD_ID=""' \
+	'-D_MIPS_ARCH_MIPS64R6' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libbase.target.linux-x86.mk b/tools/gyp/v8_libbase.target.linux-x86.mk
index d2e0a45..e9c8b9d 100644
--- a/tools/gyp/v8_libbase.target.linux-x86.mk
+++ b/tools/gyp/v8_libbase.target.linux-x86.mk
@@ -44,7 +44,6 @@
 # Flags passed to both C and C++ files.
 MY_CFLAGS_Debug := \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -148,7 +147,6 @@
 # Flags passed to both C and C++ files.
 MY_CFLAGS_Release := \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -220,8 +218,7 @@
 	'-DCHROME_BUILD_ID=""' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libbase.target.linux-x86_64.mk b/tools/gyp/v8_libbase.target.linux-x86_64.mk
index 1817980..4dcf7b7 100644
--- a/tools/gyp/v8_libbase.target.linux-x86_64.mk
+++ b/tools/gyp/v8_libbase.target.linux-x86_64.mk
@@ -45,7 +45,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -148,7 +147,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -218,8 +216,7 @@
 	'-DCHROME_BUILD_ID=""' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libplatform.host.darwin-arm.mk b/tools/gyp/v8_libplatform.host.darwin-arm.mk
index d1cd47e..00be110 100644
--- a/tools/gyp/v8_libplatform.host.darwin-arm.mk
+++ b/tools/gyp/v8_libplatform.host.darwin-arm.mk
@@ -33,7 +33,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -117,7 +116,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -173,8 +171,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libplatform.host.darwin-arm64.mk b/tools/gyp/v8_libplatform.host.darwin-arm64.mk
index 02aa5c8..71ebbfc 100644
--- a/tools/gyp/v8_libplatform.host.darwin-arm64.mk
+++ b/tools/gyp/v8_libplatform.host.darwin-arm64.mk
@@ -33,7 +33,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -115,7 +114,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -169,8 +167,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libplatform.host.darwin-mips.mk b/tools/gyp/v8_libplatform.host.darwin-mips.mk
index 11c7794..0f9486f 100644
--- a/tools/gyp/v8_libplatform.host.darwin-mips.mk
+++ b/tools/gyp/v8_libplatform.host.darwin-mips.mk
@@ -83,12 +83,11 @@
 	'-DV8_TARGET_ARCH_MIPS' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS32R2' \
-	'-DFPU_MODE_FP32' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-DFPU_MODE_FP32' \
 	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
 	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
 	'-D_DEBUG' \
@@ -171,16 +170,14 @@
 	'-DV8_TARGET_ARCH_MIPS' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS32R2' \
-	'-DFPU_MODE_FP32' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-DFPU_MODE_FP32' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libplatform.host.darwin-mips64.mk b/tools/gyp/v8_libplatform.host.darwin-mips64.mk
index 5410383..655b775 100644
--- a/tools/gyp/v8_libplatform.host.darwin-mips64.mk
+++ b/tools/gyp/v8_libplatform.host.darwin-mips64.mk
@@ -82,11 +82,11 @@
 	'-DV8_TARGET_ARCH_MIPS64' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS64R2' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-D_MIPS_ARCH_MIPS64R6' \
 	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
 	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
 	'-D_DEBUG' \
@@ -168,15 +168,14 @@
 	'-DV8_TARGET_ARCH_MIPS64' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS64R2' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-D_MIPS_ARCH_MIPS64R6' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libplatform.host.darwin-x86.mk b/tools/gyp/v8_libplatform.host.darwin-x86.mk
index 9ad1263..10147e1 100644
--- a/tools/gyp/v8_libplatform.host.darwin-x86.mk
+++ b/tools/gyp/v8_libplatform.host.darwin-x86.mk
@@ -33,7 +33,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -116,7 +115,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -171,8 +169,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libplatform.host.darwin-x86_64.mk b/tools/gyp/v8_libplatform.host.darwin-x86_64.mk
index 40df7b6..f83871a 100644
--- a/tools/gyp/v8_libplatform.host.darwin-x86_64.mk
+++ b/tools/gyp/v8_libplatform.host.darwin-x86_64.mk
@@ -33,7 +33,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -116,7 +115,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -171,8 +169,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libplatform.host.linux-arm.mk b/tools/gyp/v8_libplatform.host.linux-arm.mk
index d1cd47e..00be110 100644
--- a/tools/gyp/v8_libplatform.host.linux-arm.mk
+++ b/tools/gyp/v8_libplatform.host.linux-arm.mk
@@ -33,7 +33,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -117,7 +116,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -173,8 +171,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libplatform.host.linux-arm64.mk b/tools/gyp/v8_libplatform.host.linux-arm64.mk
index 02aa5c8..71ebbfc 100644
--- a/tools/gyp/v8_libplatform.host.linux-arm64.mk
+++ b/tools/gyp/v8_libplatform.host.linux-arm64.mk
@@ -33,7 +33,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -115,7 +114,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -169,8 +167,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libplatform.host.linux-mips.mk b/tools/gyp/v8_libplatform.host.linux-mips.mk
index 11c7794..0f9486f 100644
--- a/tools/gyp/v8_libplatform.host.linux-mips.mk
+++ b/tools/gyp/v8_libplatform.host.linux-mips.mk
@@ -83,12 +83,11 @@
 	'-DV8_TARGET_ARCH_MIPS' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS32R2' \
-	'-DFPU_MODE_FP32' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-DFPU_MODE_FP32' \
 	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
 	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
 	'-D_DEBUG' \
@@ -171,16 +170,14 @@
 	'-DV8_TARGET_ARCH_MIPS' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS32R2' \
-	'-DFPU_MODE_FP32' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-DFPU_MODE_FP32' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libplatform.host.linux-mips64.mk b/tools/gyp/v8_libplatform.host.linux-mips64.mk
index 5410383..655b775 100644
--- a/tools/gyp/v8_libplatform.host.linux-mips64.mk
+++ b/tools/gyp/v8_libplatform.host.linux-mips64.mk
@@ -82,11 +82,11 @@
 	'-DV8_TARGET_ARCH_MIPS64' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS64R2' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-D_MIPS_ARCH_MIPS64R6' \
 	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
 	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
 	'-D_DEBUG' \
@@ -168,15 +168,14 @@
 	'-DV8_TARGET_ARCH_MIPS64' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS64R2' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-D_MIPS_ARCH_MIPS64R6' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libplatform.host.linux-x86.mk b/tools/gyp/v8_libplatform.host.linux-x86.mk
index 9ad1263..10147e1 100644
--- a/tools/gyp/v8_libplatform.host.linux-x86.mk
+++ b/tools/gyp/v8_libplatform.host.linux-x86.mk
@@ -33,7 +33,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -116,7 +115,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -171,8 +169,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_libplatform.host.linux-x86_64.mk b/tools/gyp/v8_libplatform.host.linux-x86_64.mk
index 40df7b6..f83871a 100644
--- a/tools/gyp/v8_libplatform.host.linux-x86_64.mk
+++ b/tools/gyp/v8_libplatform.host.linux-x86_64.mk
@@ -33,7 +33,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -116,7 +115,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -171,8 +169,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_nosnapshot.host.darwin-arm.mk b/tools/gyp/v8_nosnapshot.host.darwin-arm.mk
index beb9643..4fc5568 100644
--- a/tools/gyp/v8_nosnapshot.host.darwin-arm.mk
+++ b/tools/gyp/v8_nosnapshot.host.darwin-arm.mk
@@ -40,7 +40,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -124,7 +123,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -180,8 +178,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_nosnapshot.host.darwin-arm64.mk b/tools/gyp/v8_nosnapshot.host.darwin-arm64.mk
index 334c2bf..0b0ec93 100644
--- a/tools/gyp/v8_nosnapshot.host.darwin-arm64.mk
+++ b/tools/gyp/v8_nosnapshot.host.darwin-arm64.mk
@@ -40,7 +40,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -122,7 +121,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -176,8 +174,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_nosnapshot.host.darwin-mips.mk b/tools/gyp/v8_nosnapshot.host.darwin-mips.mk
index 2c1ed8b..36bd869 100644
--- a/tools/gyp/v8_nosnapshot.host.darwin-mips.mk
+++ b/tools/gyp/v8_nosnapshot.host.darwin-mips.mk
@@ -90,12 +90,11 @@
 	'-DV8_TARGET_ARCH_MIPS' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS32R2' \
-	'-DFPU_MODE_FP32' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-DFPU_MODE_FP32' \
 	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
 	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
 	'-D_DEBUG' \
@@ -178,16 +177,14 @@
 	'-DV8_TARGET_ARCH_MIPS' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS32R2' \
-	'-DFPU_MODE_FP32' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-DFPU_MODE_FP32' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_nosnapshot.host.darwin-mips64.mk b/tools/gyp/v8_nosnapshot.host.darwin-mips64.mk
index 9c2f536..94c0921 100644
--- a/tools/gyp/v8_nosnapshot.host.darwin-mips64.mk
+++ b/tools/gyp/v8_nosnapshot.host.darwin-mips64.mk
@@ -89,11 +89,11 @@
 	'-DV8_TARGET_ARCH_MIPS64' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS64R2' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-D_MIPS_ARCH_MIPS64R6' \
 	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
 	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
 	'-D_DEBUG' \
@@ -175,15 +175,14 @@
 	'-DV8_TARGET_ARCH_MIPS64' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS64R2' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-D_MIPS_ARCH_MIPS64R6' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_nosnapshot.host.darwin-x86.mk b/tools/gyp/v8_nosnapshot.host.darwin-x86.mk
index 3113427..55216a4 100644
--- a/tools/gyp/v8_nosnapshot.host.darwin-x86.mk
+++ b/tools/gyp/v8_nosnapshot.host.darwin-x86.mk
@@ -40,7 +40,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -123,7 +122,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -178,8 +176,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_nosnapshot.host.darwin-x86_64.mk b/tools/gyp/v8_nosnapshot.host.darwin-x86_64.mk
index 3d10a74..dc67666 100644
--- a/tools/gyp/v8_nosnapshot.host.darwin-x86_64.mk
+++ b/tools/gyp/v8_nosnapshot.host.darwin-x86_64.mk
@@ -40,7 +40,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -123,7 +122,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -178,8 +176,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_nosnapshot.host.linux-arm.mk b/tools/gyp/v8_nosnapshot.host.linux-arm.mk
index beb9643..4fc5568 100644
--- a/tools/gyp/v8_nosnapshot.host.linux-arm.mk
+++ b/tools/gyp/v8_nosnapshot.host.linux-arm.mk
@@ -40,7 +40,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -124,7 +123,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -180,8 +178,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_nosnapshot.host.linux-arm64.mk b/tools/gyp/v8_nosnapshot.host.linux-arm64.mk
index 334c2bf..0b0ec93 100644
--- a/tools/gyp/v8_nosnapshot.host.linux-arm64.mk
+++ b/tools/gyp/v8_nosnapshot.host.linux-arm64.mk
@@ -40,7 +40,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -122,7 +121,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -176,8 +174,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_nosnapshot.host.linux-mips.mk b/tools/gyp/v8_nosnapshot.host.linux-mips.mk
index 2c1ed8b..36bd869 100644
--- a/tools/gyp/v8_nosnapshot.host.linux-mips.mk
+++ b/tools/gyp/v8_nosnapshot.host.linux-mips.mk
@@ -90,12 +90,11 @@
 	'-DV8_TARGET_ARCH_MIPS' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS32R2' \
-	'-DFPU_MODE_FP32' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-DFPU_MODE_FP32' \
 	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
 	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
 	'-D_DEBUG' \
@@ -178,16 +177,14 @@
 	'-DV8_TARGET_ARCH_MIPS' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS32R2' \
-	'-DFPU_MODE_FP32' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-DFPU_MODE_FP32' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_nosnapshot.host.linux-mips64.mk b/tools/gyp/v8_nosnapshot.host.linux-mips64.mk
index 9c2f536..94c0921 100644
--- a/tools/gyp/v8_nosnapshot.host.linux-mips64.mk
+++ b/tools/gyp/v8_nosnapshot.host.linux-mips64.mk
@@ -89,11 +89,11 @@
 	'-DV8_TARGET_ARCH_MIPS64' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS64R2' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-D_MIPS_ARCH_MIPS64R6' \
 	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
 	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
 	'-D_DEBUG' \
@@ -175,15 +175,14 @@
 	'-DV8_TARGET_ARCH_MIPS64' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS64R2' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
 	'-DUSE_OPENSSL_CERTS=1' \
+	'-D_MIPS_ARCH_MIPS64R6' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_nosnapshot.host.linux-x86.mk b/tools/gyp/v8_nosnapshot.host.linux-x86.mk
index 3113427..55216a4 100644
--- a/tools/gyp/v8_nosnapshot.host.linux-x86.mk
+++ b/tools/gyp/v8_nosnapshot.host.linux-x86.mk
@@ -40,7 +40,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -123,7 +122,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -178,8 +176,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_nosnapshot.host.linux-x86_64.mk b/tools/gyp/v8_nosnapshot.host.linux-x86_64.mk
index 3d10a74..dc67666 100644
--- a/tools/gyp/v8_nosnapshot.host.linux-x86_64.mk
+++ b/tools/gyp/v8_nosnapshot.host.linux-x86_64.mk
@@ -40,7 +40,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -123,7 +122,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-pthread \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
@@ -178,8 +176,7 @@
 	'-DUSE_OPENSSL_CERTS=1' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_snapshot.target.darwin-arm.mk b/tools/gyp/v8_snapshot.target.darwin-arm.mk
index 7f4e265..371dd32 100644
--- a/tools/gyp/v8_snapshot.target.darwin-arm.mk
+++ b/tools/gyp/v8_snapshot.target.darwin-arm.mk
@@ -54,7 +54,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -164,7 +163,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -240,8 +238,7 @@
 	'-DCHROME_BUILD_ID=""' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_snapshot.target.darwin-arm64.mk b/tools/gyp/v8_snapshot.target.darwin-arm64.mk
index e5f51c4..cca3199 100644
--- a/tools/gyp/v8_snapshot.target.darwin-arm64.mk
+++ b/tools/gyp/v8_snapshot.target.darwin-arm64.mk
@@ -53,7 +53,6 @@
 # Flags passed to both C and C++ files.
 MY_CFLAGS_Debug := \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -150,7 +149,6 @@
 # Flags passed to both C and C++ files.
 MY_CFLAGS_Release := \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -215,8 +213,7 @@
 	'-DCHROME_BUILD_ID=""' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_snapshot.target.darwin-mips.mk b/tools/gyp/v8_snapshot.target.darwin-mips.mk
index 1b7a97c..4a2dd1f 100644
--- a/tools/gyp/v8_snapshot.target.darwin-mips.mk
+++ b/tools/gyp/v8_snapshot.target.darwin-mips.mk
@@ -111,8 +111,6 @@
 	'-DV8_TARGET_ARCH_MIPS' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS32R2' \
-	'-DFPU_MODE_FP32' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
@@ -122,6 +120,7 @@
 	'-DUSE_STLPORT=1' \
 	'-D_STLP_USE_PTR_SPECIALIZATIONS=1' \
 	'-DCHROME_BUILD_ID=""' \
+	'-DFPU_MODE_FP32' \
 	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
 	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
 	'-D_DEBUG' \
@@ -217,8 +216,6 @@
 	'-DV8_TARGET_ARCH_MIPS' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS32R2' \
-	'-DFPU_MODE_FP32' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
@@ -228,10 +225,10 @@
 	'-DUSE_STLPORT=1' \
 	'-D_STLP_USE_PTR_SPECIALIZATIONS=1' \
 	'-DCHROME_BUILD_ID=""' \
+	'-DFPU_MODE_FP32' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_snapshot.target.darwin-mips64.mk b/tools/gyp/v8_snapshot.target.darwin-mips64.mk
index ade3008..00d5228 100644
--- a/tools/gyp/v8_snapshot.target.darwin-mips64.mk
+++ b/tools/gyp/v8_snapshot.target.darwin-mips64.mk
@@ -111,7 +111,6 @@
 	'-DV8_TARGET_ARCH_MIPS64' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS64R2' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
@@ -121,6 +120,7 @@
 	'-DUSE_STLPORT=1' \
 	'-D_STLP_USE_PTR_SPECIALIZATIONS=1' \
 	'-DCHROME_BUILD_ID=""' \
+	'-D_MIPS_ARCH_MIPS64R6' \
 	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
 	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
 	'-D_DEBUG' \
@@ -216,7 +216,6 @@
 	'-DV8_TARGET_ARCH_MIPS64' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS64R2' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
@@ -226,10 +225,10 @@
 	'-DUSE_STLPORT=1' \
 	'-D_STLP_USE_PTR_SPECIALIZATIONS=1' \
 	'-DCHROME_BUILD_ID=""' \
+	'-D_MIPS_ARCH_MIPS64R6' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_snapshot.target.darwin-x86.mk b/tools/gyp/v8_snapshot.target.darwin-x86.mk
index 304b1cf..c6effaf 100644
--- a/tools/gyp/v8_snapshot.target.darwin-x86.mk
+++ b/tools/gyp/v8_snapshot.target.darwin-x86.mk
@@ -53,7 +53,6 @@
 # Flags passed to both C and C++ files.
 MY_CFLAGS_Debug := \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -157,7 +156,6 @@
 # Flags passed to both C and C++ files.
 MY_CFLAGS_Release := \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -229,8 +227,7 @@
 	'-DCHROME_BUILD_ID=""' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_snapshot.target.darwin-x86_64.mk b/tools/gyp/v8_snapshot.target.darwin-x86_64.mk
index f076d89..563c18b 100644
--- a/tools/gyp/v8_snapshot.target.darwin-x86_64.mk
+++ b/tools/gyp/v8_snapshot.target.darwin-x86_64.mk
@@ -54,7 +54,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -157,7 +156,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -227,8 +225,7 @@
 	'-DCHROME_BUILD_ID=""' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_snapshot.target.linux-arm.mk b/tools/gyp/v8_snapshot.target.linux-arm.mk
index 7f4e265..371dd32 100644
--- a/tools/gyp/v8_snapshot.target.linux-arm.mk
+++ b/tools/gyp/v8_snapshot.target.linux-arm.mk
@@ -54,7 +54,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -164,7 +163,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -240,8 +238,7 @@
 	'-DCHROME_BUILD_ID=""' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_snapshot.target.linux-arm64.mk b/tools/gyp/v8_snapshot.target.linux-arm64.mk
index e5f51c4..cca3199 100644
--- a/tools/gyp/v8_snapshot.target.linux-arm64.mk
+++ b/tools/gyp/v8_snapshot.target.linux-arm64.mk
@@ -53,7 +53,6 @@
 # Flags passed to both C and C++ files.
 MY_CFLAGS_Debug := \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -150,7 +149,6 @@
 # Flags passed to both C and C++ files.
 MY_CFLAGS_Release := \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -215,8 +213,7 @@
 	'-DCHROME_BUILD_ID=""' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_snapshot.target.linux-mips.mk b/tools/gyp/v8_snapshot.target.linux-mips.mk
index 1b7a97c..4a2dd1f 100644
--- a/tools/gyp/v8_snapshot.target.linux-mips.mk
+++ b/tools/gyp/v8_snapshot.target.linux-mips.mk
@@ -111,8 +111,6 @@
 	'-DV8_TARGET_ARCH_MIPS' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS32R2' \
-	'-DFPU_MODE_FP32' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
@@ -122,6 +120,7 @@
 	'-DUSE_STLPORT=1' \
 	'-D_STLP_USE_PTR_SPECIALIZATIONS=1' \
 	'-DCHROME_BUILD_ID=""' \
+	'-DFPU_MODE_FP32' \
 	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
 	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
 	'-D_DEBUG' \
@@ -217,8 +216,6 @@
 	'-DV8_TARGET_ARCH_MIPS' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS32R2' \
-	'-DFPU_MODE_FP32' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
@@ -228,10 +225,10 @@
 	'-DUSE_STLPORT=1' \
 	'-D_STLP_USE_PTR_SPECIALIZATIONS=1' \
 	'-DCHROME_BUILD_ID=""' \
+	'-DFPU_MODE_FP32' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_snapshot.target.linux-mips64.mk b/tools/gyp/v8_snapshot.target.linux-mips64.mk
index ade3008..00d5228 100644
--- a/tools/gyp/v8_snapshot.target.linux-mips64.mk
+++ b/tools/gyp/v8_snapshot.target.linux-mips64.mk
@@ -111,7 +111,6 @@
 	'-DV8_TARGET_ARCH_MIPS64' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS64R2' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
@@ -121,6 +120,7 @@
 	'-DUSE_STLPORT=1' \
 	'-D_STLP_USE_PTR_SPECIALIZATIONS=1' \
 	'-DCHROME_BUILD_ID=""' \
+	'-D_MIPS_ARCH_MIPS64R6' \
 	'-DDYNAMIC_ANNOTATIONS_ENABLED=1' \
 	'-DWTF_USE_DYNAMIC_ANNOTATIONS=1' \
 	'-D_DEBUG' \
@@ -216,7 +216,6 @@
 	'-DV8_TARGET_ARCH_MIPS64' \
 	'-DCAN_USE_FPU_INSTRUCTIONS' \
 	'-D__mips_hard_float=1' \
-	'-D_MIPS_ARCH_MIPS64R2' \
 	'-DV8_I18N_SUPPORT' \
 	'-DUSE_LIBPCI=1' \
 	'-DUSE_OPENSSL=1' \
@@ -226,10 +225,10 @@
 	'-DUSE_STLPORT=1' \
 	'-D_STLP_USE_PTR_SPECIALIZATIONS=1' \
 	'-DCHROME_BUILD_ID=""' \
+	'-D_MIPS_ARCH_MIPS64R6' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_snapshot.target.linux-x86.mk b/tools/gyp/v8_snapshot.target.linux-x86.mk
index 304b1cf..c6effaf 100644
--- a/tools/gyp/v8_snapshot.target.linux-x86.mk
+++ b/tools/gyp/v8_snapshot.target.linux-x86.mk
@@ -53,7 +53,6 @@
 # Flags passed to both C and C++ files.
 MY_CFLAGS_Debug := \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -157,7 +156,6 @@
 # Flags passed to both C and C++ files.
 MY_CFLAGS_Release := \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -229,8 +227,7 @@
 	'-DCHROME_BUILD_ID=""' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
diff --git a/tools/gyp/v8_snapshot.target.linux-x86_64.mk b/tools/gyp/v8_snapshot.target.linux-x86_64.mk
index f076d89..563c18b 100644
--- a/tools/gyp/v8_snapshot.target.linux-x86_64.mk
+++ b/tools/gyp/v8_snapshot.target.linux-x86_64.mk
@@ -54,7 +54,6 @@
 MY_CFLAGS_Debug := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -157,7 +156,6 @@
 MY_CFLAGS_Release := \
 	-fstack-protector \
 	--param=ssp-buffer-size=4 \
-	 \
 	-fno-strict-aliasing \
 	-Wno-unused-parameter \
 	-Wno-missing-field-initializers \
@@ -227,8 +225,7 @@
 	'-DCHROME_BUILD_ID=""' \
 	'-DNDEBUG' \
 	'-DNVALGRIND' \
-	'-DDYNAMIC_ANNOTATIONS_ENABLED=0' \
-	'-DENABLE_HANDLE_ZAPPING'
+	'-DDYNAMIC_ANNOTATIONS_ENABLED=0'
 
 
 # Include paths placed before CFLAGS/CPPFLAGS
