include: Add a lookup table of sizes
[qemu/ar7.git] / include / qemu / units.h
blob68a77586504e85885807ad76128789d9640b8919
1 /*
2 * IEC binary prefixes definitions
4 * Copyright (C) 2015 Nikunj A Dadhania, IBM Corporation
5 * Copyright (C) 2018 Philippe Mathieu-Daudé <f4bug@amsat.org>
7 * SPDX-License-Identifier: GPL-2.0-or-later
8 */
10 #ifndef QEMU_UNITS_H
11 #define QEMU_UNITS_H
13 #define KiB (INT64_C(1) << 10)
14 #define MiB (INT64_C(1) << 20)
15 #define GiB (INT64_C(1) << 30)
16 #define TiB (INT64_C(1) << 40)
17 #define PiB (INT64_C(1) << 50)
18 #define EiB (INT64_C(1) << 60)
20 #define S_1KiB 1024
21 #define S_2KiB 2048
22 #define S_4KiB 4096
23 #define S_8KiB 8192
24 #define S_16KiB 16384
25 #define S_32KiB 32768
26 #define S_64KiB 65536
27 #define S_128KiB 131072
28 #define S_256KiB 262144
29 #define S_512KiB 524288
30 #define S_1MiB 1048576
31 #define S_2MiB 2097152
32 #define S_4MiB 4194304
33 #define S_8MiB 8388608
34 #define S_16MiB 16777216
35 #define S_32MiB 33554432
36 #define S_64MiB 67108864
37 #define S_128MiB 134217728
38 #define S_256MiB 268435456
39 #define S_512MiB 536870912
40 #define S_1GiB 1073741824
41 #define S_2GiB 2147483648
42 #define S_4GiB 4294967296
43 #define S_8GiB 8589934592
44 #define S_16GiB 17179869184
45 #define S_32GiB 34359738368
46 #define S_64GiB 68719476736
47 #define S_128GiB 137438953472
48 #define S_256GiB 274877906944
49 #define S_512GiB 549755813888
50 #define S_1TiB 1099511627776
51 #define S_2TiB 2199023255552
52 #define S_4TiB 4398046511104
53 #define S_8TiB 8796093022208
54 #define S_16TiB 17592186044416
55 #define S_32TiB 35184372088832
56 #define S_64TiB 70368744177664
57 #define S_128TiB 140737488355328
58 #define S_256TiB 281474976710656
59 #define S_512TiB 562949953421312
60 #define S_1PiB 1125899906842624
61 #define S_2PiB 2251799813685248
62 #define S_4PiB 4503599627370496
63 #define S_8PiB 9007199254740992
64 #define S_16PiB 18014398509481984
65 #define S_32PiB 36028797018963968
66 #define S_64PiB 72057594037927936
67 #define S_128PiB 144115188075855872
68 #define S_256PiB 288230376151711744
69 #define S_512PiB 576460752303423488
70 #define S_1EiB 1152921504606846976
71 #define S_2EiB 2305843009213693952
72 #define S_4EiB 4611686018427387904
73 #define S_8EiB 9223372036854775808
75 #endif