@@ -916,29 +916,25 @@ public static int BinarySearch(Array array, int index, int length, object? value
916916 result = GenericBinarySearch < ushort > ( array , adjustedIndex , length , value ) ;
917917 break ;
918918 case CorElementType . ELEMENT_TYPE_I4 :
919- #if TARGET_32BIT
920- case CorElementType . ELEMENT_TYPE_I:
921- #endif
922919 result = GenericBinarySearch < int > ( array , adjustedIndex , length , value ) ;
923920 break ;
924921 case CorElementType . ELEMENT_TYPE_U4 :
925- #if TARGET_32BIT
926- case CorElementType . ELEMENT_TYPE_U:
927- #endif
928922 result = GenericBinarySearch < uint > ( array , adjustedIndex , length , value ) ;
929923 break ;
930924 case CorElementType . ELEMENT_TYPE_I8 :
931- #if TARGET_64BIT
932- case CorElementType . ELEMENT_TYPE_I:
933- #endif
934925 result = GenericBinarySearch < long > ( array , adjustedIndex , length , value ) ;
935926 break ;
936927 case CorElementType . ELEMENT_TYPE_U8 :
937- #if TARGET_64BIT
938- case CorElementType . ELEMENT_TYPE_U:
939- #endif
940928 result = GenericBinarySearch < ulong > ( array , adjustedIndex , length , value ) ;
941929 break ;
930+ case CorElementType . ELEMENT_TYPE_I :
931+ if ( IntPtr . Size == 4 )
932+ goto case CorElementType . ELEMENT_TYPE_I4 ;
933+ goto case CorElementType . ELEMENT_TYPE_I8 ;
934+ case CorElementType . ELEMENT_TYPE_U :
935+ if ( IntPtr . Size == 4 )
936+ goto case CorElementType . ELEMENT_TYPE_U4 ;
937+ goto case CorElementType . ELEMENT_TYPE_U8 ;
942938 case CorElementType . ELEMENT_TYPE_R4 :
943939 result = GenericBinarySearch < float > ( array , adjustedIndex , length , value ) ;
944940 break ;
@@ -1424,20 +1420,17 @@ public static int IndexOf(Array array, object? value, int startIndex, int count)
14241420 break ;
14251421 case CorElementType . ELEMENT_TYPE_I4 :
14261422 case CorElementType . ELEMENT_TYPE_U4 :
1427- #if TARGET_32BIT
1428- case CorElementType . ELEMENT_TYPE_I :
1429- case CorElementType . ELEMENT_TYPE_U :
1430- #endif
14311423 result = GenericIndexOf < int > ( array , value , adjustedIndex , count ) ;
14321424 break ;
14331425 case CorElementType . ELEMENT_TYPE_I8 :
14341426 case CorElementType . ELEMENT_TYPE_U8 :
1435- #if TARGET_64BIT
1436- case CorElementType . ELEMENT_TYPE_I :
1437- case CorElementType . ELEMENT_TYPE_U :
1438- #endif
14391427 result = GenericIndexOf < long > ( array , value , adjustedIndex , count ) ;
14401428 break ;
1429+ case CorElementType . ELEMENT_TYPE_I :
1430+ case CorElementType . ELEMENT_TYPE_U :
1431+ if ( IntPtr . Size == 4 )
1432+ goto case CorElementType . ELEMENT_TYPE_I4 ;
1433+ goto case CorElementType . ELEMENT_TYPE_I8 ;
14411434 case CorElementType . ELEMENT_TYPE_R4 :
14421435 result = GenericIndexOf < float > ( array , value , adjustedIndex , count ) ;
14431436 break ;
@@ -1654,20 +1647,17 @@ public static int LastIndexOf(Array array, object? value, int startIndex, int co
16541647 break ;
16551648 case CorElementType . ELEMENT_TYPE_I4 :
16561649 case CorElementType . ELEMENT_TYPE_U4 :
1657- #if TARGET_32BIT
1658- case CorElementType . ELEMENT_TYPE_I :
1659- case CorElementType . ELEMENT_TYPE_U :
1660- #endif
16611650 result = GenericLastIndexOf < int > ( array , value , adjustedIndex , count ) ;
16621651 break ;
16631652 case CorElementType . ELEMENT_TYPE_I8 :
16641653 case CorElementType . ELEMENT_TYPE_U8 :
1665- #if TARGET_64BIT
1666- case CorElementType . ELEMENT_TYPE_I :
1667- case CorElementType . ELEMENT_TYPE_U :
1668- #endif
16691654 result = GenericLastIndexOf < long > ( array , value , adjustedIndex , count ) ;
16701655 break ;
1656+ case CorElementType . ELEMENT_TYPE_I :
1657+ case CorElementType . ELEMENT_TYPE_U :
1658+ if ( IntPtr . Size == 4 )
1659+ goto case CorElementType . ELEMENT_TYPE_I4 ;
1660+ goto case CorElementType . ELEMENT_TYPE_I8 ;
16711661 case CorElementType . ELEMENT_TYPE_R4 :
16721662 result = GenericLastIndexOf < float > ( array , value , adjustedIndex , count ) ;
16731663 break ;
@@ -1863,22 +1853,19 @@ public static void Reverse(Array array, int index, int length)
18631853 return ;
18641854 case CorElementType . ELEMENT_TYPE_I4 :
18651855 case CorElementType . ELEMENT_TYPE_U4 :
1866- #if TARGET_32BIT
1867- case CorElementType . ELEMENT_TYPE_I :
1868- case CorElementType . ELEMENT_TYPE_U :
1869- #endif
18701856 case CorElementType . ELEMENT_TYPE_R4 :
18711857 UnsafeArrayAsSpan < int > ( array , adjustedIndex , length ) . Reverse ( ) ;
18721858 return ;
18731859 case CorElementType . ELEMENT_TYPE_I8 :
18741860 case CorElementType . ELEMENT_TYPE_U8 :
1875- #if TARGET_64BIT
1876- case CorElementType . ELEMENT_TYPE_I :
1877- case CorElementType . ELEMENT_TYPE_U :
1878- #endif
18791861 case CorElementType . ELEMENT_TYPE_R8 :
18801862 UnsafeArrayAsSpan < long > ( array , adjustedIndex , length ) . Reverse ( ) ;
18811863 return ;
1864+ case CorElementType . ELEMENT_TYPE_I :
1865+ case CorElementType . ELEMENT_TYPE_U :
1866+ if ( IntPtr . Size == 4 )
1867+ goto case CorElementType . ELEMENT_TYPE_I4 ;
1868+ goto case CorElementType . ELEMENT_TYPE_I8 ;
18821869 case CorElementType . ELEMENT_TYPE_OBJECT :
18831870 case CorElementType . ELEMENT_TYPE_ARRAY :
18841871 case CorElementType . ELEMENT_TYPE_SZARRAY :
@@ -2069,29 +2056,25 @@ public static void Sort(Array keys, Array? items, int index, int length, ICompar
20692056 GenericSort < ushort > ( keys , items , adjustedIndex , length ) ;
20702057 return ;
20712058 case CorElementType . ELEMENT_TYPE_I4 :
2072- #if TARGET_32BIT
2073- case CorElementType . ELEMENT_TYPE_I:
2074- #endif
20752059 GenericSort < int > ( keys , items , adjustedIndex , length ) ;
20762060 return ;
20772061 case CorElementType . ELEMENT_TYPE_U4 :
2078- #if TARGET_32BIT
2079- case CorElementType . ELEMENT_TYPE_U:
2080- #endif
20812062 GenericSort < uint > ( keys , items , adjustedIndex , length ) ;
20822063 return ;
20832064 case CorElementType . ELEMENT_TYPE_I8 :
2084- #if TARGET_64BIT
2085- case CorElementType . ELEMENT_TYPE_I:
2086- #endif
20872065 GenericSort < long > ( keys , items , adjustedIndex , length ) ;
20882066 return ;
20892067 case CorElementType . ELEMENT_TYPE_U8 :
2090- #if TARGET_64BIT
2091- case CorElementType . ELEMENT_TYPE_U:
2092- #endif
20932068 GenericSort < ulong > ( keys , items , adjustedIndex , length ) ;
20942069 return ;
2070+ case CorElementType . ELEMENT_TYPE_I :
2071+ if ( IntPtr . Size == 4 )
2072+ goto case CorElementType . ELEMENT_TYPE_I4 ;
2073+ goto case CorElementType . ELEMENT_TYPE_I8 ;
2074+ case CorElementType . ELEMENT_TYPE_U :
2075+ if ( IntPtr . Size == 4 )
2076+ goto case CorElementType . ELEMENT_TYPE_U4 ;
2077+ goto case CorElementType . ELEMENT_TYPE_U8 ;
20952078 case CorElementType . ELEMENT_TYPE_R4 :
20962079 GenericSort < float > ( keys , items , adjustedIndex , length ) ;
20972080 return ;
0 commit comments