1 2008-03-25 Ian Lance Taylor <iant@google.com>
3 * options.cc: Include "../bfd/bfdver.h".
4 (options::help): Print bug reporting address.
6 * version.cc (print_version): Adjust output for current value of
11 * options.cc (options::help): Print list of supported targets.
12 * target-select.h: Include <vector>.
13 (class Target_selector): Make machine_, size_, and is_big_endian_
14 fields const. Add bfd_name_ and instantiated_target_ fields.
15 (Target_selector::Target_selector): Add bfd_name parameter.
16 (Target_selector::recognize): Make non-virtual, call
18 (Target_selector::recognize_by_name): Make non-virtual, call
20 (Target_selector::supported_names): New function.
21 (Target_selector::bfd_name): New function.
22 (Target_selector::do_instantiate_target): New pure virtual
24 (Target_selector::do_recognize): New virtual function.
25 (Target_selector::do_recognize_by_name): New virtual function.
26 (Target_selector::instantiate_target): New private function.
27 (supported_target_names): Declare.
28 * target-select.cc (Target_selector::Target_selector): Update for
29 new parameter and fields.
30 (select_target_by_name): Check that the name matches before
31 calling recognize_by_name.
32 (supported_target_names): New function.
33 * i386.cc (class Target_selector_i386): Update Target_selector
34 constructor call. Remove recognize and recognize_by_name. Add
35 do_instantiate_target.
36 * x86_64.cc (class Target_selector_x86_64): Likewise.
37 * testsuite/testfile.cc (class Target_selector_test): Update for
38 changes to Target_selector.
40 * README: Rewrite, with some notes on unsupported features.
42 2008-03-24 Cary Coutant <ccoutant@google.com>
44 * i386.cc (Target_i386::Got_type): New enum declaration.
45 (Target_i386::Scan::local): Updated callers of Output_data_got
47 (Target_i386::Scan::global): Likewise.
48 (Target_i386::Relocate::relocate): Likewise.
49 (Target_i386::Relocate::relocate_tls): Likewise.
50 * object.h (Got_offset_list): New class.
51 (Sized_relobj::local_has_got_offset): Added got_type parameter.
52 (Sized_relobj::local_got_offset): Likewise.
53 (Sized_relobj::set_local_got_offset): Likewise.
54 (Sized_relobj::local_has_tls_got_offset): Removed.
55 (Sized_relobj::local_tls_got_offset): Removed.
56 (Sized_relobj::set_local_tls_got_offset): Removed.
57 (Sized_relobj::Local_got_offsets): Changed to store a list of offsets.
58 * output.cc (Output_data_got::add_global): Added got_type parameter.
59 (Output_data_got::add_global_with_rel): Likewise.
60 (Output_data_got::add_global_with_rela): Likewise.
61 (Output_data_got::add_global_pair_with_rel): New function.
62 (Output_data_got::add_global_pair_with_rela): New function.
63 (Output_data_got::add_local): Added got_type parameter.
64 (Output_data_got::add_local_with_rel): Likewise.
65 (Output_data_got::add_local_with_rela): Likewise.
66 (Output_data_got::add_local_pair_with_rel): New function.
67 (Output_data_got::add_local_pair_with_rela): New function.
68 (Output_data_got::add_global_tls): Removed.
69 (Output_data_got::add_global_tls_with_rel): Removed.
70 (Output_data_got::add_global_tls_with_rela): Removed.
71 (Output_data_got::add_local_tls): Removed.
72 (Output_data_got::add_local_tls_with_rel): Removed.
73 (Output_data_got::add_local_tls_with_rela): Removed.
74 * output.h (Output_data_got::add_global): Added got_type parameter.
75 (Output_data_got::add_global_with_rel): Likewise.
76 (Output_data_got::add_global_with_rela): Likewise.
77 (Output_data_got::add_global_pair_with_rel): New function.
78 (Output_data_got::add_global_pair_with_rela): New function.
79 (Output_data_got::add_local): Added got_type parameter.
80 (Output_data_got::add_local_with_rel): Likewise.
81 (Output_data_got::add_local_with_rela): Likewise.
82 (Output_data_got::add_local_pair_with_rel): New function.
83 (Output_data_got::add_local_pair_with_rela): New function.
84 (Output_data_got::add_global_tls): Removed.
85 (Output_data_got::add_global_tls_with_rel): Removed.
86 (Output_data_got::add_global_tls_with_rela): Removed.
87 (Output_data_got::add_local_tls): Removed.
88 (Output_data_got::add_local_tls_with_rel): Removed.
89 (Output_data_got::add_local_tls_with_rela): Removed.
90 * resolve.cc (Symbol::override_base_with_special): Removed
91 reference to has_got_offset_ field.
92 * symtab.cc (Symbol::init_fields): Replaced initialization
93 of got_offset_ with got_offsets_. Removed initialization
95 * symtab.h (Symbol::has_got_offset): Aded got_type parameter.
96 (Symbol::got_offset): Likewise.
97 (Symbol::set_got_offset): Likewise.
98 (Symbol::has_tls_got_offset): Removed.
99 (Symbol::tls_got_offset): Removed.
100 (Symbol::set_tls_got_offset): Removed.
101 (Symbol::got_offset_): Removed.
102 (Symbol::tls_mod_got_offset_): Removed.
103 (Symbol::tls_pair_got_offset_): Removed.
104 (Symbol::got_offsets_): New field.
105 (Symbol::has_got_offset): Removed.
106 (Symbol::has_tls_mod_got_offset): Removed.
107 (Symbol::has_tls_pair_got_offset): Removed.
108 * x86_64.cc (Target_x86_64::Got_type): New enum declaration.
109 (Target_x86_64::Scan::local): Updated callers of Output_data_got
111 (Target_x86_64::Scan::global): Likewise.
112 (Target_x86_64::Relocate::relocate): Likewise.
113 (Target_x86_64::Relocate::relocate_tls): Likewise.
115 2008-03-25 Ben Elliston <bje@au.ibm.com>
117 * yyscript.y: Fix spelling error in comment.
119 2008-03-24 Ian Lance Taylor <iant@google.com>
121 * options.h (class General_options): Define build_id option.
122 * layout.h (class Layout): Declare write_build_id, create_note,
123 create_build_id. Add build_id_note_ member.
124 * layout.cc: Include <cerrno>, <fcntl.h>, <unistd.h>,
125 "libiberty.h", "md5.h", "sha1.h".
126 (Layout::Layout): Initialize eh_frame_data_,
127 eh_frame_hdr_section_, and build_id_note_.
128 (Layout::finalize): Call create_build_id.
129 (Layout::create_note): New function, broken out of
130 Layout::create_gold_note.
131 (Layout::create_gold_note): Call create_note.
132 (Layout::create_build_id): New function.
133 (Layout::write_build_id): New function.
134 (Close_task_runner::run): Call write_build_id.
136 * x86_64.cc: Correct license to GPLv3.
138 2008-03-23 Ian Lance Taylor <iant@google.com>
140 * options.cc: Include "demangle.h".
141 (parse_optional_string): New function.
142 (parse_long_option): Handle takes_optional_argument.
143 (parse_short_option): Update dash_z initializer. Handle
144 takes_optional_argument.
145 (General_options::General_options): Initialize do_demangle_.
146 (General_options::finalize): Set do_demangle_. Handle demangling
148 * options.h (parse_optional_string): Declare.
149 (struct One_option): Add optional_arg field. Update constructor.
150 Update call constructor calls. Add takes_optional_argument
152 (DEFINE_var): Add optional_arg__ parameter. Change all callers.
153 (DEFINE_optional_string): Define.
154 (General_options::demangle): Change from DEFINE_bool to
155 DEFINE_optional_string.
156 (General_options::no_demangle): New function.
157 (General_options::do_demangle): New function.
158 (General_options::set_do_demangle): New function.
159 (General_options::execstack_status_): Move definition to end of
161 (General_options::static_): Likewise.
162 (General_options::do_demangle_): New field.
163 * object.cc (big_endian>::get_symbol_location_info): Call
164 Options::do_demangle, not Options::demangle.
165 * symtab.cc (demangle): Likewise.
167 2008-03-22 Ian Lance Taylor <iant@google.com>
169 * gold.h: Include <cstddef> and <sys/types.h>
170 * options.h: Include <cstring>.
172 2008-03-21 Ian Lance Taylor <iant@google.com>
174 * Added source code to GNU binutils.