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.
- checksums.yaml +7 -0
- data/.gitignore +57 -0
- data/LICENSE.txt +29 -0
- data/README.org +34 -0
- data/ext/laag/nasm/extconf.rb +16 -0
- data/laag-nasm.gemspec +20 -0
- data/lib/laag/nasm.rb +29 -0
- data/patches/Makefile.in.patch +13 -0
- data/vendor/repo.or.cz/nasm/.gitignore +102 -0
- data/vendor/repo.or.cz/nasm/AUTHORS +137 -0
- data/vendor/repo.or.cz/nasm/CHANGES +2 -0
- data/vendor/repo.or.cz/nasm/ChangeLog +2905 -0
- data/vendor/repo.or.cz/nasm/INSTALL +102 -0
- data/vendor/repo.or.cz/nasm/LICENSE +29 -0
- data/vendor/repo.or.cz/nasm/Makefile.in +855 -0
- data/vendor/repo.or.cz/nasm/Mkfiles/README +46 -0
- data/vendor/repo.or.cz/nasm/Mkfiles/msvc.mak +732 -0
- data/vendor/repo.or.cz/nasm/Mkfiles/openwcom.mak +706 -0
- data/vendor/repo.or.cz/nasm/README +23 -0
- data/vendor/repo.or.cz/nasm/SubmittingPatches +116 -0
- data/vendor/repo.or.cz/nasm/TODO +376 -0
- data/vendor/repo.or.cz/nasm/aclocal.m4 +139 -0
- data/vendor/repo.or.cz/nasm/asm/assemble.c +2957 -0
- data/vendor/repo.or.cz/nasm/asm/assemble.h +54 -0
- data/vendor/repo.or.cz/nasm/asm/directiv.c +566 -0
- data/vendor/repo.or.cz/nasm/asm/directiv.dat +92 -0
- data/vendor/repo.or.cz/nasm/asm/error.c +202 -0
- data/vendor/repo.or.cz/nasm/asm/eval.c +1014 -0
- data/vendor/repo.or.cz/nasm/asm/eval.h +49 -0
- data/vendor/repo.or.cz/nasm/asm/exprdump.c +79 -0
- data/vendor/repo.or.cz/nasm/asm/exprlib.c +200 -0
- data/vendor/repo.or.cz/nasm/asm/float.c +952 -0
- data/vendor/repo.or.cz/nasm/asm/float.h +54 -0
- data/vendor/repo.or.cz/nasm/asm/labels.c +540 -0
- data/vendor/repo.or.cz/nasm/asm/listing.c +346 -0
- data/vendor/repo.or.cz/nasm/asm/listing.h +113 -0
- data/vendor/repo.or.cz/nasm/asm/nasm.c +1855 -0
- data/vendor/repo.or.cz/nasm/asm/parser.c +1167 -0
- data/vendor/repo.or.cz/nasm/asm/parser.h +45 -0
- data/vendor/repo.or.cz/nasm/asm/phash.pl +109 -0
- data/vendor/repo.or.cz/nasm/asm/pptok.dat +96 -0
- data/vendor/repo.or.cz/nasm/asm/pptok.pl +271 -0
- data/vendor/repo.or.cz/nasm/asm/pragma.c +218 -0
- data/vendor/repo.or.cz/nasm/asm/preproc-nop.c +188 -0
- data/vendor/repo.or.cz/nasm/asm/preproc.c +5459 -0
- data/vendor/repo.or.cz/nasm/asm/preproc.h +55 -0
- data/vendor/repo.or.cz/nasm/asm/quote.c +479 -0
- data/vendor/repo.or.cz/nasm/asm/quote.h +44 -0
- data/vendor/repo.or.cz/nasm/asm/rdstrnum.c +68 -0
- data/vendor/repo.or.cz/nasm/asm/segalloc.c +51 -0
- data/vendor/repo.or.cz/nasm/asm/stdscan.c +345 -0
- data/vendor/repo.or.cz/nasm/asm/stdscan.h +49 -0
- data/vendor/repo.or.cz/nasm/asm/strfunc.c +359 -0
- data/vendor/repo.or.cz/nasm/asm/tokens.dat +135 -0
- data/vendor/repo.or.cz/nasm/asm/tokhash.pl +284 -0
- data/vendor/repo.or.cz/nasm/autogen.sh +9 -0
- data/vendor/repo.or.cz/nasm/common/common.c +122 -0
- data/vendor/repo.or.cz/nasm/config/msvc.h +192 -0
- data/vendor/repo.or.cz/nasm/config/unknown.h +51 -0
- data/vendor/repo.or.cz/nasm/config/watcom.h +74 -0
- data/vendor/repo.or.cz/nasm/configure.ac +253 -0
- data/vendor/repo.or.cz/nasm/contrib/MSVC6.txt +25 -0
- data/vendor/repo.or.cz/nasm/contrib/VSrules/nasm.README +16 -0
- data/vendor/repo.or.cz/nasm/contrib/VSrules/nasm.rules +79 -0
- data/vendor/repo.or.cz/nasm/disasm/disasm.c +1735 -0
- data/vendor/repo.or.cz/nasm/disasm/disasm.h +49 -0
- data/vendor/repo.or.cz/nasm/disasm/ndisasm.c +397 -0
- data/vendor/repo.or.cz/nasm/disasm/sync.c +132 -0
- data/vendor/repo.or.cz/nasm/disasm/sync.h +45 -0
- data/vendor/repo.or.cz/nasm/doc/Makefile.in +86 -0
- data/vendor/repo.or.cz/nasm/doc/README +20 -0
- data/vendor/repo.or.cz/nasm/doc/afmmetrics.ph +102 -0
- data/vendor/repo.or.cz/nasm/doc/changes.src +2588 -0
- data/vendor/repo.or.cz/nasm/doc/findfont.ph +180 -0
- data/vendor/repo.or.cz/nasm/doc/genps.pl +1294 -0
- data/vendor/repo.or.cz/nasm/doc/inslist.pl +108 -0
- data/vendor/repo.or.cz/nasm/doc/internal.doc +290 -0
- data/vendor/repo.or.cz/nasm/doc/local.css +1 -0
- data/vendor/repo.or.cz/nasm/doc/nasmdoc.css +150 -0
- data/vendor/repo.or.cz/nasm/doc/nasmdoc.src +8309 -0
- data/vendor/repo.or.cz/nasm/doc/nasmlogo.eps +212 -0
- data/vendor/repo.or.cz/nasm/doc/nasmlogw.png +0 -0
- data/vendor/repo.or.cz/nasm/doc/psfonts.ph +53 -0
- data/vendor/repo.or.cz/nasm/doc/pspdf.pl +98 -0
- data/vendor/repo.or.cz/nasm/doc/pswidth.ph +25 -0
- data/vendor/repo.or.cz/nasm/doc/rdsrc.pl +1111 -0
- data/vendor/repo.or.cz/nasm/doc/ttfmetrics.ph +63 -0
- data/vendor/repo.or.cz/nasm/headers/c +33 -0
- data/vendor/repo.or.cz/nasm/headers/doc +33 -0
- data/vendor/repo.or.cz/nasm/headers/mac +33 -0
- data/vendor/repo.or.cz/nasm/headers/perl +33 -0
- data/vendor/repo.or.cz/nasm/include/compiler.h +277 -0
- data/vendor/repo.or.cz/nasm/include/disp8.h +45 -0
- data/vendor/repo.or.cz/nasm/include/error.h +135 -0
- data/vendor/repo.or.cz/nasm/include/hashtbl.h +85 -0
- data/vendor/repo.or.cz/nasm/include/iflag.h +173 -0
- data/vendor/repo.or.cz/nasm/include/insns.h +76 -0
- data/vendor/repo.or.cz/nasm/include/labels.h +60 -0
- data/vendor/repo.or.cz/nasm/include/md5.h +21 -0
- data/vendor/repo.or.cz/nasm/include/nasm.h +1246 -0
- data/vendor/repo.or.cz/nasm/include/nasmint.h +219 -0
- data/vendor/repo.or.cz/nasm/include/nasmlib.h +524 -0
- data/vendor/repo.or.cz/nasm/include/opflags.h +271 -0
- data/vendor/repo.or.cz/nasm/include/perfhash.h +52 -0
- data/vendor/repo.or.cz/nasm/include/raa.h +46 -0
- data/vendor/repo.or.cz/nasm/include/rbtree.h +51 -0
- data/vendor/repo.or.cz/nasm/include/rdoff.h +169 -0
- data/vendor/repo.or.cz/nasm/include/saa.h +94 -0
- data/vendor/repo.or.cz/nasm/include/strlist.h +55 -0
- data/vendor/repo.or.cz/nasm/include/tables.h +70 -0
- data/vendor/repo.or.cz/nasm/include/ver.h +47 -0
- data/vendor/repo.or.cz/nasm/install-sh +250 -0
- data/vendor/repo.or.cz/nasm/macros/altreg.mac +107 -0
- data/vendor/repo.or.cz/nasm/macros/fp.mac +54 -0
- data/vendor/repo.or.cz/nasm/macros/ifunc.mac +48 -0
- data/vendor/repo.or.cz/nasm/macros/macros.pl +294 -0
- data/vendor/repo.or.cz/nasm/macros/smartalign.mac +189 -0
- data/vendor/repo.or.cz/nasm/macros/standard.mac +226 -0
- data/vendor/repo.or.cz/nasm/misc/Doxyfile +752 -0
- data/vendor/repo.or.cz/nasm/misc/Nindent +18 -0
- data/vendor/repo.or.cz/nasm/misc/README +2 -0
- data/vendor/repo.or.cz/nasm/misc/c16.mac +82 -0
- data/vendor/repo.or.cz/nasm/misc/c32.mac +52 -0
- data/vendor/repo.or.cz/nasm/misc/crcgen.c +44 -0
- data/vendor/repo.or.cz/nasm/misc/exebin.mac +57 -0
- data/vendor/repo.or.cz/nasm/misc/exebin2.mac +114 -0
- data/vendor/repo.or.cz/nasm/misc/fmtinsns.pl +40 -0
- data/vendor/repo.or.cz/nasm/misc/genfma.pl +63 -0
- data/vendor/repo.or.cz/nasm/misc/hints.txt +26 -0
- data/vendor/repo.or.cz/nasm/misc/magic +6 -0
- data/vendor/repo.or.cz/nasm/misc/myC32.mac +121 -0
- data/vendor/repo.or.cz/nasm/misc/nasm.sl +320 -0
- data/vendor/repo.or.cz/nasm/misc/nasmstab +296 -0
- data/vendor/repo.or.cz/nasm/misc/omfdump.c +517 -0
- data/vendor/repo.or.cz/nasm/misc/pmw.bat +9 -0
- data/vendor/repo.or.cz/nasm/misc/proc32.ash +441 -0
- data/vendor/repo.or.cz/nasm/misc/scitech.mac +1223 -0
- data/vendor/repo.or.cz/nasm/misc/xcrcgen.c +80 -0
- data/vendor/repo.or.cz/nasm/nasm.spec.in +83 -0
- data/vendor/repo.or.cz/nasm/nasm.spec.sed +3 -0
- data/vendor/repo.or.cz/nasm/nasm.txt +306 -0
- data/vendor/repo.or.cz/nasm/nasmlib/badenum.c +43 -0
- data/vendor/repo.or.cz/nasm/nasmlib/bsi.c +77 -0
- data/vendor/repo.or.cz/nasm/nasmlib/crc64.c +189 -0
- data/vendor/repo.or.cz/nasm/nasmlib/file.c +259 -0
- data/vendor/repo.or.cz/nasm/nasmlib/file.h +128 -0
- data/vendor/repo.or.cz/nasm/nasmlib/filename.c +69 -0
- data/vendor/repo.or.cz/nasm/nasmlib/hashtbl.c +232 -0
- data/vendor/repo.or.cz/nasm/nasmlib/ilog2.c +168 -0
- data/vendor/repo.or.cz/nasm/nasmlib/malloc.c +108 -0
- data/vendor/repo.or.cz/nasm/nasmlib/md5c.c +247 -0
- data/vendor/repo.or.cz/nasm/nasmlib/mmap.c +139 -0
- data/vendor/repo.or.cz/nasm/nasmlib/path.c +186 -0
- data/vendor/repo.or.cz/nasm/nasmlib/perfhash.c +55 -0
- data/vendor/repo.or.cz/nasm/nasmlib/perfhash.pl +362 -0
- data/vendor/repo.or.cz/nasm/nasmlib/raa.c +173 -0
- data/vendor/repo.or.cz/nasm/nasmlib/rbtree.c +119 -0
- data/vendor/repo.or.cz/nasm/nasmlib/readnum.c +172 -0
- data/vendor/repo.or.cz/nasm/nasmlib/realpath.c +135 -0
- data/vendor/repo.or.cz/nasm/nasmlib/saa.c +431 -0
- data/vendor/repo.or.cz/nasm/nasmlib/srcfile.c +128 -0
- data/vendor/repo.or.cz/nasm/nasmlib/string.c +242 -0
- data/vendor/repo.or.cz/nasm/nasmlib/strlist.c +100 -0
- data/vendor/repo.or.cz/nasm/nasmlib/ver.c +51 -0
- data/vendor/repo.or.cz/nasm/nasmlib/zerobuf.c +42 -0
- data/vendor/repo.or.cz/nasm/ndisasm.txt +94 -0
- data/vendor/repo.or.cz/nasm/nsis/NASMMultiUser.nsh +478 -0
- data/vendor/repo.or.cz/nasm/nsis/getpearch.pl +76 -0
- data/vendor/repo.or.cz/nasm/nsis/nasm-un.ico +0 -0
- data/vendor/repo.or.cz/nasm/nsis/nasm.ico +0 -0
- data/vendor/repo.or.cz/nasm/nsis/nasm.nsi +241 -0
- data/vendor/repo.or.cz/nasm/output/codeview.c +814 -0
- data/vendor/repo.or.cz/nasm/output/dwarf.h +566 -0
- data/vendor/repo.or.cz/nasm/output/elf.h +537 -0
- data/vendor/repo.or.cz/nasm/output/legacy.c +112 -0
- data/vendor/repo.or.cz/nasm/output/nulldbg.c +93 -0
- data/vendor/repo.or.cz/nasm/output/nullout.c +51 -0
- data/vendor/repo.or.cz/nasm/output/outaout.c +954 -0
- data/vendor/repo.or.cz/nasm/output/outaout.mac +37 -0
- data/vendor/repo.or.cz/nasm/output/outas86.c +650 -0
- data/vendor/repo.or.cz/nasm/output/outas86.mac +37 -0
- data/vendor/repo.or.cz/nasm/output/outbin.c +1713 -0
- data/vendor/repo.or.cz/nasm/output/outbin.mac +40 -0
- data/vendor/repo.or.cz/nasm/output/outcoff.c +1242 -0
- data/vendor/repo.or.cz/nasm/output/outcoff.mac +43 -0
- data/vendor/repo.or.cz/nasm/output/outdbg.c +425 -0
- data/vendor/repo.or.cz/nasm/output/outelf.c +3370 -0
- data/vendor/repo.or.cz/nasm/output/outelf.h +156 -0
- data/vendor/repo.or.cz/nasm/output/outelf.mac +41 -0
- data/vendor/repo.or.cz/nasm/output/outform.c +120 -0
- data/vendor/repo.or.cz/nasm/output/outform.h +379 -0
- data/vendor/repo.or.cz/nasm/output/outieee.c +1528 -0
- data/vendor/repo.or.cz/nasm/output/outlib.c +58 -0
- data/vendor/repo.or.cz/nasm/output/outlib.h +63 -0
- data/vendor/repo.or.cz/nasm/output/outmacho.c +2387 -0
- data/vendor/repo.or.cz/nasm/output/outmacho.mac +49 -0
- data/vendor/repo.or.cz/nasm/output/outobj.c +2725 -0
- data/vendor/repo.or.cz/nasm/output/outobj.mac +49 -0
- data/vendor/repo.or.cz/nasm/output/outrdf.mac +40 -0
- data/vendor/repo.or.cz/nasm/output/outrdf2.c +791 -0
- data/vendor/repo.or.cz/nasm/output/outrdf2.mac +43 -0
- data/vendor/repo.or.cz/nasm/output/pecoff.h +532 -0
- data/vendor/repo.or.cz/nasm/output/stabs.h +144 -0
- data/vendor/repo.or.cz/nasm/perllib/crc64.ph +158 -0
- data/vendor/repo.or.cz/nasm/perllib/gensv.pl +34 -0
- data/vendor/repo.or.cz/nasm/perllib/phash.ph +200 -0
- data/vendor/repo.or.cz/nasm/perllib/random_sv_vectors.ph +67 -0
- data/vendor/repo.or.cz/nasm/rdoff/README +185 -0
- data/vendor/repo.or.cz/nasm/rdoff/collectn.c +44 -0
- data/vendor/repo.or.cz/nasm/rdoff/collectn.h +22 -0
- data/vendor/repo.or.cz/nasm/rdoff/doc/Makefile +37 -0
- data/vendor/repo.or.cz/nasm/rdoff/doc/rdoff.texi +137 -0
- data/vendor/repo.or.cz/nasm/rdoff/doc/v1-v2.txt +62 -0
- data/vendor/repo.or.cz/nasm/rdoff/hash.c +122 -0
- data/vendor/repo.or.cz/nasm/rdoff/hash.h +17 -0
- data/vendor/repo.or.cz/nasm/rdoff/ldrdf.1 +41 -0
- data/vendor/repo.or.cz/nasm/rdoff/ldrdf.c +1395 -0
- data/vendor/repo.or.cz/nasm/rdoff/ldsegs.h +59 -0
- data/vendor/repo.or.cz/nasm/rdoff/rdf2bin.1 +65 -0
- data/vendor/repo.or.cz/nasm/rdoff/rdf2bin.c +431 -0
- data/vendor/repo.or.cz/nasm/rdoff/rdf2com.1 +1 -0
- data/vendor/repo.or.cz/nasm/rdoff/rdf2ihx.1 +1 -0
- data/vendor/repo.or.cz/nasm/rdoff/rdf2ith.1 +1 -0
- data/vendor/repo.or.cz/nasm/rdoff/rdf2srec.1 +1 -0
- data/vendor/repo.or.cz/nasm/rdoff/rdfdump.1 +24 -0
- data/vendor/repo.or.cz/nasm/rdoff/rdfdump.c +347 -0
- data/vendor/repo.or.cz/nasm/rdoff/rdflib.1 +39 -0
- data/vendor/repo.or.cz/nasm/rdoff/rdflib.c +434 -0
- data/vendor/repo.or.cz/nasm/rdoff/rdfload.c +213 -0
- data/vendor/repo.or.cz/nasm/rdoff/rdfload.h +29 -0
- data/vendor/repo.or.cz/nasm/rdoff/rdfutils.h +165 -0
- data/vendor/repo.or.cz/nasm/rdoff/rdlar.c +492 -0
- data/vendor/repo.or.cz/nasm/rdoff/rdlar.h +34 -0
- data/vendor/repo.or.cz/nasm/rdoff/rdlib.c +290 -0
- data/vendor/repo.or.cz/nasm/rdoff/rdlib.h +62 -0
- data/vendor/repo.or.cz/nasm/rdoff/rdoff.c +621 -0
- data/vendor/repo.or.cz/nasm/rdoff/rdx.1 +21 -0
- data/vendor/repo.or.cz/nasm/rdoff/rdx.c +90 -0
- data/vendor/repo.or.cz/nasm/rdoff/segtab.c +172 -0
- data/vendor/repo.or.cz/nasm/rdoff/segtab.h +45 -0
- data/vendor/repo.or.cz/nasm/rdoff/symtab.c +159 -0
- data/vendor/repo.or.cz/nasm/rdoff/symtab.h +55 -0
- data/vendor/repo.or.cz/nasm/rdoff/test/Makefile +10 -0
- data/vendor/repo.or.cz/nasm/rdoff/test/makelib.sh +14 -0
- data/vendor/repo.or.cz/nasm/rdoff/test/rdfseg.asm +20 -0
- data/vendor/repo.or.cz/nasm/rdoff/test/rdfseg2.asm +12 -0
- data/vendor/repo.or.cz/nasm/rdoff/test/rdftest1.asm +54 -0
- data/vendor/repo.or.cz/nasm/rdoff/test/rdftest2.asm +33 -0
- data/vendor/repo.or.cz/nasm/rdoff/test/rdtlib.asm +48 -0
- data/vendor/repo.or.cz/nasm/rdoff/test/rdtmain.asm +47 -0
- data/vendor/repo.or.cz/nasm/rdoff/test/testlib.asm +18 -0
- data/vendor/repo.or.cz/nasm/stdlib/snprintf.c +29 -0
- data/vendor/repo.or.cz/nasm/stdlib/strlcpy.c +51 -0
- data/vendor/repo.or.cz/nasm/stdlib/strnlen.c +46 -0
- data/vendor/repo.or.cz/nasm/stdlib/vsnprintf.c +51 -0
- data/vendor/repo.or.cz/nasm/test/Makefile +106 -0
- data/vendor/repo.or.cz/nasm/test/_file_.asm +5 -0
- data/vendor/repo.or.cz/nasm/test/_version.asm +2 -0
- data/vendor/repo.or.cz/nasm/test/a32offs.asm +9 -0
- data/vendor/repo.or.cz/nasm/test/absolute.asm +40 -0
- data/vendor/repo.or.cz/nasm/test/addr64x.asm +18 -0
- data/vendor/repo.or.cz/nasm/test/align13.asm +19 -0
- data/vendor/repo.or.cz/nasm/test/align13s.asm +20 -0
- data/vendor/repo.or.cz/nasm/test/alonesym-obj.asm +166 -0
- data/vendor/repo.or.cz/nasm/test/andbyte.asm +15 -0
- data/vendor/repo.or.cz/nasm/test/aoutso.asm +99 -0
- data/vendor/repo.or.cz/nasm/test/aouttest.asm +86 -0
- data/vendor/repo.or.cz/nasm/test/aouttest.c +36 -0
- data/vendor/repo.or.cz/nasm/test/avx.asm +46 -0
- data/vendor/repo.or.cz/nasm/test/avx005.asm +529 -0
- data/vendor/repo.or.cz/nasm/test/avx2.asm +1608 -0
- data/vendor/repo.or.cz/nasm/test/avx512cd.asm +106 -0
- data/vendor/repo.or.cz/nasm/test/avx512er.asm +144 -0
- data/vendor/repo.or.cz/nasm/test/avx512f.asm +7000 -0
- data/vendor/repo.or.cz/nasm/test/avx512pf.asm +88 -0
- data/vendor/repo.or.cz/nasm/test/bcd.asm +23 -0
- data/vendor/repo.or.cz/nasm/test/binexe.asm +35 -0
- data/vendor/repo.or.cz/nasm/test/bintest.asm +59 -0
- data/vendor/repo.or.cz/nasm/test/bisect.sh +22 -0
- data/vendor/repo.or.cz/nasm/test/br1879590.asm +25 -0
- data/vendor/repo.or.cz/nasm/test/br2003451.asm +17 -0
- data/vendor/repo.or.cz/nasm/test/br2030823.asm +7 -0
- data/vendor/repo.or.cz/nasm/test/br2148476.asm +221 -0
- data/vendor/repo.or.cz/nasm/test/br2222615.asm +19 -0
- data/vendor/repo.or.cz/nasm/test/br2496848.asm +42 -0
- data/vendor/repo.or.cz/nasm/test/br3005117.asm +26 -0
- data/vendor/repo.or.cz/nasm/test/br3026808.asm +20 -0
- data/vendor/repo.or.cz/nasm/test/br3028880.asm +8 -0
- data/vendor/repo.or.cz/nasm/test/br3041451.asm +59 -0
- data/vendor/repo.or.cz/nasm/test/br3058845.asm +14 -0
- data/vendor/repo.or.cz/nasm/test/br3066383.asm +70 -0
- data/vendor/repo.or.cz/nasm/test/br3074517.asm +12 -0
- data/vendor/repo.or.cz/nasm/test/br3092924.asm +25 -0
- data/vendor/repo.or.cz/nasm/test/br3104312.asm +11 -0
- data/vendor/repo.or.cz/nasm/test/br3109604.asm +9 -0
- data/vendor/repo.or.cz/nasm/test/br3174983.asm +9 -0
- data/vendor/repo.or.cz/nasm/test/br3187743.asm +7 -0
- data/vendor/repo.or.cz/nasm/test/br3189064.asm +7 -0
- data/vendor/repo.or.cz/nasm/test/br3200749.asm +9 -0
- data/vendor/repo.or.cz/nasm/test/br3385573.asm +11 -0
- data/vendor/repo.or.cz/nasm/test/br3392252.asm +43 -0
- data/vendor/repo.or.cz/nasm/test/br3392259.asm +8 -0
- data/vendor/repo.or.cz/nasm/test/br3392363.asm +4 -0
- data/vendor/repo.or.cz/nasm/test/br3392392.asm +16 -0
- data/vendor/repo.or.cz/nasm/test/br3392396.asm +5 -0
- data/vendor/repo.or.cz/nasm/test/br3392411.asm +22 -0
- data/vendor/repo.or.cz/nasm/test/br3392418.asm +3 -0
- data/vendor/repo.or.cz/nasm/test/br3392439.asm +25 -0
- data/vendor/repo.or.cz/nasm/test/br3392442.asm +6 -0
- data/vendor/repo.or.cz/nasm/test/br560575.asm +17 -0
- data/vendor/repo.or.cz/nasm/test/br560873.asm +27 -0
- data/vendor/repo.or.cz/nasm/test/br890790.asm +7 -0
- data/vendor/repo.or.cz/nasm/test/br890790_i.asm +1 -0
- data/vendor/repo.or.cz/nasm/test/br978756.asm +7 -0
- data/vendor/repo.or.cz/nasm/test/changed.asm +383 -0
- data/vendor/repo.or.cz/nasm/test/cofftest.asm +85 -0
- data/vendor/repo.or.cz/nasm/test/cofftest.c +35 -0
- data/vendor/repo.or.cz/nasm/test/crc32.asm +37 -0
- data/vendor/repo.or.cz/nasm/test/cv8struc.asm +14 -0
- data/vendor/repo.or.cz/nasm/test/dtbcd.asm +72 -0
- data/vendor/repo.or.cz/nasm/test/elf64so.asm +118 -0
- data/vendor/repo.or.cz/nasm/test/elfso.asm +100 -0
- data/vendor/repo.or.cz/nasm/test/elftest.asm +87 -0
- data/vendor/repo.or.cz/nasm/test/elftest.c +38 -0
- data/vendor/repo.or.cz/nasm/test/elftest64.c +43 -0
- data/vendor/repo.or.cz/nasm/test/elif.asm +39 -0
- data/vendor/repo.or.cz/nasm/test/expimp.asm +90 -0
- data/vendor/repo.or.cz/nasm/test/far64.asm +10 -0
- data/vendor/repo.or.cz/nasm/test/float.asm +186 -0
- data/vendor/repo.or.cz/nasm/test/float8.asm +135 -0
- data/vendor/repo.or.cz/nasm/test/floatb.asm +35 -0
- data/vendor/repo.or.cz/nasm/test/floatexp.asm +382 -0
- data/vendor/repo.or.cz/nasm/test/floatize.asm +19 -0
- data/vendor/repo.or.cz/nasm/test/floattest.asm +28 -0
- data/vendor/repo.or.cz/nasm/test/floatx.asm +525 -0
- data/vendor/repo.or.cz/nasm/test/fpu.asm +127 -0
- data/vendor/repo.or.cz/nasm/test/fwdopt.asm +133 -0
- data/vendor/repo.or.cz/nasm/test/fwdoptpp.asm +150 -0
- data/vendor/repo.or.cz/nasm/test/gas2nasm.py +104 -0
- data/vendor/repo.or.cz/nasm/test/gather.asm +11 -0
- data/vendor/repo.or.cz/nasm/test/gotoff64.asm +25 -0
- data/vendor/repo.or.cz/nasm/test/hexfp.asm +25 -0
- data/vendor/repo.or.cz/nasm/test/hle.asm +19 -0
- data/vendor/repo.or.cz/nasm/test/ifelse.asm +46 -0
- data/vendor/repo.or.cz/nasm/test/ifenv.asm +31 -0
- data/vendor/repo.or.cz/nasm/test/ifmacro.asm +413 -0
- data/vendor/repo.or.cz/nasm/test/iftoken.asm +317 -0
- data/vendor/repo.or.cz/nasm/test/iftoken.pl +32 -0
- data/vendor/repo.or.cz/nasm/test/ilog2.asm +271 -0
- data/vendor/repo.or.cz/nasm/test/imacro.asm +8 -0
- data/vendor/repo.or.cz/nasm/test/imm.asm +23 -0
- data/vendor/repo.or.cz/nasm/test/imm64.asm +61 -0
- data/vendor/repo.or.cz/nasm/test/immwarn.asm +91 -0
- data/vendor/repo.or.cz/nasm/test/imul.asm +117 -0
- data/vendor/repo.or.cz/nasm/test/inc1.asm +6 -0
- data/vendor/repo.or.cz/nasm/test/inc2.asm +8 -0
- data/vendor/repo.or.cz/nasm/test/incbin.asm +7 -0
- data/vendor/repo.or.cz/nasm/test/incbin.data +2 -0
- data/vendor/repo.or.cz/nasm/test/inctest.asm +15 -0
- data/vendor/repo.or.cz/nasm/test/insnlbl.asm +12 -0
- data/vendor/repo.or.cz/nasm/test/invlpga.asm +11 -0
- data/vendor/repo.or.cz/nasm/test/jmp64.asm +19 -0
- data/vendor/repo.or.cz/nasm/test/lar_lsl.asm +124 -0
- data/vendor/repo.or.cz/nasm/test/larlsl.asm +23 -0
- data/vendor/repo.or.cz/nasm/test/lnxhello.asm +54 -0
- data/vendor/repo.or.cz/nasm/test/local.asm +19 -0
- data/vendor/repo.or.cz/nasm/test/loopoffs.asm +12 -0
- data/vendor/repo.or.cz/nasm/test/lwp.asm +213 -0
- data/vendor/repo.or.cz/nasm/test/macro-defaults.asm +64 -0
- data/vendor/repo.or.cz/nasm/test/macroerr.asm +12 -0
- data/vendor/repo.or.cz/nasm/test/macroerr.inc +3 -0
- data/vendor/repo.or.cz/nasm/test/mmxsize.asm +38 -0
- data/vendor/repo.or.cz/nasm/test/movd.asm +12 -0
- data/vendor/repo.or.cz/nasm/test/movd64.asm +15 -0
- data/vendor/repo.or.cz/nasm/test/movimm.asm +28 -0
- data/vendor/repo.or.cz/nasm/test/movnti.asm +10 -0
- data/vendor/repo.or.cz/nasm/test/mpx-64.asm +120 -0
- data/vendor/repo.or.cz/nasm/test/mpx.asm +89 -0
- data/vendor/repo.or.cz/nasm/test/multisection.asm +96 -0
- data/vendor/repo.or.cz/nasm/test/nasmformat.asm +17 -0
- data/vendor/repo.or.cz/nasm/test/new +9 -0
- data/vendor/repo.or.cz/nasm/test/newrdwr.asm +24 -0
- data/vendor/repo.or.cz/nasm/test/nop.asm +17 -0
- data/vendor/repo.or.cz/nasm/test/nullfile.asm +4 -0
- data/vendor/repo.or.cz/nasm/test/objexe.asm +30 -0
- data/vendor/repo.or.cz/nasm/test/objlink.c +33 -0
- data/vendor/repo.or.cz/nasm/test/objtest.asm +85 -0
- data/vendor/repo.or.cz/nasm/test/optimization.asm +104 -0
- data/vendor/repo.or.cz/nasm/test/org.asm +18 -0
- data/vendor/repo.or.cz/nasm/test/paste.asm +12 -0
- data/vendor/repo.or.cz/nasm/test/pcrel.asm +52 -0
- data/vendor/repo.or.cz/nasm/test/perf/label.pl +18 -0
- data/vendor/repo.or.cz/nasm/test/perf/macro.pl +18 -0
- data/vendor/repo.or.cz/nasm/test/perf/token.pl +23 -0
- data/vendor/repo.or.cz/nasm/test/performtest.pl +192 -0
- data/vendor/repo.or.cz/nasm/test/pextrw.asm +3 -0
- data/vendor/repo.or.cz/nasm/test/pinsr16.asm +53 -0
- data/vendor/repo.or.cz/nasm/test/pinsr32.asm +53 -0
- data/vendor/repo.or.cz/nasm/test/pinsr64.asm +68 -0
- data/vendor/repo.or.cz/nasm/test/popcnt.asm +32 -0
- data/vendor/repo.or.cz/nasm/test/ppindirect.asm +42 -0
- data/vendor/repo.or.cz/nasm/test/pragma.asm +12 -0
- data/vendor/repo.or.cz/nasm/test/prefix66.asm +28 -0
- data/vendor/repo.or.cz/nasm/test/ptr.asm +4 -0
- data/vendor/repo.or.cz/nasm/test/pushseg.asm +17 -0
- data/vendor/repo.or.cz/nasm/test/r13.asm +15 -0
- data/vendor/repo.or.cz/nasm/test/radix.asm +54 -0
- data/vendor/repo.or.cz/nasm/test/rdpid.asm +21 -0
- data/vendor/repo.or.cz/nasm/test/reldef.asm +57 -0
- data/vendor/repo.or.cz/nasm/test/relocs.asm +20 -0
- data/vendor/repo.or.cz/nasm/test/riprel.asm +5357 -0
- data/vendor/repo.or.cz/nasm/test/riprel.pl +29 -0
- data/vendor/repo.or.cz/nasm/test/riprel2.asm +11 -0
- data/vendor/repo.or.cz/nasm/test/sha-64.asm +30 -0
- data/vendor/repo.or.cz/nasm/test/sha.asm +31 -0
- data/vendor/repo.or.cz/nasm/test/smartalign16.asm +36 -0
- data/vendor/repo.or.cz/nasm/test/smartalign32.asm +36 -0
- data/vendor/repo.or.cz/nasm/test/smartalign64.asm +36 -0
- data/vendor/repo.or.cz/nasm/test/splitea.asm +11 -0
- data/vendor/repo.or.cz/nasm/test/sreg.asm +65 -0
- data/vendor/repo.or.cz/nasm/test/strlen.asm +5 -0
- data/vendor/repo.or.cz/nasm/test/struc.asm +33 -0
- data/vendor/repo.or.cz/nasm/test/test67.asm +38 -0
- data/vendor/repo.or.cz/nasm/test/testdos.asm +13 -0
- data/vendor/repo.or.cz/nasm/test/testnos3.asm +973 -0
- data/vendor/repo.or.cz/nasm/test/time.asm +11 -0
- data/vendor/repo.or.cz/nasm/test/times.asm +21 -0
- data/vendor/repo.or.cz/nasm/test/timesneg.asm +3 -0
- data/vendor/repo.or.cz/nasm/test/tmap.nas +1447 -0
- data/vendor/repo.or.cz/nasm/test/uscore.asm +15 -0
- data/vendor/repo.or.cz/nasm/test/utf.asm +82 -0
- data/vendor/repo.or.cz/nasm/test/vaesenc.asm +22 -0
- data/vendor/repo.or.cz/nasm/test/vex.asm +9 -0
- data/vendor/repo.or.cz/nasm/test/vgather.asm +76 -0
- data/vendor/repo.or.cz/nasm/test/vmread.asm +26 -0
- data/vendor/repo.or.cz/nasm/test/weirdpaste.asm +29 -0
- data/vendor/repo.or.cz/nasm/test/xchg.asm +96 -0
- data/vendor/repo.or.cz/nasm/test/xcrypt.asm +24 -0
- data/vendor/repo.or.cz/nasm/test/xmm0.asm +12 -0
- data/vendor/repo.or.cz/nasm/test/zerobyte.asm +22 -0
- data/vendor/repo.or.cz/nasm/tools/cleanfile +176 -0
- data/vendor/repo.or.cz/nasm/tools/cleanpatch +258 -0
- data/vendor/repo.or.cz/nasm/tools/mkdep.pl +261 -0
- data/vendor/repo.or.cz/nasm/tools/release +105 -0
- data/vendor/repo.or.cz/nasm/tools/syncfiles.pl +137 -0
- data/vendor/repo.or.cz/nasm/tools/tag-release +58 -0
- data/vendor/repo.or.cz/nasm/version +1 -0
- data/vendor/repo.or.cz/nasm/version.pl +189 -0
- data/vendor/repo.or.cz/nasm/x86/disp8.c +131 -0
- data/vendor/repo.or.cz/nasm/x86/insns-iflags.ph +280 -0
- data/vendor/repo.or.cz/nasm/x86/insns.dat +5371 -0
- data/vendor/repo.or.cz/nasm/x86/insns.pl +1043 -0
- data/vendor/repo.or.cz/nasm/x86/regs.dat +138 -0
- data/vendor/repo.or.cz/nasm/x86/regs.pl +204 -0
- metadata +520 -0
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
;Testname=test; Arguments=-fbin -ofpu.bin; Files=stdout stderr fpu.bin
|
|
2
|
+
|
|
3
|
+
; relaxed encodings for FPU instructions, which NASM should support
|
|
4
|
+
; -----------------------------------------------------------------
|
|
5
|
+
|
|
6
|
+
%define void
|
|
7
|
+
%define reg_fpu0 st0
|
|
8
|
+
%define reg_fpu st1
|
|
9
|
+
|
|
10
|
+
; no operands instead of one operand:
|
|
11
|
+
|
|
12
|
+
; F(U)COM(P), FCOM2, FCOMP3, FCOMP5
|
|
13
|
+
|
|
14
|
+
FCOM void
|
|
15
|
+
FCOMP void
|
|
16
|
+
FUCOM void
|
|
17
|
+
FUCOMP void
|
|
18
|
+
; FCOM2 void
|
|
19
|
+
; FCOMP3 void
|
|
20
|
+
; FCOMP5 void
|
|
21
|
+
|
|
22
|
+
; FLD, FST, FSTP, FSTP1, FSTP8, FSTP9
|
|
23
|
+
|
|
24
|
+
FLD void
|
|
25
|
+
FST void
|
|
26
|
+
FSTP void
|
|
27
|
+
; FSTP1 void
|
|
28
|
+
; FSTP8 void
|
|
29
|
+
; FSTP9 void
|
|
30
|
+
|
|
31
|
+
; FXCH, FXCH4, FXCH7, FFREE, FFREEP
|
|
32
|
+
|
|
33
|
+
FXCH void
|
|
34
|
+
; FXCH4 void
|
|
35
|
+
; FXCH7 void
|
|
36
|
+
FFREE void
|
|
37
|
+
FFREEP void
|
|
38
|
+
|
|
39
|
+
; no operands instead of two operands:
|
|
40
|
+
|
|
41
|
+
; FADD(P), FMUL(P), FSUBR(P), FSUB(P), FDIVR(P), FDIV(P)
|
|
42
|
+
|
|
43
|
+
FADD void
|
|
44
|
+
FADDP void
|
|
45
|
+
FMUL void
|
|
46
|
+
FMULP void
|
|
47
|
+
FSUBR void
|
|
48
|
+
FSUBRP void
|
|
49
|
+
FSUB void
|
|
50
|
+
FSUBP void
|
|
51
|
+
FDIVR void
|
|
52
|
+
FDIVRP void
|
|
53
|
+
FDIV void
|
|
54
|
+
FDIVP void
|
|
55
|
+
|
|
56
|
+
; one operand instead of two operands:
|
|
57
|
+
|
|
58
|
+
; FADD, FMUL, FSUB, FSUBR, FDIV, FDIVR
|
|
59
|
+
|
|
60
|
+
FADD reg_fpu
|
|
61
|
+
FMUL reg_fpu
|
|
62
|
+
FSUB reg_fpu
|
|
63
|
+
FSUBR reg_fpu
|
|
64
|
+
FDIV reg_fpu
|
|
65
|
+
FDIVR reg_fpu
|
|
66
|
+
|
|
67
|
+
; FADD, FMUL, FSUBR, FSUB, FDIVR, FDIV (with TO qualifier)
|
|
68
|
+
|
|
69
|
+
FADD to reg_fpu
|
|
70
|
+
FMUL to reg_fpu
|
|
71
|
+
FSUBR to reg_fpu
|
|
72
|
+
FSUB to reg_fpu
|
|
73
|
+
FDIVR to reg_fpu
|
|
74
|
+
FDIV to reg_fpu
|
|
75
|
+
|
|
76
|
+
; FADDP, FMULP, FSUBRP, FSUBP, FDIVRP, FDIVP
|
|
77
|
+
|
|
78
|
+
FADDP reg_fpu
|
|
79
|
+
FMULP reg_fpu
|
|
80
|
+
FSUBRP reg_fpu
|
|
81
|
+
FSUBP reg_fpu
|
|
82
|
+
FDIVRP reg_fpu
|
|
83
|
+
FDIVP reg_fpu
|
|
84
|
+
|
|
85
|
+
; FCMOV(N)B, FCMOV(N)E, FCMOV(N)BE, FCMOV(N)U, and F(U)COMI(P)
|
|
86
|
+
|
|
87
|
+
FCMOVB reg_fpu
|
|
88
|
+
FCMOVNB reg_fpu
|
|
89
|
+
FCMOVE reg_fpu
|
|
90
|
+
FCMOVNE reg_fpu
|
|
91
|
+
FCMOVBE reg_fpu
|
|
92
|
+
FCMOVNBE reg_fpu
|
|
93
|
+
FCMOVU reg_fpu
|
|
94
|
+
FCMOVNU reg_fpu
|
|
95
|
+
FCOMI reg_fpu
|
|
96
|
+
FCOMIP reg_fpu
|
|
97
|
+
FUCOMI reg_fpu
|
|
98
|
+
FUCOMIP reg_fpu
|
|
99
|
+
|
|
100
|
+
; two operands instead of one operand:
|
|
101
|
+
|
|
102
|
+
; these don't really exist, and thus are _NOT_ supported:
|
|
103
|
+
|
|
104
|
+
; FCOM reg_fpu,reg_fpu0
|
|
105
|
+
; FCOM reg_fpu0,reg_fpu
|
|
106
|
+
; FUCOM reg_fpu,reg_fpu0
|
|
107
|
+
; FUCOM reg_fpu0,reg_fpu
|
|
108
|
+
; FCOMP reg_fpu,reg_fpu0
|
|
109
|
+
; FCOMP reg_fpu0,reg_fpu
|
|
110
|
+
; FUCOMP reg_fpu,reg_fpu0
|
|
111
|
+
; FUCOMP reg_fpu0,reg_fpu
|
|
112
|
+
|
|
113
|
+
; FCOM2 reg_fpu,reg_fpu0
|
|
114
|
+
; FCOM2 reg_fpu0,reg_fpu
|
|
115
|
+
; FCOMP3 reg_fpu,reg_fpu0
|
|
116
|
+
; FCOMP3 reg_fpu0,reg_fpu
|
|
117
|
+
; FCOMP5 reg_fpu,reg_fpu0
|
|
118
|
+
; FCOMP5 reg_fpu0,reg_fpu
|
|
119
|
+
|
|
120
|
+
; FXCH reg_fpu,reg_fpu0
|
|
121
|
+
; FXCH reg_fpu0,reg_fpu
|
|
122
|
+
; FXCH4 reg_fpu,reg_fpu0
|
|
123
|
+
; FXCH4 reg_fpu0,reg_fpu
|
|
124
|
+
; FXCH7 reg_fpu,reg_fpu0
|
|
125
|
+
; FXCH7 reg_fpu0,reg_fpu
|
|
126
|
+
|
|
127
|
+
; EOF
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
;Testname=test; Arguments=-fbin -ofwdopt.bin; Files=stdout stderr fwdopt.bin
|
|
2
|
+
n0: jmp n1
|
|
3
|
+
n1: jmp n2
|
|
4
|
+
n2: jmp n3
|
|
5
|
+
n3: jmp n4
|
|
6
|
+
n4: jmp n5
|
|
7
|
+
n5: jmp n6
|
|
8
|
+
n6: jmp n7
|
|
9
|
+
n7: jmp n8
|
|
10
|
+
n8: jmp n9
|
|
11
|
+
n9: jmp n10
|
|
12
|
+
n10: jmp n11
|
|
13
|
+
n11: jmp n12
|
|
14
|
+
n12: jmp n13
|
|
15
|
+
n13: jmp n14
|
|
16
|
+
n14: jmp n15
|
|
17
|
+
n15: jmp n16
|
|
18
|
+
n16: jmp n17
|
|
19
|
+
n17: jmp n18
|
|
20
|
+
n18: jmp n19
|
|
21
|
+
n19: jmp n20
|
|
22
|
+
n20: jmp n21
|
|
23
|
+
n21: jmp n22
|
|
24
|
+
n22: jmp n23
|
|
25
|
+
n23: jmp n24
|
|
26
|
+
n24: jmp n25
|
|
27
|
+
n25: jmp n26
|
|
28
|
+
n26: jmp n27
|
|
29
|
+
n27: jmp n28
|
|
30
|
+
n28: jmp n29
|
|
31
|
+
n29: jmp n30
|
|
32
|
+
n30: jmp n31
|
|
33
|
+
n31: jmp n32
|
|
34
|
+
n32: jmp n33
|
|
35
|
+
n33: jmp n34
|
|
36
|
+
n34: jmp n35
|
|
37
|
+
n35: jmp n36
|
|
38
|
+
n36: jmp n37
|
|
39
|
+
n37: jmp n38
|
|
40
|
+
n38: jmp n39
|
|
41
|
+
n39: jmp n40
|
|
42
|
+
n40: jmp n41
|
|
43
|
+
n41: jmp n42
|
|
44
|
+
n42: jmp n43
|
|
45
|
+
n43: jmp n44
|
|
46
|
+
n44: jmp n45
|
|
47
|
+
n45: jmp n46
|
|
48
|
+
n46: jmp n47
|
|
49
|
+
n47: jmp n48
|
|
50
|
+
n48: jmp n49
|
|
51
|
+
n49: jmp n50
|
|
52
|
+
n50: jmp n51
|
|
53
|
+
n51: jmp n52
|
|
54
|
+
n52: jmp n53
|
|
55
|
+
n53: jmp n54
|
|
56
|
+
n54: jmp n55
|
|
57
|
+
n55: jmp n56
|
|
58
|
+
n56: jmp n57
|
|
59
|
+
n57: jmp n58
|
|
60
|
+
n58: jmp n59
|
|
61
|
+
n59: jmp n60
|
|
62
|
+
n60: jmp n61
|
|
63
|
+
n61: jmp n62
|
|
64
|
+
n62: jmp n63
|
|
65
|
+
n63: jmp n64
|
|
66
|
+
n64: jmp n65
|
|
67
|
+
n65: jmp n66
|
|
68
|
+
n66: jmp n67
|
|
69
|
+
n67: jmp n68
|
|
70
|
+
n68: jmp n69
|
|
71
|
+
n69: jmp n70
|
|
72
|
+
n70: jmp n71
|
|
73
|
+
n71: jmp n72
|
|
74
|
+
n72: jmp n73
|
|
75
|
+
n73: jmp n74
|
|
76
|
+
n74: jmp n75
|
|
77
|
+
n75: jmp n76
|
|
78
|
+
n76: jmp n77
|
|
79
|
+
n77: jmp n78
|
|
80
|
+
n78: jmp n79
|
|
81
|
+
n79: jmp n80
|
|
82
|
+
n80: jmp n81
|
|
83
|
+
n81: jmp n82
|
|
84
|
+
n82: jmp n83
|
|
85
|
+
n83: jmp n84
|
|
86
|
+
n84: jmp n85
|
|
87
|
+
n85: jmp n86
|
|
88
|
+
n86: jmp n87
|
|
89
|
+
n87: jmp n88
|
|
90
|
+
n88: jmp n89
|
|
91
|
+
n89: jmp n90
|
|
92
|
+
n90: jmp n91
|
|
93
|
+
n91: jmp n92
|
|
94
|
+
n92: jmp n93
|
|
95
|
+
n93: jmp n94
|
|
96
|
+
n94: jmp n95
|
|
97
|
+
n95: jmp n96
|
|
98
|
+
n96: jmp n97
|
|
99
|
+
n97: jmp n98
|
|
100
|
+
n98: jmp n99
|
|
101
|
+
n99: jmp n100
|
|
102
|
+
n100: jmp n101
|
|
103
|
+
n101: jmp n102
|
|
104
|
+
n102: jmp n103
|
|
105
|
+
n103: jmp n104
|
|
106
|
+
n104: jmp n105
|
|
107
|
+
n105: jmp n106
|
|
108
|
+
n106: jmp n107
|
|
109
|
+
n107: jmp n108
|
|
110
|
+
n108: jmp n109
|
|
111
|
+
n109: jmp n110
|
|
112
|
+
n110: jmp n111
|
|
113
|
+
n111: jmp n112
|
|
114
|
+
n112: jmp n113
|
|
115
|
+
n113: jmp n114
|
|
116
|
+
n114: jmp n115
|
|
117
|
+
n115: jmp n116
|
|
118
|
+
n116: jmp n117
|
|
119
|
+
n117: jmp n118
|
|
120
|
+
n118: jmp n119
|
|
121
|
+
n119: jmp n120
|
|
122
|
+
n120: jmp n121
|
|
123
|
+
n121: jmp n122
|
|
124
|
+
n122: jmp n123
|
|
125
|
+
n123: jmp n124
|
|
126
|
+
n124: jmp n125
|
|
127
|
+
n125: jmp n126
|
|
128
|
+
n126: jmp n127
|
|
129
|
+
n127: jmp n0
|
|
130
|
+
|
|
131
|
+
;; This should emit exactly 3 NOP bytes
|
|
132
|
+
times 260-($-$$) nop
|
|
133
|
+
hlt
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
;Testname=error; Arguments=-fbin -DERROR -ofwdoptpp.bin; Files=stdout stderr fwdoptpp.bin
|
|
2
|
+
;Testname=fatal; Arguments=-fbin -DFATAL -ofwdoptpp.bin; Files=stdout stderr fwdoptpp.bin
|
|
3
|
+
;Testname=warning; Arguments=-fbin -DWARNING -ofwdoptpp.bin; Files=stdout stderr fwdoptpp.bin
|
|
4
|
+
|
|
5
|
+
%ifndef ERROR
|
|
6
|
+
%ifndef FATAL
|
|
7
|
+
%ifndef WARNING
|
|
8
|
+
%define ERROR 1
|
|
9
|
+
%endif
|
|
10
|
+
%endif
|
|
11
|
+
%endif
|
|
12
|
+
|
|
13
|
+
n0: jmp n1
|
|
14
|
+
n1: jmp n2
|
|
15
|
+
n2: jmp n3
|
|
16
|
+
n3: jmp n4
|
|
17
|
+
n4: jmp n5
|
|
18
|
+
n5: jmp n6
|
|
19
|
+
n6: jmp n7
|
|
20
|
+
n7: jmp n8
|
|
21
|
+
n8: jmp n9
|
|
22
|
+
n9: jmp n10
|
|
23
|
+
n10: jmp n11
|
|
24
|
+
n11: jmp n12
|
|
25
|
+
n12: jmp n13
|
|
26
|
+
n13: jmp n14
|
|
27
|
+
n14: jmp n15
|
|
28
|
+
n15: jmp n16
|
|
29
|
+
n16: jmp n17
|
|
30
|
+
n17: jmp n18
|
|
31
|
+
n18: jmp n19
|
|
32
|
+
n19: jmp n20
|
|
33
|
+
n20: jmp n21
|
|
34
|
+
n21: jmp n22
|
|
35
|
+
n22: jmp n23
|
|
36
|
+
n23: jmp n24
|
|
37
|
+
n24: jmp n25
|
|
38
|
+
n25: jmp n26
|
|
39
|
+
n26: jmp n27
|
|
40
|
+
n27: jmp n28
|
|
41
|
+
n28: jmp n29
|
|
42
|
+
n29: jmp n30
|
|
43
|
+
n30: jmp n31
|
|
44
|
+
n31: jmp n32
|
|
45
|
+
n32: jmp n33
|
|
46
|
+
n33: jmp n34
|
|
47
|
+
n34: jmp n35
|
|
48
|
+
n35: jmp n36
|
|
49
|
+
n36: jmp n37
|
|
50
|
+
n37: jmp n38
|
|
51
|
+
n38: jmp n39
|
|
52
|
+
n39: jmp n40
|
|
53
|
+
n40: jmp n41
|
|
54
|
+
n41: jmp n42
|
|
55
|
+
n42: jmp n43
|
|
56
|
+
n43: jmp n44
|
|
57
|
+
n44: jmp n45
|
|
58
|
+
n45: jmp n46
|
|
59
|
+
n46: jmp n47
|
|
60
|
+
n47: jmp n48
|
|
61
|
+
n48: jmp n49
|
|
62
|
+
n49: jmp n50
|
|
63
|
+
n50: jmp n51
|
|
64
|
+
n51: jmp n52
|
|
65
|
+
n52: jmp n53
|
|
66
|
+
n53: jmp n54
|
|
67
|
+
n54: jmp n55
|
|
68
|
+
n55: jmp n56
|
|
69
|
+
n56: jmp n57
|
|
70
|
+
n57: jmp n58
|
|
71
|
+
n58: jmp n59
|
|
72
|
+
n59: jmp n60
|
|
73
|
+
n60: jmp n61
|
|
74
|
+
n61: jmp n62
|
|
75
|
+
n62: jmp n63
|
|
76
|
+
n63: jmp n64
|
|
77
|
+
n64: jmp n65
|
|
78
|
+
n65: jmp n66
|
|
79
|
+
n66: jmp n67
|
|
80
|
+
n67: jmp n68
|
|
81
|
+
n68: jmp n69
|
|
82
|
+
n69: jmp n70
|
|
83
|
+
n70: jmp n71
|
|
84
|
+
n71: jmp n72
|
|
85
|
+
n72: jmp n73
|
|
86
|
+
n73: jmp n74
|
|
87
|
+
n74: jmp n75
|
|
88
|
+
n75: jmp n76
|
|
89
|
+
n76: jmp n77
|
|
90
|
+
n77: jmp n78
|
|
91
|
+
n78: jmp n79
|
|
92
|
+
n79: jmp n80
|
|
93
|
+
n80: jmp n81
|
|
94
|
+
n81: jmp n82
|
|
95
|
+
n82: jmp n83
|
|
96
|
+
n83: jmp n84
|
|
97
|
+
n84: jmp n85
|
|
98
|
+
n85: jmp n86
|
|
99
|
+
n86: jmp n87
|
|
100
|
+
n87: jmp n88
|
|
101
|
+
n88: jmp n89
|
|
102
|
+
n89: jmp n90
|
|
103
|
+
n90: jmp n91
|
|
104
|
+
n91: jmp n92
|
|
105
|
+
n92: jmp n93
|
|
106
|
+
n93: jmp n94
|
|
107
|
+
n94: jmp n95
|
|
108
|
+
n95: jmp n96
|
|
109
|
+
n96: jmp n97
|
|
110
|
+
n97: jmp n98
|
|
111
|
+
n98: jmp n99
|
|
112
|
+
n99: jmp n100
|
|
113
|
+
n100: jmp n101
|
|
114
|
+
n101: jmp n102
|
|
115
|
+
n102: jmp n103
|
|
116
|
+
n103: jmp n104
|
|
117
|
+
n104: jmp n105
|
|
118
|
+
n105: jmp n106
|
|
119
|
+
n106: jmp n107
|
|
120
|
+
n107: jmp n108
|
|
121
|
+
n108: jmp n109
|
|
122
|
+
n109: jmp n110
|
|
123
|
+
n110: jmp n111
|
|
124
|
+
n111: jmp n112
|
|
125
|
+
n112: jmp n113
|
|
126
|
+
n113: jmp n114
|
|
127
|
+
n114: jmp n115
|
|
128
|
+
n115: jmp n116
|
|
129
|
+
n116: jmp n117
|
|
130
|
+
n117: jmp n118
|
|
131
|
+
n118: jmp n119
|
|
132
|
+
n119: jmp n120
|
|
133
|
+
n120: jmp n121
|
|
134
|
+
n121: jmp n122
|
|
135
|
+
n122: jmp n123
|
|
136
|
+
n123: jmp n124
|
|
137
|
+
n124: jmp n125
|
|
138
|
+
n125: jmp n126
|
|
139
|
+
n126: jmp n127
|
|
140
|
+
n127: jmp n0
|
|
141
|
+
|
|
142
|
+
%if ($-$$) > 257
|
|
143
|
+
%ifdef FATAL
|
|
144
|
+
%fatal "Out of space!"
|
|
145
|
+
%elifdef ERROR
|
|
146
|
+
%error "Out of space!"
|
|
147
|
+
%elifdef WARNING
|
|
148
|
+
%warning "Out of space!"
|
|
149
|
+
%endif
|
|
150
|
+
%endif
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
#!/usr/bin/env python -tt
|
|
2
|
+
# -*- python -*-
|
|
3
|
+
# Convert gas testsuite file to NASM test asm file
|
|
4
|
+
# usage >
|
|
5
|
+
# python gas2nasm.py -i input_gas_file -o output_nasm_file -b bits
|
|
6
|
+
# e.g. python gas2nasm.py -i x86-64-avx512f-intel.d -o avx512f.asm -b 64
|
|
7
|
+
|
|
8
|
+
import sys
|
|
9
|
+
import os
|
|
10
|
+
import optparse
|
|
11
|
+
import re
|
|
12
|
+
|
|
13
|
+
def setup():
|
|
14
|
+
parser = optparse.OptionParser()
|
|
15
|
+
parser.add_option('-i', dest='input', action='store',
|
|
16
|
+
default="",
|
|
17
|
+
help='Name for input gas testsuite file.')
|
|
18
|
+
parser.add_option('-o', dest='output', action='store',
|
|
19
|
+
default="",
|
|
20
|
+
help='Name for output NASM test asm file.')
|
|
21
|
+
parser.add_option('-b', dest='bits', action='store',
|
|
22
|
+
default="",
|
|
23
|
+
help='Bits for output ASM file.')
|
|
24
|
+
parser.add_option('-r', dest='raw_output', action='store',
|
|
25
|
+
default="",
|
|
26
|
+
help='Name for raw output bytes in text')
|
|
27
|
+
(options, args) = parser.parse_args()
|
|
28
|
+
return options
|
|
29
|
+
|
|
30
|
+
def read(options):
|
|
31
|
+
with open(options.input, 'rb') as f:
|
|
32
|
+
recs = []
|
|
33
|
+
for line in f:
|
|
34
|
+
if line[0] == '[':
|
|
35
|
+
d = []
|
|
36
|
+
strr = line[16:].partition(' ')
|
|
37
|
+
if strr[1] == '':
|
|
38
|
+
strr = line[16:].partition('\t')
|
|
39
|
+
l = strr[0].strip()
|
|
40
|
+
r = strr[2].strip()
|
|
41
|
+
d.append(l)
|
|
42
|
+
d.append(r)
|
|
43
|
+
recs.append(d)
|
|
44
|
+
return recs
|
|
45
|
+
|
|
46
|
+
def commas(recs):
|
|
47
|
+
replace_tbl = {' PTR':'', '\\':'', 'MM':'', 'XWORD':'OWORD'}
|
|
48
|
+
reccommas = []
|
|
49
|
+
for insn in recs:
|
|
50
|
+
new = []
|
|
51
|
+
byte = '0x' + insn[0].replace(' ', ', 0x')
|
|
52
|
+
for rep in replace_tbl.keys():
|
|
53
|
+
insn[1] = insn[1].replace(rep, replace_tbl[rep])
|
|
54
|
+
mnemonic = insn[1]
|
|
55
|
+
|
|
56
|
+
# gas size specifier for gather and scatter insturctions seems wrong. just remove them.
|
|
57
|
+
if 'gather' in insn[1] or 'scatter' in insn[1]:
|
|
58
|
+
mnemonic = mnemonic.replace('ZWORD', '')
|
|
59
|
+
|
|
60
|
+
new.append(byte)
|
|
61
|
+
new.append(mnemonic)
|
|
62
|
+
reccommas.append(new)
|
|
63
|
+
return reccommas
|
|
64
|
+
|
|
65
|
+
# The spaces reserved here can be adjusted according to the output string length.
|
|
66
|
+
# maxlen printed out at the end of the process will give a hint for it.
|
|
67
|
+
outstrfmt = "testcase\t{ %-70s }, { %-60s }\n"
|
|
68
|
+
|
|
69
|
+
macro = "%macro testcase 2\n %ifdef BIN\n db %1\n %endif\n %ifdef SRC\n %2\n %endif\n%endmacro\n\n\n"
|
|
70
|
+
|
|
71
|
+
def write(data, options):
|
|
72
|
+
if options.output:
|
|
73
|
+
with open(options.output, 'wb') as out:
|
|
74
|
+
out.write(macro)
|
|
75
|
+
if options.bits:
|
|
76
|
+
out.write('bits ' + options.bits + '\n\n')
|
|
77
|
+
for insn in data:
|
|
78
|
+
outstr = outstrfmt % tuple(insn)
|
|
79
|
+
out.write(outstr)
|
|
80
|
+
|
|
81
|
+
def write_rawbytes(data, options):
|
|
82
|
+
if options.raw_output:
|
|
83
|
+
with open(options.raw_output, 'wb') as out:
|
|
84
|
+
for insn in data:
|
|
85
|
+
out.write(insn[0] + '\n')
|
|
86
|
+
|
|
87
|
+
if __name__ == "__main__":
|
|
88
|
+
options = setup()
|
|
89
|
+
recs = read(options)
|
|
90
|
+
|
|
91
|
+
write_rawbytes(recs, options)
|
|
92
|
+
|
|
93
|
+
recs = commas(recs)
|
|
94
|
+
|
|
95
|
+
write(recs, options)
|
|
96
|
+
|
|
97
|
+
maxlen = [0,0,0,0,0,0,0,0]
|
|
98
|
+
for insn in recs:
|
|
99
|
+
#print insn[0] + '\t<-\t' + insn[1]
|
|
100
|
+
print outstrfmt[:-1] % tuple(insn)
|
|
101
|
+
for i, strstr in enumerate(insn):
|
|
102
|
+
if maxlen[i] < len(strstr): maxlen[i] = len(strstr)
|
|
103
|
+
|
|
104
|
+
print maxlen
|