From e0308279cbdd18391c533d6501922429ff4ef839 Mon Sep 17 00:00:00 2001 From: Francis Visoiu Mistrih Date: Wed, 3 Jul 2019 22:40:07 +0000 Subject: [PATCH] [Bitcode] Move Bitstream to a separate library This moves Bitcode/Bitstream*, Bitcode/BitCodes.h to Bitstream/. This is needed to avoid a circular dependency when using the bitstream code for parsing optimization remarks. Since Bitcode uses Core for the IR part: libLLVMRemarks -> Bitcode -> Core and Core uses libLLVMRemarks to generate remarks (see IR/RemarkStreamer.cpp): Core -> libLLVMRemarks we need to separate the Bitstream and Bitcode part. For clang-doc, it seems that it doesn't need the whole bitcode layer, so I updated the CMake to only use the bitstream part. Differential Revision: https://reviews.llvm.org/D63899 llvm-svn: 365091 --- clang-tools-extra/clang-doc/BitcodeReader.h | 2 +- clang-tools-extra/clang-doc/BitcodeWriter.h | 2 +- clang-tools-extra/clang-doc/CMakeLists.txt | 3 +-- .../unittests/clang-doc/BitcodeTest.cpp | 4 ++-- .../unittests/clang-doc/CMakeLists.txt | 3 +-- .../Frontend/SerializedDiagnosticPrinter.h | 2 +- .../Frontend/SerializedDiagnosticReader.h | 2 +- .../clang/Frontend/SerializedDiagnostics.h | 2 +- .../include/clang/Serialization/ASTBitCodes.h | 2 +- clang/include/clang/Serialization/ASTReader.h | 2 +- clang/include/clang/Serialization/ASTWriter.h | 2 +- clang/include/clang/Serialization/Module.h | 2 +- .../ObjectFilePCHContainerOperations.cpp | 2 +- clang/lib/Frontend/ASTUnit.cpp | 2 +- clang/lib/Frontend/CMakeLists.txt | 1 + .../Frontend/SerializedDiagnosticReader.cpp | 4 ++-- .../lib/Frontend/TestModuleFileExtension.cpp | 2 +- clang/lib/Frontend/TestModuleFileExtension.h | 2 +- clang/lib/Serialization/ASTReader.cpp | 2 +- clang/lib/Serialization/ASTReaderDecl.cpp | 2 +- clang/lib/Serialization/ASTReaderStmt.cpp | 2 +- clang/lib/Serialization/ASTWriter.cpp | 4 ++-- clang/lib/Serialization/ASTWriterDecl.cpp | 2 +- clang/lib/Serialization/ASTWriterStmt.cpp | 2 +- clang/lib/Serialization/CMakeLists.txt | 1 + clang/lib/Serialization/GeneratePCH.cpp | 2 +- clang/lib/Serialization/GlobalModuleIndex.cpp | 4 ++-- .../Serialization/PCHContainerOperations.cpp | 2 +- clang/tools/libclang/CXLoadedDiagnostic.cpp | 2 +- clang/unittests/Serialization/CMakeLists.txt | 1 + llvm/include/llvm/Bitcode/BitcodeReader.h | 2 +- llvm/include/llvm/Bitcode/LLVMBitCodes.h | 2 +- .../llvm/{Bitcode => Bitstream}/BitCodes.h | 10 ++++---- .../{Bitcode => Bitstream}/BitstreamReader.h | 8 +++---- .../{Bitcode => Bitstream}/BitstreamWriter.h | 6 ++--- llvm/include/llvm/Support/JSON.h | 2 +- llvm/lib/Bitcode/Reader/BitcodeReader.cpp | 2 +- llvm/lib/Bitcode/Reader/CMakeLists.txt | 1 - llvm/lib/Bitcode/Reader/LLVMBuild.txt | 2 +- llvm/lib/Bitcode/Reader/MetadataLoader.cpp | 2 +- llvm/lib/Bitcode/Writer/BitcodeWriter.cpp | 4 ++-- llvm/lib/Bitstream/CMakeLists.txt | 2 ++ llvm/lib/Bitstream/LLVMBuild.txt | 23 +++++++++++++++++++ .../Reader/BitstreamReader.cpp | 2 +- llvm/lib/Bitstream/Reader/CMakeLists.txt | 7 ++++++ llvm/lib/Bitstream/Reader/LLVMBuild.txt | 21 +++++++++++++++++ llvm/lib/CMakeLists.txt | 1 + llvm/lib/LLVMBuild.txt | 1 + llvm/tools/llvm-bcanalyzer/CMakeLists.txt | 1 + llvm/tools/llvm-bcanalyzer/LLVMBuild.txt | 2 +- .../tools/llvm-bcanalyzer/llvm-bcanalyzer.cpp | 2 +- llvm/unittests/Bitcode/CMakeLists.txt | 2 -- .../BitstreamReaderTest.cpp | 4 ++-- .../BitstreamWriterTest.cpp | 2 +- llvm/unittests/Bitstream/CMakeLists.txt | 8 +++++++ llvm/unittests/CMakeLists.txt | 1 + llvm/utils/GenLibDeps.pl | 4 ++++ 57 files changed, 129 insertions(+), 62 deletions(-) rename llvm/include/llvm/{Bitcode => Bitstream}/BitCodes.h (96%) rename llvm/include/llvm/{Bitcode => Bitstream}/BitstreamReader.h (99%) rename llvm/include/llvm/{Bitcode => Bitstream}/BitstreamWriter.h (99%) create mode 100644 llvm/lib/Bitstream/CMakeLists.txt create mode 100644 llvm/lib/Bitstream/LLVMBuild.txt rename llvm/lib/{Bitcode => Bitstream}/Reader/BitstreamReader.cpp (99%) create mode 100644 llvm/lib/Bitstream/Reader/CMakeLists.txt create mode 100644 llvm/lib/Bitstream/Reader/LLVMBuild.txt rename llvm/unittests/{Bitcode => Bitstream}/BitstreamReaderTest.cpp (98%) rename llvm/unittests/{Bitcode => Bitstream}/BitstreamWriterTest.cpp (97%) create mode 100644 llvm/unittests/Bitstream/CMakeLists.txt diff --git a/clang-tools-extra/clang-doc/BitcodeReader.h b/clang-tools-extra/clang-doc/BitcodeReader.h index 2642a2c7371f..18b9521c32ea 100644 --- a/clang-tools-extra/clang-doc/BitcodeReader.h +++ b/clang-tools-extra/clang-doc/BitcodeReader.h @@ -20,7 +20,7 @@ #include "clang/AST/AST.h" #include "llvm/ADT/Optional.h" #include "llvm/ADT/SmallVector.h" -#include "llvm/Bitcode/BitstreamReader.h" +#include "llvm/Bitstream/BitstreamReader.h" #include "llvm/Support/Error.h" namespace clang { diff --git a/clang-tools-extra/clang-doc/BitcodeWriter.h b/clang-tools-extra/clang-doc/BitcodeWriter.h index c342d34f9f17..a55bdd90f0d9 100644 --- a/clang-tools-extra/clang-doc/BitcodeWriter.h +++ b/clang-tools-extra/clang-doc/BitcodeWriter.h @@ -20,7 +20,7 @@ #include "llvm/ADT/DenseMap.h" #include "llvm/ADT/SmallVector.h" #include "llvm/ADT/StringRef.h" -#include "llvm/Bitcode/BitstreamWriter.h" +#include "llvm/Bitstream/BitstreamWriter.h" #include #include diff --git a/clang-tools-extra/clang-doc/CMakeLists.txt b/clang-tools-extra/clang-doc/CMakeLists.txt index 1d70bb08feaa..a2123989e549 100644 --- a/clang-tools-extra/clang-doc/CMakeLists.txt +++ b/clang-tools-extra/clang-doc/CMakeLists.txt @@ -1,7 +1,6 @@ set(LLVM_LINK_COMPONENTS support - BitReader - BitWriter + BitstreamReader ) add_clang_library(clangDoc diff --git a/clang-tools-extra/unittests/clang-doc/BitcodeTest.cpp b/clang-tools-extra/unittests/clang-doc/BitcodeTest.cpp index a22f8af73949..c2bfd6325c2b 100644 --- a/clang-tools-extra/unittests/clang-doc/BitcodeTest.cpp +++ b/clang-tools-extra/unittests/clang-doc/BitcodeTest.cpp @@ -10,8 +10,8 @@ #include "BitcodeWriter.h" #include "ClangDocTest.h" #include "Representation.h" -#include "llvm/Bitcode/BitstreamReader.h" -#include "llvm/Bitcode/BitstreamWriter.h" +#include "llvm/Bitstream/BitstreamReader.h" +#include "llvm/Bitstream/BitstreamWriter.h" #include "gtest/gtest.h" namespace clang { diff --git a/clang-tools-extra/unittests/clang-doc/CMakeLists.txt b/clang-tools-extra/unittests/clang-doc/CMakeLists.txt index 11331acdcaca..7e3746fa8d16 100644 --- a/clang-tools-extra/unittests/clang-doc/CMakeLists.txt +++ b/clang-tools-extra/unittests/clang-doc/CMakeLists.txt @@ -1,7 +1,6 @@ set(LLVM_LINK_COMPONENTS support - BitReader - BitWriter + BitstreamReader ) get_filename_component(CLANG_DOC_SOURCE_DIR diff --git a/clang/include/clang/Frontend/SerializedDiagnosticPrinter.h b/clang/include/clang/Frontend/SerializedDiagnosticPrinter.h index 5c1ff7a0315b..58954dc6bafa 100644 --- a/clang/include/clang/Frontend/SerializedDiagnosticPrinter.h +++ b/clang/include/clang/Frontend/SerializedDiagnosticPrinter.h @@ -11,7 +11,7 @@ #include "clang/Basic/LLVM.h" #include "clang/Frontend/SerializedDiagnostics.h" -#include "llvm/Bitcode/BitstreamWriter.h" +#include "llvm/Bitstream/BitstreamWriter.h" namespace llvm { class raw_ostream; diff --git a/clang/include/clang/Frontend/SerializedDiagnosticReader.h b/clang/include/clang/Frontend/SerializedDiagnosticReader.h index 7b3a6dbac18b..309e0abb1461 100644 --- a/clang/include/clang/Frontend/SerializedDiagnosticReader.h +++ b/clang/include/clang/Frontend/SerializedDiagnosticReader.h @@ -10,7 +10,7 @@ #define LLVM_CLANG_FRONTEND_SERIALIZEDDIAGNOSTICREADER_H #include "clang/Basic/LLVM.h" -#include "llvm/Bitcode/BitstreamReader.h" +#include "llvm/Bitstream/BitstreamReader.h" #include "llvm/ADT/StringRef.h" #include "llvm/Support/ErrorOr.h" #include diff --git a/clang/include/clang/Frontend/SerializedDiagnostics.h b/clang/include/clang/Frontend/SerializedDiagnostics.h index 6ffcf520bcf9..4e67fd13ac5b 100644 --- a/clang/include/clang/Frontend/SerializedDiagnostics.h +++ b/clang/include/clang/Frontend/SerializedDiagnostics.h @@ -9,7 +9,7 @@ #ifndef LLVM_CLANG_FRONTEND_SERIALIZE_DIAGNOSTICS_H_ #define LLVM_CLANG_FRONTEND_SERIALIZE_DIAGNOSTICS_H_ -#include "llvm/Bitcode/BitCodes.h" +#include "llvm/Bitstream/BitCodes.h" namespace clang { namespace serialized_diags { diff --git a/clang/include/clang/Serialization/ASTBitCodes.h b/clang/include/clang/Serialization/ASTBitCodes.h index ff5039ff6cc1..ee545c7186ad 100644 --- a/clang/include/clang/Serialization/ASTBitCodes.h +++ b/clang/include/clang/Serialization/ASTBitCodes.h @@ -23,7 +23,7 @@ #include "clang/Basic/OperatorKinds.h" #include "clang/Basic/SourceLocation.h" #include "llvm/ADT/DenseMapInfo.h" -#include "llvm/Bitcode/BitCodes.h" +#include "llvm/Bitstream/BitCodes.h" #include #include diff --git a/clang/include/clang/Serialization/ASTReader.h b/clang/include/clang/Serialization/ASTReader.h index b299947c18ec..37bea48d8846 100644 --- a/clang/include/clang/Serialization/ASTReader.h +++ b/clang/include/clang/Serialization/ASTReader.h @@ -56,7 +56,7 @@ #include "llvm/ADT/StringRef.h" #include "llvm/ADT/iterator.h" #include "llvm/ADT/iterator_range.h" -#include "llvm/Bitcode/BitstreamReader.h" +#include "llvm/Bitstream/BitstreamReader.h" #include "llvm/Support/Casting.h" #include "llvm/Support/Endian.h" #include "llvm/Support/MemoryBuffer.h" diff --git a/clang/include/clang/Serialization/ASTWriter.h b/clang/include/clang/Serialization/ASTWriter.h index 1a87be231dd7..76bd874fb012 100644 --- a/clang/include/clang/Serialization/ASTWriter.h +++ b/clang/include/clang/Serialization/ASTWriter.h @@ -36,7 +36,7 @@ #include "llvm/ADT/SetVector.h" #include "llvm/ADT/SmallVector.h" #include "llvm/ADT/StringRef.h" -#include "llvm/Bitcode/BitstreamWriter.h" +#include "llvm/Bitstream/BitstreamWriter.h" #include #include #include diff --git a/clang/include/clang/Serialization/Module.h b/clang/include/clang/Serialization/Module.h index ebaaeea29a9b..1979c53a7133 100644 --- a/clang/include/clang/Serialization/Module.h +++ b/clang/include/clang/Serialization/Module.h @@ -24,7 +24,7 @@ #include "llvm/ADT/SetVector.h" #include "llvm/ADT/SmallVector.h" #include "llvm/ADT/StringRef.h" -#include "llvm/Bitcode/BitstreamReader.h" +#include "llvm/Bitstream/BitstreamReader.h" #include "llvm/Support/Endian.h" #include #include diff --git a/clang/lib/CodeGen/ObjectFilePCHContainerOperations.cpp b/clang/lib/CodeGen/ObjectFilePCHContainerOperations.cpp index db6e73f40977..15a2ab99fdac 100644 --- a/clang/lib/CodeGen/ObjectFilePCHContainerOperations.cpp +++ b/clang/lib/CodeGen/ObjectFilePCHContainerOperations.cpp @@ -21,7 +21,7 @@ #include "clang/Lex/HeaderSearch.h" #include "clang/Lex/Preprocessor.h" #include "llvm/ADT/StringRef.h" -#include "llvm/Bitcode/BitstreamReader.h" +#include "llvm/Bitstream/BitstreamReader.h" #include "llvm/DebugInfo/DWARF/DWARFContext.h" #include "llvm/IR/Constants.h" #include "llvm/IR/DataLayout.h" diff --git a/clang/lib/Frontend/ASTUnit.cpp b/clang/lib/Frontend/ASTUnit.cpp index ee36caaebcef..7445a94cfe59 100644 --- a/clang/lib/Frontend/ASTUnit.cpp +++ b/clang/lib/Frontend/ASTUnit.cpp @@ -75,7 +75,7 @@ #include "llvm/ADT/StringSet.h" #include "llvm/ADT/Twine.h" #include "llvm/ADT/iterator_range.h" -#include "llvm/Bitcode/BitstreamWriter.h" +#include "llvm/Bitstream/BitstreamWriter.h" #include "llvm/Support/Allocator.h" #include "llvm/Support/Casting.h" #include "llvm/Support/CrashRecoveryContext.h" diff --git a/clang/lib/Frontend/CMakeLists.txt b/clang/lib/Frontend/CMakeLists.txt index c23ab1e7fe5a..fbc3487d435c 100644 --- a/clang/lib/Frontend/CMakeLists.txt +++ b/clang/lib/Frontend/CMakeLists.txt @@ -2,6 +2,7 @@ add_subdirectory(Rewrite) set(LLVM_LINK_COMPONENTS BitReader + BitstreamReader Option ProfileData Support diff --git a/clang/lib/Frontend/SerializedDiagnosticReader.cpp b/clang/lib/Frontend/SerializedDiagnosticReader.cpp index c60dd6c1ef85..045d757adbf8 100644 --- a/clang/lib/Frontend/SerializedDiagnosticReader.cpp +++ b/clang/lib/Frontend/SerializedDiagnosticReader.cpp @@ -13,8 +13,8 @@ #include "llvm/ADT/Optional.h" #include "llvm/ADT/SmallVector.h" #include "llvm/ADT/StringRef.h" -#include "llvm/Bitcode/BitCodes.h" -#include "llvm/Bitcode/BitstreamReader.h" +#include "llvm/Bitstream/BitCodes.h" +#include "llvm/Bitstream/BitstreamReader.h" #include "llvm/Support/Compiler.h" #include "llvm/Support/ErrorHandling.h" #include "llvm/Support/ErrorOr.h" diff --git a/clang/lib/Frontend/TestModuleFileExtension.cpp b/clang/lib/Frontend/TestModuleFileExtension.cpp index f8ed341934ce..354aa7f5cd3f 100644 --- a/clang/lib/Frontend/TestModuleFileExtension.cpp +++ b/clang/lib/Frontend/TestModuleFileExtension.cpp @@ -9,7 +9,7 @@ #include "clang/Frontend/FrontendDiagnostic.h" #include "clang/Serialization/ASTReader.h" #include "llvm/ADT/Hashing.h" -#include "llvm/Bitcode/BitstreamWriter.h" +#include "llvm/Bitstream/BitstreamWriter.h" #include "llvm/Support/raw_ostream.h" #include using namespace clang; diff --git a/clang/lib/Frontend/TestModuleFileExtension.h b/clang/lib/Frontend/TestModuleFileExtension.h index 6c28e9cb68a7..13e090783b11 100644 --- a/clang/lib/Frontend/TestModuleFileExtension.h +++ b/clang/lib/Frontend/TestModuleFileExtension.h @@ -11,7 +11,7 @@ #include "clang/Serialization/ModuleFileExtension.h" #include "clang/Basic/LLVM.h" #include "llvm/ADT/StringRef.h" -#include "llvm/Bitcode/BitstreamReader.h" +#include "llvm/Bitstream/BitstreamReader.h" #include namespace clang { diff --git a/clang/lib/Serialization/ASTReader.cpp b/clang/lib/Serialization/ASTReader.cpp index 0d8209c01c8d..c3f3a370efc2 100644 --- a/clang/lib/Serialization/ASTReader.cpp +++ b/clang/lib/Serialization/ASTReader.cpp @@ -101,7 +101,7 @@ #include "llvm/ADT/StringRef.h" #include "llvm/ADT/Triple.h" #include "llvm/ADT/iterator_range.h" -#include "llvm/Bitcode/BitstreamReader.h" +#include "llvm/Bitstream/BitstreamReader.h" #include "llvm/Support/Casting.h" #include "llvm/Support/Compiler.h" #include "llvm/Support/Compression.h" diff --git a/clang/lib/Serialization/ASTReaderDecl.cpp b/clang/lib/Serialization/ASTReaderDecl.cpp index bd7880c3395a..a2b80999e6b7 100644 --- a/clang/lib/Serialization/ASTReaderDecl.cpp +++ b/clang/lib/Serialization/ASTReaderDecl.cpp @@ -57,7 +57,7 @@ #include "llvm/ADT/SmallPtrSet.h" #include "llvm/ADT/SmallVector.h" #include "llvm/ADT/iterator_range.h" -#include "llvm/Bitcode/BitstreamReader.h" +#include "llvm/Bitstream/BitstreamReader.h" #include "llvm/Support/Casting.h" #include "llvm/Support/ErrorHandling.h" #include "llvm/Support/SaveAndRestore.h" diff --git a/clang/lib/Serialization/ASTReaderStmt.cpp b/clang/lib/Serialization/ASTReaderStmt.cpp index 58103eaf9a0b..51a1e8152518 100644 --- a/clang/lib/Serialization/ASTReaderStmt.cpp +++ b/clang/lib/Serialization/ASTReaderStmt.cpp @@ -52,7 +52,7 @@ #include "llvm/ADT/SmallString.h" #include "llvm/ADT/SmallVector.h" #include "llvm/ADT/StringRef.h" -#include "llvm/Bitcode/BitstreamReader.h" +#include "llvm/Bitstream/BitstreamReader.h" #include "llvm/Support/Casting.h" #include "llvm/Support/ErrorHandling.h" #include diff --git a/clang/lib/Serialization/ASTWriter.cpp b/clang/lib/Serialization/ASTWriter.cpp index c60e2da20f4b..218983c732ca 100644 --- a/clang/lib/Serialization/ASTWriter.cpp +++ b/clang/lib/Serialization/ASTWriter.cpp @@ -83,8 +83,8 @@ #include "llvm/ADT/SmallVector.h" #include "llvm/ADT/StringMap.h" #include "llvm/ADT/StringRef.h" -#include "llvm/Bitcode/BitCodes.h" -#include "llvm/Bitcode/BitstreamWriter.h" +#include "llvm/Bitstream/BitCodes.h" +#include "llvm/Bitstream/BitstreamWriter.h" #include "llvm/Support/Casting.h" #include "llvm/Support/Compression.h" #include "llvm/Support/DJB.h" diff --git a/clang/lib/Serialization/ASTWriterDecl.cpp b/clang/lib/Serialization/ASTWriterDecl.cpp index eb709f59c900..f52fc014bb3f 100644 --- a/clang/lib/Serialization/ASTWriterDecl.cpp +++ b/clang/lib/Serialization/ASTWriterDecl.cpp @@ -21,7 +21,7 @@ #include "clang/Basic/SourceManager.h" #include "clang/Serialization/ASTReader.h" #include "clang/Serialization/ASTWriter.h" -#include "llvm/Bitcode/BitstreamWriter.h" +#include "llvm/Bitstream/BitstreamWriter.h" #include "llvm/Support/ErrorHandling.h" using namespace clang; using namespace serialization; diff --git a/clang/lib/Serialization/ASTWriterStmt.cpp b/clang/lib/Serialization/ASTWriterStmt.cpp index 486cc14e6b0c..4fbcbaabe74b 100644 --- a/clang/lib/Serialization/ASTWriterStmt.cpp +++ b/clang/lib/Serialization/ASTWriterStmt.cpp @@ -18,7 +18,7 @@ #include "clang/AST/DeclTemplate.h" #include "clang/AST/StmtVisitor.h" #include "clang/Lex/Token.h" -#include "llvm/Bitcode/BitstreamWriter.h" +#include "llvm/Bitstream/BitstreamWriter.h" using namespace clang; //===----------------------------------------------------------------------===// diff --git a/clang/lib/Serialization/CMakeLists.txt b/clang/lib/Serialization/CMakeLists.txt index 3d24c571f315..ab90635d2b64 100644 --- a/clang/lib/Serialization/CMakeLists.txt +++ b/clang/lib/Serialization/CMakeLists.txt @@ -1,5 +1,6 @@ set(LLVM_LINK_COMPONENTS BitReader + BitstreamReader Support ) diff --git a/clang/lib/Serialization/GeneratePCH.cpp b/clang/lib/Serialization/GeneratePCH.cpp index 6d98524636f8..002233e49bb0 100644 --- a/clang/lib/Serialization/GeneratePCH.cpp +++ b/clang/lib/Serialization/GeneratePCH.cpp @@ -16,7 +16,7 @@ #include "clang/Lex/Preprocessor.h" #include "clang/Sema/SemaConsumer.h" #include "clang/Serialization/ASTWriter.h" -#include "llvm/Bitcode/BitstreamWriter.h" +#include "llvm/Bitstream/BitstreamWriter.h" using namespace clang; diff --git a/clang/lib/Serialization/GlobalModuleIndex.cpp b/clang/lib/Serialization/GlobalModuleIndex.cpp index 626eebbef9f0..f90eab322785 100644 --- a/clang/lib/Serialization/GlobalModuleIndex.cpp +++ b/clang/lib/Serialization/GlobalModuleIndex.cpp @@ -21,8 +21,8 @@ #include "llvm/ADT/DenseMap.h" #include "llvm/ADT/MapVector.h" #include "llvm/ADT/SmallString.h" -#include "llvm/Bitcode/BitstreamReader.h" -#include "llvm/Bitcode/BitstreamWriter.h" +#include "llvm/Bitstream/BitstreamReader.h" +#include "llvm/Bitstream/BitstreamWriter.h" #include "llvm/Support/DJB.h" #include "llvm/Support/FileSystem.h" #include "llvm/Support/LockFileManager.h" diff --git a/clang/lib/Serialization/PCHContainerOperations.cpp b/clang/lib/Serialization/PCHContainerOperations.cpp index 4c05ff951aa1..00063d64f3f2 100644 --- a/clang/lib/Serialization/PCHContainerOperations.cpp +++ b/clang/lib/Serialization/PCHContainerOperations.cpp @@ -13,7 +13,7 @@ #include "clang/Serialization/PCHContainerOperations.h" #include "clang/AST/ASTConsumer.h" #include "clang/Lex/ModuleLoader.h" -#include "llvm/Bitcode/BitstreamReader.h" +#include "llvm/Bitstream/BitstreamReader.h" #include "llvm/Support/raw_ostream.h" #include diff --git a/clang/tools/libclang/CXLoadedDiagnostic.cpp b/clang/tools/libclang/CXLoadedDiagnostic.cpp index 551d8343fcb5..3bc658c4cbe8 100644 --- a/clang/tools/libclang/CXLoadedDiagnostic.cpp +++ b/clang/tools/libclang/CXLoadedDiagnostic.cpp @@ -20,7 +20,7 @@ #include "llvm/ADT/STLExtras.h" #include "llvm/ADT/StringRef.h" #include "llvm/ADT/Twine.h" -#include "llvm/Bitcode/BitstreamReader.h" +#include "llvm/Bitstream/BitstreamReader.h" #include "llvm/Support/ErrorHandling.h" using namespace clang; diff --git a/clang/unittests/Serialization/CMakeLists.txt b/clang/unittests/Serialization/CMakeLists.txt index c7ec9a4f0705..a19ef5faee50 100644 --- a/clang/unittests/Serialization/CMakeLists.txt +++ b/clang/unittests/Serialization/CMakeLists.txt @@ -1,5 +1,6 @@ set(LLVM_LINK_COMPONENTS BitReader + BitstreamReader Support ) diff --git a/llvm/include/llvm/Bitcode/BitcodeReader.h b/llvm/include/llvm/Bitcode/BitcodeReader.h index 3e8e7edf79ce..ba61da733bea 100644 --- a/llvm/include/llvm/Bitcode/BitcodeReader.h +++ b/llvm/include/llvm/Bitcode/BitcodeReader.h @@ -15,7 +15,7 @@ #include "llvm/ADT/ArrayRef.h" #include "llvm/ADT/StringRef.h" -#include "llvm/Bitcode/BitCodes.h" +#include "llvm/Bitstream/BitCodes.h" #include "llvm/IR/ModuleSummaryIndex.h" #include "llvm/Support/Endian.h" #include "llvm/Support/Error.h" diff --git a/llvm/include/llvm/Bitcode/LLVMBitCodes.h b/llvm/include/llvm/Bitcode/LLVMBitCodes.h index 3a0e1cc2b2c6..5f3f7b1bd37e 100644 --- a/llvm/include/llvm/Bitcode/LLVMBitCodes.h +++ b/llvm/include/llvm/Bitcode/LLVMBitCodes.h @@ -17,7 +17,7 @@ #ifndef LLVM_BITCODE_LLVMBITCODES_H #define LLVM_BITCODE_LLVMBITCODES_H -#include "llvm/Bitcode/BitCodes.h" +#include "llvm/Bitstream/BitCodes.h" namespace llvm { namespace bitc { diff --git a/llvm/include/llvm/Bitcode/BitCodes.h b/llvm/include/llvm/Bitstream/BitCodes.h similarity index 96% rename from llvm/include/llvm/Bitcode/BitCodes.h rename to llvm/include/llvm/Bitstream/BitCodes.h index a0d8dfd68bf7..60de9622947a 100644 --- a/llvm/include/llvm/Bitcode/BitCodes.h +++ b/llvm/include/llvm/Bitstream/BitCodes.h @@ -1,4 +1,4 @@ -//===- BitCodes.h - Enum values for the bitcode format ----------*- C++ -*-===// +//===- BitCodes.h - Enum values for the bitstream format --------*- C++ -*-===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. @@ -6,7 +6,7 @@ // //===----------------------------------------------------------------------===// // -// This header Bitcode enum values. +// This header defines bitstream enum values. // // The enum values defined in this file should be considered permanent. If // new features are added, they should have values added at the end of the @@ -14,8 +14,8 @@ // //===----------------------------------------------------------------------===// -#ifndef LLVM_BITCODE_BITCODES_H -#define LLVM_BITCODE_BITCODES_H +#ifndef LLVM_BITSTREAM_BITCODES_H +#define LLVM_BITSTREAM_BITCODES_H #include "llvm/ADT/SmallVector.h" #include "llvm/Support/DataTypes.h" @@ -23,7 +23,7 @@ #include namespace llvm { -/// Offsets of the 32-bit fields of bitcode wrapper header. +/// Offsets of the 32-bit fields of bitstream wrapper header. static const unsigned BWH_MagicField = 0 * 4; static const unsigned BWH_VersionField = 1 * 4; static const unsigned BWH_OffsetField = 2 * 4; diff --git a/llvm/include/llvm/Bitcode/BitstreamReader.h b/llvm/include/llvm/Bitstream/BitstreamReader.h similarity index 99% rename from llvm/include/llvm/Bitcode/BitstreamReader.h rename to llvm/include/llvm/Bitstream/BitstreamReader.h index c8ed77fded83..ccb4a492b9d5 100644 --- a/llvm/include/llvm/Bitcode/BitstreamReader.h +++ b/llvm/include/llvm/Bitstream/BitstreamReader.h @@ -11,12 +11,12 @@ // //===----------------------------------------------------------------------===// -#ifndef LLVM_BITCODE_BITSTREAMREADER_H -#define LLVM_BITCODE_BITSTREAMREADER_H +#ifndef LLVM_BITSTREAM_BITSTREAMREADER_H +#define LLVM_BITSTREAM_BITSTREAMREADER_H #include "llvm/ADT/ArrayRef.h" #include "llvm/ADT/SmallVector.h" -#include "llvm/Bitcode/BitCodes.h" +#include "llvm/Bitstream/BitCodes.h" #include "llvm/Support/Endian.h" #include "llvm/Support/ErrorHandling.h" #include "llvm/Support/MathExtras.h" @@ -550,4 +550,4 @@ public: } // end llvm namespace -#endif // LLVM_BITCODE_BITSTREAMREADER_H +#endif // LLVM_BITSTREAM_BITSTREAMREADER_H diff --git a/llvm/include/llvm/Bitcode/BitstreamWriter.h b/llvm/include/llvm/Bitstream/BitstreamWriter.h similarity index 99% rename from llvm/include/llvm/Bitcode/BitstreamWriter.h rename to llvm/include/llvm/Bitstream/BitstreamWriter.h index cd5b614d1053..c0ead19dc71d 100644 --- a/llvm/include/llvm/Bitcode/BitstreamWriter.h +++ b/llvm/include/llvm/Bitstream/BitstreamWriter.h @@ -11,14 +11,14 @@ // //===----------------------------------------------------------------------===// -#ifndef LLVM_BITCODE_BITSTREAMWRITER_H -#define LLVM_BITCODE_BITSTREAMWRITER_H +#ifndef LLVM_BITSTREAM_BITSTREAMWRITER_H +#define LLVM_BITSTREAM_BITSTREAMWRITER_H #include "llvm/ADT/ArrayRef.h" #include "llvm/ADT/Optional.h" #include "llvm/ADT/SmallVector.h" #include "llvm/ADT/StringRef.h" -#include "llvm/Bitcode/BitCodes.h" +#include "llvm/Bitstream/BitCodes.h" #include "llvm/Support/Endian.h" #include diff --git a/llvm/include/llvm/Support/JSON.h b/llvm/include/llvm/Support/JSON.h index fb6a6d4e19a7..0ca41097dddd 100644 --- a/llvm/include/llvm/Support/JSON.h +++ b/llvm/include/llvm/Support/JSON.h @@ -39,7 +39,7 @@ /// /// - LLVM bitstream is a space- and CPU- efficient binary format. Typically it /// encodes LLVM IR ("bitcode"), but it can be a container for other data. -/// Low-level reader/writer libraries are in Bitcode/Bitstream*.h +/// Low-level reader/writer libraries are in Bitstream/Bitstream*.h /// //===---------------------------------------------------------------------===// diff --git a/llvm/lib/Bitcode/Reader/BitcodeReader.cpp b/llvm/lib/Bitcode/Reader/BitcodeReader.cpp index fa4fbdcea5b7..9e0c397d7439 100644 --- a/llvm/lib/Bitcode/Reader/BitcodeReader.cpp +++ b/llvm/lib/Bitcode/Reader/BitcodeReader.cpp @@ -20,7 +20,7 @@ #include "llvm/ADT/StringRef.h" #include "llvm/ADT/Triple.h" #include "llvm/ADT/Twine.h" -#include "llvm/Bitcode/BitstreamReader.h" +#include "llvm/Bitstream/BitstreamReader.h" #include "llvm/Bitcode/LLVMBitCodes.h" #include "llvm/Config/llvm-config.h" #include "llvm/IR/Argument.h" diff --git a/llvm/lib/Bitcode/Reader/CMakeLists.txt b/llvm/lib/Bitcode/Reader/CMakeLists.txt index c24216ffa708..c9e1c00d10e3 100644 --- a/llvm/lib/Bitcode/Reader/CMakeLists.txt +++ b/llvm/lib/Bitcode/Reader/CMakeLists.txt @@ -1,7 +1,6 @@ add_llvm_library(LLVMBitReader BitReader.cpp BitcodeReader.cpp - BitstreamReader.cpp MetadataLoader.cpp ValueList.cpp diff --git a/llvm/lib/Bitcode/Reader/LLVMBuild.txt b/llvm/lib/Bitcode/Reader/LLVMBuild.txt index c43f819750c5..2eafab53c58b 100644 --- a/llvm/lib/Bitcode/Reader/LLVMBuild.txt +++ b/llvm/lib/Bitcode/Reader/LLVMBuild.txt @@ -18,4 +18,4 @@ type = Library name = BitReader parent = Bitcode -required_libraries = Core Support +required_libraries = BitstreamReader Core Support diff --git a/llvm/lib/Bitcode/Reader/MetadataLoader.cpp b/llvm/lib/Bitcode/Reader/MetadataLoader.cpp index 03f9c950ef01..24620ed10d74 100644 --- a/llvm/lib/Bitcode/Reader/MetadataLoader.cpp +++ b/llvm/lib/Bitcode/Reader/MetadataLoader.cpp @@ -22,7 +22,7 @@ #include "llvm/ADT/StringRef.h" #include "llvm/ADT/Twine.h" #include "llvm/Bitcode/BitcodeReader.h" -#include "llvm/Bitcode/BitstreamReader.h" +#include "llvm/Bitstream/BitstreamReader.h" #include "llvm/Bitcode/LLVMBitCodes.h" #include "llvm/IR/Argument.h" #include "llvm/IR/Attributes.h" diff --git a/llvm/lib/Bitcode/Writer/BitcodeWriter.cpp b/llvm/lib/Bitcode/Writer/BitcodeWriter.cpp index e8d9fb8f62e3..90de4688c8ca 100644 --- a/llvm/lib/Bitcode/Writer/BitcodeWriter.cpp +++ b/llvm/lib/Bitcode/Writer/BitcodeWriter.cpp @@ -24,8 +24,8 @@ #include "llvm/ADT/StringMap.h" #include "llvm/ADT/StringRef.h" #include "llvm/ADT/Triple.h" -#include "llvm/Bitcode/BitCodes.h" -#include "llvm/Bitcode/BitstreamWriter.h" +#include "llvm/Bitstream/BitCodes.h" +#include "llvm/Bitstream/BitstreamWriter.h" #include "llvm/Bitcode/LLVMBitCodes.h" #include "llvm/Config/llvm-config.h" #include "llvm/IR/Attributes.h" diff --git a/llvm/lib/Bitstream/CMakeLists.txt b/llvm/lib/Bitstream/CMakeLists.txt new file mode 100644 index 000000000000..49def158f690 --- /dev/null +++ b/llvm/lib/Bitstream/CMakeLists.txt @@ -0,0 +1,2 @@ +add_subdirectory(Reader) +# The writer is header-only. diff --git a/llvm/lib/Bitstream/LLVMBuild.txt b/llvm/lib/Bitstream/LLVMBuild.txt new file mode 100644 index 000000000000..1dfb6d2ed1e8 --- /dev/null +++ b/llvm/lib/Bitstream/LLVMBuild.txt @@ -0,0 +1,23 @@ +;===- ./lib/Bitstream/LLVMBuild.txt ----------------------------*- Conf -*--===; +; +; Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +; See https://llvm.org/LICENSE.txt for license information. +; SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +; +;===------------------------------------------------------------------------===; +; +; This is an LLVMBuild description file for the components in this subdirectory. +; +; For more information on the LLVMBuild system, please see: +; +; http://llvm.org/docs/LLVMBuild.html +; +;===------------------------------------------------------------------------===; + +[common] +subdirectories = Reader + +[component_0] +type = Group +name = Bitstream +parent = Libraries diff --git a/llvm/lib/Bitcode/Reader/BitstreamReader.cpp b/llvm/lib/Bitstream/Reader/BitstreamReader.cpp similarity index 99% rename from llvm/lib/Bitcode/Reader/BitstreamReader.cpp rename to llvm/lib/Bitstream/Reader/BitstreamReader.cpp index 2f29ce29db01..a4a97ced5457 100644 --- a/llvm/lib/Bitcode/Reader/BitstreamReader.cpp +++ b/llvm/lib/Bitstream/Reader/BitstreamReader.cpp @@ -6,7 +6,7 @@ // //===----------------------------------------------------------------------===// -#include "llvm/Bitcode/BitstreamReader.h" +#include "llvm/Bitstream/BitstreamReader.h" #include "llvm/ADT/StringRef.h" #include #include diff --git a/llvm/lib/Bitstream/Reader/CMakeLists.txt b/llvm/lib/Bitstream/Reader/CMakeLists.txt new file mode 100644 index 000000000000..f91e450d888b --- /dev/null +++ b/llvm/lib/Bitstream/Reader/CMakeLists.txt @@ -0,0 +1,7 @@ +add_llvm_library(LLVMBitstreamReader + BitstreamReader.cpp + + ADDITIONAL_HEADER_DIRS + ${LLVM_MAIN_INCLUDE_DIR}/llvm/Bitcode + ${LLVM_MAIN_INCLUDE_DIR}/llvm/Bitstream + ) diff --git a/llvm/lib/Bitstream/Reader/LLVMBuild.txt b/llvm/lib/Bitstream/Reader/LLVMBuild.txt new file mode 100644 index 000000000000..8ef4276c90a4 --- /dev/null +++ b/llvm/lib/Bitstream/Reader/LLVMBuild.txt @@ -0,0 +1,21 @@ +;===- ./lib/Bitstream/Reader/LLVMBuild.txt ---------------------*- Conf -*--===; +; +; Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +; See https://llvm.org/LICENSE.txt for license information. +; SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +; +;===------------------------------------------------------------------------===; +; +; This is an LLVMBuild description file for the components in this subdirectory. +; +; For more information on the LLVMBuild system, please see: +; +; http://llvm.org/docs/LLVMBuild.html +; +;===------------------------------------------------------------------------===; + +[component_0] +type = Library +name = BitstreamReader +parent = Bitstream +required_libraries = Support diff --git a/llvm/lib/CMakeLists.txt b/llvm/lib/CMakeLists.txt index c458927e3cd0..17313df0ecf6 100644 --- a/llvm/lib/CMakeLists.txt +++ b/llvm/lib/CMakeLists.txt @@ -7,6 +7,7 @@ add_subdirectory(IRReader) add_subdirectory(CodeGen) add_subdirectory(BinaryFormat) add_subdirectory(Bitcode) +add_subdirectory(Bitstream) add_subdirectory(Transforms) add_subdirectory(Linker) add_subdirectory(Analysis) diff --git a/llvm/lib/LLVMBuild.txt b/llvm/lib/LLVMBuild.txt index 3b5e71d6ef1d..4c039176267c 100644 --- a/llvm/lib/LLVMBuild.txt +++ b/llvm/lib/LLVMBuild.txt @@ -19,6 +19,7 @@ subdirectories = Analysis AsmParser Bitcode + Bitstream CodeGen DebugInfo Demangle diff --git a/llvm/tools/llvm-bcanalyzer/CMakeLists.txt b/llvm/tools/llvm-bcanalyzer/CMakeLists.txt index 15d51ee7a9d7..0d541e1fde3c 100644 --- a/llvm/tools/llvm-bcanalyzer/CMakeLists.txt +++ b/llvm/tools/llvm-bcanalyzer/CMakeLists.txt @@ -1,5 +1,6 @@ set(LLVM_LINK_COMPONENTS BitReader + BitstreamReader Support ) diff --git a/llvm/tools/llvm-bcanalyzer/LLVMBuild.txt b/llvm/tools/llvm-bcanalyzer/LLVMBuild.txt index 281d60246e9d..c3b69110747e 100644 --- a/llvm/tools/llvm-bcanalyzer/LLVMBuild.txt +++ b/llvm/tools/llvm-bcanalyzer/LLVMBuild.txt @@ -18,4 +18,4 @@ type = Tool name = llvm-bcanalyzer parent = Tools -required_libraries = BitReader +required_libraries = BitReader BitstreamReader Support diff --git a/llvm/tools/llvm-bcanalyzer/llvm-bcanalyzer.cpp b/llvm/tools/llvm-bcanalyzer/llvm-bcanalyzer.cpp index 29f6778d331d..774432a5921e 100644 --- a/llvm/tools/llvm-bcanalyzer/llvm-bcanalyzer.cpp +++ b/llvm/tools/llvm-bcanalyzer/llvm-bcanalyzer.cpp @@ -28,7 +28,7 @@ #include "llvm/ADT/StringExtras.h" #include "llvm/Bitcode/BitcodeReader.h" -#include "llvm/Bitcode/BitstreamReader.h" +#include "llvm/Bitstream/BitstreamReader.h" #include "llvm/Bitcode/LLVMBitCodes.h" #include "llvm/Support/CommandLine.h" #include "llvm/Support/Format.h" diff --git a/llvm/unittests/Bitcode/CMakeLists.txt b/llvm/unittests/Bitcode/CMakeLists.txt index 4d06f8008d38..7e9d1bc43fef 100644 --- a/llvm/unittests/Bitcode/CMakeLists.txt +++ b/llvm/unittests/Bitcode/CMakeLists.txt @@ -8,6 +8,4 @@ set(LLVM_LINK_COMPONENTS add_llvm_unittest(BitcodeTests BitReaderTest.cpp - BitstreamReaderTest.cpp - BitstreamWriterTest.cpp ) diff --git a/llvm/unittests/Bitcode/BitstreamReaderTest.cpp b/llvm/unittests/Bitstream/BitstreamReaderTest.cpp similarity index 98% rename from llvm/unittests/Bitcode/BitstreamReaderTest.cpp rename to llvm/unittests/Bitstream/BitstreamReaderTest.cpp index 89657d9e9925..f58af220f2d1 100644 --- a/llvm/unittests/Bitcode/BitstreamReaderTest.cpp +++ b/llvm/unittests/Bitstream/BitstreamReaderTest.cpp @@ -6,9 +6,9 @@ // //===----------------------------------------------------------------------===// -#include "llvm/Bitcode/BitstreamReader.h" +#include "llvm/Bitstream/BitstreamReader.h" #include "llvm/ADT/STLExtras.h" -#include "llvm/Bitcode/BitstreamWriter.h" +#include "llvm/Bitstream/BitstreamWriter.h" #include "gtest/gtest.h" using namespace llvm; diff --git a/llvm/unittests/Bitcode/BitstreamWriterTest.cpp b/llvm/unittests/Bitstream/BitstreamWriterTest.cpp similarity index 97% rename from llvm/unittests/Bitcode/BitstreamWriterTest.cpp rename to llvm/unittests/Bitstream/BitstreamWriterTest.cpp index ef4696c8c173..993c5aadee2d 100644 --- a/llvm/unittests/Bitcode/BitstreamWriterTest.cpp +++ b/llvm/unittests/Bitstream/BitstreamWriterTest.cpp @@ -6,7 +6,7 @@ // //===----------------------------------------------------------------------===// -#include "llvm/Bitcode/BitstreamWriter.h" +#include "llvm/Bitstream/BitstreamWriter.h" #include "llvm/ADT/STLExtras.h" #include "llvm/ADT/SmallString.h" #include "gtest/gtest.h" diff --git a/llvm/unittests/Bitstream/CMakeLists.txt b/llvm/unittests/Bitstream/CMakeLists.txt new file mode 100644 index 000000000000..a62003417d41 --- /dev/null +++ b/llvm/unittests/Bitstream/CMakeLists.txt @@ -0,0 +1,8 @@ +set(LLVM_LINK_COMPONENTS + BitstreamReader + ) + +add_llvm_unittest(BitstreamTests + BitstreamReaderTest.cpp + BitstreamWriterTest.cpp + ) diff --git a/llvm/unittests/CMakeLists.txt b/llvm/unittests/CMakeLists.txt index 68fa8533baf0..6bb2fb8eb923 100644 --- a/llvm/unittests/CMakeLists.txt +++ b/llvm/unittests/CMakeLists.txt @@ -13,6 +13,7 @@ add_subdirectory(Analysis) add_subdirectory(AsmParser) add_subdirectory(BinaryFormat) add_subdirectory(Bitcode) +add_subdirectory(Bitstream) add_subdirectory(CodeGen) add_subdirectory(DebugInfo) add_subdirectory(Demangle) diff --git a/llvm/utils/GenLibDeps.pl b/llvm/utils/GenLibDeps.pl index 9b65e900c53e..42afa6a11fc0 100755 --- a/llvm/utils/GenLibDeps.pl +++ b/llvm/utils/GenLibDeps.pl @@ -96,6 +96,8 @@ if ($PEROBJ) { $libpath =~ s/^AsmPrinter/CodeGen\/AsmPrinter/; $libpath =~ s/^BitReader/Bitcode\/Reader/; $libpath =~ s/^BitWriter/Bitcode\/Writer/; + $libpath =~ s/^BitstreamReader/Bitstream\/Reader/; + $libpath =~ s/^BitstreamWriter/Bitstream\/Writer/; $libpath =~ s/^MSIL/Target\/MSIL/; $libpath =~ s/^Core/IR/; $libpath =~ s/^Instrumentation/Transforms\/Instrumentation/; @@ -136,6 +138,8 @@ if ($PEROBJ) { $libpath =~ s/^AsmPrinter/CodeGen\/AsmPrinter/; $libpath =~ s/^BitReader/Bitcode\/Reader/; $libpath =~ s/^BitWriter/Bitcode\/Writer/; + $libpath =~ s/^BitstreamReader/Bitstream\/Reader/; + $libpath =~ s/^BitstreamWriter/Bitstream\/Writer/; $libpath =~ s/^MSIL/Target\/MSIL/; $libpath =~ s/^Core/VMCore/; $libpath =~ s/^Instrumentation/Transforms\/Instrumentation/;