arch-arm: gdb support Thumb ISA
BaseRemoteGDB only checks if the breakpoint size equals to MachInst size. However, there are two kinds of instruction size in ARM. We should allow the 16-bits breakpoint for Thumb ISA. Change-Id: I79c0e1503092ecf233c719f2e354739edb8e6b25 Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/52624 Reviewed-by: Gabe Black <gabe.black@gmail.com> Reviewed-by: Giacomo Travaglini <giacomo.travaglini@arm.com> Maintainer: Gabe Black <gabe.black@gmail.com> Maintainer: Giacomo Travaglini <giacomo.travaglini@arm.com> Tested-by: kokoro <noreply+kokoro@google.com>
This commit is contained in:
@@ -361,4 +361,11 @@ RemoteGDB::gdbRegs()
|
||||
return ®Cache32;
|
||||
}
|
||||
|
||||
bool
|
||||
RemoteGDB::checkBpLen(size_t len)
|
||||
{
|
||||
// 2 for Thumb ISA, 4 for ARM ISA.
|
||||
return len == 2 || len == 4;
|
||||
}
|
||||
|
||||
} // namespace gem5
|
||||
|
||||
@@ -120,6 +120,7 @@ class RemoteGDB : public BaseRemoteGDB
|
||||
public:
|
||||
RemoteGDB(System *_system, int _port);
|
||||
BaseGdbRegCache *gdbRegs() override;
|
||||
bool checkBpLen(size_t len) override;
|
||||
std::vector<std::string>
|
||||
availableFeatures() const override
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user