Intel® oneAPI DPC++/C++ Compiler
Developer Guide and Reference
A newer version of this document is available. Customers should click here to go to the newest version.
Port from GCC* to the Intel® oneAPI DPC++/C++ Compiler
This section describes a basic approach to porting applications from the (GNU Compiler Collection*) GCC C/C++ compilers to the Intel® oneAPI DPC++/C++ Compiler. These compilers correspond to each other as follows:
| Language | Intel® Compiler | GCC Compiler | 
|---|---|---|
| C | icx | gcc | 
| C++ | icpx | g++ | 
Advantages to Using the Intel® oneAPI DPC++/C++ Compiler
In many cases, porting applications from gcc to the Intel® oneAPI DPC++/C++ Compiler can be as easy as modifying your makefile to invoke the Intel® oneAPI DPC++/C++ Compiler instead of gcc.
Using the Intel® oneAPI DPC++/C++ Compiler typically improves the performance of your application, especially for those that run on Intel processors. In many cases, your application's performance may also show improvement when running on non-Intel processors. When you compile your application with the Intel® oneAPI DPC++/C++ Compiler, you have access to:
- Compiler options that optimize your code for the latest Intel® architecture processors. 
- Advanced profiling tools (PGO) similar to the GNU profiler gprof. 
- High-level optimizations (HLO). 
- Interprocedural optimization (IPO). 
- Intel intrinsic functions that the compiler uses to inline instructions, including various versions of Intel® Streaming SIMD Extensions and Intel® Advanced Vector Extensions. 
- Highly-optimized Intel® oneAPI DPC++/C++ Compiler Math Library for improved accuracy. 
Because the Intel® oneAPI DPC++/C++ Compiler is compatible and interoperable with gcc, porting your gcc application to the Intel® oneAPI DPC++/C++ Compiler includes the benefits of binary compatibility. As a result, you should not have to re-build libraries from your gcc applications.
The Intel® oneAPI DPC++/C++ Compiler also supports many of the same compiler options, macros, and environment variables you already use in your gcc work.
Equivalent Macros
The Intel® oneAPI DPC++/C++ Compiler is compatible with the predefined GNU* macros.
See GNU Predefined Macros for a list of compatible predefined macros.
| Product and Performance Information | 
|---|
| Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex. Notice revision #20201201 |