mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-28 20:55:39 +00:00
Bug 1192786 - support an installed printer, for profiling. r=nbp
This commit is contained in:
parent
ed00523f8a
commit
057fb5a15a
@ -1525,7 +1525,7 @@ Assembler::spewData(BufferOffset addr, size_t numInstr, bool loadToPC)
|
||||
bool
|
||||
Assembler::spewDisabled()
|
||||
{
|
||||
return !JitSpewEnabled(JitSpew_Codegen);
|
||||
return !(JitSpewEnabled(JitSpew_Codegen) || printer_);
|
||||
}
|
||||
|
||||
void
|
||||
@ -1540,6 +1540,10 @@ Assembler::spew(const char* fmt, ...)
|
||||
void
|
||||
Assembler::spew(const char* fmt, va_list va)
|
||||
{
|
||||
if (printer_) {
|
||||
printer_->vprintf(fmt, va);
|
||||
printer_->put("\n");
|
||||
}
|
||||
js::jit::JitSpewVA(js::jit::JitSpew_Codegen, fmt, va);
|
||||
}
|
||||
|
||||
|
@ -1305,6 +1305,7 @@ class Assembler : public AssemblerShared
|
||||
|
||||
SpewNodes spewNodes_;
|
||||
uint32_t spewNext_;
|
||||
Sprinter* printer_;
|
||||
|
||||
bool spewDisabled();
|
||||
uint32_t spewResolve(Label* l);
|
||||
@ -1321,6 +1322,7 @@ class Assembler : public AssemblerShared
|
||||
: m_buffer(1, 1, 8, GetPoolMaxOffset(), 8, 0xe320f000, 0xeaffffff, GetNopFill()),
|
||||
#ifdef JS_DISASM_ARM
|
||||
spewNext_(1000),
|
||||
printer_(nullptr),
|
||||
#endif
|
||||
isFinished(false),
|
||||
dtmActive(false),
|
||||
@ -1381,6 +1383,7 @@ class Assembler : public AssemblerShared
|
||||
bool oom() const;
|
||||
|
||||
void setPrinter(Sprinter* sp) {
|
||||
printer_ = sp;
|
||||
}
|
||||
|
||||
static const Register getStackPointer() {
|
||||
|
Loading…
Reference in New Issue
Block a user