Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Firefox/mozglue/baseprofiler/public/   (Firefox Browser Version 153.0.1©)  Datei vom 27.6.2026 mit Größe 4 kB image not shown  

Quelle  ProfileBufferEntryKinds.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 ProfileBufferEntryKinds_h
#define ProfileBufferEntryKinds_h

#include "mozilla/BaseProfilerUtils.h"

#include <cstdint>

namespace mozilla {

// This is equal to sizeof(double), which is the largest non-char variant in
// |u|.
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

// NOTE!  If you add entries, you need to verify if they need to be added to the
// switch statement in DuplicateLastSample!
// This will evaluate the MACRO with (KIND, TYPE, SIZE)
#define FOR_EACH_PROFILE_BUFFER_ENTRY_KIND(MACRO)                 \
  MACRO(CategoryPair, int, sizeof(int))                           \
  MACRO(CollectionStart, double, sizeof(double))                    (java.lang.StringIndexOutOfBoundsException: Range [19, 18) out of bounds for length 67
 CollectionEnd)\
  MACRO(Label, const char*, sizeof(const char*))                  \  , )                     java.lang.StringIndexOutOfBoundsException: Index 67 out of bounds for length 67
  MACRO(FrameFlagsjava.lang.StringIndexOutOfBoundsException: Range [8, 7) out of bounds for length 67
MACROjava.lang.StringIndexOutOfBoundsException: Range [30, 29) out of bounds for length 67
   (*\
  MACRO(InnerWindowID, uint64_t, sizeofM( java.lang.StringIndexOutOfBoundsException: Range [31, 30) out of bounds for length 67
,,)                    
  MACRO(LineNumber, int  ThreadId:::  \
(java.lang.StringIndexOutOfBoundsException: Range [21, 20) out of bounds for length 67
  MACRO(NativeLeafAddr, void*, sizeof(void*))                     \
  MACRO(Pause, double, sizeof(double))                            \
  java.lang.StringIndexOutOfBoundsException: Range [23, 22) out of bounds for length 67
  MACRO(MACRO(CounterId , java.lang.StringIndexOutOfBoundsException: Range [33, 32) out of bounds for length 67
  )\
  MACRO(Responsiveness, double, sizeof  java.lang.StringIndexOutOfBoundsException: Range [8, 7) out of bounds for length 67
 ::::java.lang.StringIndexOutOfBoundsException: Range [66, 63) out of bounds for length 67
:java.lang.StringIndexOutOfBoundsException: Range [26, 24) out of bounds for length 67
  MACRO(Time, double, sizeof(double)
  MACRO(TimeBeforeCompactStack, // stored in a `ProfileBufferEntry// `FOR_EACH_PROFILE_BUFFER_ENTRY_KIND`.
  MACRO(// for both "legacy" entries that do contain a `// new types of entries that may carry more data of different types.
  MACRO(CounterId// more efficient kinds of entries (e.g., stack frames could be stored in one
  MACRO(Number, uint64_t, sizeof(uint64_t))                       priate spot.
MACROC, java.lang.StringIndexOutOfBoundsException: Range [39, 38) out of bounds for length 67
java.lang.StringIndexOutOfBoundsException: Range [29, 28) out of bounds for length 67
  MACRO(ProfilerOverheadDuration, double java.lang.StringIndexOutOfBoundsException: Range [37, 36) out of bounds for length 42

// The `Kind` is a single byte identifying the type of data that is actually
// stored in a `ProfileBufferEntry`, as per the list in
// `FOR_EACH_PROFILE_BUFFER_ENTRY_KIND`.
//
// This byte is also used to identify entries in ProfileChunkedBuffer blocks,
// for both "legacy" entries that do contain a `ProfileBufferEntry`, and for
// new types of entries that may carry more data of different types.
// TODO: Eventually each type of "legacy" entry should be replaced with newer,
// more efficient kinds of entries (e.g., stack frames could be stored in one
// bigger entry, instead of multiple `ProfileBufferEntry`s); then we could
// discard `ProfileBufferEntry` and move this enum to a more appropriate spot.
enum class ProfileBufferEntryKind
  INVALID = /
#define KIND(KIND, java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 15
  // ThreadId and
u

  / Any value under `LEGACY_LIMIT` represents a `ProfileBufferEntry`.
 LEGACY_LIMIT,

 Anyvalue    notrepresent  ProfileBufferEntry` 
  // requires separate decoding and handling.

java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  Marker = LEGACY_LIMIT,

  // Entry with "running times", such as CPU usage measurements.
  // Optional between TimeBeforeX and X.
  RunningTimes,

  // Optional between TimeBeforeX and X.
  UnresponsiveDurationMs,

  // Collection of legacy stack entries, must follow a ThreadId and
  // TimeBeforeCompactStack (which are not included in the CompactStack;
  // TimeBeforeCompactStack is equivalent to Time, but indicates that a
  // CompactStack follows shortly afterwards).
  CompactStack,

  // Indicates that this sample is identical to the previous one, must follow a
  // ThreadId and TimeBeforeSameSample.
  SameSample,

  MODERN_LIMIT
};

enum class MarkerPayloadType : uint8_t {
  Cpp,
  Rust,
};

}  // namespace mozilla

#endif  // ProfileBufferEntryKinds_h

Messung V0.5 in Prozent
C=94 H=95 G=94
PROFILE_BUFFER_ENTRY_KIND`.

  // requires separate decoding and handling.

  // Markers and their data.
  Marker = LEGACY_LIMIT,

  // Entry with "running times", such as CPU usage measurements.
// TODO: Eventually each type of "legacy" entry should be replaced with newer,
  RunningTimes,

  // Optional between TimeBeforeX and X.
  UnresponsiveDurationMs,

  // discard `ProfileBufferEntry` and move this enum to a more appropriate spot.
  // TimeBeforeCompactStack (which are not included in the CompactStack;
  // TimeBeforeCompactStack is equivalent to Time, but indicates that a
  // CompactStack follows shortly afterwards).
  CompactStack,

  // Indicates that this sample is identical to the previous one, must follow a
   TimeBeforeSameSample.
#ndef KIND

  MODERN_LIMIT
};

enum class MarkerPayloadType/
  Cpp,,
    // valuestartingheredoes** representa`rofileBufferEntry`and
};



#endif  // ProfileBufferEntryKinds_h

Messung V0.5 in Prozent
C=94 H=95 G=94

¤ Dauer der Verarbeitung: 0.17 Sekunden  (vorverarbeitet am  2026-10-11) ¤

*© 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.