-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathtypes.h
90 lines (86 loc) · 1.61 KB
/
types.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
// Copyright 2010 fail0verflow <master@fail0verflow.com>
// Licensed under the terms of the GNU GPL, version 2
// http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt
#ifndef TYPES_H__
#define TYPES_H__
typedef unsigned long long u64;
typedef unsigned int u32;
typedef unsigned short u16;
typedef unsigned char u8;
typedef unsigned char u1;
typedef signed long long s64;
typedef signed int s32;
typedef signed short s16;
typedef signed char s8;
// static inline u8 be8(u8 *p)
// {
// return *p;
// }
//
// static inline u16 be16(u8 *p)
// {
// u16 a;
//
// a = p[0] << 8;
// a |= p[1];
//
// return a;
// }
//
// static inline u32 be32(u8 *p)
// {
// u32 a;
//
// a = p[0] << 24;
// a |= p[1] << 16;
// a |= p[2] << 8;
// a |= p[3] << 0;
//
// return a;
// }
//
// static inline u64 be64(u8 *p)
// {
// u32 a, b;
//
// a = be32(p);
// b = be32(p + 4);
//
// return ((u64)a<<32) | b;
// }
//
// static inline void wbe16(u8 *p, u16 v)
// {
// p[0] = v >> 8;
// p[1] = v;
// }
//
// static inline void wbe32(u8 *p, u32 v)
// {
// p[0] = v >> 24;
// p[1] = v >> 16;
// p[2] = v >> 8;
// p[3] = v;
// }
//
// static inline void wbe64(u8 *p, u64 v)
// {
// wbe32(p + 4, v);
// v >>= 32;
// wbe32(p, v);
// }
//
//
// // sign extension for immediate values inside opcodes
// static inline u32 se(u32 v, int b)
// {
// v <<= 32-b;
// v = ((s32)v) >> (32-b);
// return v;
// }
//
// static inline u32 se7(u32 v) { return se(v, 7); }
// static inline u32 se10(u32 v) { return se(v, 10); }
// static inline u32 se16(u32 v) { return se(v, 16); }
// static inline u32 se18(u32 v) { return se(v, 18); }
#endif