summaryrefslogtreecommitdiffstats
path: root/lldb/source/Target/PathMappingList.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Add reverse file remapping for breakpoint setTamas Berghammer2016-03-041-0/+21
| | | | | | | | | | | | | | LLDB can remap a source file to a new directory based on the "target.sorce-map" to handle the usecase when the source code moved between the compliation and the debugging. Previously the remapping was only used to display the content of the file. This CL fixes the scenario when a breakpoint is set based on the new an absolute path with adding an inverse remapping step before looking up the breakpoint location. Differential revision: http://reviews.llvm.org/D17848 llvm-svn: 262711
* Fix Clang-tidy modernize-use-nullptr warnings; other minor fixes.Eugene Zelenko2016-02-181-26/+15
| | | | llvm-svn: 261179
* Start converting usages of off_t to other types.Zachary Turner2014-07-021-2/+2
| | | | | | | | | | | | | | | | | | | | | | | off_t is a type which is used for file offsets. Even more specifically, it is only used by a limited number of C APIs that deal with files. Any usage of off_t where the variable is not intended to be used with one of these APIs is a bug, by definition. This patch corrects some easy mis-uses of off_t, generally by converting them to lldb::offset_t, but sometimes by using other types such as size_t, when appropriate. The use of off_t to represent these offsets has worked fine in practice on linux-y platforms, since we used _FILE_OFFSET_64 to guarantee that off_t was a uint64. On Windows, however, _FILE_OFFSET_64 is unrecognized, and off_t will always be 32-bit. So the usage of off_t on Windows actually leads to legitimate bugs. Reviewed by: Greg Clayton Differential Revision: http://reviews.llvm.org/D4358 llvm-svn: 212192
* sanitise sign comparisonsSaleem Abdulrasool2014-04-021-2/+2
| | | | | | | | This is a mechanical change addressing the various sign comparison warnings that are identified by both clang and gcc. This helps cleanup some of the warning spew that occurs during builds. llvm-svn: 205390
* <rdar://problem/12537646>Greg Clayton2013-03-141-8/+18
| | | | | | lldb remembers not-found source file, setting target.source-map doesn't make it re-check for it. Now this is fixed. Each time the source path remappings get updated, the modification ID in the PathMappingList gets bumped and then we know the re-check for sources. llvm-svn: 177125
* Fixed a bug in the path remapper that causedSean Callanan2012-09-261-1/+6
| | | | | | | | a crash if the path to be remaped was NULL. <rdar://problem/12371888> llvm-svn: 164653
* Reimplemented the code that backed the "settings" in lldb. There were many ↵Greg Clayton2012-08-221-0/+15
| | | | | | | | | | | | | issues with the previous implementation: - no setting auto completion - very manual and error prone way of getting/setting variables - tons of code duplication - useless instance names for processes, threads Now settings can easily be defined like option values. The new settings makes use of the "OptionValue" classes so we can re-use the option value code that we use to set settings in command options. No more instances, just "does the right thing". llvm-svn: 162366
* Fixed a logic error which stopped paths from being properly remapped.Greg Clayton2012-06-281-1/+1
| | | | llvm-svn: 159362
* <rdar://problem/11072382>Greg Clayton2012-03-191-0/+21
| | | | | | | | | | Fixed a case where the source path remappings on the module were too expensive to use when we try to verify (stat the file system) that the remapped path points to a valid file. Now we will use the lldb_private::Module path remappings (if any) when parsing the debug info without verifying that the paths exist so we don't slow down line table parsing speeds. llvm-svn: 153059
* Include limits.h for PATH_MAX.Benjamin Kramer2012-03-181-0/+1
| | | | llvm-svn: 153013
* <rdar://problem/8196933>Greg Clayton2012-03-151-9/+60
| | | | | | Use the metadata in the dSYM bundle Info.plist to remap source paths when they keys are available. llvm-svn: 152836
* rdar://problem/10227672Johnny Chen2011-12-121-5/+14
| | | | | | | | | | | | | | | | | | There were two problems associated with this radar: 1. "settings show target.source-map" failed to show the source-map after, for example, "settings set target.source-map /Volumes/data/lldb/svn/trunk/test/source-manager /Volumes/data/lldb/svn/trunk/test/source-manager/hidden" has been executed to set the source-map. 2. "list -n main" failed to display the source of the main() function after we properly set the source-map. The first was fixed by adding the missing functionality to TargetInstanceSettings::GetInstanceSettingsValue (Target.cpp) and updating the support files PathMappingList.h/.cpp; the second by modifying SourceManager.cpp to fix several places with incorrect logic. Also added a test case test_move_and_then_display_source() to TestSourceManager.py, which moves main.c to hidden/main.c, sets target.source-map to perform the directory mapping, and then verifies that "list -n main" can still show the main() function. llvm-svn: 146422
* Fixed the SymbolContext::DumpStopContext() to correctly indent and dumpGreg Clayton2011-04-231-0/+110
| | | | | | | | | | | | | | | | | inline contexts when the deepest most block is not inlined. Added source path remappings to the lldb_private::Target class that allow it to remap paths found in debug info so we can find source files that are elsewhere on the current system. Fixed disassembly by function name to disassemble inline functions that are inside other functions much better and to show enough context before the disassembly output so you can tell where things came from. Added the ability to get more than one address range from a SymbolContext class for the case where a block or function has discontiguous address ranges. llvm-svn: 130044
* Minor warning/error fixes.Eli Friedman2010-06-091-1/+2
| | | | llvm-svn: 105718
* Initial checkin of lldb code from internal Apple repo.Chris Lattner2010-06-081-0/+125
llvm-svn: 105619
OpenPOWER on IntegriCloud