diff options
author | Rainer Orth <ro@gcc.gnu.org> | 2019-07-11 18:26:24 +0000 |
---|---|---|
committer | Rainer Orth <ro@gcc.gnu.org> | 2019-07-11 18:26:24 +0000 |
commit | 9512c0a1d1966b7c9328ed1460a1787c4a45cbb6 (patch) | |
tree | 2803ffc6d976f018b04bb5c9f0f62eaba85f56c7 /lldb/packages/Python/lldbsuite/test/functionalities/command_source/my.py | |
parent | a286aae4d818f8a2e0eb70c68c0605cae6874a44 (diff) | |
download | bcm5719-llvm-9512c0a1d1966b7c9328ed1460a1787c4a45cbb6.tar.gz bcm5719-llvm-9512c0a1d1966b7c9328ed1460a1787c4a45cbb6.zip |
[profile][test] Fix Profile-* :: instrprof-merge.c etc. on SPARC
While working on https://reviews.llvm.org/D40900 (which effectively is about enabling compiler-rt on sparc these days), I came across two failing profile testcases:
Profile-sparc :: instrprof-merge-match.test
Profile-sparc :: instrprof-merge.c
Profile-sparcv9 :: instrprof-merge-match.test
Profile-sparcv9 :: instrprof-merge.c
All of them crashed with a SIGBUS in __llvm_profile_merge_from_buffer:
Thread 2 received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1 (LWP 1)]
0x00012368 in __llvm_profile_merge_from_buffer (
ProfileData=0x2384c <main.Buffer> "\377lprofR\201", ProfileSize=360)
at /vol/llvm/src/llvm/local/projects/compiler-rt/lib/profile/InstrProfilingMerge.c:95
95 SrcDataEnd = SrcDataStart + Header->DataSize;
where Header is insufficiently aligned for a strict-alignment target like SPARC.
Fixed by forcing the alignment to uint64_t, the members of struct __llvm_profile_header,
in the callers.
Tested on sparcv9-sun-solaris2.11.
https://reviews.llvm.org/D64498
llvm-svn: 365805
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/functionalities/command_source/my.py')
0 files changed, 0 insertions, 0 deletions