VVladislav Khmelevsky[BOLT][Runtime] Fix memset definition
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[BOLT] Fix instrumentation problem with floating point If BOLT instrumentation runtime uses XMM registers, it can interfere with the user program causing crashes and unexpected behavior. This happens as the instrumentation code preserves general purpose registers only. Build BOLT instrumentation runtime with "-mno-sse". Reviewed By: Amir Differential Revision: https://reviews.llvm.org/D128960 | 3 年前 | |
[BOLT][Runtime] Fix memset definition Differential Revision: https://reviews.llvm.org/D129321 | 3 年前 | |
[BOLT] Fix build for Mac Summary: Change our CMake config for the standalone runtime instrumentation library to check for the elf.h header before using it, so the build doesn't break on systems lacking it. Also fix a SmallPtrSet usage where its elements are not really pointers, but uint64_t, breaking the build in Apple's Clang. (cherry picked from FBD17505759) | 6 年前 | |
[BOLT] Add runtime functions required by freestanding environment Compiler can generate calls to some functions implicitly, even under constraints of freestanding environment. Make sure these functions are available in our runtime objects. Fixes test failures on some systems after https://reviews.llvm.org/D128960. Reviewed By: yota9 Differential Revision: https://reviews.llvm.org/D129168 | 3 年前 | |
[BOLT] Fix concurrent hash table modification in the instrumentation runtime __bolt_instr_data_dump() does not lock the hash tables when iterating over them, so the iteration can happen concurrently with a modification done in another thread, when the table is in an inconsistent state. This also has been observed in practice, when it caused a segmentation fault. We fix this by locking hash tables during iteration. This is done by taking the lock in forEachElement(). The only other site of iteration, resetCounters(), has been correctly locking the table even before this patch. This patch removes its Lock because the lock is now taken in the inner forEachElement(). Reviewed By: maksfb, yota9 Differential Revision: https://reviews.llvm.org/D129089 | 3 年前 |