llvm-project/compiler-rt/lib/xray
Dean Michael Berris 9df8ef5538 [XRay][compiler-rt] Cleanup CFI/CFA annotations on trampolines
Summary:
This is a follow-up to D32202.

While the previous change (D32202) did fix the stack alignment issue, we
were still at a weird state in terms of the CFI/CFA directives (as the
offsets were wrong). This change cleans up the SAVE/RESTORE macros for
the trampoline, accounting the stack pointer adjustments with less
instructions and with some clearer math. We note that the offsets will
be different on the exit trampolines, because we don't typically 'call'
into this trampoline and we only ever jump into them (i.e. treated as a
tail call that's patched in at runtime).

Reviewers: eugenis, kpw, pelikan

Subscribers: llvm-commits

Differential Revision: https://reviews.llvm.org/D32214

llvm-svn: 300815
2017-04-20 03:26:04 +00:00
..
tests [XRay][compiler-rt] Remove the xray_fdr_log_printer_tool 2017-04-11 06:04:08 +00:00
CMakeLists.txt [XRay] Change the ppc trampoline asm file into a different name, to not collide with the cc file. NFC. 2017-02-22 00:19:43 +00:00
xray_AArch64.cc [XRay] [compiler-rt] Allow logging the first argument of a function call. 2017-03-06 07:25:41 +00:00
xray_arm.cc [XRay] [compiler-rt] Allow logging the first argument of a function call. 2017-03-06 07:25:41 +00:00
xray_buffer_queue.cc [XRay][compiler-rt] Use sanitizer_common's atomic ops 2017-03-27 07:13:35 +00:00
xray_buffer_queue.h [XRay] [compiler-rt] Write buffer length to FDR log before writing buffer. 2017-03-29 05:56:37 +00:00
xray_defs.h [XRay][compiler-rt] Disable XRay instrumentation of the XRay runtime. 2016-11-16 01:01:13 +00:00
xray_fdr_log_records.h [XRay] [compiler-rt] Refactor logic for xray fdr logging. NFC. 2017-03-15 03:12:01 +00:00
xray_fdr_logging.cc [XRay][compiler-rt] Use emulated TSC when CPU supports rdtscp, but cannot determine the CPU frequency 2017-04-18 03:25:11 +00:00
xray_fdr_logging.h [XRay][compiler-rt] Add an end-to-end test for FDR Logging 2017-03-29 05:19:24 +00:00
xray_fdr_logging_impl.h [XRay] [compiler-rt] Refactor rewinding FDR logging. 2017-04-12 05:30:35 +00:00
xray_flags.cc [XRay][compiler-rt] Allow for defining defaults at compile-time 2017-02-18 02:09:51 +00:00
xray_flags.h [XRay][compiler-rt][NFC] Turn ProudCase functions to humbleCase functions 2017-02-07 23:35:34 +00:00
xray_flags.inc [XRay] [compiler-rt] Unwriting FDR mode buffers when functions are short. 2017-04-06 07:14:43 +00:00
xray_init.cc [XRay][compiler-rt] Use sanitizer_common's atomic ops 2017-03-27 07:13:35 +00:00
xray_inmemory_log.cc [XRay][compiler-rt] Use emulated TSC when CPU supports rdtscp, but cannot determine the CPU frequency 2017-04-18 03:25:11 +00:00
xray_interface.cc [XRay][compiler-rt] Use sanitizer_common's atomic ops 2017-03-27 07:13:35 +00:00
xray_interface_internal.h [XRay] [compiler-rt] Allow logging the first argument of a function call. 2017-03-06 07:25:41 +00:00
xray_log_interface.cc [XRay][compiler-rt] Add an end-to-end test for FDR Logging 2017-03-29 05:19:24 +00:00
xray_mips.cc [XRay] [compiler-rt] Stub out architectures we don't do arg1 logging on. 2017-03-06 08:26:21 +00:00
xray_mips64.cc [XRay] [compiler-rt] Stub out architectures we don't do arg1 logging on. 2017-03-06 08:26:21 +00:00
xray_powerpc64.cc [XRay] [compiler-rt] Stub out architectures we don't do arg1 logging on. 2017-03-06 08:26:21 +00:00
xray_powerpc64.inc Re-commit r295017, since we have a potential fix of the tests, r295248, landed. 2017-02-15 22:40:29 +00:00
xray_trampoline_AArch64.S Add NO_EXEC_STACK_DIRECTIVE to xray assembly files. 2017-03-15 21:18:47 +00:00
xray_trampoline_arm.S Add NO_EXEC_STACK_DIRECTIVE to xray assembly files. 2017-03-15 21:18:47 +00:00
xray_trampoline_mips.S [Compiler-rt][XRAY][MIPS] Support xray on mips/mipsel/mips64/mips64el 2017-02-15 10:54:09 +00:00
xray_trampoline_mips64.S [Compiler-rt][XRAY][MIPS] Support xray on mips/mipsel/mips64/mips64el 2017-02-15 10:54:09 +00:00
xray_trampoline_powerpc64.cc Re-commit r295017, since we have a potential fix of the tests, r295248, landed. 2017-02-15 22:40:29 +00:00
xray_trampoline_powerpc64_asm.S [XRay] Change the ppc trampoline asm file into a different name, to not collide with the cc file. NFC. 2017-02-22 00:19:43 +00:00
xray_trampoline_x86_64.S [XRay][compiler-rt] Cleanup CFI/CFA annotations on trampolines 2017-04-20 03:26:04 +00:00
xray_tsc.h [XRay][compiler-rt] Support TSC emulation even for x86_64 2017-03-15 02:28:00 +00:00
xray_utils.cc [XRay][compiler-rt] Add an end-to-end test for FDR Logging 2017-03-29 05:19:24 +00:00
xray_utils.h [XRay] Refactor TSC related functions into a single header. NFC. 2017-02-10 20:30:43 +00:00
xray_x86_64.cc [XRay][compiler-rt] Use emulated TSC when CPU supports rdtscp, but cannot determine the CPU frequency 2017-04-18 03:25:11 +00:00
xray_x86_64.inc [XRay] Refactor TSC related functions into a single header. NFC. 2017-02-10 20:30:43 +00:00