Skip to content

Commit

Permalink
Add readmes for System.Runtime, System.Runtime.Numerics, System.Buffe…
Browse files Browse the repository at this point in the history
…rs, System.Runtime.Intrinsics (#77332)

* WIP readmes

* Add READMEs for Runtime, Buffers, Numerics, Intrinsics

* Adjustments

* Address "Deployment" feedback from PR

* Address feedback from PR

* Add notes and TODOs for test locations

* Address some PR feedback, add more TODO READMEs

* Finishing touches

* Apply suggestions from code review

Co-authored-by: Jeff Handley <jeffhandley@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Jeff Handley <jeffhandley@users.noreply.github.com>
  • Loading branch information
dakersnar and jeffhandley authored Nov 30, 2022
1 parent 1412ee7 commit e7ee837
Show file tree
Hide file tree
Showing 6 changed files with 88 additions and 0 deletions.
18 changes: 18 additions & 0 deletions src/libraries/System.Buffers/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# System.Buffers
Contains types used in creating and managing memory buffers, such as those represented by `Span<T>` and `Memory<T>`.

Documentation can be found here: https://learn.microsoft.com/en-us/dotnet/api/system.buffers.

## Contribution Bar
- [x] [We consider new features, new APIs and performance changes](../../libraries/README.md#primary-bar)

See the [Help Wanted](https://github.com/dotnet/runtime/issues?q=is%3Aissue+is%3Aopen+label%3Aarea-System.Buffers+label%3A%22help+wanted%22+) issues.

## Source
[../System.Private.CoreLib/src/System/Buffers](../System.Private.CoreLib/src/System/Buffers)

## Tests
[./tests](./tests)

## Deployment
[System.Buffers](https://www.nuget.org/packages/System.Buffers) is included in the shared framework. The package does not need to be installed into any project compatible with .NET Standard 2.1; it only needs to be installed when targeting .NET Standard 2.0.
2 changes: 2 additions & 0 deletions src/libraries/System.Numerics.Tensors/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# System.Numerics.Tensors
This library has not been shipped publicly and is not accepting contributions at this time.
2 changes: 2 additions & 0 deletions src/libraries/System.Numerics.Vectors/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# System.Numerics.Vectors
Contains select tests for [../System.Runtime.Numerics](../System.Runtime.Numerics)
23 changes: 23 additions & 0 deletions src/libraries/System.Runtime.Intrinsics/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# System.Runtime.Intrinsics
Contains types used to create and convey register states in various sizes and formats for use with instruction-set extensions. Also exposes select instruction-set extensions for various architectures (`x86`, `Arm`, `Wasm`).

Documentation can be found here: https://learn.microsoft.com/en-us/dotnet/api/system.runtime.intrinsics.

## Contribution Bar
- [x] [We consider new features, new APIs and performance changes](../../libraries/README.md#primary-bar)

See the [Help Wanted](https://github.com/dotnet/runtime/issues?q=is%3Aissue+is%3Aopen+label%3Aarea-System.Runtime.Intrinsics+label%3A%22help+wanted%22+) issues.

## Source
* `Vector64/128/256/512`: [../System.Private.CoreLib/src/System/Runtime/Intrinsics](../System.Private.CoreLib/src/System/Runtime/Intrinsics)
* `Arm` intrinsics: [../System.Private.CoreLib/src/System/Runtime/Intrinsics/Arm](../System.Private.CoreLib/src/System/Runtime/Intrinsics/Arm)
* `Wasm` intrinsics: [../System.Private.CoreLib/src/System/Runtime/Intrinsics/Wasm](../System.Private.CoreLib/src/System/Runtime/Intrinsics/Wasm)
* `x86` intrinsics: [../System.Private.CoreLib/src/System/Runtime/Intrinsics/x86](../System.Private.CoreLib/src/System/Runtime/Intrinsics/x86)

## Tests
* `Vector64/128/256/512`: [./tests/Vectors](./tests/Vectors)
* JIT integration: [../../tests/JIT/HardwareIntrinsics](../../tests/JIT/HardwareIntrinsics)
* Everything else: [./tests](./tests)

## Deployment
`System.Runtime.Intrinsics` is included in the shared framework.
27 changes: 27 additions & 0 deletions src/libraries/System.Runtime.Numerics/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# System.Runtime.Numerics
Contains additional numeric types that complement the numeric primitives (such as `Byte`, `Double`, and `Int32`) that are defined by .NET. This includes:

* The `BigInteger` structure, which is a non-primitive integral type that supports arbitrarily large integers.
* The `Complex` structure, which represents a complex number. A complex number is a number in the form *a* + *b*i, where *a* is the real part, and *b* is the imaginary part.
* The SIMD-enabled vector types, which include `Vector2`, `Vector3`, `Vector4`, `Matrix3x2`, `Matrix4x4`, `Plane`, and `Quaternion`.

Documentation can be found here: https://learn.microsoft.com/en-us/dotnet/api/system.numerics.

This area also includes all of the interfaces that make up Generic Math, which is discussed more here: https://learn.microsoft.com/en-us/dotnet/standard/generics/math.

## Contribution Bar
- [x] [We consider new features, new APIs and performance changes](../../libraries/README.md#primary-bar)

See the [Help Wanted](https://github.com/dotnet/runtime/issues?q=is%3Aissue+is%3Aopen+label%3Aarea-System.Numerics+label%3A%22help+wanted%22+) issues.


## Source
* `BigInteger` and `Complex`: [./src/System/Numerics](./src/System/Numerics).
* Everything else: [../System.Private.CoreLib/src/System/Numerics](../System.Private.CoreLib/src/System/Numerics)

## Tests
* `System.Numerics.Vectors`: [../System.Numerics.Vectors/tests](../System.Numerics.Vectors/tests)
* Everything else: [./tests](./tests)

## Deployment
[System.Runtime.Numerics](https://www.nuget.org/packages/System.Runtime.Numerics) is included in the shared framework. The package does not need to be installed into any project compatible with .NET Standard 2.0.
16 changes: 16 additions & 0 deletions src/libraries/System.Runtime/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# System.Runtime
Contains fundamental classes and base classes that define commonly-used value and reference data types, events and event handlers, interfaces, attributes, and processing exceptions.

Documentation can be found here: https://learn.microsoft.com/en-us/dotnet/api/system?view=net-7.0.

## Contribution Bar
- [x] [We consider new features, new APIs and performance changes](../../libraries/README.md#primary-bar)

See the [Help Wanted](https://github.com/dotnet/runtime/issues?q=is%3Aissue+is%3Aopen+label%3Aarea-System.Runtime+label%3A%22help+wanted%22+) issues.

## Source
* [../System.Private.CoreLib/src/System](../System.Private.CoreLib/src/System)
* Tests for this library live in [./tests](./tests) and [../System.Runtime.Extensions/tests](../System.Runtime.Extensions/tests)

## Deployment
[System.Runtime](https://www.nuget.org/packages/System.Runtime) is included in the shared framework. The package does not need to be installed into any project compatible with .NET Standard 2.0.

0 comments on commit e7ee837

Please sign in to comment.