aboutsummaryrefslogtreecommitdiff
path: root/gold/target.h
diff options
context:
space:
mode:
authorSriraman Tallam <tmsriram@google.com>2010-09-28 17:14:15 +0000
committerSriraman Tallam <tmsriram@google.com>2010-09-28 17:14:15 +0000
commitc95e9f279130c09af2c427065700e3e08500b168 (patch)
tree78e7735b04680083b0cbc1d67e17d4c024dae2cd /gold/target.h
parent22e603ef762487e8a761d443a94168493a46db25 (diff)
downloadgdb-c95e9f279130c09af2c427065700e3e08500b168.zip
gdb-c95e9f279130c09af2c427065700e3e08500b168.tar.gz
gdb-c95e9f279130c09af2c427065700e3e08500b168.tar.bz2
2010-09-28 Sriraman Tallam <tmsriram@google.com>
* target.h (Target::can_icf_inline_merge_sections): New virtual function. * x86_64.cc (Target__x86_64::can_icf_inline_merge_sections): New virtual function. * i386.cc (Target_i386::can_icf_inline_merge_sections): New virtual function. * icf.cc (get_section_contents): Inline merge sections only when target allows it.
Diffstat (limited to 'gold/target.h')
-rw-r--r--gold/target.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/gold/target.h b/gold/target.h
index 33f7ee8..5cdd032 100644
--- a/gold/target.h
+++ b/gold/target.h
@@ -72,6 +72,13 @@ class Target
can_check_for_function_pointers() const
{ return false; }
+ // This function is used in ICF (icf.cc). This is set to true by
+ // the target if a relocation to a merged section can be processed
+ // to retrieve the contents of the merged section.
+ virtual bool
+ can_icf_inline_merge_sections () const
+ { return false; }
+
// Whether a section called SECTION_NAME may have function pointers to
// sections not eligible for safe ICF folding.
virtual bool