Get Link
|
Sync TOC
|
<<
|
>>
Search Options:
Search Titles Only
Match All Words
Match Whole Words
Show Results in Tree
Intel® oneAPI DPC++/C++ Compiler Developer Guide and Reference
Intel® oneAPI DPC++/C++ Compiler Introduction
Feature Requirements
Get Help and Support
Related Information
Notational Conventions
Compiler Setup
Use the Command Line
Specify the Location of Compiler Components
Invoke the Compiler
Use the Command Line on Windows*
File Extensions
Use Makefiles for Compilation
Use CMake with the Intel® oneAPI DPC++/C++ Compiler
Use Compiler Options
Specify Compiler Files
Convert Projects to Use a Selected Compiler
Use Eclipse*
Add the Compiler to Eclipse*
Multi-Version Compiler Support
Use Cheat Sheets
Create a Simple Eclipse* Project
Makefiles
Use Intel Libraries with Eclipse*
Use Microsoft Visual Studio*
Create a New Project
Use the Intel® oneAPI DPC++/C++ Compiler
Select the Compiler Version
Specify a Base Platform Toolset
Use Property Pages
Use Intel® Libraries with Microsoft Visual Studio*
Include MPI Support
Dialog Box Help
Options: Compilers dialog box
Use Intel® oneAPI DPC++/C++ Compiler dialog box
Options: Intel Libraries for oneAPI dialog box
Options: Converter dialog box
Compiler Reference
C/C++/DPC++ Calling Conventions
Compiler Options
Alphabetical Option List
General Rules for Compiler Options
What Appears in the Compiler Option Descriptions
Optimization Options
fast
fbuiltin, Oi
foptimize-sibling-calls
GF
nolib-inline
O
Od
Ofast
Os
Ot
Ox
Code Generation Options
arch
EH
fasynchronous-unwind-tables
fdata-sections, Gw
fexceptions
ffunction-sections, Gy
fomit-frame-pointer, Oy
Gd
Gr
GR
guard
Gv
Gz
m
m32, m64, Q32, Q64
m80387
march
masm
mbranches-within-32B-boundaries, Qbranches-within-32B-boundaries
mconditional-branch, Qconditional-branch
mintrinsic-promote, Qintrinsic-promote
momit-leaf-frame-pointer
mregparm
mtune, tune
Qcxx-features
Qpatchable-addresses
Qsafeseh
regcall, Qregcall
x, Qx
xHost, QxHost
Interprocedural Optimization Options
ipo, Qipo
Advanced Optimization Options
ffreestanding, Qfreestanding
fjump-tables
ipp-link, Qipp-link
qactypes, Qactypes
qdaal, Qdaal
qipp, Qipp
qmkl, Qmkl
qopt-assume-no-loop-carried-dep, Qopt-assume-no-loop-carried-dep
qopt-dynamic-align, Qopt-dynamic-align
qopt-for-throughput, Qopt-for-throughput
qopt-multiple-gather-scatter-by-shuffles, Qopt-multiple-gather-scatter-by-shuffles
qtbb, Qtbb
unroll, Qunroll
use-intel-optimized-headers, Quse-intel-optimized-headers
vec, Qvec
vec-threshold, Qvec-threshold
Optimization Report Options
qopt-report, Qopt-report
Offload Compilation, OpenMP*, and Parallel Processing Options
device-math-lib
fintelfpga
fiopenmp, Qiopenmp
fno-sycl-libspirv
foffload-static-lib
fopenmp
fopenmp-device-lib
fopenmp-target-buffers, Qopenmp-target-buffers
fopenmp-targets, Qopenmp-targets
fsycl
fsycl-add-targets
fsycl-dead-args-optimization
fsycl-device-code-split
fsycl-device-lib
fsycl-device-only
fsycl-early-optimizations
fsycl-enable-function-pointers
fsycl-explicit-simd
fsycl-help
fsycl-host-compiler
fsycl-host-compiler-options
fsycl-id-queries-fit-in-int
fsycl-link
fsycl-link-targets
fsycl-max-parallel-link-jobs
fsycl-targets
fsycl-unnamed-lambda
fsycl-use-bitcode
nolibsycl
qopenmp, Qopenmp
qopenmp-lib, Qopenmp-lib
qopenmp-link, Qopenmp-link
qopenmp-simd, Qopenmp-simd
qopenmp-stubs, Qopenmp-stubs
qopenmp-threadprivate, Qopenmp-threadprivate
reuse-exe
Wno-sycl-strict
Xs
Xopenmp-target
Xsycl-target
Floating-Point Options
ffp-contract
fimf-absolute-error, Qimf-absolute-error
fimf-accuracy-bits, Qimf-accuracy-bits
fimf-arch-consistency, Qimf-arch-consistency
fimf-domain-exclusion, Qimf-domain-exclusion
fimf-force-dynamic-target, Qimf-force-dynamic-target
fimf-max-error, Qimf-max-error
fimf-precision, Qimf-precision
fimf-use-svml, Qimf-use-svml
fma, Qfma
fp-model, fp
fp-speculation, Qfp-speculation
Inlining Options
fgnu89-inline
finline
finline-functions
Output, Debug, and Precompiled Header Options
c
debug (Linux* )
debug (Windows*)
Fa
FA
fasm-blocks
FC
Fd
FD
Fe
Fo
Fp
ftrapuv, Qtrapuv
fverbose-asm
g
gdwarf
Gm
grecord-gcc-switches
gsplit-dwarf
o
pdbfile
print-multi-lib
RTC
S
use-msasm
Y-
Yc
Yu
Zi, Z7, ZI
Preprocessor Options
B
C
D
dD, QdD
dM, QdM
E
EP
FI
H, QH
I
I-
idirafter
imacros
iprefix
iquote
isystem
iwithprefix
iwithprefixbefore
Kc++, TP
M, QM
MD, QMD
MF, QMF
MG, QMG
MM, QMM
MMD, QMMD
MP (Linux* OS)
MQ
MT, QMT
nostdinc++
P
pragma-optimization-level
u (Windows*)
U
undef
X
Component Control Options
Qinstall
Qlocation
Qoption
Language Options
ansi
fno-gnu-keywords
fno-operator-names
fno-rtti
fpermissive
fshort-enums
fsyntax-only
funsigned-char
GZ
J
std, Qstd
strict-ansi
vd
vmg
x (type option)
Zc
Zg
Zp
Zs
Data Options
align
fcommon
fkeep-static-consts, Qkeep-static-consts
fmath-errno
fpack-struct
fpascal-strings
fpic
fpie
freg-struct-return
fstack-protector
fstack-security-check
fvisibility
fzero-initialized-in-bss, Qzero-initialized-in-bss
GA
Gs
GS
malign-double
mcmodel
Qlong-double
Compiler Diagnostic Options
w
w0...w5, W0...W5
Wabi
Wall
Wcheck-unicode-security
Wcomment
Wdeprecated
Weffc++, Qeffc++
Werror, WX
Werror-all
Wextra-tokens
Wformat
Wformat-security
Wmain
Wmissing-declarations
Wmissing-prototypes
Wpointer-arith
Wreorder
Wreturn-type
Wshadow
Wsign-compare
Wstrict-aliasing
Wstrict-prototypes
Wtrigraphs
Wuninitialized
Wunknown-pragmas
Wunused-function
Wunused-variable
Wwrite-strings
Compatibility Options
gcc-toolchain
vmv
Linking or Linker Options
Bdynamic
Bstatic
Bsymbolic
Bsymbolic-functions
dynamic-linker
F (Windows*)
fixed
Fm
fuse-ld
l
L
LD
link
MD
MT
no-libgcc
nodefaultlibs
no-intel-lib
nostartfiles
nostdlib
pie
pthread
shared
shared-intel
shared-libgcc
static
static-intel
static-libgcc
static-libstdc++
T
u (Linux* OS)
v
Wa
Wl
Wp
Xlinker
Zl
Miscellaneous Options
dryrun
dumpmachine
dumpversion
help
intel-freestanding
intel-freestanding-target-os
multibyte-chars, Qmultibyte-chars
multiple-processes
nologo
save-temps, Qsave-temps
showIncludes
sox
sysroot
Tc
TC
Tp
version
watch
Deprecated and Removed Compiler Options
Display Option Information
Alternate Compiler Options
Portability and GCC*-Compatible Warning Options
Floating-Point Operations
Programming Tradeoffs in Floating-point Applications
Use the -fp-model, /fp Option
Denormal Numbers
Set the FTZ and DAZ Flags
Tuning Performance
IEEE Floating-point Operations
Attributes
align
align_value
allow_cpu_features
concurrency_safe
const
cpu_dispatch, cpu_specific
mpx
target
Intrinsics
Libraries
Create Libraries
Use Intel Shared Libraries
Manage Libraries
Redistribute Libraries When Deploying Applications
Resolve References to Shared Libraries
Intel's Memory Allocator Library
SIMD Data Layout Templates
Function Calls and Containers
Construct an n_container
Bounds
User-Level Interface
SDLT Primitives
soa1d_container
aos1d_container
access_by
n_container
Layouts
Shape
n_extent_generator
make_ n_container template function
extent_d template function
Bounds
bounds_t
sdlt::bounds Template Function
n_bounds_t
n_bounds_generator
bounds_d Template Function
Accessors
soa1d_container::accessor and aos1d_container::accessor
soa1d_container::const_accessor and aos1d_container::const_accessor
Accessor Concept
Proxy Objects
Proxy
ConstProxy
Number Representation
aligned_offset
fixed_offset
Indexes
linear_index
n_index_t (needs new content)
n_index_generator
index_d template function
Convenience and Correctness
max_val
min_val
Examples
Efficiency with Structure of Arrays Example
Complex SDLT Primitive Construction Example
Forward Dependency Example
Use of Offsets and Methods on a SDLT Primitive Example
RGB to YUV Conversion Example
Intel® C++ Class Libraries
C++ Classes and SIMD Operations
Capabilities of C++ SIMD Classes
Integer Vector Classes
Terms and Syntax
Rules for Operators
Assignment Operator
Logical Operators
Addition and Subtraction Operators
Multiplication Operators
Shift Operators
Comparison Operators
Conditional Select Operators
Debug Operations
Unpack Operators
Pack Operators
Clear MMX™ State Operator
Integer Functions for Streaming SIMD Extensions
Conversions between Fvec and Ivec
Floating-point Vector Classes
Fvec Syntax and Notation
Data Alignment
Conversions
Constructors and Initialization
Arithmetic Operators
Minimum and Maximum Operators
Logical Operators
Compare Operators
Conditional Select Operators for Fvec Classes
Cacheability Support Operators
Debug Operations
Load and Store Operators
Unpack Operators
Move Mask Operators
Classes Quick Reference
Programming Example
Intel's valarray Implementation
Intel's C++ Asynchronous I/O Extensions for Windows*
Intel's C++ Asynchronous I/O Library for Windows*
aio_read
aio_write
Example for aio_read and aio_write Functions
aio_suspend
Example for aio_suspend Function
aio_error
aio_return
Example for aio_error and aio_return Functions
aio_fsync
aio_cancel
Example for aio_cancel Function
lio_listio
Example for lio_listio Function
Asynchronous I/O Function Errors
Intel's C++ Asynchronous I/O Class for Windows*
Template Class async_class
get_last_operation_id
wait
get_status
get_last_error
get_error_operation_id
stop_queue
resume_queue
clear_queue
Example for Using async_class Template Class
IEEE 754-2008 Binary Floating-Point Conformance Library
Intel® IEEE 754-2008 Binary Floating-Point Conformance Library and Usage
Function List
Homogeneous General-Computational Operations Functions
General-Computational Operations Functions
Quiet-Computational Operations Functions
Signaling-Computational Operations Functions
Non-Computational Operations Functions
Intel's Numeric String Conversion Library
Use Intel's Numeric String Conversion Library
Function List
Macros
ISO Standard Predefined Macros
Additional Predefined Macros
Use Predefined Macros to Specify Intel® Compilers
Pragmas
Intel-Specific Pragma Reference
block_loop/noblock_loop
distribute_point
inline, noinline, forceinline
ivdep
loop_count
nofusion
novector
omp target variant dispatch
prefetch/noprefetch
unroll/nounroll
unroll_and_jam/nounroll_and_jam
vector
Intel-supported Pragma Reference
Error Handling
Compilation
Supported Environment Variables
Compilation Phases
Pass Options to the Linker
Specify Alternate Tools and Paths
Use Configuration Files
Use Response Files
Global Symbols and Visibility Attributes for Linux*
Save Compiler Information in Your Executable
Link Debug Information
Ahead of Time Compilation
Device Offload Compilation Considerations
Use a Third-Party Compiler as a Host Compiler for DPC++ Code
Optimization and Programming
Extensions
OpenMP* Support
Add OpenMP* Support
Parallel Processing Model
Worksharing Using OpenMP*
Control Thread Allocation
OpenMP* Pragmas
OpenMP* Library Support
OpenMP* Run-time Library Routines
Intel® Compiler Extension Routines to OpenMP*
OpenMP* Support Libraries
Use the OpenMP* Libraries
Thread Affinity Interface
OpenMP* Memory Spaces and Allocators
OpenMP* Advanced Issues
OpenMP* Implementation-Defined Behaviors
OpenMP* Examples
Intel® oneAPI Level Zero
Intel® oneAPI Level Zero Switch
Intel® oneAPI Level Zero Backend Specification
Programming with the Intel® oneAPI Level Zero Backend
Vectorization
Automatic Vectorization
Vectorization Programming Guidelines
Use Automatic Vectorization
Vectorization and Loops
Loop Constructs
Explicit Vector Programming
User-Mandated or SIMD Vectorization
SIMD-Enabled Functions
SIMD-Enabled Function Pointers
Vectorize a Loop Using the _Simd Keyword
Function Annotations and the SIMD Directive for Vectorization
Explicit SIMD SYCL* Extension
High-Level Optimization
Interprocedural Optimization
Use Interprocedural Optimization
Performance and Large Program Considerations
Create a Library from IPO Objects
Inline Expansion of Functions
Methods to Optimize Code Size
Intel® oneAPI DPC++/C++ Compiler Math Library
Use the Intel® oneAPI DPC++/C++ Compiler Math Library
Math Function List
Trigonometric Functions
Hyperbolic Functions
Exponential Functions
Special Functions
Nearest Integer Functions
Remainder Functions
Miscellaneous Functions
Complex Functions
C99 Macros
Compatibility and Portability
Conformance to the C/C++/DPC++ Standards
GCC* Compatibility and Interoperability
Microsoft* Compatibility
Port from Microsoft Visual C++* to the Intel® oneAPI DPC++/C++ Compiler
Modify Your makefile
Other Considerations
Port from GCC* to the Intel® oneAPI DPC++/C++ Compiler
Modify Your makefile
Other Considerations
Notices and Disclaimers