Add readmes for System.Runtime, System.Runtime.Numerics, System.Buffers, System.Runti...
authorDrew Kersnar <18474647+dakersnar@users.noreply.github.com>
Wed, 30 Nov 2022 18:36:39 +0000 (12:36 -0600)
committerGitHub <noreply@github.com>
Wed, 30 Nov 2022 18:36:39 +0000 (12:36 -0600)
* 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>
src/libraries/System.Buffers/README.md [new file with mode: 0644]
src/libraries/System.Numerics.Tensors/README.md [new file with mode: 0644]
src/libraries/System.Numerics.Vectors/README.md [new file with mode: 0644]
src/libraries/System.Runtime.Intrinsics/README.md [new file with mode: 0644]
src/libraries/System.Runtime.Numerics/README.md [new file with mode: 0644]
src/libraries/System.Runtime/README.md [new file with mode: 0644]

diff --git a/src/libraries/System.Buffers/README.md b/src/libraries/System.Buffers/README.md
new file mode 100644 (file)
index 0000000..eefd8ff
--- /dev/null
@@ -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.
\ No newline at end of file
diff --git a/src/libraries/System.Numerics.Tensors/README.md b/src/libraries/System.Numerics.Tensors/README.md
new file mode 100644 (file)
index 0000000..026563d
--- /dev/null
@@ -0,0 +1,2 @@
+# System.Numerics.Tensors
+This library has not been shipped publicly and is not accepting contributions at this time.
\ No newline at end of file
diff --git a/src/libraries/System.Numerics.Vectors/README.md b/src/libraries/System.Numerics.Vectors/README.md
new file mode 100644 (file)
index 0000000..5582b0f
--- /dev/null
@@ -0,0 +1,2 @@
+# System.Numerics.Vectors
+Contains select tests for [../System.Runtime.Numerics](../System.Runtime.Numerics)
\ No newline at end of file
diff --git a/src/libraries/System.Runtime.Intrinsics/README.md b/src/libraries/System.Runtime.Intrinsics/README.md
new file mode 100644 (file)
index 0000000..467c9fe
--- /dev/null
@@ -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.
\ No newline at end of file
diff --git a/src/libraries/System.Runtime.Numerics/README.md b/src/libraries/System.Runtime.Numerics/README.md
new file mode 100644 (file)
index 0000000..2aa9e24
--- /dev/null
@@ -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.
\ No newline at end of file
diff --git a/src/libraries/System.Runtime/README.md b/src/libraries/System.Runtime/README.md
new file mode 100644 (file)
index 0000000..9bde5e2
--- /dev/null
@@ -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.