grpc
third_party
bloaty
third_party
capstone
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
21
#include "
include/capstone/capstone.h
"
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 Fri May 16 2025 02:59:15