mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-15 14:25:52 +00:00
Bug 1071604 - Mechanisms for triggering the ARM simulator's REPL. r=mjrosenb
This commit is contained in:
parent
76043a5642
commit
3bbcf48581
@ -3715,6 +3715,16 @@ MacroAssemblerARMCompat::breakpoint()
|
||||
as_bkpt();
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssemblerARMCompat::simulatorStop(const char* msg)
|
||||
{
|
||||
#if defined(JS_ARM_SIMULATOR)
|
||||
JS_ASSERT(sizeof(char*) == 4);
|
||||
writeInst(0xefffffff);
|
||||
writeInst((int)msg);
|
||||
#endif
|
||||
}
|
||||
|
||||
void
|
||||
MacroAssemblerARMCompat::ensureDouble(const ValueOperand &source, FloatRegister dest, Label *failure)
|
||||
{
|
||||
|
@ -1451,6 +1451,11 @@ class MacroAssemblerARMCompat : public MacroAssemblerARM
|
||||
// Conditional breakpoint.
|
||||
void breakpoint(Condition cc);
|
||||
|
||||
// Trigger the simulator's interactive read-eval-print loop.
|
||||
// The message will be printed at the stopping point.
|
||||
// (On non-simulator builds, does nothing.)
|
||||
void simulatorStop(const char* msg);
|
||||
|
||||
void compareDouble(FloatRegister lhs, FloatRegister rhs);
|
||||
void branchDouble(DoubleCondition cond, FloatRegister lhs, FloatRegister rhs,
|
||||
Label *label);
|
||||
|
@ -651,6 +651,7 @@ ReadLine(const char *prompt)
|
||||
return result;
|
||||
}
|
||||
|
||||
// Observe that llvm-mc may have a different name on your system. Make a symlink.
|
||||
static void
|
||||
DisassembleInstruction(uint32_t pc)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user