Uh oh!
There was an error while loading. Please reload this page.
Intrinsicify JsonReaderHelper.IndexOfOrLessThan - #40877
Conversation
efb91b9 to
6cfe3c7CompareUh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
For the following methods I see this pattern quite often. Maybe it's time to make these a public api?
Yeah, they're still easy to type helpers, but repeated often enough. Furthermore there could be asserts that the reads are within bounds, etc.
Most similar issue I've found is #36182
fecb348 to
1aca492Compare1aca492 to
3a58170Compare3a58170 to
f4f85a3CompareUh oh!
There was an error while loading. Please reload this page.
benaadams
commented
Aug 17, 2020
|
benaadams
commented
Aug 17, 2020
Libraries Test Run release coreclr OSX x64 Debug failed: AcceptV4BoundToAnyV6_Success #40913 |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Note: Avx2 doesn't have less than so arguments are switched for greater than
There was a problem hiding this comment.
Note: Also CompareGreaterThan is only sbyte (and CompareLessThan on Sse2), so subtract 0x80 before casting and doing the compare to keep the order correct
7ffc080 to
3a10197Compare2108029 to
19facfeCompareCan't workout the linker test issues :( |
layomia
commented
Aug 19, 2020
Taking a look now. |
benaadams
commented
Aug 19, 2020
@layomia when I add the browser type On Windows, Linux and OSX. However doesn't seem to provide much helpful detail in the binlog as to why its becoming "unsupported" :( |
benaadams
commented
Aug 19, 2020
So the |
benaadams
commented
Aug 19, 2020
Current working idea looking at other build is need to override |
There was a problem hiding this comment.
I tried out some changes wrt wasm/non-wasm builds, pls see if this helps - layomia@137ac47. We don't run the linker tests specifically on wasm builds afaict so I don't think any linker test changes are needed in this PR.
| <PropertyGroup> | ||
| <AllowUnsafeBlocks>true</AllowUnsafeBlocks> | ||
| <TargetFrameworks>$(NetCoreAppCurrent);netstandard2.0;netcoreapp3.0;net461</TargetFrameworks> | ||
| <TargetFrameworks>$(NetCoreAppCurrent)-Windows_NT;$(NetCoreAppCurrent)-Unix;$(NetCoreAppCurrent)-Browser;netstandard2.0;netcoreapp3.0;net461</TargetFrameworks> |
There was a problem hiding this comment.
I think it will only output an AnyCPU assembly if either the TargetFrameworks doesn't have browser or the Architectures aren't included to have wasm which will mean '$(TargetArchitecture)' == 'wasm' will never be true?
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
benaadams
commented
Aug 19, 2020
So its looks like NuGet chokes on However the linker tests look to shell out to a basic build which uses the standard restore causing them to fail for all frameworks (where this changed |
benaadams
commented
Aug 20, 2020
🥳 Going to close this PR and open a fresh one as its a bit of a tire fire |
benaadams
commented
Aug 20, 2020
Opened #41097 |
Update to use newer Sse2, Axv2 intrinsics; and add ARM as per the method it mimics (with changes) from SpanHelpers
Also add size optimization/simplification for wasm
x64 performance changes (up to +20% improvement)
/cc @kunalspathak@jeffhandley for the intrinsics