hanchenye-llvm-project/lldb/source/Target
Sean Callanan 686b2319e5 I made the ClangASTImporter owned by the target
rather than individually on behalf of each
ASTContext.  This allows the ASTImporter to know
about all containers of types, which will let it
be smarter about forwarding information about
type origins.  That means that the following
sequence of steps will be possible (after a few
more changes):

- Import a type from a Module's ASTContext into
  an expression parser ASTContext, tracking its
  origin information -- this works now.

- Because the result of the expression uses that
  type, import it from the expression parser
  ASTContext into the Target's scratch AST
  context, forwarding the origin information --
  this needs to be added.

- For a later expression that uses the result,
  import the type from the Target's scratch AST
  context, still forwarding origin information
  -- this also needs to be added.

- Use the intact origin information to complete
  the type as needed -- this works now if the
  origin information is present.

To this end, I made the following changes:

- ASTImporter top-level copy functions now
  require both a source and a destination AST
  context parameter.

- The ASTImporter now knows how to purge
  records related to an ASTContext that is
  going away.

- The Target now owns and creates the ASTImporter
  whenever the main executable changes or (in the
  absence of a main executable) on demand.

llvm-svn: 144802
2011-11-16 18:20:47 +00:00
..
ABI.cpp Added a new plug-in type: lldb_private::OperatingSystem. The operating system 2011-08-22 02:49:39 +00:00
CPPLanguageRuntime.cpp Move the responsibility for translating the various eFunctionNameType lookups to the 2011-10-07 22:23:45 +00:00
ExecutionContext.cpp Converted the lldb_private::Process over to use the intrusive 2011-09-22 04:58:26 +00:00
LanguageRuntime.cpp
Makefile
Memory.cpp
ObjCLanguageRuntime.cpp Changed lldb_private::Type over to use the intrusive ref counted pointers 2011-10-18 23:36:41 +00:00
OperatingSystem.cpp Added a new plug-in type: lldb_private::OperatingSystem. The operating system 2011-08-22 02:49:39 +00:00
PathMappingList.cpp
Platform.cpp Added a new class to Process.h: ProcessAttachInfo. This class contains enough 2011-11-15 03:53:30 +00:00
Process.cpp Made the darwin host layer properly reap any child processes that it spawns. 2011-11-16 05:37:56 +00:00
RegisterContext.cpp
SectionLoadList.cpp
StackFrame.cpp Added more functionality to the public API to allow for better 2011-09-26 07:11:27 +00:00
StackFrameList.cpp Fixed the Xcode project building of LLVM to be a bit more user friendly: 2011-11-04 03:34:56 +00:00
StackID.cpp Moved lldb::user_id_t values to be 64 bit. This was going to be needed for 2011-10-19 18:09:39 +00:00
StopInfo.cpp Do a better job of detecting when a breakpoint command has set the target running again (except you have to ignore 2011-11-08 03:00:11 +00:00
Target.cpp I made the ClangASTImporter owned by the target 2011-11-16 18:20:47 +00:00
TargetList.cpp Cleaned up many error codes. For any who is filling in error strings into 2011-10-26 00:56:27 +00:00
Thread.cpp Moved lldb::user_id_t values to be 64 bit. This was going to be needed for 2011-10-19 18:09:39 +00:00
ThreadList.cpp Moved lldb::user_id_t values to be 64 bit. This was going to be needed for 2011-10-19 18:09:39 +00:00
ThreadPlan.cpp Moved lldb::user_id_t values to be 64 bit. This was going to be needed for 2011-10-19 18:09:39 +00:00
ThreadPlanBase.cpp Moved lldb::user_id_t values to be 64 bit. This was going to be needed for 2011-10-19 18:09:39 +00:00
ThreadPlanCallFunction.cpp Enhanced the ObjC DynamicCheckerFunction to test for "object responds to selector" as well as 2011-11-01 02:46:54 +00:00
ThreadPlanCallUserExpression.cpp Enhanced the ObjC DynamicCheckerFunction to test for "object responds to selector" as well as 2011-11-01 02:46:54 +00:00
ThreadPlanRunToAddress.cpp Using the wrong type for the break id's (user_id_t is an unsigned int, but internal breakpoints can be negative, and anyway it is a good idea to use break_id_t for breakpoints, no?) 2011-11-10 01:12:26 +00:00
ThreadPlanShouldStopHere.cpp
ThreadPlanStepInRange.cpp Make the step range plans capable of supporting multiple ranges. Also make their constructors public, there isn't any good reason why you shouldn't be able to make these plans. 2011-10-15 00:24:48 +00:00
ThreadPlanStepInstruction.cpp
ThreadPlanStepOut.cpp Make "next" and "step-out" work when in stepping over or out of inlined functions. 2011-10-15 00:57:28 +00:00
ThreadPlanStepOverBreakpoint.cpp Moved lldb::user_id_t values to be 64 bit. This was going to be needed for 2011-10-19 18:09:39 +00:00
ThreadPlanStepOverRange.cpp Make the step range plans capable of supporting multiple ranges. Also make their constructors public, there isn't any good reason why you shouldn't be able to make these plans. 2011-10-15 00:24:48 +00:00
ThreadPlanStepRange.cpp Make the step range plans capable of supporting multiple ranges. Also make their constructors public, there isn't any good reason why you shouldn't be able to make these plans. 2011-10-15 00:24:48 +00:00
ThreadPlanStepThrough.cpp
ThreadPlanStepUntil.cpp Update declarations for all functions/methods that accept printf-style 2011-09-20 21:44:10 +00:00
ThreadPlanTestCondition.cpp Converted the lldb_private::Process over to use the intrusive 2011-09-22 04:58:26 +00:00
ThreadPlanTracer.cpp We were leaking a stack frame in StackFrameList in Thread.cpp which could 2011-08-12 21:40:01 +00:00
ThreadSpec.cpp Update declarations for all functions/methods that accept printf-style 2011-09-20 21:44:10 +00:00
UnixSignals.cpp Fixed some issues with ARM backtraces by not processing any push/pop 2011-07-06 04:07:21 +00:00
UnwindAssembly.cpp