LEB128.h
Go to the documentation of this file.
1 //===- llvm/Support/LEB128.h - [SU]LEB128 utility functions -----*- C++ -*-===//
2 //
3 // The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 //
10 // This file declares some utility functions for encoding SLEB128 and
11 // ULEB128 values.
12 //
13 //===----------------------------------------------------------------------===//
14 
15 /* Capstone Disassembly Engine */
16 /* By Nguyen Anh Quynh <aquynh@gmail.com>, 2013-2015 */
17 
18 #ifndef CS_LLVM_SUPPORT_LEB128_H
19 #define CS_LLVM_SUPPORT_LEB128_H
20 
22 
24 static inline uint64_t decodeULEB128(const uint8_t *p, unsigned *n)
25 {
26  const uint8_t *orig_p = p;
27  uint64_t Value = 0;
28  unsigned Shift = 0;
29  do {
30  Value += (uint64_t)(*p & 0x7f) << Shift;
31  Shift += 7;
32  } while (*p++ >= 128);
33  if (n)
34  *n = (unsigned)(p - orig_p);
35  return Value;
36 }
37 
38 #endif // LLVM_SYSTEM_LEB128_H
xds_manager.p
p
Definition: xds_manager.py:60
uint8_t
unsigned char uint8_t
Definition: stdint-msvc2008.h:78
capstone.h
decodeULEB128
static uint64_t decodeULEB128(const uint8_t *p, unsigned *n)
Utility function to decode a ULEB128 value.
Definition: LEB128.h:24
uint64_t
unsigned __int64 uint64_t
Definition: stdint-msvc2008.h:90
n
int n
Definition: abseil-cpp/absl/container/btree_test.cc:1080
Value
struct Value Value
Definition: bloaty/third_party/protobuf/php/ext/google/protobuf/protobuf.h:676


grpc
Author(s):
autogenerated on Thu Mar 13 2025 03:00:28