소스 검색

Check hasName before getName for StructType. (#2678)

Xiang Li 5 년 전
부모
커밋
9e88903d42
1개의 변경된 파일4개의 추가작업 그리고 0개의 파일을 삭제
  1. 4 0
      lib/DXIL/DxilUtil.cpp

+ 4 - 0
lib/DXIL/DxilUtil.cpp

@@ -497,6 +497,8 @@ static bool ConsumePrefix(StringRef &Str, StringRef Prefix) {
 
 bool IsHLSLResourceType(llvm::Type *Ty) {
   if (llvm::StructType *ST = dyn_cast<llvm::StructType>(Ty)) {
+    if (!ST->hasName())
+      return false;
     StringRef name = ST->getName();
     ConsumePrefix(name, "class.");
     ConsumePrefix(name, "struct.");
@@ -589,6 +591,8 @@ bool IsHLSLObjectType(llvm::Type *Ty) {
 
 bool IsHLSLRayQueryType(llvm::Type *Ty) {
   if (llvm::StructType *ST = dyn_cast<llvm::StructType>(Ty)) {
+    if (!ST->hasName())
+      return false;
     StringRef name = ST->getName();
     // TODO: don't check names.
     ConsumePrefix(name, "class.");