@@ -76,28 +76,15 @@ struct DevDescT {
7676 std::string platVer;
7777};
7878
79- static void replaceSpecialCharacters (std::string &str) {
80- std::string lparen (" (" );
81- std::string rparen (" )" );
82- std::string esclparen (" \\ (" );
83- std::string escrparen (" \\ )" );
84- std::string period (" ." );
85- std::string escperiod (" \\ ." );
86-
87- size_t pos = 0 ;
88- while ((pos = str.find (lparen, pos)) != std::string::npos) {
89- str.replace (pos, lparen.size (), esclparen);
90- pos += esclparen.size ();
91- }
92- pos = 0 ;
93- while ((pos = str.find (rparen, pos)) != std::string::npos) {
94- str.replace (pos, rparen.size (), escrparen);
95- pos += escrparen.size ();
96- }
97- pos = 0 ;
98- while ((pos = str.find (period, pos)) != std::string::npos) {
99- str.replace (pos, period.size (), escperiod);
100- pos += escperiod.size ();
79+ static void addEscapeSymbolToSpecialCharacters (std::string &str) {
80+ std::vector<std::string> specialCharacters{" (" , " )" , " [" , " ]" , " ." };
81+ for (const auto &character : specialCharacters) {
82+ size_t pos = 0 ;
83+ while ((pos = str.find (character, pos)) != std::string::npos) {
84+ std::string modifiedCharacter (" \\ " + character);
85+ str.replace (pos, character.size (), modifiedCharacter);
86+ pos += modifiedCharacter.size ();
87+ }
10188 }
10289}
10390
@@ -201,7 +188,7 @@ int main() {
201188 for (const auto &dev : plt.get_devices ()) {
202189 if (dev.has (aspect::gpu)) {
203190 std::string name = dev.get_info <info::device::name>();
204- replaceSpecialCharacters (name);
191+ addEscapeSymbolToSpecialCharacters (name);
205192 std::string ver = dev.get_info <info::device::driver_version>();
206193 if ((plt.get_backend () == backend::opencl) &&
207194 (sycl_be.find (" OPENCL" ) != std::string::npos)) {
@@ -261,7 +248,7 @@ int main() {
261248 for (const auto &plt : platform::get_platforms ()) {
262249 if (plt.has (aspect::gpu)) {
263250 std::string name = plt.get_info <info::platform::name>();
264- replaceSpecialCharacters (name);
251+ addEscapeSymbolToSpecialCharacters (name);
265252 std::string ver = plt.get_info <info::platform::version>();
266253 if (((plt.get_backend () == backend::opencl) &&
267254 (sycl_be.find (" OPENCL" ) != std::string::npos)) ||
@@ -317,7 +304,7 @@ int main() {
317304 for (const auto &dev : plt.get_devices ()) {
318305 if (dev.has (aspect::gpu)) {
319306 std::string name = dev.get_info <info::device::name>();
320- replaceSpecialCharacters (name);
307+ addEscapeSymbolToSpecialCharacters (name);
321308 std::string ver (" 98.76.54321" );
322309 if (((plt.get_backend () == backend::opencl) &&
323310 (sycl_be.find (" OPENCL" ) != std::string::npos)) ||
@@ -371,7 +358,7 @@ int main() {
371358 for (const auto &plt : platform::get_platforms ()) {
372359 if (plt.has (aspect::gpu)) {
373360 std::string name = plt.get_info <info::platform::name>();
374- replaceSpecialCharacters (name);
361+ addEscapeSymbolToSpecialCharacters (name);
375362 if ((plt.get_backend () == backend::opencl) &&
376363 (sycl_be.find (" OPENCL" ) != std::string::npos)) {
377364 std::string ver (" OpenCL 12.34" );
@@ -430,7 +417,7 @@ int main() {
430417 for (const auto &dev : plt.get_devices ()) {
431418 if (dev.has (aspect::gpu)) {
432419 std::string name = dev.get_info <info::device::name>();
433- replaceSpecialCharacters (name);
420+ addEscapeSymbolToSpecialCharacters (name);
434421 std::string ver = dev.get_info <info::device::driver_version>();
435422 size_t pos = 0 ;
436423 if ((pos = ver.find (" ." )) == std::string::npos) {
@@ -498,7 +485,7 @@ int main() {
498485 for (const auto &dev : plt.get_devices ()) {
499486 if (dev.has (aspect::gpu)) {
500487 std::string name = dev.get_info <info::device::name>();
501- replaceSpecialCharacters (name);
488+ addEscapeSymbolToSpecialCharacters (name);
502489 if (((plt.get_backend () == backend::opencl) &&
503490 (sycl_be.find (" OPENCL" ) != std::string::npos)) ||
504491 ((plt.get_backend () == backend::level_zero) &&
@@ -547,7 +534,7 @@ int main() {
547534 for (const auto &plt : platform::get_platforms ()) {
548535 if (plt.has (aspect::gpu)) {
549536 std::string name = plt.get_info <info::platform::name>();
550- replaceSpecialCharacters (name);
537+ addEscapeSymbolToSpecialCharacters (name);
551538 if (((plt.get_backend () == backend::opencl) &&
552539 (sycl_be.find (" OPENCL" ) != std::string::npos)) ||
553540 ((plt.get_backend () == backend::level_zero) &&
@@ -599,7 +586,7 @@ int main() {
599586 for (const auto &dev : plt.get_devices ()) {
600587 if (dev.has (aspect::gpu)) {
601588 std::string name = dev.get_info <info::device::name>();
602- replaceSpecialCharacters (name);
589+ addEscapeSymbolToSpecialCharacters (name);
603590 std::string ver = dev.get_info <info::device::driver_version>();
604591 if (((plt.get_backend () == backend::opencl) &&
605592 (sycl_be.find (" OPENCL" ) != std::string::npos)) ||
@@ -662,7 +649,7 @@ int main() {
662649 for (const auto &dev : plt.get_devices ()) {
663650 if (dev.has (aspect::gpu)) {
664651 std::string name = dev.get_info <info::device::name>();
665- replaceSpecialCharacters (name);
652+ addEscapeSymbolToSpecialCharacters (name);
666653 if (((plt.get_backend () == backend::opencl) &&
667654 (sycl_be.find (" OPENCL" ) != std::string::npos)) ||
668655 ((plt.get_backend () == backend::level_zero) &&
@@ -715,7 +702,7 @@ int main() {
715702 for (const auto &plt : platform::get_platforms ()) {
716703 if (plt.has (aspect::gpu)) {
717704 std::string name = plt.get_info <info::platform::name>();
718- replaceSpecialCharacters (name);
705+ addEscapeSymbolToSpecialCharacters (name);
719706 if (((plt.get_backend () == backend::opencl) &&
720707 (sycl_be.find (" OPENCL" ) != std::string::npos)) ||
721708 ((plt.get_backend () == backend::level_zero) &&
@@ -768,7 +755,7 @@ int main() {
768755 for (const auto &dev : plt.get_devices ()) {
769756 if (dev.has (aspect::gpu)) {
770757 std::string name = dev.get_info <info::device::name>();
771- replaceSpecialCharacters (name);
758+ addEscapeSymbolToSpecialCharacters (name);
772759 std::string ver = dev.get_info <info::device::driver_version>();
773760 if (((plt.get_backend () == backend::opencl) &&
774761 (sycl_be.find (" OPENCL" ) != std::string::npos)) ||
@@ -823,7 +810,7 @@ int main() {
823810 for (const auto &plt : platform::get_platforms ()) {
824811 if (plt.has (aspect::gpu)) {
825812 std::string name = plt.get_info <info::platform::name>();
826- replaceSpecialCharacters (name);
813+ addEscapeSymbolToSpecialCharacters (name);
827814 std::string ver = plt.get_info <info::platform::version>();
828815 if (((plt.get_backend () == backend::opencl) &&
829816 (sycl_be.find (" OPENCL" ) != std::string::npos)) ||
0 commit comments