Skip to content

Commit 8a1b320

Browse files
authored
Breaking change - APIs removed (#42809)
1 parent 3ce2e97 commit 8a1b320

File tree

3 files changed

+55
-3
lines changed

3 files changed

+55
-3
lines changed

docs/core/compatibility/9.0.md

+4-3
Original file line numberDiff line numberDiff line change
@@ -61,9 +61,10 @@ If you're migrating an app to .NET 9, the breaking changes listed here might aff
6161

6262
## JIT compiler
6363

64-
| Title | Type of change | Introduced version |
65-
|----------------------------------------------------------------------------------|-------------------|--------------------|
66-
| [Floating point to integer conversions are saturating](jit/9.0/fp-to-integer.md) | Behavioral change | Preview 4 |
64+
| Title | Type of change | Introduced version |
65+
|----------------------------------------------------------------------------------|---------------------|--------------------|
66+
| [Floating point to integer conversions are saturating](jit/9.0/fp-to-integer.md) | Behavioral change | Preview 4 |
67+
| [Some SVE APIs removed](jit/9.0/sve-apis.md) | Source incompatible | RC 2 |
6768

6869
## Networking
6970

Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
---
2+
title: "Breaking change: Some SVE APIs removed"
3+
description: Learn about the breaking change in .NET 9 where some SVE APIs that take 32-bit address have been removed.
4+
ms.date: 10/02/2024
5+
---
6+
# Some SVE APIs removed
7+
8+
Several APIs that take a 32-bit address as an input parameter have been removed because of lack of testing with such addresses. These APIs might be re-enabled in the future when relevant test coverage is added.
9+
10+
## Previous behavior
11+
12+
In previous versions, these APIs were available.
13+
14+
## New behavior
15+
16+
Starting in .NET 9, these APIs aren't available.
17+
18+
## Version introduced
19+
20+
.NET 9 RC 2
21+
22+
## Type of breaking change
23+
24+
This change can affect [source compatibility](../../categories.md#source-compatibility).
25+
26+
## Reason for change
27+
28+
The affected APIs were removed because of lack of testing of 32-bit addresses. The affected APIs might be re-enabled in the future when relevant test coverage is added.
29+
30+
## Recommended action
31+
32+
Stop using the removed APIs and instead use the overloads that take 64-bit addresses as input.
33+
34+
## Affected APIs
35+
36+
- <xref:System.Runtime.Intrinsics.Arm.Sve.GatherPrefetch16Bit(System.Numerics.Vector{System.Int16},System.Numerics.Vector{System.UInt32},System.Runtime.Intrinsics.Arm.SvePrefetchType)?displayProperty=fullName>
37+
- <xref:System.Runtime.Intrinsics.Arm.Sve.GatherPrefetch16Bit(System.Numerics.Vector{System.UInt16},System.Numerics.Vector{System.UInt32},System.Runtime.Intrinsics.Arm.SvePrefetchType)?displayProperty=fullName>
38+
- <xref:System.Runtime.Intrinsics.Arm.Sve.GatherPrefetch32Bit(System.Numerics.Vector{System.Int32},System.Numerics.Vector{System.UInt32},System.Runtime.Intrinsics.Arm.SvePrefetchType)?displayProperty=fullName>
39+
- <xref:System.Runtime.Intrinsics.Arm.Sve.GatherPrefetch32Bit(System.Numerics.Vector{System.UInt32},System.Numerics.Vector{System.UInt32},System.Runtime.Intrinsics.Arm.SvePrefetchType)?displayProperty=fullName>
40+
- <xref:System.Runtime.Intrinsics.Arm.Sve.GatherPrefetch64Bit(System.Numerics.Vector{System.UInt64},System.Numerics.Vector{System.UInt32},System.Runtime.Intrinsics.Arm.SvePrefetchType)?displayProperty=fullName>
41+
- <xref:System.Runtime.Intrinsics.Arm.Sve.GatherPrefetch64Bit(System.Numerics.Vector{System.UInt64},System.Numerics.Vector{System.UInt32},System.Runtime.Intrinsics.Arm.SvePrefetchType)?displayProperty=fullName>
42+
- <xref:System.Runtime.Intrinsics.Arm.Sve.GatherPrefetch8Bit(System.Numerics.Vector{System.Byte},System.Numerics.Vector{System.UInt32},System.Runtime.Intrinsics.Arm.SvePrefetchType)?displayProperty=fullName>
43+
- <xref:System.Runtime.Intrinsics.Arm.Sve.GatherPrefetch8Bit(System.Numerics.Vector{System.SByte},System.Numerics.Vector{System.UInt32},System.Runtime.Intrinsics.Arm.SvePrefetchType)?displayProperty=fullName>
44+
- <xref:System.Runtime.Intrinsics.Arm.Sve.GatherVectorInt16SignExtendFirstFaulting(System.Numerics.Vector{System.Int32},System.Numerics.Vector{System.UInt32})?displayProperty=fullName>
45+
- <xref:System.Runtime.Intrinsics.Arm.Sve.GatherVectorInt16SignExtendFirstFaulting(System.Numerics.Vector{System.UInt32},System.Numerics.Vector{System.UInt32})?displayProperty=fullName>
46+
- <xref:System.Runtime.Intrinsics.Arm.Sve.GatherVectorSByteSignExtendFirstFaulting(System.Numerics.Vector{System.Int32},System.Numerics.Vector{System.UInt32})?displayProperty=fullName>
47+
- <xref:System.Runtime.Intrinsics.Arm.Sve.GatherVectorSByteSignExtendFirstFaulting(System.Numerics.Vector{System.UInt32},System.Numerics.Vector{System.UInt32})?displayProperty=fullName>

docs/core/compatibility/toc.yml

+4
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,8 @@ items:
6060
items:
6161
- name: Floating point to integer conversions are saturating
6262
href: jit/9.0/fp-to-integer.md
63+
- name: Some SVE APIs removed
64+
href: jit/9.0/sve-apis.md
6365
- name: Networking
6466
items:
6567
- name: HttpClientFactory logging redacts header values by default
@@ -1636,6 +1638,8 @@ items:
16361638
items:
16371639
- name: Floating point to integer conversions are saturating
16381640
href: jit/9.0/fp-to-integer.md
1641+
- name: Some SVE APIs removed
1642+
href: jit/9.0/sve-apis.md
16391643
- name: .NET 6
16401644
items:
16411645
- name: Call argument coercion

0 commit comments

Comments
 (0)