diff --git a/user/super/com/google/gwt/emul/java/sql/Timestamp.java b/user/super/com/google/gwt/emul/java/sql/Timestamp.java
index 8e2c62a..cfa4fa4 100644
--- a/user/super/com/google/gwt/emul/java/sql/Timestamp.java
+++ b/user/super/com/google/gwt/emul/java/sql/Timestamp.java
@@ -116,8 +116,8 @@
   }
 
   public int compareTo(Timestamp o) {
-    int delta = (int) (getTime() - o.getTime());
-    return delta == 0 ? getNanos() - o.getNanos() : delta;
+    int sign = Long.signum(getTime() - o.getTime());
+    return sign == 0 ? getNanos() - o.getNanos() : sign;
   }
 
   @Override
diff --git a/user/super/com/google/gwt/emul/java/util/Date.java b/user/super/com/google/gwt/emul/java/util/Date.java
index dafbe17..08190bc 100644
--- a/user/super/com/google/gwt/emul/java/util/Date.java
+++ b/user/super/com/google/gwt/emul/java/util/Date.java
@@ -125,15 +125,7 @@
   }
 
   public int compareTo(Date other) {
-    long thisTime = getTime();
-    long otherTime = other.getTime();
-    if (thisTime < otherTime) {
-      return -1;
-    } else if (thisTime > otherTime) {
-      return 1;
-    } else {
-      return 0;
-    }
+    return Long.signum(getTime() - other.getTime());
   }
 
   @Override
diff --git a/user/test/com/google/gwt/emultest/java/sql/SqlTimestampTest.java b/user/test/com/google/gwt/emultest/java/sql/SqlTimestampTest.java
index 052ec45..a6598c0 100644
--- a/user/test/com/google/gwt/emultest/java/sql/SqlTimestampTest.java
+++ b/user/test/com/google/gwt/emultest/java/sql/SqlTimestampTest.java
@@ -36,6 +36,14 @@
     return "com.google.gwt.emultest.EmulSuite";
   }
 
+  public void testCompareTo() {
+    Timestamp now = Timestamp.valueOf("2011-01-05 12:45:18.000000000");
+    // add 1.5 << 31 so coercing the ms difference to int results in a
+    // sign change
+    Timestamp later = new Timestamp(now.getTime() + (3L << 30));
+    assertTrue("later <= now", later.compareTo(now) > 0);
+  }
+
   /**
    * Timestamps have some non-obvious comparison semantics when compared to
    * dates.
