From 97bd4f34e9a7c4758881c4c4a57582f8d6a4318a Mon Sep 17 00:00:00 2001 From: Artem Gindinson Date: Tue, 11 May 2021 18:30:34 +0300 Subject: [PATCH 1/3] [SYCL] Register SPIRITTAnnotations pass for New PM Signed-off-by: Artem Gindinson --- llvm/lib/Passes/PassBuilder.cpp | 1 + llvm/lib/Passes/PassRegistry.def | 1 + 2 files changed, 2 insertions(+) diff --git a/llvm/lib/Passes/PassBuilder.cpp b/llvm/lib/Passes/PassBuilder.cpp index d8f08df29ab1b..5495016184376 100644 --- a/llvm/lib/Passes/PassBuilder.cpp +++ b/llvm/lib/Passes/PassBuilder.cpp @@ -135,6 +135,7 @@ #include "llvm/Transforms/Instrumentation/MemorySanitizer.h" #include "llvm/Transforms/Instrumentation/PGOInstrumentation.h" #include "llvm/Transforms/Instrumentation/PoisonChecking.h" +#include "llvm/Transforms/Instrumentation/SPIRITTAnnotations.h" #include "llvm/Transforms/Instrumentation/SanitizerCoverage.h" #include "llvm/Transforms/Instrumentation/ThreadSanitizer.h" #include "llvm/Transforms/ObjCARC.h" diff --git a/llvm/lib/Passes/PassRegistry.def b/llvm/lib/Passes/PassRegistry.def index 74f2a3f4cff2d..68edab288bfa6 100644 --- a/llvm/lib/Passes/PassRegistry.def +++ b/llvm/lib/Passes/PassRegistry.def @@ -123,6 +123,7 @@ MODULE_PASS("poison-checking", PoisonCheckingPass()) MODULE_PASS("pseudo-probe-update", PseudoProbeUpdatePass()) MODULE_PASS("LowerESIMD", SYCLLowerESIMDPass()) MODULE_PASS("ESIMDLowerVecArg", ESIMDLowerVecArgPass()) +MODULE_PASS("SPIRITTAnnotations", SPIRITTAnnotationsPass()) MODULE_PASS("deadargelim-sycl", DeadArgumentEliminationSYCLPass()) #undef MODULE_PASS From 6bd73427ecbb2070ed1605380d9b1bc42eed9b90 Mon Sep 17 00:00:00 2001 From: Artem Gindinson Date: Tue, 11 May 2021 20:37:37 +0300 Subject: [PATCH 2/3] Update SPIRITTAnnotations tests to use the new PM Signed-off-by: Artem Gindinson --- llvm/test/Transforms/SPIRITTAnnotations/itt_atomic_load.ll | 2 +- llvm/test/Transforms/SPIRITTAnnotations/itt_atomic_store.ll | 2 +- llvm/test/Transforms/SPIRITTAnnotations/itt_barrier.ll | 2 +- llvm/test/Transforms/SPIRITTAnnotations/itt_start_finish.ll | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/llvm/test/Transforms/SPIRITTAnnotations/itt_atomic_load.ll b/llvm/test/Transforms/SPIRITTAnnotations/itt_atomic_load.ll index 1c4821d705f79..f24b84e2288ae 100644 --- a/llvm/test/Transforms/SPIRITTAnnotations/itt_atomic_load.ll +++ b/llvm/test/Transforms/SPIRITTAnnotations/itt_atomic_load.ll @@ -5,7 +5,7 @@ ;; with following commands: ;; clang++ -fsycl -fsycl-device-only load.cpp -o load.bc -; RUN: opt < %s --SPIRITTAnnotations -S | FileCheck %s +; RUN: opt < %s --SPIRITTAnnotations -enable-new-pm=1 -S | FileCheck %s ; ModuleID = 'load.bc' source_filename = "llvm-test-suite/SYCL/AtomicRef/load.cpp" diff --git a/llvm/test/Transforms/SPIRITTAnnotations/itt_atomic_store.ll b/llvm/test/Transforms/SPIRITTAnnotations/itt_atomic_store.ll index db36a9470e3e6..35a764fb5b8ba 100644 --- a/llvm/test/Transforms/SPIRITTAnnotations/itt_atomic_store.ll +++ b/llvm/test/Transforms/SPIRITTAnnotations/itt_atomic_store.ll @@ -5,7 +5,7 @@ ;; with following commands: ;; clang++ -fsycl -fsycl-device-only load.cpp -o load.bc -; RUN: opt < %s --SPIRITTAnnotations -S | FileCheck %s +; RUN: opt < %s --SPIRITTAnnotations -enable-new-pm=1 -S | FileCheck %s ; ModuleID = 'store.bc' source_filename = "llvm-test-suite/SYCL/AtomicRef/store.cpp" diff --git a/llvm/test/Transforms/SPIRITTAnnotations/itt_barrier.ll b/llvm/test/Transforms/SPIRITTAnnotations/itt_barrier.ll index 127af4562082a..abd558cbbe516 100644 --- a/llvm/test/Transforms/SPIRITTAnnotations/itt_barrier.ll +++ b/llvm/test/Transforms/SPIRITTAnnotations/itt_barrier.ll @@ -5,7 +5,7 @@ ;; with following commands: ;; clang++ -fsycl -fsycl-device-only kernel-and-program.cpp -o kernel_and_program_optimized.bc -; RUN: opt < %s --SPIRITTAnnotations -S | FileCheck %s +; RUN: opt < %s --SPIRITTAnnotations -enable-new-pm=1 -S | FileCheck %s ; ModuleID = 'kernel_and_program_optimized.bc' source_filename = "llvm-link" diff --git a/llvm/test/Transforms/SPIRITTAnnotations/itt_start_finish.ll b/llvm/test/Transforms/SPIRITTAnnotations/itt_start_finish.ll index 0999a31042207..00baf01e608de 100644 --- a/llvm/test/Transforms/SPIRITTAnnotations/itt_start_finish.ll +++ b/llvm/test/Transforms/SPIRITTAnnotations/itt_start_finish.ll @@ -1,7 +1,7 @@ ;; The test serves a purpose to check if work item start/finish annotations ;; are being added by SPIRITTAnnotations pass -; RUN: opt < %s --SPIRITTAnnotations -S | FileCheck %s +; RUN: opt < %s --SPIRITTAnnotations -enable-new-pm=1 -S | FileCheck %s ; ModuleID = 'synthetic.bc' source_filename = "synthetic.cpp" From 6278669cc7a0a3e5ddb4695340604f17f05d6872 Mon Sep 17 00:00:00 2001 From: Artem Gindinson Date: Wed, 12 May 2021 09:15:24 +0300 Subject: [PATCH 3/3] Restore old PM launches of SPIRITTAnnotations LIT tests Signed-off-by: Artem Gindinson --- llvm/test/Transforms/SPIRITTAnnotations/itt_atomic_load.ll | 1 + llvm/test/Transforms/SPIRITTAnnotations/itt_atomic_store.ll | 1 + llvm/test/Transforms/SPIRITTAnnotations/itt_barrier.ll | 1 + llvm/test/Transforms/SPIRITTAnnotations/itt_start_finish.ll | 1 + 4 files changed, 4 insertions(+) diff --git a/llvm/test/Transforms/SPIRITTAnnotations/itt_atomic_load.ll b/llvm/test/Transforms/SPIRITTAnnotations/itt_atomic_load.ll index f24b84e2288ae..409b7c1f7c1d1 100644 --- a/llvm/test/Transforms/SPIRITTAnnotations/itt_atomic_load.ll +++ b/llvm/test/Transforms/SPIRITTAnnotations/itt_atomic_load.ll @@ -5,6 +5,7 @@ ;; with following commands: ;; clang++ -fsycl -fsycl-device-only load.cpp -o load.bc +; RUN: opt < %s --SPIRITTAnnotations -S | FileCheck %s ; RUN: opt < %s --SPIRITTAnnotations -enable-new-pm=1 -S | FileCheck %s ; ModuleID = 'load.bc' diff --git a/llvm/test/Transforms/SPIRITTAnnotations/itt_atomic_store.ll b/llvm/test/Transforms/SPIRITTAnnotations/itt_atomic_store.ll index 35a764fb5b8ba..a469be93d7a24 100644 --- a/llvm/test/Transforms/SPIRITTAnnotations/itt_atomic_store.ll +++ b/llvm/test/Transforms/SPIRITTAnnotations/itt_atomic_store.ll @@ -5,6 +5,7 @@ ;; with following commands: ;; clang++ -fsycl -fsycl-device-only load.cpp -o load.bc +; RUN: opt < %s --SPIRITTAnnotations -S | FileCheck %s ; RUN: opt < %s --SPIRITTAnnotations -enable-new-pm=1 -S | FileCheck %s ; ModuleID = 'store.bc' diff --git a/llvm/test/Transforms/SPIRITTAnnotations/itt_barrier.ll b/llvm/test/Transforms/SPIRITTAnnotations/itt_barrier.ll index abd558cbbe516..09fe9c392dfa1 100644 --- a/llvm/test/Transforms/SPIRITTAnnotations/itt_barrier.ll +++ b/llvm/test/Transforms/SPIRITTAnnotations/itt_barrier.ll @@ -5,6 +5,7 @@ ;; with following commands: ;; clang++ -fsycl -fsycl-device-only kernel-and-program.cpp -o kernel_and_program_optimized.bc +; RUN: opt < %s --SPIRITTAnnotations -S | FileCheck %s ; RUN: opt < %s --SPIRITTAnnotations -enable-new-pm=1 -S | FileCheck %s ; ModuleID = 'kernel_and_program_optimized.bc' diff --git a/llvm/test/Transforms/SPIRITTAnnotations/itt_start_finish.ll b/llvm/test/Transforms/SPIRITTAnnotations/itt_start_finish.ll index 00baf01e608de..7051ec96322cd 100644 --- a/llvm/test/Transforms/SPIRITTAnnotations/itt_start_finish.ll +++ b/llvm/test/Transforms/SPIRITTAnnotations/itt_start_finish.ll @@ -1,6 +1,7 @@ ;; The test serves a purpose to check if work item start/finish annotations ;; are being added by SPIRITTAnnotations pass +; RUN: opt < %s --SPIRITTAnnotations -S | FileCheck %s ; RUN: opt < %s --SPIRITTAnnotations -enable-new-pm=1 -S | FileCheck %s ; ModuleID = 'synthetic.bc'