laag-nasm 2.13.03.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (455) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +57 -0
  3. data/LICENSE.txt +29 -0
  4. data/README.org +34 -0
  5. data/ext/laag/nasm/extconf.rb +16 -0
  6. data/laag-nasm.gemspec +20 -0
  7. data/lib/laag/nasm.rb +29 -0
  8. data/patches/Makefile.in.patch +13 -0
  9. data/vendor/repo.or.cz/nasm/.gitignore +102 -0
  10. data/vendor/repo.or.cz/nasm/AUTHORS +137 -0
  11. data/vendor/repo.or.cz/nasm/CHANGES +2 -0
  12. data/vendor/repo.or.cz/nasm/ChangeLog +2905 -0
  13. data/vendor/repo.or.cz/nasm/INSTALL +102 -0
  14. data/vendor/repo.or.cz/nasm/LICENSE +29 -0
  15. data/vendor/repo.or.cz/nasm/Makefile.in +855 -0
  16. data/vendor/repo.or.cz/nasm/Mkfiles/README +46 -0
  17. data/vendor/repo.or.cz/nasm/Mkfiles/msvc.mak +732 -0
  18. data/vendor/repo.or.cz/nasm/Mkfiles/openwcom.mak +706 -0
  19. data/vendor/repo.or.cz/nasm/README +23 -0
  20. data/vendor/repo.or.cz/nasm/SubmittingPatches +116 -0
  21. data/vendor/repo.or.cz/nasm/TODO +376 -0
  22. data/vendor/repo.or.cz/nasm/aclocal.m4 +139 -0
  23. data/vendor/repo.or.cz/nasm/asm/assemble.c +2957 -0
  24. data/vendor/repo.or.cz/nasm/asm/assemble.h +54 -0
  25. data/vendor/repo.or.cz/nasm/asm/directiv.c +566 -0
  26. data/vendor/repo.or.cz/nasm/asm/directiv.dat +92 -0
  27. data/vendor/repo.or.cz/nasm/asm/error.c +202 -0
  28. data/vendor/repo.or.cz/nasm/asm/eval.c +1014 -0
  29. data/vendor/repo.or.cz/nasm/asm/eval.h +49 -0
  30. data/vendor/repo.or.cz/nasm/asm/exprdump.c +79 -0
  31. data/vendor/repo.or.cz/nasm/asm/exprlib.c +200 -0
  32. data/vendor/repo.or.cz/nasm/asm/float.c +952 -0
  33. data/vendor/repo.or.cz/nasm/asm/float.h +54 -0
  34. data/vendor/repo.or.cz/nasm/asm/labels.c +540 -0
  35. data/vendor/repo.or.cz/nasm/asm/listing.c +346 -0
  36. data/vendor/repo.or.cz/nasm/asm/listing.h +113 -0
  37. data/vendor/repo.or.cz/nasm/asm/nasm.c +1855 -0
  38. data/vendor/repo.or.cz/nasm/asm/parser.c +1167 -0
  39. data/vendor/repo.or.cz/nasm/asm/parser.h +45 -0
  40. data/vendor/repo.or.cz/nasm/asm/phash.pl +109 -0
  41. data/vendor/repo.or.cz/nasm/asm/pptok.dat +96 -0
  42. data/vendor/repo.or.cz/nasm/asm/pptok.pl +271 -0
  43. data/vendor/repo.or.cz/nasm/asm/pragma.c +218 -0
  44. data/vendor/repo.or.cz/nasm/asm/preproc-nop.c +188 -0
  45. data/vendor/repo.or.cz/nasm/asm/preproc.c +5459 -0
  46. data/vendor/repo.or.cz/nasm/asm/preproc.h +55 -0
  47. data/vendor/repo.or.cz/nasm/asm/quote.c +479 -0
  48. data/vendor/repo.or.cz/nasm/asm/quote.h +44 -0
  49. data/vendor/repo.or.cz/nasm/asm/rdstrnum.c +68 -0
  50. data/vendor/repo.or.cz/nasm/asm/segalloc.c +51 -0
  51. data/vendor/repo.or.cz/nasm/asm/stdscan.c +345 -0
  52. data/vendor/repo.or.cz/nasm/asm/stdscan.h +49 -0
  53. data/vendor/repo.or.cz/nasm/asm/strfunc.c +359 -0
  54. data/vendor/repo.or.cz/nasm/asm/tokens.dat +135 -0
  55. data/vendor/repo.or.cz/nasm/asm/tokhash.pl +284 -0
  56. data/vendor/repo.or.cz/nasm/autogen.sh +9 -0
  57. data/vendor/repo.or.cz/nasm/common/common.c +122 -0
  58. data/vendor/repo.or.cz/nasm/config/msvc.h +192 -0
  59. data/vendor/repo.or.cz/nasm/config/unknown.h +51 -0
  60. data/vendor/repo.or.cz/nasm/config/watcom.h +74 -0
  61. data/vendor/repo.or.cz/nasm/configure.ac +253 -0
  62. data/vendor/repo.or.cz/nasm/contrib/MSVC6.txt +25 -0
  63. data/vendor/repo.or.cz/nasm/contrib/VSrules/nasm.README +16 -0
  64. data/vendor/repo.or.cz/nasm/contrib/VSrules/nasm.rules +79 -0
  65. data/vendor/repo.or.cz/nasm/disasm/disasm.c +1735 -0
  66. data/vendor/repo.or.cz/nasm/disasm/disasm.h +49 -0
  67. data/vendor/repo.or.cz/nasm/disasm/ndisasm.c +397 -0
  68. data/vendor/repo.or.cz/nasm/disasm/sync.c +132 -0
  69. data/vendor/repo.or.cz/nasm/disasm/sync.h +45 -0
  70. data/vendor/repo.or.cz/nasm/doc/Makefile.in +86 -0
  71. data/vendor/repo.or.cz/nasm/doc/README +20 -0
  72. data/vendor/repo.or.cz/nasm/doc/afmmetrics.ph +102 -0
  73. data/vendor/repo.or.cz/nasm/doc/changes.src +2588 -0
  74. data/vendor/repo.or.cz/nasm/doc/findfont.ph +180 -0
  75. data/vendor/repo.or.cz/nasm/doc/genps.pl +1294 -0
  76. data/vendor/repo.or.cz/nasm/doc/inslist.pl +108 -0
  77. data/vendor/repo.or.cz/nasm/doc/internal.doc +290 -0
  78. data/vendor/repo.or.cz/nasm/doc/local.css +1 -0
  79. data/vendor/repo.or.cz/nasm/doc/nasmdoc.css +150 -0
  80. data/vendor/repo.or.cz/nasm/doc/nasmdoc.src +8309 -0
  81. data/vendor/repo.or.cz/nasm/doc/nasmlogo.eps +212 -0
  82. data/vendor/repo.or.cz/nasm/doc/nasmlogw.png +0 -0
  83. data/vendor/repo.or.cz/nasm/doc/psfonts.ph +53 -0
  84. data/vendor/repo.or.cz/nasm/doc/pspdf.pl +98 -0
  85. data/vendor/repo.or.cz/nasm/doc/pswidth.ph +25 -0
  86. data/vendor/repo.or.cz/nasm/doc/rdsrc.pl +1111 -0
  87. data/vendor/repo.or.cz/nasm/doc/ttfmetrics.ph +63 -0
  88. data/vendor/repo.or.cz/nasm/headers/c +33 -0
  89. data/vendor/repo.or.cz/nasm/headers/doc +33 -0
  90. data/vendor/repo.or.cz/nasm/headers/mac +33 -0
  91. data/vendor/repo.or.cz/nasm/headers/perl +33 -0
  92. data/vendor/repo.or.cz/nasm/include/compiler.h +277 -0
  93. data/vendor/repo.or.cz/nasm/include/disp8.h +45 -0
  94. data/vendor/repo.or.cz/nasm/include/error.h +135 -0
  95. data/vendor/repo.or.cz/nasm/include/hashtbl.h +85 -0
  96. data/vendor/repo.or.cz/nasm/include/iflag.h +173 -0
  97. data/vendor/repo.or.cz/nasm/include/insns.h +76 -0
  98. data/vendor/repo.or.cz/nasm/include/labels.h +60 -0
  99. data/vendor/repo.or.cz/nasm/include/md5.h +21 -0
  100. data/vendor/repo.or.cz/nasm/include/nasm.h +1246 -0
  101. data/vendor/repo.or.cz/nasm/include/nasmint.h +219 -0
  102. data/vendor/repo.or.cz/nasm/include/nasmlib.h +524 -0
  103. data/vendor/repo.or.cz/nasm/include/opflags.h +271 -0
  104. data/vendor/repo.or.cz/nasm/include/perfhash.h +52 -0
  105. data/vendor/repo.or.cz/nasm/include/raa.h +46 -0
  106. data/vendor/repo.or.cz/nasm/include/rbtree.h +51 -0
  107. data/vendor/repo.or.cz/nasm/include/rdoff.h +169 -0
  108. data/vendor/repo.or.cz/nasm/include/saa.h +94 -0
  109. data/vendor/repo.or.cz/nasm/include/strlist.h +55 -0
  110. data/vendor/repo.or.cz/nasm/include/tables.h +70 -0
  111. data/vendor/repo.or.cz/nasm/include/ver.h +47 -0
  112. data/vendor/repo.or.cz/nasm/install-sh +250 -0
  113. data/vendor/repo.or.cz/nasm/macros/altreg.mac +107 -0
  114. data/vendor/repo.or.cz/nasm/macros/fp.mac +54 -0
  115. data/vendor/repo.or.cz/nasm/macros/ifunc.mac +48 -0
  116. data/vendor/repo.or.cz/nasm/macros/macros.pl +294 -0
  117. data/vendor/repo.or.cz/nasm/macros/smartalign.mac +189 -0
  118. data/vendor/repo.or.cz/nasm/macros/standard.mac +226 -0
  119. data/vendor/repo.or.cz/nasm/misc/Doxyfile +752 -0
  120. data/vendor/repo.or.cz/nasm/misc/Nindent +18 -0
  121. data/vendor/repo.or.cz/nasm/misc/README +2 -0
  122. data/vendor/repo.or.cz/nasm/misc/c16.mac +82 -0
  123. data/vendor/repo.or.cz/nasm/misc/c32.mac +52 -0
  124. data/vendor/repo.or.cz/nasm/misc/crcgen.c +44 -0
  125. data/vendor/repo.or.cz/nasm/misc/exebin.mac +57 -0
  126. data/vendor/repo.or.cz/nasm/misc/exebin2.mac +114 -0
  127. data/vendor/repo.or.cz/nasm/misc/fmtinsns.pl +40 -0
  128. data/vendor/repo.or.cz/nasm/misc/genfma.pl +63 -0
  129. data/vendor/repo.or.cz/nasm/misc/hints.txt +26 -0
  130. data/vendor/repo.or.cz/nasm/misc/magic +6 -0
  131. data/vendor/repo.or.cz/nasm/misc/myC32.mac +121 -0
  132. data/vendor/repo.or.cz/nasm/misc/nasm.sl +320 -0
  133. data/vendor/repo.or.cz/nasm/misc/nasmstab +296 -0
  134. data/vendor/repo.or.cz/nasm/misc/omfdump.c +517 -0
  135. data/vendor/repo.or.cz/nasm/misc/pmw.bat +9 -0
  136. data/vendor/repo.or.cz/nasm/misc/proc32.ash +441 -0
  137. data/vendor/repo.or.cz/nasm/misc/scitech.mac +1223 -0
  138. data/vendor/repo.or.cz/nasm/misc/xcrcgen.c +80 -0
  139. data/vendor/repo.or.cz/nasm/nasm.spec.in +83 -0
  140. data/vendor/repo.or.cz/nasm/nasm.spec.sed +3 -0
  141. data/vendor/repo.or.cz/nasm/nasm.txt +306 -0
  142. data/vendor/repo.or.cz/nasm/nasmlib/badenum.c +43 -0
  143. data/vendor/repo.or.cz/nasm/nasmlib/bsi.c +77 -0
  144. data/vendor/repo.or.cz/nasm/nasmlib/crc64.c +189 -0
  145. data/vendor/repo.or.cz/nasm/nasmlib/file.c +259 -0
  146. data/vendor/repo.or.cz/nasm/nasmlib/file.h +128 -0
  147. data/vendor/repo.or.cz/nasm/nasmlib/filename.c +69 -0
  148. data/vendor/repo.or.cz/nasm/nasmlib/hashtbl.c +232 -0
  149. data/vendor/repo.or.cz/nasm/nasmlib/ilog2.c +168 -0
  150. data/vendor/repo.or.cz/nasm/nasmlib/malloc.c +108 -0
  151. data/vendor/repo.or.cz/nasm/nasmlib/md5c.c +247 -0
  152. data/vendor/repo.or.cz/nasm/nasmlib/mmap.c +139 -0
  153. data/vendor/repo.or.cz/nasm/nasmlib/path.c +186 -0
  154. data/vendor/repo.or.cz/nasm/nasmlib/perfhash.c +55 -0
  155. data/vendor/repo.or.cz/nasm/nasmlib/perfhash.pl +362 -0
  156. data/vendor/repo.or.cz/nasm/nasmlib/raa.c +173 -0
  157. data/vendor/repo.or.cz/nasm/nasmlib/rbtree.c +119 -0
  158. data/vendor/repo.or.cz/nasm/nasmlib/readnum.c +172 -0
  159. data/vendor/repo.or.cz/nasm/nasmlib/realpath.c +135 -0
  160. data/vendor/repo.or.cz/nasm/nasmlib/saa.c +431 -0
  161. data/vendor/repo.or.cz/nasm/nasmlib/srcfile.c +128 -0
  162. data/vendor/repo.or.cz/nasm/nasmlib/string.c +242 -0
  163. data/vendor/repo.or.cz/nasm/nasmlib/strlist.c +100 -0
  164. data/vendor/repo.or.cz/nasm/nasmlib/ver.c +51 -0
  165. data/vendor/repo.or.cz/nasm/nasmlib/zerobuf.c +42 -0
  166. data/vendor/repo.or.cz/nasm/ndisasm.txt +94 -0
  167. data/vendor/repo.or.cz/nasm/nsis/NASMMultiUser.nsh +478 -0
  168. data/vendor/repo.or.cz/nasm/nsis/getpearch.pl +76 -0
  169. data/vendor/repo.or.cz/nasm/nsis/nasm-un.ico +0 -0
  170. data/vendor/repo.or.cz/nasm/nsis/nasm.ico +0 -0
  171. data/vendor/repo.or.cz/nasm/nsis/nasm.nsi +241 -0
  172. data/vendor/repo.or.cz/nasm/output/codeview.c +814 -0
  173. data/vendor/repo.or.cz/nasm/output/dwarf.h +566 -0
  174. data/vendor/repo.or.cz/nasm/output/elf.h +537 -0
  175. data/vendor/repo.or.cz/nasm/output/legacy.c +112 -0
  176. data/vendor/repo.or.cz/nasm/output/nulldbg.c +93 -0
  177. data/vendor/repo.or.cz/nasm/output/nullout.c +51 -0
  178. data/vendor/repo.or.cz/nasm/output/outaout.c +954 -0
  179. data/vendor/repo.or.cz/nasm/output/outaout.mac +37 -0
  180. data/vendor/repo.or.cz/nasm/output/outas86.c +650 -0
  181. data/vendor/repo.or.cz/nasm/output/outas86.mac +37 -0
  182. data/vendor/repo.or.cz/nasm/output/outbin.c +1713 -0
  183. data/vendor/repo.or.cz/nasm/output/outbin.mac +40 -0
  184. data/vendor/repo.or.cz/nasm/output/outcoff.c +1242 -0
  185. data/vendor/repo.or.cz/nasm/output/outcoff.mac +43 -0
  186. data/vendor/repo.or.cz/nasm/output/outdbg.c +425 -0
  187. data/vendor/repo.or.cz/nasm/output/outelf.c +3370 -0
  188. data/vendor/repo.or.cz/nasm/output/outelf.h +156 -0
  189. data/vendor/repo.or.cz/nasm/output/outelf.mac +41 -0
  190. data/vendor/repo.or.cz/nasm/output/outform.c +120 -0
  191. data/vendor/repo.or.cz/nasm/output/outform.h +379 -0
  192. data/vendor/repo.or.cz/nasm/output/outieee.c +1528 -0
  193. data/vendor/repo.or.cz/nasm/output/outlib.c +58 -0
  194. data/vendor/repo.or.cz/nasm/output/outlib.h +63 -0
  195. data/vendor/repo.or.cz/nasm/output/outmacho.c +2387 -0
  196. data/vendor/repo.or.cz/nasm/output/outmacho.mac +49 -0
  197. data/vendor/repo.or.cz/nasm/output/outobj.c +2725 -0
  198. data/vendor/repo.or.cz/nasm/output/outobj.mac +49 -0
  199. data/vendor/repo.or.cz/nasm/output/outrdf.mac +40 -0
  200. data/vendor/repo.or.cz/nasm/output/outrdf2.c +791 -0
  201. data/vendor/repo.or.cz/nasm/output/outrdf2.mac +43 -0
  202. data/vendor/repo.or.cz/nasm/output/pecoff.h +532 -0
  203. data/vendor/repo.or.cz/nasm/output/stabs.h +144 -0
  204. data/vendor/repo.or.cz/nasm/perllib/crc64.ph +158 -0
  205. data/vendor/repo.or.cz/nasm/perllib/gensv.pl +34 -0
  206. data/vendor/repo.or.cz/nasm/perllib/phash.ph +200 -0
  207. data/vendor/repo.or.cz/nasm/perllib/random_sv_vectors.ph +67 -0
  208. data/vendor/repo.or.cz/nasm/rdoff/README +185 -0
  209. data/vendor/repo.or.cz/nasm/rdoff/collectn.c +44 -0
  210. data/vendor/repo.or.cz/nasm/rdoff/collectn.h +22 -0
  211. data/vendor/repo.or.cz/nasm/rdoff/doc/Makefile +37 -0
  212. data/vendor/repo.or.cz/nasm/rdoff/doc/rdoff.texi +137 -0
  213. data/vendor/repo.or.cz/nasm/rdoff/doc/v1-v2.txt +62 -0
  214. data/vendor/repo.or.cz/nasm/rdoff/hash.c +122 -0
  215. data/vendor/repo.or.cz/nasm/rdoff/hash.h +17 -0
  216. data/vendor/repo.or.cz/nasm/rdoff/ldrdf.1 +41 -0
  217. data/vendor/repo.or.cz/nasm/rdoff/ldrdf.c +1395 -0
  218. data/vendor/repo.or.cz/nasm/rdoff/ldsegs.h +59 -0
  219. data/vendor/repo.or.cz/nasm/rdoff/rdf2bin.1 +65 -0
  220. data/vendor/repo.or.cz/nasm/rdoff/rdf2bin.c +431 -0
  221. data/vendor/repo.or.cz/nasm/rdoff/rdf2com.1 +1 -0
  222. data/vendor/repo.or.cz/nasm/rdoff/rdf2ihx.1 +1 -0
  223. data/vendor/repo.or.cz/nasm/rdoff/rdf2ith.1 +1 -0
  224. data/vendor/repo.or.cz/nasm/rdoff/rdf2srec.1 +1 -0
  225. data/vendor/repo.or.cz/nasm/rdoff/rdfdump.1 +24 -0
  226. data/vendor/repo.or.cz/nasm/rdoff/rdfdump.c +347 -0
  227. data/vendor/repo.or.cz/nasm/rdoff/rdflib.1 +39 -0
  228. data/vendor/repo.or.cz/nasm/rdoff/rdflib.c +434 -0
  229. data/vendor/repo.or.cz/nasm/rdoff/rdfload.c +213 -0
  230. data/vendor/repo.or.cz/nasm/rdoff/rdfload.h +29 -0
  231. data/vendor/repo.or.cz/nasm/rdoff/rdfutils.h +165 -0
  232. data/vendor/repo.or.cz/nasm/rdoff/rdlar.c +492 -0
  233. data/vendor/repo.or.cz/nasm/rdoff/rdlar.h +34 -0
  234. data/vendor/repo.or.cz/nasm/rdoff/rdlib.c +290 -0
  235. data/vendor/repo.or.cz/nasm/rdoff/rdlib.h +62 -0
  236. data/vendor/repo.or.cz/nasm/rdoff/rdoff.c +621 -0
  237. data/vendor/repo.or.cz/nasm/rdoff/rdx.1 +21 -0
  238. data/vendor/repo.or.cz/nasm/rdoff/rdx.c +90 -0
  239. data/vendor/repo.or.cz/nasm/rdoff/segtab.c +172 -0
  240. data/vendor/repo.or.cz/nasm/rdoff/segtab.h +45 -0
  241. data/vendor/repo.or.cz/nasm/rdoff/symtab.c +159 -0
  242. data/vendor/repo.or.cz/nasm/rdoff/symtab.h +55 -0
  243. data/vendor/repo.or.cz/nasm/rdoff/test/Makefile +10 -0
  244. data/vendor/repo.or.cz/nasm/rdoff/test/makelib.sh +14 -0
  245. data/vendor/repo.or.cz/nasm/rdoff/test/rdfseg.asm +20 -0
  246. data/vendor/repo.or.cz/nasm/rdoff/test/rdfseg2.asm +12 -0
  247. data/vendor/repo.or.cz/nasm/rdoff/test/rdftest1.asm +54 -0
  248. data/vendor/repo.or.cz/nasm/rdoff/test/rdftest2.asm +33 -0
  249. data/vendor/repo.or.cz/nasm/rdoff/test/rdtlib.asm +48 -0
  250. data/vendor/repo.or.cz/nasm/rdoff/test/rdtmain.asm +47 -0
  251. data/vendor/repo.or.cz/nasm/rdoff/test/testlib.asm +18 -0
  252. data/vendor/repo.or.cz/nasm/stdlib/snprintf.c +29 -0
  253. data/vendor/repo.or.cz/nasm/stdlib/strlcpy.c +51 -0
  254. data/vendor/repo.or.cz/nasm/stdlib/strnlen.c +46 -0
  255. data/vendor/repo.or.cz/nasm/stdlib/vsnprintf.c +51 -0
  256. data/vendor/repo.or.cz/nasm/test/Makefile +106 -0
  257. data/vendor/repo.or.cz/nasm/test/_file_.asm +5 -0
  258. data/vendor/repo.or.cz/nasm/test/_version.asm +2 -0
  259. data/vendor/repo.or.cz/nasm/test/a32offs.asm +9 -0
  260. data/vendor/repo.or.cz/nasm/test/absolute.asm +40 -0
  261. data/vendor/repo.or.cz/nasm/test/addr64x.asm +18 -0
  262. data/vendor/repo.or.cz/nasm/test/align13.asm +19 -0
  263. data/vendor/repo.or.cz/nasm/test/align13s.asm +20 -0
  264. data/vendor/repo.or.cz/nasm/test/alonesym-obj.asm +166 -0
  265. data/vendor/repo.or.cz/nasm/test/andbyte.asm +15 -0
  266. data/vendor/repo.or.cz/nasm/test/aoutso.asm +99 -0
  267. data/vendor/repo.or.cz/nasm/test/aouttest.asm +86 -0
  268. data/vendor/repo.or.cz/nasm/test/aouttest.c +36 -0
  269. data/vendor/repo.or.cz/nasm/test/avx.asm +46 -0
  270. data/vendor/repo.or.cz/nasm/test/avx005.asm +529 -0
  271. data/vendor/repo.or.cz/nasm/test/avx2.asm +1608 -0
  272. data/vendor/repo.or.cz/nasm/test/avx512cd.asm +106 -0
  273. data/vendor/repo.or.cz/nasm/test/avx512er.asm +144 -0
  274. data/vendor/repo.or.cz/nasm/test/avx512f.asm +7000 -0
  275. data/vendor/repo.or.cz/nasm/test/avx512pf.asm +88 -0
  276. data/vendor/repo.or.cz/nasm/test/bcd.asm +23 -0
  277. data/vendor/repo.or.cz/nasm/test/binexe.asm +35 -0
  278. data/vendor/repo.or.cz/nasm/test/bintest.asm +59 -0
  279. data/vendor/repo.or.cz/nasm/test/bisect.sh +22 -0
  280. data/vendor/repo.or.cz/nasm/test/br1879590.asm +25 -0
  281. data/vendor/repo.or.cz/nasm/test/br2003451.asm +17 -0
  282. data/vendor/repo.or.cz/nasm/test/br2030823.asm +7 -0
  283. data/vendor/repo.or.cz/nasm/test/br2148476.asm +221 -0
  284. data/vendor/repo.or.cz/nasm/test/br2222615.asm +19 -0
  285. data/vendor/repo.or.cz/nasm/test/br2496848.asm +42 -0
  286. data/vendor/repo.or.cz/nasm/test/br3005117.asm +26 -0
  287. data/vendor/repo.or.cz/nasm/test/br3026808.asm +20 -0
  288. data/vendor/repo.or.cz/nasm/test/br3028880.asm +8 -0
  289. data/vendor/repo.or.cz/nasm/test/br3041451.asm +59 -0
  290. data/vendor/repo.or.cz/nasm/test/br3058845.asm +14 -0
  291. data/vendor/repo.or.cz/nasm/test/br3066383.asm +70 -0
  292. data/vendor/repo.or.cz/nasm/test/br3074517.asm +12 -0
  293. data/vendor/repo.or.cz/nasm/test/br3092924.asm +25 -0
  294. data/vendor/repo.or.cz/nasm/test/br3104312.asm +11 -0
  295. data/vendor/repo.or.cz/nasm/test/br3109604.asm +9 -0
  296. data/vendor/repo.or.cz/nasm/test/br3174983.asm +9 -0
  297. data/vendor/repo.or.cz/nasm/test/br3187743.asm +7 -0
  298. data/vendor/repo.or.cz/nasm/test/br3189064.asm +7 -0
  299. data/vendor/repo.or.cz/nasm/test/br3200749.asm +9 -0
  300. data/vendor/repo.or.cz/nasm/test/br3385573.asm +11 -0
  301. data/vendor/repo.or.cz/nasm/test/br3392252.asm +43 -0
  302. data/vendor/repo.or.cz/nasm/test/br3392259.asm +8 -0
  303. data/vendor/repo.or.cz/nasm/test/br3392363.asm +4 -0
  304. data/vendor/repo.or.cz/nasm/test/br3392392.asm +16 -0
  305. data/vendor/repo.or.cz/nasm/test/br3392396.asm +5 -0
  306. data/vendor/repo.or.cz/nasm/test/br3392411.asm +22 -0
  307. data/vendor/repo.or.cz/nasm/test/br3392418.asm +3 -0
  308. data/vendor/repo.or.cz/nasm/test/br3392439.asm +25 -0
  309. data/vendor/repo.or.cz/nasm/test/br3392442.asm +6 -0
  310. data/vendor/repo.or.cz/nasm/test/br560575.asm +17 -0
  311. data/vendor/repo.or.cz/nasm/test/br560873.asm +27 -0
  312. data/vendor/repo.or.cz/nasm/test/br890790.asm +7 -0
  313. data/vendor/repo.or.cz/nasm/test/br890790_i.asm +1 -0
  314. data/vendor/repo.or.cz/nasm/test/br978756.asm +7 -0
  315. data/vendor/repo.or.cz/nasm/test/changed.asm +383 -0
  316. data/vendor/repo.or.cz/nasm/test/cofftest.asm +85 -0
  317. data/vendor/repo.or.cz/nasm/test/cofftest.c +35 -0
  318. data/vendor/repo.or.cz/nasm/test/crc32.asm +37 -0
  319. data/vendor/repo.or.cz/nasm/test/cv8struc.asm +14 -0
  320. data/vendor/repo.or.cz/nasm/test/dtbcd.asm +72 -0
  321. data/vendor/repo.or.cz/nasm/test/elf64so.asm +118 -0
  322. data/vendor/repo.or.cz/nasm/test/elfso.asm +100 -0
  323. data/vendor/repo.or.cz/nasm/test/elftest.asm +87 -0
  324. data/vendor/repo.or.cz/nasm/test/elftest.c +38 -0
  325. data/vendor/repo.or.cz/nasm/test/elftest64.c +43 -0
  326. data/vendor/repo.or.cz/nasm/test/elif.asm +39 -0
  327. data/vendor/repo.or.cz/nasm/test/expimp.asm +90 -0
  328. data/vendor/repo.or.cz/nasm/test/far64.asm +10 -0
  329. data/vendor/repo.or.cz/nasm/test/float.asm +186 -0
  330. data/vendor/repo.or.cz/nasm/test/float8.asm +135 -0
  331. data/vendor/repo.or.cz/nasm/test/floatb.asm +35 -0
  332. data/vendor/repo.or.cz/nasm/test/floatexp.asm +382 -0
  333. data/vendor/repo.or.cz/nasm/test/floatize.asm +19 -0
  334. data/vendor/repo.or.cz/nasm/test/floattest.asm +28 -0
  335. data/vendor/repo.or.cz/nasm/test/floatx.asm +525 -0
  336. data/vendor/repo.or.cz/nasm/test/fpu.asm +127 -0
  337. data/vendor/repo.or.cz/nasm/test/fwdopt.asm +133 -0
  338. data/vendor/repo.or.cz/nasm/test/fwdoptpp.asm +150 -0
  339. data/vendor/repo.or.cz/nasm/test/gas2nasm.py +104 -0
  340. data/vendor/repo.or.cz/nasm/test/gather.asm +11 -0
  341. data/vendor/repo.or.cz/nasm/test/gotoff64.asm +25 -0
  342. data/vendor/repo.or.cz/nasm/test/hexfp.asm +25 -0
  343. data/vendor/repo.or.cz/nasm/test/hle.asm +19 -0
  344. data/vendor/repo.or.cz/nasm/test/ifelse.asm +46 -0
  345. data/vendor/repo.or.cz/nasm/test/ifenv.asm +31 -0
  346. data/vendor/repo.or.cz/nasm/test/ifmacro.asm +413 -0
  347. data/vendor/repo.or.cz/nasm/test/iftoken.asm +317 -0
  348. data/vendor/repo.or.cz/nasm/test/iftoken.pl +32 -0
  349. data/vendor/repo.or.cz/nasm/test/ilog2.asm +271 -0
  350. data/vendor/repo.or.cz/nasm/test/imacro.asm +8 -0
  351. data/vendor/repo.or.cz/nasm/test/imm.asm +23 -0
  352. data/vendor/repo.or.cz/nasm/test/imm64.asm +61 -0
  353. data/vendor/repo.or.cz/nasm/test/immwarn.asm +91 -0
  354. data/vendor/repo.or.cz/nasm/test/imul.asm +117 -0
  355. data/vendor/repo.or.cz/nasm/test/inc1.asm +6 -0
  356. data/vendor/repo.or.cz/nasm/test/inc2.asm +8 -0
  357. data/vendor/repo.or.cz/nasm/test/incbin.asm +7 -0
  358. data/vendor/repo.or.cz/nasm/test/incbin.data +2 -0
  359. data/vendor/repo.or.cz/nasm/test/inctest.asm +15 -0
  360. data/vendor/repo.or.cz/nasm/test/insnlbl.asm +12 -0
  361. data/vendor/repo.or.cz/nasm/test/invlpga.asm +11 -0
  362. data/vendor/repo.or.cz/nasm/test/jmp64.asm +19 -0
  363. data/vendor/repo.or.cz/nasm/test/lar_lsl.asm +124 -0
  364. data/vendor/repo.or.cz/nasm/test/larlsl.asm +23 -0
  365. data/vendor/repo.or.cz/nasm/test/lnxhello.asm +54 -0
  366. data/vendor/repo.or.cz/nasm/test/local.asm +19 -0
  367. data/vendor/repo.or.cz/nasm/test/loopoffs.asm +12 -0
  368. data/vendor/repo.or.cz/nasm/test/lwp.asm +213 -0
  369. data/vendor/repo.or.cz/nasm/test/macro-defaults.asm +64 -0
  370. data/vendor/repo.or.cz/nasm/test/macroerr.asm +12 -0
  371. data/vendor/repo.or.cz/nasm/test/macroerr.inc +3 -0
  372. data/vendor/repo.or.cz/nasm/test/mmxsize.asm +38 -0
  373. data/vendor/repo.or.cz/nasm/test/movd.asm +12 -0
  374. data/vendor/repo.or.cz/nasm/test/movd64.asm +15 -0
  375. data/vendor/repo.or.cz/nasm/test/movimm.asm +28 -0
  376. data/vendor/repo.or.cz/nasm/test/movnti.asm +10 -0
  377. data/vendor/repo.or.cz/nasm/test/mpx-64.asm +120 -0
  378. data/vendor/repo.or.cz/nasm/test/mpx.asm +89 -0
  379. data/vendor/repo.or.cz/nasm/test/multisection.asm +96 -0
  380. data/vendor/repo.or.cz/nasm/test/nasmformat.asm +17 -0
  381. data/vendor/repo.or.cz/nasm/test/new +9 -0
  382. data/vendor/repo.or.cz/nasm/test/newrdwr.asm +24 -0
  383. data/vendor/repo.or.cz/nasm/test/nop.asm +17 -0
  384. data/vendor/repo.or.cz/nasm/test/nullfile.asm +4 -0
  385. data/vendor/repo.or.cz/nasm/test/objexe.asm +30 -0
  386. data/vendor/repo.or.cz/nasm/test/objlink.c +33 -0
  387. data/vendor/repo.or.cz/nasm/test/objtest.asm +85 -0
  388. data/vendor/repo.or.cz/nasm/test/optimization.asm +104 -0
  389. data/vendor/repo.or.cz/nasm/test/org.asm +18 -0
  390. data/vendor/repo.or.cz/nasm/test/paste.asm +12 -0
  391. data/vendor/repo.or.cz/nasm/test/pcrel.asm +52 -0
  392. data/vendor/repo.or.cz/nasm/test/perf/label.pl +18 -0
  393. data/vendor/repo.or.cz/nasm/test/perf/macro.pl +18 -0
  394. data/vendor/repo.or.cz/nasm/test/perf/token.pl +23 -0
  395. data/vendor/repo.or.cz/nasm/test/performtest.pl +192 -0
  396. data/vendor/repo.or.cz/nasm/test/pextrw.asm +3 -0
  397. data/vendor/repo.or.cz/nasm/test/pinsr16.asm +53 -0
  398. data/vendor/repo.or.cz/nasm/test/pinsr32.asm +53 -0
  399. data/vendor/repo.or.cz/nasm/test/pinsr64.asm +68 -0
  400. data/vendor/repo.or.cz/nasm/test/popcnt.asm +32 -0
  401. data/vendor/repo.or.cz/nasm/test/ppindirect.asm +42 -0
  402. data/vendor/repo.or.cz/nasm/test/pragma.asm +12 -0
  403. data/vendor/repo.or.cz/nasm/test/prefix66.asm +28 -0
  404. data/vendor/repo.or.cz/nasm/test/ptr.asm +4 -0
  405. data/vendor/repo.or.cz/nasm/test/pushseg.asm +17 -0
  406. data/vendor/repo.or.cz/nasm/test/r13.asm +15 -0
  407. data/vendor/repo.or.cz/nasm/test/radix.asm +54 -0
  408. data/vendor/repo.or.cz/nasm/test/rdpid.asm +21 -0
  409. data/vendor/repo.or.cz/nasm/test/reldef.asm +57 -0
  410. data/vendor/repo.or.cz/nasm/test/relocs.asm +20 -0
  411. data/vendor/repo.or.cz/nasm/test/riprel.asm +5357 -0
  412. data/vendor/repo.or.cz/nasm/test/riprel.pl +29 -0
  413. data/vendor/repo.or.cz/nasm/test/riprel2.asm +11 -0
  414. data/vendor/repo.or.cz/nasm/test/sha-64.asm +30 -0
  415. data/vendor/repo.or.cz/nasm/test/sha.asm +31 -0
  416. data/vendor/repo.or.cz/nasm/test/smartalign16.asm +36 -0
  417. data/vendor/repo.or.cz/nasm/test/smartalign32.asm +36 -0
  418. data/vendor/repo.or.cz/nasm/test/smartalign64.asm +36 -0
  419. data/vendor/repo.or.cz/nasm/test/splitea.asm +11 -0
  420. data/vendor/repo.or.cz/nasm/test/sreg.asm +65 -0
  421. data/vendor/repo.or.cz/nasm/test/strlen.asm +5 -0
  422. data/vendor/repo.or.cz/nasm/test/struc.asm +33 -0
  423. data/vendor/repo.or.cz/nasm/test/test67.asm +38 -0
  424. data/vendor/repo.or.cz/nasm/test/testdos.asm +13 -0
  425. data/vendor/repo.or.cz/nasm/test/testnos3.asm +973 -0
  426. data/vendor/repo.or.cz/nasm/test/time.asm +11 -0
  427. data/vendor/repo.or.cz/nasm/test/times.asm +21 -0
  428. data/vendor/repo.or.cz/nasm/test/timesneg.asm +3 -0
  429. data/vendor/repo.or.cz/nasm/test/tmap.nas +1447 -0
  430. data/vendor/repo.or.cz/nasm/test/uscore.asm +15 -0
  431. data/vendor/repo.or.cz/nasm/test/utf.asm +82 -0
  432. data/vendor/repo.or.cz/nasm/test/vaesenc.asm +22 -0
  433. data/vendor/repo.or.cz/nasm/test/vex.asm +9 -0
  434. data/vendor/repo.or.cz/nasm/test/vgather.asm +76 -0
  435. data/vendor/repo.or.cz/nasm/test/vmread.asm +26 -0
  436. data/vendor/repo.or.cz/nasm/test/weirdpaste.asm +29 -0
  437. data/vendor/repo.or.cz/nasm/test/xchg.asm +96 -0
  438. data/vendor/repo.or.cz/nasm/test/xcrypt.asm +24 -0
  439. data/vendor/repo.or.cz/nasm/test/xmm0.asm +12 -0
  440. data/vendor/repo.or.cz/nasm/test/zerobyte.asm +22 -0
  441. data/vendor/repo.or.cz/nasm/tools/cleanfile +176 -0
  442. data/vendor/repo.or.cz/nasm/tools/cleanpatch +258 -0
  443. data/vendor/repo.or.cz/nasm/tools/mkdep.pl +261 -0
  444. data/vendor/repo.or.cz/nasm/tools/release +105 -0
  445. data/vendor/repo.or.cz/nasm/tools/syncfiles.pl +137 -0
  446. data/vendor/repo.or.cz/nasm/tools/tag-release +58 -0
  447. data/vendor/repo.or.cz/nasm/version +1 -0
  448. data/vendor/repo.or.cz/nasm/version.pl +189 -0
  449. data/vendor/repo.or.cz/nasm/x86/disp8.c +131 -0
  450. data/vendor/repo.or.cz/nasm/x86/insns-iflags.ph +280 -0
  451. data/vendor/repo.or.cz/nasm/x86/insns.dat +5371 -0
  452. data/vendor/repo.or.cz/nasm/x86/insns.pl +1043 -0
  453. data/vendor/repo.or.cz/nasm/x86/regs.dat +138 -0
  454. data/vendor/repo.or.cz/nasm/x86/regs.pl +204 -0
  455. metadata +520 -0
@@ -0,0 +1,67 @@
1
+ @random_sv_vectors = (
2
+ [0x076259c3, 0xe291c26c], [0xaee7ac5c, 0xcabdec91],
3
+ [0x5d3862fb, 0x2e8a3060], [0x6fb3635c, 0x4783593a],
4
+ [0x13f0eafb, 0x407e486a], [0x7436afdd, 0xd04c4829],
5
+ [0xace2d0e4, 0x80575791], [0x2dd9a392, 0xdc1e869e],
6
+ [0x199c3e38, 0x026a9d67], [0x9f911c85, 0x3a489c87],
7
+ [0x9ac31028, 0x0b6e14b2], [0x2ccfbcf9, 0x3f9f2308],
8
+ [0x2e0210fb, 0x392f380f], [0x14ab403a, 0x81a11065],
9
+ [0xd496f63c, 0x53196b13], [0x48a34d7f, 0x2ffc6036],
10
+ [0x34ea8e9d, 0xcd1ed098], [0x2da1a3f2, 0x3d6c23f2],
11
+ [0xca7374da, 0x06054f89], [0xc909a0bb, 0x31d6c0d2],
12
+ [0x87454496, 0x15b360d7], [0x9eebbd12, 0x89532131],
13
+ [0x1119c65b, 0xd9e49705], [0x60c3be0b, 0xd6cc7c8a],
14
+ [0x117723cd, 0x40af090f], [0xfc284f51, 0x3dcf4c06],
15
+ [0xb41fcda4, 0xec03644c], [0xd99e1ea7, 0x84eaf76d],
16
+ [0x534b956a, 0x06d3fb8d], [0x2da4bb09, 0x078092eb],
17
+ [0x6a5be463, 0xbfa51a88], [0xc4e8be95, 0xe7eec27c],
18
+ [0x15a1fbb9, 0xfadc08cd], [0x0bcfab08, 0xbccade0f],
19
+ [0x629f1f6c, 0x90ccede7], [0x5c2b26aa, 0x1f0b1fce],
20
+ [0xdfe0e3fd, 0xbd7c3cfb], [0xa1628ca9, 0x90a05686],
21
+ [0xbf0267f2, 0xd2964139], [0x8009a9b9, 0xd2195918],
22
+ [0xfcc7b5f8, 0xc108c643], [0xf447d4b0, 0x71953863],
23
+ [0x95d091ed, 0xdbe01948], [0x81dec325, 0x2bfecda2],
24
+ [0x2ed2acaa, 0x7eeaa0d0], [0xb7b0a20e, 0x8bf5c01b],
25
+ [0x75eb3917, 0xfd2f758f], [0xb33a5b49, 0x8a8cedf6],
26
+ [0x3aaf2757, 0x69b319a9], [0x32cfa41b, 0xeba36f19],
27
+ [0xf54209dd, 0x941f3a08], [0x232703bb, 0x786a6f84],
28
+ [0x4937b242, 0xc9f07398], [0x74dc5d39, 0x550a58e8],
29
+ [0x6c9aebdc, 0x8fda5069], [0x5ae6d62a, 0x05cd24a3],
30
+ [0x8111e50a, 0xc1c6d19b], [0xb980a92b, 0x448b4d1f],
31
+ [0x568cf58a, 0x8bcb93ca], [0xfe96002f, 0x410cd2f1],
32
+ [0xaf511e45, 0x99e4872f], [0x822c20bc, 0x3db49ddd],
33
+ [0x184fec4e, 0xbb82ec52], [0x30ca5326, 0xf3180297],
34
+ [0x97962aa4, 0x7d4bc6d4], [0x9199a315, 0x8e9f18c6],
35
+ [0xead69a7e, 0x3262a683], [0xe261ec00, 0x81edc47a],
36
+ [0x06080c0e, 0x6d18fa9f], [0x1771ec43, 0x6747ed66],
37
+ [0xe71fe587, 0xe81ad0f3], [0xf083e80c, 0x0898bcd8],
38
+ [0x30328c5a, 0x2efb4ee7], [0xd04fa5d7, 0xec9c9f18],
39
+ [0x87820480, 0x48932224], [0xb1f18815, 0x1b27e3e3],
40
+ [0x79aa440c, 0xdf17a8fc], [0x8a83d404, 0x10fdec8c],
41
+ [0x7d4dfe60, 0x573561ee], [0x60315c7d, 0xa0692af6],
42
+ [0xb3ca4d52, 0x89ca832f], [0x9ebc5c79, 0xa84a28fc],
43
+ [0xdfa76008, 0x7772cf7c], [0xb0e3a15f, 0xbdc35aee],
44
+ [0x6e252b03, 0x32b2107d], [0x20dcc2a3, 0x21987229],
45
+ [0x848e3ad8, 0xe692a0c6], [0xdd07fa50, 0x0b64e1ae],
46
+ [0xc4072bc2, 0x2f120bba], [0xdb3af26e, 0xacab0c48],
47
+ [0xd7d4b59a, 0xcf72a7a7], [0x4628de45, 0x4dfb2750],
48
+ [0x7519211f, 0x4798b536], [0x19984af3, 0xffd2aa19],
49
+ [0x1372d9c0, 0x7512153a], [0x295d19da, 0x497416e5],
50
+ [0x70932c73, 0x8a9bf591], [0xa0960860, 0xfaa7dc61],
51
+ [0xd425f548, 0x43aeda4d], [0xaa2573c7, 0x01a2553d],
52
+ [0x988e71d7, 0xd3c004a4], [0x3da87545, 0x2197af10],
53
+ [0x2f89e592, 0xa686e2fc], [0x7b88018a, 0xae66d575],
54
+ [0x93215591, 0xed69e6ea], [0x4fcacc4a, 0x4d2aba97],
55
+ [0xbedb923b, 0x500b2f1a], [0x0b6d8aa0, 0x232511b0],
56
+ [0x282fb3ee, 0x23695de0], [0x0c455dfe, 0x820cca3f],
57
+ [0xe893868c, 0x87f698f6], [0xb6428730, 0x56e576ce],
58
+ [0xf3843ee7, 0xba79bc28], [0xa1c9ca45, 0x30c479c1],
59
+ [0xbfc244c2, 0xa9af65f0], [0x6eeb88eb, 0x62b4479c],
60
+ [0xcc328fe5, 0x60f5c9bf], [0x31aa2c21, 0xc55575fb],
61
+ [0x9429492d, 0x8e80612a], [0xb12fe59e, 0xf0e1e97b],
62
+ [0xc2501dad, 0x4a9f4bbf], [0x65ae8366, 0x3e8b0983],
63
+ [0xd5fc062a, 0xba74f808], [0x7398cc0a, 0x39a6a269],
64
+ [0x5581dd60, 0xff79d28c], [0xea5e52b3, 0x9be66c71],
65
+ [0x8f6e02a4, 0xe27318b5], [0xe8bceb99, 0xa48a7f2c],
66
+ );
67
+ 1;
@@ -0,0 +1,185 @@
1
+ *******
2
+ This file is getting obsolete. RDOFF documentation is written in Texinfo now.
3
+ Directory doc/ contains Texinfo source (rdoff.texi) and makefile for creating
4
+ different output formats (info, HTML, PostScript and PDF).
5
+ *******
6
+
7
+ RDOFF Utilities, version 0.3.2
8
+ ==============================
9
+
10
+ The files contained in this directory are the C source code of a set
11
+ of tools (and general purpose library files) for the manipulation of
12
+ RDOFF version 2 object files. Note that these programs (with the
13
+ exception of 'rdfdump') will NOT work with version 1 object files.
14
+ Version 1 of RDOFF is no longer supported.
15
+
16
+ There is also a 'doc' directory with 'v1-v2' file, which documents the
17
+ differences between RDOFF 1 and 2, and an 'rdoff2.texi' (texinfo source),
18
+ with complete documentation for the new format.
19
+
20
+ Here is a brief summary of the programs' usage:
21
+
22
+
23
+ rdfdump
24
+ =======
25
+
26
+ This tool prints a list of the header records in an RDOFF object in
27
+ human-readable form, and optionally prints a hex dump of the contents
28
+ of the segments.
29
+
30
+ Usage:
31
+ rdfdump [-v] filename
32
+
33
+ The -v flag specifies that the hex dump (see above) should be printed.
34
+
35
+ Changes from previous versions:
36
+
37
+ * rdfdump supports both version 1 and 2 of RDOFF.
38
+ * rdfdump now gives warnings if the RDOFF2 format is violated (it
39
+ looks for incorrect lengths for header records, and checks the
40
+ overall length count at the start of the file)
41
+
42
+
43
+ ldrdf
44
+ =====
45
+
46
+ This tool is a version of unix 'ld' (or DOS 'link') for use with RDOFF
47
+ files. It is capable of linking RDOFF objects, and libraries produced
48
+ with the 'rdlib' utility discussed below.
49
+
50
+ In normal usage, its command line takes the form:
51
+
52
+ ldrdf [-o output-file] object files [-llibrary ...]
53
+
54
+ Modules in libraries are not linked to the program unless they are
55
+ referred to.
56
+
57
+ Most of its options are not implemented, but those that are are listed here:
58
+
59
+ -2 redirect all output from stderr to stdout. It is useful for some
60
+ systems which don't have such a redirection in shell (e.g. DOS).
61
+
62
+ -v increase verbosity level. Currently 4 verbosity levels are
63
+ available: default (which only prints error information), normal
64
+ (which prints information about the produced object, -v), medium
65
+ (which prints information about what the program is doing, -v -v)
66
+ and high (which prints all available information, -v -v -v).
67
+
68
+ -a change alignment value to which multiple segments combigned into
69
+ a single segment should be aligned (must be either 1, 2, 4, 8,
70
+ 16, 32 or 256. Default is 16).
71
+
72
+ -s strip exported symbols from output file. Symbols marked as
73
+ SYM_GLOBAL are never stripped.
74
+
75
+ -x warn about unresolved symbols.
76
+
77
+ -xe issue an error when at least one symbol is unresolved.
78
+
79
+ -o name write output to file <name>. The default output filename
80
+ is 'aout.rdx'.
81
+
82
+ -j path specify search path for object files. Default path is a
83
+ current directory.
84
+
85
+ -L path specify search path for libraries. Default path is a
86
+ current directory.
87
+
88
+ -g file embed 'file' as a first header record with type 'generic'.
89
+
90
+
91
+ rdx
92
+ ===
93
+
94
+ This program simply loads and executes an RDOFF object, by calling
95
+ '_main', which it expects to be a C-style function, which will accept
96
+ two parameters, argc and argv in normal C style.
97
+
98
+
99
+ rdflib
100
+ ======
101
+
102
+ This program creates a library file for use with ldrdf.
103
+
104
+ It is supplied with a shell script 'makelib' which should probably be used
105
+ to create libraries.
106
+
107
+ Usage:
108
+ rdflib command library [optional arguments]
109
+
110
+ Valid commands are:
111
+
112
+ c Create (or truncate) the library
113
+ a Add a module (requires a filename and a name to give the
114
+ module, ie 'rdflib a libc.rdl strcpy.rdf strcpy' puts the
115
+ file 'strcpy.rdf' into 'libc.rdl', and calls it 'strcpy'.
116
+ x Extract (arguments are the opposite to the 'a' command,
117
+ ie you'd do 'rdflib x libc.rdl strcpy strcpy.rdf to get
118
+ a copy of strcpy.rdf back out again...)
119
+ t List modules in the library
120
+ d Delete modules from library
121
+ r Replace a module in library with a new file
122
+
123
+
124
+ Library functions
125
+ =================
126
+
127
+ The files 'rdoff.c', 'rdoff.h', 'rdfload.c' and 'rdfload.h' contain
128
+ code which you may find useful. They retain the same interface as
129
+ the previous version, so any code that used them previously should
130
+ still work OK (maybe). 'rdoff.c' contains at the top a line:
131
+
132
+ #define STRICT_ERRORS
133
+
134
+ Comment this line out if you wish to use record types other than the
135
+ 7 predefined types; it will then not report such records as an error,
136
+ but accept them gracefully, and read them byte for byte into
137
+ a 'generic record' (see the definition of GenericRec in 'rdoff.h').
138
+
139
+ If you are using these functions to write RDF modules (rather than
140
+ just reading them), then please note the existance of a new function
141
+ 'rdfaddsegment(rdf_headerbuf,long)'. This must be called once for
142
+ each segment in your object, to tell the header writing functions
143
+ how long the segment is.
144
+
145
+
146
+ BUGS
147
+ ====
148
+
149
+ This product has recently undergone a major revision, and as such there
150
+ are probably several bugs left over from the testing phase (although the
151
+ previous version had quite a few that have now been fixed!). Could you
152
+ please report any bugs to maintainers at the addresses below, including the
153
+ following information:
154
+
155
+ - A description of the bug
156
+ - What you think the program should be doing
157
+ - Which programs you are using
158
+ - Which operating system you are using, and which C compiler was used to
159
+ compile the programs (or state that the pre-compiled versions were used).
160
+ - If appropriate, any of the following:
161
+ * source code (preferably cut down to a minimum that will still assemble
162
+ and show the bug)
163
+ * the output of rdfdump on produced modules (or send the module if the
164
+ problem is in code generated)
165
+ * exact descriptions of error messages/symptoms/etc
166
+
167
+
168
+ TODO
169
+ ====
170
+
171
+ There are still various things unimplemented that we would like to add.
172
+ If you want to find out what these are, search near the top of each *.c
173
+ file for a comment containing the word 'TODO'. A brief list is given here:
174
+
175
+ - Improve the performace of ldrdf (there are several enhancements I can think
176
+ of that wouldn't be too hard to add)
177
+ - Stop assuming that we're on a little endian machine
178
+ - Check for more bugs
179
+
180
+
181
+ MAINTAINERS
182
+ ===========
183
+
184
+ Yuri Zaporozhets <r_tty@yahoo.co.uk> - primary maintainer
185
+ Julian Hall <jules@dsf.org.uk> - original designer and author
@@ -0,0 +1,44 @@
1
+ /*
2
+ * collectn.c - implements variable length pointer arrays [collections].
3
+ *
4
+ * This file is public domain.
5
+ */
6
+
7
+ #include "rdfutils.h"
8
+ #include "collectn.h"
9
+
10
+ void collection_init(Collection * c)
11
+ {
12
+ int i;
13
+
14
+ for (i = 0; i < 32; i++)
15
+ c->p[i] = NULL;
16
+ c->next = NULL;
17
+ }
18
+
19
+ void **colln(Collection * c, int index)
20
+ {
21
+ while (index >= 32) {
22
+ index -= 32;
23
+ if (c->next == NULL) {
24
+ c->next = nasm_malloc(sizeof(Collection));
25
+ collection_init(c->next);
26
+ }
27
+ c = c->next;
28
+ }
29
+ return &(c->p[index]);
30
+ }
31
+
32
+ void collection_reset(Collection * c)
33
+ {
34
+ int i;
35
+
36
+ if (c->next) {
37
+ collection_reset(c->next);
38
+ nasm_free(c->next);
39
+ }
40
+
41
+ c->next = NULL;
42
+ for (i = 0; i < 32; i++)
43
+ c->p[i] = NULL;
44
+ }
@@ -0,0 +1,22 @@
1
+ /*
2
+ * collectn.h - header file for 'collection' abstract data type.
3
+ *
4
+ * This file is public domain, and does not come under the NASM license.
5
+ * It, aint32_t with 'collectn.c' implements what is basically a variable
6
+ * length array (of pointers).
7
+ */
8
+
9
+ #ifndef RDOFF_COLLECTN_H
10
+ #define RDOFF_COLLECTN_H 1
11
+
12
+ typedef struct tagCollection {
13
+ void *p[32]; /* array of pointers to objects */
14
+
15
+ struct tagCollection *next;
16
+ } Collection;
17
+
18
+ void collection_init(Collection * c);
19
+ void **colln(Collection * c, int index);
20
+ void collection_reset(Collection * c);
21
+
22
+ #endif
@@ -0,0 +1,37 @@
1
+ #
2
+ # Make info documentation
3
+ #
4
+
5
+ AUXFILES = *.aux *.cp *.fn *.ky *.log *.pg *.toc *.tp *.vr *.dvi
6
+
7
+ SRCS = rdoff.texi
8
+ OUTS = rdoff.info rdoff.html rdoff.ps rdoff.pdf
9
+
10
+
11
+ ## Implicit rules
12
+ %.html : %.texi
13
+ makeinfo --html $<
14
+
15
+ %.dvi : %.texi
16
+ texi2dvi $<
17
+
18
+ %.ps: %.dvi
19
+ dvips $<
20
+
21
+ %.pdf: %.dvi
22
+ dvipdf $<
23
+
24
+
25
+ ## Explicit rules
26
+ all: info
27
+
28
+ info: rdoff.info
29
+
30
+ html: rdoff.html
31
+
32
+ ps: rdoff.ps
33
+
34
+ pdf: rdoff.pdf
35
+
36
+ clean:
37
+ rm -f $(OUTS) $(AUXFILES)
@@ -0,0 +1,137 @@
1
+ \input texinfo @c -*-texinfo-*-
2
+ @c %**start of header
3
+ @setfilename rdoff.info
4
+ @settitle Relocatable Dynamic Object File Format (RDOFF)
5
+ @afourpaper
6
+ @c %**end of header
7
+
8
+ @titlepage
9
+ @title Relocatable Dynamic Object File Format (RDOFF)
10
+ @author Yuri Zaporozhets @email{r_tty@@yahoo.co.uk}
11
+ @author Julian Hall @email{jules@@dsf.org.uk}
12
+ @end titlepage
13
+
14
+ @ifinfo
15
+ Copyright @copyright{} 2002-2015 Netwide Assembler Project.
16
+ Written by Yuri Zaporozhets @email{r_tty@@yahoo.co.uk}
17
+ Based on various sources and notes written by Julian Hall @email{jules@@dsf.org.uk}
18
+ Distributed under GNU documentation license.
19
+ @end ifinfo
20
+
21
+ @ifnottex
22
+ @node Top, Overview, (dir), (dir)
23
+ @top RDOFF
24
+
25
+ RDOFF is a Relocatable Dynamic Object File Format.
26
+
27
+ @end ifnottex
28
+
29
+ @menu
30
+ * Overview:: Introduction.
31
+ * Structure:: Structure of RDOFF file.
32
+ * Utilities:: Description of RDOFF utilities.
33
+ @end menu
34
+
35
+ @node Overview
36
+ @chapter Introduction
37
+
38
+ RDOFF was designed initially to test the object-file production
39
+ interface to NASM. It soon became apparent that it could be enhanced
40
+ for use in serious applications due to its simplicity; code to load
41
+ and execute an RDOFF object module is very simple. It also contains
42
+ enhancements to allow it to be linked with a dynamic link library at
43
+ either run- or load- time, depending on how complex you wish to make
44
+ your loader.
45
+
46
+ @node Structure
47
+ @chapter Structure of RDOFF file
48
+
49
+ RDOFF module consists of three parts:
50
+
51
+ @itemize
52
+ @item Master header
53
+ @item Header (may be omited)
54
+ @item Sections
55
+ @end itemize
56
+
57
+ @dfn{Master header} contains signature, version and size information.
58
+
59
+ @dfn{Header} consists of zero or more @ref{Records, records}.
60
+
61
+ @dfn{Sections} represent actual contents of the file. Each section is prepended
62
+ by a section header.
63
+
64
+ @node Records, , ,Structure
65
+ @section Records that may appear in RDOFF header
66
+
67
+ @menu
68
+ * Relocation:: Relocation records.
69
+ * Import:: Declaring external symbols.
70
+ * Export:: Declaring public and exported symbols.
71
+ * DLL:: Specifying a run-time library name.
72
+ * BSS:: Reserving space in BSS section.
73
+ * Segment relocation:: Complexity of relocation in segmented systems.
74
+ * Far import:: External 'far' symbols.
75
+ * Module name:: Specifying module name.
76
+ * Common variable:: Declaring common variables.
77
+ * Generic record:: Embedding general-purpose data into the header.
78
+ @end menu
79
+
80
+ @node Relocation
81
+ @subsection Relocation records
82
+
83
+ @node Import
84
+ @subsection Declaring external and imported symbols
85
+
86
+ @node Export
87
+ @subsection Declaring public and exported symbols
88
+
89
+ @node DLL
90
+ @subsection Specifying a run-time library name
91
+
92
+ @node BSS
93
+ @subsection Reserving space in BSS section
94
+
95
+ @node Segment relocation
96
+ @subsection Complexity of relocation in segmented systems
97
+
98
+ @node Far import
99
+ @subsection External 'far' symbols.
100
+
101
+ @node Module name
102
+ @subsection Specifying module name.
103
+
104
+ @node Common variable
105
+ @subsection Declaring common variables.
106
+
107
+ @node Generic record
108
+ @subsection Embedding general-purpose data into the header.
109
+
110
+
111
+ @node Utilities
112
+ @chapter RDOFF utilities
113
+
114
+ @menu
115
+ * rdfdump:: Dump the contents of RDOFF file.
116
+ * ldrdf:: RDOFF linker.
117
+ * rdflib:: RDOFF librarian.
118
+ * rdlar:: New RDOFF librarian/archiver.
119
+ * rdx:: Load and execute RDOFF module.
120
+ @end menu
121
+
122
+ @node rdfdump
123
+ @section @command{rdfdump} - dump the contents of RDOFF file
124
+
125
+ @node ldrdf
126
+ @section @command{ldrdf} - RDOFF linker
127
+
128
+ @node rdflib
129
+ @section @command{rdflib} - RDOFF librarian
130
+
131
+ @node rdlar
132
+ @section @command{rdlar} - new RDOFF librarian/archiver
133
+
134
+ @node rdx
135
+ @section @command{rdx} - load and execute RDOFF module
136
+
137
+ @bye