[lldb][NFC] Refactor Watchpoint class Refactor watchpoint logic 1/2 This patch refactors the Watchpoint class to prepare for future code improvements. The core changes include: * Adding check logic to the stoppoint side This patch adds a ShouldReport method to the Watchpoint class. This method implements the logic from PerformAction for determining whether a watchpoint hit should be reported. While the original logic in StopInfoWatchpoint remains unchanged for now, ShouldReport allows to simplify PerformAction and reduce coupling between the classes in the subsequent patch. * Preparing to eliminate redundant calculations Currently, WatchedValueReportable and CaptureWatchedValue contain duplicated code for calculating the watched value. Since PerformAction calls these methods sequentially, the value is computed twice. Consolidation of logic in ShouldReport provides the ability to remove the code duplication and redundant calculations in the next patch. Note that this patch doesn't use new functions yet. This is just a preparatory step that facilitates the subsequent refactoring of PerformAction logic.
Welcome to the LLVM project!
This repository contains the source code for LLVM, a toolkit for the construction of highly optimized compilers, optimizers, and run-time environments.
The LLVM project has multiple components. The core of the project is itself called “LLVM”. This contains all of the tools, libraries, and header files needed to process intermediate representations and convert them into object files. Tools include an assembler, disassembler, bitcode analyzer, and bitcode optimizer.
C-like languages use the Clang frontend. This component compiles C, C++, Objective-C, and Objective-C++ code into LLVM bitcode -- and from there into object files, using LLVM.
Other components include: the libc++ C++ standard library, the LLD linker, and more.
Consult the Getting Started with LLVM page for information on building and running LLVM.
For information on how to contribute to the LLVM project, please take a look at the Contributing to LLVM guide.
Join the LLVM Discourse forums, Discord chat, LLVM Office Hours or Regular sync-ups.
The LLVM project has adopted a code of conduct for participants to all modes of communication within the project.