fsycl-link-targets

Tells the compiler to link only device code. This is a deprecated option that may be removed in a future release.

Syntax

Linux:

-fsycl-link-targets=T1,...,Tn

Windows:

-fsycl-link-targets=T1,...,Tn

Arguments

T

Is a target triple for the device code. You can specify more than one T.

Default

OFF

No link is performed.

Description

This option tells the compiler to link only device code. It is used in a link step.

It tells the compiler to link device code for the given target triples, and output multiple linked device code images. It does not produce fat binary.

Note

You should be familiar with ahead-of-time (AOT) compilation when using this option.

Note

When using this option, you must also specify option -fsycl.

For information about available SYCL drivers, refer to Invoke the Compiler.

Note

When SYCL offloading is enabled, this option only applies to device-specific compilation.

IDE Equivalent

None

Alternate Options

None

Example

The following command-line sequence demonstrates a way to use this option:

icx -fsycl -fsycl-targets=spir64 -c a.cpp -o a.o
icx -fsycl -fsycl-targets=spir64 -c b.cpp -o b.o
icx -fsycl -fsycl-link-targets=spir64 a.o b.o -o linked.spv
aoc linked.spv -o linked.aocx
icx -fsycl -fsycl-add-targets=fpga:linked.aocx a.o b.o -o final.out -lOpenCL -lsycl

See Also