6c01820900 
								
							 
						 
						
							
							
								
								Print template argument names for template class.  
							
							... 
							
							
							
							llvm-svn: 108916 
							
						 
						
							2010-07-20 20:24:18 +00:00  
				
					
						
							
							
								 
						
							
								7d7bc561bf 
								
							 
						 
						
							
							
								
								Correct line info for declarations/definitions.  Radar 8063111.  
							
							... 
							
							
							
							llvm-svn: 108785 
							
						 
						
							2010-07-19 23:56:31 +00:00  
				
					
						
							
							
								 
						
							
								8fd6499a97 
								
							 
						 
						
							
							
								
								Set "optimization is ON" and supply other optional parameters. This helps codegenerator preserve info in case the symbol is deleted.  
							
							... 
							
							
							
							llvm-svn: 108471 
							
						 
						
							2010-07-15 23:09:46 +00:00  
				
					
						
							
							
								 
						
							
								b3026df9fa 
								
							 
						 
						
							
							
								
								Mark implementation generated methods as artificial.  
							
							... 
							
							
							
							Tested by namespace.exp and virtfunc.exp from gdb testsuite.
llvm-svn: 108468 
							
						 
						
							2010-07-15 22:57:00 +00:00  
				
					
						
							
							
								 
						
							
								99c372134d 
								
							 
						 
						
							
							
								
								Revert 108220 and subsequent patch.  
							
							... 
							
							
							
							This is not required (I am not 100% sure why) but method.exp from gdb testsuite flagged regression due to this patch.
llvm-svn: 108434 
							
						 
						
							2010-07-15 18:16:09 +00:00  
				
					
						
							
							
								 
						
							
								01c8c100c2 
								
							 
						 
						
							
							
								
								Add volatile qualifiers for "this".  
							
							... 
							
							
							
							llvm-svn: 108245 
							
						 
						
							2010-07-13 16:23:13 +00:00  
				
					
						
							
							
								 
						
							
								0a34e31d81 
								
							 
						 
						
							
							
								
								const qualify debug info for "this" for const methods.  
							
							... 
							
							
							
							llvm-svn: 108220 
							
						 
						
							2010-07-13 00:24:30 +00:00  
				
					
						
							
							
								 
						
							
								0aabb1200f 
								
							 
						 
						
							
							
								
								While collecting members for a class, always create delcaration entry for methods. Debug info for method definition will be generated while generating code for method body.  
							
							... 
							
							
							
							Tested by classes.exp in gdb testsuite.
llvm-svn: 108205 
							
						 
						
							2010-07-12 22:54:41 +00:00  
				
					
						
							
							
								 
						
							
								8f3f76f991 
								
							 
						 
						
							
							
								
								Handle forward declarations properly in debug info.  
							
							... 
							
							
							
							Patch by Alexander Kabaev.
PR 7595.
llvm-svn: 107900 
							
						 
						
							2010-07-08 19:56:29 +00:00  
				
					
						
							
							
								 
						
							
								ea836bc41c 
								
							 
						 
						
							
							
								
								Switch over to the new caching version of getMangledName.  
							
							... 
							
							
							
							llvm-svn: 106549 
							
						 
						
							2010-06-22 16:16:50 +00:00  
				
					
						
							
							
								 
						
							
								8509824cdb 
								
							 
						 
						
							
							
								
								Move CodeGenOptions.h *back* into Frontend. This should have been done when the  
							
							... 
							
							
							
							dependency edge was reversed such that CodeGen depends on Frontend.
llvm-svn: 106065 
							
						 
						
							2010-06-15 23:19:56 +00:00  
				
					
						
							
							
								 
						
							
								6ccba0fb6e 
								
							 
						 
						
							
							
								
								Preserve type info for local variables in optimized builds.  
							
							... 
							
							
							
							llvm-gcc enabled this couple of weeks ago.
llvm-svn: 105516 
							
						 
						
							2010-06-05 01:14:40 +00:00  
				
					
						
							
							
								 
						
							
								8b07ec253d 
								
							 
						 
						
							
							
								
								Substantially alter the design of the Objective C type AST by introducing  
							
							... 
							
							
							
							ObjCObjectType, which is basically just a pair of
  one of {primitive-id, primitive-Class, user-defined @class}
with
  a list of protocols.
An ObjCObjectPointerType is therefore just a pointer which always points to
one of these types (possibly sugared).  ObjCInterfaceType is now just a kind
of ObjCObjectType which happens to not carry any protocols.
Alter a rather large number of use sites to use ObjCObjectType instead of
ObjCInterfaceType.  Store an ObjCInterfaceType as a pointer on the decl rather
than hashing them in a FoldingSet.  Remove some number of methods that are no
longer used, at least after this patch.
By simplifying ObjCObjectPointerType, we are now able to easily remove and apply
pointers to Objective-C types, which is crucial for a certain kind of ObjC++
metaprogramming common in WebKit.
llvm-svn: 103870 
							
						 
						
							2010-05-15 11:32:37 +00:00  
				
					
						
							
							
								 
						
							
								ec2a9abd4a 
								
							 
						 
						
							
							
								
								Fix thinko in yesterday's fix.  
							
							... 
							
							
							
							Providing linkage name for function static variable confuses gdb, so don't do that.
llvm-svn: 103779 
							
						 
						
							2010-05-14 16:55:25 +00:00  
				
					
						
							
							
								 
						
							
								98f217118f 
								
							 
						 
						
							
							
								
								Fix context in class static variable's debugging information entry.  
							
							... 
							
							
							
							This fixes bunch of failures in gdb testsuite.
llvm-svn: 103745 
							
						 
						
							2010-05-13 23:52:37 +00:00  
				
					
						
							
							
								 
						
							
								c5ffabc94f 
								
							 
						 
						
							
							
								
								If given location is invalid then use current location.  
							
							... 
							
							
							
							This fixes recent regressions reported by gdb testsuite. 
Tighter verification of debug info generated by FE found these regressions.
Refactor code to extract line number and column number from SourceLocation.
llvm-svn: 103678 
							
						 
						
							2010-05-12 23:46:38 +00:00  
				
					
						
							
							
								 
						
							
								6150c884df 
								
							 
						 
						
							
							
								
								Merged Elaborated and QualifiedName types.  
							
							... 
							
							
							
							llvm-svn: 103517 
							
						 
						
							2010-05-11 21:36:43 +00:00  
				
					
						
							
							
								 
						
							
								82bbfb58e3 
								
							 
						 
						
							
							
								
								Initialize Column.  
							
							... 
							
							
							
							llvm-svn: 103448 
							
						 
						
							2010-05-10 23:48:38 +00:00  
				
					
						
							
							
								 
						
							
								b319adec49 
								
							 
						 
						
							
							
								
								If variable location is invalid then use current location.  
							
							... 
							
							
							
							This fixes radar 7959934.
llvm-svn: 103408 
							
						 
						
							2010-05-10 17:24:58 +00:00  
				
					
						
							
							
								 
						
							
								67eba80672 
								
							 
						 
						
							
							
								
								If there is not any debug info for type then do not emit debug info for this variable.  
							
							... 
							
							
							
							A recent change to tightly verify debug info prepared by FE caught this.
This fixes unittest build.
llvm-svn: 103320 
							
						 
						
							2010-05-07 23:05:55 +00:00  
				
					
						
							
							
								 
						
							
								ba4ad7f2fd 
								
							 
						 
						
							
							
								
								Avoid use of DIDescriptor::getNode(). Use overloaded operators instead.  
							
							... 
							
							
							
							llvm-svn: 103273 
							
						 
						
							2010-05-07 18:12:35 +00:00  
				
					
						
							
							
								 
						
							
								c8be95274d 
								
							 
						 
						
							
							
								
								When instantiating a function that was declared via a typedef, e.g.,  
							
							... 
							
							
							
							typedef int functype(int, int);
    functype func;
also instantiate the synthesized function parameters for the resulting
function declaration. 
With this change, Boost.Wave builds and passes all of its regression
tests.
llvm-svn: 103025 
							
						 
						
							2010-05-04 18:18:31 +00:00  
				
					
						
							
							
								 
						
							
								dfcd0661a1 
								
							 
						 
						
							
							
								
								Use clang::VarDecl name instead of llvm::GlobalVariable name.  
							
							... 
							
							
							
							llvm::GLobalVariable name may not match user visibile name for function static variables.
llvm-svn: 102644 
							
						 
						
							2010-04-29 17:48:37 +00:00  
				
					
						
							
							
								 
						
							
								2408e32096 
								
							 
						 
						
							
							
								
								Make the InjectedClassNameType the canonical type of the current instantiation  
							
							... 
							
							
							
							of a class template or class template partial specialization.  That is to
say, in
  template <class T> class A { ... };
or
  template <class T> class B<const T*> { ... };
make 'A<T>' and 'B<const T*>' sugar for the corresponding InjectedClassNameType
when written inside the appropriate context.  This allows us to track the
current instantiation appropriately even inside AST routines.  It also allows
us to compute a DeclContext for a type much more efficiently, at some extra
cost every time we write a template specialization (which can be optimized,
but I've left it simple in this patch).
llvm-svn: 102407 
							
						 
						
							2010-04-27 00:57:59 +00:00  
				
					
						
							
							
								 
						
							
								42fb6f8b9a 
								
							 
						 
						
							
							
								
								Enable debug info for local variables at -O1+.  
							
							... 
							
							
							
							llvm-svn: 102398 
							
						 
						
							2010-04-26 23:28:46 +00:00  
				
					
						
							
							
								 
						
							
								20f2d4382f 
								
							 
						 
						
							
							
								
								Fix pasto, add a comment.  
							
							... 
							
							
							
							llvm-svn: 102263 
							
						 
						
							2010-04-24 20:26:20 +00:00  
				
					
						
							
							
								 
						
							
								bbb5deace6 
								
							 
						 
						
							
							
								
								Factor code. No functionality change.  
							
							... 
							
							
							
							llvm-svn: 102262 
							
						 
						
							2010-04-24 20:19:58 +00:00  
				
					
						
							
							
								 
						
							
								8471593892 
								
							 
						 
						
							
							
								
								Revert accidental check-in.  
							
							... 
							
							
							
							llvm-svn: 102226 
							
						 
						
							2010-04-24 00:49:16 +00:00  
				
					
						
							
							
								 
						
							
								f8b55d478c 
								
							 
						 
						
							
							
								
								Revert r102215. This causes clang crash while compiling a test case from gdb testsuite.  
							
							... 
							
							
							
							llvm-svn: 102224 
							
						 
						
							2010-04-24 00:40:35 +00:00  
				
					
						
							
							
								 
						
							
								b9ab309650 
								
							 
						 
						
							
							
								
								Encode field accessibility.  
							
							... 
							
							
							
							llvm-svn: 102033 
							
						 
						
							2010-04-21 23:12:37 +00:00  
				
					
						
							
							
								 
						
							
								11e5140db9 
								
							 
						 
						
							
							
								
								Vtable -> VTable renames across the board.  
							
							... 
							
							
							
							llvm-svn: 101666 
							
						 
						
							2010-04-17 20:15:18 +00:00  
				
					
						
							
							
								 
						
							
								a2c048eaf8 
								
							 
						 
						
							
							
								
								Emit debug info for objc getters and setters.  
							
							... 
							
							
							
							llvm-svn: 100462 
							
						 
						
							2010-04-05 21:09:15 +00:00  
				
					
						
							
							
								 
						
							
								18a584b56c 
								
							 
						 
						
							
							
								
								NewDebugLoc got renamed to DebugLoc.  
							
							... 
							
							
							
							llvm-svn: 100219 
							
						 
						
							2010-04-02 20:21:43 +00:00  
				
					
						
							
							
								 
						
							
								e675d0f924 
								
							 
						 
						
							
							
								
								adjust to IRBuilder change and use faster DebugLoc apis.  
							
							... 
							
							
							
							llvm-svn: 100093 
							
						 
						
							2010-04-01 06:31:43 +00:00  
				
					
						
							
							
								 
						
							
								be49c03ff4 
								
							 
						 
						
							
							
								
								use the new optimized debug info metadata accessors.  In  
							
							... 
							
							
							
							addition to the inherent win, this eliminates the pointless
cost of going through the name -> mdkind stringmap that we
were paying.
llvm-svn: 99983 
							
						 
						
							2010-03-31 03:36:01 +00:00  
				
					
						
							
							
								 
						
							
								9e649c3cfe 
								
							 
						 
						
							
							
								
								Replace some constant-sized SmallVectors.  
							
							... 
							
							
							
							llvm-svn: 99884 
							
						 
						
							2010-03-30 11:36:44 +00:00  
				
					
						
							
							
								 
						
							
								dbb8cd1d34 
								
							 
						 
						
							
							
								
								Cache results computed by CGDebugInfo::getOrCreateFile() in a DenseMap.  
							
							... 
							
							
							
							This reduces '-c -g' time on one file in 403.gcc by 12%.
llvm-svn: 99857 
							
						 
						
							2010-03-30 00:27:51 +00:00  
				
					
						
							
							
								 
						
							
								23c29f0cbe 
								
							 
						 
						
							
							
								
								Change 'TypeCache' from being an std::map to a llvm::DenseMap.  This reduces codegen time  
							
							... 
							
							
							
							on one .i file from 403.gcc by 0.5%.
llvm-svn: 99823 
							
						 
						
							2010-03-29 18:29:57 +00:00  
				
					
						
							
							
								 
						
							
								a864caff8c 
								
							 
						 
						
							
							
								
								Rename CGVtableInfo to CodeGenVTables in preparation of adding another VTableInfo class.  
							
							... 
							
							
							
							llvm-svn: 99250 
							
						 
						
							2010-03-23 04:11:45 +00:00  
				
					
						
							
							
								 
						
							
								65f7a3f801 
								
							 
						 
						
							
							
								
								Comment the reasons for the strange little dance we do with the main file name for debug information  
							
							... 
							
							
							
							llvm-svn: 99215 
							
						 
						
							2010-03-22 21:28:29 +00:00  
				
					
						
							
							
								 
						
							
								7ec5043c2c 
								
							 
						 
						
							
							
								
								Change CodeGenModule to rely on the Module's symbol table instead of  
							
							... 
							
							
							
							shadowing it in the GlobalDeclMap.  Eliminates the string-uniquing
requirement for mangled names, which should help C++ codegen times a little.
Forces us to do string lookups instead of pointer lookups, which might hurt
codegen times a little across the board.  We'll see how it plays out.
Removing the string-uniquing requirement implicitly fixes any bugs like
PR6635 which arose from the fact that we had multiple uniquing tables for
different kinds of identifiers.
llvm-svn: 99012 
							
						 
						
							2010-03-19 23:29:14 +00:00  
				
					
						
							
							
								 
						
							
								fc7a4813ab 
								
							 
						 
						
							
							
								
								Try to improve computation of the main file name for debug  
							
							... 
							
							
							
							information, to address recent gdb failures.
llvm-svn: 98959 
							
						 
						
							2010-03-19 14:49:09 +00:00  
				
					
						
							
							
								 
						
							
								c6b5a3df1e 
								
							 
						 
						
							
							
								
								For debug information, get the main file name from the source manager  
							
							... 
							
							
							
							rather than from the -main-file-name flag, since the source manager
has proper path information. Fixes <rdar://problem/7769538>.
llvm-svn: 98898 
							
						 
						
							2010-03-18 23:46:43 +00:00  
				
					
						
							
							
								 
						
							
								69b3c43391 
								
							 
						 
						
							
							
								
								Use raw_ostream instead of sprintf.  
							
							... 
							
							
							
							llvm-svn: 98438 
							
						 
						
							2010-03-13 12:06:51 +00:00  
				
					
						
							
							
								 
						
							
								a42d3ea60e 
								
							 
						 
						
							
							
								
								If main file name is empty then use "<unknown>".  
							
							... 
							
							
							
							llvm-svn: 98385 
							
						 
						
							2010-03-12 21:04:27 +00:00  
				
					
						
							
							
								 
						
							
								01bb5ce932 
								
							 
						 
						
							
							
								
								Keep track of Record context to ensure that record elements are properly nested in debug info.  
							
							... 
							
							
							
							llvm-svn: 98283 
							
						 
						
							2010-03-11 20:01:48 +00:00  
				
					
						
							
							
								 
						
							
								4cbe83cccb 
								
							 
						 
						
							
							
								
								Rename getVirtualBaseOffsetIndex to getVirtualBaseOffsetOffset to reflect what it actually does.  
							
							... 
							
							
							
							llvm-svn: 98248 
							
						 
						
							2010-03-11 07:15:17 +00:00  
				
					
						
							
							
								 
						
							
								e78aac41de 
								
							 
						 
						
							
							
								
								Create a new InjectedClassNameType to represent bare-word references to the  
							
							... 
							
							
							
							injected class name of a class template or class template partial specialization.
This is a non-canonical type;  the canonical type is still a template 
specialization type.  This becomes the TypeForDecl of the pattern declaration,
which cleans up some amount of code (and complicates some other parts, but
whatever).
Fixes PR6326 and probably a few others, primarily by re-establishing a few
invariants about TypeLoc sizes.     
llvm-svn: 98134 
							
						 
						
							2010-03-10 03:28:59 +00:00  
				
					
						
							
							
								 
						
							
								05c37d2800 
								
							 
						 
						
							
							
								
								Use SmallString instead of alloca.  
							
							... 
							
							
							
							llvm-svn: 98112 
							
						 
						
							2010-03-10 00:19:43 +00:00  
				
					
						
							
							
								 
						
							
								93f274c161 
								
							 
						 
						
							
							
								
								Fix file reference for derived and composite types. Now, dwarf writer uses strict verifier that ignores debug info for such types if their file info is unknown.  
							
							... 
							
							
							
							llvm-svn: 98096 
							
						 
						
							2010-03-09 22:49:11 +00:00  
				
					
						
							
							
								 
						
							
								4f26205ba8 
								
							 
						 
						
							
							
								
								More then one anonymous aggregates on one line creates chaos when MDNode uniquness is combined with RAUW operation. Right solution is to avoid using RAUW.  
							
							... 
							
							
							
							This fixes PR 6554.
llvm-svn: 98083 
							
						 
						
							2010-03-09 21:32:27 +00:00  
				
					
						
							
							
								 
						
							
								f2aa707895 
								
							 
						 
						
							
							
								
								Use getLast() instead of getBasename().  
							
							... 
							
							
							
							llvm-svn: 98072 
							
						 
						
							2010-03-09 19:14:07 +00:00  
				
					
						
							
							
								 
						
							
								408dcf60aa 
								
							 
						 
						
							
							
								
								Start using DIFile. Corresponding llvm patch is r98020.  
							
							... 
							
							
							
							llvm-svn: 98021 
							
						 
						
							2010-03-09 00:44:50 +00:00  
				
					
						
							
							
								 
						
							
								d3cbaa1ddf 
								
							 
						 
						
							
							
								
								Avoid using DIDescriptor.isNull().  
							
							... 
							
							
							
							llvm-svn: 97976 
							
						 
						
							2010-03-08 20:53:17 +00:00  
				
					
						
							
							
								 
						
							
								9cf2705a5d 
								
							 
						 
						
							
							
								
								Revert r97949.  
							
							... 
							
							
							
							llvm-svn: 97964 
							
						 
						
							2010-03-08 19:20:58 +00:00  
				
					
						
							
							
								 
						
							
								4ce8ebb087 
								
							 
						 
						
							
							
								
								Avoid DIDescriptor.isNull() checks.  
							
							... 
							
							
							
							llvm-svn: 97949 
							
						 
						
							2010-03-08 18:26:57 +00:00  
				
					
						
							
							
								 
						
							
								9ac3092d34 
								
							 
						 
						
							
							
								
								Targets (like pic16) may have mangled the name of global variables,  
							
							... 
							
							
							
							so get the name from Var rather than the original decl.
llvm-svn: 97114 
							
						 
						
							2010-02-25 05:20:44 +00:00  
				
					
						
							
							
								 
						
							
								b407338fe2 
								
							 
						 
						
							
							
								
								Emit debug info for VectorType.  
							
							... 
							
							
							
							llvm-svn: 96999 
							
						 
						
							2010-02-23 22:59:39 +00:00  
				
					
						
							
							
								 
						
							
								7585580ccc 
								
							 
						 
						
							
							
								
								Distinguish two lexical blocks at the same level.  
							
							... 
							
							
							
							llvm-svn: 96397 
							
						 
						
							2010-02-16 21:41:20 +00:00  
				
					
						
							
							
								 
						
							
								f4df65cf60 
								
							 
						 
						
							
							
								
								Do not ignore anonymous records.  
							
							... 
							
							
							
							llvm-svn: 95953 
							
						 
						
							2010-02-12 01:31:06 +00:00  
				
					
						
							
							
								 
						
							
								e003dd1721 
								
							 
						 
						
							
							
								
								Cache new compile unit.  
							
							... 
							
							
							
							llvm-svn: 95952 
							
						 
						
							2010-02-12 01:30:31 +00:00  
				
					
						
							
							
								 
						
							
								0a5a2216e2 
								
							 
						 
						
							
							
								
								Eliminate the ASTContext parameter from RecordDecl::getDefinition()  
							
							... 
							
							
							
							and CXXRecordDecl::getDefinition(); it's totally unnecessary. No
functionality change.
llvm-svn: 95836 
							
						 
						
							2010-02-11 01:04:33 +00:00  
				
					
						
							
							
								 
						
							
								535fdaf020 
								
							 
						 
						
							
							
								
								Refactor code that generates debug info for variables that has BlocksAttr.  
							
							... 
							
							
							
							llvm-svn: 95786 
							
						 
						
							2010-02-10 18:49:08 +00:00  
				
					
						
							
							
								 
						
							
								1b5330afe9 
								
							 
						 
						
							
							
								
								Use current location as the location of compiler generated arguments, e.g. self, _cmd etc.  
							
							... 
							
							
							
							llvm-svn: 95743 
							
						 
						
							2010-02-10 01:09:50 +00:00  
				
					
						
							
							
								 
						
							
								0ae70d16b8 
								
							 
						 
						
							
							
								
								Fix virtual bases' debug info.  
							
							... 
							
							
							
							llvm-svn: 95678 
							
						 
						
							2010-02-09 19:09:28 +00:00  
				
					
						
							
							
								 
						
							
								cce7e85165 
								
							 
						 
						
							
							
								
								Mark  implicit "this" argument as an artificial argument.  
							
							... 
							
							
							
							llvm-svn: 95673 
							
						 
						
							2010-02-09 17:57:50 +00:00  
				
					
						
							
							
								 
						
							
								ab793231c1 
								
							 
						 
						
							
							
								
								Fix FIXME and surrounding comment.  
							
							... 
							
							
							
							llvm-svn: 95023 
							
						 
						
							2010-02-01 22:51:29 +00:00  
				
					
						
							
							
								 
						
							
								e8fb4b7fd6 
								
							 
						 
						
							
							
								
								Use appropriate context descriptor in RecordDecl's debug info.  
							
							... 
							
							
							
							llvm-svn: 95016 
							
						 
						
							2010-02-01 22:40:08 +00:00  
				
					
						
							
							
								 
						
							
								3efd1470c9 
								
							 
						 
						
							
							
								
								Do not use clang type name to name a local variable, e.g. Decl.  
							
							... 
							
							
							
							llvm-svn: 95010 
							
						 
						
							2010-02-01 21:52:22 +00:00  
				
					
						
							
							
								 
						
							
								1c0954cca7 
								
							 
						 
						
							
							
								
								Do not use clang type name to name a local variable, e.g. Decl.  
							
							... 
							
							
							
							llvm-svn: 95009 
							
						 
						
							2010-02-01 21:39:52 +00:00  
				
					
						
							
							
								 
						
							
								7b7f46f5a6 
								
							 
						 
						
							
							
								
								Use DeclContext as getContextDescriptor() argument.  
							
							... 
							
							
							
							llvm-svn: 95008 
							
						 
						
							2010-02-01 21:34:11 +00:00  
				
					
						
							
							
								 
						
							
								973f2eb0cd 
								
							 
						 
						
							
							
								
								Emit debug info for namespaces.  
							
							... 
							
							
							
							llvm-svn: 94991 
							
						 
						
							2010-02-01 19:16:32 +00:00  
				
					
						
							
							
								 
						
							
								bb4820dc8e 
								
							 
						 
						
							
							
								
								Use appropriate context for typedefs.  
							
							... 
							
							
							
							llvm-svn: 94849 
							
						 
						
							2010-01-29 22:29:31 +00:00  
				
					
						
							
							
								 
						
							
								92e2541599 
								
							 
						 
						
							
							
								
								Maintain a map of regions (lexical scopes) and use it to find context for a global variable.  
							
							... 
							
							
							
							llvm-svn: 94817 
							
						 
						
							2010-01-29 18:11:03 +00:00  
				
					
						
							
							
								 
						
							
								7bfc596fcf 
								
							 
						 
						
							
							
								
								s/CGDebugInfo::getContext/CGDebugInfo::getContextDescriptor/g to avoid confusion.  
							
							... 
							
							
							
							llvm-svn: 94760 
							
						 
						
							2010-01-28 23:15:27 +00:00  
				
					
						
							
							
								 
						
							
								128aa9d176 
								
							 
						 
						
							
							
								
								Fix indentation.  
							
							... 
							
							
							
							llvm-svn: 94758 
							
						 
						
							2010-01-28 21:54:15 +00:00  
				
					
						
							
							
								 
						
							
								4c3e7e99ca 
								
							 
						 
						
							
							
								
								Static methods do not need "this" pointer argument.  
							
							... 
							
							
							
							llvm-svn: 94756 
							
						 
						
							2010-01-28 21:43:50 +00:00  
				
					
						
							
							
								 
						
							
								946edc1aa6 
								
							 
						 
						
							
							
								
								Emit base classes info first, as expected by the debugger.  
							
							... 
							
							
							
							llvm-svn: 94755 
							
						 
						
							2010-01-28 21:41:35 +00:00  
				
					
						
							
							
								 
						
							
								0d61eebd81 
								
							 
						 
						
							
							
								
								s/FunctionNames/DebugInfoNames/g  
							
							... 
							
							
							
							llvm-svn: 94753 
							
						 
						
							2010-01-28 18:21:00 +00:00  
				
					
						
							
							
								 
						
							
								84033fb240 
								
							 
						 
						
							
							
								
								Emit vtable info.  
							
							... 
							
							
							
							llvm-svn: 94751 
							
						 
						
							2010-01-28 18:11:52 +00:00  
				
					
						
							
							
								 
						
							
								abb4413728 
								
							 
						 
						
							
							
								
								While emitting debugging infor for a C++ class, identify the holder of class's vtable, if any.  
							
							... 
							
							
							
							llvm-svn: 94712 
							
						 
						
							2010-01-28 00:54:21 +00:00  
				
					
						
							
							
								 
						
							
								3d4e6d9dd0 
								
							 
						 
						
							
							
								
								Include "this" pointer argument while emitting debug info for a C++ method.  
							
							... 
							
							
							
							llvm-svn: 94710 
							
						 
						
							2010-01-28 00:28:01 +00:00  
				
					
						
							
							
								 
						
							
								160146eba2 
								
							 
						 
						
							
							
								
								Change the return type of ASTContext::getDeclAlignInBytes() to CharUnits and,  
							
							... 
							
							
							
							now that the "InBytes" part of the name is implied by the return type, rename
it to getDeclAlign().
llvm-svn: 94681 
							
						 
						
							2010-01-27 17:10:57 +00:00  
				
					
						
							
							
								 
						
							
								0b5f1ddf0a 
								
							 
						 
						
							
							
								
								Fix another debug info crash with virtual bases.  
							
							... 
							
							
							
							llvm-svn: 94520 
							
						 
						
							2010-01-26 05:26:39 +00:00  
				
					
						
							
							
								 
						
							
								17ed0496c5 
								
							 
						 
						
							
							
								
								Fix the test I broke, and also fix a crash when declaring a virtual destructor. Add debug info support for pure virtual member functions.  
							
							... 
							
							
							
							llvm-svn: 94519 
							
						 
						
							2010-01-26 05:19:50 +00:00  
				
					
						
							
							
								 
						
							
								b85f0ab976 
								
							 
						 
						
							
							
								
								Factor creating the DISubprogram for a member function out into a separate function.  
							
							... 
							
							
							
							llvm-svn: 94513 
							
						 
						
							2010-01-26 04:49:33 +00:00  
				
					
						
							
							
								 
						
							
								c1821155bf 
								
							 
						 
						
							
							
								
								Simplify CGDebugInfo::CollectCXXMemberFunctions a little. More to come.  
							
							... 
							
							
							
							llvm-svn: 94511 
							
						 
						
							2010-01-26 04:40:11 +00:00  
				
					
						
							
							
								 
						
							
								c54353d935 
								
							 
						 
						
							
							
								
								First cut at emitting inheritance info.  
							
							... 
							
							
							
							llvm-svn: 94473 
							
						 
						
							2010-01-25 23:32:18 +00:00  
				
					
						
							
							
								 
						
							
								7af03fb4f0 
								
							 
						 
						
							
							
								
								Emit debug info for virtual functions.  
							
							... 
							
							
							
							llvm-svn: 94467 
							
						 
						
							2010-01-25 23:17:15 +00:00  
				
					
						
							
							
								 
						
							
								83b0dd16c3 
								
							 
						 
						
							
							
								
								fix rdar://7556129 a crash in blocks debug info codegen.  
							
							... 
							
							
							
							llvm-svn: 94402 
							
						 
						
							2010-01-25 03:34:56 +00:00  
				
					
						
							
							
								 
						
							
								bf78478d35 
								
							 
						 
						
							
							
								
								simplify code.  
							
							... 
							
							
							
							llvm-svn: 94401 
							
						 
						
							2010-01-25 03:29:35 +00:00  
				
					
						
							
							
								 
						
							
								8f8f405c71 
								
							 
						 
						
							
							
								
								No need to terminate this buffer.  
							
							... 
							
							
							
							llvm-svn: 94313 
							
						 
						
							2010-01-23 18:16:07 +00:00  
				
					
						
							
							
								 
						
							
								3f4a77e082 
								
							 
						 
						
							
							
								
								A Decl->getName() is not unique. However, the debug info descriptors  
							
							... 
							
							
							
							are uniqued. The debug info descriptor describing record's context is
necessary to keep two Decl's descriptor unique if their name match.
There is more work to do to create descriptors for DeclContext. 
As a temp. step use type's name in FwdDecl.
llvm-svn: 94050 
							
						 
						
							2010-01-20 23:56:40 +00:00  
				
					
						
							
							
								 
						
							
								5e1a83c196 
								
							 
						 
						
							
							
								
								Emit human readable names for operators.  
							
							... 
							
							
							
							llvm-svn: 93837 
							
						 
						
							2010-01-19 02:02:11 +00:00  
				
					
						
							
							
								 
						
							
								7a12ad0dc1 
								
							 
						 
						
							
							
								
								First cut at emitting debugging information for C++ member functions.  
							
							... 
							
							
							
							There is lot more work to do in this area.
llvm-svn: 93836 
							
						 
						
							2010-01-19 01:54:44 +00:00  
				
					
						
							
							
								 
						
							
								757daca99c 
								
							 
						 
						
							
							
								
								Use llvm::Function name as the linkage name, but strip off leading '01' from display name.  
							
							... 
							
							
							
							llvm-svn: 93822 
							
						 
						
							2010-01-19 00:25:12 +00:00  
				
					
						
							
							
								 
						
							
								889ce76f41 
								
							 
						 
						
							
							
								
								Refactor.  
							
							... 
							
							
							
							llvm-svn: 93814 
							
						 
						
							2010-01-19 00:00:59 +00:00  
				
					
						
							
							
								 
						
							
								ddf6a57f3e 
								
							 
						 
						
							
							
								
								llvm::Function name is the linkage name. If it has a '01' as a prefix then probably there is a reason.  
							
							... 
							
							
							
							llvm-svn: 93808 
							
						 
						
							2010-01-18 23:27:28 +00:00  
				
					
						
							
							
								 
						
							
								8fdc2cb46a 
								
							 
						 
						
							
							
								
								Fix crash generating debug info for constructor for anonymous struct.  
							
							... 
							
							
							
							llvm-svn: 93601 
							
						 
						
							2010-01-16 00:43:13 +00:00  
				
					
						
							
							
								 
						
							
								2d63010a9c 
								
							 
						 
						
							
							
								
								Emit linkage name even if it matches regular name. The code generator uses linkage name to find subprogram entry for the current function.  
							
							... 
							
							
							
							llvm-svn: 93461 
							
						 
						
							2010-01-14 21:46:57 +00:00  
				
					
						
							
							
								 
						
							
								ea84f59f5c 
								
							 
						 
						
							
							
								
								Add comment.  
							
							... 
							
							
							
							llvm-svn: 93434 
							
						 
						
							2010-01-14 18:06:13 +00:00  
				
					
						
							
							
								 
						
							
								4274a326be 
								
							 
						 
						
							
							
								
								Because CurLoc is the current source location as far as CGDebugInfo is concerned. It is expected that this is set (usually left bracket location of function body compound statement) before EmitfunctionStart() is used.  
							
							... 
							
							
							
							llvm-svn: 93389 
							
						 
						
							2010-01-14 00:48:09 +00:00  
				
					
						
							
							
								 
						
							
								934661ed73 
								
							 
						 
						
							
							
								
								Emit human readable names for c/c++ functions. Avoid emitting linkage name if it matches regular name.  
							
							... 
							
							
							
							llvm-svn: 93383 
							
						 
						
							2010-01-14 00:36:21 +00:00  
				
					
						
							
							
								 
						
							
								40775003e6 
								
							 
						 
						
							
							
								
								Roll out ASTContext::getTypeSizeInChars(), replacing instances of  
							
							... 
							
							
							
							"ASTContext::getTypeSize() / 8". Replace [u]int64_t variables with CharUnits
ones as appropriate. 
Also rename RawType, fromRaw(), and getRaw() in CharUnits to QuantityType, 
fromQuantity(), and getQuantity() for clarity.
llvm-svn: 93153 
							
						 
						
							2010-01-11 17:06:35 +00:00  
				
					
						
							
							
								 
						
							
								88ea2455f8 
								
							 
						 
						
							
							
								
								Get rid of FixedWidthIntType, as suggested by Chris and Eli.  
							
							... 
							
							
							
							llvm-svn: 92246 
							
						 
						
							2009-12-29 07:07:36 +00:00  
				
					
						
							
							
								 
						
							
								9f021fd05d 
								
							 
						 
						
							
							
								
								adjust for llvm api changes.  
							
							... 
							
							
							
							llvm-svn: 92236 
							
						 
						
							2009-12-28 23:41:39 +00:00  
				
					
						
							
							
								 
						
							
								5e124bf913 
								
							 
						 
						
							
							
								
								this form of SetDebugLocation is about to go away, add some #includes that  
							
							... 
							
							
							
							are about to not come in implicitly.
llvm-svn: 92228 
							
						 
						
							2009-12-28 21:44:41 +00:00  
				
					
						
							
							
								 
						
							
								0f139a1df1 
								
							 
						 
						
							
							
								
								Improve on my previous fix for debug information. Rather than  
							
							... 
							
							
							
							recursing in CGDebugInfo::CreateTypeNode, teach
CanonicalizeTypeForDebugInfo---now called UnwrapTypeForDebugInfo---to
keep unwrapping the type until we hit something that can be
represented by debug information. Thanks to Anders for pointing this out!
llvm-svn: 91840 
							
						 
						
							2009-12-21 20:18:30 +00:00  
				
					
						
							
							
								 
						
							
								0915b43ac2 
								
							 
						 
						
							
							
								
								Teach debug info generation to handle TemplateSpecializationType,  
							
							... 
							
							
							
							ElaboratedType, QualifiedNameType, and SubstTemplateTypeParmType type
nodes. Also, produce an "unsupported" diagnostic for C++0x type nodes
and "typeof" nodes, rather than asserting nondescriptly.
llvm-svn: 91837 
							
						 
						
							2009-12-21 19:57:21 +00:00  
				
					
						
							
							
								 
						
							
								24c7f5efc5 
								
							 
						 
						
							
							
								
								Add -dwarf-debug-flags, which provides a way to embed the cc1 level options used  
							
							... 
							
							
							
							to compile a translation unit into the debug info for that file.
 - Used by parts of Darwin build process to check compiler flags, etc.
 - <rdar://problem/7256886> clang does not emit AT_APPLE_flags
llvm-svn: 91661 
							
						 
						
							2009-12-18 02:43:17 +00:00  
				
					
						
							
							
								 
						
							
								ba8451b243 
								
							 
						 
						
							
							
								
								Use StringRef in CGDebugInfo::EmitFunctionStart.  
							
							... 
							
							
							
							llvm-svn: 90856 
							
						 
						
							2009-12-08 14:04:35 +00:00  
				
					
						
							
							
								 
						
							
								1d20564b8d 
								
							 
						 
						
							
							
								
								Use Path.makeAbsolute() and make a constant std::string a const char*.  
							
							... 
							
							
							
							llvm-svn: 90851 
							
						 
						
							2009-12-08 11:02:29 +00:00  
				
					
						
							
							
								 
						
							
								567ae47b4a 
								
							 
						 
						
							
							
								
								Remove several .c_str() to be forward-compatible with StringRef.  
							
							... 
							
							
							
							llvm-svn: 90822 
							
						 
						
							2009-12-08 01:46:24 +00:00  
				
					
						
							
							
								 
						
							
								3efc6e6f46 
								
							 
						 
						
							
							
								
								Add rudimentary support for member pointers to CGDebugInfo.  
							
							... 
							
							
							
							llvm-svn: 90711 
							
						 
						
							2009-12-06 18:00:51 +00:00  
				
					
						
							
							
								 
						
							
								9eac065e67 
								
							 
						 
						
							
							
								
								Move MainFileName option variable into CodeGenOptions instead of LangOptions.  
							
							... 
							
							
							
							llvm-svn: 90051 
							
						 
						
							2009-11-29 02:38:34 +00:00  
				
					
						
							
							
								 
						
							
								58bf6e1885 
								
							 
						 
						
							
							
								
								Use StringRef (again) in DebugInfo interface.  
							
							... 
							
							
							
							llvm-svn: 89867 
							
						 
						
							2009-11-25 17:37:31 +00:00  
				
					
						
							
							
								 
						
							
								1b8fe5b716 
								
							 
						 
						
							
							
								
								First part of changes to eliminate problems with cv-qualifiers and  
							
							... 
							
							
							
							sugared types. The basic problem is that our qualifier accessors
(getQualifiers, getCVRQualifiers, isConstQualified, etc.) only look at
the current QualType and not at any qualifiers that come from sugared
types, meaning that we won't see these qualifiers through, e.g.,
typedefs:
  typedef const int CInt;
  typedef CInt Self;
Self.isConstQualified() currently returns false!
Various bugs (e.g., PR5383) have cropped up all over the front end due
to such problems. I'm addressing this problem by splitting each
qualifier accessor into two versions: 
  - the "local" version only returns qualifiers on this particular
    QualType instance
  - the "normal" version that will eventually combine qualifiers from this
    QualType instance with the qualifiers on the canonical type to
    produce the full set of qualifiers.
This commit adds the local versions and switches a few callers from
the "normal" version (e.g., isConstQualified) over to the "local"
version (e.g., isLocalConstQualified) when that is the right thing to
do, e.g., because we're printing or serializing the qualifiers. Also,
switch a bunch of
  
  Context.getCanonicalType(T1).getUnqualifiedType() == Context.getCanonicalType(T2).getQualifiedType()
expressions over to 
  Context.hasSameUnqualifiedType(T1, T2)
llvm-svn: 88969 
							
						 
						
							2009-11-16 21:35:15 +00:00  
				
					
						
							
							
								 
						
							
								37b4b8b1da 
								
							 
						 
						
							
							
								
								revert r88963.  
							
							... 
							
							
							
							llvm-svn: 88965 
							
						 
						
							2009-11-16 21:17:07 +00:00  
				
					
						
							
							
								 
						
							
								b71c28db22 
								
							 
						 
						
							
							
								
								Use TrackingVH to hold forward decl. This one is for RecordType.  
							
							... 
							
							
							
							llvm-svn: 88963 
							
						 
						
							2009-11-16 21:06:35 +00:00  
				
					
						
							
							
								 
						
							
								00dbf4c3c6 
								
							 
						 
						
							
							
								
								Parallel fix to r88951: use TrackingVH to hold forward decl.  
							
							... 
							
							
							
							llvm-svn: 88962 
							
						 
						
							2009-11-16 21:04:30 +00:00  
				
					
						
							
							
								 
						
							
								b05d0824c6 
								
							 
						 
						
							
							
								
								Fix valgrind uninitialized error.  
							
							... 
							
							
							
							llvm-svn: 88952 
							
						 
						
							2009-11-16 20:33:31 +00:00  
				
					
						
							
							
								 
						
							
								10909d5faf 
								
							 
						 
						
							
							
								
								Use TrackingVH to hold forward decl.  
							
							... 
							
							
							
							llvm-svn: 88951 
							
						 
						
							2009-11-16 20:09:38 +00:00  
				
					
						
							
							
								 
						
							
								0acee6e0d7 
								
							 
						 
						
							
							
								
								Canonicalize the type before trying to create a debug type.  
							
							... 
							
							
							
							llvm-svn: 88808 
							
						 
						
							2009-11-14 21:08:12 +00:00  
				
					
						
							
							
								 
						
							
								6037e78149 
								
							 
						 
						
							
							
								
								Have CGDebugInfo::getOrCreateType cache the QualType instead of having every ConvertType overload do it.  
							
							... 
							
							
							
							llvm-svn: 88807 
							
						 
						
							2009-11-14 20:52:05 +00:00  
				
					
						
							
							
								 
						
							
								b40f295037 
								
							 
						 
						
							
							
								
								Do not store DIDescriptor directly into a container. Store MDNode directly, through TrackingVH.  
							
							... 
							
							
							
							llvm-svn: 88677 
							
						 
						
							2009-11-13 19:10:24 +00:00  
				
					
						
							
							
								 
						
							
								94f798c079 
								
							 
						 
						
							
							
								
								"Attach debug info with llvm instructions" mode was enabled a month ago. Now make it permanent and remove old way of inserting intrinsics to encode debug info for locations and types.  
							
							... 
							
							
							
							llvm-svn: 87007 
							
						 
						
							2009-11-12 18:21:39 +00:00  
				
					
						
							
							
								 
						
							
								6e98d7af22 
								
							 
						 
						
							
							
								
								Use getNameAsCString() instead of getName().data()  
							
							... 
							
							
							
							llvm-svn: 87001 
							
						 
						
							2009-11-12 17:49:47 +00:00  
				
					
						
							
							
								 
						
							
								bc55fe26c6 
								
							 
						 
						
							
							
								
								Move CompileOptions -> CodeGenOptions, and sink it into the CodeGen library.  
							
							... 
							
							
							
							This resolves the layering violation where CodeGen depended on Frontend.
llvm-svn: 86998 
							
						 
						
							2009-11-12 17:24:48 +00:00  
				
					
						
							
							
								 
						
							
								7bdf096f8d 
								
							 
						 
						
							
							
								
								Do not use StringRef while using DebugInfo interface.  
							
							... 
							
							
							
							llvm-svn: 86915 
							
						 
						
							2009-11-12 00:51:46 +00:00  
				
					
						
							
							
								 
						
							
								5348515193 
								
							 
						 
						
							
							
								
								Do not eagerly set stop point for arguments. This misleads the debugger in identifying beginning of function body. Instead, create new location to attach with llvm.dbg.declare. This location is only used to find the context of the variable by the code generator, and it is not used to emit line number info.  
							
							... 
							
							
							
							llvm-svn: 86862 
							
						 
						
							2009-11-11 19:10:19 +00:00  
				
					
						
							
							
								 
						
							
								af993bf5cc 
								
							 
						 
						
							
							
								
								Attach location info with llvm.dbg.declare.  
							
							... 
							
							
							
							llvm-svn: 86750 
							
						 
						
							2009-11-10 23:07:24 +00:00  
				
					
						
							
							
								 
						
							
								3d888e4548 
								
							 
						 
						
							
							
								
								Revert r86315 and add Type::FixedWidthInt to the FIXME cases.  
							
							... 
							
							
							
							llvm-svn: 86320 
							
						 
						
							2009-11-07 01:19:37 +00:00  
				
					
						
							
							
								 
						
							
								5b39e2382f 
								
							 
						 
						
							
							
								
								Do not assert if debug info for certain type is not generated.  
							
							... 
							
							
							
							llvm-svn: 86315 
							
						 
						
							2009-11-07 00:29:05 +00:00  
				
					
						
							
							
								 
						
							
								eef461c230 
								
							 
						 
						
							
							
								
								Do not emit linkage name for global variables. It confuses gdb, because it picks up AT_MIPS_linkage_name and ignores AT_name.  
							
							... 
							
							
							
							llvm-svn: 86308 
							
						 
						
							2009-11-07 00:10:18 +00:00  
				
					
						
							
							
								 
						
							
								443f677302 
								
							 
						 
						
							
							
								
								Simplify the debug info code, handle lvalue references and template specializations.  
							
							... 
							
							
							
							llvm-svn: 86277 
							
						 
						
							2009-11-06 19:19:55 +00:00  
				
					
						
							
							
								 
						
							
								8a6512961f 
								
							 
						 
						
							
							
								
								Handle QualifiedNameType and SubstTemplateTypeParmType types in CGDebugInfo::CreateTypeNode.  
							
							... 
							
							
							
							llvm-svn: 86274 
							
						 
						
							2009-11-06 18:45:16 +00:00  
				
					
						
							
							
								 
						
							
								25ed5c2f42 
								
							 
						 
						
							
							
								
								Don't assert when trying to generate debug info for vector types. This needs to be fixed eventually...  
							
							... 
							
							
							
							llvm-svn: 86268 
							
						 
						
							2009-11-06 18:24:04 +00:00  
				
					
						
							
							
								 
						
							
								eb9bc2ba82 
								
							 
						 
						
							
							
								
								Instead of returning a null DIType for unhandled types, assert.  
							
							... 
							
							
							
							llvm-svn: 86254 
							
						 
						
							2009-11-06 17:01:39 +00:00  
				
					
						
							
							
								 
						
							
								ba3c6681f0 
								
							 
						 
						
							
							
								
								Enable debug info for global variables at -O1+  
							
							... 
							
							
							
							llvm-svn: 86156 
							
						 
						
							2009-11-05 19:13:29 +00:00  
				
					
						
							
							
								 
						
							
								ae2559a221 
								
							 
						 
						
							
							
								
								Fixup the return type of functions.  
							
							... 
							
							
							
							llvm-svn: 84922 
							
						 
						
							2009-10-23 01:52:13 +00:00  
				
					
						
							
							
								 
						
							
								e21912d1ae 
								
							 
						 
						
							
							
								
								Do not eagerly cache DITypes because it allows real struct type to be shadowed by forward declared struct type.  
							
							... 
							
							
							
							llvm-svn: 84659 
							
						 
						
							2009-10-20 19:55:01 +00:00  
				
					
						
							
							
								 
						
							
								e4f2b2a8ac 
								
							 
						 
						
							
							
								
								Encode global variable name in debug info.  
							
							... 
							
							
							
							llvm-svn: 84653 
							
						 
						
							2009-10-20 18:26:30 +00:00  
				
					
						
							
							
								 
						
							
								c5b8225285 
								
							 
						 
						
							
							
								
								Remove the ConstantArrayType subtypes.  This information is preserved in the  
							
							... 
							
							
							
							TypeLoc records for declarations;  it should not be necessary to represent it
directly in the type system.
Please complain if you were using these classes and feel you can't replicate
previous functionality using the TypeLoc API.
llvm-svn: 84222 
							
						 
						
							2009-10-16 00:14:28 +00:00  
				
					
						
							
							
								 
						
							
								84a0287497 
								
							 
						 
						
							
							
								
								Few targets like PIC16 mangle the names of global variables, so retrieve the name  
							
							... 
							
							
							
							from Var itself rather than the decl for DebugInfo metadata.
llvm-svn: 84102 
							
						 
						
							2009-10-14 15:08:34 +00:00  
				
					
						
							
							
								 
						
							
								551e112e99 
								
							 
						 
						
							
							
								
								Encode long double.  
							
							... 
							
							
							
							llvm-svn: 83912 
							
						 
						
							2009-10-12 22:28:31 +00:00  
				
					
						
							
							
								 
						
							
								fc8ff639cb 
								
							 
						 
						
							
							
								
								Allow customization for the producer information in the debug output.  
							
							... 
							
							
							
							llvm-svn: 83659 
							
						 
						
							2009-10-09 18:38:12 +00:00  
				
					
						
							
							
								 
						
							
								542ab5f551 
								
							 
						 
						
							
							
								
								InsertSubprogramStart if ATTACH_DEBUG_INFO_TO_AN_INSN is not defined.  
							
							... 
							
							
							
							llvm-svn: 83419 
							
						 
						
							2009-10-06 21:53:41 +00:00  
				
					
						
							
							
								 
						
							
								5d90d62701 
								
							 
						 
						
							
							
								
								Add support to attach debug info to an instruction.  
							
							... 
							
							
							
							This is not yet enabled.
llvm-svn: 83399 
							
						 
						
							2009-10-06 18:36:08 +00:00  
				
					
						
							
							
								 
						
							
								faf7e9ad24 
								
							 
						 
						
							
							
								
								Set appropriate context for a global variable while emitting debug info.  
							
							... 
							
							
							
							llvm-svn: 83352 
							
						 
						
							2009-10-06 00:35:31 +00:00  
				
					
						
							
							
								 
						
							
								581b9ad124 
								
							 
						 
						
							
							
								
								More magic pixie dust.  
							
							... 
							
							
							
							llvm-svn: 83232 
							
						 
						
							2009-10-02 02:30:50 +00:00