4 _ReadSLEB (unsigned char **dpp
)
7 unw_word_t byte
, result
= 0;
8 unsigned char *bp
= *dpp
;
13 result
|= (byte
& 0x7f) << shift
;
15 if ((byte
& 0x80) == 0)
19 if (shift
< 8 * sizeof (unw_word_t
) && (byte
& 0x40) != 0)
20 /* sign-extend negative value */
21 result
|= ((unw_word_t
) -1) << shift
;