Visible to Intel only — GUID: GUID-74DAB146-C9B5-4883-B513-59327309AC8F
Visible to Intel only — GUID: GUID-74DAB146-C9B5-4883-B513-59327309AC8F
fsycl-force-target
Forces the compiler to use the specified target triple device when extracting device code from any given objects on the command line.
Syntax
Linux: |
-fsycl-force-target=triple |
Windows: |
-fsycl-force-target=triple |
Arguments
triple |
Is a target triple device name. It tells the compiler which target should be unbundled or extracted from fat objects or archives that have already been generated. The following triplets are supported:
|
Default
OFF |
If this option is not specified, the compiler will unbundle or extract based on the setting of option -fsycl-targets. |
Description
This option forces the compiler to use the specified target triple device when extracting device code from any given objects on the command line.
You can have both spir64 and spir64_gen in your objects. When -fsycl-force-target is specified, the compiler will use the target specified in that option. It will not use the value specified in -fsycl-targets, even if it exists.
When using this option, you must also specify option -fsycl.
For information about available SYCL drivers, refer to Invoke the Compiler.
When SYCL offloading is enabled, this option only applies to device-specific compilation.
IDE Equivalent
Visual Studio: C/C++ > General > Force SYCL offloading bundling target
DPC++ > General > Force SYCL offloading bundling target
Eclipse: Intel(R) C++ Compiler > General > DPC++ > Force SYCL offloading bundling target
Intel(R) oneAPI DPC++ Compiler > General > DPC++ > Force SYCL offloading bundling target
Alternate Options
None
Example
The following command-line sequence demonstrates a way to use this option:
icx -fsycl -fsycl-targets=spir64_gen -fsycl-force-target=spir64
In this case spir64 objects/archives will be extracted but spir64_gen targets will still compile.