forked from OSchip/llvm-project
Changed the register number lists for the qRegisterInfo packet response to be raw hex to match all other register reading and writing APIs.
llvm-svn: 173105
This commit is contained in:
parent
3dd50a498d
commit
0ba20241a6
|
@ -371,15 +371,15 @@ generic If the register is a generic register that most CPUs have, classify
|
|||
arguments when the argument fits into a register)
|
||||
|
||||
container-regs
|
||||
The value for this key is a comma separated list of decimal register
|
||||
numbers.
|
||||
The value for this key is a comma separated list of raw hex (no
|
||||
leading "0x") register numbers.
|
||||
|
||||
This specifies that this register is contained in other concrete
|
||||
register values. For example "eax" is in the lower 32 bits of the
|
||||
"rax" register value for x86_64, so "eax" could specify that it is
|
||||
contained in "rax" by specifying the register number for "rax".
|
||||
|
||||
"container-regs:0,1;"
|
||||
"container-regs:00,0a,3b;"
|
||||
|
||||
This is handy for defining what GDB used to call "pseudo" registers.
|
||||
These registers are never requested by LLDB via the register read
|
||||
|
@ -387,13 +387,13 @@ container-regs
|
|||
of this register.
|
||||
|
||||
invalidate-regs
|
||||
The value for this key is a comma separated list of decimal register
|
||||
numbers.
|
||||
The value for this key is a comma separated list of raw hex (no
|
||||
leading "0x") register numbers.
|
||||
|
||||
This specifies which register values should be invalidated when this
|
||||
register is modified.
|
||||
|
||||
"invalidate-regs:1,2,3;"
|
||||
"invalidate-regs:01,0b,1e;"
|
||||
|
||||
This is handy when modifying a specific register can cause other
|
||||
register values to change. For example, when debugging an ARM target,
|
||||
|
|
|
@ -382,7 +382,9 @@ ProcessGDBRemote::BuildDynamicRegisterInfo (bool force)
|
|||
value_pair = value_pair.second.split(',');
|
||||
if (!value_pair.first.empty())
|
||||
{
|
||||
value_regs.push_back (Args::StringToUInt32 (value_pair.first.str().c_str()));
|
||||
uint32_t reg = Args::StringToUInt32 (value_pair.first.str().c_str(), LLDB_INVALID_REGNUM, 16);
|
||||
if (reg != LLDB_INVALID_REGNUM)
|
||||
value_regs.push_back (reg);
|
||||
}
|
||||
} while (!value_pair.second.empty());
|
||||
}
|
||||
|
@ -395,7 +397,9 @@ ProcessGDBRemote::BuildDynamicRegisterInfo (bool force)
|
|||
value_pair = value_pair.second.split(',');
|
||||
if (!value_pair.first.empty())
|
||||
{
|
||||
invalidate_regs.push_back (Args::StringToUInt32 (value_pair.first.str().c_str()));
|
||||
uint32_t reg = Args::StringToUInt32 (value_pair.first.str().c_str(), LLDB_INVALID_REGNUM, 16);
|
||||
if (reg != LLDB_INVALID_REGNUM)
|
||||
invalidate_regs.push_back (reg);
|
||||
}
|
||||
} while (!value_pair.second.empty());
|
||||
}
|
||||
|
|
|
@ -1572,7 +1572,7 @@ RNBRemote::HandlePacket_qRegisterInfo (const char *p)
|
|||
{
|
||||
if (i > 0)
|
||||
ostrm << ',';
|
||||
ostrm << DECIMAL << reg_entry->nub_info.update_regs[i];
|
||||
ostrm << RAW_HEXBASE << reg_entry->nub_info.update_regs[i];
|
||||
}
|
||||
ostrm << ';';
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue