Skip to content

Commit 52ac231

Browse files
committed
Merging changes synced from https://github.com/MicrosoftDocs/cpp-docs-pr (branch live)
2 parents a89366d + fb2e867 commit 52ac231

File tree

5 files changed

+74
-73
lines changed

5 files changed

+74
-73
lines changed

docs/assembler/arm/arm-assembler-command-line-reference.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ A combination of zero or more of the following options:
2727
- **`-predefine`** *directive*\
2828
Specify a SETA, SETL, or SETS directive to predefine a symbol.\
2929
Example: `armasm.exe -predefine "COUNT SETA 150" source.asm`\
30-
For more information, see the [ARM Compiler armasm Reference Guide](http://infocenter.arm.com/help/topic/com.arm.doc.dui0802b/index.html).
30+
For more information, see the [ARM Compiler armasm Reference Guide](https://developer.arm.com/documentation/dui0802/latest/).
3131

3232
- **`-nowarn`**\
3333
Disable all warning messages.

docs/assembler/arm/arm-assembler-directives.md

Lines changed: 39 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -6,117 +6,117 @@ ms.assetid: 9cfa8896-ec10-4e77-855a-3135c40d7d2a
66
---
77
# ARM Assembler Directives
88

9-
For the most part, the Microsoft ARM assembler uses the ARM assembly language, which is documented in the [ARM Compiler armasm Reference Guide](http://infocenter.arm.com/help/topic/com.arm.doc.dui0802b/index.html). However, the Microsoft implementations of some assembly directives differ from the ARM assembly directives. This article explains the differences.
9+
Generally, the Microsoft ARM assembler uses the ARM assembly language, which is documented in the [ARM Compiler armasm Reference Guide](https://developer.arm.com/documentation/dui0802/latest/). However, the Microsoft implementations of some assembly directives differ from the ARM assembly directives. This article explains the differences.
1010

1111
## Microsoft Implementations of ARM Assembly Directives
1212

13-
- AREA
13+
- `AREA`
1414

1515
The Microsoft ARM assembler supports these `AREA` attributes: `ALIGN`, `CODE`, `CODEALIGN`, `DATA`, `NOINIT`, `READONLY`, `READWRITE`, `THUMB`, `ARM`.
1616

17-
All except `THUMB` and `ARM` work as documented in the [ARM Compiler armasm Reference Guide](http://infocenter.arm.com/help/topic/com.arm.doc.dui0802b/index.html).
17+
All except `THUMB` and `ARM` work as documented in the [ARM Compiler armasm Reference Guide](https://developer.arm.com/documentation/dui0802/latest/).
1818

1919
In the Microsoft ARM assembler, `THUMB` indicates that a `CODE` section contains Thumb code, and is the default for `CODE` sections. `ARM` indicates that the section contains ARM code.
2020

21-
- ATTR
21+
- `ATTR`
2222

2323
Not supported.
2424

25-
- CODE16
25+
- `CODE16`
2626

27-
Not supported because it implies pre-UAL Thumb syntax, which the Microsoft ARM assembler does not allow. Use the `THUMB` directive instead, along with UAL syntax.
27+
Not supported because it implies pre-UAL Thumb syntax, which the Microsoft ARM assembler doesn't allow. Use the `THUMB` directive instead, along with UAL syntax.
2828

29-
- COMMON
29+
- `COMMON`
3030

31-
Specification of an alignment for the common region is not supported.
31+
Specification of an alignment for the common region isn't supported.
3232

33-
- DCDO
33+
- `DCDO`
3434

3535
Not supported.
3636

3737
- `DN`, `QN`, `SN`
3838

39-
Specification of a type or a lane on the register alias is not supported.
39+
Specification of a type or a lane on the register alias isn't supported.
4040

41-
- ENTRY
41+
- `ENTRY`
4242

4343
Not supported.
4444

45-
- EQU
45+
- `EQU`
4646

47-
Specification of a type for the defined symbol is not supported.
47+
Specification of a type for the defined symbol isn't supported.
4848

4949
- `EXPORT` and `GLOBAL`
5050

5151
Specifies exports using this syntax:
5252

53-
> **EXPORT**|**GLOBAL** <em>sym</em>{**[**<em>type</em>**]**}
53+
> **`EXPORT`**|**`GLOBAL`** *`symbol`*{*`[type]`*}
5454
55-
*sym* is the symbol to be exported. [*type*], if specified, can be either `[DATA]` to indicate that the symbol points to data or `[FUNC]` to indicate that the symbol points to code. `GLOBAL` is a synonym for `EXPORT`.
55+
*`symbol`* is the symbol to be exported. *`[type]`*, if specified, can be either `[DATA]` to indicate that the symbol points to data or `[FUNC]` to indicate that the symbol points to code. `GLOBAL` is a synonym for `EXPORT`.
5656

57-
- EXPORTAS
57+
- `EXPORTAS`
5858

5959
Not supported.
6060

61-
- FRAME
61+
- `FRAME`
6262

6363
Not supported.
6464

6565
- `FUNCTION` and `PROC`
6666

67-
Although the assembly syntax supports the specification of a custom calling convention on procedures by listing the registers that are caller-save and those that are callee-save, the Microsoft ARM assembler accepts the syntax but ignores the register lists. The debug information that is produced by the assembler supports only the default calling convention.
67+
The assembly syntax lets you specify a custom calling convention on procedures: you list the registers that are caller-save, and the ones that are callee-save. However, while the Microsoft ARM assembler accepts the syntax, it ignores the register lists. The debug information that's produced by the assembler supports only the default calling convention.
6868

6969
- `IMPORT` and `EXTERN`
7070

7171
Specifies imports using this syntax:
7272

73-
> **IMPORT**|**EXTERN** *sym*{**, WEAK** *alias*{**, TYPE** *t*}}
73+
> **`IMPORT`**|**`EXTERN`** *`symbol`*{**`, WEAK`** *`alias`*{**`, TYPE`** *`t`*}}
7474
75-
*sym* is the name of the symbol to be imported.
75+
*`symbol`* is the name of the symbol to be imported.
7676

77-
If `WEAK` *alias* is specified, it indicates that *sym* is a weak external. If no definition for it is found at link time, then all references to it bind instead to *alias*.
77+
If `WEAK` *`alias`* is specified, it indicates that *`symbol`* is a weak external. If a definition for it isn't found at link time, then all references to it bind instead to *`alias`*.
7878

79-
If `TYPE` *t* is specified, then *t* indicates how the linker should attempt to resolve *sym*. These values for *t* are possible:
79+
If `TYPE` *`t`* is specified, then *`t`* indicates how the linker should attempt to resolve *`symbol`*. These values for *`t`* are possible:
8080

81-
|Value|Description|
82-
|-|-|
83-
|1|Do not perform a library search for *sym*|
84-
|2|Perform a library search for *sym*|
85-
|3|*sym* is an alias for *alias* (default)|
81+
| Value | Description |
82+
|--|--|
83+
| 1 | Don't search libraries for *`symbol`*. |
84+
| 2 | Search libraries for *`symbol`*. |
85+
| 3 | *`symbol`* is an alias for *`alias`* (default). |
8686

87-
`EXTERN` is a synonym for `IMPORT`, except that *sym* is imported only if there are references to it in the current assembly.
87+
`EXTERN` is a synonym for `IMPORT`, except that *`symbol`* is imported only if there are references to it in the current assembly.
8888

89-
- MACRO
89+
- `MACRO`
9090

91-
The use of a variable to hold the condition code of a macro is not supported. Default values for macro parameters are not supported.
91+
The use of a variable to hold the condition code of a macro isn't supported. Default values for macro parameters aren't supported.
9292

93-
- NOFP
93+
- `NOFP`
9494

9595
Not supported.
9696

9797
- `OPT`, `TTL`, `SUBT`
9898

99-
Not supported because the Microsoft ARM assembler does not produce listings.
99+
Not supported, because the Microsoft ARM assembler doesn't produce listings.
100100

101-
- PRESERVE8
101+
- `PRESERVE8`
102102

103103
Not supported.
104104

105-
- RELOC
105+
- `RELOC`
106106

107-
`RELOC n` can only follow an instruction or a data definition directive. There is no "anonymous symbol" that can be relocated.
107+
`RELOC n` can only follow an instruction or a data definition directive. There's no "anonymous symbol" that can be relocated.
108108

109-
- REQUIRE
109+
- `REQUIRE`
110110

111111
Not supported.
112112

113-
- REQUIRE8
113+
- `REQUIRE8`
114114

115115
Not supported.
116116

117-
- THUMBX
117+
- `THUMBX`
118118

119-
Not supported because the Microsoft ARM assembler does not support the Thumb-2EE instruction set.
119+
Not supported, because the Microsoft ARM assembler doesn't support the Thumb-2EE instruction set.
120120

121121
## See also
122122

docs/assembler/arm/arm-assembler-reference.md

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,13 @@ The articles in this section of the documentation provide reference material for
1313
|Title|Description|
1414
|-----------|-----------------|
1515
|[ARM Assembler Command-Line Reference](../../assembler/arm/arm-assembler-command-line-reference.md)|Describes the armasm command-line options.|
16-
|[ARM Assembler Diagnostic Messages](../../assembler/arm/arm-assembler-diagnostic-messages.md)|Describes commonly encountered armasm warning and error messages.|
16+
|[ARM Assembler Diagnostic Messages](../../assembler/arm/arm-assembler-diagnostic-messages.md)|Describes commonly seen armasm warning and error messages.|
1717
|[ARM Assembler Directives](../../assembler/arm/arm-assembler-directives.md)|Describes the ARM directives that are different in armasm.|
1818
|[ARM Architecture Reference Manual](https://developer.arm.com/search#q=ARM%20Architecture%20Reference%20Manual) on the ARM Developer website.|Choose the relevant manual for your ARM architecture. Each contains reference sections about ARM, Thumb, NEON, and VFP, and additional information about the ARM assembly language.|
19-
|[ARM Compiler armasm User Guide](https://developer.arm.com/search#q=ARM%20Compiler%20armasm%20User%20Guide) on the ARM Developer website.|Choose a recent version to find up-to-date information about the ARM assembly language. **Note:** The "armasm" assembler that is referred to on the ARM Developer website is not the Microsoft armasm assembler that is included in Visual Studio and is documented in this section.|
19+
|[ARM Compiler armasm User Guide](https://developer.arm.com/search#q=ARM%20Compiler%20armasm%20User%20Guide) on the ARM Developer website.|Choose a recent version to find up-to-date information about the ARM assembly language.|
20+
21+
> [!IMPORTANT]
22+
> The armasm assembler that the ARM Developer website describes isn't the same as the Microsoft armasm assembler that's included in Visual Studio and is documented in this section.
2023
2124
## See also
2225

docs/assembler/masm/processor-manufacturer-programming-manuals.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ This article provides links to websites that may contain programming info about
1212

1313
- [AMD Developer Guides, Manuals & ISA Documents](https://developer.amd.com/resources/developer-guides-manuals/)
1414

15-
- [ARM Architecture Reference Manual](https://developer.arm.com/docs/ddi0487/fb)
15+
- [ARM Architecture Reference Manual](https://developer.arm.com/documentation/ddi0487/latest/)
1616

1717
- [Intel 64 and IA-32 Architectures Software Developer Manuals](https://software.intel.com/articles/intel-sdm)
1818

0 commit comments

Comments
 (0)