Share Pastebin
Guest
Public paste!

Untitled

By: a guest | Jun 30th, 2009 | Syntax: C | Size: 5.58 KB | Hits: 370 | Expires: Never
Copy text to clipboard
  1. ####### "compiled_vm.c"
  2.  
  3. static double div(double a, double b)
  4. {
  5.         if (b == 0.0) return 0.0;
  6.         return a / b;
  7. }
  8.  
  9. __declspec(dllexport) int run(int steps, double i2, double i3, double i16000, double * memory, double * output)
  10. {
  11.         int cnt = 0;
  12.         #include "compiled_vm_declarations.inc"
  13.        
  14.         for (cnt = 0; cnt < steps && output[0] == 0.0; cnt++)
  15.         {
  16.                 #include "compiled_vm_statements.inc"
  17.         }
  18.         return cnt;
  19. }
  20.  
  21.  
  22. int initcompiled_vm()
  23. {
  24.         return -1;
  25. }
  26.  
  27.  
  28. ###### compiled_vm_declarations.inc
  29.  
  30. const unsigned long long long_27 = 0x3FF199999999999AL;
  31. const double c27 = *(double*)&long_27;       // 1.1
  32.  
  33. const unsigned long long long_36 = 0x3FF8000000000000L;
  34. const double c36 = *(double*)&long_36;       // 1.5
  35.  
  36. const unsigned long long long_96 = 0x4513DA329B633647L;
  37. const double c96 = *(double*)&long_96;       // 6e+24
  38.  
  39. const unsigned long long long_99 = 0x3DD2589B659737D1L;
  40. const double c99 = *(double*)&long_99;       // 6.67428e-11
  41.  
  42. const unsigned long long long_111 = 0xC0BB0A55DA0E5C25L;
  43. const double c111 = *(double*)&long_111;     // -6922.33535852
  44.  
  45. const unsigned long long long_114 = 0xC0B26F51627D1664L;
  46. const double c114 = *(double*)&long_114;     // -4719.31790907
  47.  
  48. const unsigned long long long_117 = 0xC0BE86EEC7F382ABL;
  49. const double c117 = *(double*)&long_117;     // -7814.93273851
  50.  
  51. const unsigned long long long_133 = 0xC0BEC33726A1ECC0L;
  52. const double c133 = *(double*)&long_133;     // -7875.21543324
  53.  
  54. const int pv248 = 0;
  55. const int pv249 = 1;
  56. const int pv250 = 2;
  57. const int pv251 = 3;
  58. const int pv254 = 4;
  59. const int pv255 = 5;
  60. const int pv257 = 6;
  61. const int pv258 = 7;
  62. const int pv259 = 8;
  63. const int pv261 = 9;
  64. const int pv262 = 10;
  65. const int pv263 = 11;
  66. const int pv264 = 12;
  67. const int pv265 = 13;
  68. double lv4;
  69. double lv5;
  70. double lv7;
  71. double lv12;
  72. double lv18;
  73. double lv29;
  74. double lv32;
  75. double lv33;
  76. double lv39;
  77. double lv44;
  78. double lv48;
  79. double lv52;
  80. double lv66;
  81. double lv69;
  82. double lv70;
  83. double lv74;
  84. double lv77;
  85. double lv88;
  86. double lv89;
  87. double lv92;
  88. double lv94;
  89. double lv98;
  90. double lv100;
  91. double lv101;
  92. double lv102;
  93. double lv103;
  94. double lv104;
  95. double lv105;
  96. double lv108;
  97. double lv121;
  98. double lv124;
  99. double lv125;
  100. double lv127;
  101. double lv128;
  102. double lv129;
  103. double lv143;
  104. double lv146;
  105. double lv147;
  106. double lv150;
  107. double lv151;
  108. double lv155;
  109. double lv160;
  110. double lv161;
  111. double lv164;
  112. double lv167;
  113. double lv169;
  114. double lv172;
  115. double lv174;
  116. double lv175;
  117. double lv212;
  118. double lv217;
  119. double lv218;
  120. double lv232;
  121.  
  122.  
  123. ###### compiled_vm_statements.inc
  124.  
  125. lv4 = memory[pv248];
  126. lv5 = lv4 - 0.0;
  127. lv7 = (lv5 == 0.0) ? 30.0 : memory[pv265];
  128. lv12 = ((lv5 == 0.0) ? 1.0 : memory[pv263]) - 1.0;
  129. lv18 = (lv5 == 0.0) ? 1000.0 : memory[pv264];
  130. lv29 = 42164.0 * 1000.0;
  131. lv32 = i16000;
  132. lv33 = lv32 - 1004.0;
  133. lv39 = lv32 - 1003.0;
  134. lv44 = lv32 - 1002.0;
  135. lv48 = lv32 - 1001.0;
  136. lv52 = (lv5 == 0.0) ? ((lv48 == 0.0) ? lv29 : ((lv44 == 0.0) ? (lv29 / 2.0) : ((lv39 == 0.0) ? (lv29 / c36) : ((lv33 == 0.0) ? (lv29 / c27) : 0.0)))) : memory[pv262];
  137. lv66 = (lv5 == 0.0) ? ((lv48 == 0.0) ? 0.0 : ((lv44 == 0.0) ? -6357000.0 : ((lv39 == 0.0) ? 0.0 : ((lv33 == 0.0) ? 6457000.0 : 0.0)))) : memory[pv255];
  138. lv69 = (lv5 == 0.0) ? 0.0 : memory[pv250];
  139. lv70 = lv69 - lv66;
  140. lv74 = (lv5 == 0.0) ? 0.0 : memory[pv249];
  141. lv77 = (lv33 == 0.0) ? 0.0 : 0.0;
  142. lv88 = (lv5 == 0.0) ? ((lv48 == 0.0) ? 6557000.0 : ((lv44 == 0.0) ? 6357000.0 : ((lv39 == 0.0) ? 8357000.0 : lv77))) : memory[pv254];
  143. lv89 = lv74 - lv88;
  144. lv92 = sqrt(((lv89 * lv89) + (lv70 * lv70)));
  145. lv94 = (lv92 * lv92) * lv92;
  146. lv98 = (lv5 == 0.0) ? c96 : memory[pv251];
  147. lv100 = c99 * lv98;
  148. lv101 = div(lv100, lv94);
  149. lv102 = lv70 * lv101;
  150. lv103 = i3;
  151. lv104 = 1.0 / 1.0;
  152. lv105 = div(lv103, lv104);
  153. lv108 = (lv104 * lv104) / 2.0;
  154. lv121 = (lv5 == 0.0) ? ((lv48 == 0.0) ? c117 : ((lv44 == 0.0) ? c114 : ((lv39 == 0.0) ? c111 : lv77))) : memory[pv258];
  155. lv124 = (lv66 + (lv121 * lv104)) + ((lv105 + lv102) * lv108);
  156. lv125 = lv124 - lv69;
  157. lv127 = lv89 * lv101;
  158. lv128 = i2;
  159. lv129 = div(lv128, lv104);
  160. lv143 = (lv5 == 0.0) ? ((lv48 == 0.0) ? 0.0 : ((lv44 == 0.0) ? c114 : ((lv39 == 0.0) ? 0.0 : ((lv33 == 0.0) ? c133 : 0.0)))) : memory[pv257];
  161. lv146 = (lv88 + (lv143 * lv104)) + ((lv129 + lv127) * lv108);
  162. lv147 = lv146 - lv74;
  163. lv150 = sqrt(((lv147 * lv147) + (lv125 * lv125)));
  164. lv151 = lv150 - lv52;
  165. lv155 = ((lv151 - 0.0) < 0.0) ? (0.0 - lv151) : lv151;
  166. lv160 = sqrt(((lv129 * lv129) + (lv105 * lv105)));
  167. lv161 = lv160 - 0.0;
  168. lv164 = lv155 - 1000.0;
  169. lv167 = lv69 - lv124;
  170. lv169 = lv74 - lv146;
  171. lv172 = sqrt(((lv169 * lv169) + (lv167 * lv167)));
  172. lv174 = (lv172 * lv172) * lv172;
  173. lv175 = div(lv100, lv174);
  174. lv212 = (lv164 < 0.0) ? ((lv161 == 0.0) ? (memory[pv259] + 1.0) : 0.0) : 0.0;
  175. lv217 = lv160 * lv104;
  176. lv218 = ((lv5 == 0.0) ? 10000.0 : memory[pv261]) - lv217;
  177. lv232 = 0.0 - 1.0;
  178. output[0] = ((lv150 - 6357000.0) < 0.0) ? lv232 : (((10000.0 - lv217) < 0.0) ? lv232 : (((lv218 - 0.0) < 0.0) ? lv232 : (((div(900.0, lv104) - lv212) < 0.0) ? ((lv7 + (((10000.0 - lv218) / 10000.0) * 45.0)) + 25.0) : 0.0)));
  179. output[1] = lv218;
  180. output[2] = lv169;
  181. output[3] = lv167;
  182. output[4] = lv52;
  183. memory[pv248] = lv4 + 1.0;
  184. memory[pv249] = lv74;
  185. memory[pv250] = lv69;
  186. memory[pv251] = lv98;
  187. memory[pv254] = lv146;
  188. memory[pv255] = lv124;
  189. memory[pv257] = lv143 + ((lv129 + (((lv169 * lv175) + lv127) / 2.0)) * lv104);
  190. memory[pv258] = lv121 + ((lv105 + (((lv167 * lv175) + lv102) / 2.0)) * lv104);
  191. memory[pv259] = lv212;
  192. memory[pv261] = lv218;
  193. memory[pv262] = lv52;
  194. memory[pv263] = (lv12 == 0.0) ? lv18 : lv12;
  195. memory[pv264] = (lv12 == 0.0) ? (lv18 * 2.0) : lv18;
  196. memory[pv265] = (lv12 == 0.0) ? (lv7 - 1.0) : lv7;