Dev on .NET Libraries team working on Hardware Intrinsics and Numerics. They/Them.
-
Microsoft
- Redmond, WA
- https://blog.tagoo.dev/
- @tannergooding
Highlights
- 7 discussions answered
Block or Report
Block or report tannergooding
Report abuse
Contact GitHub support about this user’s behavior. Learn more about reporting abuse.
Report abusePinned
-
dotnet/runtime Public
.NET is a cross-platform runtime for cloud, mobile, desktop, and IoT apps.
-
-
-
-
1,686 contributions in the last year
Activity overview
Contributed to
dotnet/runtime,
terrafx/terrafx.interop.windows,
dotnet/ClangSharp
and 57 other
repositories
Contribution activity
May 2022
Created 41 commits in 4 repositories
Created a pull request in dotnet/runtime that received 76 comments
Adding Int128 and UInt128 with a base software implementation
This does not cover acceleration in the JIT, that will be a separate work item and will be handled in a follow up PR.
+11,141
−239
•
76
comments
Opened 12 other pull requests in 3 repositories
dotnet/runtime
3
open
6
merged
- Refactoring which numeric interface exposes which methods to match latest API review decisions
- Updating Vector*.IsHardwareAccelerated to be recursive
- Iterative generic math changes to match API review
- Ensure non-numeric types don't implement the numeric only generic math interfaces
-
Expose the
RuntimeFeature.NumericIntPtr
member for C# 11 - Updating BigInteger to implement IBinaryInteger and ISignedNumber
- Adding support for vector constants via GenTreeVecCon
-
Ensure that Arm64 always sets the VectorTableLookup type for shuffle to be
byte
orsbyte
- Improving the 64-bit number formatting to better match the 32-bit algorithm
dotnet/designs
2
merged
dotnet/arcade
1
merged
Reviewed 24 pull requests in 5 repositories
dotnet/runtime
19 pull requests
- Updating Vector*.IsHardwareAccelerated to be recursive
- Implement vpblendvb optimization in the JIT
- [API Implementation]: Extend System.Runtime.Intrinsics.X86 to support nint and nuint
- JIT: Move constant vectors to op2 from op1
- Correct MSVC version in requirements documentation
- Iterative generic math changes to match API review
- Add NativeMemory.ZeroMemory API
- Draft for Min/Max intrinsics xarch
- Adding Int128 and UInt128 with a base software implementation
- Improve Interop.Sys.ReadLink loop with stackalloc
- Use intrinsic for genLog2()
- Treat System.Runtime.CompilerServices.Unsafe as intrinsic
- Adding support for vector constants via GenTreeVecCon
- Updating BigInteger to implement IBinaryInteger and ISignedNumber
- Adjust the usage of ReverseEndianness in BinaryPrimitives
- Add X86Serialize hardware intrinsic.
- Add Interlocked.{Compare}Exchange for UIntPtr
- Optimize bswap+mov to movbe on xarch
- Improving the 64-bit number formatting to better match the 32-bit algorithm
dotnet/docs
2 pull requests
dotnet/performance
1 pull request
dotnet/csharplang
1 pull request
dotnet/designs
1 pull request
Created an issue in dotnet/runtime that received 5 comments
Unsafe.As being intrinsic has exposed a few JIT related issues
Issue
#68739 switched several APIs to be intrinsic
to the JIT and have the respective IR imported directly by the JIT rather than go through inlining.
5
comments
Opened 6 other issues in 1 repository
dotnet/runtime
6
open
- Enable Int128/UInt128 interop tests for Mono
- Mono should correctly support the packing requirements for ABI primitive types
- Finish treating the Unsafe APIs as JIT intrinsics
- superpmi-diffs and superpmi-replay are running when jiteeversionguid.h changes
-
Expose
IsSupported
properties on the vector types - Extend System.Runtime.InteropServices.CLong and CULong to match nfloat