1// BranchRegister.cpp 2 3#include "StdAfx.h" 4 5#include "../Common/RegisterCodec.h" 6 7#include "BranchMisc.h" 8 9namespace NCompress { 10namespace 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 25CREATE_BRA(PPC) 26CREATE_BRA(IA64) 27CREATE_BRA(ARM) 28CREATE_BRA(ARMT) 29CREATE_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 37REGISTER_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 46REGISTER_CODECS(Branch) 47 48namespace NArm64 { 49REGISTER_FILTER_E(ARM64, 50 CDecoder(), 51 CEncoder(), 52 0xa, "ARM64") 53} 54 55}} 56