Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

upstream main merge 2021 11 29 #6

Closed
wants to merge 324 commits into from
Closed
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
324 commits
Select commit Hold shift + click to select a range
b07b26d
Delete unused mono_unbox_int (#61384)
am11 Nov 10, 2021
1d352fc
fix lint issue (#61433)
pavelsavara Nov 10, 2021
4cd689a
Fix common workflow issues (#61027)
am11 Nov 10, 2021
f9e0256
Update timeout for sourcebuild (#61436)
hoyosjs Nov 10, 2021
4e3eed5
Baseline two failing tests to make outerloop green again (#61280)
trylek Nov 10, 2021
213020c
Fix inconsistency in p/invoke arguments introduced when switching som…
elinor-fung Nov 10, 2021
8fe767f
Create superpmi-asmdiffs pipeline (#61194)
BruceForstall Nov 10, 2021
d15f391
[main] Update dependencies from dotnet/arcade dotnet/icu dotnet/emsdk…
dotnet-maestro[bot] Nov 10, 2021
4f43e82
[DllImportGenerator] Initialize by-value out array to default (#61431)
elinor-fung Nov 10, 2021
9a883b5
Remove dead code (#61427)
lewing Nov 10, 2021
fd64e64
Explicitly mark tests with CLRTestKind=SharedLibrary (#61235)
trylek Nov 11, 2021
ff82b6d
Fix Array ctor integer widening and add Reflection tests (#61347)
AaronRobinsonMSFT Nov 11, 2021
b837efa
Fix CI trigger of superpmi-asmdiffs pipeline (#61444)
BruceForstall Nov 11, 2021
b82dc92
JIT: slightly more aggressive tail duplication (#61179)
AndyAyersMS Nov 11, 2021
2ed526e
Clean up tests under Interop/PInvoke/BestFitMapping (#61390)
elinor-fung Nov 11, 2021
6f5de0b
Include the "TargetingPack" folder in the mobile apps. (#61432)
jkoritzinsky Nov 11, 2021
a761b9f
Some more precise debug info improvements (#61419)
jakobbotsch Nov 11, 2021
8ad84e8
[Mono] Skip flaky android tests (#61460)
simonrozsival Nov 11, 2021
4b90e80
Fix bug where we reference the entry #0 in the pinned plug queue (#60…
PeterSolMS Nov 11, 2021
108fb82
[main] Update dependencies from 5 repositories (#61463)
dotnet-maestro[bot] Nov 11, 2021
2da44f3
Use DllImportGenerator in System.Diagnostics.PerformanceCounter (#61389)
elinor-fung Nov 11, 2021
0ad6cdc
Refine superpmi-replay trigger (#61469)
BruceForstall Nov 11, 2021
775873f
Enable sourcelink in source-build for '.version' file (#60944)
dagood Nov 11, 2021
8684c21
Add tests for metricseventsource HistogramLimitReached(#60752, #61199…
itn3000 Nov 11, 2021
2099752
Add PEM PKCS#8 and SPKI exports for AsymmetricAlgorithm
vcsjones Nov 11, 2021
c737141
Updating src/tests/Interop/PInvoke/Generics/GenericsNative.Vector* to…
tannergooding Nov 11, 2021
99dd33b
XARCH: Remove redudant tests for GT_LT/GT_GE relops. (#61152)
anthonycanino Nov 12, 2021
5fa6dd3
Implement Narrow and Widen using SIMDAsHWIntrinsic (#60094)
tannergooding Nov 12, 2021
35704e4
[wasm] Add AppStart task to the bench Sample (#61481)
radekdoulik Nov 12, 2021
87a44c3
System.IO files cleanup (#61413)
adamsitnik Nov 12, 2021
5781948
Remove explicit '.exe' extension from assembly names in ilproj tests …
trylek Nov 12, 2021
b396034
Lock non localizable strings on regex resources (#61489)
safern Nov 12, 2021
e7600e0
Remove all DLLIMPORTGENERATOR_ENABLED usage. (#61476)
AaronRobinsonMSFT Nov 12, 2021
8574ce9
[mono][jit] Optimize constrained calls to object.GetHashCode () where…
vargaz Nov 12, 2021
c580f49
[mono][jit] Optimize calls to Type:get_IsValueType () on gshared cons…
vargaz Nov 12, 2021
16b970a
Fix optIsLoopEntry to skip removed loops (#61527)
BruceForstall Nov 12, 2021
aae8f51
Update exception docs (#61278)
gewarren Nov 12, 2021
0818df1
[DllImportGenerator] Treat pointer fields in structs as blittable reg…
elinor-fung Nov 13, 2021
a4bb83a
[mini] Allow MONO_VERBOSE_METHOD='*:*' (#61520)
lambdageek Nov 13, 2021
26a6f55
Update how OSR and PGO interact (#61453)
AndyAyersMS Nov 13, 2021
aa06797
[mono] Add a 'inline_method' profiler event. (#61454)
vargaz Nov 13, 2021
edd6467
[mono] Disable partial generic sharing for gparams with non-enum cons…
vargaz Nov 14, 2021
a3b186b
Enable new analyzers in global configs (#60914)
stephentoub Nov 14, 2021
b68328a
Add [Fact] attributes on TypeGeneratorTests (#61534)
trylek Nov 14, 2021
5da8f31
Completely lock-free ClassLoader::LookupTypeKey (#61346)
VSadov Nov 14, 2021
d722224
Add [Fact] attributes to methodical JIT tests (#61536)
trylek Nov 14, 2021
d3a8a27
Add [Fact] attributes to JIT regression tests (#61540)
trylek Nov 14, 2021
233c65d
Enable 54910 tests (#61564)
am11 Nov 14, 2021
17d8fe5
Alternative fix of #60182 (#60298)
sakno Nov 15, 2021
0681dd6
[main] Update dependencies from dotnet/linker (#61094)
dotnet-maestro[bot] Nov 15, 2021
89d967b
Add JsonSerializerOptions.Default (#61434)
eiriktsarpalis Nov 15, 2021
ebf4451
Delete `__DoCrossgen2` (#61582)
MichalStrehovsky Nov 15, 2021
a66a9d8
[main] Update dependencies from 3 repositories (#61568)
dotnet-maestro[bot] Nov 15, 2021
bb3bdf8
Rewrite selection for fields (#61370)
SingleAccretion Nov 15, 2021
21f9b73
Disable poisoning for large structs (#61589)
jakobbotsch Nov 15, 2021
4cf86c2
SortedList<TKey, TValue> added GetKeyAtIndex, GetValueAtIndex, and Se…
rhaokiel Nov 15, 2021
3d7e89c
Remove the "anything + null => null" optimization (#61518)
SingleAccretion Nov 15, 2021
31dd708
Use Span.Fill in String(Char, Int32) constructor (#60269)
SteveDunn Nov 15, 2021
4438760
Use GeneratedDllImport for blittable p/invokes in System.Diagnostics.…
elinor-fung Nov 15, 2021
a888829
Update workflow docs to indicate ARM64 macOS works (#61575)
vcsjones Nov 15, 2021
9b83294
FileSystem.Unix: improve CopyFile. (#59695)
tmds Nov 15, 2021
a53e489
Exclude the managed code around libproc on iOS/tvOS (#61590)
MaximLipnin Nov 15, 2021
e85de53
Fix CharInClass reference in regex emitter (#61559)
stephentoub Nov 15, 2021
f9d05bd
Fix LastWriteTime and LastAccessTime of a symlink on Windows and Unix…
hamarb123 Nov 15, 2021
072e876
Improve System.Speech trimmability (#61566)
kant2002 Nov 15, 2021
f01cd8d
Delete dead code (#61533)
SingleAccretion Nov 15, 2021
f3228da
There shouldn't be a 'lib' prefix on Windows .lib files (#61618)
directhex Nov 15, 2021
fb6cf5c
Loop refactoring and commenting improvements (#61496)
BruceForstall Nov 15, 2021
9fceaa0
Give write access to backport action explicitly (#61626)
hoyosjs Nov 15, 2021
a93e0d2
Create runtime staging clone to manually kick off full test runs (#61…
steveisok Nov 15, 2021
fdafc7c
Adding support for X86Base.Pause() and ArmBase.Yield() (#61065)
tannergooding Nov 15, 2021
5d3e70a
[wasm] parallel asset loading (#61610)
pavelsavara Nov 15, 2021
2e97ac4
Delete impCheckForNullPointer (#61576)
SingleAccretion Nov 15, 2021
3b71d3b
Enable SymbolicRegexNode.IsNullableFor fast path to inline (#61605)
stephentoub Nov 15, 2021
d471a03
Use GeneratedDllImport in Microsoft.Win32.SystemEvents (#61609)
elinor-fung Nov 15, 2021
6401f33
Restrict GITHUB_TOKEN in markdownlint action (#61622)
vcsjones Nov 15, 2021
1c76754
Allow for backport to report progress to PR (#61637)
hoyosjs Nov 15, 2021
25da88c
Only run JIT formatting job if there are JIT changes (#61632)
BruceForstall Nov 16, 2021
e10532a
Obsolete thumbtacked AssemblyName properties (#59522)
i3arnon Nov 16, 2021
56acd2e
Add tests for CNG symmetric key algorithm mismatches
vcsjones Nov 16, 2021
4d82463
XArch: Trim the code block to match the actual code length (#61523)
kunalspathak Nov 16, 2021
a89debf
Provide locations for src-gen diagnostic output (#61430)
layomia Nov 16, 2021
0d11ae8
Fix SuperPMI Python script Azure usage (#61650)
BruceForstall Nov 16, 2021
c566e25
Give create codespaces prebuild action right permissions (#61651)
safern Nov 16, 2021
c397327
[arm64] JIT: Make 0.0 containable for fcmp (#61617)
EgorBo Nov 16, 2021
bd0c543
Disable fgMorphCastedBitwiseOp opt for floats (#61657)
EgorBo Nov 16, 2021
9a9a4f3
Fix poisoning for very large structs (#61521)
jakobbotsch Nov 16, 2021
2b1f420
[wasm] Rework fetch (#61639)
lewing Nov 16, 2021
7b74a7e
[wasm][debugger] Improvement of memory consumption while Evaluating E…
thaystg Nov 16, 2021
293e5ed
[wasm][debugger] View multidimensional array when debugging (#60983)
thaystg Nov 16, 2021
0749730
Update WASM README.md (#61681)
AaronRobinsonMSFT Nov 16, 2021
3806e15
Use GeneratedDllImport for blittable p/invokes in System.IO.Compressi…
elinor-fung Nov 16, 2021
9e11006
Localized file check-in by OneLocBuild Task: Build definition ID 679:…
dotnet-bot Nov 16, 2021
8076522
[DllImportGenerator] Stop ignoring QCalls when looking for methods to…
elinor-fung Nov 16, 2021
c66fa99
Add .runsettings file to be able to run and debug tests on vscode in …
safern Nov 16, 2021
d459c65
Add [Fact] attributes to all remaining ilproj tests (#61625)
trylek Nov 17, 2021
628a084
JIT: don't import IL for partial compilation blocks (#61572)
AndyAyersMS Nov 17, 2021
a1b391b
Update SPCL to use GeneratedDllImport where possible. (#61640)
AaronRobinsonMSFT Nov 17, 2021
da0e0f7
[wasm] renames and cleanup before modularization (#61596)
pavelsavara Nov 17, 2021
0666ebc
[mono][aot] Fix the inclusion of generic instances when doing profile…
vargaz Nov 17, 2021
10e107d
[wasm][debugger] Fix evaluation of a static class attribute; using cu…
ilonatommy Nov 17, 2021
d1b3816
Minor File.ReadAllBytes* improvements (#61519)
adamsitnik Nov 17, 2021
44d28bf
Extend RegexCharClass.Canonicalize range inversion optimization (#61562)
stephentoub Nov 17, 2021
83661ff
Remove some unnecessary slicing from generated Regex code (#61701)
stephentoub Nov 17, 2021
5331f21
Ignore missing data result from superpmi-replay run (#61699)
kunalspathak Nov 17, 2021
c03f4ec
refactoring (#60074)
kronic Nov 17, 2021
de883e3
Remove XUnit reference metadata from tests I switched over last week …
trylek Nov 17, 2021
a508fb5
[DllImportGenerator] Enable on projects without System.Memory and Sys…
elinor-fung Nov 17, 2021
25237fa
Factor out and improve the vectorization of RegexInterpreter.FindFirs…
stephentoub Nov 17, 2021
8cf0b19
A few follow up changes to LookupTypeKey change (#61718)
VSadov Nov 17, 2021
13024af
HostFactoryResolver - Increase default timeout to thirty seconds (#61…
maryamariyan Nov 17, 2021
899bf97
Merge System.Security.Cryptography.Algorithms to System.Security.Cryp…
bartonjs Nov 17, 2021
16300e0
Skip HardwareIntrinsics/x86base/Pause tests on Mono (#61743)
agocke Nov 17, 2021
f9e3e28
Update docker image (#61217)
DrewScoggins Nov 17, 2021
9962c10
src/tests tree test xunit-based source generated runner (#60846)
jkoritzinsky Nov 17, 2021
30550d6
Remove `DisableImplicitNamespaceImports_DotNet` (#61656)
MichalStrehovsky Nov 18, 2021
66b31ca
Upload dasm files as artifacts for "asmdiffs pipeline" (#61700)
kunalspathak Nov 18, 2021
0d25969
[wasm][debugger] Tie sdb agent lifetime to the ExecutionContext and s…
lewing Nov 18, 2021
7f874ee
Remove race condition from DllImportGenerator build (#61695)
jkoritzinsky Nov 18, 2021
581d4d2
Hide 'align' instruction behind jmp (#60787)
kunalspathak Nov 18, 2021
95e3144
Create runtime clone to manually kick off full test runs (#61641)
steveisok Nov 18, 2021
8275c37
Update DNNE version (#61738)
elinor-fung Nov 18, 2021
f6e2377
Convert Crypto P/Invokes to GeneratedDllImport. (#61742)
AaronRobinsonMSFT Nov 18, 2021
23c386a
Use GeneratedDllImport in System.Data.Odbc, System.IO.Ports, System.S…
elinor-fung Nov 18, 2021
d9afc1e
Reduce the output from tests. (#61593)
maraf Nov 18, 2021
37bf145
CreateDirectory: eliminate some syscalls. (#58799)
tmds Nov 18, 2021
5181d12
FileSystemEntry.Unix: ensure properties are available when file is de…
tmds Nov 18, 2021
80ca504
FileStatus.Unix/Process.Unix: align caching of user identity. (#60160)
tmds Nov 18, 2021
4db3531
Add support for dumping and using precise debug info (#61735)
jakobbotsch Nov 18, 2021
9e986b5
Add single char lazy loop support to simplified Regex code gen (#61698)
stephentoub Nov 18, 2021
513d38c
Update Area Owners for System.Data (#61748)
cheenamalhotra Nov 18, 2021
2b23bfa
Remove duplicate checks (#61766)
kant2002 Nov 18, 2021
62c29ff
[iOS] Follow up changes for 61590 (#61670)
MaximLipnin Nov 18, 2021
c0dabb5
[Group 4] Enable nullable annotations for `Microsoft.Extensions.Confi…
maxkoshevoi Nov 18, 2021
6ff57f1
Actually use TargetOS=AnyOS in the build-test-job. (#61745)
jkoritzinsky Nov 18, 2021
b11bda2
Add ThrowIfNull overload for pointers (#61633)
stephentoub Nov 18, 2021
ecdb7d2
Add tests verifying fast-path semantics for nullable structs (#61711)
layomia Nov 18, 2021
ca24ab0
Revert "Actually use TargetOS=AnyOS in the build-test-job. (#61745)" …
jkoritzinsky Nov 18, 2021
9d81462
Fix the only ilproj test that uses multiple command-line variants (#6…
trylek Nov 18, 2021
bd63cfc
Fix building DllImportGeneratorSample (#61806)
elinor-fung Nov 18, 2021
cc44d43
Convert System.Net.* over to GeneratedDllImport (#61765)
AaronRobinsonMSFT Nov 18, 2021
dc43e19
JIT: support OSR for synchronized methods (#61712)
AndyAyersMS Nov 18, 2021
8ae135a
Apply BuiltInComInterop feature switch to managed code (#54056)
marek-safar Nov 18, 2021
4269db9
[Group 4] Enable nullable annotations for `Microsoft.Extensions.Confi…
maxkoshevoi Nov 19, 2021
c159108
Add JitDisasmWithDebugInfo (#61780)
jakobbotsch Nov 19, 2021
4254fa3
[DllImportGenerator] Don't flag methods with known unsupported Unmana…
elinor-fung Nov 19, 2021
8cf8872
Improve superpmi-asmdiffs AzDO pipeline robustness (#61819)
BruceForstall Nov 19, 2021
779c498
Skip System.Diagnostics.TextWriterTraceListenerTests.XmlWriterTraceLi…
MaximLipnin Nov 19, 2021
dc0a7f9
Try to skip pause_* tests again (#61793)
agocke Nov 19, 2021
de1f070
Include arch specific headers in standalone JITs (#61800)
jakobbotsch Nov 19, 2021
b4d16b7
Disable several failing tests on iOSSimulator arm64 (#61826)
steveisok Nov 19, 2021
ba4eae0
Reduce allocations for CreateDirectory (#61777)
adamsitnik Nov 19, 2021
28dd6aa
Expand One/Notone/Setlazy support to Lazy (#61784)
stephentoub Nov 19, 2021
468a495
Switch IP mapping lists to use jitstd::list (#61822)
jakobbotsch Nov 19, 2021
4e4b27f
Integration of changes in shared files from runtimelab/NativeAOT (#61…
MichalStrehovsky Nov 19, 2021
649e14b
Enable DD117522 test (#61585)
MichalStrehovsky Nov 19, 2021
6d9edd4
Allow runtimeconfig StartupHooks and Environment StartupHooks to both…
tomdegoede Nov 19, 2021
4e2d3a6
Create empty zip files (#61828)
kunalspathak Nov 19, 2021
8b1a0c8
[Group 4] Enable nullable annotations for `Microsoft.Extensions.Confi…
maxkoshevoi Nov 19, 2021
4d6a662
Update area-owners to reflect Libraries Area Pod changes (#61642)
jeffhandley Nov 19, 2021
e975403
[wasm] Disable System.Text.RegularExpressions.Tests for AOT (#61803)
radical Nov 20, 2021
ce93c29
[wasm] Run AOT, and Wasm.Build.Tests on windows (#59479)
radical Nov 20, 2021
87b92fd
Make intrinsic nodes multi op (aka delete `GT_LIST`) (#59912)
SingleAccretion Nov 20, 2021
06a0c76
Update `GetPinnableReference()` usage in multi-step custom type marsh…
jkoritzinsky Nov 20, 2021
7099f4b
Use reflection or a compile-time only shim assembly to reference unex…
jkoritzinsky Nov 20, 2021
69b5d67
Do not devirtualize if optimizations disabled (#61868)
MichalStrehovsky Nov 20, 2021
752d396
Actually use TargetOS=AnyOS in the build-test-job (Try 2) (#61801)
jkoritzinsky Nov 22, 2021
77165a0
Fix a few special cases of projects with command line arguments (#61758)
trylek Nov 22, 2021
8daae66
Mark PLINQ as enabled in WASM and make browser compat changes (#58227)
kg Nov 22, 2021
f1edeed
Fix XXHash for stripe size (#61881)
Tornhoof Nov 22, 2021
c2b7638
[HTTP] Scavange fix (#61530)
ManickaP Nov 22, 2021
f45dfdc
Rename CORINFO_FLG_CONTAINS_STACK_PTR to CORINFO_FLG_BYREF_LIKE (#61907)
jkotas Nov 22, 2021
ec7b11d
Make System.DirectoryServices.AccountManagement use GeneratedDllImpor…
elinor-fung Nov 22, 2021
07143d4
Default BuildTargetFramework to NetCoreAppCurrent so that the ref is …
safern Nov 22, 2021
ce688fd
JIT: refactor to allow OSR to switch to optimized (#61851)
AndyAyersMS Nov 22, 2021
02c3dfb
Skip eventpipe_readevents for arm32 (#58545)
gbalykov Nov 22, 2021
0e9ce96
Revert "[Mono] Skip flaky android tests (#61460)" (#61771)
simonrozsival Nov 22, 2021
c334e55
Make S.S.C.X509Certificates compliant with interop guidelines - part 3
pedrobsaila Nov 22, 2021
a6e0f25
Do not explicitly pass type to `VNForMapStore` (#61882)
SingleAccretion Nov 22, 2021
3745e38
Vectorize SpanHelpers<T>.IndexOf (#60974)
alexcovington Nov 22, 2021
259b561
Delete Regex timeout tests with RegexOptions.Debug (#61888)
stephentoub Nov 22, 2021
106afdc
Use correct VN relation kind for redundant relop opts (#61912)
jakobbotsch Nov 22, 2021
ee7f142
Don't special case "Experimental" projects (#60641)
ericstj Nov 22, 2021
4892e4f
Add a JsonWriterOptions.MaxDepth property (#61608)
eiriktsarpalis Nov 22, 2021
38ccd84
Extract ECAlgorithm from ECDsa and ECDiffieHellman
vcsjones Nov 22, 2021
7a2fac8
Update list of analyzer diagnostics with JSON entries (#61809)
layomia Nov 22, 2021
1997bee
Adding support for the X86Base.Pause intrinsic on Mono (#61707)
tannergooding Nov 22, 2021
48fe637
Fix regression in IsPrefix / IsSuffix benchmarks (#61935)
elinor-fung Nov 22, 2021
fc48852
Add backtracking loops, backreferences, and if-then-else constructs t…
stephentoub Nov 23, 2021
141dae4
Localized file check-in by OneLocBuild Task: Build definition ID 679:…
dotnet-bot Nov 23, 2021
c186b28
Disable changing align nop padding to breakpoints for arm64 under jit…
AndyAyersMS Nov 23, 2021
8193214
Use GeneratedDllImport in Microsoft.Extensions.Hosting.WindowsService…
elinor-fung Nov 23, 2021
092c2ab
Add Clear() to MemoryCache (#57631)
adamsitnik Nov 23, 2021
00e9312
Added AsReadOnly extension methods for IDictionary<T, U> and IList<T>…
Mrxx99 Nov 23, 2021
721e9fc
Update Proxy-Support check to be case insensitive (#61446)
ChrisFWood Nov 23, 2021
c03a89f
[wasm] workaround test results corruption (#61841)
pavelsavara Nov 23, 2021
56b5df4
[System.Text.Json] Move inline throw statements to `ThrowHelper` (#61…
eiriktsarpalis Nov 23, 2021
a0fdc25
FileSystem.Unix: Directory.Delete: remove per item syscall. (#59520)
tmds Nov 23, 2021
25ebdcf
Environment variable should override property for gcServer. (#61950)
AaronRobinsonMSFT Nov 23, 2021
0f40573
Disable several GenericMath tests on iOS/tvOS (#61922)
steveisok Nov 23, 2021
b35c0ad
[mono] Don't use recursion in mono_ssa_rename_vars (#61677)
radekdoulik Nov 23, 2021
8b67772
removed argument requestId from loopbackserver.cs (#58678)
AnudeepGunukula Nov 23, 2021
f24b363
Stabilize host's UpgradeCode and ProviderKey (#61810)
NikolaMilosavljevic Nov 23, 2021
c158cb2
Check for time-sensitive work when worker thread starvation is ongoin…
kouvel Nov 23, 2021
d2fb0f3
Delete dead code from InferStructOpSizeAlign (#61880)
SingleAccretion Nov 24, 2021
b259f68
[mono] Remove support for Classic Xamarin for the Selector.GetHandle …
rolfbjarne Nov 24, 2021
f9dfd41
[wasm] Misc CI/test run improvements (#61937)
radical Nov 24, 2021
ef5ddf5
prevent concurrent access to IO buffers on macOS (#61723)
wfurt Nov 24, 2021
2c55431
Make more extensive use of lvaGetDesc() (#61494)
BruceForstall Nov 24, 2021
bf1797a
Clean up test intermediates when clean test rebuild is requested (#62…
trylek Nov 24, 2021
8997e86
Use separate partials for iOS&tvOS instead of UnknowUnix in System.Di…
MaximLipnin Nov 24, 2021
773766f
Fix Android crypto asserts (#61827)
vcsjones Nov 24, 2021
90773ac
Add RequiresDynamicCodeAttribute to runtime (#61956)
tlakollo Nov 24, 2021
a46358c
Add some tests that validate debug info through ETW events (#61962)
jakobbotsch Nov 24, 2021
35815de
[wasm] [debugger] Eval fixes for static class eval (#61660)
ilonatommy Nov 24, 2021
89e3040
Nullable annotation for System.Windows.Extensions (#57896)
huoyaoyuan Nov 24, 2021
292632f
Added null checks to prevent null pointer exception (#62013)
Haarmees Nov 24, 2021
4da6b9a
Unify ARRAY_SIZE/STRING_LENGTH-like macros (#61537)
am11 Nov 24, 2021
5a3070c
Fix calling NLS with Cultures has alternative sort names (#61992)
tarekgh Nov 24, 2021
7cfcbb0
The DestroyStructure API passes null to the IL marshaller for (#61985)
AaronRobinsonMSFT Nov 24, 2021
97f7e68
Use GeneratedDllImport in System.Diagnostics.EventLog (#61990)
elinor-fung Nov 24, 2021
edf67aa
Splitting the hardware intrinsic tests into more test groupings (#61973)
tannergooding Nov 24, 2021
40dc863
Remove SupportedOSPlatformAttribute("windows") from LdapSessionOption…
macsux Nov 24, 2021
3bfce3b
Handle empty string parameter value in MetadataLoadContext (#61457)
svick Nov 24, 2021
2307418
Use GeneratedDllImport for blittable p/invokes in System.Console, Sys…
elinor-fung Nov 24, 2021
7414af2
Reorganize libs.native (#61958)
am11 Nov 24, 2021
337cb2f
Update path of disabled test that was moved (#62051)
jakobbotsch Nov 25, 2021
c9ea14c
[wasm] debug with modularized runtime(s) (#61848)
pavelsavara Nov 25, 2021
edec2f0
[mono][interp] Fix handing of native types (#61612)
BrzVlad Nov 25, 2021
ab18c01
Add a github action to sync shared source from aspnetcore (#61999)
Tratcher Nov 25, 2021
db6f5ce
Integration of changes in shared files from runtimelab/NativeAOT (#62…
MichalStrehovsky Nov 25, 2021
a2af8ae
Re-enable Windows test that verifies DriveInfo.VolumeLabel setter fai…
carlossanlop Nov 25, 2021
b256b43
Add endHeader flag to QPACK decode (#62059)
github-actions[bot] Nov 26, 2021
49c5643
[wasm][debugger] Stepping into hidden function. (#61312)
ilonatommy Nov 26, 2021
27a39e0
Exclude a newly added test on Mono (#62056)
jakobbotsch Nov 26, 2021
90b8c70
Suppress trim warning caused by recent attribute removal changes (#62…
vitek-karas Nov 26, 2021
c00b068
Fix setting pipe as nonblocking (#61126)
vtikoo Nov 26, 2021
15649df
Avoid switching GC mode in COM's HasValidTarget (#62066)
am11 Nov 26, 2021
574b2d4
Refactor writing QPACK status (#62069)
github-actions[bot] Nov 26, 2021
9ede9a2
fix for excessive gen0 in high memory load situation (#61884)
Maoni0 Nov 26, 2021
6f44dbe
[main] Update dependencies from 8 repositories (#61668)
dotnet-maestro[bot] Nov 26, 2021
03e0187
Fix miscellaneous typos (#62062)
am11 Nov 27, 2021
12a8819
Flip IL offset check (#62049)
jakobbotsch Nov 27, 2021
a4cab7d
[mono]mono_runtime_delegate_invoke change to gc unsafe state (#62003)
srxqds Nov 29, 2021
d9a5789
Update hash of the new CSE when resizing (#61984)
SingleAccretion Nov 29, 2021
6069861
Fix `optComputeLoopSideEffects` to account for HWI stores (#61911)
SingleAccretion Nov 29, 2021
efc8adb
CI matrix change: add Windows.Server.Core.20H2 - Second attempt (#60054)
Nov 29, 2021
95a9c72
[wasm] Use cross origin policy headers (#62016)
maraf Nov 29, 2021
39b4f26
[main] Update dependencies from 3 repositories (#62098)
dotnet-maestro[bot] Nov 29, 2021
f6ae7d1
Merge with main from upstream
Nov 29, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Implement Narrow and Widen using SIMDAsHWIntrinsic (dotnet#60094)
* Moving Narrow to implemented using SIMDAsHWIntrinsic

* Moving Widen to implemented using SIMDAsHWIntrinsic

* Fix some handling of Narrow/Widen hwintrinsics

* Ensure that Vector.Widen is still treated as an intrinsic

* Fixing NI_VectorT128_WidenUpper on ARM64 to actually call gtNewSimdWidenUpper
  • Loading branch information
tannergooding committed Nov 12, 2021
commit 5fa6dd364982be4ffd83358adbf130d88049c72a
2 changes: 0 additions & 2 deletions src/coreclr/jit/codegen.h
Original file line number Diff line number Diff line change
Expand Up @@ -968,9 +968,7 @@ XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
regNumber targetReg);
void genSIMDIntrinsic32BitConvert(GenTreeSIMD* simdNode);
void genSIMDIntrinsic64BitConvert(GenTreeSIMD* simdNode);
void genSIMDIntrinsicNarrow(GenTreeSIMD* simdNode);
void genSIMDExtractUpperHalf(GenTreeSIMD* simdNode, regNumber srcReg, regNumber tgtReg);
void genSIMDIntrinsicWiden(GenTreeSIMD* simdNode);
void genSIMDIntrinsic(GenTreeSIMD* simdNode);

// TYP_SIMD12 (i.e Vector3 of size 12 bytes) is not a hardware supported size and requires
Expand Down
138 changes: 0 additions & 138 deletions src/coreclr/jit/codegenarm64.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -3898,15 +3898,6 @@ void CodeGen::genSIMDIntrinsic(GenTreeSIMD* simdNode)
genSIMDIntrinsicUnOp(simdNode);
break;

case SIMDIntrinsicWidenLo:
case SIMDIntrinsicWidenHi:
genSIMDIntrinsicWiden(simdNode);
break;

case SIMDIntrinsicNarrow:
genSIMDIntrinsicNarrow(simdNode);
break;

case SIMDIntrinsicSub:
case SIMDIntrinsicBitwiseAnd:
case SIMDIntrinsicBitwiseOr:
Expand Down Expand Up @@ -3995,20 +3986,9 @@ instruction CodeGen::getOpForSIMDIntrinsic(SIMDIntrinsicID intrinsicId, var_type
case SIMDIntrinsicEqual:
result = INS_fcmeq;
break;
case SIMDIntrinsicNarrow:
// Use INS_fcvtn lower bytes of result followed by INS_fcvtn2 for upper bytes
// Return lower bytes instruction here
result = INS_fcvtn;
break;
case SIMDIntrinsicSub:
result = INS_fsub;
break;
case SIMDIntrinsicWidenLo:
result = INS_fcvtl;
break;
case SIMDIntrinsicWidenHi:
result = INS_fcvtl2;
break;
default:
assert(!"Unsupported SIMD intrinsic");
unreached();
Expand Down Expand Up @@ -4036,20 +4016,9 @@ instruction CodeGen::getOpForSIMDIntrinsic(SIMDIntrinsicID intrinsicId, var_type
case SIMDIntrinsicEqual:
result = INS_cmeq;
break;
case SIMDIntrinsicNarrow:
// Use INS_xtn lower bytes of result followed by INS_xtn2 for upper bytes
// Return lower bytes instruction here
result = INS_xtn;
break;
case SIMDIntrinsicSub:
result = INS_sub;
break;
case SIMDIntrinsicWidenLo:
result = isUnsigned ? INS_uxtl : INS_sxtl;
break;
case SIMDIntrinsicWidenHi:
result = isUnsigned ? INS_uxtl2 : INS_sxtl2;
break;
default:
assert(!"Unsupported SIMD intrinsic");
unreached();
Expand Down Expand Up @@ -4228,113 +4197,6 @@ void CodeGen::genSIMDIntrinsicUnOp(GenTreeSIMD* simdNode)
genProduceReg(simdNode);
}

//--------------------------------------------------------------------------------
// genSIMDIntrinsicWiden: Generate code for SIMD Intrinsic Widen operations
//
// Arguments:
// simdNode - The GT_SIMD node
//
// Notes:
// The Widen intrinsics are broken into separate intrinsics for the two results.
//
void CodeGen::genSIMDIntrinsicWiden(GenTreeSIMD* simdNode)
{
assert((simdNode->gtSIMDIntrinsicID == SIMDIntrinsicWidenLo) ||
(simdNode->gtSIMDIntrinsicID == SIMDIntrinsicWidenHi));

GenTree* op1 = simdNode->gtGetOp1();
var_types baseType = simdNode->GetSimdBaseType();
regNumber targetReg = simdNode->GetRegNum();
assert(targetReg != REG_NA);
var_types simdType = simdNode->TypeGet();

genConsumeOperands(simdNode);
regNumber op1Reg = op1->GetRegNum();
regNumber srcReg = op1Reg;
emitAttr emitSize = emitActualTypeSize(simdType);

instruction ins = getOpForSIMDIntrinsic(simdNode->gtSIMDIntrinsicID, baseType);

emitAttr attr = (simdNode->gtSIMDIntrinsicID == SIMDIntrinsicWidenHi) ? EA_16BYTE : EA_8BYTE;
insOpts opt = genGetSimdInsOpt(attr, baseType);

GetEmitter()->emitIns_R_R(ins, attr, targetReg, op1Reg, opt);

genProduceReg(simdNode);
}

//--------------------------------------------------------------------------------
// genSIMDIntrinsicNarrow: Generate code for SIMD Intrinsic Narrow operations
//
// Arguments:
// simdNode - The GT_SIMD node
//
// Notes:
// This intrinsic takes two arguments. The first operand is narrowed to produce the
// lower elements of the results, and the second operand produces the high elements.
//
void CodeGen::genSIMDIntrinsicNarrow(GenTreeSIMD* simdNode)
{
assert(simdNode->gtSIMDIntrinsicID == SIMDIntrinsicNarrow);

GenTree* op1 = simdNode->gtGetOp1();
GenTree* op2 = simdNode->gtGetOp2();
var_types baseType = simdNode->GetSimdBaseType();
regNumber targetReg = simdNode->GetRegNum();
assert(targetReg != REG_NA);
var_types simdType = simdNode->TypeGet();
emitAttr emitSize = emitTypeSize(simdType);

genConsumeOperands(simdNode);
regNumber op1Reg = op1->GetRegNum();
regNumber op2Reg = op2->GetRegNum();

assert(genIsValidFloatReg(op1Reg));
assert(genIsValidFloatReg(op2Reg));
assert(genIsValidFloatReg(targetReg));
assert(op2Reg != targetReg);
assert(simdNode->GetSimdSize() == 16);

instruction ins = getOpForSIMDIntrinsic(simdNode->gtSIMDIntrinsicID, baseType);
assert((ins == INS_fcvtn) || (ins == INS_xtn));

instruction ins2 = (ins == INS_fcvtn) ? INS_fcvtn2 : INS_xtn2;

insOpts opt = INS_OPTS_NONE;
insOpts opt2 = INS_OPTS_NONE;

// This is not the same as genGetSimdInsOpt()
// Basetype is the soure operand type
// However encoding is based on the destination operand type which is 1/2 the basetype.
switch (baseType)
{
case TYP_ULONG:
case TYP_LONG:
case TYP_DOUBLE:
opt = INS_OPTS_2S;
opt2 = INS_OPTS_4S;
break;
case TYP_UINT:
case TYP_INT:
opt = INS_OPTS_4H;
opt2 = INS_OPTS_8H;
break;
case TYP_USHORT:
case TYP_SHORT:
opt = INS_OPTS_8B;
opt2 = INS_OPTS_16B;
break;
default:
assert(!"Unsupported narrowing element type");
unreached();
}

GetEmitter()->emitIns_R_R(ins, EA_8BYTE, targetReg, op1Reg, opt);
GetEmitter()->emitIns_R_R(ins2, EA_16BYTE, targetReg, op2Reg, opt2);

genProduceReg(simdNode);
}

//--------------------------------------------------------------------------------
// genSIMDIntrinsicBinOp: Generate code for SIMD Intrinsic binary operations
// add, sub, mul, bit-wise And, AndNot and Or.
Expand Down
13 changes: 13 additions & 0 deletions src/coreclr/jit/compiler.h
Original file line number Diff line number Diff line change
Expand Up @@ -3283,6 +3283,13 @@ class Compiler
unsigned simdSize,
bool isSimdAsHWIntrinsic);

GenTree* gtNewSimdNarrowNode(var_types type,
GenTree* op1,
GenTree* op2,
CorInfoType simdBaseJitType,
unsigned simdSize,
bool isSimdAsHWIntrinsic);

GenTree* gtNewSimdSqrtNode(
var_types type, GenTree* op1, CorInfoType simdBaseJitType, unsigned simdSize, bool isSimdAsHWIntrinsic);

Expand All @@ -3293,6 +3300,12 @@ class Compiler
unsigned simdSize,
bool isSimdAsHWIntrinsic);

GenTree* gtNewSimdWidenLowerNode(
var_types type, GenTree* op1, CorInfoType simdBaseJitType, unsigned simdSize, bool isSimdAsHWIntrinsic);

GenTree* gtNewSimdWidenUpperNode(
var_types type, GenTree* op1, CorInfoType simdBaseJitType, unsigned simdSize, bool isSimdAsHWIntrinsic);

GenTree* gtNewSimdWithElementNode(var_types type,
GenTree* op1,
GenTree* op2,
Expand Down
Loading