Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								40eee1e970 
								
							 
						 
						
							
							
								
								Today, the language front ends produces llvm.dbg.* intrinsics, used to encode arguments' debug info, in order any way, most of the times. However, if a front end mix-n-matches llvm.dbg.declare and llvm.dbg.value intrinsics to encode debug info for arguments then code generator needs a way to find argument order.  
							
							 
							
							... 
							
							
							
							Use 8 bits from line number field to keep track of argument ordering while encoding debug info for an argument. That leaves 24 bit for line no, DebugLoc also allocates 24 bit for line numbers. If a function has more than 255 arguments then rest of the arguments will be ordered by llvm.dbg.* intrinsics' ordering in IR.
llvm-svn: 126793 
							
						 
						
							2011-03-01 22:58:13 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								9b4127349c 
								
							 
						 
						
							
							
								
								Follow LLVM coding style.  
							
							 
							
							... 
							
							
							
							clang uses DBuilder, so it requries corresponding change.
llvm-svn: 126231 
							
						 
						
							2011-02-22 18:56:12 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								be933b470a 
								
							 
						 
						
							
							
								
								Add support to describe template value parameter in debug info.  
							
							 
							
							... 
							
							
							
							llvm-svn: 124755 
							
						 
						
							2011-02-02 22:35:53 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								3a9e65efb6 
								
							 
						 
						
							
							
								
								Add support to describe template parameter type in debug info.  
							
							 
							
							... 
							
							
							
							llvm-svn: 124752 
							
						 
						
							2011-02-02 21:38:25 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								8817135cb9 
								
							 
						 
						
							
							
								
								Use type's file info while describing inheritance relationship.  
							
							 
							
							... 
							
							
							
							llvm-svn: 121289 
							
						 
						
							2010-12-08 21:46:37 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								b68c6231e9 
								
							 
						 
						
							
							
								
								Add support to create debug info for functions and methods.  
							
							 
							
							... 
							
							
							
							llvm-svn: 121281 
							
						 
						
							2010-12-08 20:42:44 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								81c3c87717 
								
							 
						 
						
							
							
								
								Add support to create class type.  
							
							 
							
							... 
							
							
							
							llvm-svn: 121279 
							
						 
						
							2010-12-08 20:18:20 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								89ea4f27a8 
								
							 
						 
						
							
							
								
								Add support to create vector, array, enums etc...  
							
							 
							
							... 
							
							
							
							llvm-svn: 121224 
							
						 
						
							2010-12-08 01:50:15 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								dd261afdd9 
								
							 
						 
						
							
							
								
								Global variable does not need linkage name.  
							
							 
							
							... 
							
							
							
							llvm-svn: 121212 
							
						 
						
							2010-12-08 00:06:22 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								63f83cd861 
								
							 
						 
						
							
							
								
								Add support to create local variable's debug info.  
							
							 
							
							... 
							
							
							
							llvm-svn: 121211 
							
						 
						
							2010-12-07 23:58:00 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								746660fc7b 
								
							 
						 
						
							
							
								
								Add support to create variables, structs etc.. using DIBuilder.  
							
							 
							
							... 
							
							
							
							This is still work in progress.
llvm-svn: 121205 
							
						 
						
							2010-12-07 23:25:47 +00:00  
						
					 
				
					
						
							
							
								 
								Benjamin Kramer
							
						 
						
							 
							
							
							
							
								
							
							
								ed8b7bf9ed 
								
							 
						 
						
							
							
								
								Use arrays instead of constant-sized SmallVectors.  
							
							 
							
							... 
							
							
							
							llvm-svn: 118257 
							
						 
						
							2010-11-04 18:45:27 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								57c5a20364 
								
							 
						 
						
							
							
								
								Introduce DIBuilder. It is intended to be a front-end friendly interface to emit debuggging information entries in LLVM IR.  
							
							 
							
							... 
							
							
							
							To create debugging information for a pointer, using DIBUilder front-end just needs
	DBuilder.CreatePointerType(Ty, Size);
instead of
	DebugFactory.CreateDerivedType(llvm::dwarf::DW_TAG_pointer_type,
                                       TheCU, "", getOrCreateMainFile(),
                                       0, Size, 0, 0, 0, OCTy);
llvm-svn: 118248 
							
						 
						
							2010-11-04 15:01:38 +00:00