[llvm-branch-commits] [llvm] 524f246 - Revert "[llvm-debuginfo-analyzer] Fix missed 'else' in LVCodeViewReader and …"

via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Wed Apr 8 22:10:07 PDT 2026


Author: Carlos Alberto Enciso
Date: 2026-04-09T06:10:03+01:00
New Revision: 524f246f77585dc471faa75562fa26ea55290736

URL: https://github.com/llvm/llvm-project/commit/524f246f77585dc471faa75562fa26ea55290736
DIFF: https://github.com/llvm/llvm-project/commit/524f246f77585dc471faa75562fa26ea55290736.diff

LOG: Revert "[llvm-debuginfo-analyzer] Fix missed 'else'  in LVCodeViewReader and …"

This reverts commit 82aee4c03a0a6e3ab616b5253edf79b48e013b71.

Added: 
    

Modified: 
    llvm/lib/DebugInfo/LogicalView/Readers/LVCodeViewReader.cpp
    llvm/lib/DebugInfo/LogicalView/Readers/LVDWARFReader.cpp
    llvm/unittests/DebugInfo/LogicalView/DWARFReaderTest.cpp

Removed: 
    


################################################################################
diff  --git a/llvm/lib/DebugInfo/LogicalView/Readers/LVCodeViewReader.cpp b/llvm/lib/DebugInfo/LogicalView/Readers/LVCodeViewReader.cpp
index 95ce3fd02ad8c..2ff70816b4bf1 100644
--- a/llvm/lib/DebugInfo/LogicalView/Readers/LVCodeViewReader.cpp
+++ b/llvm/lib/DebugInfo/LogicalView/Readers/LVCodeViewReader.cpp
@@ -1183,11 +1183,13 @@ Error LVCodeViewReader::loadTargetInfo(const ObjectFile &Obj) {
   TT.setOS(Triple::UnknownOS);
 
   // Features to be passed to target/subtarget
+  Expected<SubtargetFeatures> Features = Obj.getFeatures();
   SubtargetFeatures FeaturesValue;
-  if (Expected<SubtargetFeatures> Features = Obj.getFeatures())
-    FeaturesValue = std::move(*Features);
-  else
+  if (!Features) {
     consumeError(Features.takeError());
+    FeaturesValue = SubtargetFeatures();
+  }
+  FeaturesValue = *Features;
 
   StringRef CPU;
   if (auto OptCPU = Obj.tryGetCPUName())

diff  --git a/llvm/lib/DebugInfo/LogicalView/Readers/LVDWARFReader.cpp b/llvm/lib/DebugInfo/LogicalView/Readers/LVDWARFReader.cpp
index 9e0d5389e87bd..772d821dcda81 100644
--- a/llvm/lib/DebugInfo/LogicalView/Readers/LVDWARFReader.cpp
+++ b/llvm/lib/DebugInfo/LogicalView/Readers/LVDWARFReader.cpp
@@ -962,11 +962,13 @@ Error LVDWARFReader::loadTargetInfo(const ObjectFile &Obj) {
   Triple TT = Obj.makeTriple();
 
   // Features to be passed to target/subtarget
+  Expected<SubtargetFeatures> Features = Obj.getFeatures();
   SubtargetFeatures FeaturesValue;
-  if (Expected<SubtargetFeatures> Features = Obj.getFeatures())
-    FeaturesValue = std::move(*Features);
-  else
+  if (!Features) {
     consumeError(Features.takeError());
+    FeaturesValue = SubtargetFeatures();
+  }
+  FeaturesValue = *Features;
 
   StringRef CPU;
   if (auto OptCPU = Obj.tryGetCPUName())

diff  --git a/llvm/unittests/DebugInfo/LogicalView/DWARFReaderTest.cpp b/llvm/unittests/DebugInfo/LogicalView/DWARFReaderTest.cpp
index 5a5497dc78720..fb728c8c22e77 100644
--- a/llvm/unittests/DebugInfo/LogicalView/DWARFReaderTest.cpp
+++ b/llvm/unittests/DebugInfo/LogicalView/DWARFReaderTest.cpp
@@ -13,13 +13,11 @@
 #include "llvm/DebugInfo/LogicalView/Core/LVType.h"
 #include "llvm/DebugInfo/LogicalView/LVReaderHandler.h"
 #include "llvm/MC/TargetRegistry.h"
-#include "llvm/ObjectYAML/yaml2obj.h"
 #include "llvm/Support/COM.h"
 #include "llvm/Support/InitLLVM.h"
 #include "llvm/Support/ScopedPrinter.h"
 #include "llvm/Support/TargetSelect.h"
 #include "llvm/Support/ToolOutputFile.h"
-#include "llvm/Support/YAMLTraits.h"
 #include "llvm/Testing/Support/Error.h"
 
 #include "gtest/gtest.h"
@@ -57,8 +55,7 @@ std::unique_ptr<LVReader> createReader(LVReaderHandler &ReaderHandler,
                                        SmallString<128> &InputsDir,
                                        StringRef Filename) {
   SmallString<128> ObjectName(InputsDir);
-  if (Filename != "")
-    llvm::sys::path::append(ObjectName, Filename);
+  llvm::sys::path::append(ObjectName, Filename);
 
   Expected<std::unique_ptr<LVReader>> ReaderOrErr =
       ReaderHandler.createReader(std::string(ObjectName));
@@ -419,75 +416,4 @@ TEST(LogicalViewTest, DWARFReader) {
   compareElements(InputsDir);
 }
 
-bool CreateTempBrokenFile(SmallString<128> &TempPath) {
-  // create broken, but syntax correct Yaml file
-  // 0x41 - version of format
-  // 0x05000000 - length of section, false equal to 5 byte
-  StringRef Yaml = R"(
---- !ELF
-FileHeader:
-  Class:   ELFCLASS64
-  Data:    ELFDATA2LSB
-  Type:    ET_REL
-  Machine: EM_RISCV
-Sections:
-  - Name:            .riscv.attributes
-    Type:            SHT_RISCV_ATTRIBUTES
-    Content:         4105000000
-DWARF:
-  debug_abbrev:
-    - Table:
-        - Code:            1
-          Tag:             DW_TAG_compile_unit
-          Children:        DW_CHILDREN_no
-)";
-
-  int FD;
-  sys::fs::createTemporaryFile("test-broken-dwarf", "", FD, TempPath);
-  raw_fd_ostream OS(FD, /*shouldClose=*/true);
-
-  llvm::yaml::Input YIn(Yaml);
-  const bool Success = llvm::yaml::convertYAML(
-      YIn, OS, [](const Twine &Msg) { FAIL() << Msg.str(); });
-  if (!Success)
-    return false;
-  OS.flush();
-
-  return true;
-}
-
-TEST(LogicalViewTest, DWARFReader_ReadBrokenFile) {
-  // Initialize targets and assembly printers/parsers.
-  llvm::InitializeAllTargetInfos();
-  llvm::InitializeAllTargetMCs();
-  InitializeAllDisassemblers();
-
-  llvm::sys::InitializeCOMRAII COM(llvm::sys::COMThreadingMode::MultiThreaded);
-
-  // This test requires a x86-registered-target.
-  Triple TT;
-  TT.setArch(Triple::riscv64);
-  TT.setVendor(Triple::UnknownVendor);
-  TT.setOS(Triple::UnknownOS);
-
-  std::string TargetLookupError;
-  if (!TargetRegistry::lookupTarget(TT, TargetLookupError))
-    GTEST_SKIP();
-
-  // Reader options.
-  LVOptions ReaderOptions;
-  std::vector<std::string> Objects;
-  ScopedPrinter W(outs());
-  LVReaderHandler ReaderHandler(Objects, W, ReaderOptions);
-
-  SmallString<128> TempPath;
-  if (!CreateTempBrokenFile(TempPath))
-    GTEST_SKIP();
-
-  // Check logical elements properties.
-  std::unique_ptr<LVReader> Reader = createReader(ReaderHandler, TempPath, "");
-
-  sys::fs::remove(TempPath);
-}
-
 } // namespace


        


More information about the llvm-branch-commits mailing list