Generic methods are given 4 special dictionary slots that can be used for fast lookup. There is similar limit for generic types.
These limits came from fragile NGen. With R2R, there should be nothing fundamental preventing us from making the number of dictionary slots for generic methods dynamic, grow the number of fast slots as necessary to give each generic method the exact number of slots it needs to run efficiently.
More context: https://github.com/dotnet/coreclr/issues/22400#issuecomment-462184185: