OLD | NEW |
1 //===- subzero/src/IceTargetLoweringX8664.cpp - x86-64 lowering -----------===// | 1 //===- subzero/src/IceTargetLoweringX8664.cpp - x86-64 lowering -----------===// |
2 // | 2 // |
3 // The Subzero Code Generator | 3 // The Subzero Code Generator |
4 // | 4 // |
5 // This file is distributed under the University of Illinois Open Source | 5 // This file is distributed under the University of Illinois Open Source |
6 // License. See LICENSE.TXT for details. | 6 // License. See LICENSE.TXT for details. |
7 // | 7 // |
8 //===----------------------------------------------------------------------===// | 8 //===----------------------------------------------------------------------===// |
9 /// | 9 /// |
10 /// \file | 10 /// \file |
11 /// \brief Implements the TargetLoweringX8664 class, which consists almost | 11 /// \brief Implements the TargetLoweringX8664 class, which consists almost |
12 /// entirely of the lowering sequence for each high-level instruction. | 12 /// entirely of the lowering sequence for each high-level instruction. |
13 /// | 13 /// |
14 //===----------------------------------------------------------------------===// | 14 //===----------------------------------------------------------------------===// |
15 | 15 |
16 #include "IceTargetLoweringX8664.h" | 16 #include "IceTargetLoweringX8664.h" |
17 | 17 |
18 #include "IceTargetLoweringX8664Traits.h" | 18 #include "IceTargetLoweringX8664Traits.h" |
19 #include "IceTargetLoweringX86Base.h" | 19 #include "IceTargetLoweringX86Base.h" |
20 | 20 |
| 21 namespace X8664 { |
| 22 std::unique_ptr<::Ice::TargetLowering> createTargetLowering(::Ice::Cfg *Func) { |
| 23 return ::Ice::TargetX8664::create(Func); |
| 24 } |
| 25 |
| 26 std::unique_ptr<::Ice::TargetDataLowering> |
| 27 createTargetDataLowering(::Ice::GlobalContext *Ctx) { |
| 28 return ::Ice::TargetDataX8664::create(Ctx); |
| 29 } |
| 30 |
| 31 std::unique_ptr<::Ice::TargetHeaderLowering> |
| 32 createTargetHeaderLowering(::Ice::GlobalContext *Ctx) { |
| 33 return ::Ice::TargetHeaderX8664::create(Ctx); |
| 34 } |
| 35 |
| 36 void staticInit() { ::Ice::TargetX8664::staticInit(); } |
| 37 } // end of namespace X8664 |
| 38 |
21 namespace Ice { | 39 namespace Ice { |
22 | 40 |
23 //------------------------------------------------------------------------------ | 41 //------------------------------------------------------------------------------ |
24 // ______ ______ ______ __ ______ ______ | 42 // ______ ______ ______ __ ______ ______ |
25 // /\__ _\ /\ == \ /\ __ \ /\ \ /\__ _\ /\ ___\ | 43 // /\__ _\ /\ == \ /\ __ \ /\ \ /\__ _\ /\ ___\ |
26 // \/_/\ \/ \ \ __< \ \ __ \ \ \ \ \/_/\ \/ \ \___ \ | 44 // \/_/\ \/ \ \ __< \ \ __ \ \ \ \ \/_/\ \/ \ \___ \ |
27 // \ \_\ \ \_\ \_\ \ \_\ \_\ \ \_\ \ \_\ \/\_____\ | 45 // \ \_\ \ \_\ \_\ \ \_\ \_\ \ \_\ \ \_\ \/\_____\ |
28 // \/_/ \/_/ /_/ \/_/\/_/ \/_/ \/_/ \/_____/ | 46 // \/_/ \/_/ /_/ \/_/\/_/ \/_/ \/_/ \/_____/ |
29 // | 47 // |
30 //------------------------------------------------------------------------------ | 48 //------------------------------------------------------------------------------ |
(...skipping 995 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1026 // case the high-level table has extra entries. | 1044 // case the high-level table has extra entries. |
1027 #define X(tag, sizeLog2, align, elts, elty, str) \ | 1045 #define X(tag, sizeLog2, align, elts, elty, str) \ |
1028 static_assert(_table1_##tag == _table2_##tag, \ | 1046 static_assert(_table1_##tag == _table2_##tag, \ |
1029 "Inconsistency between ICETYPEX8664_TABLE and ICETYPE_TABLE"); | 1047 "Inconsistency between ICETYPEX8664_TABLE and ICETYPE_TABLE"); |
1030 ICETYPE_TABLE | 1048 ICETYPE_TABLE |
1031 #undef X | 1049 #undef X |
1032 } // end of namespace dummy3 | 1050 } // end of namespace dummy3 |
1033 } // end of anonymous namespace | 1051 } // end of anonymous namespace |
1034 | 1052 |
1035 } // end of namespace Ice | 1053 } // end of namespace Ice |
OLD | NEW |