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,87 @@
|
|
|
1
|
+
; test source file for assembling to ELF
|
|
2
|
+
; build with:
|
|
3
|
+
; nasm -f elf elftest.asm
|
|
4
|
+
; gcc -o elftest elftest.c elftest.o
|
|
5
|
+
; (assuming your gcc is ELF)
|
|
6
|
+
|
|
7
|
+
; This file should test the following:
|
|
8
|
+
; [1] Define and export a global text-section symbol
|
|
9
|
+
; [2] Define and export a global data-section symbol
|
|
10
|
+
; [3] Define and export a global BSS-section symbol
|
|
11
|
+
; [4] Define a non-global text-section symbol
|
|
12
|
+
; [5] Define a non-global data-section symbol
|
|
13
|
+
; [6] Define a non-global BSS-section symbol
|
|
14
|
+
; [7] Define a COMMON symbol
|
|
15
|
+
; [8] Define a NASM local label
|
|
16
|
+
; [9] Reference a NASM local label
|
|
17
|
+
; [10] Import an external symbol
|
|
18
|
+
; [11] Make a PC-relative call to an external symbol
|
|
19
|
+
; [12] Reference a text-section symbol in the text section
|
|
20
|
+
; [13] Reference a data-section symbol in the text section
|
|
21
|
+
; [14] Reference a BSS-section symbol in the text section
|
|
22
|
+
; [15] Reference a text-section symbol in the data section
|
|
23
|
+
; [16] Reference a data-section symbol in the data section
|
|
24
|
+
; [17] Reference a BSS-section symbol in the data section
|
|
25
|
+
; [18] Define a non-global rodata-section symbol
|
|
26
|
+
|
|
27
|
+
BITS 32
|
|
28
|
+
GLOBAL lrotate ; [1]
|
|
29
|
+
GLOBAL greet ; [1]
|
|
30
|
+
GLOBAL asmstr ; [2]
|
|
31
|
+
GLOBAL textptr ; [2]
|
|
32
|
+
GLOBAL selfptr ; [2]
|
|
33
|
+
GLOBAL integer ; [3]
|
|
34
|
+
EXTERN printf ; [10]
|
|
35
|
+
COMMON commvar 4 ; [7]
|
|
36
|
+
|
|
37
|
+
SECTION .text
|
|
38
|
+
|
|
39
|
+
; prototype: long lrotate(long x, int num);
|
|
40
|
+
lrotate: ; [1]
|
|
41
|
+
push ebp
|
|
42
|
+
mov ebp,esp
|
|
43
|
+
mov eax,[ebp+8]
|
|
44
|
+
mov ecx,[ebp+12]
|
|
45
|
+
.label rol eax,1 ; [4] [8]
|
|
46
|
+
loop .label ; [9] [12]
|
|
47
|
+
mov esp,ebp
|
|
48
|
+
pop ebp
|
|
49
|
+
ret
|
|
50
|
+
|
|
51
|
+
; prototype: void greet(void);
|
|
52
|
+
greet mov eax,[integer] ; [14]
|
|
53
|
+
inc eax
|
|
54
|
+
mov [localint],eax ; [14]
|
|
55
|
+
push dword [commvar]
|
|
56
|
+
mov eax,[localptr] ; [13]
|
|
57
|
+
push dword [eax]
|
|
58
|
+
push dword [integer] ; [1] [14]
|
|
59
|
+
push dword printfstr ; [13]
|
|
60
|
+
call printf ; [11]
|
|
61
|
+
add esp,16
|
|
62
|
+
ret
|
|
63
|
+
|
|
64
|
+
SECTION .data
|
|
65
|
+
|
|
66
|
+
; a string
|
|
67
|
+
asmstr db 'hello, world', 0 ; [2]
|
|
68
|
+
|
|
69
|
+
; a string for Printf
|
|
70
|
+
printfstr db "integer==%d, localint==%d, commvar=%d"
|
|
71
|
+
db 10, 0
|
|
72
|
+
|
|
73
|
+
; some pointers
|
|
74
|
+
localptr dd localint ; [5] [17]
|
|
75
|
+
textptr dd greet ; [15]
|
|
76
|
+
selfptr dd selfptr ; [16]
|
|
77
|
+
|
|
78
|
+
SECTION .bss
|
|
79
|
+
|
|
80
|
+
; an integer
|
|
81
|
+
integer resd 1 ; [3]
|
|
82
|
+
|
|
83
|
+
; a local integer
|
|
84
|
+
localint resd 1 ; [6]
|
|
85
|
+
|
|
86
|
+
SECTION .rodata
|
|
87
|
+
readonly dd readonly ; [18]
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* test source file for assembling to ELF
|
|
3
|
+
* build with:
|
|
4
|
+
* nasm -f elf elftest.asm
|
|
5
|
+
* gcc -o elftest elftest.c elftest.o
|
|
6
|
+
* (assuming your gcc is ELF)
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
#include <stdio.h>
|
|
10
|
+
#include <inttypes.h>
|
|
11
|
+
|
|
12
|
+
extern int lrotate(int32_t, int);
|
|
13
|
+
extern void greet(void);
|
|
14
|
+
extern int8_t asmstr[];
|
|
15
|
+
extern void *selfptr;
|
|
16
|
+
extern void *textptr;
|
|
17
|
+
extern int integer, commvar;
|
|
18
|
+
|
|
19
|
+
int main(void)
|
|
20
|
+
{
|
|
21
|
+
|
|
22
|
+
printf("Testing lrotate: should get 0x00400000, 0x00000001\n");
|
|
23
|
+
printf("lrotate(0x00040000, 4) = 0x%08lx\n", lrotate(0x40000, 4));
|
|
24
|
+
printf("lrotate(0x00040000, 14) = 0x%08lx\n", lrotate(0x40000, 14));
|
|
25
|
+
|
|
26
|
+
printf("This string should read `hello, world': `%s'\n", asmstr);
|
|
27
|
+
|
|
28
|
+
printf("The integers here should be 1234, 1235 and 4321:\n");
|
|
29
|
+
integer = 1234;
|
|
30
|
+
commvar = 4321;
|
|
31
|
+
greet();
|
|
32
|
+
|
|
33
|
+
printf("These pointers should be equal: %p and %p\n", &greet, textptr);
|
|
34
|
+
|
|
35
|
+
printf("So should these: %p and %p\n", selfptr, &selfptr);
|
|
36
|
+
|
|
37
|
+
return 0;
|
|
38
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* build with:
|
|
3
|
+
* nasm -f elf64 elf64so.asm
|
|
4
|
+
* ld -shared -o elf64so.so elf64so.o
|
|
5
|
+
* test with:
|
|
6
|
+
* gcc -o elf64so elftest64.c ./elf64so.so
|
|
7
|
+
* ./elf64so
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
#include <stdio.h>
|
|
11
|
+
#include <inttypes.h>
|
|
12
|
+
|
|
13
|
+
extern long lrotate(long, int);
|
|
14
|
+
extern void greet_s(void);
|
|
15
|
+
extern void greet_m(void);
|
|
16
|
+
extern int8_t asmstr[];
|
|
17
|
+
extern void *selfptr;
|
|
18
|
+
extern void *textptr;
|
|
19
|
+
extern long integer;
|
|
20
|
+
long commvar;
|
|
21
|
+
|
|
22
|
+
int main(void)
|
|
23
|
+
{
|
|
24
|
+
|
|
25
|
+
printf("Testing lrotate: should get 0x00400000, 0x00000001\n");
|
|
26
|
+
printf("lrotate(0x00040000, 4) = 0x%08lx\n", lrotate(0x40000, 4));
|
|
27
|
+
printf("lrotate(0x00040000, 46) = 0x%08lx\n", lrotate(0x40000, 46));
|
|
28
|
+
|
|
29
|
+
printf("This string should read `hello, world': `%s'\n", asmstr);
|
|
30
|
+
|
|
31
|
+
printf("&integer = %p, &commvar = %p\n", &integer, &commvar);
|
|
32
|
+
printf("The integers here should be 1234, 1235 and 4321:\n");
|
|
33
|
+
integer = 1234;
|
|
34
|
+
commvar = 4321;
|
|
35
|
+
greet_s();
|
|
36
|
+
greet_m();
|
|
37
|
+
|
|
38
|
+
printf("These pointers should be equal: %p and %p\n", &greet_s, textptr);
|
|
39
|
+
|
|
40
|
+
printf("So should these: %p and %p\n", selfptr, &selfptr);
|
|
41
|
+
|
|
42
|
+
return 0;
|
|
43
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
;Testname=unoptimized; Arguments=-O0 -fobj -oelif.obj; Files=stdout stderr elif.obj
|
|
2
|
+
;Testname=optimized; Arguments=-Ox -fobj -oelif.obj; Files=stdout stderr elif.obj
|
|
3
|
+
|
|
4
|
+
%macro DosPrintMsg 1+
|
|
5
|
+
%ifnid %1
|
|
6
|
+
section .data
|
|
7
|
+
%%str_to_print:db %1
|
|
8
|
+
section .text
|
|
9
|
+
mov dx,%%str_to_print
|
|
10
|
+
mov ah,9
|
|
11
|
+
int 0x21
|
|
12
|
+
%else
|
|
13
|
+
mov dx,(%1)
|
|
14
|
+
mov ah,9
|
|
15
|
+
int 0x21
|
|
16
|
+
%endif
|
|
17
|
+
%endmacro
|
|
18
|
+
|
|
19
|
+
%macro DosExit 1
|
|
20
|
+
%if (%1) == 0
|
|
21
|
+
;use short-form return 0 exit
|
|
22
|
+
int 0x20
|
|
23
|
+
%elif ((%1) < 256) && ((%1) > 0)
|
|
24
|
+
mov ax,0x4C00 | (%1)
|
|
25
|
+
int 0x21
|
|
26
|
+
%else
|
|
27
|
+
%error Invalid return value
|
|
28
|
+
%endif
|
|
29
|
+
%endmacro
|
|
30
|
+
|
|
31
|
+
org 0x100
|
|
32
|
+
DosPrintMsg predefined_str
|
|
33
|
+
DosPrintMsg "Using string with macro-defined label",10,0
|
|
34
|
+
DosExit 0
|
|
35
|
+
DosExit 1
|
|
36
|
+
DosExit 256
|
|
37
|
+
|
|
38
|
+
section .data
|
|
39
|
+
predefined_str:db "Using string with predefined label",10,0
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
;Testname=O0; Arguments=-O0 -fbin -oexpimp.bin; Files=stdout stderr expimp.bin
|
|
2
|
+
;Testname=O1; Arguments=-O1 -fbin -oexpimp.bin; Files=stdout stderr expimp.bin
|
|
3
|
+
;Testname=Ox; Arguments=-Ox -fbin -oexpimp.bin; Files=stdout stderr expimp.bin
|
|
4
|
+
;Testname=error-O0; Arguments=-O0 -fbin -oexpimp.bin -DERROR; Files=stdout stderr expimp.bin
|
|
5
|
+
;Testname=error-Ox; Arguments=-Ox -fbin -oexpimp.bin -DERROR; Files=stdout stderr expimp.bin
|
|
6
|
+
|
|
7
|
+
;
|
|
8
|
+
; Test of explicitly and implicitly sized operands
|
|
9
|
+
;
|
|
10
|
+
BITS 32
|
|
11
|
+
|
|
12
|
+
add esi,2 ; Implicit
|
|
13
|
+
add esi,123456h ; Implicit
|
|
14
|
+
add esi,byte 2 ; Explicit
|
|
15
|
+
add esi,dword 2 ; Explicit
|
|
16
|
+
add esi,dword 123456h ; Explicit
|
|
17
|
+
add esi,byte 123456h ; Explicit Truncation
|
|
18
|
+
|
|
19
|
+
add esi,strict 2 ; Implicit Strict
|
|
20
|
+
add esi,strict 123456h ; Implicit Strict
|
|
21
|
+
add esi,strict byte 2 ; Explicit Strict
|
|
22
|
+
add esi,strict dword 2 ; Explicit Strict
|
|
23
|
+
add esi,strict dword 123456h ; Explicit Strict
|
|
24
|
+
add esi,strict byte 123456h ; Explicit Strict Truncation
|
|
25
|
+
|
|
26
|
+
add eax,2 ; Implicit
|
|
27
|
+
add eax,123456h ; Implicit
|
|
28
|
+
add eax,byte 2 ; Explicit
|
|
29
|
+
add eax,dword 2 ; Explicit
|
|
30
|
+
add eax,dword 123456h ; Explicit
|
|
31
|
+
add eax,byte 123456h ; Explicit Truncation
|
|
32
|
+
|
|
33
|
+
add eax,strict 2 ; Implicit Strict
|
|
34
|
+
add eax,strict 123456h ; Implicit Strict
|
|
35
|
+
add eax,strict byte 2 ; Explicit Strict
|
|
36
|
+
add eax,strict dword 2 ; Explicit Strict
|
|
37
|
+
add eax,strict dword 123456h ; Explicit Strict
|
|
38
|
+
add eax,strict byte 123456h ; Explicit Strict Truncation
|
|
39
|
+
|
|
40
|
+
imul dx,3 ; Implicit
|
|
41
|
+
imul dx,byte 3 ; Explicit
|
|
42
|
+
imul dx,word 3 ; Explicit
|
|
43
|
+
imul dx,strict byte 3 ; Explicit Strict
|
|
44
|
+
imul dx,strict word 3 ; Explicit Strict
|
|
45
|
+
|
|
46
|
+
;
|
|
47
|
+
; Same thing with branches
|
|
48
|
+
;
|
|
49
|
+
start:
|
|
50
|
+
jmp short start ; Explicit
|
|
51
|
+
jmp near start ; Explicit
|
|
52
|
+
jmp word start ; Explicit
|
|
53
|
+
jmp dword start ; Explicit
|
|
54
|
+
jmp short forward ; Explicit
|
|
55
|
+
jmp near forward ; Explicit
|
|
56
|
+
jmp word forward ; Explicit
|
|
57
|
+
jmp dword forward ; Explicit
|
|
58
|
+
%ifdef ERROR
|
|
59
|
+
jmp short faraway ; Explicit (ERROR)
|
|
60
|
+
%endif
|
|
61
|
+
jmp near faraway ; Explicit
|
|
62
|
+
jmp word faraway ; Explicit
|
|
63
|
+
jmp dword faraway ; Explicit
|
|
64
|
+
jmp start ; Implicit
|
|
65
|
+
jmp forward ; Implicit
|
|
66
|
+
jmp faraway ; Implicit
|
|
67
|
+
|
|
68
|
+
jmp strict short start ; Explicit Strict
|
|
69
|
+
jmp strict near start ; Explicit Strict
|
|
70
|
+
jmp strict word start ; Explicit Strict
|
|
71
|
+
jmp strict dword start ; Explicit Strict
|
|
72
|
+
jmp strict short forward ; Explicit Strict
|
|
73
|
+
jmp strict near forward ; Explicit Strict
|
|
74
|
+
jmp strict word forward ; Explicit Strict
|
|
75
|
+
jmp strict dword forward ; Explicit Strict
|
|
76
|
+
%ifdef ERROR
|
|
77
|
+
jmp strict short faraway ; Explicit (ERROR)
|
|
78
|
+
%endif
|
|
79
|
+
jmp strict near faraway ; Explicit Strict
|
|
80
|
+
jmp strict word faraway ; Explicit Strict
|
|
81
|
+
jmp strict dword faraway ; Explicit Strict
|
|
82
|
+
jmp strict start ; Implicit Strict
|
|
83
|
+
jmp strict forward ; Implicit Strict
|
|
84
|
+
jmp strict faraway ; Implicit Strict
|
|
85
|
+
forward:
|
|
86
|
+
|
|
87
|
+
times 256 nop
|
|
88
|
+
faraway:
|
|
89
|
+
|
|
90
|
+
|
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
;Testname=unoptimized; Arguments=-O0 -fbin -ofloat.bin; Files=stdout stderr float.bin
|
|
2
|
+
;Testname=optimized; Arguments=-Ox -fbin -ofloat.bin; Files=stdout stderr float.bin
|
|
3
|
+
|
|
4
|
+
;
|
|
5
|
+
; Test of floating-point formats
|
|
6
|
+
;
|
|
7
|
+
|
|
8
|
+
; 8-bit
|
|
9
|
+
db 1.0
|
|
10
|
+
db +1.0
|
|
11
|
+
db -1.0
|
|
12
|
+
db 1.5
|
|
13
|
+
db +1.5
|
|
14
|
+
db -1.5
|
|
15
|
+
db 0.0
|
|
16
|
+
db +0.0
|
|
17
|
+
db -0.0
|
|
18
|
+
db 1.83203125
|
|
19
|
+
db +1.83203125
|
|
20
|
+
db -1.83203125
|
|
21
|
+
db 1.83203125e1
|
|
22
|
+
db +1.83203125e1
|
|
23
|
+
db -1.83203125e1
|
|
24
|
+
db 1.83203125e-1
|
|
25
|
+
db +1.83203125e-1
|
|
26
|
+
db -1.83203125e-1
|
|
27
|
+
db 1.13203125e-2 ; Denormal!
|
|
28
|
+
db +1.13203125e-2 ; Denormal!
|
|
29
|
+
db -1.13203125e-2 ; Denormal!
|
|
30
|
+
db __Infinity__
|
|
31
|
+
db +__Infinity__
|
|
32
|
+
db -__Infinity__
|
|
33
|
+
db __NaN__
|
|
34
|
+
db __QNaN__
|
|
35
|
+
db __SNaN__
|
|
36
|
+
db 3.1415926535_8979323846_2643383279_5028841971_6939937510_5
|
|
37
|
+
|
|
38
|
+
; 16-bit
|
|
39
|
+
dw 1.0
|
|
40
|
+
dw +1.0
|
|
41
|
+
dw -1.0
|
|
42
|
+
dw 1.5
|
|
43
|
+
dw +1.5
|
|
44
|
+
dw -1.5
|
|
45
|
+
dw 0.0
|
|
46
|
+
dw +0.0
|
|
47
|
+
dw -0.0
|
|
48
|
+
dw 1.83203125
|
|
49
|
+
dw +1.83203125
|
|
50
|
+
dw -1.83203125
|
|
51
|
+
dw 1.83203125e3
|
|
52
|
+
dw +1.83203125e3
|
|
53
|
+
dw -1.83203125e3
|
|
54
|
+
dw 1.83203125e-3
|
|
55
|
+
dw +1.83203125e-3
|
|
56
|
+
dw -1.83203125e-3
|
|
57
|
+
dw 1.83203125e-6 ; Denormal!
|
|
58
|
+
dw +1.83203125e-6 ; Denormal!
|
|
59
|
+
dw -1.83203125e-6 ; Denormal!
|
|
60
|
+
dw __Infinity__
|
|
61
|
+
dw +__Infinity__
|
|
62
|
+
dw -__Infinity__
|
|
63
|
+
dw __NaN__
|
|
64
|
+
dw __QNaN__
|
|
65
|
+
dw __SNaN__
|
|
66
|
+
dw 3.1415926535_8979323846_2643383279_5028841971_6939937510_5
|
|
67
|
+
|
|
68
|
+
; 32-bit
|
|
69
|
+
dd 1.0
|
|
70
|
+
dd +1.0
|
|
71
|
+
dd -1.0
|
|
72
|
+
dd 1.5
|
|
73
|
+
dd +1.5
|
|
74
|
+
dd -1.5
|
|
75
|
+
dd 0.0
|
|
76
|
+
dd +0.0
|
|
77
|
+
dd -0.0
|
|
78
|
+
dd 1.83203125
|
|
79
|
+
dd +1.83203125
|
|
80
|
+
dd -1.83203125
|
|
81
|
+
dd 1.83203125e15
|
|
82
|
+
dd +1.83203125e15
|
|
83
|
+
dd -1.83203125e15
|
|
84
|
+
dd 1.83203125e-15
|
|
85
|
+
dd +1.83203125e-15
|
|
86
|
+
dd -1.83203125e-15
|
|
87
|
+
dd 1.83203125e-40 ; Denormal!
|
|
88
|
+
dd +1.83203125e-40 ; Denormal!
|
|
89
|
+
dd -1.83203125e-40 ; Denormal!
|
|
90
|
+
dd __Infinity__
|
|
91
|
+
dd +__Infinity__
|
|
92
|
+
dd -__Infinity__
|
|
93
|
+
dd __NaN__
|
|
94
|
+
dd __QNaN__
|
|
95
|
+
dd __SNaN__
|
|
96
|
+
dd 3.1415926535_8979323846_2643383279_5028841971_6939937510_5
|
|
97
|
+
|
|
98
|
+
; 64-bit
|
|
99
|
+
dq 1.0
|
|
100
|
+
dq +1.0
|
|
101
|
+
dq -1.0
|
|
102
|
+
dq 1.5
|
|
103
|
+
dq +1.5
|
|
104
|
+
dq -1.5
|
|
105
|
+
dq 0.0
|
|
106
|
+
dq +0.0
|
|
107
|
+
dq -0.0
|
|
108
|
+
dq 1.83203125
|
|
109
|
+
dq +1.83203125
|
|
110
|
+
dq -1.83203125
|
|
111
|
+
dq 1.83203125e300
|
|
112
|
+
dq +1.83203125e300
|
|
113
|
+
dq -1.83203125e300
|
|
114
|
+
dq 1.83203125e-300
|
|
115
|
+
dq +1.83203125e-300
|
|
116
|
+
dq -1.83203125e-300
|
|
117
|
+
dq 1.83203125e-320 ; Denormal!
|
|
118
|
+
dq +1.83203125e-320 ; Denormal!
|
|
119
|
+
dq -1.83203125e-320 ; Denormal!
|
|
120
|
+
dq __Infinity__
|
|
121
|
+
dq +__Infinity__
|
|
122
|
+
dq -__Infinity__
|
|
123
|
+
dq __NaN__
|
|
124
|
+
dq __QNaN__
|
|
125
|
+
dq __SNaN__
|
|
126
|
+
dq 3.1415926535_8979323846_2643383279_5028841971_6939937510_5
|
|
127
|
+
|
|
128
|
+
; 80-bit
|
|
129
|
+
dt 1.0
|
|
130
|
+
dt +1.0
|
|
131
|
+
dt -1.0
|
|
132
|
+
dt 1.5
|
|
133
|
+
dt +1.5
|
|
134
|
+
dt -1.5
|
|
135
|
+
dt 0.0
|
|
136
|
+
dt +0.0
|
|
137
|
+
dt -0.0
|
|
138
|
+
dt 1.83203125
|
|
139
|
+
dt +1.83203125
|
|
140
|
+
dt -1.83203125
|
|
141
|
+
dt 1.83203125e+4000
|
|
142
|
+
dt +1.83203125e+4000
|
|
143
|
+
dt -1.83203125e+4000
|
|
144
|
+
dt 1.83203125e-4000
|
|
145
|
+
dt +1.83203125e-4000
|
|
146
|
+
dt -1.83203125e-4000
|
|
147
|
+
dt 1.83203125e-4940 ; Denormal!
|
|
148
|
+
dt +1.83203125e-4940 ; Denormal!
|
|
149
|
+
dt -1.83203125e-4940 ; Denormal!
|
|
150
|
+
dt __Infinity__
|
|
151
|
+
dt +__Infinity__
|
|
152
|
+
dt -__Infinity__
|
|
153
|
+
dt __NaN__
|
|
154
|
+
dt __QNaN__
|
|
155
|
+
dt __SNaN__
|
|
156
|
+
dt 3.1415926535_8979323846_2643383279_5028841971_6939937510_5
|
|
157
|
+
|
|
158
|
+
; 128-bit
|
|
159
|
+
do 1.0
|
|
160
|
+
do +1.0
|
|
161
|
+
do -1.0
|
|
162
|
+
do 1.5
|
|
163
|
+
do +1.5
|
|
164
|
+
do -1.5
|
|
165
|
+
do 0.0
|
|
166
|
+
do +0.0
|
|
167
|
+
do -0.0
|
|
168
|
+
do 1.83203125
|
|
169
|
+
do +1.83203125
|
|
170
|
+
do -1.83203125
|
|
171
|
+
do 1.83203125e+4000
|
|
172
|
+
do +1.83203125e+4000
|
|
173
|
+
do -1.83203125e+4000
|
|
174
|
+
do 1.83203125e-4000
|
|
175
|
+
do +1.83203125e-4000
|
|
176
|
+
do -1.83203125e-4000
|
|
177
|
+
do 1.83203125e-4940 ; Denormal!
|
|
178
|
+
do +1.83203125e-4940 ; Denormal!
|
|
179
|
+
do -1.83203125e-4940 ; Denormal!
|
|
180
|
+
do __Infinity__
|
|
181
|
+
do +__Infinity__
|
|
182
|
+
do -__Infinity__
|
|
183
|
+
do __NaN__
|
|
184
|
+
do __QNaN__
|
|
185
|
+
do __SNaN__
|
|
186
|
+
do 3.1415926535_8979323846_2643383279_5028841971_6939937510_5
|