Displaying 8 results from an estimated 8 matches for "removemoduleset".
2015 Jan 14
4
[LLVMdev] New JIT APIs
...ayers are classes that implement a small
common interface that makes them easy to compose:
class SomeLayer {
private:
// Implementation details
public:
// Implementation details
typedef ??? Handle;
template <typename ModuleSet>
Handle addModuleSet(ModuleSet&& Ms);
void removeModuleSet(Handle H);
uint64_t getSymbolAddress(StringRef Name, bool ExportedSymbolsOnly);
uint64_t lookupSymbolAddressIn(Handle H, StringRef Name, bool
ExportedSymbolsOnly);
};
Layers are usually designed to sit one-on-top-of-another, with each doing
some sort of useful work before handing off to the...
2015 Jan 16
5
[LLVMdev] New JIT APIs
...em easy to compose:
>
> class SomeLayer {
> private:
> Â // Implementation details
> public:
> Â // Implementation details
>
> Â typedef ??? Handle;
>
> Â template <typename ModuleSet>
> Â Handle addModuleSet(ModuleSet&& Ms);
>
> Â void removeModuleSet(Handle H);
>
> Â uint64_t getSymbolAddress(StringRef Name, bool ExportedSymbolsOnly);
>
> Â uint64_t lookupSymbolAddressIn(Handle H, StringRef Name, bool
> ExportedSymbolsOnly);
> };
>
> Layers are usually designed to sit one-on-top-of-another, with each
> doing some...
2017 Apr 09
2
Possible stack corruption during call to JITSymbol::getAddress()
...) {
std::string MangledName;
raw_string_ostream MangledNameStream(MangledName);
Mangler::getNameWithPrefix(MangledNameStream, Name, DL);
return CompileLayer.findSymbol(MangledNameStream.str(), true);
}
void removeModule(ModuleHandle H) {
CompileLayer.removeModuleSet(H);
}
};
const std::string FUNC_NAME = "someFunction";
void runTest() {
llvm::LLVMContext context;
llvm::IRBuilder<> irBuilder{context};
KaleidoscopeJIT jit;
auto module = std::make_unique<llvm::Module>("help", context);
module->setDataL...
2017 Apr 17
2
Possible stack corruption during call to JITSymbol::getAddress()
...ng_ostream MangledNameStream(MangledName);
>> Mangler::getNameWithPrefix(MangledNameStream, Name, DL);
>> return CompileLayer.findSymbol(MangledNameStream.str(), true);
>> }
>>
>> void removeModule(ModuleHandle H) {
>> CompileLayer.removeModuleSet(H);
>> }
>> };
>>
>> const std::string FUNC_NAME = "someFunction";
>>
>> void runTest() {
>> llvm::LLVMContext context;
>> llvm::IRBuilder<> irBuilder{context};
>> KaleidoscopeJIT jit;
>>
>> auto m...
2017 Apr 20
2
Possible stack corruption during call to JITSymbol::getAddress()
...gt;>> Mangler::getNameWithPrefix(MangledNameStream, Name, DL);
>>>> return CompileLayer.findSymbol(MangledNameStream.str(), true);
>>>> }
>>>>
>>>> void removeModule(ModuleHandle H) {
>>>> CompileLayer.removeModuleSet(H);
>>>> }
>>>> };
>>>>
>>>> const std::string FUNC_NAME = "someFunction";
>>>>
>>>> void runTest() {
>>>> llvm::LLVMContext context;
>>>> llvm::IRBuilder<> irBuilder{context}...
2015 Mar 13
4
[LLVMdev] Thoughts about ExecutionEngine/MCJIT interface
Hi,
I think ExecutionEngine as a common interface for both Interpreter and
MCJIT is almost useless in the current form. There are separated methods in
ExecutionEngine for similar or the same features provided by Interpreter
and MCJIT, i.e. to get a pointer to function you should call
getPointerToFunction() for Interpreter or getFunctionAddress() for MCJIT.
Personally, I'm using MCJIT and
2017 May 01
1
Possible stack corruption during call to JITSymbol::getAddress()
...Name, DL);
>>>>>> return CompileLayer.findSymbol(MangledNameStream.str(),
>>>>>> true);
>>>>>> }
>>>>>>
>>>>>> void removeModule(ModuleHandle H) {
>>>>>> CompileLayer.removeModuleSet(H);
>>>>>> }
>>>>>> };
>>>>>>
>>>>>> const std::string FUNC_NAME = "someFunction";
>>>>>>
>>>>>> void runTest() {
>>>>>> llvm::LLVMContext context;
>>...
2017 May 07
2
[cfe-dev] JIT doens't resolve address - Resolve obj-Addresses?
...ream(MangledName);
> Mangler::getNameWithPrefix(MangledNameStream, Name, DL);
> printf("Tzearch for: %s\n\n", MangledNameStream.str());
> return CompileLayer.findSymbol(MangledNameStream.str(), false);
> }
>
> void removeModule(ModuleHandle H) {
> CompileLayer.removeModuleSet(H);
> }
>
> };
>
>
>
>
> And calling from main with:
> int main()
> {
> llvm::InitializeNativeTarget();
> llvm::InitializeNativeTargetAsmPrinter();
> llvm::InitializeNativeTargetAsmParser();
>
> llvm::LLVMContext context;...