OLD | NEW |
1 //===- subzero/src/IceTypeConverter.cpp - Convert ICE/LLVM Types ----------===// | 1 //===- subzero/src/IceTypeConverter.cpp - Convert ICE/LLVM Types ----------===// |
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 // This file implements how to convert LLVM types to ICE types, and ICE types | 10 // This file implements how to convert LLVM types to ICE types, and ICE types |
11 // to LLVM types. | 11 // to LLVM types. |
12 // | 12 // |
13 //===----------------------------------------------------------------------===// | 13 //===----------------------------------------------------------------------===// |
14 | 14 |
15 #include "IceTypeConverter.h" | 15 #include "IceTypeConverter.h" |
16 #include "llvm/Support/raw_ostream.h" | 16 #include "llvm/Support/raw_ostream.h" |
17 | 17 |
18 namespace Ice { | 18 namespace Ice { |
19 | 19 |
20 TypeConverter::TypeConverter(llvm::LLVMContext &Context) : Context(Context) { | 20 TypeConverter::TypeConverter(llvm::LLVMContext &Context) { |
21 AddLLVMType(IceType_void, llvm::Type::getVoidTy(Context)); | 21 AddLLVMType(IceType_void, llvm::Type::getVoidTy(Context)); |
22 AddLLVMType(IceType_i1, llvm::IntegerType::get(Context, 1)); | 22 AddLLVMType(IceType_i1, llvm::IntegerType::get(Context, 1)); |
23 AddLLVMType(IceType_i8, llvm::IntegerType::get(Context, 8)); | 23 AddLLVMType(IceType_i8, llvm::IntegerType::get(Context, 8)); |
24 AddLLVMType(IceType_i16, llvm::IntegerType::get(Context, 16)); | 24 AddLLVMType(IceType_i16, llvm::IntegerType::get(Context, 16)); |
25 AddLLVMType(IceType_i32, llvm::IntegerType::get(Context, 32)); | 25 AddLLVMType(IceType_i32, llvm::IntegerType::get(Context, 32)); |
26 AddLLVMType(IceType_i64, llvm::IntegerType::get(Context, 64)); | 26 AddLLVMType(IceType_i64, llvm::IntegerType::get(Context, 64)); |
27 AddLLVMType(IceType_f32, llvm::Type::getFloatTy(Context)); | 27 AddLLVMType(IceType_f32, llvm::Type::getFloatTy(Context)); |
28 AddLLVMType(IceType_f64, llvm::Type::getDoubleTy(Context)); | 28 AddLLVMType(IceType_f64, llvm::Type::getDoubleTy(Context)); |
29 AddLLVMType(IceType_v4i1, llvm::VectorType::get(LLVMTypes[IceType_i1], 4)); | 29 AddLLVMType(IceType_v4i1, llvm::VectorType::get(LLVMTypes[IceType_i1], 4)); |
30 AddLLVMType(IceType_v8i1, llvm::VectorType::get(LLVMTypes[IceType_i1], 8)); | 30 AddLLVMType(IceType_v8i1, llvm::VectorType::get(LLVMTypes[IceType_i1], 8)); |
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
99 if (Size == 4) | 99 if (Size == 4) |
100 return convertToLLVMType(IceType_v4f32); | 100 return convertToLLVMType(IceType_v4f32); |
101 break; | 101 break; |
102 default: | 102 default: |
103 break; | 103 break; |
104 } | 104 } |
105 return NULL; | 105 return NULL; |
106 } | 106 } |
107 | 107 |
108 } // end of Ice namespace. | 108 } // end of Ice namespace. |
OLD | NEW |