| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[LLDB] Update AArch64 Dwarf and EH frame register numbers This patch updates ARM64_ehframe_Registers.h and ARM64_DWARF_Registers.h with latest register numbers in line with AArch64 SVE support. For refernce take a look at "DWARF for the ARM® 64-bit Architecture (AArch64) with SVE support" manual from Arm. Version used: abi_sve_aadwarf_100985_0000_00_en.pdf | 5 年前 | |
[LLDB] Update AArch64 Dwarf and EH frame register numbers This patch updates ARM64_ehframe_Registers.h and ARM64_DWARF_Registers.h with latest register numbers in line with AArch64 SVE support. For refernce take a look at "DWARF for the ARM® 64-bit Architecture (AArch64) with SVE support" manual from Arm. Version used: abi_sve_aadwarf_100985_0000_00_en.pdf | 5 年前 | |
[lldb] Update header guards to be consistent and compliant with LLVM (NFC) LLDB has a few different styles of header guards and they're not very consistent because things get moved around or copy/pasted. This patch unifies the header guards across LLDB and converts everything to match LLVM's style. Differential revision: https://reviews.llvm.org/D74743 | 6 年前 | |
[lldb] Update header guards to be consistent and compliant with LLVM (NFC) LLDB has a few different styles of header guards and they're not very consistent because things get moved around or copy/pasted. This patch unifies the header guards across LLDB and converts everything to match LLVM's style. Differential revision: https://reviews.llvm.org/D74743 | 6 年前 | |
[lldb] Invert relationship between Process and AddressableBits (#85858) AddressableBits is in the Utility module of LLDB. It currently directly refers to Process, which is from the Target LLDB module. This is a layering violation which concretely means that it is impossible to link anything that uses Utility without it also using Target as well. This is generally not an issue for LLDB (since everything is built together) but it may make it difficult to write unit tests for AddressableBits later on. | 2 年前 | |
| 10 个月前 | ||
[ADT] Prepare to deprecate variadic StringSwitch::Cases. NFC. (#166020) Update all uses of variadic .Cases to use the initializer list overload instead. I plan to mark variadic .Cases as deprecated in a followup PR. For more context, see https://github.com/llvm/llvm-project/pull/163117. | 9 个月前 | |
[lldb][NFC] Fix all formatting errors in .cpp file headers Summary: A *.cpp file header in LLDB (and in LLDB) should like this: //===-- TestUtilities.cpp -------------------------------------------------===// However in LLDB most of our source files have arbitrary changes to this format and these changes are spreading through LLDB as folks usually just use the existing source files as templates for their new files (most notably the unnecessary editor language indicator -*- C++ -*- is spreading and in every review someone is pointing out that this is wrong, resulting in people pointing out that this is done in the same way in other files). This patch removes most of these inconsistencies including the editor language indicators, all the different missing/additional '-' characters, files that center the file name, missing trailing ===// (mostly caused by clang-format breaking the line). Reviewers: aprantl, espindola, jfb, shafik, JDevlieghere Reviewed By: JDevlieghere Subscribers: dexonsmith, wuzish, emaste, sdardis, nemanjai, kbarton, MaskRay, atanasyan, arphaman, jfb, abidh, jsji, JDevlieghere, usaxena95, lldb-commits Tags: #lldb Differential Revision: https://reviews.llvm.org/D73258 | 6 年前 | |
| 1 年前 | ||
[NFC][lldb] move DiagnosticsRendering to Host (#168696) NFC patch which moves DiagnosticsRendering from Utility to Host. This refactoring is needed for https://github.com/llvm/llvm-project/pull/168603. It adds a method to check whether the current terminal supports Unicode or not. This will be OS dependent and a better fit for Host. Since Utility cannot depend on Host, DiagnosticsRendering must live in Host instead. | 8 个月前 | |
[NFC][Support] Add llvm::uninitialized_copy (#138174) Add llvm::uninitialized_copy that accepts a range instead of start/end iterator for the source of the copy. | 1 年前 | |
[lldb] Use StringRef::{starts,ends}_with (NFC) This patch replaces uses of StringRef::{starts,ends}with with StringRef::{starts,ends}_with for consistency with std::{string,string_view}::{starts,ends}_with in C++20. I'm planning to deprecate and eventually remove StringRef::{starts,ends}with. | 2 年前 | |
[lldb][NFC] Fix all formatting errors in .cpp file headers Summary: A *.cpp file header in LLDB (and in LLDB) should like this: //===-- TestUtilities.cpp -------------------------------------------------===// However in LLDB most of our source files have arbitrary changes to this format and these changes are spreading through LLDB as folks usually just use the existing source files as templates for their new files (most notably the unnecessary editor language indicator -*- C++ -*- is spreading and in every review someone is pointing out that this is wrong, resulting in people pointing out that this is done in the same way in other files). This patch removes most of these inconsistencies including the editor language indicators, all the different missing/additional '-' characters, files that center the file name, missing trailing ===// (mostly caused by clang-format breaking the line). Reviewers: aprantl, espindola, jfb, shafik, JDevlieghere Reviewed By: JDevlieghere Subscribers: dexonsmith, wuzish, emaste, sdardis, nemanjai, kbarton, MaskRay, atanasyan, arphaman, jfb, abidh, jsji, JDevlieghere, usaxena95, lldb-commits Tags: #lldb Differential Revision: https://reviews.llvm.org/D73258 | 6 年前 | |
Reapply "lldb: Cache string hash during ConstString pool queries/insertions" Reverted due to an internally discovered lld crash due to the underlying StringMap changes, which turned out to be an existing lld bug that got tickled by the StringMap changes. That's addressed in dee8786f70a3d62b639113343fa36ef55bdbad63 so let's have another go with this change. Original commit message: lldb was rehashing the string 3 times (once to determine which StringMap to use, once to query the StringMap, once to insert) on insertion (twice on successful lookup). This patch allows the lldb to benefit from hash improvements in LLVM (from djbHash to xxh3). Though further changes would be needed to cache this value to disk - we shouldn't rely on the StringMap::hash remaining the same in the future/this value should not be serialized to disk. If we want cache this value StringMap should take a hashing template parameter to allow for a fixed hash to be requested. This reverts commit 5bc1adff69315dcef670e9fcbe04067b5d5963fb. Effectively reapplying the original 2e197602305be18b963928e6ae024a004a95af6d. | 2 年前 | |
[lldb] Refactor DataBuffer so we can map files as read-only Currently, all data buffers are assumed to be writable. This is a problem on macOS where it's not allowed to load unsigned binaries in memory as writable. To be more precise, MAP_RESILIENT_CODESIGN and MAP_RESILIENT_MEDIA need to be set for mapped (unsigned) binaries on our platform. Binaries are mapped through FileSystem::CreateDataBuffer which returns a DataBufferLLVM. The latter is backed by a llvm::WritableMemoryBuffer because every DataBuffer in LLDB is considered to be writable. In order to use a read-only llvm::MemoryBuffer I had to split our abstraction around it. This patch distinguishes between a DataBuffer (read-only) and WritableDataBuffer (read-write) and updates LLDB to use the appropriate one. rdar://74890607 Differential revision: https://reviews.llvm.org/D122856 | 4 年前 | |
[lldb] Refactor DataBuffer so we can map files as read-only Currently, all data buffers are assumed to be writable. This is a problem on macOS where it's not allowed to load unsigned binaries in memory as writable. To be more precise, MAP_RESILIENT_CODESIGN and MAP_RESILIENT_MEDIA need to be set for mapped (unsigned) binaries on our platform. Binaries are mapped through FileSystem::CreateDataBuffer which returns a DataBufferLLVM. The latter is backed by a llvm::WritableMemoryBuffer because every DataBuffer in LLDB is considered to be writable. In order to use a read-only llvm::MemoryBuffer I had to split our abstraction around it. This patch distinguishes between a DataBuffer (read-only) and WritableDataBuffer (read-write) and updates LLDB to use the appropriate one. rdar://74890607 Differential revision: https://reviews.llvm.org/D122856 | 4 年前 | |
Added the ability to cache the finalized symbol tables subsequent debug sessions to start faster. This is an updated version of the https://reviews.llvm.org/D113789 patch with the following changes: - We no longer modify modification times of the cache files - Use LLVM caching and cache pruning instead of making a new cache mechanism (See DataFileCache.h/.cpp) - Add signature to start of each file since we are not using modification times so we can tell when caches are stale and remove and re-create the cache file as files are changed - Add settings to control the cache size, disk percentage and expiration in days to keep cache size under control This patch enables symbol tables to be cached in the LLDB index cache directory. All cache files are in a single directory and the files use unique names to ensure that files from the same path will re-use the same file as files get modified. This means as files change, their cache files will be deleted and updated. The modification time of each of the cache files is not modified so that access based pruning of the cache can be implemented. The symbol table cache files start with a signature that uniquely identifies a file on disk and contains one or more of the following items: - object file UUID if available - object file mod time if available - object name for BSD archive .o files that are in .a files if available If none of these signature items are available, then the file will not be cached. This keeps temporary object files from expressions from being cached. When the cache files are loaded on subsequent debug sessions, the signature is compare and if the file has been modified (uuid changes, mod time changes, or object file mod time changes) then the cache file is deleted and re-created. Module caching must be enabled by the user before this can be used: symbols.enable-lldb-index-cache (boolean) = false (lldb) settings set symbols.enable-lldb-index-cache true There is also a setting that allows the user to specify a module cache directory that defaults to a directory that defaults to being next to the symbols.clang-modules-cache-path directory in a temp directory: (lldb) settings show symbols.lldb-index-cache-path /var/folders/9p/472sr0c55l9b20x2zg36b91h0000gn/C/lldb/IndexCache If this setting is enabled, the finalized symbol tables will be serialized and saved to disc so they can be quickly loaded next time you debug. Each module can cache one or more files in the index cache directory. The cache file names must be unique to a file on disk and its architecture and object name for .o files in BSD archives. This allows universal mach-o files to support caching multuple architectures in the same module cache directory. Making the file based on the this info allows this cache file to be deleted and replaced when the file gets updated on disk. This keeps the cache from growing over time during the compile/edit/debug cycle and prevents out of space issues. If the cache is enabled, the symbol table will be loaded from the cache the next time you debug if the module has not changed. The cache also has settings to control the size of the cache on disk. Each time LLDB starts up with the index cache enable, the cache will be pruned to ensure it stays within the user defined settings: (lldb) settings set symbols.lldb-index-cache-expiration-days <days> A value of zero will disable cache files from expiring when the cache is pruned. The default value is 7 currently. (lldb) settings set symbols.lldb-index-cache-max-byte-size <size> A value of zero will disable pruning based on a total byte size. The default value is zero currently. (lldb) settings set symbols.lldb-index-cache-max-percent <percentage-of-disk-space> A value of 100 will allow the disc to be filled to the max, a value of zero will disable percentage pruning. The default value is zero. Reviewed By: labath, wallace Differential Revision: https://reviews.llvm.org/D115324 | 4 年前 | |
[lldb] Support integer registers with more than 64 bits. (#166363) In this PR we are proposing to change LLDB codebase so that LLDB is able to print values of integer registers that have more than 64-bits (even if the number of bits is not equal to 128). --------- Co-authored-by: Matej Košík <matej.kosik@codasip.com> Co-authored-by: Jonas Devlieghere <jonas@devlieghere.com> | 8 个月前 | |
[lldb] Use llvm::erase_if (NFC) | 2 年前 | |
Try to unbreak lldb build after 973519826edb76 | 4 年前 | |
Factor out expression result error strings. | 2 年前 | |
Private process events were being delivered to the secondary listener (#98571) This fixes a bug where Process events were being delivered to secondary listeners when the Private state thread listener was processing the event. That meant the secondary listener could get an event before the Primary listener did. That in turn meant the state when the secondary listener got the event wasn't right yet. Plus it meant that the secondary listener saw more events than the primary (not all events get forwarded from the private to the public Process listener.) This bug became much more evident when we had a stop hook that did some work, since that delays the Primary listener event delivery. So I also added a stop-hook to the test, and put a little delay in as well. | 2 年前 | |
[lldb] Use llvm::replace (NFC) (#140343) | 1 年前 | |
[lldb] Eliminate SupportFileSP nullptr derefs (#168624) This patch fixes and eliminates the possibility of SupportFileSP ever being nullptr. The support file was originally treated like a value type, but became a polymorphic type and therefore has to be stored and passed around as a pointer. To avoid having all the callers check the validity of the pointer, I introduced the invariant that SupportFileSP is never null and always default constructed. However, without enforcement at the type level, that's fragile and indeed, we already identified two crashes where someone accidentally broke that invariant. This PR introduces a NonNullSharedPtr to prevent that. NonNullSharedPtr is a smart pointer wrapper around std::shared_ptr that guarantees the pointer is never null. If default-constructed, it creates a default-constructed instance of the contained type. Note that I'm using private inheritance because you shouldn't inherit from standard library classes due to the lack of virtual destructor. So while the new abstraction looks like a std::shared_ptr, it is in fact **not** a shared pointer. Given that our destructor is trivial, we could use public inheritance, but currently there's no need for it. rdar://164989579 | 8 个月前 | |
[lldb] Remove LLDB reproducers This patch removes the remaining reproducer code. The SBReproducer class remains for ABI stability but is just an empty shell. This completes the removal process outlined on the mailing list [1]. [1] https://lists.llvm.org/pipermail/lldb-dev/2021-September/017045.html | 3 年前 | |
[lldb] Adding pipe support to lldb_private::MainLoopWindows. (#145621) This updates MainLoopWindows to support events for reading from a pipe (both anonymous and named pipes) as well as sockets. This unifies both handle types using WSAWaitForMultipleEvents which can listen to both sockets and handles for change events. This should allow us to unify how we handle watching pipes/sockets on Windows and Posix systems. We can extend this in the future if we want to support watching other types, like files or even other events like a process life time. --------- Co-authored-by: Pavel Labath <pavel@labath.sk> | 1 年前 | |
[lldb] Fix typo: singposts -> signposts (NFC) | 1 年前 | |
[lldb] Make lldbassert fire only once per instance (#134343) The lldbassert macro in LLDB behaves like a regular assert when assertions are enabled, and otherwise prints a pretty backtrace and prompts the user to file a bug. By default, this is emitted as a diagnostic event, but vendors can provide their own behavior, for example pre-populating a bug report. Recently, we ran into an issue where an lldbassert (in the Swift language plugin) would fire excessively, to the point that it was interfering with the usability of the debugger. Once an lldbasser has fired, there's no point in bothering the user over and over again for the same problem. This PR solves the problem by introducing a static std::once_flag in the macro. This way, every lldbasser will fire at most once per lldb instance. rdar://148520448 | 1 年前 | |
[LLDB] Add log channel for InstrumentationRuntime plugins (#168508) This patch adds LLDBLog::InstrumentationRuntime as a log channel to provide an appropriate channel for instrumentation runtime plugins as previously one did not exist. A small use of the channel is added to illustrate its use. The logging added is not intended to be comprehensive. This is primarily motivated by an -fbounds-safety instrumentation plugin (https://github.com/swiftlang/llvm-project/pull/11835). rdar://164920875 | 8 个月前 | |
| 1 年前 | ||
[lldb] Log errors to the system log if they would otherwise get dropped (#111911) Log errors to the (always-on) system log if they would otherwise get dropped by LLDB_LOG_ERROR. | 1 年前 | |
[LLDB][LoongArch] Add LSX and LASX register definitions and operations With this patch, vector registers can be read and written when debugging a live process. Note: We currently assume that all LoongArch64 processors include the LSX and LASX extensions. To add test cases, the following modifications were also made: lldb/packages/Python/lldbsuite/test/lldbtest.py lldb/packages/Python/lldbsuite/test/make/Makefile.rules Reviewed By: DavidSpickett, SixWeining Pull Request: https://github.com/llvm/llvm-project/pull/120664 | 1 年前 | |
[lldb] Use StringRef::{starts,ends}_with (NFC) This patch replaces uses of StringRef::{starts,ends}with with StringRef::{starts,ends}_with for consistency with std::{string,string_view}::{starts,ends}_with in C++20. I'm planning to deprecate and eventually remove StringRef::{starts,ends}with. | 2 年前 | |
[lldb] Update header guards to be consistent and compliant with LLVM (NFC) LLDB has a few different styles of header guards and they're not very consistent because things get moved around or copy/pasted. This patch unifies the header guards across LLDB and converts everything to match LLVM's style. Differential revision: https://reviews.llvm.org/D74743 | 6 年前 | |
[lldb] Update header guards to be consistent and compliant with LLVM (NFC) LLDB has a few different styles of header guards and they're not very consistent because things get moved around or copy/pasted. This patch unifies the header guards across LLDB and converts everything to match LLVM's style. Differential revision: https://reviews.llvm.org/D74743 | 6 年前 | |
[lldb] Adds additional fields to ProcessInfo (#91544) To implement SaveCore for elf binaries we need to populate some additional fields in the prpsinfo struct. Those fields are the nice value of the process whose core is to be taken as well as a boolean flag indicating whether or not that process is a zombie. This commit adds those as well as tests to ensure that the values are consistent with expectations | 2 年前 | |
[LLDB][RISCV] Add RVV registers enums RVV stands for "RISC-V V Extension", which adds 32 vector registers, and seven unprivileged CSRs (vstart, vxsat, vxrm, vcsr, vtype, vl, vlenb) to a base scalar RISC-V ISA. The base vector extension is intended to provide general support for data-parallel execution within the 32-bit instruction encoding space, with later vector extensions supporting richer functionality for certain domains. Reviewed By: DavidSpickett, kito-cheng Differential Revision: https://reviews.llvm.org/D141898 | 3 年前 | |
[lldb] Correctly fix a usage of PATH_MAX, and fix unit tests (#104502) # Part 1: Correctly fix a usage of PATH_MAX TL;DR: Adding a typedef lldb_private::PathSmallString which contains a hardcoded initial size (128). # Part 2: Fix unit tests After https://github.com/llvm/llvm-project/pull/104493 fixed the build break for Windows, unit test failure showed up for Windows. The root-cause is that the FileSpec's in the unit tests are not style-specific. The fix is to apply either WindowsSpec or PosixSpec specifically. | 1 年前 | |
[lldb] Support integer registers with more than 64 bits. (#166363) In this PR we are proposing to change LLDB codebase so that LLDB is able to print values of integer registers that have more than 64-bits (even if the number of bits is not equal to 128). --------- Co-authored-by: Matej Košík <matej.kosik@codasip.com> Co-authored-by: Jonas Devlieghere <jonas@devlieghere.com> | 8 个月前 | |
[lldb] Support case-insensitive regex matches (#95350) Support case-insensitive regex matches for SBTarget::FindGlobalFunctions and SBTarget::FindGlobalVariables. | 2 年前 | |
[lldb] Use APSInt's right shift operator in Scalar (#160149) Right shift operator in Scalar didn't check if the value is unsigned to perform a logical right shift. Use the right shift operator from APSInt that does this check. | 10 个月前 | |
[lldb] Fixing warnings / win32 builds in MainLoop. (#146632) Commit 1a7b7e24bcc1041ae0fb90abcfb73d36d76f4a07 introduced a few casting warnings and a build issue in Win32 platforms. Trying to correct the casts to c++ style casts instead of C style casts. | 1 年前 | |
[lldb][NFC] Fix all formatting errors in .cpp file headers Summary: A *.cpp file header in LLDB (and in LLDB) should like this: //===-- TestUtilities.cpp -------------------------------------------------===// However in LLDB most of our source files have arbitrary changes to this format and these changes are spreading through LLDB as folks usually just use the existing source files as templates for their new files (most notably the unnecessary editor language indicator -*- C++ -*- is spreading and in every review someone is pointing out that this is wrong, resulting in people pointing out that this is done in the same way in other files). This patch removes most of these inconsistencies including the editor language indicators, all the different missing/additional '-' characters, files that center the file name, missing trailing ===// (mostly caused by clang-format breaking the line). Reviewers: aprantl, espindola, jfb, shafik, JDevlieghere Reviewed By: JDevlieghere Subscribers: dexonsmith, wuzish, emaste, sdardis, nemanjai, kbarton, MaskRay, atanasyan, arphaman, jfb, abidh, jsji, JDevlieghere, usaxena95, lldb-commits Tags: #lldb Differential Revision: https://reviews.llvm.org/D73258 | 6 年前 | |
[lldb] Expose structured errors in SBError (#120784) Building on top of previous work that exposed expression diagnostics via SBCommandReturnObject, this patch generalizes the support to expose any SBError as machine-readable structured data. One use-case of this is to allow IDEs to better visualize expression diagnostics. rdar://139997604 | 1 年前 | |
[lldb] Fix indentation when printing stop hooks (#165945) This commit aggregates the following changes: 1. Fix the format (i.e., indentation) when printing stop hooks via target stop-hook list. 2. Add IndentScope Stream::MakeIndentScope() to make managing (and restoring!) of the indentation level on Stream instances more ergonomic and less error prone. 3. Simplify printing of stop hooks using the new IndentScope. | 9 个月前 | |
[lldb] Add color support to StreamString (#77380) This change just adds a bool colors parameter to the StreamString class's constructor, which it passes up to its superclass’s constructor. I'm working on another patch that prints out error messages using a StreamString but I wasn't getting colorized text because of this missing implementation detail. rdar://120671168 | 2 年前 | |
[lldb] Use StringRef::{starts,ends}_with (NFC) This patch replaces uses of StringRef::{starts,ends}with with StringRef::{starts,ends}_with for consistency with std::{string,string_view}::{starts,ends}_with in C++20. I'm planning to deprecate and eventually remove StringRef::{starts,ends}with. | 2 年前 | |
[lldb] Remove redundant declarations (NFC) (#169003) In C++17, static constexpr members are implicitly inline, so they no longer require an out-of-line definition. Identified with readability-redundant-declaration. | 8 个月前 | |
[lldb][NFC] Use C++ versions of the deprecated C standard library headers The C headers are deprecated so as requested in D102845, this is replacing them all with their (not deprecated) C++ equivalent. Reviewed By: shafik Differential Revision: https://reviews.llvm.org/D103084 | 5 年前 | |
Move from llvm::makeArrayRef to ArrayRef deduction guides - last part This is a follow-up to https://reviews.llvm.org/D140896, split into several parts as it touches a lot of files. Differential Revision: https://reviews.llvm.org/D141298 | 3 年前 | |
[lldb] Make conversions from llvm::Error explicit with Status::FromEr… (#107163) …ror() [NFC] | 1 年前 | |
[lldb] Use StringRef::{starts,ends}_with (NFC) This patch replaces uses of StringRef::{starts,ends}with with StringRef::{starts,ends}_with for consistency with std::{string,string_view}::{starts,ends}_with in C++20. I'm planning to deprecate and eventually remove StringRef::{starts,ends}with. | 2 年前 | |
[lldb][NFCI] Timer::DumpCategoryTimes should take a reference instead of a pointer We are assuming that the pointer is always valid, might as well take a reference instead. Differential Revision: https://reviews.llvm.org/D153711 | 3 年前 | |
JSON: llvm::Optional => std::optional Many files are from language servers. https://discourse.llvm.org/t/deprecating-llvm-optional-x-hasvalue-getvalue-getvalueor/63716 | 3 年前 | |
JSON: llvm::Optional => std::optional Many files are from language servers. https://discourse.llvm.org/t/deprecating-llvm-optional-x-hasvalue-getvalue-getvalueor/63716 | 3 年前 | |
[lldb] uint8_t -> unsigned short in std::independent_bits_engine According to [1], the template parameter must be cv-unqualified and one of unsigned short, unsigned int, unsigned long, or unsigned long long. Should fix the following MSVC error: error: static assertion failed due to requirement '_Is_any_of_v<unsigned char, unsigned short, unsigned int, unsigned long, unsigned long long>': invalid template argument for independent_bits_engine: N4659 [1] https://en.cppreference.com/w/cpp/numeric/random/independent_bits_engine | 1 年前 | |
[lldb/Utility] Introduce UnimplementedError This is essentially a replacement for the PacketUnimplementedError previously present in the gdb-remote server code. The reason I am introducing a generic error is because I wanted the native process classes to be able to signal that they do not support some functionality. They could not use PacketUnimplementedError as they are independent of a specific transport protocol. Putting the error class in the the native process code was also not ideal because the gdb-remote code is also used for lldb-server's platform mode, which does not (should not) know how to debug individual processes. I'm putting it under Utility, as I think it can be generally useful for notifying about unsupported/unimplemented functionality (and in particular, for programatically testing whether something is unsupported). Differential Revision: https://reviews.llvm.org/D89121 | 5 年前 | |
Use StringRef::starts_with (NFC) (#94112) | 2 年前 | |
[lldb][NFC] Use C++ versions of the deprecated C standard library headers The C headers are deprecated so as requested in D102845, this is replacing them all with their (not deprecated) C++ equivalent. Reviewed By: shafik Differential Revision: https://reviews.llvm.org/D103084 | 5 年前 | |
[lldb] Use std::optional instead of llvm::Optional (NFC) This patch replaces (llvm::|)Optional< with std::optional<. I'll post a separate patch to clean up the "using" declarations, #include "llvm/ADT/Optional.h", etc. This is part of an effort to migrate from llvm::Optional to std::optional: https://discourse.llvm.org/t/deprecating-llvm-optional-x-hasvalue-getvalue-getvalueor/63716 | 3 年前 | |
[lldb][NFC] Use C++ versions of the deprecated C standard library headers The C headers are deprecated so as requested in D102845, this is replacing them all with their (not deprecated) C++ equivalent. Reviewed By: shafik Differential Revision: https://reviews.llvm.org/D103084 | 5 年前 | |
Use llvm::any_of and llvm::none_of (NFC) | 4 年前 | |
[lldb] Support DW_OP_WASM_location in DWARFExpression (#151010) Add support for DW_OP_WASM_location in DWARFExpression. This PR rebases #78977 and cleans up the unit test. The DWARF extensions are documented at https://yurydelendik.github.io/webassembly-dwarf/ and supported by LLVM-based toolchains such as Clang, Swift, Emscripten, and Rust. | 1 年前 | |
[lldb] Correct bridgeOS -> BridgeOS spelling (#163479) The BridgeOS SDK is capitalized, but previously failed to parse because we were looking for bridgeOS. This PR updates the enum value and the canonical spelling. rdar://162641896 | 9 个月前 | |
[lldb][Android] Support zip .so file In Android API level 23 and above, dynamic loader is able to load .so file directly from APK, which is zip file. https://android.googlesource.com/platform/bionic/+/master/ android-changes-for-ndk-developers.md# opening-shared-libraries-directly-from-an-apk The .so file is page aligned and uncompressed, so ObjectFileELF::GetModuleSpecifications works with .so file offset and size directly from zip file without extracting it. (D152757) GDBRemoteCommunicationServerCommon::GetModuleInfo returns a module spec to LLDB with "zip_path!/so_path" file spec, which is passed through from Android dynamic loader, and the .so file offset and size. PlatformAndroid::DownloadModuleSlice uses 'shell dd' to download the .so file slice from the zip file with the .so file offset and size. Differential Revision: https://reviews.llvm.org/D152759 | 3 年前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 5 年前 | ||
| 5 年前 | ||
| 6 年前 | ||
| 6 年前 | ||
| 2 年前 | ||
| 10 个月前 | ||
| 9 个月前 | ||
| 6 年前 | ||
| 1 年前 | ||
| 8 个月前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 6 年前 | ||
| 2 年前 | ||
| 4 年前 | ||
| 4 年前 | ||
| 4 年前 | ||
| 8 个月前 | ||
| 2 年前 | ||
| 4 年前 | ||
| 2 年前 | ||
| 2 年前 | ||
| 1 年前 | ||
| 8 个月前 | ||
| 3 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 8 个月前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 6 年前 | ||
| 6 年前 | ||
| 2 年前 | ||
| 3 年前 | ||
| 1 年前 | ||
| 8 个月前 | ||
| 2 年前 | ||
| 10 个月前 | ||
| 1 年前 | ||
| 6 年前 | ||
| 1 年前 | ||
| 9 个月前 | ||
| 2 年前 | ||
| 2 年前 | ||
| 8 个月前 | ||
| 5 年前 | ||
| 3 年前 | ||
| 1 年前 | ||
| 2 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 1 年前 | ||
| 5 年前 | ||
| 2 年前 | ||
| 5 年前 | ||
| 3 年前 | ||
| 5 年前 | ||
| 4 年前 | ||
| 1 年前 | ||
| 9 个月前 | ||
| 3 年前 |