diff options
author | Alexey Samsonov <vonosmas@gmail.com> | 2015-02-10 19:50:20 +0000 |
---|---|---|
committer | Alexey Samsonov <vonosmas@gmail.com> | 2015-02-10 19:50:20 +0000 |
commit | 1923595b4fd331f4af8c0649cbf96d0036ec9316 (patch) | |
tree | b8b4f15544e1bef21a22a7c25e030b39661b2c37 /openmp/runtime/src | |
parent | 43c0d2db50a90f54028877869d5fb86bdb0502b7 (diff) | |
download | bcm5719-llvm-1923595b4fd331f4af8c0649cbf96d0036ec9316.tar.gz bcm5719-llvm-1923595b4fd331f4af8c0649cbf96d0036ec9316.zip |
[UBSan] Reduce the number of getCallerLocation() calls.
getCallerLocation() is expensive as it issues a call to symbolizer.
(In fact, this function has a memory leak at the moment, but this
will be fixed in the nearest future). We should only call it if
we're actually going to print an error report, in particular,
once for every reported source location.
__ubsan_handle_type_mismatch: call getCallerLocation() only if
provided source location is invalid, and only if the report is not
deduplicated.
__ubsan_handle_float_cast_overflow: call getSourceLocation with
correct CallerPC (the one in user code, not in UBSan handler). Source
location for this check is not currently emitted by frontend.
llvm-svn: 228732
Diffstat (limited to 'openmp/runtime/src')
0 files changed, 0 insertions, 0 deletions