anchor.diff:        Array.init 64 (fun i -> 
             let tab = tables.[i]
             let tabName = TableName.FromIndex i
  -          if TableRequiresSorting tabName then SortTableRows tabName tab.RowsOfSharedTable else tab.RowsOfUnsharedTable |> Array.map (fun u -> u.GenericRow))
  +          let rows = tab.GenericRowsOfTable
  +          if TableRequiresSorting tabName then SortTableRows tabName rows else rows)
         
       reportTime showTimes "Sort Tables"
   
  
positive.code:     ok
  
  
  /// This is the representation of shared rows is used for most shared row types.
  /// Rows ILAssemblyRef and ILMethodRef are very common and are given their own
  /// representations.
  
negative.code:     // Hence we need to sort it before we emit any entries in GenericParamConstraint\CustomAttributes that are attached to generic params. 
      // Note this mutates the rows in a table.  'SetRowsOfTable' clears 
      // the key --> index map since it is no longer valid 
      cenv.GetTable(TableNames.GenericParam).SetRowsOfSharedTable (SortTableRows TableNames.GenericParam (cenv.GetTable(TableNames.GenericParam).GenericRowsOfTable))
      GenTypeDefsPass4 [] cenv tds
      reportTime cenv.showTimes "Module Generation Pass 4"
  
  