@@ -478,19 +478,22 @@ bool oclIsBuiltin(StringRef Name, StringRef &DemangledName, bool IsCpp) {
478
478
size_t DemangledNameLenStart = NameSpaceStart + 11 ;
479
479
size_t Start = Name.find_first_not_of (" 0123456789" , DemangledNameLenStart);
480
480
size_t Len = 0 ;
481
- if (Name.substr (DemangledNameLenStart, Start - DemangledNameLenStart)
482
- .getAsInteger (10 , Len)) {
483
- SPIRVDBG ( errs () << " Error in extracting integer value " );
484
- return false ;
481
+ if (! Name.substr (DemangledNameLenStart, Start - DemangledNameLenStart)
482
+ .getAsInteger (10 , Len)) {
483
+ DemangledName = Name. substr (Start, Len );
484
+ return true ;
485
485
}
486
+ SPIRVDBG (errs () << " Error in extracting integer value" );
487
+ return false ;
488
+ }
489
+ size_t Start = Name.find_first_not_of (" 0123456789" , 2 );
490
+ size_t Len = 0 ;
491
+ if (!Name.substr (2 , Start - 2 ).getAsInteger (10 , Len)) {
486
492
DemangledName = Name.substr (Start, Len);
487
- } else {
488
- size_t Start = Name.find_first_not_of (" 0123456789" , 2 );
489
- size_t Len = 0 ;
490
- Name.substr (2 , Start - 2 ).getAsInteger (10 , Len);
491
- DemangledName = Name.substr (Start, Len);
493
+ return true ;
492
494
}
493
- return DemangledName.size () != 0 ;
495
+ SPIRVDBG (errs () << " Error in extracting integer value" );
496
+ return false ;
494
497
}
495
498
496
499
// Check if a mangled type Name is unsigned
0 commit comments