X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gold%2Fcompressed_output.h;h=3d640a3bd072f7c320ba3d5d559522c46411ac2a;hb=d768f160a99558a07a2463899c8bfeec0f0a67a7;hp=300b064c33740037565c7e678b6bc3ac74dc58f6;hpb=ebdbb4583d9b05504b1ca7e4f6c370f5d355e9bd;p=deliverable%2Fbinutils-gdb.git diff --git a/gold/compressed_output.h b/gold/compressed_output.h index 300b064c33..3d640a3bd0 100644 --- a/gold/compressed_output.h +++ b/gold/compressed_output.h @@ -1,6 +1,6 @@ // compressed_output.h -- compressed output sections for gold -*- C++ -*- -// Copyright 2007, 2008 Free Software Foundation, Inc. +// Copyright (C) 2007-2020 Free Software Foundation, Inc. // Written by Ian Lance Taylor . // This file is part of gold. @@ -37,6 +37,18 @@ namespace gold class General_options; +// Read the compression header of a compressed debug section and return +// the uncompressed size. + +extern uint64_t +get_uncompressed_size(const unsigned char*, section_size_type); + +// Decompress a compressed debug section directly into the output file. + +extern bool +decompress_input_section(const unsigned char*, unsigned long, unsigned char*, + unsigned long, int, bool, elfcpp::Elf_Xword); + // This is used for a section whose data should be compressed. It is // a regular Output_section which computes its contents into a buffer // and then postprocesses it. @@ -64,7 +76,7 @@ class Output_compressed_section : public Output_section // The options--this includes the compression type. const General_options* options_; // The compressed data. - char* data_; + unsigned char* data_; // The new section name if we do compress. std::string new_section_name_; };