aboutsummaryrefslogtreecommitdiff
path: root/llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
diff options
context:
space:
mode:
authorKareem Ergawy <kareem.ergawy@amd.com>2024-12-12 14:39:58 +0100
committerGitHub <noreply@github.com>2024-12-12 14:39:58 +0100
commitf9734b9df15bc1eea84ef00973c2e5560e70c27d (patch)
tree3f5100f44b72d92ba9acd8acd7176b01e21bf08d /llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
parent6a9279ca407132eec848eb5c55c2222ce605df81 (diff)
downloadllvm-f9734b9df15bc1eea84ef00973c2e5560e70c27d.zip
llvm-f9734b9df15bc1eea84ef00973c2e5560e70c27d.tar.gz
llvm-f9734b9df15bc1eea84ef00973c2e5560e70c27d.tar.bz2
[mlir][OpenMP] - MLIR to LLVMIR translation support for delayed privatization of allocatables in `omp.target` ops (#116576)
This PR adds support to translate the `private` clause from MLIR to LLVMIR when used on allocatables in the context of an `omp.target` op. This replaces https://github.com/llvm/llvm-project/pull/113208. Parent PR: https://github.com/llvm/llvm-project/pull/116770. Only the latest commit is relevant to the PR.
Diffstat (limited to 'llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp')
-rw-r--r--llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp17
1 files changed, 15 insertions, 2 deletions
diff --git a/llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp b/llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
index 630cd03..d7ac108 100644
--- a/llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
+++ b/llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
@@ -6358,7 +6358,13 @@ TEST_F(OpenMPIRBuilderTest, TargetRegionDevice) {
auto *Load2 = Load1->getNextNode();
EXPECT_TRUE(isa<LoadInst>(Load2));
- auto *Value1 = Load2->getNextNode();
+ auto *OutlinedBlockBr = Load2->getNextNode();
+ EXPECT_TRUE(isa<BranchInst>(OutlinedBlockBr));
+
+ auto *OutlinedBlock = OutlinedBlockBr->getSuccessor(0);
+ EXPECT_EQ(OutlinedBlock->getName(), "outlined.body");
+
+ auto *Value1 = OutlinedBlock->getFirstNonPHI();
EXPECT_EQ(Value1, Value);
EXPECT_EQ(Value1->getNextNode(), TargetStore);
auto *Deinit = TargetStore->getNextNode();
@@ -6510,7 +6516,14 @@ TEST_F(OpenMPIRBuilderTest, ConstantAllocaRaise) {
EXPECT_EQ(UserCodeBlock->getName(), "user_code.entry");
auto *Load1 = UserCodeBlock->getFirstNonPHI();
EXPECT_TRUE(isa<LoadInst>(Load1));
- auto *Load2 = Load1->getNextNode();
+
+ auto *OutlinedBlockBr = Load1->getNextNode();
+ EXPECT_TRUE(isa<BranchInst>(OutlinedBlockBr));
+
+ auto *OutlinedBlock = OutlinedBlockBr->getSuccessor(0);
+ EXPECT_EQ(OutlinedBlock->getName(), "outlined.body");
+
+ auto *Load2 = OutlinedBlock->getFirstNonPHI();
EXPECT_TRUE(isa<LoadInst>(Load2));
EXPECT_EQ(Load2, Value);
EXPECT_EQ(Load2->getNextNode(), TargetStore);