Skip to content

Commit ac8ab8f

Browse files
authored
[SYCL][L0] Fix specialization constants regression (#2324)
This was inadvertently introduced in ba47915. Signed-off-by: Greg Lueck <[email protected]>
1 parent 2e22ab8 commit ac8ab8f

File tree

1 file changed

+7
-8
lines changed

1 file changed

+7
-8
lines changed

sycl/plugins/level_zero/pi_level_zero.cpp

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2134,19 +2134,18 @@ static pi_result compileOrBuild(pi_program Program, pi_uint32 NumDevices,
21342134
// Specialization constants are used only if the program was created from
21352135
// IL. Translate them to the Level Zero format.
21362136
ze_module_constants_t ZeSpecConstants = {};
2137+
std::vector<uint32_t> ZeSpecContantsIds;
2138+
std::vector<uint64_t> ZeSpecContantsValues;
21372139
if (Program->State == _pi_program::IL) {
21382140
std::lock_guard<std::mutex> Guard(Program->MutexZeSpecConstants);
21392141

2140-
std::vector<uint32_t> ZeSpecContantsIds(Program->ZeSpecConstants.size());
2141-
std::vector<uint64_t> ZeSpecContantsValues(Program->ZeSpecConstants.size());
21422142
ZeSpecConstants.numConstants = Program->ZeSpecConstants.size();
2143-
auto ZeSpecContantsIdsIt = ZeSpecContantsIds.begin();
2144-
auto ZeSpecContantsValuesIt = ZeSpecContantsValues.begin();
2143+
ZeSpecContantsIds.reserve(ZeSpecConstants.numConstants);
2144+
ZeSpecContantsValues.reserve(ZeSpecConstants.numConstants);
2145+
21452146
for (auto &SpecConstant : Program->ZeSpecConstants) {
2146-
*ZeSpecContantsIdsIt = SpecConstant.first;
2147-
ZeSpecContantsIdsIt++;
2148-
*ZeSpecContantsValuesIt = SpecConstant.second;
2149-
ZeSpecContantsValuesIt++;
2147+
ZeSpecContantsIds.push_back(SpecConstant.first);
2148+
ZeSpecContantsValues.push_back(SpecConstant.second);
21502149
}
21512150
ZeSpecConstants.pConstantIds = ZeSpecContantsIds.data();
21522151
ZeSpecConstants.pConstantValues = ZeSpecContantsValues.data();

0 commit comments

Comments
 (0)