[llvm-commits] [llvm-gcc-4.2] r136600 - /llvm-gcc-4.2/trunk/gcc/llvm-types.cpp
Duncan Sands
baldrick at free.fr
Sun Jul 31 11:47:21 PDT 2011
Author: baldrick
Date: Sun Jul 31 13:47:21 2011
New Revision: 136600
URL: http://llvm.org/viewvc/llvm-project?rev=136600&view=rev
Log:
If we already converted a pointer type, then reuse the previous
conversion. This solves some ObjC test failures in FrontendObjC
which occurred because of the same GCC pointer type being converted
differently on multiple calls to ConvertType, according to whether
it was being converted as part of converting a containing struct,
or just converted directly.
Modified:
llvm-gcc-4.2/trunk/gcc/llvm-types.cpp
Modified: llvm-gcc-4.2/trunk/gcc/llvm-types.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/llvm-types.cpp?rev=136600&r1=136599&r2=136600&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/llvm-types.cpp (original)
+++ llvm-gcc-4.2/trunk/gcc/llvm-types.cpp Sun Jul 31 13:47:21 2011
@@ -571,6 +571,7 @@
case POINTER_TYPE:
case REFERENCE_TYPE:
case BLOCK_POINTER_TYPE: {
+ if (Type *Ty = GET_TYPE_LLVM(type)) return Ty;
// Disable recursive struct conversion.
ConversionStatus SavedCS = RecursionStatus;
if (RecursionStatus == CS_Struct)
More information about the llvm-commits
mailing list