See reference implementations here: https://github.com/dotnet/runtime/blob/main/src/libraries/System.Runtime.CompilerServices.Unsafe/src/System.Runtime.CompilerServices.Unsafe.il
and here: https://github.com/ltrzesniewski/InlineIL.Fody/blob/master/src/InlineIL.Examples/Unsafe.cs
Notice how AsPointer() uses conv.u and the other As() methods that return a ref are slightly different.
This may not make a difference in how the code runs but it may improve inlining. Might need to ask an expert for a review here.