From: <kai...@us...> - 2012-01-31 22:23:13
|
Revision: 2389 http://elftoolchain.svn.sourceforge.net/elftoolchain/?rev=2389&view=rev Author: kaiwang27 Date: 2012-01-31 22:23:07 +0000 (Tue, 31 Jan 2012) Log Message: ----------- Add target "x86-64" as an alias for "amd64". Modified Paths: -------------- trunk/ld/amd64.c This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kai...@us...> - 2012-03-25 12:01:12
|
Revision: 2471 http://elftoolchain.svn.sourceforge.net/elftoolchain/?rev=2471&view=rev Author: kaiwang27 Date: 2012-03-25 12:01:06 +0000 (Sun, 25 Mar 2012) Log Message: ----------- Change default maximum page size to 2MB for amd64. Modified Paths: -------------- trunk/ld/amd64.c This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kai...@us...> - 2012-10-26 00:04:09
|
Revision: 2626 http://elftoolchain.svn.sourceforge.net/elftoolchain/?rev=2626&view=rev Author: kaiwang27 Date: 2012-10-26 00:04:03 +0000 (Fri, 26 Oct 2012) Log Message: ----------- Implement create_pltgot for amd64. Modified Paths: -------------- trunk/ld/amd64.c This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kai...@us...> - 2012-10-27 06:21:05
|
Revision: 2634 http://elftoolchain.svn.sourceforge.net/elftoolchain/?rev=2634&view=rev Author: kaiwang27 Date: 2012-10-27 06:20:59 +0000 (Sat, 27 Oct 2012) Log Message: ----------- Properly set sh_entsize for PLT and GOT sections. Modified Paths: -------------- trunk/ld/amd64.c This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kai...@us...> - 2012-10-27 06:21:58
|
Revision: 2639 http://elftoolchain.svn.sourceforge.net/elftoolchain/?rev=2639&view=rev Author: kaiwang27 Date: 2012-10-27 06:21:51 +0000 (Sat, 27 Oct 2012) Log Message: ----------- Generate a local symbol named _GLOBAL_OFFSET_TABLE_ that points to the GOT section. Modified Paths: -------------- trunk/ld/amd64.c This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kai...@us...> - 2012-12-02 02:16:48
|
Revision: 2707 http://elftoolchain.svn.sourceforge.net/elftoolchain/?rev=2707&view=rev Author: kaiwang27 Date: 2012-12-02 02:16:42 +0000 (Sun, 02 Dec 2012) Log Message: ----------- Set the import function symbol value to the address of its PLT slot. The relocation function will use this value to rewrite the function call to point to the PLT slot later. Modified Paths: -------------- trunk/ld/amd64.c This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kai...@us...> - 2012-12-09 16:56:07
|
Revision: 2737 http://elftoolchain.svn.sourceforge.net/elftoolchain/?rev=2737&view=rev Author: kaiwang27 Date: 2012-12-09 16:56:01 +0000 (Sun, 09 Dec 2012) Log Message: ----------- Implement arch-specific function is_absolute_reloc for amd64. Modified Paths: -------------- trunk/ld/amd64.c This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kai...@us...> - 2012-12-12 03:34:27
|
Revision: 2755 http://elftoolchain.svn.sourceforge.net/elftoolchain/?rev=2755&view=rev Author: kaiwang27 Date: 2012-12-12 03:34:19 +0000 (Wed, 12 Dec 2012) Log Message: ----------- Config relocation entry type and size for amd64. Modified Paths: -------------- trunk/ld/amd64.c This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kai...@us...> - 2012-12-12 03:36:10
|
Revision: 2761 http://elftoolchain.svn.sourceforge.net/elftoolchain/?rev=2761&view=rev Author: kaiwang27 Date: 2012-12-12 03:35:59 +0000 (Wed, 12 Dec 2012) Log Message: ----------- Add support for R_X86_64_PLT32 and R_X86_64_GOTPCREL relocation types. Modified Paths: -------------- trunk/ld/amd64.c This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kai...@us...> - 2012-12-12 04:13:40
|
Revision: 2774 http://elftoolchain.svn.sourceforge.net/elftoolchain/?rev=2774&view=rev Author: kaiwang27 Date: 2012-12-12 04:13:32 +0000 (Wed, 12 Dec 2012) Log Message: ----------- The PLT section needs to have section flag SHF_EXECINSTR. Modified Paths: -------------- trunk/ld/amd64.c This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kai...@us...> - 2012-12-17 01:35:14
|
Revision: 2790 http://elftoolchain.svn.sourceforge.net/elftoolchain/?rev=2790&view=rev Author: kaiwang27 Date: 2012-12-17 01:35:08 +0000 (Mon, 17 Dec 2012) Log Message: ----------- Fix a bug that R_X86_64_GOTPCREL relocation is not actually applied. Modified Paths: -------------- trunk/ld/amd64.c This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kai...@us...> - 2012-12-17 01:35:32
|
Revision: 2791 http://elftoolchain.svn.sourceforge.net/elftoolchain/?rev=2791&view=rev Author: kaiwang27 Date: 2012-12-17 01:35:26 +0000 (Mon, 17 Dec 2012) Log Message: ----------- Make sure the symbol value of a defined function in a DSO is pointing to the actual function definition. (The function calls to this function inside the DSO should still jump to the PLT to allow the function to be overridden) Modified Paths: -------------- trunk/ld/amd64.c This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kai...@us...> - 2012-12-17 01:35:46
|
Revision: 2792 http://elftoolchain.svn.sourceforge.net/elftoolchain/?rev=2792&view=rev Author: kaiwang27 Date: 2012-12-17 01:35:40 +0000 (Mon, 17 Dec 2012) Log Message: ----------- Remember to use the addend when processing R_X86_64_TLSGD relocation. Modified Paths: -------------- trunk/ld/amd64.c This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kai...@us...> - 2012-12-17 01:36:41
|
Revision: 2794 http://elftoolchain.svn.sourceforge.net/elftoolchain/?rev=2794&view=rev Author: kaiwang27 Date: 2012-12-17 01:36:35 +0000 (Mon, 17 Dec 2012) Log Message: ----------- When allocating GOT entries for GOT relocations, do not update symbol GOT offset (which is used for relocation later) for R_X86_64_DTPOFF64 relocation. This is because R_X86_64_DTPMOD64 and R_X86_64_DTPOFF64 are TLS relocations generated for the same symbol, and that only the GOT entry for R_X86_64_DTPMOD64 is referenced by the R_X86_64_TLSGD relocation later when applying relocation. Otherwise the wrong GOT entry will be used by the runtime linker when the DSO is loaded. Modified Paths: -------------- trunk/ld/amd64.c This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kai...@us...> - 2012-12-24 08:23:16
|
Revision: 2800 http://elftoolchain.svn.sourceforge.net/elftoolchain/?rev=2800&view=rev Author: kaiwang27 Date: 2012-12-24 08:23:08 +0000 (Mon, 24 Dec 2012) Log Message: ----------- Implement TLS relaxation from Global Dynamic model to Initial Exec model. Modified Paths: -------------- trunk/ld/amd64.c This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kai...@us...> - 2012-12-24 08:23:26
|
Revision: 2801 http://elftoolchain.svn.sourceforge.net/elftoolchain/?rev=2801&view=rev Author: kaiwang27 Date: 2012-12-24 08:23:19 +0000 (Mon, 24 Dec 2012) Log Message: ----------- Add support for Initial Exec TLS model under amd64. (relaxation not yet supported) Modified Paths: -------------- trunk/ld/amd64.c This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kai...@us...> - 2012-12-24 08:24:21
|
Revision: 2808 http://elftoolchain.svn.sourceforge.net/elftoolchain/?rev=2808&view=rev Author: kaiwang27 Date: 2012-12-24 08:24:15 +0000 (Mon, 24 Dec 2012) Log Message: ----------- Reserve 2 GOT entries instead of 1 for the R_X86_64_DTPMOD64 relocation assoicated with the Local Dynamic TLS model. (the second entry, i.e., the "offset" will not be intialized by the runtime linker and should always be 0) Modified Paths: -------------- trunk/ld/amd64.c This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kai...@us...> - 2012-12-24 08:24:44
|
Revision: 2811 http://elftoolchain.svn.sourceforge.net/elftoolchain/?rev=2811&view=rev Author: kaiwang27 Date: 2012-12-24 08:24:38 +0000 (Mon, 24 Dec 2012) Log Message: ----------- For now always create a R_X86_64_GLOB_DAT relocation for a GOT entry. There are cases that the symbol's address is known at link time and the GOT entry value can be filled in by the program linker instead. Modified Paths: -------------- trunk/ld/amd64.c This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kai...@us...> - 2012-12-24 08:24:58
|
Revision: 2813 http://elftoolchain.svn.sourceforge.net/elftoolchain/?rev=2813&view=rev Author: kaiwang27 Date: 2012-12-24 08:24:52 +0000 (Mon, 24 Dec 2012) Log Message: ----------- Implement TLS relaxation from Global Dynamic to Local Exec model. Modified Paths: -------------- trunk/ld/amd64.c This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kai...@us...> - 2012-12-24 08:25:04
|
Revision: 2814 http://elftoolchain.svn.sourceforge.net/elftoolchain/?rev=2814&view=rev Author: kaiwang27 Date: 2012-12-24 08:24:58 +0000 (Mon, 24 Dec 2012) Log Message: ----------- Implement TLS relaxation from Initial Exec to Local Exec model. Modified Paths: -------------- trunk/ld/amd64.c This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kai...@us...> - 2012-12-24 08:25:15
|
Revision: 2815 http://elftoolchain.svn.sourceforge.net/elftoolchain/?rev=2815&view=rev Author: kaiwang27 Date: 2012-12-24 08:25:05 +0000 (Mon, 24 Dec 2012) Log Message: ----------- * Do not perform any TLS relaxation if the linker is creating a DSO. * Relax Global Dynamic model to Initial Exec model if the linker is creating an executable and Local Exec model can not be used. Modified Paths: -------------- trunk/ld/amd64.c This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kai...@us...> - 2012-12-24 08:25:24
|
Revision: 2816 http://elftoolchain.svn.sourceforge.net/elftoolchain/?rev=2816&view=rev Author: kaiwang27 Date: 2012-12-24 08:25:13 +0000 (Mon, 24 Dec 2012) Log Message: ----------- When performing Global Dynamic to Initial Exec TLS relaxation: * Use "addq" instead of "movq" for Initial Exec model instruction. * The Instruction Pointer `p' should be added by 8 since the offset to apply the relocation is moved forward by 8 bytes. Modified Paths: -------------- trunk/ld/amd64.c This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kai...@us...> - 2013-08-24 23:09:49
|
Revision: 2958 http://elftoolchain.svn.sourceforge.net/elftoolchain/?rev=2958&view=rev Author: kaiwang27 Date: 2013-08-24 23:09:40 +0000 (Sat, 24 Aug 2013) Log Message: ----------- Clear the second and the third GOT(PLT) entries for the dynamic linker. (Values in these two entries are ignored by the dyanmic linker, but still it's better to set them to 0) Modified Paths: -------------- trunk/ld/amd64.c This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kai...@us...> - 2013-08-25 17:30:00
|
Revision: 2963 http://elftoolchain.svn.sourceforge.net/elftoolchain/?rev=2963&view=rev Author: kaiwang27 Date: 2013-08-25 17:29:54 +0000 (Sun, 25 Aug 2013) Log Message: ----------- Fix a critical but hidden bug: we save the PLT address of a function as its symbol value, if the function's address has being taken (for comparison or indirect call). However, the code can not handle the case that a relative relocation (direct function call) is seen first then the absolute relocation, in other words, the same function is called in different ways. In that case the PLT address is not set as the symbol value, which causes the indirect function call to fail. Modified Paths: -------------- trunk/ld/amd64.c This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |