瀏覽代碼

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.");