8.out.h 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505
  1. #define NSYM 50
  2. #define NSNAME 8
  3. #define NOPROF (1<<0)
  4. #define DUPOK (1<<1)
  5. #define NOSPLIT (1<<2)
  6. enum as
  7. {
  8. AXXX,
  9. AAAA,
  10. AAAD,
  11. AAAM,
  12. AAAS,
  13. AADCB,
  14. AADCL,
  15. AADCW,
  16. AADDB,
  17. AADDL,
  18. AADDW,
  19. AADJSP,
  20. AANDB,
  21. AANDL,
  22. AANDW,
  23. AARPL,
  24. ABOUNDL,
  25. ABOUNDW,
  26. ABSFL,
  27. ABSFW,
  28. ABSRL,
  29. ABSRW,
  30. ABTL,
  31. ABTW,
  32. ABTCL,
  33. ABTCW,
  34. ABTRL,
  35. ABTRW,
  36. ABTSL,
  37. ABTSW,
  38. ABYTE,
  39. ACALL,
  40. ACLC,
  41. ACLD,
  42. ACLI,
  43. ACLTS,
  44. ACMC,
  45. ACMPB,
  46. ACMPL,
  47. ACMPW,
  48. ACMPSB,
  49. ACMPSL,
  50. ACMPSW,
  51. ADAA,
  52. ADAS,
  53. ADATA,
  54. ADECB,
  55. ADECL,
  56. ADECW,
  57. ADIVB,
  58. ADIVL,
  59. ADIVW,
  60. AENTER,
  61. AGLOBL,
  62. AGOK,
  63. AHISTORY,
  64. AHLT,
  65. AIDIVB,
  66. AIDIVL,
  67. AIDIVW,
  68. AIMULB,
  69. AIMULL,
  70. AIMULW,
  71. AINB,
  72. AINL,
  73. AINW,
  74. AINCB,
  75. AINCL,
  76. AINCW,
  77. AINSB,
  78. AINSL,
  79. AINSW,
  80. AINT,
  81. AINTO,
  82. AIRETL,
  83. AIRETW,
  84. AJCC,
  85. AJCS,
  86. AJCXZ,
  87. AJEQ,
  88. AJGE,
  89. AJGT,
  90. AJHI,
  91. AJLE,
  92. AJLS,
  93. AJLT,
  94. AJMI,
  95. AJMP,
  96. AJNE,
  97. AJOC,
  98. AJOS,
  99. AJPC,
  100. AJPL,
  101. AJPS,
  102. ALAHF,
  103. ALARL,
  104. ALARW,
  105. ALEAL,
  106. ALEAW,
  107. ALEAVEL,
  108. ALEAVEW,
  109. ALOCK,
  110. ALODSB,
  111. ALODSL,
  112. ALODSW,
  113. ALONG,
  114. ALOOP,
  115. ALOOPEQ,
  116. ALOOPNE,
  117. ALSLL,
  118. ALSLW,
  119. AMOVB,
  120. AMOVL,
  121. AMOVW,
  122. AMOVBLSX,
  123. AMOVBLZX,
  124. AMOVBWSX,
  125. AMOVBWZX,
  126. AMOVWLSX,
  127. AMOVWLZX,
  128. AMOVSB,
  129. AMOVSL,
  130. AMOVSW,
  131. AMULB,
  132. AMULL,
  133. AMULW,
  134. ANAME,
  135. ANEGB,
  136. ANEGL,
  137. ANEGW,
  138. ANOP,
  139. ANOTB,
  140. ANOTL,
  141. ANOTW,
  142. AORB,
  143. AORL,
  144. AORW,
  145. AOUTB,
  146. AOUTL,
  147. AOUTW,
  148. AOUTSB,
  149. AOUTSL,
  150. AOUTSW,
  151. APOPAL,
  152. APOPAW,
  153. APOPFL,
  154. APOPFW,
  155. APOPL,
  156. APOPW,
  157. APUSHAL,
  158. APUSHAW,
  159. APUSHFL,
  160. APUSHFW,
  161. APUSHL,
  162. APUSHW,
  163. ARCLB,
  164. ARCLL,
  165. ARCLW,
  166. ARCRB,
  167. ARCRL,
  168. ARCRW,
  169. AREP,
  170. AREPN,
  171. ARET,
  172. AROLB,
  173. AROLL,
  174. AROLW,
  175. ARORB,
  176. ARORL,
  177. ARORW,
  178. ASAHF,
  179. ASALB,
  180. ASALL,
  181. ASALW,
  182. ASARB,
  183. ASARL,
  184. ASARW,
  185. ASBBB,
  186. ASBBL,
  187. ASBBW,
  188. ASCASB,
  189. ASCASL,
  190. ASCASW,
  191. ASETCC,
  192. ASETCS,
  193. ASETEQ,
  194. ASETGE,
  195. ASETGT,
  196. ASETHI,
  197. ASETLE,
  198. ASETLS,
  199. ASETLT,
  200. ASETMI,
  201. ASETNE,
  202. ASETOC,
  203. ASETOS,
  204. ASETPC,
  205. ASETPL,
  206. ASETPS,
  207. ACDQ,
  208. ACWD,
  209. ASHLB,
  210. ASHLL,
  211. ASHLW,
  212. ASHRB,
  213. ASHRL,
  214. ASHRW,
  215. ASTC,
  216. ASTD,
  217. ASTI,
  218. ASTOSB,
  219. ASTOSL,
  220. ASTOSW,
  221. ASUBB,
  222. ASUBL,
  223. ASUBW,
  224. ASYSCALL,
  225. ATESTB,
  226. ATESTL,
  227. ATESTW,
  228. ATEXT,
  229. AVERR,
  230. AVERW,
  231. AWAIT,
  232. AWORD,
  233. AXCHGB,
  234. AXCHGL,
  235. AXCHGW,
  236. AXLAT,
  237. AXORB,
  238. AXORL,
  239. AXORW,
  240. AFMOVB,
  241. AFMOVBP,
  242. AFMOVD,
  243. AFMOVDP,
  244. AFMOVF,
  245. AFMOVFP,
  246. AFMOVL,
  247. AFMOVLP,
  248. AFMOVV,
  249. AFMOVVP,
  250. AFMOVW,
  251. AFMOVWP,
  252. AFMOVX,
  253. AFMOVXP,
  254. AFCOMB,
  255. AFCOMBP,
  256. AFCOMD,
  257. AFCOMDP,
  258. AFCOMDPP,
  259. AFCOMF,
  260. AFCOMFP,
  261. AFCOML,
  262. AFCOMLP,
  263. AFCOMW,
  264. AFCOMWP,
  265. AFUCOM,
  266. AFUCOMP,
  267. AFUCOMPP,
  268. AFADDDP,
  269. AFADDW,
  270. AFADDL,
  271. AFADDF,
  272. AFADDD,
  273. AFMULDP,
  274. AFMULW,
  275. AFMULL,
  276. AFMULF,
  277. AFMULD,
  278. AFSUBDP,
  279. AFSUBW,
  280. AFSUBL,
  281. AFSUBF,
  282. AFSUBD,
  283. AFSUBRDP,
  284. AFSUBRW,
  285. AFSUBRL,
  286. AFSUBRF,
  287. AFSUBRD,
  288. AFDIVDP,
  289. AFDIVW,
  290. AFDIVL,
  291. AFDIVF,
  292. AFDIVD,
  293. AFDIVRDP,
  294. AFDIVRW,
  295. AFDIVRL,
  296. AFDIVRF,
  297. AFDIVRD,
  298. AFXCHD,
  299. AFFREE,
  300. AFLDCW,
  301. AFLDENV,
  302. AFRSTOR,
  303. AFSAVE,
  304. AFSTCW,
  305. AFSTENV,
  306. AFSTSW,
  307. AF2XM1,
  308. AFABS,
  309. AFCHS,
  310. AFCLEX,
  311. AFCOS,
  312. AFDECSTP,
  313. AFINCSTP,
  314. AFINIT,
  315. AFLD1,
  316. AFLDL2E,
  317. AFLDL2T,
  318. AFLDLG2,
  319. AFLDLN2,
  320. AFLDPI,
  321. AFLDZ,
  322. AFNOP,
  323. AFPATAN,
  324. AFPREM,
  325. AFPREM1,
  326. AFPTAN,
  327. AFRNDINT,
  328. AFSCALE,
  329. AFSIN,
  330. AFSINCOS,
  331. AFSQRT,
  332. AFTST,
  333. AFXAM,
  334. AFXTRACT,
  335. AFYL2X,
  336. AFYL2XP1,
  337. AEND,
  338. ADYNT,
  339. AINIT,
  340. ASIGNAME,
  341. AFCOMI,
  342. AFCOMIP,
  343. AFUCOMI,
  344. AFUCOMIP,
  345. ACMPXCHGB,
  346. ACMPXCHGL,
  347. ACMPXCHGW,
  348. /* conditional move */
  349. ACMOVLCC,
  350. ACMOVLCS,
  351. ACMOVLEQ,
  352. ACMOVLGE,
  353. ACMOVLGT,
  354. ACMOVLHI,
  355. ACMOVLLE,
  356. ACMOVLLS,
  357. ACMOVLLT,
  358. ACMOVLMI,
  359. ACMOVLNE,
  360. ACMOVLOC,
  361. ACMOVLOS,
  362. ACMOVLPC,
  363. ACMOVLPL,
  364. ACMOVLPS,
  365. ACMOVWCC,
  366. ACMOVWCS,
  367. ACMOVWEQ,
  368. ACMOVWGE,
  369. ACMOVWGT,
  370. ACMOVWHI,
  371. ACMOVWLE,
  372. ACMOVWLS,
  373. ACMOVWLT,
  374. ACMOVWMI,
  375. ACMOVWNE,
  376. ACMOVWOC,
  377. ACMOVWOS,
  378. ACMOVWPC,
  379. ACMOVWPL,
  380. ACMOVWPS,
  381. AFCMOVCC,
  382. AFCMOVCS,
  383. AFCMOVEQ,
  384. AFCMOVHI,
  385. AFCMOVLS,
  386. AFCMOVNE,
  387. AFCMOVNU,
  388. AFCMOVUN,
  389. /* add new operations here. nowhere else. here. */
  390. ALAST
  391. };
  392. enum
  393. {
  394. D_AL = 0,
  395. D_CL,
  396. D_DL,
  397. D_BL,
  398. D_AH = 4,
  399. D_CH,
  400. D_DH,
  401. D_BH,
  402. D_AX = 8,
  403. D_CX,
  404. D_DX,
  405. D_BX,
  406. D_SP,
  407. D_BP,
  408. D_SI,
  409. D_DI,
  410. D_F0 = 16,
  411. D_F7 = D_F0 + 7,
  412. D_CS = 24,
  413. D_SS,
  414. D_DS,
  415. D_ES,
  416. D_FS,
  417. D_GS,
  418. D_GDTR, /* global descriptor table register */
  419. D_IDTR, /* interrupt descriptor table register */
  420. D_LDTR, /* local descriptor table register */
  421. D_MSW, /* machine status word */
  422. D_TASK, /* task register */
  423. D_CR = 35,
  424. D_DR = 43,
  425. D_TR = 51,
  426. D_NONE = 59,
  427. D_BRANCH = 60,
  428. D_EXTERN = 61,
  429. D_STATIC = 62,
  430. D_AUTO = 63,
  431. D_PARAM = 64,
  432. D_CONST = 65,
  433. D_FCONST = 66,
  434. D_SCONST = 67,
  435. D_ADDR = 68,
  436. D_FILE,
  437. D_FILE1,
  438. D_INDIR, /* additive */
  439. D_CONST2 = D_INDIR+D_INDIR,
  440. D_SIZE, /* 8l internal */
  441. T_TYPE = 1<<0,
  442. T_INDEX = 1<<1,
  443. T_OFFSET = 1<<2,
  444. T_FCONST = 1<<3,
  445. T_SYM = 1<<4,
  446. T_SCONST = 1<<5,
  447. T_OFFSET2 = 1<<6,
  448. T_GOTYPE = 1<<7,
  449. REGARG = -1,
  450. REGRET = D_AX,
  451. FREGRET = D_F0,
  452. REGSP = D_SP,
  453. REGTMP = D_DI,
  454. };
  455. /*
  456. * this is the ranlib header
  457. */
  458. #define SYMDEF "__.SYMDEF"
  459. /*
  460. * this is the simulated IEEE floating point
  461. */
  462. typedef struct ieee Ieee;
  463. struct ieee
  464. {
  465. long l; /* contains ls-man 0xffffffff */
  466. long h; /* contains sign 0x80000000
  467. exp 0x7ff00000
  468. ms-man 0x000fffff */
  469. };