19 "RISC-V-specific algorithms",
29 if (machine != llvm::Triple::riscv32 && machine != llvm::Triple::riscv64)
35 llvm::ArrayRef<uint8_t> reference, llvm::ArrayRef<uint8_t> observed)
const {
39 if ((reference.size() != 2 && reference.size() != 4) ||
40 reference.size() > observed.size())
43 return reference == observed.take_front(reference.size());
#define LLDB_PLUGIN_DEFINE(PluginName)
An architecture specification class.
llvm::Triple::ArchType GetMachine() const
Returns a machine family for the current architecture.
static std::unique_ptr< Architecture > Create(const ArchSpec &arch)
bool IsValidTrapInstruction(llvm::ArrayRef< uint8_t > reference, llvm::ArrayRef< uint8_t > observed) const override
Returns whether a given byte sequence is a valid trap instruction for the architecture.
static llvm::StringRef GetPluginNameStatic()
ArchitectureRISCV()=default
static bool RegisterPlugin(llvm::StringRef name, llvm::StringRef description, ABICreateInstance create_callback)
static bool UnregisterPlugin(ABICreateInstance create_callback)
A class that represents a running process on the host machine.