Skip to content

Commit b9310af

Browse files
Decrease number of classes deriving from Program 4/n
Change-Id: I73a8616162b72e2dd29e4fa7facbd9bbe1932303 Signed-off-by: Maciej Dziuban <[email protected]>
1 parent 955aacc commit b9310af

File tree

3 files changed

+24
-48
lines changed

3 files changed

+24
-48
lines changed

unit_tests/compiler_interface/compiler_interface_tests.cpp

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,6 @@ class CompilerInterfaceTest : public DeviceFixture,
5656
DeviceFixture::SetUp();
5757

5858
retVal = CL_SUCCESS;
59-
MockProgram mockProgram;
6059

6160
// create the compiler interface
6261
pCompilerInterface.reset(new MockCompilerInterface());
@@ -287,14 +286,8 @@ TEST_F(CompilerInterfaceTest, CompileClToIr) {
287286
}
288287

289288
TEST_F(CompilerInterfaceTest, GivenProgramCreatedFromIrWhenCompileIsCalledThenIrFormatIsPreserved) {
290-
struct MockProgram : Program {
291-
using Program::isSpirV;
292-
using Program::pDevice;
293-
using Program::programBinaryType;
294-
};
295-
MockProgram prog;
289+
MockProgram prog(pContext, false);
296290
prog.programBinaryType = CL_PROGRAM_BINARY_TYPE_INTERMEDIATE;
297-
prog.pDevice = pContext->getDevice(0);
298291
prog.isSpirV = true;
299292
retVal = pCompilerInterface->compile(prog, inputArgs);
300293
EXPECT_EQ(CL_SUCCESS, retVal);

unit_tests/mocks/mock_program.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ class MockProgram : public Program {
4242
using Program::isKernelDebugEnabled;
4343
using Program::rebuildProgramFromIr;
4444
using Program::resolveProgramBinary;
45+
using Program::updateNonUniformFlag;
4546

4647
using Program::elfBinary;
4748
using Program::elfBinarySize;

unit_tests/program/program_nonuniform.cpp

Lines changed: 22 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -46,26 +46,8 @@
4646

4747
using namespace OCLRT;
4848

49-
struct ProgramMock : Program {
50-
void updateNonUniformFlag() {
51-
Program::updateNonUniformFlag();
52-
}
53-
54-
void updateNonUniformFlag(const Program **inputPrograms, uint32_t numInputPrograms) {
55-
Program::updateNonUniformFlag(inputPrograms, numInputPrograms);
56-
}
57-
58-
void setBuildOptions(const char *buildOptions) {
59-
options = buildOptions != nullptr ? buildOptions : "";
60-
}
61-
62-
void forceNonUniformFlag(bool flag) {
63-
this->allowNonUniform = flag;
64-
}
65-
};
66-
6749
TEST(ProgramNonUniform, UpdateAllowNonUniform) {
68-
ProgramMock pm;
50+
MockProgram pm;
6951
EXPECT_FALSE(pm.getAllowNonUniform());
7052
EXPECT_EQ(12u, pm.getProgramOptionVersion());
7153
pm.setBuildOptions(nullptr);
@@ -75,7 +57,7 @@ TEST(ProgramNonUniform, UpdateAllowNonUniform) {
7557
}
7658

7759
TEST(ProgramNonUniform, UpdateAllowNonUniform12) {
78-
ProgramMock pm;
60+
MockProgram pm;
7961
EXPECT_FALSE(pm.getAllowNonUniform());
8062
EXPECT_EQ(12u, pm.getProgramOptionVersion());
8163
pm.setBuildOptions("-cl-std=CL1.2");
@@ -85,7 +67,7 @@ TEST(ProgramNonUniform, UpdateAllowNonUniform12) {
8567
}
8668

8769
TEST(ProgramNonUniform, UpdateAllowNonUniform20) {
88-
ProgramMock pm;
70+
MockProgram pm;
8971
EXPECT_FALSE(pm.getAllowNonUniform());
9072
EXPECT_EQ(12u, pm.getProgramOptionVersion());
9173
pm.setBuildOptions("-cl-std=CL2.0");
@@ -95,7 +77,7 @@ TEST(ProgramNonUniform, UpdateAllowNonUniform20) {
9577
}
9678

9779
TEST(ProgramNonUniform, UpdateAllowNonUniform21) {
98-
ProgramMock pm;
80+
MockProgram pm;
9981
EXPECT_FALSE(pm.getAllowNonUniform());
10082
EXPECT_EQ(12u, pm.getProgramOptionVersion());
10183
pm.setBuildOptions("-cl-std=CL2.1");
@@ -105,7 +87,7 @@ TEST(ProgramNonUniform, UpdateAllowNonUniform21) {
10587
}
10688

10789
TEST(ProgramNonUniform, UpdateAllowNonUniform20UniformFlag) {
108-
ProgramMock pm;
90+
MockProgram pm;
10991
EXPECT_FALSE(pm.getAllowNonUniform());
11092
EXPECT_EQ(12u, pm.getProgramOptionVersion());
11193
pm.setBuildOptions("-cl-std=CL2.0 -cl-uniform-work-group-size");
@@ -115,7 +97,7 @@ TEST(ProgramNonUniform, UpdateAllowNonUniform20UniformFlag) {
11597
}
11698

11799
TEST(ProgramNonUniform, UpdateAllowNonUniform21UniformFlag) {
118-
ProgramMock pm;
100+
MockProgram pm;
119101
EXPECT_FALSE(pm.getAllowNonUniform());
120102
EXPECT_EQ(12u, pm.getProgramOptionVersion());
121103
pm.setBuildOptions("-cl-std=CL2.1 -cl-uniform-work-group-size");
@@ -125,7 +107,7 @@ TEST(ProgramNonUniform, UpdateAllowNonUniform21UniformFlag) {
125107
}
126108

127109
TEST(KernelNonUniform, GetAllowNonUniformFlag) {
128-
ProgramMock pm;
110+
MockProgram pm;
129111
KernelInfo ki;
130112
MockDevice d(*platformDevices[0]);
131113
struct KernelMock : Kernel {
@@ -135,38 +117,38 @@ TEST(KernelNonUniform, GetAllowNonUniformFlag) {
135117
};
136118

137119
KernelMock k{&pm, ki, d};
138-
pm.forceNonUniformFlag(false);
120+
pm.setAllowNonUniform(false);
139121
EXPECT_FALSE(k.getAllowNonUniform());
140-
pm.forceNonUniformFlag(true);
122+
pm.setAllowNonUniform(true);
141123
EXPECT_TRUE(k.getAllowNonUniform());
142-
pm.forceNonUniformFlag(false);
124+
pm.setAllowNonUniform(false);
143125
EXPECT_FALSE(k.getAllowNonUniform());
144126
}
145127

146128
TEST(ProgramNonUniform, UpdateAllowNonUniformOutcomeUniformFlag) {
147-
ProgramMock pm;
148-
ProgramMock pm1;
149-
ProgramMock pm2;
150-
const ProgramMock *inputPrograms[] = {&pm1, &pm2};
129+
MockProgram pm;
130+
MockProgram pm1;
131+
MockProgram pm2;
132+
const MockProgram *inputPrograms[] = {&pm1, &pm2};
151133
cl_uint numInputPrograms = 2;
152134

153-
pm1.forceNonUniformFlag(false);
154-
pm2.forceNonUniformFlag(false);
135+
pm1.setAllowNonUniform(false);
136+
pm2.setAllowNonUniform(false);
155137
pm.updateNonUniformFlag((const Program **)inputPrograms, numInputPrograms);
156138
EXPECT_FALSE(pm.getAllowNonUniform());
157139

158-
pm1.forceNonUniformFlag(false);
159-
pm2.forceNonUniformFlag(true);
140+
pm1.setAllowNonUniform(false);
141+
pm2.setAllowNonUniform(true);
160142
pm.updateNonUniformFlag((const Program **)inputPrograms, numInputPrograms);
161143
EXPECT_FALSE(pm.getAllowNonUniform());
162144

163-
pm1.forceNonUniformFlag(true);
164-
pm2.forceNonUniformFlag(false);
145+
pm1.setAllowNonUniform(true);
146+
pm2.setAllowNonUniform(false);
165147
pm.updateNonUniformFlag((const Program **)inputPrograms, numInputPrograms);
166148
EXPECT_FALSE(pm.getAllowNonUniform());
167149

168-
pm1.forceNonUniformFlag(true);
169-
pm2.forceNonUniformFlag(true);
150+
pm1.setAllowNonUniform(true);
151+
pm2.setAllowNonUniform(true);
170152
pm.updateNonUniformFlag((const Program **)inputPrograms, numInputPrograms);
171153
EXPECT_TRUE(pm.getAllowNonUniform());
172154
}

0 commit comments

Comments
 (0)