Uh oh!
There was an error while loading. Please reload this page.
[Arm64] Implement Store Hardware Intrinsic - #33535
Conversation
Dotnet-GitSync-Bot
commented
Mar 12, 2020
Note regarding the This serves as a reminder for when your PR is modifying a ref *.cs file and adding/modifying public APIs, to please make sure the API implementation in the src *.cs file is documented with triple slash comments, so the PR reviewers can sign off that change. |
…d.cs AdvSimd.PlatformNotSupported.cs
… base type in hwintrinsic.cpp
echesakov
commented
Mar 17, 2020
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
…argument base type in hwintrinsic.cpp" Also update Compiler::getBaseTypeFromArgIfNeeded and annotate Store* methods in hwintrinsiclistxarch.h with HW_Flag_BaseTypeFromSecondArg
echesakov
commented
Mar 17, 2020
Any other feedback here? |
TamarChristinaArm
commented
Mar 18, 2020
So for the single element versions of e.g. will generate a For big-endian we do generate the |
echesakov
commented
Mar 18, 2020
Thank you for your feedback @TamarChristinaArm I am leaning towards keeping |
CarolEidt
left a comment
There was a problem hiding this comment.
LGTM - nice to see so much of it being table-driven. Most of my time reviewing was reading the manual!
TamarChristinaArm
commented
Mar 19, 2020
No there isn't a performance difference in instructions themselves, so that's fine for now. |
echesakov
commented
Mar 20, 2020
Interestingly, Visual C++ 2019 compiles the following functions __declspec(noinline)
void foo(int32x4_t v, int32_t* a)
{
returnvst1q_s32(a, v);
}
__declspec(noinline)
void bar(int32x2_t v, int32_t* a)
{
returnvst1_s32(a, v);
}into ?foo@@YAXT__n128@@PEAH@Z:0000000140001158: 4C007800 st1 {v0.4s},[x0] 000000014000115C: D65F03C0 ret?bar@@YAXT__n64@@PEAH@Z:0000000140001160: 0C007800 st1 {v0.2s},[x0]0000000140001164: D65F03C0 ret |
TamarChristinaArm
commented
Mar 20, 2020
hmm yeah I only checked |
Implements Store Arm64 hardware intrinsic
Fixes#24771
Also addresses Brian's feedback and partly Bruce's feedback received on #33461
I decided to have a separate PR for @BruceForstall suggestions concerning finding a proper names for
emitDispVectorElemListand other functions.