diff --git a/user/src/com/google/gwt/user/rebind/rpc/TypeSerializerCreator.java b/user/src/com/google/gwt/user/rebind/rpc/TypeSerializerCreator.java
index 19f311d..125bce6 100644
--- a/user/src/com/google/gwt/user/rebind/rpc/TypeSerializerCreator.java
+++ b/user/src/com/google/gwt/user/rebind/rpc/TypeSerializerCreator.java
@@ -375,7 +375,18 @@
       }
     }
 
+    boolean shard = shardSize > 0 && filteredTypes.size() > shardSize;
+    int shardCount = 0;
+
+    if (shard) {
+      srcWriter.println("(function() {");
+    }
+
     for (JType type : filteredTypes) {
+      if (shard && ++shardCount % shardSize == 0) {
+        srcWriter.println("})();");
+        srcWriter.println("(function() {");
+      }
 
       srcWriter.println("@com.google.gwt.user.client.rpc.impl.SerializerBase"
           + "::registerMethods("
@@ -397,6 +408,10 @@
       srcWriter.println();
     }
 
+    if (shard) {
+      srcWriter.println("})();");
+    }
+
     srcWriter.outdent();
     srcWriter.println("}-*/;");
     srcWriter.println();
@@ -407,6 +422,12 @@
     srcWriter.indent();
 
     int index = 0;
+    boolean shard = shardSize > 0 && getSerializableTypes().length > shardSize;
+    int shardCount = 0;
+
+    if (shard) {
+      srcWriter.println("(function() {");
+    }
 
     for (JType type : getSerializableTypes()) {
 
@@ -429,6 +450,12 @@
         jsniTypeRef += "[]";
         type = type.isArray().getComponentType();
       }
+
+      if (shard && ++shardCount % shardSize == 0) {
+        srcWriter.println("})();");
+        srcWriter.println("(function() {");
+      }
+
       srcWriter.println("@com.google.gwt.user.client.rpc.impl.SerializerBase"
           + "::registerSignature("
           + "Lcom/google/gwt/core/client/JsArrayString;" + "Ljava/lang/Class;"
@@ -441,6 +468,10 @@
       srcWriter.println();
     }
 
+    if (shard) {
+      srcWriter.println("})();");
+    }
+
     srcWriter.outdent();
     srcWriter.println("}-*/;");
     srcWriter.println();
