1 // =================================
 2 // Copyright (c) 2021 Seppo Laakko
 3 // Distributed under the MIT license
 4 // =================================
 5 
 6 #include <cmajor/cmmid/LlvmBackEnd.hpp>
 7 #include <cmajor/cmllvm/Interface.hpp>
 8 
 9 namespace cmajor { namespace mid {
10 
11 void LLvmBackEnd::Init()
12 {
13 }
14 
15 void LLvmBackEnd::Done()
16 {
17 }
18 
19 cmajor::ir::EmittingContext* LLvmBackEnd::CreateEmittingContext(int optimizationLevel)
20 {
21     return CmllvmCreateEmittingContext(optimizationLevel);
22 }
23 
24 void LLvmBackEnd::DestroyEmittingContext(cmajor::ir::EmittingContext* emittingContext)
25 {
26     CmllvmDestroyEmittingContext(emittingContext);
27 }
28 
29 cmajor::ir::Emitter* LLvmBackEnd::CreateEmitter(cmajor::ir::EmittingContext* emittingContext)
30 {
31     return CmllvmCreateEmitter(emittingContext);
32 }
33 
34 void LLvmBackEnd::DestroyEmitter(cmajor::ir::Emitter* emitterHandle)
35 {
36     CmllvmDestroyEmitter(emitterHandle);
37 }
38 
39 } } // namespace cmajor::mid