Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Firefox/js/src/jit/   (Firefox Browser Version 153.0.1©)  Datei vom 27.6.2026 mit Größe 1 kB image not shown  

Quelle  GraphSpewer.h

  Sprache: C
 

/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */


#ifndef jit_GraphSpewer_h
#define jit_GraphSpewer_h

#ifdef JS_JITSPEW

#  include "js/TypeDecls.h"
#  include "vm/JSONPrinter.h"
#  include "wasm/WasmTypeDef.h"

namespace js {
namespace jit {

class BacktrackingAllocator;
class MDefinition;
class MIRGraph;
class MResumePoint;
class LNode;

class GraphSpewer : JSONPrinter {
 private:
  // Optional; wasm type information to be used when dumping MIR nodes.
  const wasm::CodeMetadata* wasmCodeMeta_;

  void beginPass(const char* pass);
  void spewMDef(MDefinition* def);
  void spewMResumePoint(MResumePoint* rp);
  void spewMIR(MIRGraph* mir);
  void spewLIns(LNode* ins);
  void spewLIR(MIRGraph* mir);
  void spewRanges(BacktrackingAllocator* regalloc);
  void endPass();

 public:
  explicit GraphSpewer(GenericPrinter& out,
                       const wasm::CodeMetadata* wasmCodeMeta = nullptr)
      : JSONPrinter(out, /*indent*/ false), wasmCodeMeta_(wasmCodeMeta) {}

  void begin();
  void beginFunction(JSScript* script);
  void beginWasmFunction(unsigned funcIndex);
  void beginAnonFunction();
  void spewPass(const char* pass, MIRGraph* graph,
                BacktrackingAllocator* ra = nullptr);
  void endFunction();
  void end();
};

using UniqueGraphSpewer = UniquePtr<GraphSpewer>;

}  // namespace jit
}  // namespace js

#endif /* JS_JITSPEW */

#endif /* jit_GraphSpewer_h */

Messung V0.5 in Prozent
C=89 H=100 G=94

¤ Dauer der Verarbeitung: 0.14 Sekunden  (vorverarbeitet am  2026-08-25) ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

PVS Prover

Isabelle Prover

NIST Cobol Testsuite

Cephes Mathematical Library

Vienna Development Method

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.