aboutsummaryrefslogtreecommitdiff
path: root/CodeGen
diff options
context:
space:
mode:
Diffstat (limited to 'CodeGen')
-rw-r--r--CodeGen/CodeGenTypes.cpp2
-rw-r--r--CodeGen/CodeGenTypes.h2
2 files changed, 4 insertions, 0 deletions
diff --git a/CodeGen/CodeGenTypes.cpp b/CodeGen/CodeGenTypes.cpp
index 4aaf13f549..04394e38fe 100644
--- a/CodeGen/CodeGenTypes.cpp
+++ b/CodeGen/CodeGenTypes.cpp
@@ -176,6 +176,8 @@ const llvm::Type *CodeGenTypes::ConvertType(QualType T) {
return OpaqueI->second;
// Create new OpaqueType now for later use.
+ // FIXME: This creates a lot of opaque types, most of which are not needed.
+ // Reevaluate this when performance analyis finds tons of opaque types.
llvm::OpaqueType *OpaqueTy = llvm::OpaqueType::get();
RecordTypesToResolve[RD] = OpaqueTy;
diff --git a/CodeGen/CodeGenTypes.h b/CodeGen/CodeGenTypes.h
index f149fb801d..7ab3afe2e1 100644
--- a/CodeGen/CodeGenTypes.h
+++ b/CodeGen/CodeGenTypes.h
@@ -94,6 +94,8 @@ class CodeGenTypes {
/// RecordLayouts - This maps llvm struct type with corresponding
/// record layout info.
+ /// FIXME : If RecordLayoutInfo is less than 16 bytes then use
+ /// inline it in the map.
llvm::DenseMap<const llvm::Type*, RecordLayoutInfo *> RecordLayouts;
/// FieldInfo - This maps struct field with corresponding llvm struct type