Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1611 commits
Select commit Hold shift + click to select a range
c68838e
[browser] EP profiler - identify top frame, positive PID (#115825)
pavelsavara May 22, 2025
da23c19
Implement CEE_LDOBJ and CEE_STOBJ in the interpreter via ldind/stind …
kg May 22, 2025
0e411ee
Update WebAssembly image to Ubuntu 24.04 (#115901)
richlander May 22, 2025
1a5af14
Debugger fixes for the Windows X86 EH Funclets model (#115630)
davidwrighton May 22, 2025
17a94e2
JIT: Unprotect handler entry after finally removal (#115907)
amanasifkhalid May 22, 2025
8f84f8e
[crossgen2] Prevent inlining of PInvoke marshalling accross version b…
jkotas May 23, 2025
d4c23c6
JIT: Remove overzealous async assert (#115883)
jakobbotsch May 23, 2025
87b35f4
JIT: Avoid implicit byref retbufs in async calls (#115888)
jakobbotsch May 23, 2025
915f129
Use sln format for coreclr and corehost (#115935)
ViktorHofer May 23, 2025
fa1604a
Make HttpStress fail on unobserved exceptions (#115849)
antonfirsov May 23, 2025
2f62903
Add dotnet to the path for copilot agent (#115912)
ericstj May 23, 2025
d1e4319
When cloning method descs be careful with fields that have different …
VSadov May 23, 2025
ef86e25
[NativeAOT] Fix: Prevent EETypeKindMask invalidation from uint16_t ca…
TickThunder May 23, 2025
cf53694
x86/funclets: Handle longjmp (#115932)
filipnavara May 24, 2025
2b0c8c3
Add missing null check to SlhDsa's constructor
vcsjones May 24, 2025
c00b15f
Simplify findvcvarsall.bat (#115951)
jkotas May 24, 2025
6944091
Add missing overrides for IsCollectible (#115785)
Venkad000 May 24, 2025
d896e85
Disable Android tests in default CI set for now (#115956)
jkotas May 24, 2025
8115429
JIT: Disallow forward substitution of async calls (#115936)
jakobbotsch May 25, 2025
766faec
Disable Android tests in default CI set for now (#115973)
jkotas May 25, 2025
2765f18
Automated bump of chrome version (#115969)
github-actions[bot] May 25, 2025
67a567f
Fix Creating Undermined Culture (#115919)
tarekgh May 25, 2025
1548409
Fix intermittent failures in PAL tests (#115958)
jkotas May 26, 2025
2d5f1f0
Support out of proc Histogram Base 2 Exponential aggregation (#115852)
tarekgh May 26, 2025
be67510
Enable new exception handling on win-x86 (#115957)
filipnavara May 26, 2025
cb695d9
[browser] Rename collectPerfCounters to collectMetrics in browser run…
Copilot May 26, 2025
82ef541
[wasm coreclr] Make clr.runtime+libs build on Windows (#115058)
radekdoulik May 26, 2025
f154d65
Delete FEATURE_DOUBLE_ALIGNMENT_HINT for GC heap allocations (#115985)
jkotas May 26, 2025
8b3b6e5
add HttpMethod.Query (#115934)
WeihanLi May 26, 2025
3763fb6
[RuntimeAsync] ilasm/ildasm support for the MethodImpl.Async (Take 2)…
hez2010 May 26, 2025
f85ec36
Create copilot-instructions.md (#115917)
CarnaViire May 26, 2025
d91f6c4
Cleanup some PAL items (#115986)
AaronRobinsonMSFT May 26, 2025
b61c3e8
Added another case in the switch block to handle the object returned …
Venkad000 May 26, 2025
12eba0a
[wasm][coreclr] Interpret everything on wasm (#115788)
radekdoulik May 26, 2025
ac7f8e0
Fix BCE regression (#115980)
EgorBo May 26, 2025
961d3bb
Add a copilot prompt file for JIT-EE interface modifications (#115889)
EgorBo May 26, 2025
30160aa
Move GenTreeIntCon::gtCompileTimeHandle field to be a global map (#11…
EgorBo May 26, 2025
6a32ee4
Skip static fields in FieldLayoutIntervalCalculator (#115987)
MichalStrehovsky May 26, 2025
8df4955
Replace use of DAMT.All in ComponentModel with a more restricted set …
MichalStrehovsky May 26, 2025
50447b0
Enable AVX2 optimistically with AVX on NAOT (#114575)
saucecontrol May 27, 2025
aa902b7
Fix conditions mismatch for gc-sections with lld (#115964)
illnyang May 27, 2025
d666a78
Fix cmake warning (#116000)
radekdoulik May 27, 2025
b04d40e
JIT: Don't allow broadcast lowering to remove cast from decomposed lo…
saucecontrol May 27, 2025
ec351aa
[RISC-V] Optimize comparisons (#115039)
tomeksowi May 27, 2025
c972a60
Fixup how xarch instructions check for embedded broadcast and masking…
tannergooding May 27, 2025
d709a73
JIT: Always intersect exception sets of defs (#116007)
jakobbotsch May 27, 2025
4cb08fc
fix json source generator serialize when writing (#116004)
WeihanLi May 27, 2025
7ed741e
Replace ATP pattern with async/await in SmtpClient (part 2) (#115722)
rzikm May 27, 2025
2486c13
Switch away from AzureLinux host docker testing temporarily (#115993)
jakobbotsch May 27, 2025
97d1fc2
Switch to ymm after zmm in genZeroInitFrameUsingBlockInit (#115981)
EgorBo May 27, 2025
b10ea03
Replace CORCOMPILE_FIXUP_BLOB_KIND with ReadyToRunFixupKind (#115854)
Copilot May 27, 2025
4fea27c
Notify attached debugger of NAOT exception (#115678)
agocke May 27, 2025
13c30d4
Unmasking EGPRs in register allocator (#114867)
khushal1996 May 27, 2025
cb268de
Fix implementation of IFindReferenceTargetsCallback::FoundTrackerTarg…
jkoritzinsky May 27, 2025
1c06dfa
Rename conflicting test assemblies (#116038)
filipnavara May 27, 2025
7dce8f6
Mark some Tensor extension methods as scoped (#115575)
michaelgsharp May 27, 2025
ab3d27f
[Mono] Fix wait's returning false on non-runtime queued user APC's. (…
lateralusX May 28, 2025
16a5d90
Ordered evaluation in FileSystemGlobbing Matcher (#115940)
PranavSenthilnathan May 28, 2025
9a6481d
Remove dead code in R2RPEBuilder (#115953)
elinor-fung May 28, 2025
2a47838
Fix dataflow annotations on `TypeExtensions` (#116008)
MichalStrehovsky May 28, 2025
db27700
JIT: Add a `gtFindNodeInTree` helper (#115975)
jakobbotsch May 28, 2025
49387ef
JIT: Allow forward subbing no-return calls (#115976)
jakobbotsch May 28, 2025
e01d8f5
JIT: Refactor CSE candidate storage slightly (#116009)
jakobbotsch May 28, 2025
9376d46
[RISC-V][LoongArch64] Handle reversed fields in lowered structs (#115…
tomeksowi May 28, 2025
d44d5d6
[browser][WBT] EventPipe - end to end test (#115945)
pavelsavara May 28, 2025
7e41ae6
Update zlib-ng to 2.2.4 (#116044)
ericstj May 28, 2025
0c88424
JIT: Support bitwise field insertions for call arguments (#115977)
jakobbotsch May 28, 2025
9703a2e
JIT: Copy loop memory dependence recursively on hoisting (#116068)
jakobbotsch May 28, 2025
ffcd1c5
Trust single-edge synthetic profile (#116054)
EgorBo May 28, 2025
b4d7fca
Add Sve.IsSupported check (#116026)
kunalspathak May 28, 2025
08e6c2e
Fix typo in RecognizerBase: invalid variable in condition (#115902)
MaxPatri May 28, 2025
c96e01b
System.Formats.Tar: default to no ctime/atime. (#115778)
tmds May 28, 2025
e83ee5b
fix wrong apx-nf flag on instruction table. (#116047)
Ruihan-Yin May 28, 2025
b8ff802
Fix the incorrect code comment in DetermineCreateObjectDelegate (#115…
Silencersn May 28, 2025
6005119
Don't try to set RPATH on Windows (#116063)
MichalStrehovsky May 28, 2025
5b5de26
Delete non-existing pal tests from list (#116048)
am11 May 28, 2025
e364afb
Removed unused field in JsonProperty (#113643) (#114071)
dannyd89 May 28, 2025
3d1af41
Reduce string interpolation overhead (#114497)
pentp May 28, 2025
b8d8d0b
Attempt to fix the rare stack overflow tests issue (#116076)
janvorli May 28, 2025
4b868d2
Convert genRuntimeEventSources to a C# source generator (#114810)
jkoritzinsky May 28, 2025
cb502bd
Update BitArray.cs (#114818)
tfenise May 28, 2025
e4d6152
Add breaking change rule for adding partial modifier to interface met…
jjonescz May 29, 2025
02750a4
Remove redundant nullable annotation (#113550)
xtqqczze May 29, 2025
02ac51e
Fix MaxWorkingSet_GetNotStarted_ThrowsInvalidOperationException (#105…
gwr May 29, 2025
d8dd8da
Skip adding NullChangeToken instances to the composite list (#115684)
rameel May 29, 2025
141b2bb
Pin build container SHAs (#116083)
richlander May 29, 2025
4252c8d
Add StripDebugSymbols for Release in AndroidSampleApp (#116061)
kotlarmilos May 29, 2025
d960be8
Implement IEnumerator<T> on ref struct enumerators (#106309)
AlexRadch May 29, 2025
c875470
Provide more info on the failing CustomAttributeProvider (#110230)
jtschuster May 29, 2025
0a807e8
improve InsertRange(Span<>) perf by reducing (#107683)
karakasa May 29, 2025
fa05a08
Update copilot-instructions.md (#116049)
CarnaViire May 29, 2025
236643c
JIT: fix retyping of BLK ops when parent local is retyped (#116027)
AndyAyersMS May 29, 2025
40063f8
arm64: Rename SVE Prefetch APIs names to use Bit (#115609)
jonathandavies-arm May 29, 2025
b2b6b84
Remove ILLink support for field init substitutions (#107380)
sbomer May 29, 2025
0360335
Replace Win32 PAL CRITICAL_SECTION with minipal Mutex (#115858)
AaronRobinsonMSFT May 29, 2025
e5866fe
Create an on-stack instance of FindReferenceTargetsCallback. (#116081)
AaronRobinsonMSFT May 29, 2025
e6d64b1
Delete anonymous type heuristic (#116092)
MichalStrehovsky May 29, 2025
9523c73
Fix System.Net.Mail.Tests.SmtpClientTest.TestZeroTimeout (#116062)
rzikm May 29, 2025
1aa4568
Disable building async tests on configurations that are not yet suppo…
VSadov May 29, 2025
a3225a9
remove dead resources from mscorrc.rc (#116121)
danmoseley May 30, 2025
3b5bcb4
Delete FEATURE_MULTIREG_RETURN (#116122)
jkotas May 30, 2025
afa0f6b
[RuntimeAsync] Do not fail EnC on ordinary Task-returning methods whe…
VSadov May 30, 2025
64e1ef0
Fix SmtpClientTest.SendAsync_CanBeCanceled_SendAsyncCancel test failu…
Copilot May 30, 2025
a8bc637
JIT: Fix possible heap corruption in outlined composite SSA storage (…
jakobbotsch May 30, 2025
ddf67a7
[mono][interp] Fix broken code attempting to reapply superinstruction…
BrzVlad May 30, 2025
f4dc588
Fix interpreter double and 64 bit constant processing (#116115)
janvorli May 30, 2025
693d3bb
Increase timeouts for native AOT legs (#116114)
MichalStrehovsky May 30, 2025
29b1e99
Distinguish OOM and failure to reprotect in thunks APIs (#116010)
MichalStrehovsky May 30, 2025
321868b
[Performance] Add static linking build for CoreCLR Android (#116093)
kotlarmilos May 30, 2025
35cb2d7
Revert "Pin build container SHAs (#116083)" (#116116)
richlander May 30, 2025
dec20cd
disable newly added threading test. (#116106)
mangod9 May 30, 2025
d4ca2ce
Record exception in HttpClient native instrumentation (#115959)
joegoldman2 May 30, 2025
9c7434b
Remove redundant bounds checks around arr[arr.Length - cns] pattern (…
EgorBo May 30, 2025
a950953
Remove bounds checks for Log2 function in FormattingHelpers.CountDigi…
EgorBo May 30, 2025
1713d65
Replace readdir_r call in TimeZoneInfo.Unix (#116119)
jozkee May 30, 2025
60e9340
JIT: generalize escape analysis delegate invoke expansion slightly (#…
AndyAyersMS May 30, 2025
b0d68f7
JIT: Use flowgraph annotations to scale loop blocks in `optSetBlockWe…
amanasifkhalid May 30, 2025
2411805
JIT: improve codegen for inline candidates called only for effect (#1…
AndyAyersMS May 30, 2025
7a06f23
Delete LOADEDMODULES cache (#116126)
jkotas May 31, 2025
f329648
stop using System.CommandLine types that won't be public anymore (#11…
adamsitnik May 31, 2025
c44f6a9
Remove a few instances of unsafe code (#116111)
EgorBo May 31, 2025
c048ff0
Rework how EVEX+AVX512+AVX10 are supported by the JIT to greatly simp…
tannergooding May 31, 2025
fa1b389
Follow up on recent PAL cleanups (#116127)
jkotas May 31, 2025
a01d6d6
new runner pool (#116169)
danmoseley May 31, 2025
85a54f2
Add dispose of X509Chain in SignedXml (#115909)
MaxPatri Jun 1, 2025
cb45af9
Implement IUtf8SpanParsable on Char and Rune (#105773)
lilinus Jun 1, 2025
1c6d238
Fix PipeStream leak on Windows when pipe is disposed with a pending o…
stephentoub Jun 1, 2025
50bf168
Implement `IUtf8SpanParsable` on `Guid` (#105654)
SirCxyrtyx Jun 1, 2025
3be9089
JIT: revisions to struct field escape analysis (#116124)
AndyAyersMS Jun 1, 2025
ab29e9e
Do not use StabilizePackageVersion in project infra (#116152)
mmitche Jun 1, 2025
968a8b6
replace redhawk mentions (#116177)
kasperk81 Jun 1, 2025
a87245f
CleanUp GetFileAttribute/SetFileAttribute(Ex) in PAL (#116096)
huoyaoyuan Jun 1, 2025
34aac93
JIT: Refactor around impDevirtualizeCall for GVM devirt (#112610)
hez2010 Jun 1, 2025
a745f28
[mono][interp] Remove invalid addition of conversion opcodes (#116130)
BrzVlad Jun 2, 2025
f313e8d
[mono][interp] Disable inlining of methods that call methods using St…
BrzVlad Jun 2, 2025
a6094c1
Automated bump of chrome version (#116186)
github-actions[bot] Jun 2, 2025
32a6d12
Switch to using non-arch specific runtime properties (#116155)
mmitche Jun 2, 2025
ac7097c
Update dependencies from https://dev.azure.com/dnceng/internal/_git/d…
dotnet-maestro[bot] Jun 2, 2025
b5abdd1
JIT: Handle return buffer definitions in TreeLifeUpdater (#116137)
jakobbotsch Jun 2, 2025
4bdcb8d
Fix invalid continuation caused by exception after inlining in `TryRu…
kotlarmilos Jun 2, 2025
8a62488
remove redundant unsafe code (#116187)
EgorBo Jun 2, 2025
2d5a2ee
Remove canceled AsyncOperations from channel queues (#116021)
stephentoub Jun 2, 2025
8d59055
Interpreter EH implementation (#116046)
janvorli Jun 2, 2025
39e8c08
Disable CoreCLR interpreter test for JIT stress (#116219)
janvorli Jun 2, 2025
cb57cb8
Add missing connection strings to EnvironmentVariablesConfigurationPr…
tarekgh Jun 2, 2025
5ffe44f
Implement SVE2 Xor, XorRotateRight (#115891)
snickolls-arm Jun 2, 2025
664ac25
Fix parsing of json with UTF 8 BOM in the host (#115967)
vitek-karas Jun 2, 2025
5fab56b
Reduce allocations in PollingWildCardChangeToken (#116175)
pentp Jun 3, 2025
a2c9e7b
Unify the JsonDocument and Utf8JsonReader handling of DateTime/Offset…
IDisposable Jun 3, 2025
5edf06e
Use span copy in BigInteger.TryGetBytes when applicable (#115445)
Rob-Hague Jun 3, 2025
fcd197c
Support bounded channel with bound of 0 (rendezvous) (#116097)
stephentoub Jun 3, 2025
43edad5
JIT: Consistently use `TypeIs`/`OperIs` for type/oper checks (#116141)
jakobbotsch Jun 3, 2025
b78c19a
Notify debuggers on rethrown exceptions (#116246)
MichalStrehovsky Jun 3, 2025
ca376e3
Generalize check for dynamic scopes when saving EH clauses (#116217)
jakobbotsch Jun 3, 2025
bf80e0e
JIT: Avoid VN-based removal of dead byref store in async funcs (#116136)
jakobbotsch Jun 3, 2025
b1c624c
Enable Unsafe.Bitcast for Nullable<T> (#116232)
jkotas Jun 3, 2025
8ffd896
Enable exceptions on wrong LDELEM arguments (#116235)
janvorli Jun 3, 2025
1a7d466
Fix floating point <-> integer conversions (#116236)
janvorli Jun 3, 2025
9d1d2a9
Implement empty string intrinsic in interpreter (#116237)
janvorli Jun 3, 2025
b142ec3
Fix LDTOKEN in interpreter (#116234)
janvorli Jun 3, 2025
6ab0311
SVE2 API for AbsoluteDifferenceAdd (#115513)
jacob-crawley Jun 3, 2025
b4eb528
Replace runtime's 'OutputRID' by the corresponding vmr property 'Targ…
tmds Jun 3, 2025
3aa0c97
[wasm] Always respect WasmEnableSIMD when trimming (#115313)
lewing Jun 3, 2025
de610d0
Option to disallow duplicate JSON properties (#115856)
PranavSenthilnathan Jun 3, 2025
4572cef
JIT: Remove old loop metrics (#116267)
amanasifkhalid Jun 3, 2025
c630f27
Share allocation helpers between CoreCLR and NativeAOT (#115339)
filipnavara Jun 3, 2025
30082a4
JIT: save pgo data in inline context, use it for call optimization (#…
AndyAyersMS Jun 3, 2025
b79d4c4
Add `--arch` option for `--list-runtimes` and `--list-sdks` in host (…
elinor-fung Jun 3, 2025
a3f5189
Sve/Scatter test: Add Debug.Assert for array length (#116158)
kunalspathak Jun 3, 2025
ab30ec7
JIT: avoid some unnecessary retyping in escape analysis (#116277)
AndyAyersMS Jun 3, 2025
8091e60
Replace Unsafe.As with Unsafe.BitCast in SpanHelpers.Fill (#116221)
jkotas Jun 3, 2025
0b42ec7
Cleanup HMF definitions (#116085)
am11 Jun 4, 2025
e55370e
Re-revert "Make mutable generic collection interfaces implement read-…
Sergio0694 Jun 4, 2025
c3a914f
x86: Promote varargs when enumerating funclet, the stack walker skips…
filipnavara Jun 4, 2025
f34ec2b
X86 GCDecoder RevPInvoke nits (#116264)
max-charlamb Jun 4, 2025
6fa4227
Remove emitter unit tests which are not supported and add MoveScalar …
khushal1996 Jun 4, 2025
dda9996
[mono][interp] Add possibility to configure interp options from env v…
BrzVlad Jun 4, 2025
567505f
[mono][interp] Update var definition when inserting new instructions …
BrzVlad Jun 4, 2025
fcbc76a
JIT: Remove PUTARG_SPLIT (#116074)
jakobbotsch Jun 4, 2025
11a3603
Remove ProtectByRefsFrame (#116288)
filipnavara Jun 4, 2025
41be5e2
JIT: Graph-based loop inversion (#116017)
amanasifkhalid Jun 4, 2025
c26d6a1
Enable post-build steps for CoreCLR android (#116091)
kotlarmilos Jun 4, 2025
73882e8
Fix PAL tests (#116197)
jkotas Jun 4, 2025
a16df1d
Check containment for op3 for ternary instruction (#116229)
kunalspathak Jun 4, 2025
ab70886
[main] Source code updates from dotnet/dotnet (#116145)
dotnet-maestro[bot] Jun 4, 2025
571861b
JIT: Fix `Compiler::printfAlloc` for long strings (#116306)
jakobbotsch Jun 4, 2025
d4b08f9
Fix no-argument ./build.sh invocation (#116315)
jkoritzinsky Jun 4, 2025
6ad3b32
Unbounded memory leak from DependencyInjectionEventSource (#115974)
pedrobsaila Jun 4, 2025
f03b2ab
Fix bootstrap paths to include TargetRid for platform-specific direct…
Copilot Jun 4, 2025
1bcde97
[browser] rename MSBuild property WasmPerfTracing to EnableDiagnostic…
pavelsavara Jun 4, 2025
3427e5f
Add AOT sampling profiler (#108083)
filipnavara Jun 4, 2025
09cb359
Emit an error message if the runtime fails to initialize, instead of …
JinShil Jun 4, 2025
b5b51f9
Update coding-style.md (#116317)
tonyhallett Jun 4, 2025
4e03c5a
Use throw stubs in ref assemblies for collection interfaces (#116309)
Sergio0694 Jun 5, 2025
5a65f7c
Enable RhpNewObjectArrayFast optimization on NativeAOT (#116290)
filipnavara Jun 5, 2025
ba462ce
Improve a few more IList/Collection => IReadOnlyList/Collection check…
stephentoub Jun 5, 2025
56c80cd
Ensure that embedded mask handling is covering the right scenarios (#…
tannergooding Jun 5, 2025
c7dea1c
Delete DacVirtualUnwind (#116286)
jkotas Jun 5, 2025
937742e
[RISC-V] Simplifying the loop generated in genZeroInitFrameUsingBlock…
sirntar Jun 5, 2025
624737e
Fix bash array expansion (#116321)
akoeplinger Jun 5, 2025
76d7224
Rename Redhawk to NativeAOT (#116209)
kasperk81 Jun 5, 2025
d1ec77f
Remove a few unsafe bits in S.P.Uri, S.N.Ping, System.Transactions.Lo…
EgorBo Jun 5, 2025
f34e78f
Fix various HTTP header parsing issues (#116323)
MihaZupan Jun 5, 2025
5ba52ed
adding a simple test for reflection with async (#116329)
VSadov Jun 5, 2025
d47f2b9
[browser][WBT] fix BlazorEventPipeTestWithMetrics test (#116334)
pavelsavara Jun 5, 2025
a7f0b3e
Implement SVE2 ShiftArithmeticRounded, ShiftArithmeticRoundedSaturate…
snickolls-arm Jun 5, 2025
75de83c
Improve the interpreter internal diagnostic capabilities (#116162)
davidwrighton Jun 5, 2025
088856e
[cDAC] Implement sign extension for ClrDataAddresses (#116222)
max-charlamb Jun 5, 2025
dcc9698
Fix PropertyPolicies to consider both getter and setter accessibility…
Copilot Jun 5, 2025
f29cccf
Fix crossgen2 sometimes emitting tokens from the wrong module (#114172)
kg Jun 5, 2025
ad2712c
Update Linux versions in Libraries pipeline (#115756)
richlander Jun 5, 2025
05e5a44
Convert STORE_BLK into STORIND for SIMD (#116265)
EgorBo Jun 5, 2025
aaa3a24
Enable ML-DSA on Windows (#116291)
PranavSenthilnathan Jun 5, 2025
60dd616
Remove dead code from arm/arm64/loongarch64 stub linker (#116349)
filipnavara Jun 5, 2025
211e8db
Dispose all resources used in CmsSignature (#115666)
PranavSenthilnathan Jun 5, 2025
12c9ac0
Add StringComparison to ClaimsIdentity
vcsjones Jun 6, 2025
6388297
Debug logger should print exceptions even if the formatted message is…
colejohnson66 Jun 6, 2025
259204a
Remove dead code for parsing/emitting X86 instructions (#116292)
filipnavara Jun 6, 2025
f9c5e1a
Avoid building JITs for cross tools when unnecessary (#116332)
jakobbotsch Jun 6, 2025
19b3b0b
Fix NativeAOT outer loop test failure (#116362)
jkotas Jun 6, 2025
e84d599
Correct sequence point comment (#116366)
noahfalk Jun 6, 2025
c1bef49
Fix conversion opcode emit for implicit conversion part of conditiona…
BrzVlad Jun 6, 2025
3c77442
SPMI: Handle BRANCH26 relocs similar to REL32 relocs (#116340)
jakobbotsch Jun 6, 2025
7889937
arm64: Implement missing SVE extract methods (#116095)
jonathandavies-arm Jun 6, 2025
1cda0cd
Implement SVE2 AbsoluteDifferenceWidening(Upper/Lower) (#116268)
jacob-crawley Jun 6, 2025
9214279
Optimize Vector.Max codegen using AVX512 (#116117)
alexcovington Jun 6, 2025
91b725f
Trace out error code when creating single-file bundle extraction dire…
elinor-fung Jun 6, 2025
d1e2b69
Make single-file test cases delete extraction directory after test ru…
elinor-fung Jun 6, 2025
5f3e1ff
Normalize TYP_STRUCT to TYP_SIMD in impInlineUnboxNullable (#116372)
EgorBo Jun 7, 2025
39ecf52
JIT: Allow baseline intrinsics in JIT code unconditionally (#116196)
saucecontrol Jun 7, 2025
7057719
Revert change to follow symlinks of dotnet host (#115315)
agocke Jun 7, 2025
aad452c
Add JIT/VM support for the approved but NYI xarch isas (#116230)
tannergooding Jun 7, 2025
e9957dc
Partial revert of "Delete LOADEDMODULES cache", additional cleanup (#…
jkotas Jun 7, 2025
c160acf
[browser] Remove custom cache (#114901)
maraf Jun 7, 2025
a7f68b8
Use `Unsafe.BitCast` in `System.Array` (#116404)
xtqqczze Jun 8, 2025
b561607
Delete SCAN contract annotations (#116182)
jkotas Jun 8, 2025
0f2bfae
Cleanup LowLevelList usage in GCLayout (#116316)
huoyaoyuan Jun 8, 2025
0a1fb70
NativeAOT: Unhijack thread in sampling profiler before starting stack…
filipnavara Jun 8, 2025
727eb51
Use `Unsafe.BitCast` in `System.Guid` (#116415)
xtqqczze Jun 8, 2025
14c8756
Fix trigger for linkable-framework label policy (#116417)
jkotas Jun 8, 2025
af399c4
Fix invalid IL in RefFields test - remove ldind.ref on value type ref…
Copilot Jun 8, 2025
201bd57
Delete unnecessary or condition (#116418)
jkotas Jun 8, 2025
696ab04
Revert removal of embedModuleHandle and embedFieldHandle (#116036)
EgorBo Jun 8, 2025
4878886
Delete always-null unwContext (#116397)
am11 Jun 9, 2025
c8403e6
Delete extra layers (#116405)
jkotas Jun 9, 2025
7ed5ede
[browser] Fix dev tools profiler (#116387)
pavelsavara Jun 9, 2025
1edd69c
JIT: fix issue in assertion prop phi inference (#116326)
AndyAyersMS Jun 9, 2025
a388d5b
remove x86 ICF special handling (#116388)
max-charlamb Jun 9, 2025
11d3c57
Interpreter shared generics support (#116357)
davidwrighton Jun 9, 2025
dbc18e5
merge to 11d3c5719b67b3c9712c26cab712ec768df65c26 jun 2025
yowl Oct 18, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
4 changes: 2 additions & 2 deletions .config/dotnet-tools.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,13 +15,13 @@
]
},
"microsoft.dotnet.xharness.cli": {
"version": "10.0.0-prerelease.25077.1",
"version": "10.0.0-prerelease.25255.1",
"commands": [
"xharness"
]
},
"microsoft.visualstudio.slngen.tool": {
"version": "11.1.0",
"version": "12.0.15",
"commands": [
"slngen"
]
Expand Down
4 changes: 4 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -155,6 +155,10 @@ csharp_space_between_square_brackets = false
# License header
file_header_template = Licensed to the .NET Foundation under one or more agreements.\nThe .NET Foundation licenses this file to you under the MIT license.

[src/libraries/System.Net.Http/src/System/Net/Http/{SocketsHttpHandler/Http3RequestStream.cs,BrowserHttpHandler/BrowserHttpHandler.cs}]
# disable CA2025, the analyzer throws a NullReferenceException when processing this file: https://github.com/dotnet/roslyn-analyzers/issues/7652
dotnet_diagnostic.CA2025.severity = none

# C++ Files
[*.{cpp,h,in}]
curly_bracket_next_line = true
Expand Down
2 changes: 2 additions & 0 deletions .github/CODEOWNERS-stop-notifications
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@
/src/coreclr/inc/corinfo.h @dotnet/jit-contrib
/src/coreclr/inc/corjit.h @dotnet/jit-contrib
/src/coreclr/jit/ @dotnet/jit-contrib
/src/coreclr/interpreter/ @brzvlad @janvorli @kg
/src/coreclr/vm/interpexec* @brzvlad @janvorli @kg
/src/coreclr/nativeaot @MichalStrehovsky
/src/coreclr/tools/Common @dotnet/crossgen-contrib @MichalStrehovsky
/src/coreclr/tools/aot @dotnet/crossgen-contrib
Expand Down
290 changes: 290 additions & 0 deletions .github/copilot-instructions.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,290 @@
**Any code you commit SHOULD compile, and new and existing tests related to the change SHOULD pass.**

You MUST make your best effort to ensure your changes satisfy those criteria before committing. If for any reason you were unable to build or test the changes, you MUST report that. You MUST NOT claim success unless all builds and tests pass as described above.

You MUST refer to the [Building & Testing in dotnet/runtime](#building--testing-in-dotnetruntime) instructions and use the commands and approaches specified there before attempting your own suggestions.

You MUST follow all code-formatting and naming conventions defined in [`.editorconfig`](/.editorconfig).

In addition to the rules enforced by `.editorconfig`, you SHOULD:

- Prefer file-scoped namespace declarations and single-line using directives.
- Ensure that the final return statement of a method is on its own line.
- Use pattern matching and switch expressions wherever possible.
- Use `nameof` instead of string literals when referring to member names.
- Always use `is null` or `is not null` instead of `== null` or `!= null`.
- Trust the C# null annotations and don't add null checks when the type system says a value cannot be null.
- Prefer `?.` if applicable (e.g. `scope?.Dispose()`).
- Use `ObjectDisposedException.ThrowIf` where applicable.
- When writing tests, do not emit "Act", "Arrange" or "Assert" comments.

---

# Building & Testing in dotnet/runtime

- [1. Prerequisites](#1-prerequisites)
- [1.1. Determine Affected Components](#11-determine-affected-components)
- [1.2. Baseline Setup](#12-baseline-setup)
- [2. Iterative Build and Test Strategy](#2-iterative-build-and-test-strategy)
- [2.1. Success Criteria](#21-success-criteria)
- [3. CoreCLR (CLR) Workflow](#3-coreclr-clr-workflow)
- [4. Mono Runtime Workflow](#4-mono-runtime-workflow)
- [5. Libraries Workflow](#5-libraries-workflow)
- [5.1. How To: Identify Affected Libraries](#51-how-to-identify-affected-libraries)
- [5.2. How To: Build and Test Specific Library](#52-how-to-build-and-test-specific-library)
- [6. WebAssembly (WASM) Libraries Workflow](#6-webassembly-wasm-libraries-workflow)
- [7. Additional Notes](#7-additional-notes)
- [7.1. Troubleshooting](#71-troubleshooting)
- [7.2. Windows Command Equivalents](#72-windows-command-equivalents)
- [7.3. References](#73-references)

## 1. Prerequisites

These steps need to be done **before** applying any changes.

### 1.1. Determine Affected Components

Identify which components will be impacted by the changes. If in doubt, analyze the paths of the files to be updated:

- **CoreCLR (CLR):** Changes in `src/coreclr/` or `src/tests/`
- **Mono Runtime:** Changes in `src/mono/`
- **Libraries:** Changes in `src/libraries/`
- **WASM/WASI Libraries:** Changes in `src/libraries/` *and* the affected library targets WASM or WASI *and* the changes are included for the target (see below for details).
- If none above apply, it is most possibly an infra-only or a docs-only change. Skip build and test steps.

**WASM/WASI Library Change Detection**

A change is considered WASM/WASI-relevant if:

- The relevant `.csproj` contains explicit Browser/WASM or WASI targets (look for `<TargetFrameworks>`, `$(TargetPlatformIdentifier)`, or `Condition` attributes referencing `browser` or `wasi`, as well as `TARGET_BROWSER` or `TARGET_WASI` constants), **and**
- The changed file is not excluded from the build for that platform in any way with a `Condition` attribute on `<ItemGroup>` or `<Compile>`.

---

### 1.2. Baseline Setup

Before applying any changes, ensure you have a full successful build of the needed runtime+libraries as a baseline.

1. Checkout `main` branch

2. From the repository root, run the build depending on the affected component. If multiple components are affected, subsequently run and verify the builds for all of them.
- **CoreCLR (CLR):** `./build.sh clr+libs+host`
- **Mono Runtime:** `./build.sh mono+libs`
- **Libraries:** `./build.sh clr+libs -rc release`
- **WASM/WASI Libraries:** `./build.sh mono+libs -os browser`

3. Verify the build completed without error.
- _If the baseline build failed, report the failure and don't proceed with the changes._

4. From the repository root:
- Configure PATH: `export PATH="$(pwd)/.dotnet:$PATH"`
- Verify SDK Version: `dotnet --version` should match `sdk.version` in `global.json`.

5. Switch back to the working branch.

---

## 2. Iterative Build and Test Strategy

1. Apply the intended changes

2. **Attempt Build.** If the build fails, attempt to fix and retry the step (up to 5 attempts).

3. **Attempt Test.**
- If a test _build_ fails, attempt to fix and retry the step (up to 5 attempts).
- If a test _run_ fails,
- Determine if the problem is in the test or in the source
- If the problem is in the test, attempt to fix and retry the step (up to 5 attempts).
- If the problem is in the source, reconsider the full changeset, attempt to fix and repeat the workflow.

4. **Workflow Iteration:**
- Repeat build and test up to 5 cycles.
- If issues persist after 5 workflow cycles, report failure.
- If the same error persists after each fix attempt, do not repeat the same fix. Instead, escalate or report with full logs.

When retrying, attempt different fixes and adjust based on the build/test results.

### 2.1. Success Criteria

- **Build:**
- Completes without errors.
- Any non-zero exit code from build commands is considered a failure.

- **Tests:**
- All tests must pass (zero failures).
- Any non-zero exit code from test commands is considered a failure.

- **Workflow:**
- On success: Report completion
- Otherwise: Report error(s) with logs for diagnostics.
- Collect logs from `artifacts/log/` and the console output for both build and test steps.
- Attach relevant log files or error snippets when reporting failures.

---

## 3. CoreCLR (CLR) Workflow

From the repository root:

- Build:
`./build.sh clr`

- Run tests:
`cd src/tests && ./build.sh && ./run.sh`

- More info can be found in the dedicated workflow docs:
- [Building CoreCLR Guide](/docs/workflow/building/coreclr/README.md)
- [Building and Running CoreCLR Tests](/docs/workflow/testing/coreclr/testing.md)

---

## 4. Mono Runtime Workflow

From the repository root:

- Build:
`./build.sh mono+libs`

- Run tests:

```bash
./build.sh clr.host
cd src/tests
./build.sh mono debug /p:LibrariesConfiguration=debug
./run.sh
```

- More info can be found in the dedicated workflow docs:
- [Building Mono](/docs/workflow/building/mono/README.md)
- [Running test suites using Mono](/docs/workflow/testing/mono/testing.md)

---

## 5. Libraries Workflow

From the repository root:

- Build all libraries:
`./build.sh libs -rc release`

- Run all tests for libraries:
`./build.sh libs.tests -test -rc release`

- Build a specific library:
- Refer to the section [5.2. How To: Build and Test Specific Library](#52-how-to-build-and-test-specific-library) below.

- Test a specific library:
- Refer to the sections [5.1. How To: Identify Affected Libraries](#51-how-to-identify-affected-libraries) and [5.2. How To: Build and Test Specific Library](#52-how-to-build-and-test-specific-library) below.

- More info can be found in the dedicated workflow docs:
- [Build Libraries](/docs/workflow/building/libraries/README.md)
- [Testing Libraries](/docs/workflow/testing/libraries/testing.md)

### 5.1. How To: Identify Affected Libraries

For each changed file under `src/libraries/`, find the matching library and its test project(s).
Most libraries use:

- Source: `src/libraries/<LibraryName>/src/<LibraryName>.csproj`

- Tests (single):
- `src/libraries/<LibraryName>/tests/<LibraryName>.Tests.csproj`
- OR `src/libraries/<LibraryName>/tests/<LibraryName>.Tests/<LibraryName>.Tests.csproj`

- Tests (multiple types):
- `src/libraries/<LibraryName>/tests/FunctionalTests/<LibraryName>.Functional.Tests.csproj`
- `src/libraries/<LibraryName>/tests/UnitTests/<LibraryName>.Unit.Tests.csproj`
- Or similar.

---

### 5.2. How To: Build and Test Specific Library

If only one library is affected:

1. **Navigate to the library directory:**
`cd src/libraries/<LibraryName>`

2. **Build the library:**
`dotnet build`

3. **Build and run all test projects:**

- For each discovered `*.Tests.csproj` in the `tests` subdirectory:
`dotnet build /t:test ./tests/<TestProject>.csproj`

- *Adjust path as needed. If in doubt, search with `find tests -name '*.csproj'`.*

- `dotnet build /t:test` is generally preferred over `dotnet test`

---

## 6. WebAssembly (WASM) Libraries Workflow

From the repository root:

- Build:
`./build.sh libs -os browser`

- Run tests:
`./build.sh libs.tests -test -os browser`

- More info can be found in the dedicated workflow docs:
- [Build libraries for WebAssembly](/docs/workflow/building/libraries/webassembly-instructions.md)
- [Testing Libraries on WebAssembly](/docs/workflow/testing/libraries/testing-wasm.md)

---

## 7. Additional Notes

### 7.1. Troubleshooting

- **Shared Framework Missing**

- If the build fails with an error "The shared framework must be built before the local targeting pack can be consumed.", build both the runtime (clr or mono) and the libs.
E.g., from the repo root, run `./build.sh clr+libs -rc release` if working on Libraries on CoreCLR. To find the applicable command, refer to the section [1.2. Baseline Setup](#12-baseline-setup).

- **Testhost Is Missing**

- If a test run fails with errors indicating a missing testhost, such as:
- "Failed to launch testhost with error: System.IO.FileNotFoundException", or
- "artifacts/bin/testhost/... No such file or directory",
that means some of the prerequisites were not built.

- To resolve, build both the appropriate runtime (clr or mono) and the libs as a single command before running tests.
E.g., from the repo root, run `./build.sh clr+libs -rc release` before testing Libraries on CoreCLR. To find the applicable command, refer to the section [1.2. Baseline Setup](#12-baseline-setup).

- **Build Timeout**

- Do not fail or cancel initial `./build.sh` builds due to timeout unless at least 40 minutes have elapsed.
A full `clr+libs` build from scratch can take up to 32 minutes or more on some systems.

- Only wait for long-running `./build.sh` commands if they continue to produce output.
If there is no output for 5 minutes, assume the build is stuck and fail early.

- **Target Does Not Exist**

- Avoid specifying a target framework when building unless explicitly asked.
Build should identify and select the appropriate `$(NetCoreAppCurrent)` automatically.

---

### 7.2. Windows Command Equivalents

- Use `build.cmd` instead of `build.sh` on Windows.
- Set PATH: `set PATH=%CD%\.dotnet;%PATH%`
- All other commands are similar unless otherwise noted.

---

### 7.3. References

- [`.editorconfig`](/.editorconfig)
- [Building CoreCLR Guide](/docs/workflow/building/coreclr/README.md)
- [Building and Running CoreCLR Tests](/docs/workflow/testing/coreclr/testing.md)
- [Building Mono](/docs/workflow/building/mono/README.md)
- [Running test suites using Mono](/docs/workflow/testing/mono/testing.md)
- [Build Libraries](/docs/workflow/building/libraries/README.md)
- [Testing Libraries](/docs/workflow/testing/libraries/testing.md)
- [Build libraries for WebAssembly](/docs/workflow/building/libraries/webassembly-instructions.md)
- [Testing Libraries on WebAssembly](/docs/workflow/testing/libraries/testing-wasm.md)
Loading