summaryrefslogtreecommitdiff
path: root/libc/malloc_debug/malloc_debug.cpp
diff options
context:
space:
mode:
authorChristopher Ferris <cferris@google.com>2019-05-17 16:22:56 -0700
committerChristopher Ferris <cferris@google.com>2019-05-17 17:52:51 -0700
commit0c0f6fb29361aa858944593ee2801e6fc8ce663f (patch)
treea82b8cea8b95ebfcdd23e75cff3c3b237d02c431 /libc/malloc_debug/malloc_debug.cpp
parentb43f0b799365eab49c8f173fd3b6eef664e33e9d (diff)
Keep .debug_frame on arm 32.
The arm exidx unwind information can be sparse and clang is producing functions that cannot be properly represented. The .debug_frame includes extra unwind information that covers the cases that are not complete, so do not remove it. For example, the __strchr_chk function has a push in the middle of the function, so any crash before that instruction will not unwind properly. This does increase the size of libc.so, but only by about 80,000 bytes. Bug: 132992102 Test: Verified the .debug_frame exists in libc.so only for arm32. Test: Used the unwind_reg_info to verify that __str_chk gets proper Test: unwind info. Also use unwind_reg_info on some assembler functions Test: to make sure that there is no overlapping information. Change-Id: If9a6de15b3adf08a93c4563da8c89846e4dd059b
Diffstat (limited to 'libc/malloc_debug/malloc_debug.cpp')
0 files changed, 0 insertions, 0 deletions