The NetBSD Project

CVS log for src/libexec/ld.elf_so/arch/powerpc/ppc_reloc.c

[BACK] Up to [cvs.NetBSD.org] / src / libexec / ld.elf_so / arch / powerpc

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.58.2.3 / (download) - annotate - [select for diffs], Fri Aug 4 12:55:47 2023 UTC (6 months, 2 weeks ago) by martin
Branch: netbsd-9
Changes since 1.58.2.2: +4 -3 lines
Diff to previous 1.58.2.2 (colored) to branchpoint 1.58 (colored) next main 1.59 (colored)

Pull up following revision(s), all via patch,
(requested by riastradh in ticket #1699):

	distrib/sets/lists/tests/shl.mi: revision 1.14
	distrib/sets/lists/tests/shl.mi: revision 1.15
	distrib/sets/lists/tests/shl.mi: revision 1.16
	tests/libexec/ld.elf_so/helper_def_static/h_def_static.c: revision 1.1
	tests/libexec/ld.elf_so/helper_def_dynamic/Makefile: revision 1.1
	tests/libexec/ld.elf_so/helper_def_dynamic/Makefile: revision 1.2
	tests/libexec/ld.elf_so/helper_onlyuse_static/Makefile: revision 1.1
	tests/libexec/ld.elf_so/helper_onlyuse_static/Makefile: revision 1.2
	libexec/ld.elf_so/arch/mips/mips_reloc.c: revision 1.75
	distrib/sets/lists/tests/mi: revision 1.1265
	libexec/ld.elf_so/arch/sh3/mdreloc.c: revision 1.36
	libexec/ld.elf_so/rtld.c: revision 1.214
	tests/libexec/ld.elf_so/helper_onlydef_static/Makefile: revision 1.1
	distrib/sets/lists/debug/mi: revision 1.400
	tests/libexec/ld.elf_so/helper_onlydef_static/Makefile: revision 1.2
	distrib/sets/lists/debug/mi: revision 1.401
	distrib/sets/lists/debug/mi: revision 1.402
	tests/libexec/ld.elf_so/helper_dso2/Makefile: revision 1.2
	distrib/sets/lists/debug/mi: revision 1.403
	tests/libexec/ld.elf_so/helper_symver_dso0/Makefile: revision 1.2
	libexec/ld.elf_so/arch/x86_64/mdreloc.c: revision 1.48
	distrib/sets/lists/debug/mi: revision 1.406
	tests/libexec/ld.elf_so/helper_use_dynamic/Makefile: revision 1.1
	tests/libexec/ld.elf_so/helper_use_dynamic/Makefile: revision 1.2
	tests/libexec/ld.elf_so/helper_ifunc_dso/Makefile: revision 1.2
	libexec/ld.elf_so/arch/sparc64/mdreloc.c: revision 1.70
	libexec/ld.elf_so/arch/aarch64/mdreloc.c: revision 1.18
	tests/libexec/ld.elf_so/helper_abuse_dynamic/Makefile: revision 1.1
	tests/libexec/ld.elf_so/helper_abuse_dynamic/Makefile: revision 1.2
	tests/libexec/ld.elf_so/Makefile: revision 1.13
	libexec/ld.elf_so/arch/arm/mdreloc.c: revision 1.46
	libexec/ld.elf_so/rtld.h: revision 1.146
	tests/libexec/ld.elf_so/Makefile: revision 1.14
	distrib/sets/lists/debug/shl.mi: revision 1.306
	tests/libexec/ld.elf_so/Makefile: revision 1.15
	tests/libexec/ld.elf_so/helper_abuse_static/Makefile: revision 1.1
	distrib/sets/lists/debug/shl.mi: revision 1.307
	tests/libexec/ld.elf_so/Makefile: revision 1.16
	tests/libexec/ld.elf_so/helper_abuse_static/Makefile: revision 1.2
	distrib/sets/lists/debug/shl.mi: revision 1.308
	tests/libexec/ld.elf_so/Makefile: revision 1.17
	distrib/sets/lists/debug/shl.mi: revision 1.309
	tests/libexec/ld.elf_so/Makefile: revision 1.18
	tests/libexec/ld.elf_so/Makefile: revision 1.19
	libexec/ld.elf_so/tls.c: revision 1.16
	libexec/ld.elf_so/tls.c: revision 1.17
	libexec/ld.elf_so/tls.c: revision 1.18
	libexec/ld.elf_so/tls.c: revision 1.19
	tests/libexec/ld.elf_so/helper_onlydef_static/h_onlydef_static.c: revision 1.1
	tests/libexec/ld.elf_so/helper_use_static/h_use_static.c: revision 1.1
	tests/libexec/ld.elf_so/helper_use_static/h_use_static.c: revision 1.2
	tests/libexec/ld.elf_so/helper_def_static/Makefile: revision 1.1
	tests/libexec/ld.elf_so/helper_def_static/Makefile: revision 1.2
	libexec/ld.elf_so/arch/hppa/hppa_reloc.c: revision 1.50
	distrib/sets/lists/debug/shl.mi: revision 1.310
	libexec/ld.elf_so/README.TLS: revision 1.6
	distrib/sets/lists/debug/shl.mi: revision 1.311
	distrib/sets/lists/debug/shl.mi: revision 1.314
	tests/libexec/ld.elf_so/helper_dso3/Makefile: revision 1.2
	tests/libexec/ld.elf_so/helper_symver_dso1/Makefile: revision 1.4
	libexec/ld.elf_so/arch/powerpc/ppc_reloc.c: revision 1.63
	tests/libexec/ld.elf_so/helper_def_dynamic/h_def_dynamic.c: revision 1.1
	tests/libexec/ld.elf_so/helper_onlydef/Makefile: revision 1.1
	tests/libexec/ld.elf_so/helper_onlydef/Makefile: revision 1.2
	tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.10
	tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.11
	tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.12
	libexec/ld.elf_so/map_object.c: revision 1.66
	tests/libexec/ld.elf_so/helper.mk: revision 1.1
	libexec/ld.elf_so/arch/sparc/mdreloc.c: revision 1.57
	libexec/ld.elf_so/map_object.c: revision 1.67
	tests/libexec/ld.elf_so/helper_onlydef/h_onlydef.c: revision 1.1
	tests/libexec/ld.elf_so/helper_symver_dso2/Makefile: revision 1.4
	tests/libexec/ld.elf_so/helper_use_static/Makefile: revision 1.1
	tests/libexec/ld.elf_so/helper_use_static/Makefile: revision 1.2
	tests/libexec/ld.elf_so/helper_use_static/Makefile: revision 1.3
	tests/libexec/ld.elf_so/helper_use_dynamic/h_use_dynamic.c: revision 1.1
	tests/libexec/ld.elf_so/helper_abuse_static/h_abuse_static.c: revision 1.1
	libexec/ld.elf_so/arch/riscv/mdreloc.c: revision 1.9
	tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.1
	tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.2
	tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.3
	tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.4
	tests/libexec/ld.elf_so/helper_onlyctor_dynamic/Makefile: revision 1.1
	tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.5
	tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.6
	libexec/ld.elf_so/arch/m68k/mdreloc.c: revision 1.34
	tests/libexec/ld.elf_so/helper_onlyctor_dynamic/Makefile: revision 1.2
	tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.7
	libexec/ld.elf_so/arch/i386/mdreloc.c: revision 1.42
	tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.8
	libexec/ld.elf_so/arch/i386/mdreloc.c: revision 1.43
	libexec/ld.elf_so/arch/or1k/mdreloc.c: revision 1.4
	tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.9
	tests/libexec/ld.elf_so/helper_onlyuse_dynamic/Makefile: revision 1.1
	tests/libexec/ld.elf_so/helper_onlyuse_dynamic/Makefile: revision 1.2
	tests/libexec/ld.elf_so/helper_abuse_dynamic/h_abuse_dynamic.c: revision 1.1
	tests/libexec/ld.elf_so/helper_onlyctor_dynamic/h_onlyctor_dynamic.c: revision 1.1
	tests/libexec/ld.elf_so/helper_onlyuse_static/h_onlyuse_static.c: revision 1.1
	tests/libexec/ld.elf_so/helper_onlyuse_dynamic/h_onlyuse_dynamic.c: revision 1.1
	tests/libexec/ld.elf_so/helper_dso1/Makefile: revision 1.2
	distrib/sets/lists/tests/shl.mi: revision 1.12
	distrib/sets/lists/tests/shl.mi: revision 1.13
	libexec/ld.elf_so/arch/alpha/alpha_reloc.c: revision 1.44

ld.elf_so: New test for extern initial-exec TLS, PR toolchain/50277.

ld.elf_so: Fix extern TLS test to match PR toolchain/50277.
Now it's actually testing the problem.
ld.elf_so: Nix inadvertently committed private test program.
ld.elf_so: Fix set lists for MKDEBUG=yes builds with t_tls_extern.

ld.elf_so: Sprinkle tls debug messages.

ld.elf_so: Make tls alloc debug messages more detailed and greppable.

ld.elf_so: Test variations on PR toolchain/50277.

ld.elf_so: Test extern dynamic TLS too.

ld.elf_so: Factor out logic in TLS tests to make writing more easier.
No functional change intended.

ld.elf_so: Test TLS abuse of static def, dynamic use and vice versa.

ld.elf_so: Shorter test names.
No functional non-cosmetic change intended.

ld.elf_so: Separately test eager and lazy resolution of def tls ptr.
eager: before loading use library
lazy: after loading use library

Add recent ld.elf_so test helpers debug info
ld.elf_so: Add new files to debug/shl.mi.

ld.elf_so: tls_extern dynamic_defabuse_eager must xfail differently.
If a symbol has already been resolved as dynamic TLS, any library
that tries to use it as static TLS cannot be dlopened.

ld.elf_so: Test another edge case of mismatched TLS models.
One library defines a symbol and _doesn't_ use it, so it has no
indication of whether the symbol is for static TLS or dynamic TLS,
and then two other libraries use it in different ways.

ld.elf_so: Test dynamic-then-static abuse via ctor.

ld.elf_so: Fix missing tab in debug/shl.mi in last change.

Fix interactions of initial-exec TLS model and dlopen

(1) If an initial-exec relocation was used for a non-local symbol
(i.e. the definition of the symbol is in a different DSO), the
computation of the static TLS offset used the wrong DSO.

This would effectively mean the wrong address was computed
(PR toolchain/50277, PR pkg/57445).
Fix this by forcing the computation of the correct DSO (the one defining
the symbol).
This code uses __UNCONST to avoid the vast interface changes for this
special case.

(2) If symbols from a DSO loaded via dlopen are used with both
global-dynamic/local-dynamic and initial-exec relocations AND
a initial-exec relocation was resolved first in a thread, a split brain
situation could exist where the dynamic relocations would use one memory
block (separate allocation) and the initial-exec relocations the static
per-thread TLS space.

(3) If the initial-exec relocation in (2) is seen after any thread has
already used a GD/LD allocation, bail out. Since IE relocations are used
only in the GOT, this will prevent the dlopen. This is a bit more
aggressive than necessary, but a full blown reference counting doesn't
seem to be justified.
Avoid using uninitialized variable "symnum" when building with DEBUG
enabled by borrowing the rdbg_symname() macro from arch/x86_64.
ld.elf_so: Sprinkle more debug messages on dlopen and error.

PR pkg/57445

Fix MKDEBUGLIB build by adding these installed files to the debug
set list.

One could argue that these files are not of any use, so why install
them?  I don't have a good argument either way, and this is (for
now) a simple work-around for PR bin/57455   Please feel free to
commit a different fix to avoid installing these files at all.

Fix markup of libh_ MKDEBUGLIB=yes only files

TLS variant I archs need to fudge the offset by the size of the TCB.
tests/libexec/ld.elf_so: Fix helper library makefiles.
1. Consolidate logic into a single helper.mk to reduce duplication.
2. Set NO* variables, not MK* variables which are reserved for user.
3. Avoid eager X!= in favour of lazy ${X:sh}.
4. Mark _g.a set list entries obsolete.  Never should've been built!
PR misc/57462

Revision 1.62.2.1 / (download) - annotate - [select for diffs], Tue Aug 1 16:34:59 2023 UTC (6 months, 3 weeks ago) by martin
Branch: netbsd-10
CVS Tags: netbsd-10-0-RC4, netbsd-10-0-RC3, netbsd-10-0-RC2, netbsd-10-0-RC1
Changes since 1.62: +4 -3 lines
Diff to previous 1.62 (colored) next main 1.63 (colored)

Pull up following revision(s) (requested by riastradh in ticket #297):

	distrib/sets/lists/tests/shl.mi: revision 1.14
	distrib/sets/lists/tests/shl.mi: revision 1.15
	distrib/sets/lists/tests/shl.mi: revision 1.16
	tests/libexec/ld.elf_so/helper_def_static/h_def_static.c: revision 1.1
	tests/libexec/ld.elf_so/helper_def_dynamic/Makefile: revision 1.1
	tests/libexec/ld.elf_so/helper_def_dynamic/Makefile: revision 1.2
	tests/libexec/ld.elf_so/helper_onlyuse_static/Makefile: revision 1.1
	tests/libexec/ld.elf_so/helper_onlyuse_static/Makefile: revision 1.2
	libexec/ld.elf_so/arch/mips/mips_reloc.c: revision 1.75
	distrib/sets/lists/tests/mi: revision 1.1265
	libexec/ld.elf_so/arch/sh3/mdreloc.c: revision 1.36
	libexec/ld.elf_so/rtld.c: revision 1.214
	tests/libexec/ld.elf_so/helper_onlydef_static/Makefile: revision 1.1
	distrib/sets/lists/debug/mi: revision 1.400
	tests/libexec/ld.elf_so/helper_onlydef_static/Makefile: revision 1.2
	distrib/sets/lists/debug/mi: revision 1.401
	distrib/sets/lists/debug/mi: revision 1.402
	tests/libexec/ld.elf_so/helper_dso2/Makefile: revision 1.2
	distrib/sets/lists/debug/mi: revision 1.403
	tests/libexec/ld.elf_so/helper_symver_dso0/Makefile: revision 1.2
	libexec/ld.elf_so/arch/x86_64/mdreloc.c: revision 1.48
	distrib/sets/lists/debug/mi: revision 1.406
	tests/libexec/ld.elf_so/helper_use_dynamic/Makefile: revision 1.1
	tests/libexec/ld.elf_so/helper_use_dynamic/Makefile: revision 1.2
	tests/libexec/ld.elf_so/helper_ifunc_dso/Makefile: revision 1.2
	libexec/ld.elf_so/arch/sparc64/mdreloc.c: revision 1.70
	libexec/ld.elf_so/arch/aarch64/mdreloc.c: revision 1.18
	tests/libexec/ld.elf_so/helper_abuse_dynamic/Makefile: revision 1.1
	tests/libexec/ld.elf_so/helper_abuse_dynamic/Makefile: revision 1.2
	tests/libexec/ld.elf_so/Makefile: revision 1.13
	libexec/ld.elf_so/arch/arm/mdreloc.c: revision 1.46
	libexec/ld.elf_so/rtld.h: revision 1.146
	tests/libexec/ld.elf_so/Makefile: revision 1.14
	distrib/sets/lists/debug/shl.mi: revision 1.306
	tests/libexec/ld.elf_so/Makefile: revision 1.15
	tests/libexec/ld.elf_so/helper_abuse_static/Makefile: revision 1.1
	distrib/sets/lists/debug/shl.mi: revision 1.307
	tests/libexec/ld.elf_so/Makefile: revision 1.16
	tests/libexec/ld.elf_so/helper_abuse_static/Makefile: revision 1.2
	distrib/sets/lists/debug/shl.mi: revision 1.308
	tests/libexec/ld.elf_so/Makefile: revision 1.17
	distrib/sets/lists/debug/shl.mi: revision 1.309
	tests/libexec/ld.elf_so/Makefile: revision 1.18
	tests/libexec/ld.elf_so/Makefile: revision 1.19
	libexec/ld.elf_so/tls.c: revision 1.16
	libexec/ld.elf_so/tls.c: revision 1.17
	libexec/ld.elf_so/tls.c: revision 1.18
	libexec/ld.elf_so/tls.c: revision 1.19
	tests/libexec/ld.elf_so/helper_onlydef_static/h_onlydef_static.c: revision 1.1
	tests/libexec/ld.elf_so/helper_use_static/h_use_static.c: revision 1.1
	tests/libexec/ld.elf_so/helper_use_static/h_use_static.c: revision 1.2
	tests/libexec/ld.elf_so/helper_def_static/Makefile: revision 1.1
	tests/libexec/ld.elf_so/helper_def_static/Makefile: revision 1.2
	libexec/ld.elf_so/arch/hppa/hppa_reloc.c: revision 1.50
	distrib/sets/lists/debug/shl.mi: revision 1.310
	libexec/ld.elf_so/README.TLS: revision 1.6
	distrib/sets/lists/debug/shl.mi: revision 1.311
	distrib/sets/lists/debug/shl.mi: revision 1.314
	tests/libexec/ld.elf_so/helper_dso3/Makefile: revision 1.2
	tests/libexec/ld.elf_so/helper_symver_dso1/Makefile: revision 1.4
	libexec/ld.elf_so/arch/powerpc/ppc_reloc.c: revision 1.63
	tests/libexec/ld.elf_so/helper_def_dynamic/h_def_dynamic.c: revision 1.1
	tests/libexec/ld.elf_so/helper_onlydef/Makefile: revision 1.1
	tests/libexec/ld.elf_so/helper_onlydef/Makefile: revision 1.2
	tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.10
	tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.11
	tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.12
	libexec/ld.elf_so/map_object.c: revision 1.66
	tests/libexec/ld.elf_so/helper.mk: revision 1.1
	libexec/ld.elf_so/arch/sparc/mdreloc.c: revision 1.57
	libexec/ld.elf_so/map_object.c: revision 1.67
	tests/libexec/ld.elf_so/helper_onlydef/h_onlydef.c: revision 1.1
	tests/libexec/ld.elf_so/helper_symver_dso2/Makefile: revision 1.4
	tests/libexec/ld.elf_so/helper_use_static/Makefile: revision 1.1
	tests/libexec/ld.elf_so/helper_use_static/Makefile: revision 1.2
	tests/libexec/ld.elf_so/helper_use_static/Makefile: revision 1.3
	tests/libexec/ld.elf_so/helper_use_dynamic/h_use_dynamic.c: revision 1.1
	tests/libexec/ld.elf_so/helper_abuse_static/h_abuse_static.c: revision 1.1
	libexec/ld.elf_so/arch/riscv/mdreloc.c: revision 1.9
	tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.1
	tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.2
	tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.3
	tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.4
	tests/libexec/ld.elf_so/helper_onlyctor_dynamic/Makefile: revision 1.1
	tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.5
	tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.6
	libexec/ld.elf_so/arch/m68k/mdreloc.c: revision 1.34
	tests/libexec/ld.elf_so/helper_onlyctor_dynamic/Makefile: revision 1.2
	tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.7
	libexec/ld.elf_so/arch/i386/mdreloc.c: revision 1.42
	tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.8
	libexec/ld.elf_so/arch/i386/mdreloc.c: revision 1.43
	libexec/ld.elf_so/arch/or1k/mdreloc.c: revision 1.4
	tests/libexec/ld.elf_so/t_tls_extern.c: revision 1.9
	tests/libexec/ld.elf_so/helper_onlyuse_dynamic/Makefile: revision 1.1
	tests/libexec/ld.elf_so/helper_onlyuse_dynamic/Makefile: revision 1.2
	tests/libexec/ld.elf_so/helper_abuse_dynamic/h_abuse_dynamic.c: revision 1.1
	tests/libexec/ld.elf_so/helper_onlyctor_dynamic/h_onlyctor_dynamic.c: revision 1.1
	tests/libexec/ld.elf_so/helper_onlyuse_static/h_onlyuse_static.c: revision 1.1
	tests/libexec/ld.elf_so/helper_onlyuse_dynamic/h_onlyuse_dynamic.c: revision 1.1
	tests/libexec/ld.elf_so/helper_dso1/Makefile: revision 1.2
	distrib/sets/lists/tests/shl.mi: revision 1.12
	distrib/sets/lists/tests/shl.mi: revision 1.13
	libexec/ld.elf_so/arch/alpha/alpha_reloc.c: revision 1.44
	(all via patch)

ld.elf_so: New test for extern initial-exec TLS, PR toolchain/50277.

ld.elf_so: Fix extern TLS test to match PR toolchain/50277.
Now it's actually testing the problem.
ld.elf_so: Nix inadvertently committed private test program.
ld.elf_so: Fix set lists for MKDEBUG=yes builds with t_tls_extern.

ld.elf_so: Sprinkle tls debug messages.

ld.elf_so: Make tls alloc debug messages more detailed and greppable.

ld.elf_so: Test variations on PR toolchain/50277.

ld.elf_so: Test extern dynamic TLS too.

ld.elf_so: Factor out logic in TLS tests to make writing more easier.
No functional change intended.

ld.elf_so: Test TLS abuse of static def, dynamic use and vice versa.

ld.elf_so: Shorter test names.
No functional non-cosmetic change intended.

ld.elf_so: Separately test eager and lazy resolution of def tls ptr.
eager: before loading use library
lazy: after loading use library

Add recent ld.elf_so test helpers debug info
ld.elf_so: Add new files to debug/shl.mi.

ld.elf_so: tls_extern dynamic_defabuse_eager must xfail differently.
If a symbol has already been resolved as dynamic TLS, any library
that tries to use it as static TLS cannot be dlopened.

ld.elf_so: Test another edge case of mismatched TLS models.
One library defines a symbol and _doesn't_ use it, so it has no
indication of whether the symbol is for static TLS or dynamic TLS,
and then two other libraries use it in different ways.

ld.elf_so: Test dynamic-then-static abuse via ctor.

ld.elf_so: Fix missing tab in debug/shl.mi in last change.

Fix interactions of initial-exec TLS model and dlopen
(1) If an initial-exec relocation was used for a non-local symbol
(i.e. the definition of the symbol is in a different DSO), the
computation of the static TLS offset used the wrong DSO.
This would effectively mean the wrong address was computed
(PR toolchain/50277, PR pkg/57445).
Fix this by forcing the computation of the correct DSO (the one defining
the symbol).
This code uses __UNCONST to avoid the vast interface changes for this
special case.
(2) If symbols from a DSO loaded via dlopen are used with both
global-dynamic/local-dynamic and initial-exec relocations AND
a initial-exec relocation was resolved first in a thread, a split brain
situation could exist where the dynamic relocations would use one memory
block (separate allocation) and the initial-exec relocations the static
per-thread TLS space.
(3) If the initial-exec relocation in (2) is seen after any thread has
already used a GD/LD allocation, bail out. Since IE relocations are used
only in the GOT, this will prevent the dlopen. This is a bit more
aggressive than necessary, but a full blown reference counting doesn't
seem to be justified.
Avoid using uninitialized variable "symnum" when building with DEBUG
enabled by borrowing the rdbg_symname() macro from arch/x86_64.
ld.elf_so: Sprinkle more debug messages on dlopen and error.
PR pkg/57445
Fix MKDEBUGLIB build by adding these installed files to the debug
set list.
XXX
One could argue that these files are not of any use, so why install
them?  I don't have a good argument either way, and this is (for
now) a simple work-around for PR bin/57455   Please feel free to
commit a different fix to avoid installing these files at all.
Fix markup of libh_ MKDEBUGLIB=yes only files
TLS variant I archs need to fudge the offset by the size of the TCB.
tests/libexec/ld.elf_so: Fix helper library makefiles.
1. Consolidate logic into a single helper.mk to reduce duplication.
2. Set NO* variables, not MK* variables which are reserved for user.
3. Avoid eager X!= in favour of lazy ${X:sh}.
4. Mark _g.a set list entries obsolete.  Never should've been built!
PR misc/57462

Revision 1.63 / (download) - annotate - [select for diffs], Sun Jun 4 01:24:57 2023 UTC (8 months, 3 weeks ago) by joerg
Branch: MAIN
CVS Tags: HEAD
Changes since 1.62: +4 -3 lines
Diff to previous 1.62 (colored)

Fix interactions of initial-exec TLS model and dlopen

(1) If an initial-exec relocation was used for a non-local symbol
(i.e. the definition of the symbol is in a different DSO), the
computation of the static TLS offset used the wrong DSO.
This would effectively mean the wrong address was computed
(PR toolchain/50277, PR pkg/57445).

Fix this by forcing the computation of the correct DSO (the one defining
the symbol).

This code uses __UNCONST to avoid the vast interface changes for this
special case.

(2) If symbols from a DSO loaded via dlopen are used with both
global-dynamic/local-dynamic and initial-exec relocations AND
a initial-exec relocation was resolved first in a thread, a split brain
situation could exist where the dynamic relocations would use one memory
block (separate allocation) and the initial-exec relocations the static
per-thread TLS space.

(3) If the initial-exec relocation in (2) is seen after any thread has
already used a GD/LD allocation, bail out. Since IE relocations are used
only in the GOT, this will prevent the dlopen. This is a bit more
aggressive than necessary, but a full blown reference counting doesn't
seem to be justified.

Revision 1.58.2.2 / (download) - annotate - [select for diffs], Sun Sep 18 00:09:52 2022 UTC (17 months ago) by msaitoh
Branch: netbsd-9
Changes since 1.58.2.1: +2 -5 lines
Diff to previous 1.58.2.1 (colored) to branchpoint 1.58 (colored)

Pull up following revision(s) (requested by martin in ticket #1531):
	libexec/ld.elf_so/arch/powerpc/ppc_reloc.c: revision 1.62
Fix copy & pasto: DTPREL relocations do not need to allocate a static
TLS index. Patch from joerg@

Revision 1.62 / (download) - annotate - [select for diffs], Wed Jul 6 17:35:20 2022 UTC (19 months, 2 weeks ago) by martin
Branch: MAIN
CVS Tags: netbsd-10-base
Branch point for: netbsd-10
Changes since 1.61: +2 -5 lines
Diff to previous 1.61 (colored)

Fix copy & pasto: DTPREL relocations do not need to allocate a static
TLS index. Patch from joerg@

Revision 1.61 / (download) - annotate - [select for diffs], Sun May 24 02:33:11 2020 UTC (3 years, 9 months ago) by macallan
Branch: MAIN
CVS Tags: cjep_sun2x-base1, cjep_sun2x-base, cjep_sun2x, cjep_staticlib_x-base1, cjep_staticlib_x-base, cjep_staticlib_x
Changes since 1.60: +4 -2 lines
Diff to previous 1.60 (colored)

new binutils/gcc started emitting R_PPC_UADDR32 reloc entries, so for now
treat them like R_PPC_ADDR32
XXX
these relocs have been observed in the xf86-video-radeon driver, but only in
the AtomBios support code, which is unused on PowerPC. This allows the driver
to load but it's not clear if the affected parts would actually function.

Revision 1.57.2.2 / (download) - annotate - [select for diffs], Wed Apr 8 14:07:17 2020 UTC (3 years, 10 months ago) by martin
Branch: phil-wifi
Changes since 1.57.2.1: +49 -2 lines
Diff to previous 1.57.2.1 (colored) to branchpoint 1.57 (colored) next main 1.58 (colored)

Merge changes from current as of 20200406

Revision 1.58.2.1 / (download) - annotate - [select for diffs], Mon Dec 9 16:14:10 2019 UTC (4 years, 2 months ago) by martin
Branch: netbsd-9
CVS Tags: netbsd-9-3-RELEASE, netbsd-9-2-RELEASE, netbsd-9-1-RELEASE, netbsd-9-0-RELEASE, netbsd-9-0-RC2
Changes since 1.58: +49 -2 lines
Diff to previous 1.58 (colored)

Pull up following revision(s) (requested by uwe in ticket #535):

	libexec/ld.elf_so/arch/powerpc/ppc_reloc.c: revision 1.60
	libexec/ld.elf_so/arch/powerpc/ppc_reloc.c: revision 1.59

Resolve ADDR16_LO, ADDR16_HI, and ADDR16_HA relocs.

Recent GNU ld does not resolve them statically if the reloc is in a
writable section and the symbol is not already referenced from text.

Use existing lo() and hi() macros.  Same object code is generated.

Revision 1.60 / (download) - annotate - [select for diffs], Sun Dec 8 23:49:16 2019 UTC (4 years, 2 months ago) by uwe
Branch: MAIN
CVS Tags: phil-wifi-20200421, phil-wifi-20200411, phil-wifi-20200406, is-mlppp-base, is-mlppp
Changes since 1.59: +6 -6 lines
Diff to previous 1.59 (colored)

Use existing lo() and hi() macros.  Same object code is generated.

Revision 1.59 / (download) - annotate - [select for diffs], Sun Dec 8 22:57:51 2019 UTC (4 years, 2 months ago) by uwe
Branch: MAIN
Changes since 1.58: +49 -2 lines
Diff to previous 1.58 (colored)

Resolve ADDR16_LO, ADDR16_HI, and ADDR16_HA relocs.

Recent GNU ld does not resolve them statically if the reloc is in a
writable section and the symbol is not already referenced from text.

Revision 1.57.2.1 / (download) - annotate - [select for diffs], Mon Jun 10 22:05:30 2019 UTC (4 years, 8 months ago) by christos
Branch: phil-wifi
Changes since 1.57: +4 -4 lines
Diff to previous 1.57 (colored)

Sync with HEAD

Revision 1.55.2.3 / (download) - annotate - [select for diffs], Fri Jan 18 08:50:11 2019 UTC (5 years, 1 month ago) by pgoyette
Branch: pgoyette-compat
CVS Tags: pgoyette-compat-merge-20190127
Changes since 1.55.2.2: +4 -4 lines
Diff to previous 1.55.2.2 (colored) to branchpoint 1.55 (colored) next main 1.56 (colored)

Synch with HEAD

Revision 1.58 / (download) - annotate - [select for diffs], Sun Dec 30 03:23:46 2018 UTC (5 years, 1 month ago) by christos
Branch: MAIN
CVS Tags: phil-wifi-20191119, phil-wifi-20190609, pgoyette-compat-20190127, pgoyette-compat-20190118, netbsd-9-base, netbsd-9-0-RC1
Branch point for: netbsd-9
Changes since 1.57: +4 -4 lines
Diff to previous 1.57 (colored)

- fix wrong reloc name in assert
- fix uninitialized

Revision 1.55.2.2 / (download) - annotate - [select for diffs], Sat Apr 7 04:12:09 2018 UTC (5 years, 10 months ago) by pgoyette
Branch: pgoyette-compat
Changes since 1.55.2.1: +3 -37 lines
Diff to previous 1.55.2.1 (colored) to branchpoint 1.55 (colored)

Sync with HEAD.  77 conflicts resolved - all of them $NetBSD$

Revision 1.57 / (download) - annotate - [select for diffs], Tue Apr 3 21:10:27 2018 UTC (5 years, 10 months ago) by joerg
Branch: MAIN
CVS Tags: phil-wifi-base, pgoyette-compat-1226, pgoyette-compat-1126, pgoyette-compat-1020, pgoyette-compat-0930, pgoyette-compat-0906, pgoyette-compat-0728, pgoyette-compat-0625, pgoyette-compat-0521, pgoyette-compat-0502, pgoyette-compat-0422, pgoyette-compat-0415, pgoyette-compat-0407
Branch point for: phil-wifi
Changes since 1.56: +3 -37 lines
Diff to previous 1.56 (colored)

Rework ifunc support to address a number of short comings:
- Move to a shared _rtld_call_ifunc for rel and rela architectures
- Architectures using rel format must patch IRELATIVE non-PLT
  relocations like RELATIVE in additition to the later ifunc handling
- Consistently record the delta to the end of the relocation group for
  non-PLT IRELATIVE relocations

Hidden ifunc is now supported on all ifunc platforms, even when using
-fno-plt. The combination of -fno-plt and relro is broken due to
incorrect GNU ld output though.

Revision 1.55.2.1 / (download) - annotate - [select for diffs], Thu Mar 15 09:12:01 2018 UTC (5 years, 11 months ago) by pgoyette
Branch: pgoyette-compat
Changes since 1.55: +25 -5 lines
Diff to previous 1.55 (colored)

Synch with HEAD

Revision 1.56 / (download) - annotate - [select for diffs], Fri Mar 9 20:19:11 2018 UTC (5 years, 11 months ago) by joerg
Branch: MAIN
CVS Tags: pgoyette-compat-0330, pgoyette-compat-0322, pgoyette-compat-0315
Changes since 1.55: +25 -5 lines
Diff to previous 1.55 (colored)

Like Sparc, PowerPC can use IRELATIVE relocations in non-PLT sections.

Revision 1.55 / (download) - annotate - [select for diffs], Thu Aug 10 19:03:26 2017 UTC (6 years, 6 months ago) by joerg
Branch: MAIN
CVS Tags: pgoyette-compat-base
Branch point for: pgoyette-compat
Changes since 1.54: +35 -7 lines
Diff to previous 1.54 (colored)

Add IRELATIVE support for ARM, X86 and PowerPC.

Revision 1.53.8.1 / (download) - annotate - [select for diffs], Tue Jul 4 12:47:59 2017 UTC (6 years, 7 months ago) by martin
Branch: netbsd-8
CVS Tags: netbsd-8-2-RELEASE, netbsd-8-1-RELEASE, netbsd-8-1-RC1, netbsd-8-0-RELEASE, netbsd-8-0-RC2, netbsd-8-0-RC1, matt-nb8-mediatek-base, matt-nb8-mediatek
Changes since 1.53: +30 -22 lines
Diff to previous 1.53 (colored) next main 1.54 (colored)

Pull up following revision(s) (requested by joerg in ticket #64):
	libexec/ld.elf_so/arch/arm/mdreloc.c: revision 1.40
	libexec/ld.elf_so/arch/arm/mdreloc.c: revision 1.41
	libexec/ld.elf_so/arch/hppa/hppa_reloc.c: revision 1.44
	libexec/ld.elf_so/arch/riscv/mdreloc.c: revision 1.3
	libexec/ld.elf_so/arch/aarch64/mdreloc.c: revision 1.3
	libexec/ld.elf_so/arch/sparc64/mdreloc.c: revision 1.60
	libexec/ld.elf_so/arch/m68k/mdreloc.c: revision 1.32
	libexec/ld.elf_so/arch/sparc64/mdreloc.c: revision 1.61
	libexec/ld.elf_so/arch/or1k/mdreloc.c: revision 1.2
	libexec/ld.elf_so/arch/sparc/mdreloc.c: revision 1.50
	libexec/ld.elf_so/arch/sh3/mdreloc.c: revision 1.33
	libexec/ld.elf_so/arch/sh3/mdreloc.c: revision 1.34
	libexec/ld.elf_so/arch/arm/mdreloc.c: revision 1.39
	libexec/ld.elf_so/symbol.c: revision 1.68
	libexec/ld.elf_so/arch/mips/mips_reloc.c: revision 1.66
	libexec/ld.elf_so/arch/mips/mips_reloc.c: revision 1.67
	libexec/ld.elf_so/arch/mips/mips_reloc.c: revision 1.68
	libexec/ld.elf_so/arch/x86_64/mdreloc.c: revision 1.42
	libexec/ld.elf_so/arch/powerpc/ppc_reloc.c: revision 1.54
	libexec/ld.elf_so/Makefile: revision 1.137
	libexec/ld.elf_so/arch/vax/mdreloc.c: revision 1.32
	libexec/ld.elf_so/rtld.h: revision 1.127
	libexec/ld.elf_so/arch/vax/mdreloc.c: revision 1.33
	libexec/ld.elf_so/arch/i386/mdreloc.c: revision 1.38
	libexec/ld.elf_so/arch/alpha/alpha_reloc.c: revision 1.42
	libexec/ld.elf_so/map_object.c: revision 1.58
	libexec/ld.elf_so/arch/sparc/mdreloc.c: revision 1.49
Replace COMBREL with just-in-time check in _rtld_relocate_nonplt_objects.
The COMBREL logic predates thread-safety of the dynamic linker and
breaks the use of shared locks for the common symbol lookup case. It is
unlikely to provide any benefit for lazy binding or PLT lookups, so
provide equivalent functionality in the non-PLT relocation handling loop
by checking if the symbol used by the current relocation is the same as
the one used during the last lookup. No inter-object cachine is done as
it is also unlikely to be benefical.
Testing with Firefox startup on AMD64 shows a small performance gain by
the new method.
Drop symbol number from default branch diagnostic, it isn't set at this
point and most likely not valid either.
Expand symnum, GCC's uninitialized used tracking is too imprecise.
Fix C&P bug. Deal with more MIPS hacks overriding def.
Add last_symnum, move up def and defobj.
Add back symnum, fix debug print.
Replace last use of r_type.
Fix indentation.
Fix indentation.

Revision 1.54 / (download) - annotate - [select for diffs], Mon Jun 19 11:57:02 2017 UTC (6 years, 8 months ago) by joerg
Branch: MAIN
CVS Tags: perseant-stdc-iso10646-base, perseant-stdc-iso10646
Changes since 1.53: +30 -22 lines
Diff to previous 1.53 (colored)

Replace COMBREL with just-in-time check in _rtld_relocate_nonplt_objects.

The COMBREL logic predates thread-safety of the dynamic linker and
breaks the use of shared locks for the common symbol lookup case. It is
unlikely to provide any benefit for lazy binding or PLT lookups, so
provide equivalent functionality in the non-PLT relocation handling loop
by checking if the symbol used by the current relocation is the same as
the one used during the last lookup. No inter-object cachine is done as
it is also unlikely to be benefical.

Testing with Firefox startup on AMD64 shows a small performance gain by
the new method.

Revision 1.52.2.1 / (download) - annotate - [select for diffs], Sun Mar 6 18:17:55 2016 UTC (7 years, 11 months ago) by martin
Branch: netbsd-7
CVS Tags: netbsd-7-nhusb-base-20170116, netbsd-7-nhusb-base, netbsd-7-nhusb, netbsd-7-2-RELEASE, netbsd-7-1-RELEASE, netbsd-7-1-RC2, netbsd-7-1-RC1, netbsd-7-1-2-RELEASE, netbsd-7-1-1-RELEASE, netbsd-7-1
Changes since 1.52: +9 -3 lines
Diff to previous 1.52 (colored) next main 1.53 (colored)

Catch up to -current, via patch, requested by christos in ticket #1126:

Revision 1.53 / (download) - annotate - [select for diffs], Mon Aug 25 20:40:52 2014 UTC (9 years, 6 months ago) by joerg
Branch: MAIN
CVS Tags: prg-localcount2-base3, prg-localcount2-base2, prg-localcount2-base1, prg-localcount2-base, prg-localcount2, pgoyette-localcount-base, pgoyette-localcount-20170426, pgoyette-localcount-20170320, pgoyette-localcount-20170107, pgoyette-localcount-20161104, pgoyette-localcount-20160806, pgoyette-localcount-20160726, pgoyette-localcount, netbsd-8-base, localcount-20160914, bouyer-socketcan-base1, bouyer-socketcan-base, bouyer-socketcan
Branch point for: netbsd-8
Changes since 1.52: +9 -3 lines
Diff to previous 1.52 (colored)

Add basic support for indirect functions. It allows providing a public
function symbol with an implementation choosen at run time.
Refactor calls to functions by address in ld.elf_so to create temporary
function descriptors on the stack, if the address is not leaked outside.

Limitations:
- no support for initialising static storage with function pointers
- no support for unnamed resolver functions

Inspired by FreeBSD's r228435 by kib@freebsd.org.

Revision 1.49.10.1 / (download) - annotate - [select for diffs], Wed Aug 20 00:02:22 2014 UTC (9 years, 6 months ago) by tls
Branch: tls-maxphys
Changes since 1.49: +94 -38 lines
Diff to previous 1.49 (colored) next main 1.50 (colored)

Rebase to HEAD as of a few days ago.

Revision 1.51.2.1 / (download) - annotate - [select for diffs], Sun Aug 10 06:52:42 2014 UTC (9 years, 6 months ago) by tls
Branch: tls-earlyentropy
Changes since 1.51: +3 -3 lines
Diff to previous 1.51 (colored) next main 1.52 (colored)

Rebase.

Revision 1.52 / (download) - annotate - [select for diffs], Mon Jul 28 17:28:13 2014 UTC (9 years, 6 months ago) by matt
Branch: MAIN
CVS Tags: tls-maxphys-base, tls-earlyentropy-base, netbsd-7-base, netbsd-7-0-RELEASE, netbsd-7-0-RC3, netbsd-7-0-RC2, netbsd-7-0-RC1, netbsd-7-0-2-RELEASE, netbsd-7-0-1-RELEASE, netbsd-7-0
Branch point for: netbsd-7
Changes since 1.51: +3 -3 lines
Diff to previous 1.51 (colored)

Fix parenthesis on __ha macro

Revision 1.49.4.1 / (download) - annotate - [select for diffs], Thu May 22 11:37:14 2014 UTC (9 years, 9 months ago) by yamt
Branch: yamt-pagecache
Changes since 1.49: +94 -38 lines
Diff to previous 1.49 (colored) next main 1.50 (colored)

sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs.  ("Protocol error: too many arguments")

Revision 1.51 / (download) - annotate - [select for diffs], Thu Mar 6 19:19:40 2014 UTC (9 years, 11 months ago) by matt
Branch: MAIN
CVS Tags: yamt-pagecache-base9, riastradh-xf86-video-intel-2-7-1-pre-2-21-15, riastradh-drm2-base3
Branch point for: tls-earlyentropy
Changes since 1.50: +24 -20 lines
Diff to previous 1.50 (colored)

More PPC64 changes.
Nothing to do for lazy bindings.
Record DT_PPC64_GLINK and make _rtld_bind return it.
When resolving a JMP_SLOT, copy the source function descriptor into the PLTGOT

Revision 1.50 / (download) - annotate - [select for diffs], Thu Mar 6 09:34:07 2014 UTC (9 years, 11 months ago) by matt
Branch: MAIN
Changes since 1.49: +84 -32 lines
Diff to previous 1.49 (colored)

Make ELF64 aware.

Revision 1.41.4.1 / (download) - annotate - [select for diffs], Sat Mar 17 18:28:34 2012 UTC (11 years, 11 months ago) by bouyer
Branch: netbsd-5
CVS Tags: netbsd-5-2-RELEASE, netbsd-5-2-RC1, netbsd-5-2-3-RELEASE, netbsd-5-2-2-RELEASE, netbsd-5-2-1-RELEASE, netbsd-5-2
Changes since 1.41: +9 -6 lines
Diff to previous 1.41 (colored) next main 1.42 (colored)

Pull up following revision(s) via patch (requested by skrll in ticket #1724):
	rescue/list.ldd: revision 1.4
	lib/libc/dlfcn/dlfcn_elf.c: revision 1.7
	libexec/ld.elf_so/arch/mips/mips_reloc.c: revision 1.57
	distrib/sets/lists/comp/mi: revision 1.1512
	share/man/man3/Makefile: revision 1.56
	libexec/ld.elf_so/arch/mips/mips_reloc.c: revision 1.58
	usr.bin/ldd/ldd.c: revision 1.15
	libexec/ld.elf_so/rtld.h: revision 1.84
	share/man/man3/dl_iterate_phdr.3: revision 1.1
	libexec/ld.elf_so/rtld.c: revision 1.129
	libexec/ld.elf_so/arch/powerpc/ppc_reloc.c: revision 1.44
	libexec/ld.elf_so/rtld.h: revision 1.89
	libexec/ld.elf_so/arch/x86_64/mdreloc.c: revision 1.36
	libexec/ld.elf_so/map_object.c: revision 1.41
	libexec/ld.elf_so/arch/x86_64/mdreloc.c: revision 1.37
	libexec/ld.elf_so/arch/sparc64/mdreloc.c: revision 1.46
	include/link_elf.h: revision 1.10
	libexec/ld.elf_so/arch/i386/mdreloc.c: revision 1.29
	libexec/ld.elf_so/arch/vax/mdreloc.c: revision 1.26
	libexec/ld.elf_so/arch/alpha/alpha_reloc.c: revision 1.34
	libexec/ld.elf_so/arch/hppa/hppa_reloc.c: revision 1.31
	libexec/ld.elf_so/arch/alpha/alpha_reloc.c: revision 1.35
	libexec/ld.elf_so/Makefile: revision 1.94
	libexec/ld.elf_so/arch/hppa/hppa_reloc.c: revision 1.32
	libexec/ld.elf_so/Makefile: revision 1.95
	libexec/ld.elf_so/arch/arm/mdreloc.c: revision 1.31
	libexec/ld.elf_so/Makefile: revision 1.96
	libexec/ld.elf_so/arch/arm/mdreloc.c: revision 1.32
	libexec/ld.elf_so/reloc.c: revision 1.98
	libexec/ld.elf_so/arch/arm/mdreloc.c: revision 1.33
	sys/sys/exec_elf.h: revision 1.106
	libexec/ld.elf_so/rtld.c: revision 1.130
	libexec/ld.elf_so/load.c: revision 1.37
	libexec/ld.elf_so/rtld.c: revision 1.131
	libexec/ld.elf_so/load.c: revision 1.38
	libexec/ld.elf_so/rtld.h: revision 1.90
	libexec/ld.elf_so/headers.c: revision 1.36
	libexec/ld.elf_so/rtld.h: revision 1.95
	libexec/ld.elf_so/arch/i386/mdreloc.c: revision 1.30
	libexec/ld.elf_so/arch/m68k/mdreloc.c: revision 1.25
	libexec/ld.elf_so/symbol.c: revision 1.50
	libexec/ld.elf_so/symbol.c: revision 1.51
	libexec/ld.elf_so/arch/sparc/mdreloc.c: revision 1.43
	libexec/ld.elf_so/symbol.c: revision 1.52
	libexec/ld.elf_so/arch/sh3/mdreloc.c: revision 1.27
	libexec/ld.elf_so/symbol.c: revision 1.54
PR/39240: Satoshi Suetake: Don't fail when attempting to resolve weak symbols
when we are doing immediate binding, leave them alone and they will be dealt
with later during lazy binding. From skrll@
Implement negative cache checks for symbol lookups.
Uses the Donelist idea from FreeBSD.
Use alloca(3) instead of local xmalloc for creating our DoneLists.
This allows threaded programs to use us a little better, PR lib/43005.
Implement dl_iterate_phdr.
Somewhat taken from FreeBSD. Manual page from OpenBSD.

Revision 1.49 / (download) - annotate - [select for diffs], Fri Mar 25 18:07:06 2011 UTC (12 years, 11 months ago) by joerg
Branch: MAIN
CVS Tags: yamt-pagecache-tag8, yamt-pagecache-base8, yamt-pagecache-base7, yamt-pagecache-base6, yamt-pagecache-base5, yamt-pagecache-base4, yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2, netbsd-6-base, netbsd-6-1-RELEASE, netbsd-6-1-RC4, netbsd-6-1-RC3, netbsd-6-1-RC2, netbsd-6-1-RC1, netbsd-6-1-5-RELEASE, netbsd-6-1-4-RELEASE, netbsd-6-1-3-RELEASE, netbsd-6-1-2-RELEASE, netbsd-6-1-1-RELEASE, netbsd-6-1, netbsd-6-0-RELEASE, netbsd-6-0-RC2, netbsd-6-0-RC1, netbsd-6-0-6-RELEASE, netbsd-6-0-5-RELEASE, netbsd-6-0-4-RELEASE, netbsd-6-0-3-RELEASE, netbsd-6-0-2-RELEASE, netbsd-6-0-1-RELEASE, netbsd-6-0, netbsd-6, matt-nb6-plus-nbase, matt-nb6-plus-base, matt-nb6-plus, cherry-xenmp-base, cherry-xenmp, agc-symver-base, agc-symver
Branch point for: yamt-pagecache, tls-maxphys
Changes since 1.48: +4 -2 lines
Diff to previous 1.48 (colored)

Add basic locking to ld.elf_so.

Revision 1.48 / (download) - annotate - [select for diffs], Sat Mar 12 07:43:53 2011 UTC (12 years, 11 months ago) by matt
Branch: MAIN
Changes since 1.47: +43 -2 lines
Diff to previous 1.47 (colored)

Add TLS support for PowerPC.
If the port has __lwp_gettcb_fast or __lwp_settcb use them instead of
__lwp_getprivate_fast or lwp_setprivate.

Revision 1.46.2.1 / (download) - annotate - [select for diffs], Thu Feb 17 11:59:24 2011 UTC (13 years ago) by bouyer
Branch: bouyer-quota2
Changes since 1.46: +10 -3 lines
Diff to previous 1.46 (colored) next main 1.47 (colored)

Sync with HEAD

Revision 1.47 / (download) - annotate - [select for diffs], Thu Feb 10 02:28:20 2011 UTC (13 years ago) by matt
Branch: MAIN
CVS Tags: bouyer-quota2-nbase, bouyer-quota2-base
Changes since 1.46: +10 -3 lines
Diff to previous 1.46 (colored)

Fix problem with bss-plt objects which a reloc index, not offset.
(secure-plt uses an offset (index*sizeof(rela), bss-plt uses an index)
secure-plt will now take the offset and divide by 12 for an index.

Revision 1.46 / (download) - annotate - [select for diffs], Sun Jan 16 01:22:29 2011 UTC (13 years, 1 month ago) by matt
Branch: MAIN
Branch point for: bouyer-quota2
Changes since 1.45: +93 -57 lines
Diff to previous 1.45 (colored)

Add secure-plt support for powerpc to ld.elf_so.  As part of this, we have to
stop calling into the GOT/_DYNAMIC since they are no longer executable.

Revision 1.45 / (download) - annotate - [select for diffs], Fri Aug 6 16:33:18 2010 UTC (13 years, 6 months ago) by joerg
Branch: MAIN
CVS Tags: matt-mips64-premerge-20101231
Changes since 1.44: +3 -4 lines
Diff to previous 1.44 (colored)

Reduce header pollution for mdreloc.c. Make Obj_Entry argument of
_rtld_relocate_nonplt_objects non-const in preparation for TLS support.

Revision 1.44 / (download) - annotate - [select for diffs], Wed Jan 13 20:17:22 2010 UTC (14 years, 1 month ago) by christos
Branch: MAIN
Changes since 1.43: +9 -6 lines
Diff to previous 1.43 (colored)

PR/39240: Satoshi Suetake: Don't fail when attempting to resolve weak symbols
when we are doing immediate binding, leave them alone and they will be dealt
with later during lazy binding. From skrll@

Revision 1.43 / (download) - annotate - [select for diffs], Sat Aug 29 13:46:55 2009 UTC (14 years, 5 months ago) by jmmv
Branch: MAIN
CVS Tags: matt-premerge-20091211
Changes since 1.42: +3 -3 lines
Diff to previous 1.42 (colored)

Remove trailing \n in calls to _rtld_error: a newline is automatically
added by a call to the function.

Revision 1.42 / (download) - annotate - [select for diffs], Sun May 24 20:35:41 2009 UTC (14 years, 9 months ago) by he
Branch: MAIN
Changes since 1.41: +3 -3 lines
Diff to previous 1.41 (colored)

Apply fix borrowed from i386:  Fix const issue (cast const pointers
to "const uint8_t *" instead of "caddr_t").

Revision 1.40.20.1 / (download) - annotate - [select for diffs], Thu Sep 18 04:39:18 2008 UTC (15 years, 5 months ago) by wrstuden
Branch: wrstuden-revivesa
Changes since 1.40: +3 -3 lines
Diff to previous 1.40 (colored) next main 1.41 (colored)

Sync with wrstuden-revivesa-base-2.

Revision 1.41 / (download) - annotate - [select for diffs], Thu Jul 24 04:39:25 2008 UTC (15 years, 7 months ago) by matt
Branch: MAIN
CVS Tags: wrstuden-revivesa-base-3, wrstuden-revivesa-base-2, netbsd-5-base, netbsd-5-1-RELEASE, netbsd-5-1-RC4, netbsd-5-1-RC3, netbsd-5-1-RC2, netbsd-5-1-RC1, netbsd-5-1-5-RELEASE, netbsd-5-1-4-RELEASE, netbsd-5-1-3-RELEASE, netbsd-5-1-2-RELEASE, netbsd-5-1-1-RELEASE, netbsd-5-1, netbsd-5-0-RELEASE, netbsd-5-0-RC4, netbsd-5-0-RC3, netbsd-5-0-RC2, netbsd-5-0-RC1, netbsd-5-0-2-RELEASE, netbsd-5-0-1-RELEASE, netbsd-5-0, matt-nb5-pq3-base, matt-nb5-pq3, matt-nb5-mips64-u2-k2-k4-k7-k8-k9, matt-nb5-mips64-u1-k1-k5, matt-nb5-mips64-premerge-20101231, matt-nb5-mips64-premerge-20091211, matt-nb5-mips64-k15, matt-nb5-mips64, matt-nb4-mips64-k7-u2a-k9b, matt-mips64-base2, jym-xensuspend-nbase, jym-xensuspend-base, jym-xensuspend
Branch point for: netbsd-5
Changes since 1.40: +3 -3 lines
Diff to previous 1.40 (colored)

Refactor common code to _rtld_relocate_plt_object to i386 and arm so they
act like the other versions.
In _rtld_bind, if the result is 0, call _rtld_die.
Initialize _rtld_sym_zero.st_value to -_rtld_objself.maprelocbase.  Now when
the symbol is resolved, st_value + maprelocbase will equal 0 and the above
check in _rtld_bind will fire and a call to NULL will be avoided.

Revision 1.40 / (download) - annotate - [select for diffs], Tue May 23 16:27:41 2006 UTC (17 years, 9 months ago) by mrg
Branch: MAIN
CVS Tags: yamt-pf42-baseX, yamt-pf42-base4, yamt-pf42-base3, yamt-pf42-base2, yamt-pf42-base, yamt-pf42, wrstuden-revivesa-base-1, wrstuden-revivesa-base, wrstuden-fixsa-newbase, wrstuden-fixsa-base-1, wrstuden-fixsa-base, wrstuden-fixsa, netbsd-4-base, netbsd-4-0-RELEASE, netbsd-4-0-RC5, netbsd-4-0-RC4, netbsd-4-0-RC3, netbsd-4-0-RC2, netbsd-4-0-RC1, netbsd-4-0-1-RELEASE, netbsd-4-0, netbsd-4, matt-mips64-base, matt-mips64, matt-armv6-prevmlocking, matt-armv6-nbase, matt-armv6-base, matt-armv6, keiichi-mipv6-base, keiichi-mipv6, hpcarm-cleanup-nbase, hpcarm-cleanup-base, hpcarm-cleanup, cube-autoconf-base, cube-autoconf, abandoned-netbsd-4-base, abandoned-netbsd-4
Branch point for: wrstuden-revivesa
Changes since 1.39: +4 -2 lines
Diff to previous 1.39 (colored)

in _rtld_bind() initialise new_value for GCC4.

Revision 1.35.6.2 / (download) - annotate - [select for diffs], Sat Oct 1 10:33:31 2005 UTC (18 years, 4 months ago) by tron
Branch: netbsd-3
CVS Tags: netbsd-3-1-RELEASE, netbsd-3-1-RC4, netbsd-3-1-RC3, netbsd-3-1-RC2, netbsd-3-1-RC1, netbsd-3-1-1-RELEASE, netbsd-3-1, netbsd-3-0-RELEASE, netbsd-3-0-RC6, netbsd-3-0-RC5, netbsd-3-0-RC4, netbsd-3-0-RC3, netbsd-3-0-RC2, netbsd-3-0-RC1, netbsd-3-0-3-RELEASE, netbsd-3-0-2-RELEASE, netbsd-3-0-1-RELEASE, netbsd-3-0
Changes since 1.35.6.1: +23 -2 lines
Diff to previous 1.35.6.1 (colored) to branchpoint 1.35 (colored) next main 1.36 (colored)

Pull up following revision(s) (requested by chs in ticket #834):
	libexec/ld.elf_so/arch/powerpc/ppc_reloc.c: revision 1.39
ok, the change from rev 1.33 was unnecessary after all,
only the second part of the previous revision was needed.
put the logic for the initial icache invalidation of the PLT
back the way it was, but in a way that makes clearer what's going on,
and add some comments explaining it.

Revision 1.35.6.1 / (download) - annotate - [select for diffs], Sat Oct 1 10:33:01 2005 UTC (18 years, 4 months ago) by tron
Branch: netbsd-3
Changes since 1.35: +4 -4 lines
Diff to previous 1.35 (colored)

Pull up following revision(s) (requested by chs in ticket #834):
	libexec/ld.elf_so/arch/powerpc/ppc_reloc.c: revision 1.38
fix two problems with icache invalidation of the PLT:
 - restore revision 1.33, it was correct.
 - fix pointer arithmetic in other calls to __syncicache().

Revision 1.39 / (download) - annotate - [select for diffs], Tue Sep 27 07:20:32 2005 UTC (18 years, 5 months ago) by chs
Branch: MAIN
Changes since 1.38: +24 -3 lines
Diff to previous 1.38 (colored)

ok, the change from rev 1.33 was unnecessary after all,
only the second part of the previous revision was needed.
put the logic for the initial icache invalidation of the PLT
back the way it was, but in a way that makes clearer what's going on,
and add some comments explaining it.

Revision 1.38 / (download) - annotate - [select for diffs], Mon Sep 26 05:45:13 2005 UTC (18 years, 5 months ago) by chs
Branch: MAIN
Changes since 1.37: +5 -5 lines
Diff to previous 1.37 (colored)

fix two problems with icache invalidation of the PLT:
 - restore revision 1.33, it was correct.
 - fix pointer arithmetic in other calls to __syncicache().

Revision 1.37 / (download) - annotate - [select for diffs], Sat Aug 20 19:01:17 2005 UTC (18 years, 6 months ago) by skrll
Branch: MAIN
Changes since 1.36: +6 -1 lines
Diff to previous 1.36 (colored)

Add __RCSID.

Revision 1.36 / (download) - annotate - [select for diffs], Thu Jul 28 10:54:30 2005 UTC (18 years, 7 months ago) by skrll
Branch: MAIN
Changes since 1.35: +36 -6 lines
Diff to previous 1.35 (colored)

Support immediate PLT binding on powerpc. Thanks to Simon Burge for
testing.

I can see the finish line...

Revision 1.10.2.1 / (download) - annotate - [select for diffs], Fri May 28 08:31:22 2004 UTC (19 years, 9 months ago) by tron
Branch: netbsd-1-6
Changes since 1.10: +195 -105 lines
Diff to previous 1.10 (colored) next main 1.11 (colored)

Apply patch (request by skrll in ticket #1702):
Bring "ld.elf_so" (mostly) in sync with NetBSD-current:
- MI and MD (e.g. under NetBSD-alpha) performance improvements
- RTLD_SELF, RTLD_NEXT, RTLD_DEFAULT support
- much better structured code
- closes PR bin/25464

Revision 1.35 / (download) - annotate - [select for diffs], Thu Jul 24 10:12:29 2003 UTC (20 years, 7 months ago) by skrll
Branch: MAIN
CVS Tags: netbsd-3-base, netbsd-2-base, netbsd-2-1-RELEASE, netbsd-2-1-RC6, netbsd-2-1-RC5, netbsd-2-1-RC4, netbsd-2-1-RC3, netbsd-2-1-RC2, netbsd-2-1-RC1, netbsd-2-1, netbsd-2-0-base, netbsd-2-0-RELEASE, netbsd-2-0-RC5, netbsd-2-0-RC4, netbsd-2-0-RC3, netbsd-2-0-RC2, netbsd-2-0-RC1, netbsd-2-0-3-RELEASE, netbsd-2-0-2-RELEASE, netbsd-2-0-1-RELEASE, netbsd-2-0, netbsd-2
Branch point for: netbsd-3
Changes since 1.34: +9 -16 lines
Diff to previous 1.34 (colored)

ANSIfy and de-__P().

Revision 1.34 / (download) - annotate - [select for diffs], Fri Feb 21 01:12:56 2003 UTC (21 years ago) by mycroft
Branch: MAIN
Changes since 1.33: +1 -1 lines
Diff to previous 1.33 (colored)

Revert previous change.

Revision 1.33 / (download) - annotate - [select for diffs], Sat Jan 11 01:33:56 2003 UTC (21 years, 1 month ago) by matt
Branch: MAIN
Changes since 1.32: +2 -2 lines
Diff to previous 1.32 (colored)

Fix bug where only 2/3 of the PLT was being synched with the icache.
PLT entries are 12 bytes.  Add a #define for that and replace the
explicit values with the PLT_ENTRY_SIZE.  This bug can cause random
SIGILL signals to happen.

Revision 1.32 / (download) - annotate - [select for diffs], Sat Oct 5 11:59:06 2002 UTC (21 years, 4 months ago) by mycroft
Branch: MAIN
CVS Tags: fvdl_fs64_base
Changes since 1.31: +2 -2 lines
Diff to previous 1.31 (colored)

Minor cleanup.

Revision 1.31 / (download) - annotate - [select for diffs], Thu Sep 26 20:42:11 2002 UTC (21 years, 5 months ago) by mycroft
Branch: MAIN
Changes since 1.30: +2 -6 lines
Diff to previous 1.30 (colored)

Remove the `self' args to _rtld_relocate_objects() and
_rtld_relocate_nonplt_objects().

Revision 1.30 / (download) - annotate - [select for diffs], Thu Sep 26 03:25:29 2002 UTC (21 years, 5 months ago) by mycroft
Branch: MAIN
Changes since 1.29: +2 -1 lines
Diff to previous 1.29 (colored)

Update a comment.

Revision 1.29 / (download) - annotate - [select for diffs], Thu Sep 26 02:52:05 2002 UTC (21 years, 5 months ago) by mycroft
Branch: MAIN
Changes since 1.28: +3 -1 lines
Diff to previous 1.28 (colored)

Add a rdbg() in _rtld_bind().

Revision 1.28 / (download) - annotate - [select for diffs], Wed Sep 25 21:11:18 2002 UTC (21 years, 5 months ago) by mycroft
Branch: MAIN
Changes since 1.27: +39 -22 lines
Diff to previous 1.27 (colored)

Make this work with PLTs larger than 8192 entries (64KB).  Not tested
exhaustively, but it works in some simple cases.

Revision 1.27 / (download) - annotate - [select for diffs], Wed Sep 25 07:27:53 2002 UTC (21 years, 5 months ago) by mycroft
Branch: MAIN
Changes since 1.26: +48 -79 lines
Diff to previous 1.26 (colored)

Push the _rtld_bind() interface into MD code -- it's just a trivial wrapper
anyway.

Revision 1.26 / (download) - annotate - [select for diffs], Tue Sep 24 15:04:48 2002 UTC (21 years, 5 months ago) by mycroft
Branch: MAIN
Changes since 1.25: +4 -1 lines
Diff to previous 1.25 (colored)

Ignore JMP_SLOT relocs when doing non-PLT relocations.  The relalim trimming
hack doesn't always work, because ld(1) sometimes puts the sections in the
wrong order.

Revision 1.25 / (download) - annotate - [select for diffs], Thu Sep 12 23:11:37 2002 UTC (21 years, 5 months ago) by mycroft
Branch: MAIN
Changes since 1.24: +2 -2 lines
Diff to previous 1.24 (colored)

Remove one more `dodebug' argument.

Revision 1.24 / (download) - annotate - [select for diffs], Thu Sep 12 22:56:30 2002 UTC (21 years, 5 months ago) by mycroft
Branch: MAIN
Changes since 1.23: +8 -11 lines
Diff to previous 1.23 (colored)

Nuke -DRTLD_RELOCATE_SELF and `dodebug' from orbit.

Revision 1.23 / (download) - annotate - [select for diffs], Thu Sep 12 20:21:01 2002 UTC (21 years, 5 months ago) by mycroft
Branch: MAIN
Changes since 1.22: +2 -1 lines
Diff to previous 1.22 (colored)

_rtld_bind_start() is not used in MI code, so declare it in the MD code.

Revision 1.22 / (download) - annotate - [select for diffs], Wed Sep 11 21:14:08 2002 UTC (21 years, 5 months ago) by mycroft
Branch: MAIN
Changes since 1.21: +33 -4 lines
Diff to previous 1.21 (colored)

Implement _rtld_relocate_nonplt_self() here.

Revision 1.21 / (download) - annotate - [select for diffs], Fri Sep 6 15:17:57 2002 UTC (21 years, 5 months ago) by mycroft
Branch: MAIN
Changes since 1.20: +3 -2 lines
Diff to previous 1.20 (colored)

Pass down an additional flag to _rtld_relocate_nonplt_objects() which
indicates whether we're relocating ld.elf_so itself.  Use this in some places
rather than hackish tests on `dodebug'.  (The Alpha and HPPA `dodebug' tests
were actually noops, because RTLD_RELOCATE_SELF is not set, and therefore
dodebug is always true.)

Revision 1.20 / (download) - annotate - [select for diffs], Fri Sep 6 13:20:33 2002 UTC (21 years, 5 months ago) by mycroft
Branch: MAIN
Changes since 1.19: +2 -2 lines
Diff to previous 1.19 (colored)

Introduce a new flag, `isdynamic', which is used to remember whether the
executable was of type ET_DYN.  Use this instead of `mainprog' to determine
whether we need to do base-relative fixups of the PLT.  (This allows loading
non-relocatable objects, should we desire to do that at some point...)

Revision 1.19 / (download) - annotate - [select for diffs], Fri Sep 6 12:00:41 2002 UTC (21 years, 5 months ago) by mycroft
Branch: MAIN
Changes since 1.18: +3 -3 lines
Diff to previous 1.18 (colored)

More const poisoning.  Now the entire _rtld_bind() path useds a const Obj_Entry.

Revision 1.18 / (download) - annotate - [select for diffs], Fri Sep 6 03:12:07 2002 UTC (21 years, 5 months ago) by mycroft
Branch: MAIN
Changes since 1.17: +4 -4 lines
Diff to previous 1.17 (colored)

Re-poison a lot of consts, now that the mark shite is gone.

Revision 1.17 / (download) - annotate - [select for diffs], Fri Sep 6 03:05:37 2002 UTC (21 years, 5 months ago) by mycroft
Branch: MAIN
Changes since 1.16: +67 -62 lines
Diff to previous 1.16 (colored)

Split _rtld_relocate_plt_object() into two MD functions:
* _rtld_relocate_plt_lazy() fixes up all the relocs pointing to the PLT.  (On
  most platforms it just does a simple base-relative fixup; on SPARC it does
  nothing.)
* _rtld_relocate_plt_object() does immediate binding for a PLT entry.
The basic gist is that this saves a bit of time on SPARC (where the iteration
through the pltrela table was gratuitous), and a little less time on all other
platforms.  A whole lot of #ifdef'ed crap is moved out of reloc.c, too.

NOT tested on: hppa sh x86_64

Revision 1.16 / (download) - annotate - [select for diffs], Thu Sep 5 21:31:34 2002 UTC (21 years, 5 months ago) by mycroft
Branch: MAIN
Changes since 1.15: +3 -3 lines
Diff to previous 1.15 (colored)

Partially fix up some debug printf()s that don't need to use defobj.

Revision 1.15 / (download) - annotate - [select for diffs], Thu Sep 5 21:21:11 2002 UTC (21 years, 5 months ago) by mycroft
Branch: MAIN
Changes since 1.14: +8 -9 lines
Diff to previous 1.14 (colored)

A few things:
* Pass a symbol number to _rtld_find_symdef(), not a r_info.
* Don't try to do a symbol lookup when we find an unsupported relocation;
  instead get the symbol name from the referencing object's strtab.
* Add preliminary support for `-z combreloc'-style startup optimization on
  i386, `#ifdef COMBRELOC'.

Revision 1.14 / (download) - annotate - [select for diffs], Thu Sep 5 20:08:18 2002 UTC (21 years, 5 months ago) by mycroft
Branch: MAIN
Changes since 1.13: +67 -61 lines
Diff to previous 1.13 (colored)

Rename _rtld_relocate_nonplt_object() to _rtld_relocate_nonplt_objects(),
and push the outer loop into it.  This actually shaves a couple % off startup
time at least on PCs.

Revision 1.13 / (download) - annotate - [select for diffs], Thu Sep 5 18:25:47 2002 UTC (21 years, 5 months ago) by mycroft
Branch: MAIN
Changes since 1.12: +73 -1 lines
Diff to previous 1.12 (colored)

Split _rtld_relocate_nonplt_object() into separate MD files.

Revision 1.12 / (download) - annotate - [select for diffs], Thu Sep 5 16:33:58 2002 UTC (21 years, 5 months ago) by junyoung
Branch: MAIN
Changes since 1.11: +2 -3 lines
Diff to previous 1.11 (colored)

Remove unused arguments of _rtld_find_symdef().

Revision 1.11 / (download) - annotate - [select for diffs], Thu Sep 5 15:38:29 2002 UTC (21 years, 5 months ago) by mycroft
Branch: MAIN
Changes since 1.10: +3 -3 lines
Diff to previous 1.10 (colored)

Make _rtld_setup_pltgot() a consistent interface on all platforms.

Revision 1.8.4.2 / (download) - annotate - [select for diffs], Sun Dec 9 17:24:28 2001 UTC (22 years, 2 months ago) by he
Branch: netbsd-1-5
CVS Tags: netbsd-1-5-PATCH003
Changes since 1.8.4.1: +61 -71 lines
Diff to previous 1.8.4.1 (colored) to branchpoint 1.8 (colored) next main 1.9 (colored)

Pull up revision 1.10 (requested by skrll):
  Add init/fini section support in crtbegin and crtend, and introduce
  support for DWARF2 exception handling.  Fixes PR#12865, PR#13488,
  PR#13489, and PR#13491.  Also fix ld.elf_so to deal appropriately.

Revision 1.10 / (download) - annotate - [select for diffs], Mon Sep 10 06:09:41 2001 UTC (22 years, 5 months ago) by mycroft
Branch: MAIN
CVS Tags: netbsd-1-6-base, netbsd-1-6-RELEASE, netbsd-1-6-RC3, netbsd-1-6-RC2, netbsd-1-6-RC1, netbsd-1-6-PATCH002-RELEASE, netbsd-1-6-PATCH002-RC4, netbsd-1-6-PATCH002-RC3, netbsd-1-6-PATCH002-RC2, netbsd-1-6-PATCH002-RC1, netbsd-1-6-PATCH002, netbsd-1-6-PATCH001-RELEASE, netbsd-1-6-PATCH001-RC3, netbsd-1-6-PATCH001-RC2, netbsd-1-6-PATCH001-RC1, netbsd-1-6-PATCH001
Branch point for: netbsd-1-6
Changes since 1.9: +61 -71 lines
Diff to previous 1.9 (colored)

Reorganize PowerPC cold a little.  The return value from _rtld_bind_pltgot()
was ambiguous in the case of a weak symbol that was not defined.  This caused
RTLD_NOW to fail badly with shared libraries linked against the new crtbegin.o.

Revision 1.8.4.1 / (download) - annotate - [select for diffs], Tue May 1 12:06:49 2001 UTC (22 years, 9 months ago) by he
Branch: netbsd-1-5
CVS Tags: netbsd-1-5-PATCH002, netbsd-1-5-PATCH001
Changes since 1.8: +5 -5 lines
Diff to previous 1.8 (colored)

Pull up revision 1.9 (requested by kleink):
  Rename ElfNN_RelA to ElfNN_Rela, which is what SVR4 ABIs and the
  rest of the world uses.  Fixes PR#12274.

Revision 1.9 / (download) - annotate - [select for diffs], Wed Apr 25 12:24:51 2001 UTC (22 years, 10 months ago) by kleink
Branch: MAIN
Changes since 1.8: +5 -5 lines
Diff to previous 1.8 (colored)

Sync with <sys/exec_elf.h> rev. 1.45: ElfNN_RelA -> ElfNN_Rela.

Revision 1.4.2.1 / (download) - annotate - [select for diffs], Mon Dec 27 18:30:16 1999 UTC (24 years, 2 months ago) by wrstuden
Branch: wrstuden-devbsize
Changes since 1.4: +7 -6 lines
Diff to previous 1.4 (colored) next main 1.5 (colored)

Pull up to last week's -current.

Revision 1.8 / (download) - annotate - [select for diffs], Sun Nov 7 06:48:21 1999 UTC (24 years, 3 months ago) by mycroft
Branch: MAIN
CVS Tags: wrstuden-devbsize-base, wrstuden-devbsize-19991221, netbsd-1-5-base, netbsd-1-5-RELEASE, netbsd-1-5-BETA2, netbsd-1-5-BETA, netbsd-1-5-ALPHA2, minoura-xpg4dl-base, minoura-xpg4dl
Branch point for: netbsd-1-5
Changes since 1.7: +7 -7 lines
Diff to previous 1.7 (colored)

More fallout.

Revision 1.7 / (download) - annotate - [select for diffs], Sun Nov 7 06:41:49 1999 UTC (24 years, 3 months ago) by mycroft
Branch: MAIN
Changes since 1.6: +3 -2 lines
Diff to previous 1.6 (colored)

Fix fallout from MD ld.elf_so changes.

Revision 1.6 / (download) - annotate - [select for diffs], Thu Oct 28 09:50:07 1999 UTC (24 years, 4 months ago) by tsubai
Branch: MAIN
CVS Tags: comdex-fall-1999-base, comdex-fall-1999
Changes since 1.5: +2 -2 lines
Diff to previous 1.5 (colored)

Revert to rev. 1.4.  This file didn't need to change.

Revision 1.5 / (download) - annotate - [select for diffs], Mon Oct 25 13:57:12 1999 UTC (24 years, 4 months ago) by kleink
Branch: MAIN
Changes since 1.4: +2 -2 lines
Diff to previous 1.4 (colored)

Update to match new SVR4-style definition names in <sys/exec_elf.h>.

Revision 1.4 / (download) - annotate - [select for diffs], Sat Apr 17 21:16:46 1999 UTC (24 years, 10 months ago) by ws
Branch: MAIN
Branch point for: wrstuden-devbsize
Changes since 1.3: +5 -5 lines
Diff to previous 1.3 (colored)

Modify syncicache on PowerPC from an inline to a real function.
Support different cache line sizes with the same object code in userland.
While here, move the function to implementation name space.

Revision 1.3 / (download) - annotate - [select for diffs], Fri Mar 5 04:50:28 1999 UTC (24 years, 11 months ago) by tsubai
Branch: MAIN
CVS Tags: netbsd-1-4-base, netbsd-1-4-RELEASE, netbsd-1-4-PATCH003, netbsd-1-4-PATCH002, netbsd-1-4-PATCH001, netbsd-1-4
Changes since 1.2: +4 -4 lines
Diff to previous 1.2 (colored)

Make this compile.

Revision 1.2 / (download) - annotate - [select for diffs], Mon Mar 1 16:40:08 1999 UTC (24 years, 11 months ago) by christos
Branch: MAIN
Changes since 1.1: +5 -5 lines
Diff to previous 1.1 (colored)

KNF

Revision 1.1 / (download) - annotate - [select for diffs], Tue Nov 24 11:34:31 1998 UTC (25 years, 3 months ago) by tsubai
Branch: MAIN

Add powerpc support.

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.




CVSweb <webmaster@jp.NetBSD.org>