diff options
author | Evgeniy Stepanov <eugeni.stepanov@gmail.com> | 2014-02-20 07:54:29 +0000 |
---|---|---|
committer | Evgeniy Stepanov <eugeni.stepanov@gmail.com> | 2014-02-20 07:54:29 +0000 |
commit | 8126e76a8a1ed12fae541bebf6bf22dbed20342c (patch) | |
tree | 54cb6775590143f0a64c766015afa2962cbb6d7a | |
parent | 2efed98b58da8c4ae27e53cc216a82b4f14e8eac (diff) | |
download | bcm5719-llvm-8126e76a8a1ed12fae541bebf6bf22dbed20342c.tar.gz bcm5719-llvm-8126e76a8a1ed12fae541bebf6bf22dbed20342c.zip |
[asan] Do all calls to __asan_report_* through PLT.
This matters when runtime is built as a shared library. Even though calling
code is itself part of the same library, these symbols are public and can
(theoretically) be interposed.
It might be better to declare hidden aliases for asan_report_* and call them
directly, but
(a) they are (noreturn), so performance does not matter, and
(b) it may be potentially less portable.
llvm-svn: 201764
-rw-r--r-- | compiler-rt/lib/asan/asan_asm_instrumentation.S | 40 |
1 files changed, 20 insertions, 20 deletions
diff --git a/compiler-rt/lib/asan/asan_asm_instrumentation.S b/compiler-rt/lib/asan/asan_asm_instrumentation.S index f8937cc257c..f67326dc7a9 100644 --- a/compiler-rt/lib/asan/asan_asm_instrumentation.S +++ b/compiler-rt/lib/asan/asan_asm_instrumentation.S @@ -40,7 +40,7 @@ __sanitizer_sanitize_store1: pushl %eax cld emms - call __asan_report_store1 + call __asan_report_store1@PLT .sanitize_store1_done: popfl popl %edx @@ -73,7 +73,7 @@ __sanitizer_sanitize_load1: pushl %eax cld emms - call __asan_report_load1 + call __asan_report_load1@PLT .sanitize_load1_done: popfl popl %edx @@ -107,7 +107,7 @@ __sanitizer_sanitize_store2: pushl %eax cld emms - call __asan_report_store2 + call __asan_report_store2@PLT .sanitize_store2_done: popfl popl %edx @@ -141,7 +141,7 @@ __sanitizer_sanitize_load2: pushl %eax cld emms - call __asan_report_load2 + call __asan_report_load2@PLT .sanitize_load2_done: popfl popl %edx @@ -175,7 +175,7 @@ __sanitizer_sanitize_store4: pushl %eax cld emms - call __asan_report_store4 + call __asan_report_store4@PLT .sanitize_store4_done: popfl popl %edx @@ -209,7 +209,7 @@ __sanitizer_sanitize_load4: pushl %eax cld emms - call __asan_report_load4 + call __asan_report_load4@PLT .sanitize_load4_done: popfl popl %edx @@ -235,7 +235,7 @@ __sanitizer_sanitize_store8: pushl %eax cld emms - call __asan_report_store8 + call __asan_report_store8@PLT .sanitize_store8_done: popfl popl %ecx @@ -260,7 +260,7 @@ __sanitizer_sanitize_load8: pushl %eax cld emms - call __asan_report_load8 + call __asan_report_load8@PLT .sanitize_load8_done: popfl popl %ecx @@ -285,7 +285,7 @@ __sanitizer_sanitize_store16: pushl %eax cld emms - call __asan_report_store16 + call __asan_report_store16@PLT .sanitize_store16_done: popfl popl %ecx @@ -310,7 +310,7 @@ __sanitizer_sanitize_load16: pushl %eax cld emms - call __asan_report_load16 + call __asan_report_load16@PLT .sanitize_load16_done: popfl popl %ecx @@ -342,7 +342,7 @@ __sanitizer_sanitize_store1: andq $-16, %rsp cld emms - call __asan_report_store1 + call __asan_report_store1@PLT .sanitize_store1_done: popfq popq %rcx @@ -372,7 +372,7 @@ __sanitizer_sanitize_load1: andq $-16, %rsp cld emms - call __asan_report_load1 + call __asan_report_load1@PLT .sanitize_load1_done: popfq popq %rcx @@ -403,7 +403,7 @@ __sanitizer_sanitize_store2: andq $-16, %rsp cld emms - call __asan_report_store2 + call __asan_report_store2@PLT .sanitize_store2_done: popfq popq %rcx @@ -434,7 +434,7 @@ __sanitizer_sanitize_load2: andq $-16, %rsp cld emms - call __asan_report_load2 + call __asan_report_load2@PLT .sanitize_load2_done: popfq popq %rcx @@ -465,7 +465,7 @@ __sanitizer_sanitize_store4: andq $-16, %rsp cld emms - call __asan_report_store4 + call __asan_report_store4@PLT .sanitize_store4_done: popfq popq %rcx @@ -496,7 +496,7 @@ __sanitizer_sanitize_load4: andq $-16, %rsp cld emms - call __asan_report_load4 + call __asan_report_load4@PLT .sanitize_load4_done: popfq popq %rcx @@ -519,7 +519,7 @@ __sanitizer_sanitize_store8: andq $-16, %rsp cld emms - call __asan_report_store8 + call __asan_report_store8@PLT .sanitize_store8_done: popfq popq %rax @@ -541,7 +541,7 @@ __sanitizer_sanitize_load8: andq $-16, %rsp cld emms - call __asan_report_load8 + call __asan_report_load8@PLT .sanitize_load8_done: popfq popq %rax @@ -563,7 +563,7 @@ __sanitizer_sanitize_store16: andq $-16, %rsp cld emms - call __asan_report_store16 + call __asan_report_store16@PLT .sanitize_store16_done: popfq popq %rax @@ -585,7 +585,7 @@ __sanitizer_sanitize_load16: andq $-16, %rsp cld emms - call __asan_report_load16 + call __asan_report_load16@PLT .sanitize_load16_done: popfq popq %rax |