Upgrade to 3.29

Update V8 to 3.29.88.17 and update makefiles to support building on
all the relevant platforms.

Bug: 17370214

Change-Id: Ia3407c157fd8d72a93e23d8318ccaf6ecf77fa4e
diff --git a/test/mjsunit/function-length-accessor.js b/test/mjsunit/function-length-accessor.js
new file mode 100644
index 0000000..357ac3f
--- /dev/null
+++ b/test/mjsunit/function-length-accessor.js
@@ -0,0 +1,35 @@
+// 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: --harmony-scoping
+
+function foo(a, b, c, d) {
+  "use strict"
+  const x = 10;
+  // long comment to trigger lazy compilation.
+  // long comment to trigger lazy compilation.
+  // long comment to trigger lazy compilation.
+  // long comment to trigger lazy compilation.
+  // long comment to trigger lazy compilation.
+  // long comment to trigger lazy compilation.
+  // long comment to trigger lazy compilation.
+  // long comment to trigger lazy compilation.
+  // long comment to trigger lazy compilation.
+  // long comment to trigger lazy compilation.
+  // long comment to trigger lazy compilation.
+  // long comment to trigger lazy compilation.
+  // long comment to trigger lazy compilation.
+  // long comment to trigger lazy compilation.
+  // long comment to trigger lazy compilation.
+  // long comment to trigger lazy compilation.
+  // long comment to trigger lazy compilation.
+  // long comment to trigger lazy compilation.
+  // long comment to trigger lazy compilation.
+  // long comment to trigger lazy compilation.
+  // long comment to trigger lazy compilation.
+  // long comment to trigger lazy compilation.
+  x = 20; // This will trigger compile error with harmony scoping.
+}
+
+assertThrows("foo.length()");