Skip to content

Commit bc5500e

Browse files
committed
Making libraries section more clear
1 parent 1cc3313 commit bc5500e

File tree

1 file changed

+8
-6
lines changed

1 file changed

+8
-6
lines changed

docs/build/reference/qspectre.md

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -52,21 +52,23 @@ The effect of **`/Qspectre`** on performance appeared to be negligible in severa
5252

5353
### Required libraries
5454

55-
The **`/Qspectre`** compiler option generates code that implicitly links versions of the runtime libraries built to provide Spectre mitigations. These libraries are optional components that must be installed by using the Visual Studio Installer:
55+
When you enable the **Configuration Properties** > **C/C++** > **Code Generation** > **Spectre Mitigation** option in the Visual Studio IDE project properties, the following occur:
5656

57-
- MSVC version *version_numbers* Libs for Spectre \[(x86 and x64) | (ARM) | (ARM64)]
58-
- Visual C++ ATL for \[(x86/x64) | ARM | ARM64] with Spectre Mitigations
59-
- Visual C++ MFC for \[x86/x64 | ARM | ARM64] with Spectre Mitigations
57+
1. **`/Qspectre`** is thrown to the compiler, ensuring that code compiled in your project has mitigations.
58+
2. The linker [`/LIBPATH`](./libpath-additional-libpath.md) options are changed to the Spectre-mitigation enabled libraries. These libraries are optional components that must be installed by using the Visual Studio Installer:
59+
- MSVC version *version_numbers* Libs for Spectre \[(x86 and x64) | (ARM) | (ARM64)]
60+
- Visual C++ ATL for \[(x86/x64) | ARM | ARM64] with Spectre Mitigations
61+
- Visual C++ MFC for \[x86/x64 | ARM | ARM64] with Spectre Mitigations
6062

6163
::: moniker range=">=msvc-160"
6264

63-
If you build your code by using **`/Qspectre`** and these libraries aren't installed, the build system reports warning [MSB8040](/visualstudio/msbuild/errors/msb8040). If your MFC or ATL code fails to build, and the linker reports an error such as "fatal error LNK1104: cannot open file 'oldnames.lib'", these missing libraries may be the cause.
65+
If Spectre mitigations are enabled and these libraries aren't installed, the build system reports warning [MSB8040](/visualstudio/msbuild/errors/msb8040). If your MFC or ATL code fails to build, and the linker reports an error such as "fatal error LNK1104: cannot open file 'oldnames.lib'", these missing libraries may be the cause.
6466

6567
::: moniker-end
6668

6769
::: moniker range="<=msvc-150"
6870

69-
If you build your code by using **`/Qspectre`** and these libraries aren't installed, the build system reports warning MSB8038: "Spectre mitigation is enabled but Spectre mitigated libraries are not found". If your MFC or ATL code fails to build, and the linker reports an error such as "fatal error LNK1104: cannot open file 'oldnames.lib'", these missing libraries may be the cause.
71+
If Spectre mitigations are enabled and these libraries aren't installed, the build system reports warning MSB8038: "Spectre mitigation is enabled but Spectre mitigated libraries are not found". If your MFC or ATL code fails to build, and the linker reports an error such as "fatal error LNK1104: cannot open file 'oldnames.lib'", these missing libraries may be the cause.
7072

7173
::: moniker-end
7274

0 commit comments

Comments
 (0)