Commit Graph

388 Commits

Author SHA1 Message Date
Ian Lance Taylor
756ac4a80d Implement -Tdata and -Tbss. 2008-02-13 22:47:28 +00:00
Ian Lance Taylor
3edc73f245 Implement remaining linker script functions. 2008-02-13 22:44:50 +00:00
Ian Lance Taylor
0daa6f62c8 Support selecting target by name. 2008-02-13 02:44:50 +00:00
Ian Lance Taylor
caa9d5d919 Assignments in linker scripts override definitions from object files. 2008-02-13 01:20:38 +00:00
Ian Lance Taylor
7508a0934e Implement LOADADDR and SIZEOF. 2008-02-13 01:18:53 +00:00
Craig Silverstein
9d37b37d37 Up version to 1.1, as the 1.1 binary was pushed to users today. 2008-02-12 02:01:32 +00:00
Ian Lance Taylor
dceae3c154 Support dynamic relocations against local section symbols. 2008-02-12 00:28:48 +00:00
Ian Lance Taylor
4e8fe71f6c Set TEXTREL correctly when using a SECTIONS clause. 2008-02-12 00:24:00 +00:00
Ian Lance Taylor
0e43bb4edd Pass down alignment when adding input section to orphan section. 2008-02-12 00:17:35 +00:00
Ian Lance Taylor
33a3a15316 Force different sections to different pages for better results on
x86_64 Linux.
2008-02-12 00:15:40 +00:00
Ian Lance Taylor
03df6b3280 Fix precedence error, avoid signed/unsignd warning. 2008-02-12 00:13:39 +00:00
Ian Lance Taylor
77e655378d Track sections for expressions. 2008-02-09 01:22:17 +00:00
Ian Lance Taylor
8fc19601e8 From Cary Coutant: fix handling of undefined symbols in shared
libraries.
2008-02-08 22:49:22 +00:00
Ian Lance Taylor
b0d8593d63 Don't read linker scripts in binary mode. 2008-02-08 07:31:09 +00:00
Ian Lance Taylor
bc644c6cfc Add support for --format binary for input files. 2008-02-08 07:06:58 +00:00
Ian Lance Taylor
516cb3d01e Support --oformat binary. 2008-02-07 07:33:46 +00:00
Ian Lance Taylor
1ef1f3d387 Ignore version scripts for relocatable links. 2008-02-07 05:45:07 +00:00
Ian Lance Taylor
5fe2a0f55b Even when stripping all symbols, we need to write out the dynamic
symbol table.
2008-02-07 04:35:41 +00:00
Ian Lance Taylor
88dd47ac00 Implement --just-symbols, including -R FILE. Fix symbol values when
doing a relocatable link.
2008-02-07 01:51:25 +00:00
Ian Lance Taylor
fbfba50887 Support creating empty output when there are no input objects. 2008-02-06 20:32:10 +00:00
Ian Lance Taylor
755ab8af10 Fix group signature handling for relocatable link, add bootstrap
relocatable test.
2008-02-06 19:32:32 +00:00
Ian Lance Taylor
6a74a71947 Initial -r support. 2008-02-06 08:13:50 +00:00
Ian Lance Taylor
56fd6e75db From Ollie Wild: add missing backquote to install-exec-local. 2008-02-05 22:22:09 +00:00
Ian Lance Taylor
7d26c6cc60 Print PHDRS clause for debugging. 2008-02-04 23:53:15 +00:00
Ian Lance Taylor
1c4f3631bd Implement PHDRS. 2008-02-04 22:54:31 +00:00
Ian Lance Taylor
15893b88b0 Treat an empty directory argument as the current directory. 2008-02-04 22:44:35 +00:00
Ian Lance Taylor
fc955173bb From Craig Silverstein: support @file expansion. 2008-02-04 17:26:12 +00:00
Ian Lance Taylor
3802b2dd6b Implement SIZEOF_HEADERS, section constraints, other minor linker
script items.
2008-02-04 06:45:50 +00:00
Ian Lance Taylor
7cc77b5a09 Fully implement SECTIONS clause. 2008-02-04 05:46:12 +00:00
Ian Lance Taylor
a445fddf82 Fully implement the SECTIONS clause. 2008-02-04 05:43:05 +00:00
Ian Lance Taylor
1cac254c18 Don't record file offset for CIEs. 2008-02-02 06:50:45 +00:00
Ian Lance Taylor
65778909ad From Cary Coutant: Ignore hidden symbols in a dynamic object. 2008-02-01 00:42:24 +00:00
Ian Lance Taylor
03e8f2b225 From Cary Coutant: Fix a case in which code takes the address of a
function and also calls it directly.
2008-02-01 00:39:10 +00:00
Ian Lance Taylor
8bc7a1c115 Permit ordinary object files in groups. 2008-01-26 01:35:10 +00:00
Ian Lance Taylor
9b07f471e3 Don't pass around the target in order to define symbols; get it from
the parameters instead.
2008-01-26 01:17:45 +00:00
Ian Lance Taylor
1dd940af63 From Craig Silverstein: Simplify Version_script_info::symbol_is_local
interface.
2008-01-24 22:35:39 +00:00
Ian Lance Taylor
5240d12aa0 From Cary Coutant: Fix last patch. 2008-01-24 00:51:57 +00:00
Ian Lance Taylor
55a934330a Originally from Craig Silverstein, with changes: support using a
version script to force symbols to be local.
2008-01-24 00:15:00 +00:00
Ian Lance Taylor
e4967d85cb Use string instead of STRING, so that we handled QUOTED_STRING. 2008-01-23 19:31:56 +00:00
Ian Lance Taylor
0700cf329e From Cary Coutant: Fix mixing PIC and non-PIC relocs in the same
shared library.
2008-01-23 07:15:59 +00:00
Ian Lance Taylor
7d32031390 Add explicit dependencies on yyscript.h to make sure that it is
built.
2008-01-23 02:13:38 +00:00
Ian Lance Taylor
494e05f440 Parse a SECTIONS clause in a linker script. 2008-01-23 01:31:13 +00:00
Ian Lance Taylor
0c0a741125 Include <vector>. 2008-01-22 22:50:31 +00:00
Ian Lance Taylor
cbcc4140e2 From Craig Silverstein: Optionally print command line for easier
debugging.
2008-01-18 23:41:31 +00:00
Ian Lance Taylor
106002249a From Craig Silverstein: Handle quoted strings differently in version
scripts, and handle extern "C++" in the middle of a block.
2008-01-18 23:35:09 +00:00
Ian Lance Taylor
14144f39e4 Don't include options.h in fileread.h. Remove General_options
reference from Output_file class.
2008-01-18 23:26:48 +00:00
Ian Lance Taylor
091244672e From Andrew Chatham and Craig Silverstein: Add support for version
scripts.
2008-01-15 23:41:28 +00:00
Ian Lance Taylor
e5756efb6d Support assignments and expressions in linker scripts. 2008-01-09 19:57:45 +00:00
Ian Lance Taylor
2dd3e587bd Report linker script errors with line numbers. Ignore OUTPUT_FORMAT
with three arguments, and ignore OUTPUT_ARCH.
2008-01-07 05:19:02 +00:00
Ian Lance Taylor
d391083d3c Add support for -e and for ENTRY in linker scripts. 2008-01-06 00:47:10 +00:00
Ian Lance Taylor
fced7afdce Add -h/-soname option. 2008-01-04 05:35:24 +00:00
Ian Lance Taylor
1bedcac52a Don't create the postprocessing buffer if it already exists. 2008-01-04 05:04:56 +00:00
Ian Lance Taylor
be2f3dec43 Add cast to avoid signed/unsigned warning. 2008-01-02 23:55:37 +00:00
Ian Lance Taylor
cb29561284 Reduce the number of system calls. Use readv instead of pread. Do
better handling of cached views.
2008-01-02 23:48:49 +00:00
Ian Lance Taylor
cf88803ada Use a simpler hash function. 2007-12-22 01:53:39 +00:00
Ian Lance Taylor
06a9731e8a Correct contributor name on new tests, remove #if 0 code. 2007-12-22 00:50:43 +00:00
Ian Lance Taylor
99f8facac9 From Cary Coutant: Fix handling of versioned symbols, add some tests. 2007-12-21 23:31:19 +00:00
Ian Lance Taylor
8d32f93595 Correct handling of non-section symbol in merged section. Avoid some
64-bit signed/unsigned warnings.
2007-12-21 23:08:25 +00:00
Ian Lance Taylor
a9a60db689 Speed up relocations against local symbols in merged sections. 2007-12-21 21:19:45 +00:00
Ian Lance Taylor
8cce671843 Fix buglet in last patch. 2007-12-20 21:26:17 +00:00
Ian Lance Taylor
fe8718a463 Convert more instances of off_t to be 32-bit types. 2007-12-20 21:21:24 +00:00
Ian Lance Taylor
1e9836570f Update comments about output offsets and merged input sections. 2007-12-20 16:27:34 +00:00
Ian Lance Taylor
4106a0814a Remove one inline. 2007-12-20 01:32:10 +00:00
Ian Lance Taylor
8f00aeb8a6 Make functions on hot path inline. Remove a mistaken virtual
declaration.
2007-12-20 01:29:04 +00:00
Ian Lance Taylor
2030fba084 Move Stringpool offsets into a chunked_vector indexed by keys. 2007-12-19 01:23:46 +00:00
Ian Lance Taylor
9bb53bf8b8 Avoid some warnings which showed up in 64-bit mode. 2007-12-19 01:18:41 +00:00
Ian Lance Taylor
c0873094f5 Use string length when available when calling Stringpool. Compare
pointers first when looking up Stringpool entries.
2007-12-19 00:29:28 +00:00
Ian Lance Taylor
0205c1752c Don't write unattached after_input sections twice. 2007-12-18 21:45:28 +00:00
Ian Lance Taylor
38c5e8b493 Print statistics about merge sections with --stats. 2007-12-18 21:24:10 +00:00
Ian Lance Taylor
8383303e0a Add section_size_type and section_offset_type, use them to replace a
lot of instances of off_t.
2007-12-18 00:48:04 +00:00
Ian Lance Taylor
281b8327ae Minor speedup to Output_merge_string::do_add_input_section. 2007-12-15 01:01:48 +00:00
Ian Lance Taylor
17a1d0a9b2 Rewrite workqueue. This version eliminates the master thread, and
reduces the amount of locking required to find a new thread to run.
2007-12-14 19:00:21 +00:00
Ian Lance Taylor
7004837e8d Add const to Object::read and Object::sized_target. 2007-12-14 18:50:01 +00:00
Ian Lance Taylor
c71c6f566c Make some File_read methods const. 2007-12-14 18:22:06 +00:00
Ian Lance Taylor
0e470e5c90 Add some missing dependencies for the new linker. 2007-12-14 05:27:45 +00:00
Ian Lance Taylor
6d01333390 From Craig Silverstein: size hash tables to avoid resizing. 2007-12-14 05:24:17 +00:00
Ian Lance Taylor
460c00b558 Fix --thread-count-middle and --thread-count-final. 2007-12-14 04:53:22 +00:00
Ian Lance Taylor
c03c769248 From Cary Coutant: Test TLS initial-exec model. 2007-12-11 23:33:11 +00:00
Ian Lance Taylor
535890bb64 From Cary Coutant: Set DF_STATIC_TLS as appropriate. 2007-12-11 23:30:52 +00:00
Ian Lance Taylor
31d6048054 From Cary Coutant: Fix x86_64 TLS problem. 2007-12-11 21:21:14 +00:00
Ian Lance Taylor
9430daf83a From Craig Silverstein: Speed up ODR violation reporting. 2007-12-11 18:17:31 +00:00
Ian Lance Taylor
94c4710f80 From Cary Coutant: Handle TLS entry for TLS module index. 2007-12-11 04:23:05 +00:00
Ian Lance Taylor
fcf29b2415 Keep views on views_ list so that they can be found again. 2007-12-10 22:55:31 +00:00
Craig Silverstein
53765ea3d7 Released gold-alpha 0.9. 2007-12-08 03:17:25 +00:00
Ian Lance Taylor
bc2c67ffde From Craig Silverstein: Fix error message, add this->. 2007-12-08 03:05:27 +00:00
Ian Lance Taylor
6a41d30bc2 From Cary Coutant: Fix x86_64 TLS. Also set DT_TEXTREL as well as
DF_TEXTREL.
2007-12-07 23:26:51 +00:00
Ian Lance Taylor
e8c846c359 From Cary Coutant: Fix handling of RELATIVE RELA relocs. 2007-12-07 19:32:59 +00:00
Ian Lance Taylor
4117d76827 Fix ehframe header handling for shared libraries. 2007-12-07 06:44:01 +00:00
Ian Lance Taylor
78d911fd3e From Cary Coutant: Some x86_64 shared library fixes. 2007-12-07 00:59:31 +00:00
Ian Lance Taylor
ac1f0c21ae From Cary Coutant: Remove commented out assert. Also add comment for
bitfield check.
2007-12-07 00:54:28 +00:00
Ian Lance Taylor
351a80002a From Craig Silverstein: Reorganize testsuite Makefile.am. 2007-12-06 17:07:24 +00:00
Ian Lance Taylor
f2619d6c3b Initialize variable to avoid warning. 2007-12-06 06:03:00 +00:00
Ian Lance Taylor
7bf1f8020f From Cary Coutant: More support for generating shared libraries. 2007-12-06 05:55:50 +00:00
Ian Lance Taylor
fd6940ea27 Fix comment. 2007-12-06 05:27:24 +00:00
Ian Lance Taylor
116724f39d Don't write out the symbol table when stripping. 2007-12-06 05:00:00 +00:00
Ian Lance Taylor
987cc25110 Rework Stringpool to not compute the hash code twice when adding a new
string.
2007-12-05 22:56:51 +00:00
Ian Lance Taylor
42a1b6860d From Craig Silverstein: Support -o -. 2007-12-05 01:13:28 +00:00
Ian Lance Taylor
43771f7638 From Craig Silverstein: Test some flags. 2007-12-05 01:10:16 +00:00
Ian Lance Taylor
ad8f37d1ba Stringpool stats. Also make Symbol_table support functions inline. 2007-12-05 00:48:49 +00:00
Ian Lance Taylor
c420411fe8 From Craig Silverstein: Support irregular output files. 2007-12-04 23:42:28 +00:00