<rdar://problem/13963648>

Changes after feedback:
Directly use function pointer, just to be safer on 10.8.

llvm-svn: 182529
diff --git a/lldb/tools/debugserver/source/MacOSX/MachVMMemory.cpp b/lldb/tools/debugserver/source/MacOSX/MachVMMemory.cpp
index d9771a9..af82fc9 100644
--- a/lldb/tools/debugserver/source/MacOSX/MachVMMemory.cpp
+++ b/lldb/tools/debugserver/source/MacOSX/MachVMMemory.cpp
@@ -452,9 +452,12 @@
     mach_msg_type_number_t info_count;
     task_vm_info_data_t vm_info;
     
-    if (dlsym(RTLD_NEXT, "task_purgable_info") != NULL )
+    typedef kern_return_t (*task_purgable_info_type) (task_t, task_purgable_info_t *);
+    task_purgable_info_type task_purgable_info_ptr = NULL;
+    task_purgable_info_ptr = (task_purgable_info_type)dlsym(RTLD_NEXT, "task_purgable_info");
+    if (task_purgable_info_ptr != NULL)
     {
-        kr = task_purgable_info(task, &purgeable_info);
+        kr = (*task_purgable_info_ptr)(task, &purgeable_info);
         if (kr == KERN_SUCCESS) {
             purgeable_sum = SumVMPurgeableInfo(&purgeable_info);
             purgeable = purgeable_sum;
@@ -474,6 +477,7 @@
             anonymous = 0;
         }
     }
+    
 #endif
 }