Skip to content

Commit 94d4040

Browse files
committed
The modern styling is apparently to use Title Case for the chip/company, "Arm".
1 parent bb1f5c3 commit 94d4040

File tree

1 file changed

+22
-22
lines changed

1 file changed

+22
-22
lines changed

src/doc/rustc/src/platform-support/arm-none-eabi.md

+22-22
Original file line numberDiff line numberDiff line change
@@ -3,63 +3,63 @@
33
## Common Target Details
44

55
This documentation covers details that apply to a range of bare-metal targets
6-
for 32-bit ARM CPUs. The `arm-none-eabi` flavor of the GNU compiler toolchain is
6+
for 32-bit Arm CPUs. The `arm-none-eabi` flavor of the GNU compiler toolchain is
77
often used to assist compilation to these targets.
88

99
Details that apply only to only a specific target in this group are covered in
1010
their own document.
1111

1212
### Tier 2 Target List
1313

14-
- ARM A-Profile Architectures
14+
- Arm A-Profile Architectures
1515
- `armv7a-none-eabi`
16-
- ARM R-Profile Architectures
16+
- Arm R-Profile Architectures
1717
- [`armv7r-none-eabi` and `armv7r-none-eabihf`](armv7r-none-eabi.md)
1818
- [`armebv7r-none-eabi` and `armebv7r-none-eabihf`](armv7r-none-eabi.md)
19-
- ARM M-Profile Architectures
19+
- Arm M-Profile Architectures
2020
- [`thumbv6m-none-eabi`](thumbv6m-none-eabi.md)
2121
- [`thumbv7m-none-eabi`](thumbv7m-none-eabi.md)
2222
- [`thumbv7em-none-eabi` and `thumbv7em-none-eabihf`](thumbv7em-none-eabi.md)
2323
- [`thumbv8m.base-none-eabi`](thumbv8m.base-none-eabi.md)
2424
- [`thumbv8m.main-none-eabi` and `thumbv8m.main-none-eabihf`](thumbv8m.main-none-eabi.md)
25-
- *Legacy* ARM Architectures
25+
- *Legacy* Arm Architectures
2626
- None
2727

2828
### Tier 3 Target List
2929

30-
- ARM A-Profile Architectures
30+
- Arm A-Profile Architectures
3131
- `armv7a-none-eabihf`
32-
- ARM R-Profile Architectures
32+
- Arm R-Profile Architectures
3333
- [`armv8r-none-eabihf`](armv8r-none-eabihf.md)
34-
- ARM M-Profile Architectures
34+
- Arm M-Profile Architectures
3535
- None
36-
- *Legacy* ARM Architectures
36+
- *Legacy* Arm Architectures
3737
- [`armv4t-none-eabi` and `thumbv4t-none-eabi`](armv4t-none-eabi.md)
3838
- [`armv5te-none-eabi` and `thumbv5te-none-eabi`](armv5te-none-eabi.md)
3939

4040
## Instruction Sets
4141

42-
There are two 32-bit instruction set architectures (ISAs) defined by ARM:
42+
There are two 32-bit instruction set architectures (ISAs) defined by Arm:
4343

4444
- The [*A32 ISA*][a32-isa], with fixed-width 32-bit instructions. Previously
45-
known as the *ARM* ISA, this originated with the original ARM1 of 1985 and has
45+
known as the *Arm* ISA, this originated with the original Arm1 of 1985 and has
4646
been updated by various revisions to the architecture specifications ever
4747
since.
4848
- The [*T32 ISA*][t32-isa], with a mix of 16-bit and 32-bit width instructions.
4949
Note that this term includes both the original 16-bit width *Thumb* ISA
50-
introduced with the ARMv4T architecture in 1994, and the later 16/32-bit sized
51-
*Thumb-2* ISA introduced with the ARMv6T2 architecture in 2003.
50+
introduced with the Armv4T architecture in 1994, and the later 16/32-bit sized
51+
*Thumb-2* ISA introduced with the Armv6T2 architecture in 2003.
5252

53-
Again, these ISAs have been revised by subsequent revisions to the relevant ARM
53+
Again, these ISAs have been revised by subsequent revisions to the relevant Arm
5454
architecture specifications.
5555

5656
There is also a 64-bit ISA with fixed-width 32-bit instructions called the *A64
5757
ISA*, but targets which implement that instruction set generally start with
5858
`aarch64*` and are discussed elsewhere.
5959

60-
Rust targets starting with `arm*` generate ARM (A32) code by default, whilst
61-
targets named `thumb*` generate Thumb (T32) code by default. Most ARM chips
62-
support both Thumb mode and ARM mode, with the notable exception that M-profile
60+
Rust targets starting with `arm*` generate Arm (A32) code by default, whilst
61+
targets named `thumb*` generate Thumb (T32) code by default. Most Arm chips
62+
support both Thumb mode and Arm mode, with the notable exception that M-profile
6363
processors (`thumbv*m*-none-eabi*` targets) *only* support Thumb-mode.
6464

6565
Rust targets ending with `eabi` use the so-called *soft-float ABI*: functions
@@ -92,14 +92,14 @@ instructions.
9292

9393
## Target CPU and Target Feature options
9494

95-
It is possible to tell Rust (or LLVM) that you have a specific model of ARM
95+
It is possible to tell Rust (or LLVM) that you have a specific model of Arm
9696
processor, using the [`-C target-cpu`][target-cpu] option. You can also control
9797
whether Rust (or LLVM) will include instructions that target optional hardware
9898
features, e.g. hardware floating-point, or Advanced SIMD operations, using [`-C
9999
target-feature`][target-feature].
100100

101101
It is important to note that selecting a *target-cpu* will typically enable
102-
*all* the optional features available from ARM on that model of CPU and your
102+
*all* the optional features available from Arm on that model of CPU and your
103103
particular implementation of that CPU may not have those features available. In
104104
that case, you can use `-C target-feature=-option` to turn off the specific CPU
105105
features you do not have available, leaving you with the optimized instruction
@@ -116,7 +116,7 @@ uses (likely linker related ones):
116116

117117
```toml
118118
rustflags = [
119-
# Usual ARM bare-metal linker setup
119+
# Usual Arm bare-metal linker setup
120120
"-Clink-arg=-Tlink.x",
121121
"-Clink-arg=--nmagic",
122122
# tell Rust we have a Cortex-M55
@@ -139,7 +139,7 @@ These targets are cross-compiled and use static linking.
139139

140140
By default, the `lld` linker included with Rust will be used; however, you may
141141
want to use the GNU linker instead. This can be obtained for Windows/Mac/Linux
142-
from the [ARM Developer Website][arm-gnu-toolchain], or possibly from your OS's
142+
from the [Arm Developer Website][arm-gnu-toolchain], or possibly from your OS's
143143
package manager. To use it, add the following to your `.cargo/config.toml`:
144144

145145
```toml
@@ -185,7 +185,7 @@ Most of `core` should work as expected, with the following notes:
185185
specific kind of FPU)
186186
* Integer division is also emulated in software on some targets, depending on
187187
the target, `target-cpu` and `target-feature`s.
188-
* Older ARM architectures (e.g. ARMv4, ARMv5TE and ARMv6-M) are limited to basic
188+
* Older Arm architectures (e.g. Armv4, Armv5TE and Armv6-M) are limited to basic
189189
[`load`][atomic-load] and [`store`][atomic-store] operations, and not more
190190
advanced operations like [`fetch_add`][fetch-add] or
191191
[`compare_exchange`][compare-exchange].

0 commit comments

Comments
 (0)