Applied PluginManager.cpp patch from Jean-Daniel Dupas.
Fixed problem Jean-Daniel Dupas found in ProcessGDBRemote.cpp.

llvm-svn: 105857
diff --git a/lldb/source/Core/PluginManager.cpp b/lldb/source/Core/PluginManager.cpp
index 3723e7c..efc27f6 100644
--- a/lldb/source/Core/PluginManager.cpp
+++ b/lldb/source/Core/PluginManager.cpp
@@ -14,7 +14,7 @@
 
 using namespace lldb_private;
 
-typedef enum PluginAction
+enum PluginAction
 {
     ePluginRegisterInstance,
     ePluginUnregisterInstance,
@@ -25,7 +25,7 @@
 #pragma mark ABI
 
 
-typedef struct ABIInstance
+struct ABIInstance
 {
     ABIInstance() :
         name(),
@@ -125,7 +125,7 @@
     ABIInstance instance;
     if (AccessABIInstances (ePluginGetInstanceAtIndex, instance, idx))
         return instance.create_callback;
-    return false;
+    return NULL;
 }
 
 ABICreateInstance
@@ -148,7 +148,7 @@
 #pragma mark Disassembler
 
 
-typedef struct DisassemblerInstance
+struct DisassemblerInstance
 {
     DisassemblerInstance() :
         name(),
@@ -248,7 +248,7 @@
     DisassemblerInstance instance;
     if (AccessDisassemblerInstances (ePluginGetInstanceAtIndex, instance, idx))
         return instance.create_callback;
-    return false;
+    return NULL;
 }
 
 DisassemblerCreateInstance
@@ -272,7 +272,7 @@
 #pragma mark DynamicLoader
 
 
-typedef struct DynamicLoaderInstance
+struct DynamicLoaderInstance
 {
     DynamicLoaderInstance() :
         name(),
@@ -372,7 +372,7 @@
     DynamicLoaderInstance instance;
     if (AccessDynamicLoaderInstances (ePluginGetInstanceAtIndex, instance, idx))
         return instance.create_callback;
-    return false;
+    return NULL;
 }
 
 DynamicLoaderCreateInstance
@@ -396,7 +396,7 @@
 
 #pragma mark ObjectFile
 
-typedef struct ObjectFileInstance
+struct ObjectFileInstance
 {
     ObjectFileInstance() :
         name(),
@@ -496,7 +496,7 @@
     ObjectFileInstance instance;
     if (AccessObjectFileInstances (ePluginGetInstanceAtIndex, instance, idx))
         return instance.create_callback;
-    return false;
+    return NULL;
 }
 ObjectFileCreateInstance
 PluginManager::GetObjectFileCreateCallbackForPluginName (const char *name)
@@ -518,7 +518,7 @@
 
 #pragma mark ObjectContainer
 
-typedef struct ObjectContainerInstance
+struct ObjectContainerInstance
 {
     ObjectContainerInstance() :
         name(),
@@ -618,7 +618,7 @@
     ObjectContainerInstance instance;
     if (AccessObjectContainerInstances (ePluginGetInstanceAtIndex, instance, idx))
         return instance.create_callback;
-    return false;
+    return NULL;
 }
 ObjectContainerCreateInstance
 PluginManager::GetObjectContainerCreateCallbackForPluginName (const char *name)
@@ -638,7 +638,7 @@
 
 #pragma mark LogChannel
 
-typedef struct LogChannelInstance
+struct LogChannelInstance
 {
     LogChannelInstance() :
         name(),
@@ -748,7 +748,7 @@
     LogChannelInstance instance;
     if (AccessLogChannelInstances (ePluginGetInstanceAtIndex, instance, idx))
         return instance.create_callback;
-    return false;
+    return NULL;
 }
 
 LogChannelCreateInstance
@@ -769,7 +769,7 @@
 
 #pragma mark Process
 
-typedef struct ProcessInstance
+struct ProcessInstance
 {
     ProcessInstance() :
         name(),
@@ -869,7 +869,7 @@
     ProcessInstance instance;
     if (AccessProcessInstances (ePluginGetInstanceAtIndex, instance, idx))
         return instance.create_callback;
-    return false;
+    return NULL;
 }
 
 ProcessCreateInstance
@@ -890,7 +890,7 @@
 
 #pragma mark SymbolFile
 
-typedef struct SymbolFileInstance
+struct SymbolFileInstance
 {
     SymbolFileInstance() :
         name(),
@@ -990,7 +990,7 @@
     SymbolFileInstance instance;
     if (AccessSymbolFileInstances (ePluginGetInstanceAtIndex, instance, idx))
         return instance.create_callback;
-    return false;
+    return NULL;
 }
 SymbolFileCreateInstance
 PluginManager::GetSymbolFileCreateCallbackForPluginName (const char *name)
@@ -1012,7 +1012,7 @@
 
 #pragma mark SymbolVendor
 
-typedef struct SymbolVendorInstance
+struct SymbolVendorInstance
 {
     SymbolVendorInstance() :
         name(),
@@ -1111,7 +1111,7 @@
     SymbolVendorInstance instance;
     if (AccessSymbolVendorInstances (ePluginGetInstanceAtIndex, instance, idx))
         return instance.create_callback;
-    return false;
+    return NULL;
 }
 
 SymbolVendorCreateInstance
diff --git a/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp b/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
index 8bf90c2..568e441 100644
--- a/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
+++ b/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
@@ -245,10 +245,9 @@
                     else if (name.compare("offset") == 0)
                     {
                         uint32_t offset = Args::StringToUInt32(value.c_str(), UINT32_MAX, 0);
-                        if (offset != offset)
+                        if (reg_offset != offset)
                         {
                             reg_offset = offset;
-                            reg_info.byte_offset = offset;
                         }
                     }
                     else if (name.compare("encoding") == 0)
@@ -316,6 +315,7 @@
                     }
                 }
 
+                reg_info.byte_offset = reg_offset;
                 assert (reg_info.byte_size != 0);
                 reg_offset += reg_info.byte_size;
                 m_register_info.AddRegister(reg_info, reg_name, alt_name, set_name);