From c1ca877c173b00e077b739be35b6020fc0222e58 Mon Sep 17 00:00:00 2001 From: Benoit Jacob Date: Thu, 26 Nov 2020 14:17:01 -0500 Subject: [PATCH] now with sstrip --- client/TracySysTracePayload.hpp | 64 ++++++++------------------------- extra/systrace/build.sh | 27 +++++++++++--- 2 files changed, 36 insertions(+), 55 deletions(-) diff --git a/client/TracySysTracePayload.hpp b/client/TracySysTracePayload.hpp index 1ee79bf0..7c292f9d 100644 --- a/client/TracySysTracePayload.hpp +++ b/client/TracySysTracePayload.hpp @@ -1,19 +1,19 @@ -// File: 'tracy_systrace.armv7' (1940 bytes) -// File: 'tracy_systrace.aarch64' (2592 bytes) +// File: 'extra/systrace/tracy_systrace.armv7' (1149 bytes) +// File: 'extra/systrace/tracy_systrace.aarch64' (1650 bytes) // Exported using binary_to_compressed_c.cpp namespace tracy { -static const unsigned int tracy_systrace_armv7_size = 1940; -static const unsigned int tracy_systrace_armv7_data[1940/4] = +static const unsigned int tracy_systrace_armv7_size = 1149; +static const unsigned int tracy_systrace_armv7_data[1152/4] = { - 0x464c457f, 0x00010101, 0x00000000, 0x00000000, 0x00280003, 0x00000001, 0x000001f0, 0x00000034, 0x00000564, 0x05000200, 0x00200034, 0x00280007, - 0x000d000e, 0x00000006, 0x00000034, 0x00000034, 0x00000034, 0x000000e0, 0x000000e0, 0x00000004, 0x00000004, 0x00000003, 0x00000114, 0x00000114, + 0x464c457f, 0x00010101, 0x00000000, 0x00000000, 0x00280003, 0x00000001, 0x000001f0, 0x00000034, 0x00000000, 0x05000200, 0x00200034, 0x00280007, + 0x00000000, 0x00000006, 0x00000034, 0x00000034, 0x00000034, 0x000000e0, 0x000000e0, 0x00000004, 0x00000004, 0x00000003, 0x00000114, 0x00000114, 0x00000114, 0x00000013, 0x00000013, 0x00000004, 0x00000001, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x000003fd, 0x000003fd, 0x00000005, - 0x00001000, 0x00000001, 0x000003fd, 0x000013fd, 0x000013fd, 0x000000b3, 0x000000b3, 0x00000006, 0x00001000, 0x00000002, 0x00000400, 0x00001400, - 0x00001400, 0x000000b0, 0x000000b0, 0x00000006, 0x00000004, 0x6474e551, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000006, + 0x00001000, 0x00000001, 0x000003fd, 0x000013fd, 0x000013fd, 0x00000080, 0x000000b3, 0x00000006, 0x00001000, 0x00000002, 0x00000400, 0x00001400, + 0x00001400, 0x0000007d, 0x000000b0, 0x00000006, 0x00000004, 0x6474e551, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000006, 0x00000004, 0x70000001, 0x000003a4, 0x000003a4, 0x000003a4, 0x00000008, 0x00000008, 0x00000004, 0x00000004, 0x7379732f, 0x2f6d6574, 0x2f6e6962, 0x6b6e696c, 0x00007265, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000012, 0x00000016, 0x00000000, 0x00000000, 0x00000012, 0x6f6c6400, 0x006e6570, 0x4342494c, 0x62696c00, 0x732e6c64, 0x6c64006f, 0x006d7973, 0x00000001, 0x00000003, 0x00000001, @@ -33,34 +33,17 @@ static const unsigned int tracy_systrace_armv7_data[1940/4] = 0x72742f67, 0x5f656361, 0x65706970, 0x00000000, 0x00000003, 0x000014b0, 0x00000002, 0x00000010, 0x00000017, 0x000001b4, 0x00000014, 0x00000011, 0x00000015, 0x00000000, 0x00000006, 0x00000128, 0x0000000b, 0x00000010, 0x00000005, 0x00000158, 0x0000000a, 0x0000001c, 0x6ffffef5, 0x00000174, 0x00000001, 0x0000000d, 0x0000001e, 0x00000008, 0x6ffffffb, 0x00000001, 0x6ffffff0, 0x0000018c, 0x6ffffffe, 0x00000194, 0x6fffffff, 0x00000001, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0x00003941, 0x61656100, 0x01006962, 0x0000002f, 0x302e3243, 0x0a060039, 0x01084107, 0x030a0209, 0x010f010c, 0x02110110, 0x01140412, 0x03170115, - 0x01190118, 0x0122021a, 0x2e000126, 0x74736873, 0x62617472, 0x6e692e00, 0x70726574, 0x79642e00, 0x6d79736e, 0x79642e00, 0x7274736e, 0x6e672e00, - 0x61682e75, 0x2e006873, 0x2e756e67, 0x73726576, 0x5f6e6f69, 0x722e0072, 0x702e6c65, 0x2e00746c, 0x74786574, 0x52412e00, 0x78652e4d, 0x00786469, - 0x646f722e, 0x00617461, 0x6e79642e, 0x63696d61, 0x52412e00, 0x74612e4d, 0x62697274, 0x73657475, 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0000000b, 0x00000001, 0x00000002, 0x00000114, 0x00000114, - 0x00000013, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000013, 0x0000000b, 0x00000002, 0x00000128, 0x00000128, 0x00000030, 0x00000003, - 0x00000001, 0x00000004, 0x00000010, 0x0000001b, 0x00000003, 0x00000002, 0x00000158, 0x00000158, 0x0000001c, 0x00000000, 0x00000000, 0x00000001, - 0x00000000, 0x00000023, 0x6ffffff6, 0x00000002, 0x00000174, 0x00000174, 0x00000018, 0x00000002, 0x00000000, 0x00000004, 0x00000004, 0x0000002d, - 0x6ffffffe, 0x00000002, 0x00000194, 0x00000194, 0x00000020, 0x00000003, 0x00000001, 0x00000004, 0x00000000, 0x0000003c, 0x00000009, 0x00000002, - 0x000001b4, 0x000001b4, 0x00000010, 0x00000002, 0x00000000, 0x00000004, 0x00000008, 0x00000040, 0x00000001, 0x00000006, 0x000001c4, 0x000001c4, - 0x0000002c, 0x00000000, 0x00000000, 0x00000004, 0x00000000, 0x00000045, 0x00000001, 0x00000006, 0x000001f0, 0x000001f0, 0x000001b4, 0x00000000, - 0x00000000, 0x00000004, 0x00000000, 0x0000004b, 0x70000001, 0x00000082, 0x000003a4, 0x000003a4, 0x00000008, 0x00000008, 0x00000000, 0x00000004, - 0x00000008, 0x00000056, 0x00000001, 0x00000032, 0x000003ac, 0x000003ac, 0x00000051, 0x00000000, 0x00000000, 0x00000001, 0x00000001, 0x0000005e, - 0x00000006, 0x00000003, 0x00001400, 0x00000400, 0x000000b0, 0x00000003, 0x00000000, 0x00000004, 0x00000008, 0x00000067, 0x70000003, 0x00000000, - 0x00000000, 0x000004b0, 0x0000003a, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000001, 0x00000003, 0x00000000, 0x00000000, 0x000004ea, - 0x00000077, 0x00000000, 0x00000000, 0x00000001, 0x00000000, }; -static const unsigned int tracy_systrace_aarch64_size = 2592; -static const unsigned int tracy_systrace_aarch64_data[2592/4] = +static const unsigned int tracy_systrace_aarch64_size = 1650; +static const unsigned int tracy_systrace_aarch64_data[1652/4] = { - 0x464c457f, 0x00010102, 0x00000000, 0x00000000, 0x00b70003, 0x00000001, 0x000002e0, 0x00000000, 0x00000040, 0x00000000, 0x000006e0, 0x00000000, - 0x00000000, 0x00380040, 0x00400006, 0x000c000d, 0x00000006, 0x00000005, 0x00000040, 0x00000000, 0x00000040, 0x00000000, 0x00000040, 0x00000000, + 0x464c457f, 0x00010102, 0x00000000, 0x00000000, 0x00b70003, 0x00000001, 0x000002e0, 0x00000000, 0x00000040, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00380040, 0x00400006, 0x00000000, 0x00000006, 0x00000005, 0x00000040, 0x00000000, 0x00000040, 0x00000000, 0x00000040, 0x00000000, 0x00000150, 0x00000000, 0x00000150, 0x00000000, 0x00000008, 0x00000000, 0x00000003, 0x00000004, 0x00000190, 0x00000000, 0x00000190, 0x00000000, 0x00000190, 0x00000000, 0x00000015, 0x00000000, 0x00000015, 0x00000000, 0x00000001, 0x00000000, 0x00000001, 0x00000005, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000004e1, 0x00000000, 0x000004e1, 0x00000000, 0x00001000, 0x00000000, 0x00000001, 0x00000006, - 0x000004e8, 0x00000000, 0x000014e8, 0x00000000, 0x000014e8, 0x00000000, 0x00000190, 0x00000000, 0x00000190, 0x00000000, 0x00001000, 0x00000000, + 0x000004e8, 0x00000000, 0x000014e8, 0x00000000, 0x000014e8, 0x00000000, 0x0000018a, 0x00000000, 0x00000190, 0x00000000, 0x00001000, 0x00000000, 0x00000002, 0x00000006, 0x000004e8, 0x00000000, 0x000014e8, 0x00000000, 0x000014e8, 0x00000000, 0x00000160, 0x00000000, 0x00000160, 0x00000000, 0x00000008, 0x00000000, 0x6474e551, 0x00000006, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000000, 0x7379732f, 0x2f6d6574, 0x2f6e6962, 0x6b6e696c, 0x34367265, 0x00000000, 0x00000001, 0x00000001, @@ -89,26 +72,7 @@ static const unsigned int tracy_systrace_aarch64_data[2592/4] = 0x00000001, 0x00000000, 0x6ffffff0, 0x00000000, 0x00000244, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x00000000, 0x000002a0, 0x00000000, 0x000002a0, 0x00000000, 0x68732e00, 0x74727473, 0x2e006261, 0x65746e69, 0x2e007072, 0x2e756e67, - 0x68736168, 0x79642e00, 0x6d79736e, 0x79642e00, 0x7274736e, 0x6e672e00, 0x65762e75, 0x6f697372, 0x00725f6e, 0x6c65722e, 0x6c702e61, 0x742e0074, - 0x00747865, 0x646f722e, 0x00617461, 0x6e79642e, 0x63696d61, 0x6f672e00, 0x6c702e74, 0x00000074, 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, - 0x0000000b, 0x00000001, 0x00000002, 0x00000000, 0x00000190, 0x00000000, 0x00000190, 0x00000000, 0x00000015, 0x00000000, 0x00000000, 0x00000000, - 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000013, 0x6ffffff6, 0x00000002, 0x00000000, 0x000001a8, 0x00000000, 0x000001a8, 0x00000000, - 0x0000001c, 0x00000000, 0x00000003, 0x00000000, 0x00000008, 0x00000000, 0x00000000, 0x00000000, 0x0000001d, 0x0000000b, 0x00000002, 0x00000000, - 0x000001c8, 0x00000000, 0x000001c8, 0x00000000, 0x00000060, 0x00000000, 0x00000004, 0x00000002, 0x00000008, 0x00000000, 0x00000018, 0x00000000, - 0x00000025, 0x00000003, 0x00000002, 0x00000000, 0x00000228, 0x00000000, 0x00000228, 0x00000000, 0x0000001c, 0x00000000, 0x00000000, 0x00000000, - 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x0000002d, 0x6ffffffe, 0x00000002, 0x00000000, 0x00000250, 0x00000000, 0x00000250, 0x00000000, - 0x00000020, 0x00000000, 0x00000004, 0x00000001, 0x00000008, 0x00000000, 0x00000000, 0x00000000, 0x0000003c, 0x00000004, 0x00000042, 0x00000000, - 0x00000270, 0x00000000, 0x00000270, 0x00000000, 0x00000030, 0x00000000, 0x00000003, 0x0000000b, 0x00000008, 0x00000000, 0x00000018, 0x00000000, - 0x00000041, 0x00000001, 0x00000006, 0x00000000, 0x000002a0, 0x00000000, 0x000002a0, 0x00000000, 0x00000040, 0x00000000, 0x00000000, 0x00000000, - 0x00000010, 0x00000000, 0x00000010, 0x00000000, 0x00000046, 0x00000001, 0x00000006, 0x00000000, 0x000002e0, 0x00000000, 0x000002e0, 0x00000000, - 0x00000198, 0x00000000, 0x00000000, 0x00000000, 0x00000004, 0x00000000, 0x00000000, 0x00000000, 0x0000004c, 0x00000001, 0x00000002, 0x00000000, - 0x00000480, 0x00000000, 0x00000480, 0x00000000, 0x00000061, 0x00000000, 0x00000000, 0x00000000, 0x00000010, 0x00000000, 0x00000000, 0x00000000, - 0x00000054, 0x00000006, 0x00000003, 0x00000000, 0x000014e8, 0x00000000, 0x000004e8, 0x00000000, 0x00000160, 0x00000000, 0x00000004, 0x00000000, - 0x00000008, 0x00000000, 0x00000010, 0x00000000, 0x0000005d, 0x00000001, 0x00000003, 0x00000000, 0x00001650, 0x00000000, 0x00000650, 0x00000000, - 0x00000028, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000000, 0x00000008, 0x00000000, 0x00000001, 0x00000003, 0x00000000, 0x00000000, - 0x00000000, 0x00000000, 0x00000678, 0x00000000, 0x00000066, 0x00000000, 0x00000000, 0x00000000, 0x00000001, 0x00000000, 0x00000000, 0x00000000, + 0x00000000, 0x00000000, 0x000002a0, 0x00000000, 0x000002a0, }; } diff --git a/extra/systrace/build.sh b/extra/systrace/build.sh index 5477ed15..1da097a9 100755 --- a/extra/systrace/build.sh +++ b/extra/systrace/build.sh @@ -1,14 +1,31 @@ #!/bin/sh + +# These may be passed as environment variables, or will use the following defaults. : ${CC:=clang} : ${STRIP:=strip} -: ${SSTRIP:=} +: ${SSTRIP:=sstrip} + +if [ ! -x "$(command -v "${CC}")" ] +then + echo "Set the CC environment variable to a C compiler." + exit 1 +fi + +if [ ! -x "$(command -v "${STRIP}")" ] +then + echo "Set the STRIP environment variable to the strip utility." + exit 1 +fi + +if [ ! -x "$(command -v "${SSTRIP}")" ] +then + echo "Set the SSTRIP environment variable to the sstrip utility, which can be obtained from https://github.com/BR903/ELFkickers ." + exit 1 +fi $CC tracy_systrace.c -s -Os -ffunction-sections -fdata-sections -Wl,--gc-sections -fno-stack-protector -Wl,-z,norelro -Wl,--build-id=none -nostdlib -ldl -o tracy_systrace $STRIP --strip-all -R .note.gnu.gold-version -R .comment -R .note -R .note.gnu.build-id -R .note.ABI-tag -R .eh_frame -R .eh_frame_hdr -R .gnu.version -R .got tracy_systrace -if [[ ! -z "$SSTRIP" ]] -then - $SSTRIP -z tracy_systrace -fi +$SSTRIP -z tracy_systrace