Config.h revision 1dc6314a03b320f9ba5431834c2deeba13f5f065
1358490082d8435aa36feaff8107aa55c3cf363adLogan#ifndef BCC_CONFIG_H 2358490082d8435aa36feaff8107aa55c3cf363adLogan#define BCC_CONFIG_H 3358490082d8435aa36feaff8107aa55c3cf363adLogan 4358490082d8435aa36feaff8107aa55c3cf363adLogan//--------------------------------------------------------------------------- 51dc6314a03b320f9ba5431834c2deeba13f5f065Logan// Configuration for libbcc 61dc6314a03b320f9ba5431834c2deeba13f5f065Logan//--------------------------------------------------------------------------- 7358490082d8435aa36feaff8107aa55c3cf363adLogan 8358490082d8435aa36feaff8107aa55c3cf363adLogan#define USE_CACHE 1 9358490082d8435aa36feaff8107aa55c3cf363adLogan 10358490082d8435aa36feaff8107aa55c3cf363adLogan#define USE_DISASSEMBLER 1 11358490082d8435aa36feaff8107aa55c3cf363adLogan 12358490082d8435aa36feaff8107aa55c3cf363adLogan#define USE_DISASSEMBLER_FILE 0 13358490082d8435aa36feaff8107aa55c3cf363adLogan 140671ee77dcd97a60a493a1213eaf7db08d224049Shih-wei Liao#define USE_LIBBCC_SHA1SUM 1 15358490082d8435aa36feaff8107aa55c3cf363adLogan 16358490082d8435aa36feaff8107aa55c3cf363adLogan//--------------------------------------------------------------------------- 171dc6314a03b320f9ba5431834c2deeba13f5f065Logan// Configuration for ContextManager 181dc6314a03b320f9ba5431834c2deeba13f5f065Logan//--------------------------------------------------------------------------- 191dc6314a03b320f9ba5431834c2deeba13f5f065Logan 201dc6314a03b320f9ba5431834c2deeba13f5f065Logan// Note: Most of the code should NOT use these constants. Use the public 211dc6314a03b320f9ba5431834c2deeba13f5f065Logan// static member of ContextManager instead, which is type-safe. For example, 221dc6314a03b320f9ba5431834c2deeba13f5f065Logan// if you need BCC_CONTEXT_FIXED_ADDR_, then you should write: 231dc6314a03b320f9ba5431834c2deeba13f5f065Logan// ContextManager::ContextFixedAddr 241dc6314a03b320f9ba5431834c2deeba13f5f065Logan 251dc6314a03b320f9ba5431834c2deeba13f5f065Logan#define BCC_CONTEXT_FIXED_ADDR_ reinterpret_cast<char *>(0x7e000000) 261dc6314a03b320f9ba5431834c2deeba13f5f065Logan 271dc6314a03b320f9ba5431834c2deeba13f5f065Logan#define BCC_CONTEXT_SLOT_COUNT_ 8 281dc6314a03b320f9ba5431834c2deeba13f5f065Logan 291dc6314a03b320f9ba5431834c2deeba13f5f065Logan#define BCC_CONTEXT_CODE_SIZE_ (128 * 1024) 301dc6314a03b320f9ba5431834c2deeba13f5f065Logan 311dc6314a03b320f9ba5431834c2deeba13f5f065Logan#define BCC_CONTEXT_DATA_SIZE_ (128 * 1024) 321dc6314a03b320f9ba5431834c2deeba13f5f065Logan 331dc6314a03b320f9ba5431834c2deeba13f5f065Logan//--------------------------------------------------------------------------- 341dc6314a03b320f9ba5431834c2deeba13f5f065Logan// Configuration for CodeGen and CompilerRT 351dc6314a03b320f9ba5431834c2deeba13f5f065Logan//--------------------------------------------------------------------------- 36358490082d8435aa36feaff8107aa55c3cf363adLogan 37358490082d8435aa36feaff8107aa55c3cf363adLogan#if defined(__arm__) 38358490082d8435aa36feaff8107aa55c3cf363adLogan #define DEFAULT_ARM_CODEGEN 39358490082d8435aa36feaff8107aa55c3cf363adLogan #define PROVIDE_ARM_CODEGEN 40358490082d8435aa36feaff8107aa55c3cf363adLogan#elif defined(__i386__) 41358490082d8435aa36feaff8107aa55c3cf363adLogan #define DEFAULT_X86_CODEGEN 42358490082d8435aa36feaff8107aa55c3cf363adLogan #define PROVIDE_X86_CODEGEN 43358490082d8435aa36feaff8107aa55c3cf363adLogan#elif defined(__x86_64__) 44358490082d8435aa36feaff8107aa55c3cf363adLogan #define DEFAULT_X64_CODEGEN 45358490082d8435aa36feaff8107aa55c3cf363adLogan #define PROVIDE_X64_CODEGEN 46358490082d8435aa36feaff8107aa55c3cf363adLogan#endif 47358490082d8435aa36feaff8107aa55c3cf363adLogan 48358490082d8435aa36feaff8107aa55c3cf363adLogan#if defined(FORCE_ARM_CODEGEN) 49358490082d8435aa36feaff8107aa55c3cf363adLogan #define DEFAULT_ARM_CODEGEN 50358490082d8435aa36feaff8107aa55c3cf363adLogan #undef DEFAULT_X86_CODEGEN 51358490082d8435aa36feaff8107aa55c3cf363adLogan #undef DEFAULT_X64_CODEGEN 52358490082d8435aa36feaff8107aa55c3cf363adLogan #define PROVIDE_ARM_CODEGEN 53358490082d8435aa36feaff8107aa55c3cf363adLogan #undef PROVIDE_X86_CODEGEN 54358490082d8435aa36feaff8107aa55c3cf363adLogan #undef PROVIDE_X64_CODEGEN 55358490082d8435aa36feaff8107aa55c3cf363adLogan#elif defined(FORCE_X86_CODEGEN) 56358490082d8435aa36feaff8107aa55c3cf363adLogan #undef DEFAULT_ARM_CODEGEN 57358490082d8435aa36feaff8107aa55c3cf363adLogan #define DEFAULT_X86_CODEGEN 58358490082d8435aa36feaff8107aa55c3cf363adLogan #undef DEFAULT_X64_CODEGEN 59358490082d8435aa36feaff8107aa55c3cf363adLogan #undef PROVIDE_ARM_CODEGEN 60358490082d8435aa36feaff8107aa55c3cf363adLogan #define PROVIDE_X86_CODEGEN 61358490082d8435aa36feaff8107aa55c3cf363adLogan #undef PROVIDE_X64_CODEGEN 62358490082d8435aa36feaff8107aa55c3cf363adLogan#elif defined(FORCE_X64_CODEGEN) 63358490082d8435aa36feaff8107aa55c3cf363adLogan #undef DEFAULT_ARM_CODEGEN 64358490082d8435aa36feaff8107aa55c3cf363adLogan #undef DEFAULT_X86_CODEGEN 65358490082d8435aa36feaff8107aa55c3cf363adLogan #define DEFAULT_X64_CODEGEN 66358490082d8435aa36feaff8107aa55c3cf363adLogan #undef PROVIDE_ARM_CODEGEN 67358490082d8435aa36feaff8107aa55c3cf363adLogan #undef PROVIDE_X86_CODEGEN 68358490082d8435aa36feaff8107aa55c3cf363adLogan #define PROVIDE_X64_CODEGEN 69358490082d8435aa36feaff8107aa55c3cf363adLogan#endif 70358490082d8435aa36feaff8107aa55c3cf363adLogan 71358490082d8435aa36feaff8107aa55c3cf363adLogan#if defined(DEFAULT_ARM_CODEGEN) 72358490082d8435aa36feaff8107aa55c3cf363adLogan #define TARGET_TRIPLE_STRING "armv7-none-linux-gnueabi" 73358490082d8435aa36feaff8107aa55c3cf363adLogan#elif defined(DEFAULT_X86_CODEGEN) 74358490082d8435aa36feaff8107aa55c3cf363adLogan #define TARGET_TRIPLE_STRING "i686-unknown-linux" 75358490082d8435aa36feaff8107aa55c3cf363adLogan#elif defined(DEFAULT_X64_CODEGEN) 76358490082d8435aa36feaff8107aa55c3cf363adLogan #define TARGET_TRIPLE_STRING "x86_64-unknown-linux" 77358490082d8435aa36feaff8107aa55c3cf363adLogan#endif 78358490082d8435aa36feaff8107aa55c3cf363adLogan 79358490082d8435aa36feaff8107aa55c3cf363adLogan#if (defined(__VFP_FP__) && !defined(__SOFTFP__)) 80358490082d8435aa36feaff8107aa55c3cf363adLogan #define ARM_USE_VFP 81358490082d8435aa36feaff8107aa55c3cf363adLogan#endif 82358490082d8435aa36feaff8107aa55c3cf363adLogan 83358490082d8435aa36feaff8107aa55c3cf363adLogan//--------------------------------------------------------------------------- 84358490082d8435aa36feaff8107aa55c3cf363adLogan 85358490082d8435aa36feaff8107aa55c3cf363adLogan#endif // BCC_CONFIG_H 86