diff options
| author | Chris Lattner <sabre@nondot.org> | 2007-06-22 18:15:26 +0000 |
|---|---|---|
| committer | Chris Lattner <sabre@nondot.org> | 2007-06-22 18:15:26 +0000 |
| commit | 3e3a1e9cda72e795547e930968b8b5c006ff8cd5 (patch) | |
| tree | 148d9a797bbe68e9daabc89f7009d5d0f939084c /clang/CodeGen | |
| parent | f39b03d98b226d54332dcfebe891ec8e282e7c62 (diff) | |
| download | bcm5719-llvm-3e3a1e9cda72e795547e930968b8b5c006ff8cd5.tar.gz bcm5719-llvm-3e3a1e9cda72e795547e930968b8b5c006ff8cd5.zip | |
implement lowering of complex types
llvm-svn: 39668
Diffstat (limited to 'clang/CodeGen')
| -rw-r--r-- | clang/CodeGen/CodeGenTypes.cpp | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/clang/CodeGen/CodeGenTypes.cpp b/clang/CodeGen/CodeGenTypes.cpp index e5f051dba45..34c42fbcc6e 100644 --- a/clang/CodeGen/CodeGenTypes.cpp +++ b/clang/CodeGen/CodeGenTypes.cpp @@ -61,10 +61,23 @@ const llvm::Type *CodeGenTypes::ConvertType(QualType T, SourceLocation Loc) { case BuiltinType::Float: return llvm::Type::FloatTy; case BuiltinType::Double: return llvm::Type::DoubleTy; case BuiltinType::LongDouble: - case BuiltinType::FloatComplex: - case BuiltinType::DoubleComplex: + // FIXME: mapping long double onto double. + return llvm::Type::DoubleTy; + case BuiltinType::FloatComplex: { + std::vector<const llvm::Type*> Elts; + Elts.push_back(llvm::Type::FloatTy); + Elts.push_back(llvm::Type::FloatTy); + return llvm::StructType::get(Elts); + } + case BuiltinType::LongDoubleComplex: - ; + // FIXME: mapping long double complex onto double complex. + case BuiltinType::DoubleComplex: { + std::vector<const llvm::Type*> Elts; + Elts.push_back(llvm::Type::DoubleTy); + Elts.push_back(llvm::Type::DoubleTy); + return llvm::StructType::get(Elts); + } } break; } |

