Fix generatePreamble that was broken in c71242

Change-Id: Ifc0a2a56b6bcc8ef12b07c63d75c592b410ee793
diff --git a/dev/core/src/com/google/gwt/dev/jjs/impl/GenerateJavaScriptAST.java b/dev/core/src/com/google/gwt/dev/jjs/impl/GenerateJavaScriptAST.java
index 0e8a567..b2bc5c7 100644
--- a/dev/core/src/com/google/gwt/dev/jjs/impl/GenerateJavaScriptAST.java
+++ b/dev/core/src/com/google/gwt/dev/jjs/impl/GenerateJavaScriptAST.java
@@ -1240,6 +1240,12 @@
       // Generate immortal types in the preamble.
       generateImmortalTypes(vars);
 
+      //  Perform necessary polyfills.
+      addTypeDefinitionStatement(
+          program.getIndexedType("JavaClassHierarchySetupUtil"),
+          constructInvocation(
+              program.getSourceInfo(), "JavaClassHierarchySetupUtil.modernizeBrowser").makeStmt());
+
       Set<JDeclaredType> alreadyProcessed =
           Sets.<JDeclaredType>newLinkedHashSet(program.immortalCodeGenTypes);
       alreadyProcessed.add(program.getTypeClassLiteralHolder());
@@ -1256,11 +1262,6 @@
       generateClassLiterals(classLiteralSupportClasses);
       installClassLiterals(classLiteralSupportClasses);
 
-      //  Perform necessary polyfills.
-      addTypeDefinitionStatement(program.getIndexedType("JavaClassHierarchySetupUtil"),
-          constructInvocation(
-              program.getSourceInfo(), "JavaClassHierarchySetupUtil.modernizeBrowser").makeStmt());
-
       Set<JDeclaredType> preambleTypes = Sets.newLinkedHashSet(alreadyProcessed);
       preambleTypes.addAll(classLiteralSupportClasses);
       return preambleTypes;