aboutsummaryrefslogtreecommitdiff
path: root/gold/object.cc
diff options
context:
space:
mode:
authorCary Coutant <ccoutant@google.com>2011-09-18 15:06:28 +0000
committerCary Coutant <ccoutant@google.com>2011-09-18 15:06:28 +0000
commitaa06ae28f116b4f99f0e3cb158e8542adfb65697 (patch)
treefc5428ce93efb13056497204586c4b8959335720 /gold/object.cc
parent3451853062d59da1ad23ecd872775ed22c8a0b85 (diff)
downloadgdb-aa06ae28f116b4f99f0e3cb158e8542adfb65697.zip
gdb-aa06ae28f116b4f99f0e3cb158e8542adfb65697.tar.gz
gdb-aa06ae28f116b4f99f0e3cb158e8542adfb65697.tar.bz2
* incremental.cc (can_incremental_update): New function.
* incremental.h (can_incremental_update): New function. * layout.cc (Layout::init_fixed_output_section): Call it. (Layout::make_output_section): Don't allow patch space in .eh_frame. * object.cc (Sized_relobj_file::do_layout): Call can_incremental_update.
Diffstat (limited to 'gold/object.cc')
-rw-r--r--gold/object.cc4
1 files changed, 1 insertions, 3 deletions
diff --git a/gold/object.cc b/gold/object.cc
index 99c2ca7..84a9646 100644
--- a/gold/object.cc
+++ b/gold/object.cc
@@ -1344,9 +1344,7 @@ Sized_relobj_file<size, big_endian>::do_layout(Symbol_table* symtab,
Incremental_inputs* incremental_inputs = layout->incremental_inputs();
if (incremental_inputs != NULL
&& !discard
- && (shdr.get_sh_type() == elfcpp::SHT_PROGBITS
- || shdr.get_sh_type() == elfcpp::SHT_NOBITS
- || shdr.get_sh_type() == elfcpp::SHT_NOTE))
+ && can_incremental_update(shdr.get_sh_type()))
{
off_t sh_size = shdr.get_sh_size();
section_size_type uncompressed_size;