@@ -42,6 +42,7 @@ const char *SYCL::Linker::constructLLVMSpirvCommand(Compilation &C,
42
42
} else {
43
43
CmdArgs.push_back (" -spirv-max-version=1.1" );
44
44
CmdArgs.push_back (" -spirv-ext=+all" );
45
+ CmdArgs.push_back (" -spirv-debug-info-version=legacy" );
45
46
if (C.getArgs ().hasArg (options::OPT_fsycl_esimd))
46
47
CmdArgs.push_back (" -spirv-allow-unknown-intrinsics" );
47
48
CmdArgs.push_back (" -o" );
@@ -204,6 +205,13 @@ void SYCL::Linker::ConstructJob(Compilation &C, const JobAction &JA,
204
205
SpirvInputs);
205
206
}
206
207
208
+ static const char *makeExeName (Compilation &C, StringRef Name) {
209
+ llvm::SmallString<8 > ExeName (Name);
210
+ if (C.getDriver ().IsCLMode ())
211
+ ExeName.append (" .exe" );
212
+ return C.getArgs ().MakeArgString (ExeName);
213
+ }
214
+
207
215
void SYCL::fpga::BackendCompiler::ConstructJob (Compilation &C,
208
216
const JobAction &JA,
209
217
const InputInfo &Output,
@@ -312,7 +320,8 @@ void SYCL::fpga::BackendCompiler::ConstructJob(Compilation &C,
312
320
CmdArgs.push_back (Args.MakeArgString (A->getAsString (Args)));
313
321
}
314
322
315
- SmallString<128 > ExecPath (getToolChain ().GetProgramPath (" aoc" ));
323
+ SmallString<128 > ExecPath (
324
+ getToolChain ().GetProgramPath (makeExeName (C, " aoc" )));
316
325
const char *Exec = C.getArgs ().MakeArgString (ExecPath);
317
326
auto Cmd = std::make_unique<Command>(
318
327
JA, *this , ResponseFileSupport::None (), Exec, CmdArgs, None);
@@ -349,7 +358,8 @@ void SYCL::gen::BackendCompiler::ConstructJob(Compilation &C,
349
358
static_cast <const toolchains::SYCLToolChain &>(getToolChain ());
350
359
TC.TranslateBackendTargetArgs (Args, CmdArgs);
351
360
TC.TranslateLinkerTargetArgs (Args, CmdArgs);
352
- SmallString<128 > ExecPath (getToolChain ().GetProgramPath (" ocloc" ));
361
+ SmallString<128 > ExecPath (
362
+ getToolChain ().GetProgramPath (makeExeName (C, " ocloc" )));
353
363
const char *Exec = C.getArgs ().MakeArgString (ExecPath);
354
364
auto Cmd = std::make_unique<Command>(
355
365
JA, *this , ResponseFileSupport::None (), Exec, CmdArgs, None);
@@ -382,7 +392,8 @@ void SYCL::x86_64::BackendCompiler::ConstructJob(Compilation &C,
382
392
383
393
TC.TranslateBackendTargetArgs (Args, CmdArgs);
384
394
TC.TranslateLinkerTargetArgs (Args, CmdArgs);
385
- SmallString<128 > ExecPath (getToolChain ().GetProgramPath (" opencl-aot" ));
395
+ SmallString<128 > ExecPath (
396
+ getToolChain ().GetProgramPath (makeExeName (C, " opencl-aot" )));
386
397
const char *Exec = C.getArgs ().MakeArgString (ExecPath);
387
398
auto Cmd = std::make_unique<Command>(
388
399
JA, *this , ResponseFileSupport::None (), Exec, CmdArgs, None);
0 commit comments