Visible to Intel only — GUID: GUID-0A8BAE4C-D61C-4A64-AFFE-7C2E6374186C
Visible to Intel only — GUID: GUID-0A8BAE4C-D61C-4A64-AFFE-7C2E6374186C
check-pointers-mpx, Qcheck-pointers-mpx
Determines whether the compiler checks bounds for memory access through pointers on processors that support Intel® Memory Protection Extensions (Intel® MPX).
Syntax
Linux: |
-check-pointers-mpx=keyword |
macOS: |
None |
Windows: |
/Qcheck-pointers-mpx:keyword |
Arguments
keyword |
Specifies what type of bounds checking occurs. Possible values are:
|
Default
-check-pointers-mpx=none or /Qcheck-pointers-mpx:none |
No bounds checking occurs for memory access through pointers on processors that support Intel® MPX. |
Description
This option determines whether the compiler checks bounds for memory access through pointers on processors that support Intel® MPX. It enables checking of all indirect accesses through pointers, and all array accesses.
The compiler may optimize these checks away when it can determine that an access is safe.
If you specify option [Q]check-pointers along with option [Q]check-pointers-mpx, option [Q]check-pointers-mpx takes precedence.
If you specify [Q]check-pointers-mpx, you cannot specify option [Q]check-pointers-dangling.
This feature requires supporting hardware, OS, and library support. Intel® MPX bounds exceptions are hardware exceptions that are handled by the OS and run-time library, similar to the way that a null pointer exception is handled. Pointer Checker detailed reports and report control functions are not enabled with Intel® MPX, because these require overriding the OS exception handling.
For more details, see the document titled: Intel® Memory Protection Extensions Enabling Guide.
This pointer checker feature requires installation of another product. For more information, see Feature Requirements.
IDE Equivalent
Visual Studio: Code Generation > Check Pointers
Eclipse: Code Generation > Check Pointers
Xcode: None
Alternate Options
None