Markus F.X.J. Oberhumer
d873a26f41
all: clang-format-15.0.6
2022-12-12 19:25:31 +01:00
Markus F.X.J. Oberhumer
81176716d5
src: linker: fix a minor printf format issue detected by codeql
2022-09-16 13:26:13 +02:00
Markus F.X.J. Oberhumer
d001a63bce
Welcome 2022.
2022-09-04 04:24:39 +02:00
Markus F.X.J. Oberhumer
5f9c50cd3e
clang-format
2022-08-10 23:29:43 +02:00
John Reiser
2721ef0636
ElfLinker::init() allows symbols and relocations (but not Sections) to be empty
...
modified: linker.cpp
modified: linker.h
2022-05-04 13:29:36 -07:00
John Reiser
275477f914
ElfLinker::addSection omits "ABS*" and "UND*" sections
...
modified: linker.cpp
2022-03-24 19:09:09 -07:00
Markus F.X.J. Oberhumer
d86d5314ba
Modernize libc usage: more cleanups.
2021-01-05 22:03:29 +01:00
Markus F.X.J. Oberhumer
700c8730cf
Modernize libc usage: stop using off_t
, use modern printf.
...
C++ 14 is here, and old versions of MSVC and MSVCRT have
haunted us long enough.
2021-01-05 18:52:05 +01:00
Markus F.X.J. Oberhumer
9131d5216f
Welcome 2021.
2021-01-01 20:39:22 +01:00
Markus F.X.J. Oberhumer
f7e2266c3f
Start using some C++ 14 features.
2020-12-08 05:40:17 +01:00
Markus F.X.J. Oberhumer
d1174385ef
Welcome 2020.
2020-01-08 04:13:28 +01:00
Markus F.X.J. Oberhumer
3667fa4e44
Welcome 2019.
2019-02-15 11:04:09 +01:00
Markus F.X.J. Oberhumer
16bb7ab841
clang-format files.
2018-01-19 14:18:47 +01:00
Markus F.X.J. Oberhumer
021c8db58a
Welcome 2018.
2018-01-19 10:55:32 +01:00
John Reiser
f3a7620ae8
ARM: recognize R_ARM_CALL and R_ARM_JUMP24 as equivalent to R_ARM_PC24
...
modified: linker.cpp
2018-01-12 08:42:34 -08:00
John Reiser
e8aa80f904
stash work-in-progress
...
modified: linker.cpp
modified: p_mach.cpp
modified: p_mach.h
modified: packmast.cpp
modified: stub/Makefile
modified: stub/src/amd64-darwin.macho-main.c
modified: stub/src/arm.v5a-darwin.macho-entry.S
modified: stub/src/arm64-darwin.macho-entry.S
modified: stub/src/arm64-darwin.macho-fold.S
modified: stub/src/arm64-darwin.macho-main.c
2017-12-19 17:32:15 -08:00
Markus F.X.J. Oberhumer
33dc947c21
clang-format files.
2017-07-22 12:47:45 +02:00
John Reiser
e7f1e99a5e
Merge branch 'jreiser' into devel
...
O_BINFO simplifies stubs on linux Elf;
PowerPC64 (big endian: Apple Macintosh G5) and PowerPC* cleanup;
-fpie simplification; shlib for arm64, amd64.
A big merge due to suspending activity on 'devel' branch
during stabilization for release of UPX-3.94.
There were intermediate merges with private branch 'jreiser',
and attempted rebase onto 'devel' did not go well.
Verfication of cases ({ET_EXEC, -fpie, shlib} x {$ARCH}) is in progress.
modified: ../.github/travis_testsuite_1.sh
modified: conf.h
modified: linker.cpp
modified: linker.h
modified: p_lx_elf.cpp
modified: p_lx_elf.h
modified: p_mach.cpp
modified: p_mach.h
modified: p_mach_enum.h
modified: packmast.cpp
modified: stub/Makefile
modified: stub/scripts/xstrip.py
modified: stub/src/amd64-darwin.dylib-entry.S
modified: stub/src/amd64-darwin.macho-entry.S
modified: stub/src/amd64-linux.elf-entry.S
modified: stub/src/amd64-linux.elf-fold.S
modified: stub/src/amd64-linux.elf-main.c
modified: stub/src/arch/powerpc/32/bxx.S
modified: stub/src/arch/powerpc/32/lzma_d.S
modified: stub/src/arch/powerpc/32/nrv2b_d.S
modified: stub/src/arch/powerpc/32/nrv2d_d.S
modified: stub/src/arch/powerpc/32/nrv2e_d.S
modified: stub/src/arch/powerpc/32/ppc_regs.h
new file: stub/src/arch/powerpc/64/Makefile
new file: stub/src/arch/powerpc/64/Makefile.extra
new file: stub/src/arch/powerpc/64/bxx.S
new file: stub/src/arch/powerpc/64/lzma_d.S
new file: stub/src/arch/powerpc/64/lzma_d_cf.S
new file: stub/src/arch/powerpc/64/lzma_d_cs.S
new file: stub/src/arch/powerpc/64/macros.S
new file: stub/src/arch/powerpc/64/nrv2b_d.S
new file: stub/src/arch/powerpc/64/nrv2d_d.S
new file: stub/src/arch/powerpc/64/nrv2e_d.S
new file: stub/src/arch/powerpc/64/ppc_regs.h
modified: stub/src/arch/powerpc/64le/bxx.S
copied: stub/src/arch/powerpc/64le/lzma_d.S -> stub/src/arch/powerpc/64le/lzma_d-common.S
modified: stub/src/arch/powerpc/64le/lzma_d.S
modified: stub/src/arch/powerpc/64le/lzma_d_cs.S
modified: stub/src/arch/powerpc/64le/nrv2b_d.S
modified: stub/src/arch/powerpc/64le/nrv2d_d.S
modified: stub/src/arch/powerpc/64le/nrv2e_d.S
modified: stub/src/arch/powerpc/64le/ppc_regs.h
modified: stub/src/arm.v4a-linux.elf-entry.S
modified: stub/src/arm.v4a-linux.elf-fold.S
modified: stub/src/arm64-darwin.macho-entry.S
modified: stub/src/arm64-linux.elf-entry.S
modified: stub/src/arm64-linux.elf-fold.S
modified: stub/src/arm64-linux.shlib-init.S
modified: stub/src/i386-bsd.elf-entry.S
modified: stub/src/i386-darwin.macho-entry.S
modified: stub/src/i386-linux.elf-entry.S
modified: stub/src/i386-linux.elf-fold.S
modified: stub/src/mipsel.r3000-linux.elf-entry.S
modified: stub/src/mipsel.r3000-linux.elf-fold.S
modified: stub/src/powerpc-darwin.dylib-entry.S
modified: stub/src/powerpc-darwin.macho-entry.S
modified: stub/src/powerpc-darwin.macho-fold.S
modified: stub/src/powerpc-linux.elf-entry.S
modified: stub/src/powerpc-linux.elf-fold.S
modified: stub/src/powerpc-linux.elf-main.c
new file: stub/src/powerpc64-darwin.dylib-entry.S
new file: stub/src/powerpc64-darwin.macho-entry.S
new file: stub/src/powerpc64-darwin.macho-fold.S
new file: stub/src/powerpc64-darwin.macho-main.c
new file: stub/src/powerpc64-linux.elf-entry.S
new file: stub/src/powerpc64-linux.elf-fold.S
new file: stub/src/powerpc64-linux.elf-fold.lds
new file: stub/src/powerpc64-linux.elf-main.c
modified: stub/src/powerpc64-savegpr0.S
modified: stub/src/powerpc64le-darwin.dylib-entry.S
modified: stub/src/powerpc64le-darwin.macho-entry.S
modified: stub/src/powerpc64le-darwin.macho-fold.S
modified: stub/src/powerpc64le-linux.elf-entry.S
modified: stub/src/powerpc64le-linux.elf-fold.S
modified: stub/src/powerpc64le-linux.elf-main.c
and most stub/*.h and stub/tmp/*.dump
2017-06-05 11:32:25 -07:00
Markus F.X.J. Oberhumer
4c74d16795
Avoid a compilation warning. clang-format files.
2017-05-28 11:32:12 +02:00
John Reiser
955206aaf0
Merge branch 'devel' into jreiser
...
Conflicts:
src/p_lx_elf.cpp
src/stub/src/amd64-linux.elf-entry.S
src/stub/src/amd64-linux.elf-main.c
src/stub/src/arm.v4a-linux.elf-entry.S
src/stub/src/arm.v4a-linux.elf-fold.S
src/stub/src/arm64-linux.elf-entry.S
src/stub/src/arm64-linux.elf-fold.S
src/stub/src/i386-linux.elf-fold.S
src/stub/src/powerpc-darwin.macho-entry.S
src/stub/src/powerpc-linux.elf-fold.S
src/stub/src/powerpc64le-darwin.macho-entry.S
src/stub/src/powerpc64le-linux.elf-entry.S
src/stub/src/powerpc64le-linux.elf-fold.S
src/stub/src/powerpc64le-linux.elf-main.c
Changes to be committed:
modified: ../.github/ISSUE_TEMPLATE.md
modified: ../.github/travis_build.sh
modified: ../.github/travis_deploy.sh
modified: ../.github/travis_init.sh
modified: ../.github/travis_testsuite_1.sh
modified: ../.gitignore
modified: ../.travis.yml
modified: ../NEWS
modified: c_screen.cpp
modified: file.cpp
modified: help.cpp
modified: linker.cpp
modified: main.cpp
modified: p_lx_elf.cpp
modified: packer.cpp
modified: s_djgpp2.cpp
modified: stub/src/amd64-linux.elf-main.c
modified: stub/src/arm.v4a-linux.elf-entry.S
modified: stub/src/arm.v4a-linux.elf-fold.S
modified: stub/src/arm64-linux.elf-entry.S
modified: stub/src/arm64-linux.elf-fold.S
modified: stub/src/i386-linux.elf-main.c
modified: stub/src/powerpc-darwin.dylib-entry.S
modified: stub/src/powerpc-darwin.macho-entry.S
modified: stub/src/powerpc-darwin.macho-fold.S
modified: stub/src/powerpc-linux.elf-fold.S
modified: stub/src/powerpc64le-darwin.dylib-entry.S
modified: stub/src/powerpc64le-darwin.macho-entry.S
modified: stub/src/powerpc64le-darwin.macho-fold.S
modified: stub/src/powerpc64le-linux.elf-entry.S
modified: stub/src/powerpc64le-linux.elf-fold.S
modified: stub/src/powerpc64le-linux.elf-main.c
modified: ui.cpp
modified: util.cpp
modified: work.cpp
[plus *.h, *.dump, *.map]
2017-05-08 14:21:31 -07:00
John Reiser
90714cf624
arm64 tracing in stub
...
modified: ../../linker.cpp
modified: ../../p_lx_elf.cpp
modified: arm64-linux.elf-entry.S
2017-05-06 19:37:37 -07:00
John Reiser
4e05f087f9
PowerPC 64-bit big-endian
...
modified: conf.h
modified: linker.cpp
modified: linker.h
modified: p_lx_elf.cpp
modified: p_lx_elf.h
modified: packmast.cpp
modified: stub/Makefile
modified: stub/powerpc-linux.elf-entry.h
new file: stub/powerpc64-linux.elf-entry.h
new file: stub/powerpc64-linux.elf-fold.h
modified: stub/powerpc64le-linux.elf-entry.h
modified: stub/powerpc64le-linux.elf-fold.h
modified: stub/scripts/xstrip.py
modified: stub/src/arch/powerpc/64le/nrv2b_d.S
modified: stub/src/arch/powerpc/64le/nrv2d_d.S
modified: stub/src/arch/powerpc/64le/nrv2e_d.S
new file: stub/src/powerpc64-darwin.dylib-entry.S
new file: stub/src/powerpc64-darwin.macho-entry.S
new file: stub/src/powerpc64-darwin.macho-fold.S
new file: stub/src/powerpc64-darwin.macho-main.c
new file: stub/src/powerpc64-linux.elf-entry.S
new file: stub/src/powerpc64-linux.elf-fold.S
new file: stub/src/powerpc64-linux.elf-fold.lds
new file: stub/src/powerpc64-linux.elf-main.c
modified: stub/src/powerpc64le-linux.elf-entry.S
modified: stub/src/powerpc64le-linux.elf-fold.S
modified: stub/src/powerpc64le-linux.elf-main.c
modified: stub/tmp/powerpc64le-linux.elf-entry.bin.dump
modified: stub/tmp/powerpc64le-linux.elf-fold.map
2017-04-11 19:15:43 -07:00
John Reiser
e88d2ff88c
Merge branch 'devel' into jreiser
...
modified: ../.appveyor.yml
modified: ../.github/travis_build.sh
modified: Makefile
modified: linker.cpp
modified: p_lx_elf.cpp
modified: packmast.cpp
2017-04-06 14:25:14 -07:00
John Reiser
b167374f13
R_PPC64_ADDR32
...
modified: linker.cpp
2017-04-06 14:12:29 -07:00
Markus F.X.J. Oberhumer
17a83d58da
clang-format files.
2017-04-05 17:15:29 +02:00
Markus F.X.J. Oberhumer
cdd58cf757
Use proper UPX types.
2017-04-05 16:31:36 +02:00
John Reiser
e8aabc9980
R_AARCH64_CONDBR19
...
modified: linker.cpp
2017-03-14 21:35:01 -07:00
John Reiser
68a2b91ccb
arm64 filter, relocation, defineSymbols
...
modified: Makefile
modified: bele.h
modified: filter/ct.h
modified: filteri.cpp
modified: linker.cpp
modified: miniacc.h
modified: p_lx_elf.cpp
modified: stub/arm64-linux.elf-entry.h
modified: stub/src/arm64-linux.elf-entry.S
2017-03-05 21:05:13 -08:00
John Reiser
4089cc6e6f
arm64-linux compiles
...
modified: conf.h
modified: linker.cpp
modified: linker.h
modified: p_elf_enum.h
modified: p_lx_elf.cpp
modified: p_lx_elf.h
modified: packmast.cpp
modified: stub/Makefile
new file: stub/arm64-linux.shlib-init.h
new file: stub/src/arm64-linux.shlib-init.S
new file: stub/tmp/arm64-linux.elf-entry.bin.dump
new file: stub/tmp/arm64-linux.elf-fold.map
new file: stub/tmp/arm64-linux.shlib-init.bin.dump
2017-03-05 18:07:29 -08:00
Markus F.X.J. Oberhumer
c4da5e81fa
Welcome 2017.
2017-01-03 12:02:07 +01:00
Markus F.X.J. Oberhumer
4953e77161
upx-clang-format -i linker.cpp linker.h
2016-11-20 14:20:36 +01:00
Markus F.X.J. Oberhumer
8d61e037f9
Cleanups.
2016-11-20 14:17:21 +01:00
John Reiser
9e1631ad4f
avoid null section name and zero alignment; enforce record === line
...
modified: linker.cpp
modified: linker.h
2016-11-19 17:38:23 -08:00
John Reiser
134b829d59
prevent warning C4319: '~': zero extending 'const unsigned int' to 'upx_uint64_t' of greater size
...
modified: linker.cpp
modified: p_lx_elf.cpp
modified: pefile.cpp
2016-11-19 16:46:01 -08:00
Markus F.X.J. Oberhumer
0d57d2cfe3
Remove old cruft.
2016-09-28 13:39:49 +02:00
Markus F.X.J. Oberhumer
32de5d0d7f
Fix msvc build.
2016-09-28 13:34:39 +02:00
Markus F.X.J. Oberhumer
f7554374ab
Update email address.
2016-09-28 12:25:01 +02:00
Markus F.X.J. Oberhumer
83828aa8a3
Update vim modelines.
2016-09-22 17:29:43 +02:00
Markus F.X.J. Oberhumer
96d9968db5
Welcome 2016.
2016-09-22 14:07:14 +02:00
Markus F.X.J. Oberhumer
b66ba140cb
More cleanups.
2016-09-21 23:18:19 +02:00
Markus F.X.J. Oberhumer
1bb0fa1809
Fix a few things spotted by the gcc-6 sanitizer. Needs review.
2016-09-21 00:35:51 +02:00
Markus F.X.J. Oberhumer
3f7c1f966b
Minor cleanups.
2016-09-20 22:14:25 +02:00
jreiser@BitWagon.com
1197beaa13
ElfLinker::init() zero length implies 0x4000 blank bytes
2016-09-05 20:36:07 -07:00
John Reiser
5de83a606e
Cleanup after Thierry Fauck changes for ppc64le.
...
We need a "UPX standard" compiler in order to re-compile the stubs for ppc64le;
meanwhile use Thierry's "pre-compiled" stubs.
Revert powerpc stubs to those produced by UPX standard powerpc.405-linux-gcc-3.4.5.
Cleanup the workarounds that Thierry used because he lacked upx-stubtools 20130920.
ARMv8 (64-bit) compiles but is incomplete and does not run yet.
changed src/Makefile
changed src/linker.cpp
changed src/stub/Makefile
changed src/stub/amd64-linux.elf-entry.h
changed src/stub/arm64-darwin.macho-entry.h
changed src/stub/arm64-darwin.macho-fold.h
changed src/stub/powerpc-darwin.dylib-entry.h
changed src/stub/powerpc-darwin.macho-entry.h
changed src/stub/powerpc-darwin.macho-fold.h
changed src/stub/powerpc-linux.elf-entry.h
changed src/stub/powerpc-linux.elf-fold.h
changed src/stub/powerpc-linux.kernel.vmlinux.h
changed src/stub/scripts/xstrip.py
changed src/stub/src/arch/arm/v8a/lzma_d.S
changed src/stub/src/arch/arm/v8a/macros.S
changed src/stub/src/arm64-darwin.macho-entry.S
changed src/stub/tmp/arm64-darwin.macho-entry.bin.dump
2016-07-26 21:29:29 -07:00
John Reiser
01a0c8672d
changeset: 2451:4e2a6c33d5fb
...
tag: ppc64le
user: Thierry Fauck <tfauck@free.fr>
date: Wed Jun 22 08:25:13 2016 -0400
summary: Add support for ppc64le statically linked binaries
2016-07-26 17:00:25 -07:00
John Reiser
42e520e841
ElfLinkerArm64LE
2016-01-31 19:59:00 -08:00
Markus F.X.J. Oberhumer
fb611a98f9
Welcome 2015.
2015-01-03 00:24:07 +01:00
Markus F.X.J. Oberhumer
a26c982e93
Welcome 2014.
2014-01-07 23:05:10 +01:00
Markus F.X.J. Oberhumer
b2643b6926
Start using the new intergral type names.
2013-09-20 08:19:18 +02:00
Markus F.X.J. Oberhumer
25727f7f99
Minor portability fixes.
2013-09-20 07:48:29 +02:00