Chris Lattner 
							
						 
					 
					
						
						
							
						
						f0908a351a 
					 
					
						
						
							
							fix Analysis/DebugInfo.h to not include Metadata.h.  Do this  
						
						 
						
						... 
						
						
						
						by moving one method out of line and eliminating redundant checks
from other methods.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92337  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 03:02:08 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						5d0cacdbb6 
					 
					
						
						
							
							rename "elements" of metadata to "operands".  "Elements" are  
						
						 
						
						... 
						
						
						
						things that occur in types.  "operands" are things that occur
in values.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92322  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 01:22:29 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						b76359e36e 
					 
					
						
						
							
							Optimize MDNode to coallocate the operand list immediately  
						
						 
						
						... 
						
						
						
						after the MDNode in memory.  This eliminates the operands
pointer and saves a new[] per node.
Note that the code in DIDerivedType::replaceAllUsesWith is wrong
and quite scary.  A MDNode should not be RAUW'd with something
else: this changes all uses of the mdnode, which may not be debug
info related!  Debug info should use something non-mdnode for
declarations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92321  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-31 01:05:46 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						bf0ca2b477 
					 
					
						
						
							
							remove a bunch of unneeded functions.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92263  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-29 09:32:19 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						099b779a02 
					 
					
						
						
							
							major cleanups, much of this file was incorrectly indented.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92262  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-29 09:22:47 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						784b850e32 
					 
					
						
						
							
							one pass of cleanup over DebugInfo.h.  Much more is still needed.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92261  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-29 09:15:46 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						081134741b 
					 
					
						
						
							
							Final step in the metadata API restructuring: move the  
						
						 
						
						... 
						
						
						
						getMDKindID/getMDKindNames methods to LLVMContext (and add
convenience methods to Module), eliminating MetadataContext.
Move the state that it maintains out to LLVMContext.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92259  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-29 09:01:33 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						3990b121cf 
					 
					
						
						
							
							This is a major cleanup of the instruction metadata interfaces that  
						
						 
						
						... 
						
						
						
						I asked Devang to do back on Sep 27.  Instead of going through the
MetadataContext class with methods like getMD() and getMDs(), just
ask the instruction directly for its metadata with getMetadata()
and getAllMetadata().
This includes a variety of other fixes and improvements: previously
all Value*'s were bloated because the HasMetadata bit was thrown into
value, adding a 9th bit to a byte.  Now this is properly sunk down to
the Instruction class (the only place where it makes sense) and it
will be folded away somewhere soon.
This also fixes some confusion in getMDs and its clients about 
whether the returned list is indexed by the MDID or densely packed.
This is now returned sorted and densely packed and the comments make
this clear.
This introduces a number of fixme's which I'll follow up on.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92235  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-28 23:41:32 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						0eb419800a 
					 
					
						
						
							
							rename getMDKind -> getMDKindID, make it autoinsert if an MD Kind  
						
						 
						
						... 
						
						
						
						doesn't exist already, eliminate registerMDKind.  Tidy up a bunch
of random stuff.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92225  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-28 20:45:51 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								David Greene 
							
						 
					 
					
						
						
							
						
						0eb5b666dd 
					 
					
						
						
							
							Convert debug messages to use dbgs().  Generally this means  
						
						 
						
						... 
						
						
						
						s/errs/dbgs/g except for certain special cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92032  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-23 19:45:49 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Devang Patel 
							
						 
					 
					
						
						
							
						
						6404e4e795 
					 
					
						
						
							
							Add support to emit debug info for C++ namespaces.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91440  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-15 19:16:48 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Devang Patel 
							
						 
					 
					
						
						
							
						
						0000fadb00 
					 
					
						
						
							
							Revert 90858 90875 and 90805 for now.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90898  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-08 23:21:45 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Victor Hernandez 
							
						 
					 
					
						
						
							
						
						c59b33562c 
					 
					
						
						
							
							Rename DIFactory::InsertValue() as DIFactory::InsertDbgValueIntrinsic()  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90807  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-07 21:54:43 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Devang Patel 
							
						 
					 
					
						
						
							
						
						4063f6bcc7 
					 
					
						
						
							
							Add support to emit debug info for c++ style namespaces.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90805  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-07 21:41:32 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Victor Hernandez 
							
						 
					 
					
						
						
							
						
						2f9dac721d 
					 
					
						
						
							
							Introduce the "@llvm.dbg.value" debug intrinsic.  
						
						 
						
						... 
						
						
						
						The semantics of llvm.dbg.value are that starting from where it is executed, an offset into the specified user source variable is specified to get a new value.
An example:
  call void @llvm.dbg.value(metadata !{ i32 7 }, i64 0, metadata !2 )
Here the user source variable associated with metadata #2  gets the value "i32 7" at offset 0.
 
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90788  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-07 19:36:34 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Devang Patel 
							
						 
					 
					
						
						
							
						
						5d11eb0ed5 
					 
					
						
						
							
							Add support to emit debug info for virtual functions and virtual base classes.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90474  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-03 19:11:07 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Devang Patel 
							
						 
					 
					
						
						
							
						
						e3a18de4f6 
					 
					
						
						
							
							Add utility routine to create subprogram definition entry from subprogram declaration entry.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90282  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-12-01 23:09:02 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Devang Patel 
							
						 
					 
					
						
						
							
						
						65dbc909f5 
					 
					
						
						
							
							Use StringRef (again) in DebugInfo interface.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89866  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-25 17:36:49 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Devang Patel 
							
						 
					 
					
						
						
							
						
						193f720f11 
					 
					
						
						
							
							Emit pubtypes.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89725  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-24 01:14:22 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Devang Patel 
							
						 
					 
					
						
						
							
						
						e54a5e88a5 
					 
					
						
						
							
							Add CreateLocation varinat that accepts MDNode (with a default value).  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89689  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-23 19:11:20 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Devang Patel 
							
						 
					 
					
						
						
							
						
						427ef4e35f 
					 
					
						
						
							
							Remove dead code.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89156  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-17 22:39:08 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Devang Patel 
							
						 
					 
					
						
						
							
						
						3ddf70442f 
					 
					
						
						
							
							Revert r87059 for now. It is failing clang tests.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@87070  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-13 02:27:33 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Victor Hernandez 
							
						 
					 
					
						
						
							
						
						0418c102dd 
					 
					
						
						
							
							Remove unnecessary llvm.dbg.declare bitcast  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@87059  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-13 01:44:55 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Devang Patel 
							
						 
					 
					
						
						
							
						
						70d75ca310 
					 
					
						
						
							
							"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 line number and scopes.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@87014  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-12 19:02:56 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Devang Patel 
							
						 
					 
					
						
						
							
						
						afa5a34b30 
					 
					
						
						
							
							Do not use StringRef in DebugInfo interface.  
						
						 
						
						... 
						
						
						
						This allows StringRef to skip controversial if(str) check in constructor.
Buildbots, wait for corresponding clang and llvm-gcc FE check-ins!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86914  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-12 00:50:58 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Devang Patel 
							
						 
					 
					
						
						
							
						
						53bb5c95af 
					 
					
						
						
							
							Implement support to debug inlined functions.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86748  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-10 23:06:00 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Devang Patel 
							
						 
					 
					
						
						
							
						
						6daf99bf8f 
					 
					
						
						
							
							Process InlinedAt location info.  
						
						 
						
						... 
						
						
						
						Update InsertDeclare to return newly inserted llvm.dbg.declare intrinsic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86727  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-10 22:05:35 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Devang Patel 
							
						 
					 
					
						
						
							
						
						5ebfa2d181 
					 
					
						
						
							
							Tolerate invalid derived type.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86269  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-06 18:24:05 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Devang Patel 
							
						 
					 
					
						
						
							
						
						84c73e9b82 
					 
					
						
						
							
							Do not bother to emit debug info for nameless global variable.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86259  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-06 17:58:12 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Devang Patel 
							
						 
					 
					
						
						
							
						
						61ecbd196c 
					 
					
						
						
							
							While calculating original type size for a derived type, handle type variants encoded as DIDerivedType appropriately.  
						
						 
						
						... 
						
						
						
						This improves bitfield support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86073  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-11-04 23:48:00 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Devang Patel 
							
						 
					 
					
						
						
							
						
						5e8e2d7ad9 
					 
					
						
						
							
							If string field is empty then return NULL.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85630  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-10-30 22:52:47 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Devang Patel 
							
						 
					 
					
						
						
							
						
						7cb7e12c08 
					 
					
						
						
							
							If a type is derived from a derived type then calculate size appropriately.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85619  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-10-30 22:09:30 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Devang Patel 
							
						 
					 
					
						
						
							
						
						94dfaec32c 
					 
					
						
						
							
							First bitcase use may not lead to a dbg.declare intrinsic. Iterate uses until one find's dbg.declare intrinsic.  
						
						 
						
						... 
						
						
						
						Patch by Sunae Seo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85518  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-10-29 18:20:34 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Devang Patel 
							
						 
					 
					
						
						
							
						
						ac16d44e58 
					 
					
						
						
							
							Add support to encode type info using llvm::Constant.  
						
						 
						
						... 
						
						
						
						Patch by Talin!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85126  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-10-26 16:54:35 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Devang Patel 
							
						 
					 
					
						
						
							
						
						549e81f7de 
					 
					
						
						
							
							"there is not any instruction with attached debug info in this module" does not mean "there is no debug info in this module". :)  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83984  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-10-13 17:35:35 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Bill Wendling 
							
						 
					 
					
						
						
							
						
						26c6cf4cec 
					 
					
						
						
							
							It's possible for a global variable to be optimized out of a metadata object. So  
						
						 
						
						... 
						
						
						
						we should allow a "null" with this dyn_cast.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83573  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-10-08 20:52:51 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Devang Patel 
							
						 
					 
					
						
						
							
						
						beab41b874 
					 
					
						
						
							
							Extract subprogram and compile unit information from the debug info attached to an instruction.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83491  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-10-07 22:04:08 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Mike Stump 
							
						 
					 
					
						
						
							
						
						e4250396ea 
					 
					
						
						
							
							Expand api out in the usual inserter way, though, I do have a  
						
						 
						
						... 
						
						
						
						question, can we get rid of the BasicBlock versions of all inserters
and use Head == 0 to indicate the old case when GetInsertBlock == 0?
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83216  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-10-01 22:08:58 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Devang Patel 
							
						 
					 
					
						
						
							
						
						a1434045c3 
					 
					
						
						
							
							Add another MDNode into DebugLocTuple. This will be used to keep track of inlined functions.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83190  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-10-01 01:15:28 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Devang Patel 
							
						 
					 
					
						
						
							
						
						ecbeb1a490 
					 
					
						
						
							
							Add isFOO() helpers. Fix getDirectory() and getFilename() for DIScope.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83180  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-09-30 22:34:41 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Mike Stump 
							
						 
					 
					
						
						
							
						
						3e4c9bdb67 
					 
					
						
						
							
							Add a way for a frontend to generate more complex dwarf location  
						
						 
						
						... 
						
						
						
						information.  This allows arbitrary code involving DW_OP_plus_uconst
and DW_OP_deref.  The scheme allows for easy extention to include,
any, or all of the DW_OP_ opcodes.  I thought about just exposing all
of them, but, wasn't sure if people wanted the dwarf opcodes exposed
in the api.  Is that a layering violation?
With this scheme, the entire existing block scheme used by llvm-gcc
can be switched over to the new scheme.  I think that would be
cleaner, as then the compiler specific bits are not present in llvm
proper.  Before the old code can be yanked however, similar code in
clang would have to be removed.
Next up, more testing.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83120  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-09-30 00:08:22 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Devang Patel 
							
						 
					 
					
						
						
							
						
						5ccdd10b1a 
					 
					
						
						
							
							Remove std::string uses from DebugInfo interface.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83083  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-09-29 18:40:58 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Daniel Dunbar 
							
						 
					 
					
						
						
							
						
						48a097bfb6 
					 
					
						
						
							
							Switch DIDescriptor to use a TrackingVH. - This makes it much safer to work with debug info, since it was extraordinarily easy to have dangling pointers thanks to MDNode uniquing.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82507  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-09-22 02:03:18 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Daniel Dunbar 
							
						 
					 
					
						
						
							
						
						a279bc3da5 
					 
					
						
						
							
							Tabs -> spaces, and remove trailing whitespace.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82355  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-09-20 02:20:51 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Daniel Dunbar 
							
						 
					 
					
						
						
							
						
						f612ff6cfb 
					 
					
						
						
							
							Strip trailing whitespace.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82332  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-09-19 20:40:05 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Devang Patel 
							
						 
					 
					
						
						
							
						
						1b75f44bd9 
					 
					
						
						
							
							Provide a way to extract location info from DILocation.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82064  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-09-16 18:20:05 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Devang Patel 
							
						 
					 
					
						
						
							
						
						f98d8fee3c 
					 
					
						
						
							
							Introduce DILocation.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80648  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-09-01 01:14:15 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Devang Patel 
							
						 
					 
					
						
						
							
						
						82dfc0cd8c 
					 
					
						
						
							
							Subprogram is a scope. Derive DISubprogram from DIScope.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80637  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-08-31 22:47:13 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Devang Patel 
							
						 
					 
					
						
						
							
						
						5e005d814f 
					 
					
						
						
							
							Rename DIBlock as DILexicalBlock.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80633  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-08-31 22:00:15 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Devang Patel 
							
						 
					 
					
						
						
							
						
						c9f322d9a6 
					 
					
						
						
							
							Derive DICompileUnit from DIScope.  
						
						 
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80627  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2009-08-31 21:34:44 +00:00