Skip to content
  1. Dec 13, 2010
  2. Dec 12, 2010
    • Greg Clayton's avatar
      Fixed a multi-threaded race condition that could happen when communication... · bfae66ae
      Greg Clayton authored
      Fixed a multi-threaded race condition that could happen when communication classes are shutting down. We currently don't protect communication connection classes against multi-threaded access. The connection is stored in the lldb_private::Communication.m_connection_ap auto_ptr member. We either need to add protections when accessing this class or not let anything racy occur. With this fix, we are doing the latter.
      
      llvm-svn: 121647
      bfae66ae
    • Greg Clayton's avatar
      Fixed an issue where the macosx dynamic loader, on the first shared library... · 7d07a45f
      Greg Clayton authored
      Fixed an issue where the macosx dynamic loader, on the first shared library loaded notification, wasn't properly removing shared libraries from the target that didn't get loaded. This usually happens when a different shared library is loaded in place of another due to DYLD_LIBRARY_PATH or DYLD_FRAMEWORK_PATH environment variables. We now properly remove any images that didn't make it into the executable.
      
      llvm-svn: 121641
      7d07a45f
    • Greg Clayton's avatar
      Added the ability for SBTarget to resolve load addresses (convert lldb::addr_t... · ac2eb9b1
      Greg Clayton authored
      Added the ability for SBTarget to resolve load addresses (convert lldb::addr_t values into resolved SBAddress objects). These SBAddress objects can then be used to resolve a symbol context using "lldb::SBSymbolContext ResolveSymbolContextForAddress (const lldb::SBAddress& addr, uint32_t resolve_scope);".
      
      llvm-svn: 121638
      ac2eb9b1
  3. Dec 11, 2010
  4. Dec 10, 2010
  5. Dec 09, 2010
  6. Dec 08, 2010
    • Greg Clayton's avatar
      Any arguments that are not options to the "lldb" command line driver, now get · 8d846daa
      Greg Clayton authored
      used as the arguments for the inferior program. So for example you can do
      
      % lldb /bin/ls /tmp ~/Documents
      
      And "lldb" will use "/bin/ls" as the program and send arguments "/tmp" and
      "~/Documents" as the launch args.
      
      If you specify a file, then all remaining args after option parsing
      will be used for program arguments:
      
      % lldb -f /bin/ls /tmp ~/Documents
      
      If you need to pass option values to your inferior program, just terminate
      the "lldb" command line driver options with "--":
      
      % lldb -- /bin/ls -AFl /tmp
      
      The arguments are placed into the "settings" variable named 
      "target.process.run-args". This allows you to just run the program using
      "process launch" and, if no args are specified on that command, the 
      "target.process.run-args" values will be used:
      
      % lldb -- /bin/ls -AFl /tmp
      Current executable set to '/bin/ls' (x86_64).
      (lldb) settings show target.process.run-args 
      target.process.run-args (array):
        [0]: '-AFl'
        [1]: '/tmp'
      (lldb) 
      (lldb) r
      Process 56753 launched: '/bin/ls' (x86_64)
      lrwxr-xr-x@ 1 root  wheel  11 Nov 19  2009 /tmp@ -> private/tmp
      
      llvm-svn: 121295
      8d846daa
    • Greg Clayton's avatar
      Fixed an issue in our source manager where we were permanently caching source · 9625d08c
      Greg Clayton authored
      file data, so if a source file was modified, we would always show the first
      cached copy of the source data. We now check file modification times when
      displaying source info so we can show the update source info.
      
      llvm-svn: 121278
      9625d08c
    • Johnny Chen's avatar
      Add more docstring for the lldb_iter() utility function which provides a compact · b340e6bb
      Johnny Chen authored
      way of iterating through an aggregate data structure.  The added example usage
      is from an actual use in test/foundation/TestSymbolTable.py:
      
          2. Pass a container of aggregate which provides APIs to get to the size and
             the element of the aggregate:
      
          # Module is a container of symbol table 
          module = target.FindModule(filespec)
          for symbol in lldb_iter(module, 'GetNumSymbols', 'GetSymbolAtIndex'):
              name = symbol.GetName()
              ...
      
      llvm-svn: 121271
      b340e6bb
    • Johnny Chen's avatar
      Modify the TestObjCMethods2.py test to fix a typo (should be str_id, not id). · 7b81dfd1
      Johnny Chen authored
      Also, add bug info for expected failures that remain:
      
          <rdar://problem/8741897> Expressions should support properties
      
      llvm-svn: 121268
      7b81dfd1
    • Greg Clayton's avatar
      Bumped lldb Xcode version to 35 for lldb-35, and debugserver to 121 for · 5e0ab134
      Greg Clayton authored
      debugserver-121.
      
      llvm-svn: 121237
      5e0ab134
    • Greg Clayton's avatar
      Added the ability to dump sections to a certain depth (for when sections · 10177aa0
      Greg Clayton authored
      have children sections).
      
      Modified SectionLoadList to do it's own multi-threaded protected on its map.
      The ThreadSafeSTLMap class was difficult to deal with and wasn't providing
      much utility, it was only getting in the way.
      
      Make sure when the communication read thread is about to exit, it clears the
      thread in the main class.
      
      Fixed the ModuleList to correctly ignore architectures and UUIDs if they aren't
      valid when searching for a matching module. If we specified a file with no arch,
      and then modified the file and loaded it again, it would not match on subsequent
      searches if the arch was invalid since it would compare an invalid architecture
      to the one that was found or selected within the shared library or executable.
      This was causing stale modules to stay around in the global module list when they
      should have been removed.
      
      Removed deprecated functions from the DynamicLoaderMacOSXDYLD class.
      
      Modified "ProcessGDBRemote::IsAlive" to check if we are connected to a gdb
      server and also make sure our process hasn't exited.
      
      llvm-svn: 121236
      10177aa0
    • Greg Clayton's avatar
      Fixed up the error message for when a file is not supported. · bc5cad6c
      Greg Clayton authored
      llvm-svn: 121235
      bc5cad6c
    • Sean Callanan's avatar
      Fixed a problem where the AST importer would assert() · e97ae90d
      Sean Callanan authored
      because the diagnostic client for one of the AST
      contexts is NULL.  Now we provide a form of Miranda
      rights to AST contexts: they are provided with a very
      simple diagnostic client if they do not have one
      themselves.
      
      llvm-svn: 121225
      e97ae90d
Loading