summaryrefslogtreecommitdiff
path: root/binutils-2.24.51.midipix.patch
AgeCommit message (Collapse)AuthorFilesLines
2019-08-30project: applied new directory layout (./etc and ./patches sub-directories).midipix1-1391/+0
2019-08-18binutils-2.24.51: lang_add_input_file(): remove mdso bits (no longer needed).midipix1-22/+0
Following the previous commit (8fb8b35552738814a6bd10a9c1c2a0d3b3e2dc0f), and since all "real" input arguments are later funneled through ldfile_try_open_bfd(), performing the name-substitution during the input statement list construction phase is no longer necessary.
2019-08-17binutils-2.24.51: ldfile_try_open_bfd(): integrated pe_mdso_input_name().midipix1-20/+52
2019-08-17binutils-2.24.51: mdso targets: refined pe_mdso_input_name() integration.midipix1-1/+3
2019-08-17binutils-2.24.51: mdso targets: added and integrated pe_mdso_input_name().midipix1-3/+265
Following this commit, image arguments (e.g. libfoo.so) are replaced with temporary mdso import libraries that are generated on the fly using the perk and mdso library interfaces. As should be noted, the above logic is only in effect when PE_TARGET_MDSO is defined. For non-mdso targets (e.g. mingw), ld continues to generate in-memory legacy .idata import libraries as it did before.
2019-08-16binutils-2.24.51: mdso targets: added ld/pe-mdso.c, included in build.midipix1-6/+9
2019-08-16binutils-2.24.51: midipix targets: defined PE_TARGET_MDSO, renamed mdso header.midipix1-7/+11
2019-08-16binutils-2.24.51: further refactor pemdso.h, pe.em, and pep.em.midipix1-44/+47
2019-08-15binutils-2.24.51: refactored and separated mdso and midipix target bits.midipix1-9/+10
2019-08-15binutils-2.24.51: midipix targets: enable the perk and mdso library interfaces.midipix1-13/+50
2019-06-30binutils-2.24.51: pe_dll_generate_dsolib(): support symbol vector as input.midipix1-9/+19
2019-02-09binutils-2.24.51: support .got entries created in .dsosyms.midipix1-6/+7
2019-01-08binutils-2.24.51: properly handle weak symbols that are also hidden.midipix1-17/+33
2017-10-25binutils-2.24.51: added mdso integration support.midipix1-23/+326
2017-01-20binutils-2.24.51: updated patch.midipix1-12/+0
2016-11-23binutils-2.24.51: updated patch.midipix1-0/+11
+ unset NATIVE_LIB_DIRS; leave handling of library search path to driver.
2016-11-23binutils-2.24.51: updated patch.midipix1-6/+6
2016-05-18binutils-2.24.51: updated patch.midipix1-0/+14
+ PE/COFF: properly handle references to addresses of weak data symbols. + a special thanks to Rich Felker, primary author of musl libc, for invaluable help and direction. + while commit 8dfab477 did resolve binutils bug 16858, it did not address the issue of references to weak data symbols. Before this patch, assembly of the the following minimal example would result in p holding offset of dummy from the beginning of the .data section which is always wrong (weak data symbols should be treated the same way as external symbols) and never needed, namely since the recorded dependency on 'a' suffices for the linker even in cases where the strong symbol 'a' is not present. + relevant code path: md_apply_fix(): for PE targets, and given a relocation based on a weak symbol that is *not* a function, store the inverse of the symbol value, retrieved via S_GET_VALUE (fixP->fx_addsy); bfd_install_relocation(): here we relocate based on the weak symbol's value: relocation = symbol->value; this value is later added to the value that was stored to memory in the previous step: DOIT(x); the result is zero plus any offset that is symbol-relative (array member, etc.) == TEST CASE == .data .globl top .balign 8 top: .quad 0x12345678 .balign 4 dummy: .long 7 .globl p .balign 8 p: .quad a .weak a .set a,dummy == VERIFICATION == a.o: file format pe-x86-64 Disassembly of section .data: 0000000000000000 <top>: 0: 78 56 js 58 <p+0x48> 2: 34 12 xor $0x12,%al 4: 00 00 add %al,(%rax) ... 0000000000000008 <.weak.a.top>: 8: 07 (bad) 9: 00 00 add %al,(%rax) b: 00 00 add %al,(%rax) d: 00 00 add %al,(%rax) ... 0000000000000010 <p>: ... 10: R_X86_64_64 a signed-off by Z. Gilboa; see copying.midipix (9cd0746c) for additional information.
2015-11-26binutils-2.24.51: updated patch.midipix1-0/+14
+ smart_rename: fallback to simple_copy upon failure. signed-off by Z. Gilboa; see copying.midipix (9cd0746c) for additional information.
2015-11-26binutils-2.24.51: updated patch.midipix1-2/+20
+ pe targets: disable default timestamp / support reproducible builds by default. signed-off by Z. Gilboa; see copying.midipix (9cd0746c) for additional information.
2015-09-13binutils-2.24.51: updated patch.midipix1-1/+10
+ x86 midipix targets: build dlltool and windmc by default. signed-off by Z. Gilboa; see copying.midipix (9cd0746c) for additional information.
2015-06-13binutils-2.24.51: updated patch.midipix1-11/+30
+ PE/COFF: when exporting a symbol for which both a strong and a weak definition exists, always use the strong definition. signed-off by Z. Gilboa; see copying.midipix (9cd0746c) for additional information.
2015-06-12binutils-2.24.51: updated patch.midipix1-0/+30
+ solve binutils bug 16858 by removing the offending code block in its entirety.
2015-06-08binutils-2.24.51: updated patch.midipix1-4/+14
+ PE/COFF: distinguish between GOT entries and import library entries when deciding whether a symbol may be exported. signed-off by Z. Gilboa; see copying.midipix (9cd0746c) for additional information.
2015-06-06binutils-2.24.51: updated patch.midipix1-3/+63
+ PE/COFF: allow a weak definition in an archive member to satisfy a reference to an undefined external symbol in another object. + a special thanks to Rich Felker, primary author of musl libc, for identifying the spot at which a fix needed to be applied. signed-off by Z. Gilboa; see copying.midipix (9cd0746c) for additional information.
2015-06-06binutils-2.24.51: updated patch.midipix1-2/+19
+ PE shared libraries: fix the logic that allows weak definitions to be exported (cf. commit ddd1583). signed-off by Z. Gilboa; see copying.midipix (9cd0746c) for additional information.
2015-06-06binutils-2.24.51: updated patch.midipix1-0/+26
+ PE/COFF: allow a reference to an external symbol in one object file be satisfied by a weak definition in another. + a special thanks to Rich Felker, primary author of musl libc, for identifying the spot at which a fix needed to be applied. signed-off by Z. Gilboa; see copying.midipix (9cd0746c) for additional information.
2015-06-05binutils-2.24.51: updated patch.midipix1-3/+42
+ PE shared libraries: allow weak aliases to be exported. signed-off by Z. Gilboa; see copying.midipix (9cd0746c) for additional information.
2015-03-28ld: set the default executable name to 'a.out' properly.midipix1-5/+7
signed-off by Z. Gilboa; see copying.midipix (9cd0746c) for additional information.
2015-03-28ld: set the default executable name to 'a.out' (rather than 'a.exe').midipix1-2/+4
signed-off by Z. Gilboa; see copying.midipix (9cd0746c) for additional information.
2015-03-11binutils-2.24.51: initial patch: finally add midipix as a binutils target.midipix1-0/+90
2015-03-11binutils-2.24.51: initial patch: allow the symbol 'environ' tomidipix1-0/+22
be exported by PE images, but leave it excluded by default so that non-midipix PE targets remain unaffected. signed-off by Z. Gilboa; see copying.midipix (9cd0746c) for additional information.
2015-03-11binutils-2.24.51: initial patch: fix legacy code-page identifier.midipix1-0/+12
signed-off by Z. Gilboa; see copying.midipix (9cd0746c) for additional information.
2015-03-11binutils-2.24.51: initial patch: make the ___crt_xxx symbols and themidipix1-3/+160
cygwin fork section optional, but leave them on by default so that non-midipix PE targets remain unaffected. signed-off by Z. Gilboa; see copying.midipix (9cd0746c) for additional information.
2015-03-11binutils-2.24.51: initial patch: provide backward-compatible file extensionmidipix1-0/+185
definitions for all PE targets signed-off by Z. Gilboa; see copying.midipix (9cd0746c) for additional information.
2015-03-11binutils-2.24.51: initial patch: file extension definitions for the midipix ↵midipix1-0/+14
targets signed-off by Z. Gilboa; see copying.midipix (9cd0746c) for additional information.