1 // =================================
 2 // Copyright (c) 2021 Seppo Laakko
 3 // Distributed under the MIT license
 4 // =================================
 5 
 6 #ifndef CMAJOR_CMSXBE_EMITTING_CONTEXT_INCLUDED
 7 #define CMAJOR_CMSXBE_EMITTING_CONTEXT_INCLUDED
 8 #include <cmajor/ir/EmittingContext.hpp>
 9 #include <cmajor/cmsxi/Context.hpp>
10 
11 namespace cmsxbe {
12 
13 class EmittingContext public cmajor::ir::EmittingContext
14 {
15 public:
16     EmittingContext(int optimizationLevel_);
17     int OptimizationLevel() const override { return optimizationLevel; }
18     const std::string& TargetTriple() const override { return targetTriple; }
19     void* DataLayout() override { return nullptr; }
20     void* TargetMachine() override { return nullptr; }
21 private:
22     int optimizationLevel;
23     std::string targetTriple;
24 };
25 
26 } // namespace cmsxbe
27 
28 #endif // CMAJOR_CMSXBE_EMITTING_CONTEXT_INCLUDED