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,23 @@
|
|
|
1
|
+
bits 64
|
|
2
|
+
|
|
3
|
+
mov eax,1
|
|
4
|
+
mov eax,-1
|
|
5
|
+
mov eax,0x11111111
|
|
6
|
+
mov ecx,2
|
|
7
|
+
add ecx,-6
|
|
8
|
+
add ecx,strict dword -6
|
|
9
|
+
add ecx,4
|
|
10
|
+
add ecx,strict dword 4
|
|
11
|
+
add ecx,10000
|
|
12
|
+
xor ecx,0xffffffff
|
|
13
|
+
xor ecx,dword 0xffffffff
|
|
14
|
+
xor ecx,strict dword 0xffffffff
|
|
15
|
+
xor ecx,-1
|
|
16
|
+
xor ecx,dword -1
|
|
17
|
+
xor ecx,strict dword -1
|
|
18
|
+
add edx,byte ($-$$)
|
|
19
|
+
%ifnidn __OUTPUT_FORMAT__,bin
|
|
20
|
+
extern foo, bar
|
|
21
|
+
add eax,byte foo
|
|
22
|
+
add edx,byte (bar-$$)
|
|
23
|
+
%endif
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
;Testname=imm64-O0; Arguments=-O0 -fbin -oimm64.bin; Files=stdout stderr imm64.bin
|
|
2
|
+
;Testname=imm64-O1; Arguments=-O1 -fbin -oimm64.bin; Files=stdout stderr imm64.bin
|
|
3
|
+
;Testname=imm64-Ox; Arguments=-Ox -fbin -oimm64.bin; Files=stdout stderr imm64.bin
|
|
4
|
+
|
|
5
|
+
bits 64
|
|
6
|
+
mov rax,11223344h
|
|
7
|
+
mov rax,dword 11223344h
|
|
8
|
+
mov eax,11223344h
|
|
9
|
+
mov [rax],dword 11223344h ; 32-bit operation
|
|
10
|
+
mov qword [rax],11223344h
|
|
11
|
+
mov qword [rax],dword 11223344h
|
|
12
|
+
|
|
13
|
+
mov rax,0_ffffffff_8899aabbh
|
|
14
|
+
mov rax,dword 0_ffffffff_8899aabbh
|
|
15
|
+
mov eax,0_ffffffff_8899aabbh
|
|
16
|
+
mov [rax],dword 0_ffffffff_8899aabbh ; 32-bit operation
|
|
17
|
+
mov qword [rax],0_ffffffff_8899aabbh
|
|
18
|
+
mov qword [rax],dword 0_ffffffff_8899aabbh
|
|
19
|
+
|
|
20
|
+
mov rax,7fffffffh
|
|
21
|
+
mov rax,80000000h
|
|
22
|
+
mov rax,0_ffffffffh
|
|
23
|
+
mov rax,1_00000000h
|
|
24
|
+
mov rax,0_ffffffff_7fffffffh
|
|
25
|
+
mov rax,0_ffffffff_80000000h
|
|
26
|
+
|
|
27
|
+
mov rax,0_11223344_8899aabbh
|
|
28
|
+
mov rax,dword 0_11223344_8899aabbh
|
|
29
|
+
mov eax,0_11223344_8899aabbh
|
|
30
|
+
mov [rax],dword 0_11223344_8899aabbh ; 32-bit operation
|
|
31
|
+
mov qword [rax],0_11223344_8899aabbh
|
|
32
|
+
mov qword [rax],dword 0_11223344_8899aabbh
|
|
33
|
+
|
|
34
|
+
mov rax,strict 11223344h
|
|
35
|
+
mov rax,strict dword 11223344h
|
|
36
|
+
mov eax,strict 11223344h
|
|
37
|
+
mov [rax],strict dword 11223344h ; 32-bit operation
|
|
38
|
+
mov qword [rax],strict 11223344h
|
|
39
|
+
mov qword [rax],strict dword 11223344h
|
|
40
|
+
|
|
41
|
+
mov rax,strict 0_ffffffff_8899aabbh
|
|
42
|
+
mov rax,strict dword 0_ffffffff_8899aabbh
|
|
43
|
+
mov eax,strict 0_ffffffff_8899aabbh
|
|
44
|
+
mov [rax],strict dword 0_ffffffff_8899aabbh ; 32-bit operation
|
|
45
|
+
mov qword [rax],strict 0_ffffffff_8899aabbh
|
|
46
|
+
mov qword [rax],strict dword 0_ffffffff_8899aabbh
|
|
47
|
+
|
|
48
|
+
mov rax,strict 7fffffffh
|
|
49
|
+
mov rax,strict 80000000h
|
|
50
|
+
mov rax,strict 0_ffffffffh
|
|
51
|
+
mov rax,strict 1_00000000h
|
|
52
|
+
mov rax,strict 0_ffffffff_7fffffffh
|
|
53
|
+
mov rax,strict 0_ffffffff_80000000h
|
|
54
|
+
|
|
55
|
+
mov rax,strict 0_11223344_8899aabbh
|
|
56
|
+
mov rax,strict dword 0_11223344_8899aabbh
|
|
57
|
+
mov eax,strict 0_11223344_8899aabbh
|
|
58
|
+
mov [rax],strict dword 0_11223344_8899aabbh ; 32-bit operation
|
|
59
|
+
mov qword [rax],strict 0_11223344_8899aabbh
|
|
60
|
+
mov qword [rax],strict dword 0_11223344_8899aabbh
|
|
61
|
+
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
;Testname=onowarn; Arguments=-Ox -DOPT=1 -DWARN=0 -fbin -oimmwarn.bin; Files=stdout stderr immwarn.bin
|
|
2
|
+
;Testname=owarn; Arguments=-Ox -DOPT=1 -DWARN=1 -fbin -oimmwarn.bin; Files=stdout stderr immwarn.bin
|
|
3
|
+
;Testname=nowarn; Arguments=-O0 -DOPT=0 -DWARN=0 -fbin -oimmwarn.bin; Files=stdout stderr immwarn.bin
|
|
4
|
+
;Testname=warn; Arguments=-O0 -DOPT=1 -DWARN=1 -fbin -oimmwarn.bin; Files=stdout stderr immwarn.bin
|
|
5
|
+
|
|
6
|
+
%ifndef WARN
|
|
7
|
+
%define WARN 1
|
|
8
|
+
%endif
|
|
9
|
+
|
|
10
|
+
bits 16
|
|
11
|
+
push 1
|
|
12
|
+
%if WARN
|
|
13
|
+
push 0ffffffffh
|
|
14
|
+
%endif
|
|
15
|
+
push -1
|
|
16
|
+
push 0ffffh
|
|
17
|
+
push byte 0FFFFh
|
|
18
|
+
|
|
19
|
+
add ax,0FFFFh
|
|
20
|
+
%if WARN
|
|
21
|
+
add ax,0FFFFFFFFh
|
|
22
|
+
%endif
|
|
23
|
+
add ax,-1
|
|
24
|
+
add ax,byte 0FFFFh
|
|
25
|
+
%if WARN
|
|
26
|
+
add ax,byte 0FFFFFFFFh
|
|
27
|
+
%endif
|
|
28
|
+
add ax,-1
|
|
29
|
+
|
|
30
|
+
add cx,0FFFFh
|
|
31
|
+
%if WARN
|
|
32
|
+
add cx,0FFFFFFFFh
|
|
33
|
+
%endif
|
|
34
|
+
add cx,-1
|
|
35
|
+
add cx,byte 0FFFFh
|
|
36
|
+
%if WARN
|
|
37
|
+
add cx,byte 0FFFFFFFFh
|
|
38
|
+
%endif
|
|
39
|
+
add cx,-1
|
|
40
|
+
|
|
41
|
+
bits 32
|
|
42
|
+
push 1
|
|
43
|
+
push 0ffffffffh
|
|
44
|
+
push -1
|
|
45
|
+
push 0ffffh
|
|
46
|
+
|
|
47
|
+
push byte 1
|
|
48
|
+
%if WARN
|
|
49
|
+
push byte 0ffffh
|
|
50
|
+
%endif
|
|
51
|
+
push byte -1
|
|
52
|
+
|
|
53
|
+
push word 1
|
|
54
|
+
push word 0ffffh
|
|
55
|
+
push word -1
|
|
56
|
+
|
|
57
|
+
push dword 1
|
|
58
|
+
push dword 0ffffffffh
|
|
59
|
+
push dword -1
|
|
60
|
+
|
|
61
|
+
add eax,0FFFFh
|
|
62
|
+
add eax,0FFFFFFFFh
|
|
63
|
+
add eax,-1
|
|
64
|
+
|
|
65
|
+
add ecx,0FFFFh
|
|
66
|
+
add ecx,0FFFFFFFFh
|
|
67
|
+
add ecx,-1
|
|
68
|
+
|
|
69
|
+
bits 64
|
|
70
|
+
mov eax,7fffffffh
|
|
71
|
+
mov eax,80000000h
|
|
72
|
+
mov rax,7fffffffh
|
|
73
|
+
mov rax,80000000h
|
|
74
|
+
%if WARN
|
|
75
|
+
mov rax,dword 80000000h
|
|
76
|
+
%endif
|
|
77
|
+
add rcx,0FFFFh
|
|
78
|
+
%if WARN
|
|
79
|
+
add rcx,0FFFFFFFFh
|
|
80
|
+
%endif
|
|
81
|
+
add rcx,-1
|
|
82
|
+
|
|
83
|
+
add ecx,0FFFFh
|
|
84
|
+
add ecx,0FFFFFFFFh
|
|
85
|
+
add ecx,-1
|
|
86
|
+
|
|
87
|
+
push byte 1
|
|
88
|
+
%if WARN
|
|
89
|
+
push byte 0ffffffffh
|
|
90
|
+
%endif
|
|
91
|
+
push byte -1
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
;Testname=nowarn; Arguments=-fbin -oimul.bin; Files=stdout stderr imul.bin
|
|
2
|
+
;Testname=warn; Arguments=-DWARN -fbin -oimul.bin; Files=stdout stderr imul.bin
|
|
3
|
+
|
|
4
|
+
%macro test 1-3 5 -2
|
|
5
|
+
bits %1
|
|
6
|
+
|
|
7
|
+
%undef MEM
|
|
8
|
+
%if %1 == 16
|
|
9
|
+
%define MEM [di]
|
|
10
|
+
%elif %1 == 32
|
|
11
|
+
%define MEM [edi]
|
|
12
|
+
%elif %1 == 64
|
|
13
|
+
%define MEM [rdi]
|
|
14
|
+
%endif
|
|
15
|
+
|
|
16
|
+
imul al
|
|
17
|
+
imul byte MEM
|
|
18
|
+
imul ax
|
|
19
|
+
imul word MEM
|
|
20
|
+
imul eax
|
|
21
|
+
imul dword MEM
|
|
22
|
+
%if %1 == 64
|
|
23
|
+
imul rdx
|
|
24
|
+
imul qword MEM
|
|
25
|
+
%endif
|
|
26
|
+
|
|
27
|
+
imul ax,cx
|
|
28
|
+
imul ax,MEM
|
|
29
|
+
imul ax,word MEM
|
|
30
|
+
imul eax,ecx
|
|
31
|
+
imul eax,MEM
|
|
32
|
+
imul eax,dword MEM
|
|
33
|
+
%if %1 == 64
|
|
34
|
+
imul rax,rcx
|
|
35
|
+
imul rax,MEM
|
|
36
|
+
imul rax,qword MEM
|
|
37
|
+
%endif
|
|
38
|
+
|
|
39
|
+
imul ax,cx,%2
|
|
40
|
+
imul ax,cx,byte %2
|
|
41
|
+
imul ax,MEM,%2
|
|
42
|
+
imul ax,word MEM,%2
|
|
43
|
+
imul eax,ecx,%2
|
|
44
|
+
imul eax,ecx,byte %2
|
|
45
|
+
imul eax,MEM,%2
|
|
46
|
+
imul eax,dword MEM,%2
|
|
47
|
+
%if %1 == 64
|
|
48
|
+
imul rax,rcx,%2
|
|
49
|
+
imul rax,rcx,byte %2
|
|
50
|
+
imul rax,MEM,%2
|
|
51
|
+
imul rax,qword MEM,%2
|
|
52
|
+
%endif
|
|
53
|
+
|
|
54
|
+
imul ax,%2
|
|
55
|
+
imul ax,byte %2
|
|
56
|
+
imul eax,%2
|
|
57
|
+
imul eax,byte %2
|
|
58
|
+
%if %1 == 64
|
|
59
|
+
imul rax,%2
|
|
60
|
+
imul rax,byte %2
|
|
61
|
+
%endif
|
|
62
|
+
|
|
63
|
+
imul ax,cx,0x1234
|
|
64
|
+
imul ax,MEM,0x1234
|
|
65
|
+
imul ax,word MEM,0x1234
|
|
66
|
+
imul eax,ecx,0x12345678
|
|
67
|
+
imul eax,MEM,0x12345678
|
|
68
|
+
imul eax,dword MEM,0x12345678
|
|
69
|
+
%if %1 == 64
|
|
70
|
+
imul rax,rcx,0x12345678
|
|
71
|
+
imul rax,MEM,0x12345678
|
|
72
|
+
imul rax,qword MEM,0x12345678
|
|
73
|
+
%endif
|
|
74
|
+
|
|
75
|
+
imul ax,0x1234
|
|
76
|
+
imul eax,0x12345678
|
|
77
|
+
%if %1 == 64
|
|
78
|
+
imul rax,0x12345678
|
|
79
|
+
%endif
|
|
80
|
+
|
|
81
|
+
imul ax,cx,0xfffe
|
|
82
|
+
imul ax,MEM,0xfffe
|
|
83
|
+
imul ax,word MEM,0xfffe
|
|
84
|
+
imul ax,cx,0xfe
|
|
85
|
+
imul ax,MEM,0xfe
|
|
86
|
+
imul ax,word MEM,0xfe
|
|
87
|
+
imul eax,ecx,0xfffffffe
|
|
88
|
+
imul eax,MEM,0xfffffffe
|
|
89
|
+
imul eax,dword MEM,0xfffffffe
|
|
90
|
+
imul eax,ecx,0xfffe
|
|
91
|
+
imul eax,MEM,0xfffe
|
|
92
|
+
imul eax,dword MEM,0xfffe
|
|
93
|
+
%if %1 == 64
|
|
94
|
+
imul rax,rcx,%3
|
|
95
|
+
imul rax,MEM,%3
|
|
96
|
+
imul rax,qword MEM,%3
|
|
97
|
+
imul rax,rcx,0xfffe
|
|
98
|
+
imul rax,MEM,0xfffe
|
|
99
|
+
imul rax,qword MEM,0xfffe
|
|
100
|
+
%endif
|
|
101
|
+
|
|
102
|
+
imul ax,0xfffe
|
|
103
|
+
imul eax,0xfffffffe
|
|
104
|
+
%if %1 == 64
|
|
105
|
+
imul rax,%3
|
|
106
|
+
%endif
|
|
107
|
+
%endmacro
|
|
108
|
+
|
|
109
|
+
test 16
|
|
110
|
+
test 32
|
|
111
|
+
test 64
|
|
112
|
+
|
|
113
|
+
%ifdef WARN
|
|
114
|
+
test 16,0x999
|
|
115
|
+
test 32,0x999999
|
|
116
|
+
test 64,0x999999999,0xfffffffe
|
|
117
|
+
%endif
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
;Testname=test; Arguments=-fbin -oinctest.com; Files=stdout stderr inctest.com
|
|
2
|
+
|
|
3
|
+
; This file, plus inc1.asm and inc2.asm, test NASM's file inclusion
|
|
4
|
+
; mechanism.
|
|
5
|
+
;
|
|
6
|
+
; This produces a DOS .COM file: to assemble, use
|
|
7
|
+
; nasm -f bin inctest.asm -o inctest.com
|
|
8
|
+
; and when run, it should print `hello, world'.
|
|
9
|
+
|
|
10
|
+
BITS 16
|
|
11
|
+
ORG 0x100
|
|
12
|
+
|
|
13
|
+
jmp _main
|
|
14
|
+
|
|
15
|
+
%include "inc1.asm"
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
;Testname=test; Arguments=-fbin -oinsnlbl.bin; Files=stdout stderr insnlbl.bin
|
|
2
|
+
|
|
3
|
+
;
|
|
4
|
+
; Test "instruction as label" -- make opcodes legal as labels if
|
|
5
|
+
; they are followed by a colon.
|
|
6
|
+
;
|
|
7
|
+
|
|
8
|
+
do: jmp dq+2
|
|
9
|
+
dw do, add, sub, dq
|
|
10
|
+
add: jmp add-2
|
|
11
|
+
sub: jmp do+2
|
|
12
|
+
dq: dw $-sub
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
;Testname=unoptimized; Arguments=-fbin -oinvlpga.bin; Files=stdout stderr invlpga.bin
|
|
2
|
+
;Testname=optimized; Arguments=-fbin -oinvlpga.bin -Ox; Files=stdout stderr invlpga.bin
|
|
3
|
+
|
|
4
|
+
bits 32
|
|
5
|
+
invlpga
|
|
6
|
+
invlpga ax,ecx
|
|
7
|
+
invlpga eax,ecx
|
|
8
|
+
bits 64
|
|
9
|
+
invlpga
|
|
10
|
+
invlpga eax,ecx
|
|
11
|
+
invlpga rax,ecx
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
;Testname=test; Arguments=-fbin -ojmp64.bin; Files=stdout stderr jmp64.bin
|
|
2
|
+
|
|
3
|
+
bits 64
|
|
4
|
+
jmp rcx
|
|
5
|
+
jmp [rax]
|
|
6
|
+
jmp qword [rax]
|
|
7
|
+
jmp near [rax]
|
|
8
|
+
jmp near qword [rax]
|
|
9
|
+
jmp far [rax]
|
|
10
|
+
jmp far dword [rax]
|
|
11
|
+
jmp far qword [rax]
|
|
12
|
+
call rcx
|
|
13
|
+
call [rax]
|
|
14
|
+
call qword [rax]
|
|
15
|
+
call near [rax]
|
|
16
|
+
call near qword [rax]
|
|
17
|
+
call far [rax]
|
|
18
|
+
call far dword [rax]
|
|
19
|
+
call far qword [rax]
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
;Testname=test; Arguments=-fbin -olar_lsl.bin; Files=stdout stderr lar_lsl.bin
|
|
2
|
+
|
|
3
|
+
; LAR/LSL
|
|
4
|
+
;---------
|
|
5
|
+
|
|
6
|
+
; 1x ; = invalid due to lack of REX
|
|
7
|
+
; 3x ; = invalid due to Mw
|
|
8
|
+
|
|
9
|
+
%macro m 1
|
|
10
|
+
|
|
11
|
+
bits 16
|
|
12
|
+
|
|
13
|
+
%1 ax, ax
|
|
14
|
+
%1 ax,eax
|
|
15
|
+
; %1 ax,rax
|
|
16
|
+
|
|
17
|
+
%1 eax, ax
|
|
18
|
+
%1 eax,eax
|
|
19
|
+
; %1 eax,rax
|
|
20
|
+
|
|
21
|
+
; %1 rax, ax
|
|
22
|
+
; %1 rax,eax
|
|
23
|
+
; %1 rax,rax
|
|
24
|
+
|
|
25
|
+
%1 ax, [0]
|
|
26
|
+
%1 ax, word [0]
|
|
27
|
+
;;; %1 ax,dword [0]
|
|
28
|
+
; %1 ax,qword [0]
|
|
29
|
+
|
|
30
|
+
%1 eax, [0]
|
|
31
|
+
%1 eax, word [0]
|
|
32
|
+
;;; %1 eax,dword [0]
|
|
33
|
+
; %1 eax,qword [0]
|
|
34
|
+
|
|
35
|
+
; %1 rax, [0]
|
|
36
|
+
; %1 rax, word [0]
|
|
37
|
+
; %1 rax,dword [0]
|
|
38
|
+
; %1 rax,qword [0]
|
|
39
|
+
|
|
40
|
+
bits 32
|
|
41
|
+
|
|
42
|
+
%1 ax, ax
|
|
43
|
+
%1 ax,eax
|
|
44
|
+
; %1 ax,rax
|
|
45
|
+
|
|
46
|
+
%1 eax, ax
|
|
47
|
+
%1 eax,eax
|
|
48
|
+
; %1 eax,rax
|
|
49
|
+
|
|
50
|
+
; %1 rax, ax
|
|
51
|
+
; %1 rax,eax
|
|
52
|
+
; %1 rax,rax
|
|
53
|
+
|
|
54
|
+
%1 ax, [0]
|
|
55
|
+
%1 ax, word [0]
|
|
56
|
+
;;; %1 ax,dword [0]
|
|
57
|
+
; %1 ax,qword [0]
|
|
58
|
+
|
|
59
|
+
%1 eax, [0]
|
|
60
|
+
%1 eax, word [0]
|
|
61
|
+
;;; %1 eax,dword [0]
|
|
62
|
+
; %1 eax,qword [0]
|
|
63
|
+
|
|
64
|
+
; %1 rax, [0]
|
|
65
|
+
; %1 rax, word [0]
|
|
66
|
+
; %1 rax,dword [0]
|
|
67
|
+
; %1 rax,qword [0]
|
|
68
|
+
|
|
69
|
+
bits 64
|
|
70
|
+
|
|
71
|
+
%1 ax, ax
|
|
72
|
+
%1 ax,eax
|
|
73
|
+
%1 ax,rax ; $TODO: shouldn't emit REX.W $
|
|
74
|
+
|
|
75
|
+
%1 eax, ax
|
|
76
|
+
%1 eax,eax
|
|
77
|
+
%1 eax,rax ; $TODO: shouldn't emit REX.W $
|
|
78
|
+
|
|
79
|
+
%1 rax, ax
|
|
80
|
+
%1 rax,eax
|
|
81
|
+
%1 rax,rax
|
|
82
|
+
|
|
83
|
+
%1 ax, [0]
|
|
84
|
+
%1 ax, word [0]
|
|
85
|
+
;;; %1 ax,dword [0]
|
|
86
|
+
;;; %1 ax,qword [0]
|
|
87
|
+
|
|
88
|
+
%1 eax, [0]
|
|
89
|
+
%1 eax, word [0]
|
|
90
|
+
;;; %1 eax,dword [0]
|
|
91
|
+
;;; %1 eax,qword [0]
|
|
92
|
+
|
|
93
|
+
%1 rax, [0]
|
|
94
|
+
%1 rax, word [0]
|
|
95
|
+
;;; %1 rax,dword [0]
|
|
96
|
+
;;; %1 rax,qword [0]
|
|
97
|
+
|
|
98
|
+
%endmacro
|
|
99
|
+
|
|
100
|
+
m lar
|
|
101
|
+
|
|
102
|
+
m lsl
|
|
103
|
+
|
|
104
|
+
bits 16
|
|
105
|
+
lar ax,[ si]
|
|
106
|
+
lar ax,[esi]
|
|
107
|
+
bits 32
|
|
108
|
+
lar ax,[ si]
|
|
109
|
+
lar ax,[esi]
|
|
110
|
+
bits 64
|
|
111
|
+
lar ax,[esi]
|
|
112
|
+
lar ax,[rsi]
|
|
113
|
+
|
|
114
|
+
bits 16
|
|
115
|
+
lsl ax,[ si]
|
|
116
|
+
lsl ax,[esi]
|
|
117
|
+
bits 32
|
|
118
|
+
lsl ax,[ si]
|
|
119
|
+
lsl ax,[esi]
|
|
120
|
+
bits 64
|
|
121
|
+
lar ax,[esi]
|
|
122
|
+
lsl ax,[rsi]
|
|
123
|
+
|
|
124
|
+
; EOF
|