Audited the existing Materializer code to ensure
that it works in the absence of a process.  Codepaths
in the Materializer now use the best execution context
scope available to them.

llvm-svn: 179539
diff --git a/lldb/source/Expression/IRMemoryMap.cpp b/lldb/source/Expression/IRMemoryMap.cpp
index f22f070..300aaa5 100644
--- a/lldb/source/Expression/IRMemoryMap.cpp
+++ b/lldb/source/Expression/IRMemoryMap.cpp
@@ -18,16 +18,11 @@
 
 using namespace lldb_private;
 
-IRMemoryMap::IRMemoryMap (lldb::ProcessSP process_sp) :
-    m_process_wp(process_sp),
-    m_target_wp(process_sp->GetTarget().shared_from_this())
-{
-}
-
 IRMemoryMap::IRMemoryMap (lldb::TargetSP target_sp) :
-    m_process_wp(),
     m_target_wp(target_sp)
 {
+    if (target_sp)
+        m_process_wp = target_sp->GetProcessSP();
 }
 
 IRMemoryMap::~IRMemoryMap ()