31class ShadowGarbageCollector {
34 llvm::LLVMContext &context;
36 llvm::IRBuilder<> &builder;
37 std::vector<llvm::Constant *> MetaDataEntries;
42 std::map<std::string, llvm::GlobalVariable *> fn_name_to_frame_map;
45 ShadowGarbageCollector(llvm::Module &module, llvm::LLVMContext &context,
46 llvm::IRBuilder<> &builder)
47 : module(module), context(context), builder(builder) {}
49 virtual std::string llvmStrategy() {
return "shadow-stack"; }