{
return "\n"
"/* begin Orc C target preamble */\n"
- "typedef signed char int8_t;\n"
- "typedef unsigned char uint8_t;\n"
- "typedef signed short int16_t;\n"
- "typedef unsigned short uint16_t;\n"
- "typedef signed int int32_t;\n"
- "typedef unsigned int uint32_t;\n"
- "typedef signed long long int64_t;\n"
- "typedef unsigned long long uint64_t;\n"
- "#define ORC_RESTRICT restrict\n"
- "typedef struct _OrcProgram OrcProgram;\n"
- "typedef struct _OrcExecutor OrcExecutor;\n"
- "#define ORC_N_VARIABLES 20\n"
- "#define ORC_N_REGISTERS 20\n"
- "#define ORC_OPCODE_N_ARGS 4\n"
- "struct _OrcExecutor {\n"
- " OrcProgram *program;\n"
- " int n;\n"
- " int counter1;\n"
- " int counter2;\n"
- " int counter3;\n"
- " void *arrays[ORC_N_VARIABLES];\n"
- " int params[ORC_N_VARIABLES];\n"
- " //OrcVariable vars[ORC_N_VARIABLES];\n"
- " //OrcVariable *args[ORC_OPCODE_N_ARGS];\n"
- "};\n"
"#define ORC_CLAMP(x,a,b) ((x)<(a) ? (a) : ((x)>(b) ? (b) : (x)))\n"
"#define ORC_ABS(a) ((a)<0 ? -(a) : (a))\n"
"#define ORC_MIN(a,b) ((a)<(b) ? (a) : (b))\n"