serge-sans-paille
61cff9079c
[BOLT] Support building bolt when LLVM_LINK_LLVM_DYLIB is ON
...
This does *not* link with libLLVM, but with static archives instead. Not
super-great, but at least the build works, which is probably better than
failing.
Related to #57551
Differential Revision: https://reviews.llvm.org/D134434
2022-09-23 07:59:30 +02:00
serge-sans-paille
9029ed2e4b
[BOLT] Fix (part of) dylib compatibility
...
Non-LLVM components should not be listed as part of LLVM_LINK_COMPONENTS.
Differential Revision: https://reviews.llvm.org/D134278
2022-09-22 10:41:40 +02:00
serge-sans-paille
3ca61941c1
Revert "[bolt] Fix (part of) dylib compatibility"
...
This reverts commit 34ad83d883
.
2022-09-22 10:41:21 +02:00
serge-sans-paille
34ad83d883
[bolt] Fix (part of) dylib compatibility
...
Non-LLVM component should not be listed as part of LLVM_LINK_COMPONENTS
Differential Revision: https://reviews.llvm.org/D134278
2022-09-22 10:32:40 +02:00
Amir Ayupov
f9db6d2d5b
[BOLT][CMAKE] Fix llvm-bolt-fuzzer build
...
Add X86/AArch64 targets to resolve missing dependencies, e.g.:
`undefined reference to `LLVMInitializeX86AsmParser'`
Follow-up to D124206
Reviewed By: rafauler
Differential Revision: https://reviews.llvm.org/D124886
2022-05-03 19:25:48 -07:00
Amir Ayupov
d44f99c748
[BOLT] Added fuzzer target (llvm-bolt-fuzzer)
...
This adds a target that would consume random binary as an
input ELF file.
TBD: add structured input support (ELF).
Build:
```
cmake /path/to/llvm-project/llvm -GNinja \
-DLLVM_TARGETS_TO_BUILD="X86;AArch64" \
-DCMAKE_BUILD_TYPE=Release \
-DLLVM_ENABLE_ASSERTIONS=1 \
-DCMAKE_C_COMPILER=<sanitizer-capable clang> \
-DCMAKE_CXX_COMPILER=<sanitizer-capable clang++> \
-DLLVM_ENABLE_PROJECTS="bolt" \
-DLLVM_USE_SANITIZER=Address \
-DLLVM_USE_SANITIZE_COVERAGE=On
ninja llvm-bolt-fuzzer
```
Test Plan: ninja llvm-bolt-fuzzer
Reviewed By: maksfb
Differential Revision: https://reviews.llvm.org/D120016
2022-02-20 17:24:16 -08:00