Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit929d85b

Browse files
committed
Updating codegen and surface area tests
1 parent41ddc16 commit929d85b

File tree

37 files changed

+87
-199
lines changed

37 files changed

+87
-199
lines changed

‎src/fsharp/FSharp.Core.Unittests/SurfaceArea.4.0.fs‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2228,7 +2228,9 @@ Microsoft.FSharp.Core.LanguagePrimitives: Microsoft.FSharp.Core.LanguagePrimitiv
22282228
Microsoft.FSharp.Core.LanguagePrimitives: Microsoft.FSharp.Core.LanguagePrimitives+IntrinsicOperators
22292229
Microsoft.FSharp.Core.LanguagePrimitives: SByte SByteWithMeasure(SByte)
22302230
Microsoft.FSharp.Core.LanguagePrimitives: Single Float32WithMeasure(Single)
2231+
Microsoft.FSharp.Core.LanguagePrimitives: System.Collections.Generic.IComparer`1[T] FastGenericComparerFromTable[T]()
22312232
Microsoft.FSharp.Core.LanguagePrimitives: System.Collections.Generic.IComparer`1[T] FastGenericComparer[T]()
2233+
Microsoft.FSharp.Core.LanguagePrimitives: System.Collections.Generic.IEqualityComparer`1[T] FastGenericEqualityComparerFromTable[T]()
22322234
Microsoft.FSharp.Core.LanguagePrimitives: System.Collections.Generic.IEqualityComparer`1[T] FastGenericEqualityComparer[T]()
22332235
Microsoft.FSharp.Core.LanguagePrimitives: System.Collections.Generic.IEqualityComparer`1[T] FastLimitedGenericEqualityComparer[T](Int32)
22342236
Microsoft.FSharp.Core.LanguagePrimitives: System.Collections.IComparer GenericComparer

‎src/fsharp/FSharp.Core.Unittests/SurfaceArea.Portable.fs‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2217,7 +2217,9 @@ Microsoft.FSharp.Core.LanguagePrimitives: Microsoft.FSharp.Core.LanguagePrimitiv
22172217
Microsoft.FSharp.Core.LanguagePrimitives: Microsoft.FSharp.Core.LanguagePrimitives+IntrinsicOperators
22182218
Microsoft.FSharp.Core.LanguagePrimitives: SByte SByteWithMeasure(SByte)
22192219
Microsoft.FSharp.Core.LanguagePrimitives: Single Float32WithMeasure(Single)
2220+
Microsoft.FSharp.Core.LanguagePrimitives: System.Collections.Generic.IComparer`1[T] FastGenericComparerFromTable[T]()
22202221
Microsoft.FSharp.Core.LanguagePrimitives: System.Collections.Generic.IComparer`1[T] FastGenericComparer[T]()
2222+
Microsoft.FSharp.Core.LanguagePrimitives: System.Collections.Generic.IEqualityComparer`1[T] FastGenericEqualityComparerFromTable[T]()
22212223
Microsoft.FSharp.Core.LanguagePrimitives: System.Collections.Generic.IEqualityComparer`1[T] FastGenericEqualityComparer[T]()
22222224
Microsoft.FSharp.Core.LanguagePrimitives: System.Collections.Generic.IEqualityComparer`1[T] FastLimitedGenericEqualityComparer[T](Int32)
22232225
Microsoft.FSharp.Core.LanguagePrimitives: System.Collections.IComparer GenericComparer

‎tests/fsharpqa/Source/Optimizations/GenericComparison/Compare01.il.bsl‎

Lines changed: 40 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -13,36 +13,36 @@
1313
.assembly extern FSharp.Core
1414
{
1515
.publickeytoken= (B0 3F 5F 7F11 D5 0A 3A )// .?_....:
16-
.ver4:0:0:0
16+
.ver4:4:0:9055
1717
}
1818
.assembly Compare01
1919
{
2020
.custom instance void [FSharp.Core]Microsoft.FSharp.Core.FSharpInterfaceDataVersionAttribute::.ctor(int32,
2121
int32,
2222
int32)= (01000200000000000000000000000000 )
2323

24-
//--- The following custom attribute is added automatically, do not uncomment -------
24+
//
2525
// .custom instance void [mscorlib]System.Diagnostics.DebuggableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggableAttribute/DebuggingModes) = ( 01 00 03 00 00 00 00 00 )
2626

2727
.hash algorithm 0x00008004
2828
.ver0:0:0:0
2929
}
3030
.mresource public FSharpSignatureData.Compare01
3131
{
32-
// Offset: 0x00000000 Length:0x00000239
32+
// Offset: 0x00000000 Length:0x0000023F
3333
}
3434
.mresource public FSharpOptimizationData.Compare01
3535
{
36-
// Offset:0x00000240 Length: 0x000000B2
36+
// Offset:0x00000248 Length: 0x000000B2
3737
}
3838
.module Compare01.dll
39-
// MVID: {4BEB29DE-04A0-F88E-A745-0383DE29EB4B}
39+
// MVID: {54400E31-04A0-F88E-A745-0383310E4054}
4040
.imagebase 0x00400000
4141
.file alignment 0x00000200
4242
.stackreserve 0x00100000
4343
.subsystem 0x0003// WINDOWS_CUI
4444
.corflags 0x00000001// ILONLY
45-
// Image base:0x003F0000
45+
// Image base:0x00AE0000
4646

4747

4848
// =============== CLASS MEMBERS DECLARATION ===================
@@ -57,60 +57,46 @@
5757
.custom instance void [FSharp.Core]Microsoft.FSharp.Core.CompilationMappingAttribute::.ctor(valuetype [FSharp.Core]Microsoft.FSharp.Core.SourceConstructFlags)= (0100070000000000 )
5858
.method public static void f4() cil managed
5959
{
60-
//Code size 54 (0x36)
60+
//
6161
.maxstack4
6262
.locals init ([0] int32 x,
63-
[1] class [mscorlib]System.Tuple`2<int32,int32> t1,
64-
[2] class [mscorlib]System.Tuple`2<int32,int32> t2,
65-
[3] int32 i,
66-
[4] int32 V_4)
63+
[1] int32 i,
64+
[2] int32 V_2)
6765
.language '{AB4F38C9-B6E6-43BA-BE3B-58080B2CCCE3}', '{994B45C4-E6E9-11D2-903F-00C04FA302A1}', '{5A869D0B-6611-11D3-BD2A-0000F80849BD}'
68-
.line5,5 :8,25
66+
.line5,5 :8,25'C:\\Users\\latkin\\Source\\Repos\\visualfsharp\\tests\\fsharpqa\\Source\\Optimizations\\GenericComparison\\Compare01.fsx'
6967
IL_0000: nop
7068
IL_0001: ldc.i4.1
7169
IL_0002: stloc.0
72-
.line6,6 :8,22
73-
IL_0003: ldc.i4.1
74-
IL_0004: ldc.i4.2
75-
IL_0005: newobj instance void class [mscorlib]System.Tuple`2<int32,int32>::.ctor(!0,
76-
!1)
77-
IL_000a: stloc.1
78-
.line7,7 :8,22
79-
IL_000b: ldc.i4.1
80-
IL_000c: ldc.i4.3
81-
IL_000d: newobj instance void class [mscorlib]System.Tuple`2<int32,int32>::.ctor(!0,
82-
!1)
83-
IL_0012: stloc.2
84-
.line9,9 :8,32
85-
IL_0013: ldc.i4.0
86-
IL_0014: stloc.3
87-
IL_0015: br.s IL_002d
88-
89-
.line10,10 :12,30
70+
.line9,9 :8,32 ''
71+
IL_0003: ldc.i4.0
72+
IL_0004: stloc.1
73+
IL_0005: br.s IL_001a
74+
75+
.line10,10 :12,30 ''
76+
IL_0007: ldc.i4.1
77+
IL_0008: ldc.i4.1
78+
IL_0009: cgt
79+
IL_000b: stloc.2
80+
IL_000c: ldloc.2
81+
IL_000d: brfalse.s IL_0013
82+
83+
IL_000f: ldloc.2
84+
IL_0010: nop
85+
IL_0011: br.s IL_0015
86+
87+
IL_0013: ldc.i4.m1
88+
IL_0014: nop
89+
IL_0015: stloc.0
90+
IL_0016: ldloc.1
9091
IL_0017: ldc.i4.1
91-
IL_0018: ldc.i4.1
92-
IL_0019: cgt
93-
IL_001b: stloc.s V_4
94-
IL_001d: ldloc.s V_4
95-
IL_001f: brfalse.s IL_0026
96-
97-
IL_0021: ldloc.s V_4
98-
IL_0023: nop
99-
IL_0024: br.s IL_0028
100-
101-
IL_0026: ldc.i4.m1
102-
IL_0027: nop
103-
IL_0028: stloc.0
104-
IL_0029: ldloc.3
105-
IL_002a: ldc.i4.1
106-
IL_002b: add
107-
IL_002c: stloc.3
108-
.line9,9 :21,29
109-
IL_002d: ldloc.3
110-
IL_002e: ldc.i4 0x989681
111-
IL_0033: blt.s IL_0017
112-
113-
IL_0035: ret
92+
IL_0018: add
93+
IL_0019: stloc.1
94+
.line9,9 :21,29 ''
95+
IL_001a: ldloc.1
96+
IL_001b: ldc.i4 0x989681
97+
IL_0020: blt.s IL_0007
98+
99+
IL_0022: ret
114100
}// end of method CompareMicroPerfAndCodeGenerationTests::f4
115101

116102
}// end of class CompareMicroPerfAndCodeGenerationTests
@@ -125,4 +111,4 @@
125111

126112
// =============================================================
127113

128-
//*********** DISASSEMBLY COMPLETE ***********************
114+
//
Lines changed: 41 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11

2-
// Microsoft (R) .NET Framework IL Disassembler. Version 4.0.30319.16774
2+
// Microsoft (R) .NET Framework IL Disassembler. Version 4.0.30319.1
33
// Copyright (c) Microsoft Corporation. All rights reserved.
44

55

@@ -13,36 +13,36 @@
1313
.assembly extern FSharp.Core
1414
{
1515
.publickeytoken= (B0 3F 5F 7F11 D5 0A 3A )// .?_....:
16-
.ver4:0:0:0
16+
.ver4:4:0:9055
1717
}
1818
.assembly Compare01
1919
{
2020
.custom instance void [FSharp.Core]Microsoft.FSharp.Core.FSharpInterfaceDataVersionAttribute::.ctor(int32,
2121
int32,
2222
int32)= (01000200000000000000000000000000 )
2323

24-
//--- The following custom attribute is added automatically, do not uncomment -------
24+
//
2525
// .custom instance void [mscorlib]System.Diagnostics.DebuggableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggableAttribute/DebuggingModes) = ( 01 00 03 00 00 00 00 00 )
2626

2727
.hash algorithm 0x00008004
2828
.ver0:0:0:0
2929
}
3030
.mresource public FSharpSignatureData.Compare01
3131
{
32-
// Offset: 0x00000000 Length:0x00000249
32+
// Offset: 0x00000000 Length:0x0000023F
3333
}
3434
.mresource public FSharpOptimizationData.Compare01
3535
{
36-
// Offset:0x00000250 Length: 0x000000B2
36+
// Offset:0x00000248 Length: 0x000000B2
3737
}
3838
.module Compare01.dll
39-
// MVID: {4DAC3A2E-04A0-F88E-A745-03832E3AAC4D}
39+
// MVID: {54400E31-04A0-F88E-A745-0383310E4054}
4040
.imagebase 0x00400000
4141
.file alignment 0x00000200
4242
.stackreserve 0x00100000
4343
.subsystem 0x0003// WINDOWS_CUI
4444
.corflags 0x00000001// ILONLY
45-
// Image base:0x0000000000360000
45+
// Image base:0x00AE0000
4646

4747

4848
// =============== CLASS MEMBERS DECLARATION ===================
@@ -57,60 +57,46 @@
5757
.custom instance void [FSharp.Core]Microsoft.FSharp.Core.CompilationMappingAttribute::.ctor(valuetype [FSharp.Core]Microsoft.FSharp.Core.SourceConstructFlags)= (0100070000000000 )
5858
.method public static void f4() cil managed
5959
{
60-
//Code size 54 (0x36)
60+
//
6161
.maxstack4
6262
.locals init ([0] int32 x,
63-
[1] class [mscorlib]System.Tuple`2<int32,int32> t1,
64-
[2] class [mscorlib]System.Tuple`2<int32,int32> t2,
65-
[3] int32 i,
66-
[4] int32 V_4)
63+
[1] int32 i,
64+
[2] int32 V_2)
6765
.language '{AB4F38C9-B6E6-43BA-BE3B-58080B2CCCE3}', '{994B45C4-E6E9-11D2-903F-00C04FA302A1}', '{5A869D0B-6611-11D3-BD2A-0000F80849BD}'
68-
.line5,5 :8,25
66+
.line5,5 :8,25'C:\\Users\\latkin\\Source\\Repos\\visualfsharp\\tests\\fsharpqa\\Source\\Optimizations\\GenericComparison\\Compare01.fsx'
6967
IL_0000: nop
7068
IL_0001: ldc.i4.1
7169
IL_0002: stloc.0
72-
.line6,6 :8,22
73-
IL_0003: ldc.i4.1
74-
IL_0004: ldc.i4.2
75-
IL_0005: newobj instance void class [mscorlib]System.Tuple`2<int32,int32>::.ctor(!0,
76-
!1)
77-
IL_000a: stloc.1
78-
.line7,7 :8,22
79-
IL_000b: ldc.i4.1
80-
IL_000c: ldc.i4.3
81-
IL_000d: newobj instance void class [mscorlib]System.Tuple`2<int32,int32>::.ctor(!0,
82-
!1)
83-
IL_0012: stloc.2
84-
.line9,9 :8,32
85-
IL_0013: ldc.i4.0
86-
IL_0014: stloc.3
87-
IL_0015: br.s IL_002d
88-
89-
.line10,10 :12,30
70+
.line9,9 :8,32 ''
71+
IL_0003: ldc.i4.0
72+
IL_0004: stloc.1
73+
IL_0005: br.s IL_001a
74+
75+
.line10,10 :12,30 ''
76+
IL_0007: ldc.i4.1
77+
IL_0008: ldc.i4.1
78+
IL_0009: cgt
79+
IL_000b: stloc.2
80+
IL_000c: ldloc.2
81+
IL_000d: brfalse.s IL_0013
82+
83+
IL_000f: ldloc.2
84+
IL_0010: nop
85+
IL_0011: br.s IL_0015
86+
87+
IL_0013: ldc.i4.m1
88+
IL_0014: nop
89+
IL_0015: stloc.0
90+
IL_0016: ldloc.1
9091
IL_0017: ldc.i4.1
91-
IL_0018: ldc.i4.1
92-
IL_0019: cgt
93-
IL_001b: stloc.s V_4
94-
IL_001d: ldloc.s V_4
95-
IL_001f: brfalse.s IL_0026
96-
97-
IL_0021: ldloc.s V_4
98-
IL_0023: nop
99-
IL_0024: br.s IL_0028
100-
101-
IL_0026: ldc.i4.m1
102-
IL_0027: nop
103-
IL_0028: stloc.0
104-
IL_0029: ldloc.3
105-
IL_002a: ldc.i4.1
106-
IL_002b: add
107-
IL_002c: stloc.3
108-
.line9,9 :21,29
109-
IL_002d: ldloc.3
110-
IL_002e: ldc.i4 0x989681
111-
IL_0033: blt.s IL_0017
112-
113-
IL_0035: ret
92+
IL_0018: add
93+
IL_0019: stloc.1
94+
.line9,9 :21,29 ''
95+
IL_001a: ldloc.1
96+
IL_001b: ldc.i4 0x989681
97+
IL_0020: blt.s IL_0007
98+
99+
IL_0022: ret
114100
}// end of method CompareMicroPerfAndCodeGenerationTests::f4
115101

116102
}// end of class CompareMicroPerfAndCodeGenerationTests
@@ -125,4 +111,4 @@
125111

126112
// =============================================================
127113

128-
//*********** DISASSEMBLY COMPLETE ***********************
114+
//
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp