1 // BranchRegister.cpp
2
3 #include "StdAfx.h"
4
5 #include "../Common/RegisterCodec.h"
6
7 #include "BranchMisc.h"
8
9 namespace NCompress {
10 namespace NBranch {
11
12 #ifdef Z7_EXTRACT_ONLY
13 #define GET_CREATE_FUNC(x) NULL
14 #define CREATE_BRA_E(n)
15 #else
16 #define GET_CREATE_FUNC(x) x
17 #define CREATE_BRA_E(n) \
18 REGISTER_FILTER_CREATE(CreateBra_Encoder_ ## n, CCoder(Z7_BRANCH_CONV_ENC(n)))
19 #endif
20
21 #define CREATE_BRA(n) \
22 REGISTER_FILTER_CREATE(CreateBra_Decoder_ ## n, CCoder(Z7_BRANCH_CONV_DEC(n))) \
23 CREATE_BRA_E(n)
24
25 CREATE_BRA(PPC)
CREATE_BRA(IA64)26 CREATE_BRA(IA64)
27 CREATE_BRA(ARM)
28 CREATE_BRA(ARMT)
29 CREATE_BRA(SPARC)
30
31 #define METHOD_ITEM(n, id, name) \
32 REGISTER_FILTER_ITEM( \
33 CreateBra_Decoder_ ## n, GET_CREATE_FUNC( \
34 CreateBra_Encoder_ ## n), \
35 0x3030000 + id, name)
36
37 REGISTER_CODECS_VAR
38 {
39 METHOD_ITEM(PPC, 0x205, "PPC"),
40 METHOD_ITEM(IA64, 0x401, "IA64"),
41 METHOD_ITEM(ARM, 0x501, "ARM"),
42 METHOD_ITEM(ARMT, 0x701, "ARMT"),
43 METHOD_ITEM(SPARC, 0x805, "SPARC")
44 };
45
46 REGISTER_CODECS(Branch)
47
48 namespace NArm64 {
49 REGISTER_FILTER_E(ARM64,
50 CDecoder(),
51 CEncoder(),
52 0xa, "ARM64")
53 }
54
55 }}
56