@@ -1556,32 +1556,6 @@ static void appendOneArg(InputArgList &Args, const Arg *Opt) {
15561556 }
15571557}
15581558
1559- // Utility function to parse all devices passed via -fsycl-targets.
1560- // Return 'true' for JIT, AOT Intel CPU/GPUs and NVidia/AMD targets.
1561- // Otherwise return 'false'.
1562- bool Driver::GetUseNewOffloadDriverForSYCLOffload (Compilation &C,
1563- const ArgList &Args) const {
1564- // Check only if enabled with -fsycl
1565- if (!Args.hasFlag (options::OPT_fsycl, options::OPT_fno_sycl, false ))
1566- return false ;
1567-
1568- if (Args.hasFlag (options::OPT_no_offload_new_driver,
1569- options::OPT_offload_new_driver, false ))
1570- return false ;
1571-
1572- if (Args.hasArg (options::OPT_fintelfpga))
1573- return false ;
1574-
1575- if (const Arg *A = Args.getLastArg (options::OPT_fsycl_targets_EQ)) {
1576- for (const char *Val : A->getValues ()) {
1577- llvm::Triple TT (C.getDriver ().getSYCLDeviceTriple (Val));
1578- if ((!TT.isSPIROrSPIRV ()) || TT.isSPIRAOT ())
1579- return false ;
1580- }
1581- }
1582- return true ;
1583- }
1584-
15851559bool Driver::readConfigFile (StringRef FileName,
15861560 llvm::cl::ExpansionContext &ExpCtx) {
15871561 // Try opening the given file.
@@ -2212,12 +2186,12 @@ Compilation *Driver::BuildCompilation(ArrayRef<const char *> ArgList) {
22122186 // Use new offloading path for OpenMP. This is disabled as the SYCL
22132187 // offloading path is not properly setup to use the updated device linking
22142188 // scheme.
2215- if (C->isOffloadingHostKind (Action::OFK_OpenMP) ||
2189+ if ((C->isOffloadingHostKind (Action::OFK_OpenMP) &&
2190+ TranslatedArgs->hasFlag (options::OPT_fopenmp_new_driver,
2191+ options::OPT_no_offload_new_driver, true )) ||
22162192 TranslatedArgs->hasFlag (options::OPT_offload_new_driver,
2217- options::OPT_no_offload_new_driver, false ) ||
2218- GetUseNewOffloadDriverForSYCLOffload (*C, *TranslatedArgs)) {
2193+ options::OPT_no_offload_new_driver, false ))
22192194 setUseNewOffloadingDriver ();
2220- }
22212195
22222196 // Construct the list of abstract actions to perform for this compilation. On
22232197 // MachO targets this uses the driver-driver and universal actions.
@@ -7106,8 +7080,7 @@ void Driver::BuildDefaultActions(Compilation &C, DerivedArgList &Args,
71067080 options::OPT_fno_offload_via_llvm, false ) ||
71077081 Args.hasFlag (options::OPT_offload_new_driver,
71087082 options::OPT_no_offload_new_driver,
7109- C.isOffloadingHostKind (Action::OFK_Cuda)) ||
7110- GetUseNewOffloadDriverForSYCLOffload (C, Args);
7083+ C.isOffloadingHostKind (Action::OFK_Cuda));
71117084
71127085 bool HIPNoRDC =
71137086 C.isOffloadingHostKind (Action::OFK_HIP) &&
0 commit comments