this size. */
extern unsigned long bfd_hash_set_default_size (unsigned long);
+/* Types of compressed DWARF debug sections. We currently support
+ zlib. */
+enum compressed_debug_section_type
+{
+ COMPRESS_DEBUG_NONE = 0,
+ COMPRESS_DEBUG = 1 << 0,
+ COMPRESS_DEBUG_ZLIB = COMPRESS_DEBUG | 1 << 1,
+ COMPRESS_DEBUG_GNU_ZLIB = COMPRESS_DEBUG | 1 << 2,
+ COMPRESS_DEBUG_GABI_ZLIB = COMPRESS_DEBUG | 1 << 3
+};
+
/* This structure is used to keep track of stabs in sections
information while linking. */
executables or shared objects. This is for COFF only. */
#define SEC_COFF_SHARED 0x8000000
+ /* This section should be compressed. This is for ELF linker
+ internal use only. */
+#define SEC_ELF_COMPRESS 0x8000000
+
/* When a section with this flag is being linked, then if the size of
the input section is less than a page, it should not cross a page
boundary. If the size of the input section is one page or more,
TMS320C54X only. */
#define SEC_TIC54X_BLOCK 0x10000000
+ /* This section should be renamed. This is for ELF linker
+ internal use only. */
+#define SEC_ELF_RENAME 0x10000000
+
/* Conditionally link this section; do not link if there are no
references found to any symbol in the section. This is for TI
TMS320C54X only. */
#define SEC_TIC54X_CLINK 0x20000000
+ /* This section contains vliw code. This is for Toshiba MeP only. */
+#define SEC_MEP_VLIW 0x20000000
+
/* Indicate that section has the no read flag set. This happens
when memory read flag isn't set. */
#define SEC_COFF_NOREAD 0x40000000
/* Set if this is the linker output BFD. */
unsigned int is_linker_output : 1;
+ /* Set if this is the linker input BFD. */
+ unsigned int is_linker_input : 1;
+
/* If this is an input for a compiler plug-in library. */
ENUM_BITFIELD (bfd_plugin_format) plugin_format : 2;
bfd_boolean bfd_init_section_compress_status
(bfd *abfd, asection *section);
+bfd_boolean bfd_compress_section
+ (bfd *abfd, asection *section, bfd_byte *uncompressed_buffer);
+
#ifdef __cplusplus
}
#endif