diff options
Diffstat (limited to 'js/src/jit/CacheIRSpewer.cpp')
-rw-r--r-- | js/src/jit/CacheIRSpewer.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/js/src/jit/CacheIRSpewer.cpp b/js/src/jit/CacheIRSpewer.cpp index 613e0f7d85..fbc8a50b04 100644 --- a/js/src/jit/CacheIRSpewer.cpp +++ b/js/src/jit/CacheIRSpewer.cpp @@ -71,6 +71,10 @@ class MOZ_RAII CacheIROpsJitSpewer { void spewJSOpImm(const char* name, JSOp op) { out_.printf("%s JSOp::%s", name, CodeName(op)); } + void spewTypeofEqOperandImm(const char* name, TypeofEqOperand operand) { + out_.printf("%s %s %s", name, JSTypeToString(operand.type()), + CodeName(operand.compareOp())); + } void spewStaticStringImm(const char* name, const char* str) { out_.printf("%s \"%s\"", name, str); } @@ -223,6 +227,9 @@ class MOZ_RAII CacheIROpsJSONSpewer { void spewJSOpImm(const char* name, JSOp op) { spewArgImpl(name, "JSOp", CodeName(op)); } + void spewTypeofEqOperandImm(const char* name, TypeofEqOperand operand) { + spewArgImpl(name, "TypeofEqOperand", uint8_t(operand.rawValue())); + } void spewStaticStringImm(const char* name, const char* str) { spewArgImpl(name, "String", str); } @@ -430,6 +437,15 @@ void CacheIRSpewer::opcodeProperty(const char* name, const JSOp op) { j.endStringProperty(); } +void CacheIRSpewer::jstypeProperty(const char* name, const JSType type) { + MOZ_ASSERT(enabled()); + JSONPrinter& j = json_.ref(); + + j.beginStringProperty(name); + output_.put(JSTypeToString(type)); + j.endStringProperty(); +} + void CacheIRSpewer::cacheIRSequence(CacheIRReader& reader) { MOZ_ASSERT(enabled()); JSONPrinter& j = json_.ref(); |