Skip to content

Commit a72f352

Browse files
Merge pull request #2442 from AlfieRichardsArm/main
Update fmv learning stream for GCC 16
2 parents 72ba7ae + 59b5bab commit a72f352

File tree

4 files changed

+2
-12
lines changed

4 files changed

+2
-12
lines changed

content/learning-paths/cross-platform/function-multiversioning/_index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ prerequisites:
1717
- Familiarity with indirect functions (ifuncs).
1818
- Basic knowledge of loop vectorization.
1919
- Familiarity with Arm assembly.
20-
- A LLVM 20 compiler with runtime library support or GCC 14.
20+
- A LLVM 20 compiler with runtime library support or GCC 16.
2121

2222
author: Alexandros Lamprineas
2323

content/learning-paths/cross-platform/function-multiversioning/examples2.md

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -141,10 +141,6 @@ To compile with GCC, use:
141141
g++ -march=armv8-a -O3 dotprod.c
142142
```
143143

144-
{{% notice Note %}}
145-
Note that `gcc-14` does not yet support `target_version` when using the c-frontend. You can use `g++-14` instead.
146-
{{% /notice %}}
147-
148144
To run the application:
149145

150146
```console

content/learning-paths/cross-platform/function-multiversioning/examples3.md

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -86,10 +86,6 @@ To compile with GCC, run:
8686
g++ -march=armv8-a -O3 skip-word.c
8787
```
8888

89-
{{% notice Note %}}
90-
Note that `gcc++-14` does not support "mops" as a function multiversioning feature, so to compile this example with gcc remove the `target_clones` from CopyWord.
91-
{{% /notice %}}
92-
9389
To run the application:
9490

9591
```console

content/learning-paths/cross-platform/function-multiversioning/implementation-details.md

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -64,11 +64,9 @@ f.resolver:
6464
The immediate value `#12582912` in this assembly is used to construct a bitmask for materializing the runtime detection of `rcpc3`.
6565
{{% /notice %}}
6666

67-
#### Differences between GCC 14 and LLVM 20 implementations
67+
#### Differences between GCC 16 and LLVM 20 implementations
6868

69-
- The attribute `target_version` in GCC is only supported for C++, not for C.
7069
- The set of features as indicated by the [mapping table](https://arm-software.github.io/acle/main/acle.html#mapping) differs in support between the two compilers.
71-
- LLVM supports mixing `target_version` with `target_clones` whereas GCC does not yet support this.
7270

7371
#### Resolver emission with LLVM
7472

0 commit comments

Comments
 (0)