summaryrefslogtreecommitdiffstats
path: root/lldb/packages/Python/lldbsuite/test/python_api/thread/TestThreadAPI.py
diff options
context:
space:
mode:
authorFangrui Song <maskray@google.com>2019-05-10 05:51:00 +0000
committerFangrui Song <maskray@google.com>2019-05-10 05:51:00 +0000
commit6cdd68e386d98c0535e9f977849f376e1e6f55a2 (patch)
treed9b999eafd47e2ad7cc7cc4d313e58691ca00d12 /lldb/packages/Python/lldbsuite/test/python_api/thread/TestThreadAPI.py
parentc39a243da651991c5037dee7bae2d6e7d8c37196 (diff)
downloadbcm5719-llvm-6cdd68e386d98c0535e9f977849f376e1e6f55a2.tar.gz
bcm5719-llvm-6cdd68e386d98c0535e9f977849f376e1e6f55a2.zip
[PPC64] Define getThunkSectionSpacing() based on the range of R_PPC64_REL24
Suggested by Sean Fertile and Peter Smith. Thunk section spacing decrease the total number of thunks. I measured a decrease of 1% or less in some large programs, with no perceivable slowdown in link time. Override getThunkSectionSpacing() to enable it. 0x2000000 is the farthest point R_PPC64_REL24 can reach. I tried several numbers and found 0x2000000 works the best. Numbers near 0x2000000 work as well but let's just use the simpler number. As demonstrated by the updated tests, this essentially changes placement of most thunks to the end of the output section. We leverage this property to fix PR40740 reported by Alfredo Dal'Ava JĂșnior: The output section .init consists of input sections from several object files (crti.o crtbegin.o crtend.o crtn.o). Sections other than the last one do not have a terminator. With this patch, we create the thunk after the last .init input section and thus fix the issue. This is not foolproof but works quite well for such sections (with no terminator) in practice. Reviewed By: ruiu, sfertile Differential Revision: https://reviews.llvm.org/D61720 llvm-svn: 360405
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/python_api/thread/TestThreadAPI.py')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud