https://github.com/abhina-sree updated https://github.com/llvm/llvm-project/pull/109972
>From 0dd3d22bfa419a70fe91c6b1b0c277d7cb21a51e Mon Sep 17 00:00:00 2001 From: Abhina Sreeskantharajan <abhina.sreeskanthara...@ibm.com> Date: Wed, 25 Sep 2024 08:42:10 -0400 Subject: [PATCH] [SystemZ][z/OS] Open text files in text mode --- clang/lib/Driver/OffloadBundler.cpp | 7 ++++--- llvm/tools/llvm-link/llvm-link.cpp | 6 +++--- llvm/tools/llvm-objdump/SourcePrinter.cpp | 3 ++- llvm/tools/llvm-rc/llvm-rc.cpp | 4 ++-- llvm/tools/llvm-readtapi/llvm-readtapi.cpp | 2 +- llvm/tools/llvm-strings/llvm-strings.cpp | 2 +- llvm/utils/split-file/split-file.cpp | 4 ++-- 7 files changed, 15 insertions(+), 13 deletions(-) diff --git a/clang/lib/Driver/OffloadBundler.cpp b/clang/lib/Driver/OffloadBundler.cpp index aaa4fdf03be1eb..687a38333e1287 100644 --- a/clang/lib/Driver/OffloadBundler.cpp +++ b/clang/lib/Driver/OffloadBundler.cpp @@ -1192,7 +1192,7 @@ Error OffloadBundler::ListBundleIDsInFile( StringRef InputFileName, const OffloadBundlerConfig &BundlerConfig) { // Open Input file. ErrorOr<std::unique_ptr<MemoryBuffer>> CodeOrErr = - MemoryBuffer::getFileOrSTDIN(InputFileName); + MemoryBuffer::getFileOrSTDIN(InputFileName, /*IsText=*/true); if (std::error_code EC = CodeOrErr.getError()) return createFileError(InputFileName, EC); @@ -1324,7 +1324,7 @@ Error OffloadBundler::BundleFiles() { InputBuffers.reserve(BundlerConfig.InputFileNames.size()); for (auto &I : BundlerConfig.InputFileNames) { ErrorOr<std::unique_ptr<MemoryBuffer>> CodeOrErr = - MemoryBuffer::getFileOrSTDIN(I); + MemoryBuffer::getFileOrSTDIN(I, /*IsText=*/true); if (std::error_code EC = CodeOrErr.getError()) return createFileError(I, EC); InputBuffers.emplace_back(std::move(*CodeOrErr)); @@ -1392,7 +1392,8 @@ Error OffloadBundler::BundleFiles() { Error OffloadBundler::UnbundleFiles() { // Open Input file. ErrorOr<std::unique_ptr<MemoryBuffer>> CodeOrErr = - MemoryBuffer::getFileOrSTDIN(BundlerConfig.InputFileNames.front()); + MemoryBuffer::getFileOrSTDIN(BundlerConfig.InputFileNames.front(), + /*IsText=*/true); if (std::error_code EC = CodeOrErr.getError()) return createFileError(BundlerConfig.InputFileNames.front(), EC); diff --git a/llvm/tools/llvm-link/llvm-link.cpp b/llvm/tools/llvm-link/llvm-link.cpp index 317b6e20f64cff..34bb6ce30b7668 100644 --- a/llvm/tools/llvm-link/llvm-link.cpp +++ b/llvm/tools/llvm-link/llvm-link.cpp @@ -330,8 +330,8 @@ static bool importFunctions(const char *argv0, Module &DestModule) { auto ModuleLoader = [&DestModule](const char *argv0, const std::string &Identifier) { - std::unique_ptr<MemoryBuffer> Buffer = - ExitOnErr(errorOrToExpected(MemoryBuffer::getFileOrSTDIN(Identifier))); + std::unique_ptr<MemoryBuffer> Buffer = ExitOnErr(errorOrToExpected( + MemoryBuffer::getFileOrSTDIN(Identifier, /*IsText=*/true))); return loadFile(argv0, std::move(Buffer), DestModule.getContext(), false); }; @@ -402,7 +402,7 @@ static bool linkFiles(const char *argv0, LLVMContext &Context, Linker &L, // Similar to some flags, internalization doesn't apply to the first file. bool InternalizeLinkedSymbols = false; for (const auto &File : Files) { - auto BufferOrErr = MemoryBuffer::getFileOrSTDIN(File); + auto BufferOrErr = MemoryBuffer::getFileOrSTDIN(File, /*IsText=*/true); // When we encounter a missing file, make sure we expose its name. if (auto EC = BufferOrErr.getError()) diff --git a/llvm/tools/llvm-objdump/SourcePrinter.cpp b/llvm/tools/llvm-objdump/SourcePrinter.cpp index 7099390f24233f..600bd6aa4d51e5 100644 --- a/llvm/tools/llvm-objdump/SourcePrinter.cpp +++ b/llvm/tools/llvm-objdump/SourcePrinter.cpp @@ -344,7 +344,8 @@ bool SourcePrinter::cacheSource(const DILineInfo &LineInfo) { if (LineInfo.Source) { Buffer = MemoryBuffer::getMemBuffer(*LineInfo.Source); } else { - auto BufferOrError = MemoryBuffer::getFile(LineInfo.FileName); + auto BufferOrError = + MemoryBuffer::getFile(LineInfo.FileName, /*IsText=*/true); if (!BufferOrError) { if (MissingSources.insert(LineInfo.FileName).second) reportWarning("failed to find source " + LineInfo.FileName, diff --git a/llvm/tools/llvm-rc/llvm-rc.cpp b/llvm/tools/llvm-rc/llvm-rc.cpp index 51214524adeef6..4bc9d90095575b 100644 --- a/llvm/tools/llvm-rc/llvm-rc.cpp +++ b/llvm/tools/llvm-rc/llvm-rc.cpp @@ -603,7 +603,7 @@ void doRc(std::string Src, std::string Dest, RcOptions &Opts, // Read and tokenize the input file. ErrorOr<std::unique_ptr<MemoryBuffer>> File = - MemoryBuffer::getFile(PreprocessedFile); + MemoryBuffer::getFile(PreprocessedFile, /*IsText=*/true); if (!File) { fatalError("Error opening file '" + Twine(PreprocessedFile) + "': " + File.getError().message()); @@ -682,7 +682,7 @@ void doCvtres(std::string Src, std::string Dest, std::string TargetTriple) { object::WindowsResourceParser Parser; ErrorOr<std::unique_ptr<MemoryBuffer>> BufferOrErr = - MemoryBuffer::getFile(Src); + MemoryBuffer::getFile(Src, /*IsText=*/true); if (!BufferOrErr) fatalError("Error opening file '" + Twine(Src) + "': " + BufferOrErr.getError().message()); diff --git a/llvm/tools/llvm-readtapi/llvm-readtapi.cpp b/llvm/tools/llvm-readtapi/llvm-readtapi.cpp index 1f183975d9481f..c287dac4cd239a 100644 --- a/llvm/tools/llvm-readtapi/llvm-readtapi.cpp +++ b/llvm/tools/llvm-readtapi/llvm-readtapi.cpp @@ -125,7 +125,7 @@ static std::unique_ptr<InterfaceFile> getInterfaceFile(const StringRef Filename, bool ResetBanner = true) { ExitOnErr.setBanner(TOOLNAME + ": error: '" + Filename.str() + "' "); ErrorOr<std::unique_ptr<MemoryBuffer>> BufferOrErr = - MemoryBuffer::getFile(Filename); + MemoryBuffer::getFile(Filename, /*IsText=*/true); if (BufferOrErr.getError()) ExitOnErr(errorCodeToError(BufferOrErr.getError())); auto Buffer = std::move(*BufferOrErr); diff --git a/llvm/tools/llvm-strings/llvm-strings.cpp b/llvm/tools/llvm-strings/llvm-strings.cpp index 8642be3127fed5..d4305096b60a0b 100644 --- a/llvm/tools/llvm-strings/llvm-strings.cpp +++ b/llvm/tools/llvm-strings/llvm-strings.cpp @@ -173,7 +173,7 @@ int main(int argc, char **argv) { for (const auto &File : InputFileNames) { ErrorOr<std::unique_ptr<MemoryBuffer>> Buffer = - MemoryBuffer::getFileOrSTDIN(File); + MemoryBuffer::getFileOrSTDIN(File, /*IsText=*/true); if (std::error_code EC = Buffer.getError()) errs() << File << ": " << EC.message() << '\n'; else diff --git a/llvm/utils/split-file/split-file.cpp b/llvm/utils/split-file/split-file.cpp index 2ad04d6e42f2b1..672877adaba319 100644 --- a/llvm/utils/split-file/split-file.cpp +++ b/llvm/utils/split-file/split-file.cpp @@ -123,7 +123,7 @@ static int handle(MemoryBuffer &inputBuf, StringRef input) { if (ec) fatal(input, ec.message()); auto f = std::make_unique<ToolOutputFile>(partPath.str(), ec, - llvm::sys::fs::OF_None); + llvm::sys::fs::OF_Text); if (!f) fatal(input, ec.message()); @@ -156,7 +156,7 @@ int main(int argc, const char **argv) { if (output.empty()) fatal("", "output directory is not specified"); ErrorOr<std::unique_ptr<MemoryBuffer>> bufferOrErr = - MemoryBuffer::getFileOrSTDIN(input); + MemoryBuffer::getFileOrSTDIN(input, /*IsText=*/true); if (std::error_code ec = bufferOrErr.getError()) fatal(input, ec.message()); _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits