Module Name: src Committed By: joerg Date: Thu Mar 29 13:23:40 UTC 2018
Modified Files: src/distrib/sets/lists/comp: md.sparc md.sparc64 src/lib/csu/common: crt0-common.c src/libexec/ld.elf_so/arch/sparc: mdreloc.c src/libexec/ld.elf_so/arch/sparc64: mdreloc.c src/sys/arch/sparc/include: Makefile src/sys/arch/sparc64/include: Makefile Added Files: src/sys/arch/sparc/include: elf_support.h src/sys/arch/sparc64/include: elf_support.h Log Message: Move the complex logic for dynamically writing branches from ld.elf_so into a header for reuse in crt0.o for static ifunc support. Change the existing logic for sparc64 to use the Bicc variant of ba,a as it allows +-8MB displacement compared to the BPcc variant's +-1MB. Teach the sparc variant the same trick for using ba,a and not sethi+jmp when possible. To generate a diff of this commit: cvs rdiff -u -r1.92 -r1.93 src/distrib/sets/lists/comp/md.sparc cvs rdiff -u -r1.199 -r1.200 src/distrib/sets/lists/comp/md.sparc64 cvs rdiff -u -r1.15 -r1.16 src/lib/csu/common/crt0-common.c cvs rdiff -u -r1.53 -r1.54 src/libexec/ld.elf_so/arch/sparc/mdreloc.c cvs rdiff -u -r1.67 -r1.68 src/libexec/ld.elf_so/arch/sparc64/mdreloc.c cvs rdiff -u -r1.33 -r1.34 src/sys/arch/sparc/include/Makefile cvs rdiff -u -r0 -r1.1 src/sys/arch/sparc/include/elf_support.h cvs rdiff -u -r1.30 -r1.31 src/sys/arch/sparc64/include/Makefile cvs rdiff -u -r0 -r1.1 src/sys/arch/sparc64/include/elf_support.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.