@@ -10354,20 +10354,25 @@ void OffloadWrapper::ConstructJob(Compilation &C, const JobAction &JA,
1035410354 C.getArgs ().hasArg (options::OPT_fsycl_link_EQ)) {
1035510355
1035610356 // When compiling and linking separately, we need to propagate the
10357- // compression related CLI options to offload-wrapper.
10358- if (C.getInputArgs ().getLastArg (options::OPT_offload_compress)) {
10359- CmdArgs.push_back (C.getArgs ().MakeArgString (Twine (" -offload-compress" )));
10360- // -offload-compression-level=<>
10361- if (Arg *A = C.getInputArgs ().getLastArg (
10362- options::OPT_offload_compression_level_EQ))
10363- CmdArgs.push_back (C.getArgs ().MakeArgString (
10364- Twine (" -offload-compression-level=" ) + A->getValue ()));
10357+ // compression related CLI options to offload-wrapper. Don't propagate
10358+ // these options when wrapping objects for FPGA.
10359+ if (!C.getArgs ().hasArg (options::OPT_fintelfpga)) {
10360+
10361+ if (C.getInputArgs ().getLastArg (options::OPT_offload_compress)) {
10362+ CmdArgs.push_back (
10363+ C.getArgs ().MakeArgString (Twine (" -offload-compress" )));
10364+ // -offload-compression-level=<>
10365+ if (Arg *A = C.getInputArgs ().getLastArg (
10366+ options::OPT_offload_compression_level_EQ))
10367+ CmdArgs.push_back (C.getArgs ().MakeArgString (
10368+ Twine (" -offload-compression-level=" ) + A->getValue ()));
10369+ }
1036510370 }
1036610371
1036710372 // For FPGA, we wrap the host objects before archiving them when using
1036810373 // -fsycl-link. This allows for better extraction control from the
1036910374 // archive when we need the host objects for subsequent compilations.
10370- if (C. getArgs (). hasArg (options::OPT_fintelfpga)) {
10375+ else {
1037110376 // Add offload targets and inputs.
1037210377 CmdArgs.push_back (C.getArgs ().MakeArgString (
1037310378 Twine (" -kind=" ) + Action::GetOffloadKindName (OffloadingKind)));
0 commit comments