Version 1.14.2

Cherry-pick '600940f18ff8c1d555896fbe9038139457491a59' into stable
Cherry-pick 'ca7ee2b6cd6f589d488eb761c1857428df027f7e' into stable
Cherry-pick '834b3f02b6ab740a213fd808e6c6f3269bed80e5' into stable
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 30c91802..21f0ea8 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,24 @@
+## 1.14.2 - 2016-02-10
+
+Patch release, resolves three issues:
+
+* VM: Fixes a code generation bug on x64.
+  (SDK commit [834b3f02](https://github.com/dart-lang/sdk/commit/834b3f02b6ab740a213fd808e6c6f3269bed80e5))
+
+* `dart:io`: Fix EOF detection when reading some special device files.
+  (SDK issue [25596](https://github.com/dart-lang/sdk/issues/25596))
+
+* Pub: Fix an error using hosted dependencies in SDK version 1.14.
+  (Pub issue [1386](https://github.com/dart-lang/pub/issues/1386))
+
+## 1.14.1 - 2016-02-04
+
+Patch release, resolves one issue:
+
+* Debugger: Fixes a VM crash when a debugger attempts to set a break point
+during isolate initialization.
+(SDK issue [25618](https://github.com/dart-lang/sdk/issues/25618))
+
 ## 1.14.0 - 2016-1-28
 
 ### Core library changes
diff --git a/DEPS b/DEPS
index fbe59dc..fd30f1f 100644
--- a/DEPS
+++ b/DEPS
@@ -67,7 +67,7 @@
   "ply_rev": "@604b32590ffad5cbb82e4afef1d305512d06ae93",
   "plugin_tag": "@0.1.0",
   "pool_tag": "@1.2.1",
-  "pub_rev": "@57a17f2567d1ff3325960d0960f939fa243b5fd7",
+  "pub_rev": "@5738fb4592c96ffb0439e92ae8b823ccdc0a6623",
   "pub_cache_tag": "@v0.1.0",
   "pub_semver_tag": "@1.2.1",
   "quiver_tag": "@0.21.4",
diff --git a/runtime/vm/flow_graph_compiler_x64.cc b/runtime/vm/flow_graph_compiler_x64.cc
index e54b1eb..d15e4a1 100644
--- a/runtime/vm/flow_graph_compiler_x64.cc
+++ b/runtime/vm/flow_graph_compiler_x64.cc
@@ -1445,7 +1445,7 @@
     __ popq(right);
     __ popq(left);
   } else {
-    __ cmpl(left, right);
+    __ CompareRegisters(left, right);
   }
   return EQUAL;
 }
diff --git a/sdk/lib/io/file_impl.dart b/sdk/lib/io/file_impl.dart
index 6b0dc96..5dd559c 100644
--- a/sdk/lib/io/file_impl.dart
+++ b/sdk/lib/io/file_impl.dart
@@ -446,8 +446,8 @@
       var completer = new Completer();
       void read() {
         file.read(_BLOCK_SIZE).then((data) {
-          if (data.length > 0) builder.add(data);
-          if (data.length == _BLOCK_SIZE) {
+          if (data.length > 0) {
+            builder.add(data);
             read();
           } else {
             completer.complete(builder.takeBytes());
@@ -480,7 +480,7 @@
         do {
           data = opened.readSync(_BLOCK_SIZE);
           if (data.length > 0) builder.add(data);
-        } while (data.length == _BLOCK_SIZE);
+        } while (data.length > 0);
         data = builder.takeBytes();
       } else {
         data = opened.readSync(length);
diff --git a/tools/VERSION b/tools/VERSION
index c65ef28..12583a9 100644
--- a/tools/VERSION
+++ b/tools/VERSION
@@ -26,6 +26,6 @@
 CHANNEL stable
 MAJOR 1
 MINOR 14
-PATCH 1
+PATCH 2
 PRERELEASE 0
 PRERELEASE_PATCH 0