mirror of
https://github.com/netwide-assembler/nasm
synced 2026-08-26 16:23:04 -04:00
x86/insns.pl, tools/testgen: share cc/scc condition-code tables
Extract the condition-code suffix table (%conds, @conds, and the c_ccmask/c_nd/c_cc/c_scc bitmasks) out of x86/insns.pl's conditional_forms() into a new shared x86/insns-cc.ph module, adding cc_suffix_list($is_scc) to return the suffix list applicable to a '...cc'-family (Jcc, SETcc, CMOVcc, CFCMOVcc) or '...scc'-family (CCMPscc, CTESTscc, CMPccXADD, SETccZU) placeholder mnemonic. insns.pl is refactored to use it (behavior-preserving: verified byte-identical x86/insnsa.c, insnsb.c, insnsd.c, insnsi.h, insnsn.c, iflag.c, iflaggen.h, asm/tokhash.c, asm/tokens.h before/after). tools/testgen/gen-insn-tests.pl now requires the same module instead of hand-rolling a 16-suffix 'cc'-only expansion table, closing the gap where the APX 'scc'-suffix families (CCMPscc/CTESTscc/CMPccXADD/ SETccZU) were dropped as unsupported. The generator now detects and expands any '...cc'/'...scc' placeholder mnemonic the same way insns.pl's conditional_forms() does (case-sensitive /s?cc/ match and substitution), so future new cc/scc families need no generator changes. Mnemonics with generated tests: 2432 -> 2606 (+174, one per newly-expanded scc-family condition); dropped: 20 -> 16. Regenerated travis/insns/ (174 new mnemonic dirs for the APX scc families; existing 2432 regenerated byte-identically, confirming determinism). Full suite validated both via tools/travis/nasm-t.py --directory=./travis run (4427 total, 4426 PASS, 1 pre-existing SKIP, 0 FAIL) and via make -j32 travis (all tests PASS, ~28s). Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
parent
c95b04bc7d
commit
35016d4880
729 changed files with 4791 additions and 55 deletions
|
|
@ -284,7 +284,7 @@ PERLREQ_CLEANABLE = \
|
|||
|
||||
PERLREQ = $(PERLREQ_CLEANABLE)
|
||||
|
||||
INSDEP = x86/insns.xda x86/insns.pl x86/insns-iflags.ph x86/iflags.ph
|
||||
INSDEP = x86/insns.xda x86/insns.pl x86/insns-iflags.ph x86/iflags.ph x86/insns-cc.ph
|
||||
|
||||
x86/insns.xda: x86/insns.dat x86/preinsns.pl $(DIRS)
|
||||
$(RUNPERL) $(srcdir)/x86/preinsns.pl $(srcdir)/x86/insns.dat $@
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ into the existing `tools/travis/nasm-t.py` harness. This gives every
|
|||
instruction-set pattern regression coverage without hand-writing
|
||||
thousands of test cases.
|
||||
|
||||
The generated tree currently checked in lives at `travis/insns/` (2432
|
||||
The generated tree currently checked in lives at `travis/insns/` (2606
|
||||
mnemonic subdirectories as of the last full run).
|
||||
|
||||
## Usage
|
||||
|
|
@ -100,19 +100,30 @@ targets.
|
|||
## Condition-code mnemonic families
|
||||
|
||||
`insns.xda` leaves condition-code instruction families as literal,
|
||||
unexpanded placeholders: `Jcc`, `SETcc`, `CMOVcc`, `CFCMOVcc`. Unlike
|
||||
`$bwdq`-style width macros (which `insns.pl` *does* pre-expand into
|
||||
concrete lines in `.xda`), NASM's parser expands condition codes against
|
||||
its own cc-table at parse time — so the literal placeholder mnemonic
|
||||
isn't directly assemblable. The generator expands these four families
|
||||
itself into concrete mnemonics (`JE`, `SETNZ`, `CMOVGE`, ...) using the
|
||||
16 canonical condition-code suffixes
|
||||
(`o no b ae e ne be a s ns p np l ge le g`).
|
||||
unexpanded placeholders: `Jcc`, `SETcc`, `CMOVcc`, `CFCMOVcc` (the "cc"
|
||||
family) and the newer APX `CCMPscc`, `CTESTscc`, `CMPccXADD`, `SETccZU`
|
||||
(the "scc" family). Unlike `$bwdq`-style width macros (which `insns.pl`
|
||||
*does* pre-expand into concrete lines in `.xda`), NASM's parser expands
|
||||
condition codes against its own cc-table at parse time — and
|
||||
`x86/insns.pl`'s own `conditional_forms()` performs the equivalent
|
||||
expansion for the C-code generators, but only *after* `insns.xda` has
|
||||
already been written by `preinsns.pl`, so the placeholders reach this
|
||||
tool unexpanded either way.
|
||||
|
||||
**Known gap:** the newer APX condition-suffix families (`CCMPscc`,
|
||||
`CTESTscc`, `CMPccXADD`, `SETccZU`) are *not* expanded and are currently
|
||||
dropped as unsupported. Extending the `@cc_suffixes` expansion loop to
|
||||
cover these would close this gap.
|
||||
The condition-code table (`%conds`, plus the `$c_cc`/`$c_scc` masks
|
||||
distinguishing which suffixes are valid for which family) is shared
|
||||
between `insns.pl` and this generator via `x86/insns-cc.ph`, a small
|
||||
Perl module `require`d by both — this guarantees the two expansions
|
||||
never drift out of sync, since there's only one copy of the
|
||||
suffix/mask data. `cc_suffix_list($is_scc)` (defined in that module)
|
||||
returns the applicable suffix list for either family, and the generator
|
||||
mirrors `insns.pl`'s own detection (`$mnem =~ /s?cc/`, case-sensitive)
|
||||
and substitution (`$mnem =~ s/s?cc/\U$suffix/`) exactly, so e.g. `Jcc`
|
||||
expands to `JE`/`JNE`/`JGE`/... , `CCMPscc` expands to `CCMPE`/
|
||||
`CCMPNE`/... (excluding the "cc"-only suffixes `pe`/`po`/`p`/`np`, which
|
||||
aren't valid for `scc`-family instructions), and `SETccZU` expands to
|
||||
`SETNEZU`/... . Any future new "cc"/"scc" family added to `insns.dat`
|
||||
is picked up automatically without changes to this script.
|
||||
|
||||
## Bit-width (16/32/64) handling
|
||||
|
||||
|
|
@ -175,15 +186,15 @@ The generator prints a coverage summary at the end of each run
|
|||
unsupported operand-type tokens), so gaps are self-documenting. As of
|
||||
the last full run:
|
||||
|
||||
- **2432 / 2452 mnemonics generate at least one assemblable template.**
|
||||
- **20 mnemonics produce zero output and are dropped**, mostly:
|
||||
- **2606 / 2622 mnemonics generate at least one assemblable template**
|
||||
(includes all concrete expansions of the `cc`/`scc` condition-code
|
||||
families — see above).
|
||||
- **16 mnemonics produce zero output and are dropped**, mostly:
|
||||
- `HINT_NOP0` .. `HINT_NOP63` placeholder mnemonics,
|
||||
- `LOADALL` / `LOADALL286`,
|
||||
- a handful of exotic AMX-transpose / APX instructions whose full
|
||||
operand grammar wasn't targeted (e.g. `T2RPNTLVWZ0*`, `TCONJT*`,
|
||||
`TTMMULTF32PS`).
|
||||
- APX `scc`-suffix condition-code families (`CCMPscc`, `CTESTscc`,
|
||||
`CMPccXADD`, `SETccZU`) are not expanded (see above).
|
||||
- Memory/vsib operands only exercise base-register-free addressing
|
||||
forms (see above) — true base+index+scale+disp combinations aren't
|
||||
covered by generated tests.
|
||||
|
|
@ -207,5 +218,5 @@ tests + `travis/insns/`):
|
|||
python3 tools/travis/nasm-t.py --nasm=./nasm --directory=./travis run
|
||||
```
|
||||
|
||||
4225 tests total, 4224 PASS, 1 pre-existing SKIP (`time`, an
|
||||
4427 tests total, 4426 PASS, 1 pre-existing SKIP (`time`, an
|
||||
intentional/known skip unrelated to this tool), 0 FAIL, 0 ABORT.
|
||||
|
|
|
|||
|
|
@ -91,14 +91,19 @@ GetOptions(
|
|||
my %by_mnemonic; # mnemonic => [ { ops => [...], flags => {...} }, ... ]
|
||||
|
||||
# insns.xda leaves condition-code instruction *families* as literal
|
||||
# "cc"-suffixed placeholders (e.g. mnemonic "Jcc") -- the parser
|
||||
# expands these against a condition-code table at parse time rather
|
||||
# than insns.pl expanding them into per-condition lines the way the
|
||||
# $bwdq-style width macros are expanded. Mirror that expansion here so
|
||||
# concrete, testable mnemonics (JE, SETNZ, CMOVGE, ...) get generated
|
||||
# instead of the unusable literal placeholder.
|
||||
my @cc_suffixes = qw(o no b ae e ne be a s ns p np l ge le g);
|
||||
my %cc_families = map { $_ => 1 } qw(Jcc SETcc CMOVcc CFCMOVcc);
|
||||
# "...cc"/"...scc"-suffixed placeholders (Jcc, SETcc, CMOVcc, CFCMOVcc,
|
||||
# CCMPscc, CTESTscc, CMPccXADD, SETccZU) -- x86/insns.pl's own
|
||||
# conditional_forms() expands these into one concrete pattern per
|
||||
# applicable condition code, but that expansion happens *after*
|
||||
# insns.xda is generated (insns.xda comes from preinsns.pl), so the
|
||||
# placeholders reach us unexpanded. Mirror insns.pl's own detection
|
||||
# (case-sensitive "/s?cc/" match) and expansion using the shared
|
||||
# x86/insns-cc.ph condition-code tables, so concrete, testable
|
||||
# mnemonics (JE, SETNZ, CMOVGE, CCMPNE, SETccZU -> SETNEZU, ...) get
|
||||
# generated instead of the unusable literal placeholder, and any
|
||||
# future new cc/scc family added to insns.dat is picked up
|
||||
# automatically without touching this script.
|
||||
require 'x86/insns-cc.ph';
|
||||
|
||||
open(my $xda, '<', $xda_file) or die "cannot open $xda_file: $!\n";
|
||||
while (my $line = <$xda>) {
|
||||
|
|
@ -114,10 +119,10 @@ while (my $line = <$xda>) {
|
|||
|
||||
my @ops = ($opstr eq 'void') ? () : split(/,/, $opstr);
|
||||
|
||||
if ($cc_families{$mnem}) {
|
||||
(my $prefix = $mnem) =~ s/cc$//;
|
||||
for my $suf (@cc_suffixes) {
|
||||
my $concrete = uc($prefix . $suf);
|
||||
if ($mnem =~ /s?cc/) { # case-sensitive, same as insns.pl
|
||||
my $is_scc = ($mnem =~ /scc/);
|
||||
for my $suf (cc_suffix_list($is_scc)) {
|
||||
(my $concrete = $mnem) =~ s/s?cc/\U$suf/;
|
||||
push @{ $by_mnemonic{$concrete} }, { ops => \@ops, flags => \%flags };
|
||||
}
|
||||
next;
|
||||
|
|
|
|||
9
travis/insns/ccmp/ccmp.asm
Normal file
9
travis/insns/ccmp/ccmp.asm
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
default rel
|
||||
ccmp 6, byte [0xe6d], dl
|
||||
ccmp 10, cl, al
|
||||
ccmp 1, si, bp
|
||||
ccmp 10, word [0x708], dx
|
||||
ccmp 10, ebx, esi
|
||||
ccmp 10, esi, ebx
|
||||
ccmp 1, qword [0x7aa], rax
|
||||
ccmp 3, rcx, rbp
|
||||
BIN
travis/insns/ccmp/ccmp.bin64.t
Normal file
BIN
travis/insns/ccmp/ccmp.bin64.t
Normal file
Binary file not shown.
12
travis/insns/ccmp/ccmp.json
Normal file
12
travis/insns/ccmp/ccmp.json
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[
|
||||
{
|
||||
"description": "Pseudorandom test for CCMP",
|
||||
"id": "ccmp64",
|
||||
"format": "bin",
|
||||
"source": "ccmp.asm",
|
||||
"option": "--bits 64 -w-ea-absolute -w-implicit-abs-deprecated -I./travis/insns/ccmp/",
|
||||
"target": [
|
||||
{ "output": "ccmp.bin64", "match": "ccmp.bin64.t" }
|
||||
]
|
||||
}
|
||||
]
|
||||
6
travis/insns/ccmp/ccmp_narrow.asm
Normal file
6
travis/insns/ccmp/ccmp_narrow.asm
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
ccmp 6, byte [0xe6d], dl
|
||||
ccmp 10, cl, al
|
||||
ccmp 1, si, bp
|
||||
ccmp 10, word [0x708], dx
|
||||
ccmp 10, ebx, esi
|
||||
ccmp 10, esi, ebx
|
||||
9
travis/insns/ccmpa/ccmpa.asm
Normal file
9
travis/insns/ccmpa/ccmpa.asm
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
default rel
|
||||
ccmpa 10, dl, bl
|
||||
ccmpa 4, byte [0xd64], dl
|
||||
ccmpa 12, di, ax
|
||||
ccmpa 12, word [0x106], si
|
||||
ccmpa 0, dword [0x1c4], ebp
|
||||
ccmpa 9, ecx, eax
|
||||
ccmpa 4, rbx, rax
|
||||
ccmpa 13, qword [0x89e], rbx
|
||||
BIN
travis/insns/ccmpa/ccmpa.bin64.t
Normal file
BIN
travis/insns/ccmpa/ccmpa.bin64.t
Normal file
Binary file not shown.
12
travis/insns/ccmpa/ccmpa.json
Normal file
12
travis/insns/ccmpa/ccmpa.json
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[
|
||||
{
|
||||
"description": "Pseudorandom test for CCMPA",
|
||||
"id": "ccmpa64",
|
||||
"format": "bin",
|
||||
"source": "ccmpa.asm",
|
||||
"option": "--bits 64 -w-ea-absolute -w-implicit-abs-deprecated -I./travis/insns/ccmpa/",
|
||||
"target": [
|
||||
{ "output": "ccmpa.bin64", "match": "ccmpa.bin64.t" }
|
||||
]
|
||||
}
|
||||
]
|
||||
6
travis/insns/ccmpa/ccmpa_narrow.asm
Normal file
6
travis/insns/ccmpa/ccmpa_narrow.asm
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
ccmpa 10, dl, bl
|
||||
ccmpa 4, byte [0xd64], dl
|
||||
ccmpa 12, di, ax
|
||||
ccmpa 12, word [0x106], si
|
||||
ccmpa 0, dword [0x1c4], ebp
|
||||
ccmpa 9, ecx, eax
|
||||
9
travis/insns/ccmpae/ccmpae.asm
Normal file
9
travis/insns/ccmpae/ccmpae.asm
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
default rel
|
||||
ccmpae 8, byte [0x14d], dl
|
||||
ccmpae 10, al, al
|
||||
ccmpae 14, si, cx
|
||||
ccmpae 13, word [0x472], si
|
||||
ccmpae 4, edi, edi
|
||||
ccmpae 10, esi, eax
|
||||
ccmpae 5, qword [0xa79], rbp
|
||||
ccmpae 2, qword [0x76d], rdi
|
||||
BIN
travis/insns/ccmpae/ccmpae.bin64.t
Normal file
BIN
travis/insns/ccmpae/ccmpae.bin64.t
Normal file
Binary file not shown.
12
travis/insns/ccmpae/ccmpae.json
Normal file
12
travis/insns/ccmpae/ccmpae.json
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[
|
||||
{
|
||||
"description": "Pseudorandom test for CCMPAE",
|
||||
"id": "ccmpae64",
|
||||
"format": "bin",
|
||||
"source": "ccmpae.asm",
|
||||
"option": "--bits 64 -w-ea-absolute -w-implicit-abs-deprecated -I./travis/insns/ccmpae/",
|
||||
"target": [
|
||||
{ "output": "ccmpae.bin64", "match": "ccmpae.bin64.t" }
|
||||
]
|
||||
}
|
||||
]
|
||||
6
travis/insns/ccmpae/ccmpae_narrow.asm
Normal file
6
travis/insns/ccmpae/ccmpae_narrow.asm
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
ccmpae 8, byte [0x14d], dl
|
||||
ccmpae 10, al, al
|
||||
ccmpae 14, si, cx
|
||||
ccmpae 13, word [0x472], si
|
||||
ccmpae 4, edi, edi
|
||||
ccmpae 10, esi, eax
|
||||
9
travis/insns/ccmpb/ccmpb.asm
Normal file
9
travis/insns/ccmpb/ccmpb.asm
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
default rel
|
||||
ccmpb 11, bl, bl
|
||||
ccmpb 11, cl, al
|
||||
ccmpb 13, si, cx
|
||||
ccmpb 10, word [0x474], dx
|
||||
ccmpb 14, eax, ecx
|
||||
ccmpb 3, ebp, eax
|
||||
ccmpb 5, rcx, rcx
|
||||
ccmpb 13, rsi, rdx
|
||||
BIN
travis/insns/ccmpb/ccmpb.bin64.t
Normal file
BIN
travis/insns/ccmpb/ccmpb.bin64.t
Normal file
Binary file not shown.
12
travis/insns/ccmpb/ccmpb.json
Normal file
12
travis/insns/ccmpb/ccmpb.json
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[
|
||||
{
|
||||
"description": "Pseudorandom test for CCMPB",
|
||||
"id": "ccmpb64",
|
||||
"format": "bin",
|
||||
"source": "ccmpb.asm",
|
||||
"option": "--bits 64 -w-ea-absolute -w-implicit-abs-deprecated -I./travis/insns/ccmpb/",
|
||||
"target": [
|
||||
{ "output": "ccmpb.bin64", "match": "ccmpb.bin64.t" }
|
||||
]
|
||||
}
|
||||
]
|
||||
6
travis/insns/ccmpb/ccmpb_narrow.asm
Normal file
6
travis/insns/ccmpb/ccmpb_narrow.asm
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
ccmpb 11, bl, bl
|
||||
ccmpb 11, cl, al
|
||||
ccmpb 13, si, cx
|
||||
ccmpb 10, word [0x474], dx
|
||||
ccmpb 14, eax, ecx
|
||||
ccmpb 3, ebp, eax
|
||||
9
travis/insns/ccmpbe/ccmpbe.asm
Normal file
9
travis/insns/ccmpbe/ccmpbe.asm
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
default rel
|
||||
ccmpbe 6, dl, bl
|
||||
ccmpbe 9, cl, al
|
||||
ccmpbe 12, cx, di
|
||||
ccmpbe 2, di, di
|
||||
ccmpbe 11, dword [0x3b2], ebp
|
||||
ccmpbe 2, eax, esi
|
||||
ccmpbe 0, qword [0xdd8], rdi
|
||||
ccmpbe 10, rsi, rdi
|
||||
BIN
travis/insns/ccmpbe/ccmpbe.bin64.t
Normal file
BIN
travis/insns/ccmpbe/ccmpbe.bin64.t
Normal file
Binary file not shown.
12
travis/insns/ccmpbe/ccmpbe.json
Normal file
12
travis/insns/ccmpbe/ccmpbe.json
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[
|
||||
{
|
||||
"description": "Pseudorandom test for CCMPBE",
|
||||
"id": "ccmpbe64",
|
||||
"format": "bin",
|
||||
"source": "ccmpbe.asm",
|
||||
"option": "--bits 64 -w-ea-absolute -w-implicit-abs-deprecated -I./travis/insns/ccmpbe/",
|
||||
"target": [
|
||||
{ "output": "ccmpbe.bin64", "match": "ccmpbe.bin64.t" }
|
||||
]
|
||||
}
|
||||
]
|
||||
6
travis/insns/ccmpbe/ccmpbe_narrow.asm
Normal file
6
travis/insns/ccmpbe/ccmpbe_narrow.asm
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
ccmpbe 6, dl, bl
|
||||
ccmpbe 9, cl, al
|
||||
ccmpbe 12, cx, di
|
||||
ccmpbe 2, di, di
|
||||
ccmpbe 11, dword [0x3b2], ebp
|
||||
ccmpbe 2, eax, esi
|
||||
9
travis/insns/ccmpc/ccmpc.asm
Normal file
9
travis/insns/ccmpc/ccmpc.asm
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
default rel
|
||||
ccmpc 9, al, dl
|
||||
ccmpc 2, bl, cl
|
||||
ccmpc 11, word [0x48b], ax
|
||||
ccmpc 5, dx, si
|
||||
ccmpc 5, ebp, eax
|
||||
ccmpc 14, dword [0x17b], ebp
|
||||
ccmpc 11, rax, rsi
|
||||
ccmpc 13, qword [0x544], rdi
|
||||
BIN
travis/insns/ccmpc/ccmpc.bin64.t
Normal file
BIN
travis/insns/ccmpc/ccmpc.bin64.t
Normal file
Binary file not shown.
12
travis/insns/ccmpc/ccmpc.json
Normal file
12
travis/insns/ccmpc/ccmpc.json
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[
|
||||
{
|
||||
"description": "Pseudorandom test for CCMPC",
|
||||
"id": "ccmpc64",
|
||||
"format": "bin",
|
||||
"source": "ccmpc.asm",
|
||||
"option": "--bits 64 -w-ea-absolute -w-implicit-abs-deprecated -I./travis/insns/ccmpc/",
|
||||
"target": [
|
||||
{ "output": "ccmpc.bin64", "match": "ccmpc.bin64.t" }
|
||||
]
|
||||
}
|
||||
]
|
||||
6
travis/insns/ccmpc/ccmpc_narrow.asm
Normal file
6
travis/insns/ccmpc/ccmpc_narrow.asm
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
ccmpc 9, al, dl
|
||||
ccmpc 2, bl, cl
|
||||
ccmpc 11, word [0x48b], ax
|
||||
ccmpc 5, dx, si
|
||||
ccmpc 5, ebp, eax
|
||||
ccmpc 14, dword [0x17b], ebp
|
||||
9
travis/insns/ccmpe/ccmpe.asm
Normal file
9
travis/insns/ccmpe/ccmpe.asm
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
default rel
|
||||
ccmpe 7, al, bl
|
||||
ccmpe 13, cl, al
|
||||
ccmpe 2, si, dx
|
||||
ccmpe 3, cx, dx
|
||||
ccmpe 12, eax, ecx
|
||||
ccmpe 2, edi, edi
|
||||
ccmpe 5, rbx, rbp
|
||||
ccmpe 3, qword [0x8ec], rdx
|
||||
BIN
travis/insns/ccmpe/ccmpe.bin64.t
Normal file
BIN
travis/insns/ccmpe/ccmpe.bin64.t
Normal file
Binary file not shown.
12
travis/insns/ccmpe/ccmpe.json
Normal file
12
travis/insns/ccmpe/ccmpe.json
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[
|
||||
{
|
||||
"description": "Pseudorandom test for CCMPE",
|
||||
"id": "ccmpe64",
|
||||
"format": "bin",
|
||||
"source": "ccmpe.asm",
|
||||
"option": "--bits 64 -w-ea-absolute -w-implicit-abs-deprecated -I./travis/insns/ccmpe/",
|
||||
"target": [
|
||||
{ "output": "ccmpe.bin64", "match": "ccmpe.bin64.t" }
|
||||
]
|
||||
}
|
||||
]
|
||||
6
travis/insns/ccmpe/ccmpe_narrow.asm
Normal file
6
travis/insns/ccmpe/ccmpe_narrow.asm
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
ccmpe 7, al, bl
|
||||
ccmpe 13, cl, al
|
||||
ccmpe 2, si, dx
|
||||
ccmpe 3, cx, dx
|
||||
ccmpe 12, eax, ecx
|
||||
ccmpe 2, edi, edi
|
||||
9
travis/insns/ccmpf/ccmpf.asm
Normal file
9
travis/insns/ccmpf/ccmpf.asm
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
default rel
|
||||
ccmpf 2, al, al
|
||||
ccmpf 7, byte [0x46d], cl
|
||||
ccmpf 10, word [0xff0], bx
|
||||
ccmpf 7, word [0xf74], ax
|
||||
ccmpf 4, edi, esi
|
||||
ccmpf 4, ecx, ebx
|
||||
ccmpf 3, rsi, rbp
|
||||
ccmpf 0, qword [0x4ee], rbx
|
||||
BIN
travis/insns/ccmpf/ccmpf.bin64.t
Normal file
BIN
travis/insns/ccmpf/ccmpf.bin64.t
Normal file
Binary file not shown.
12
travis/insns/ccmpf/ccmpf.json
Normal file
12
travis/insns/ccmpf/ccmpf.json
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[
|
||||
{
|
||||
"description": "Pseudorandom test for CCMPF",
|
||||
"id": "ccmpf64",
|
||||
"format": "bin",
|
||||
"source": "ccmpf.asm",
|
||||
"option": "--bits 64 -w-ea-absolute -w-implicit-abs-deprecated -I./travis/insns/ccmpf/",
|
||||
"target": [
|
||||
{ "output": "ccmpf.bin64", "match": "ccmpf.bin64.t" }
|
||||
]
|
||||
}
|
||||
]
|
||||
6
travis/insns/ccmpf/ccmpf_narrow.asm
Normal file
6
travis/insns/ccmpf/ccmpf_narrow.asm
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
ccmpf 2, al, al
|
||||
ccmpf 7, byte [0x46d], cl
|
||||
ccmpf 10, word [0xff0], bx
|
||||
ccmpf 7, word [0xf74], ax
|
||||
ccmpf 4, edi, esi
|
||||
ccmpf 4, ecx, ebx
|
||||
9
travis/insns/ccmpg/ccmpg.asm
Normal file
9
travis/insns/ccmpg/ccmpg.asm
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
default rel
|
||||
ccmpg 3, byte [0x4d4], bl
|
||||
ccmpg 6, al, dl
|
||||
ccmpg 0, word [0x421], dx
|
||||
ccmpg 15, word [0xbdb], dx
|
||||
ccmpg 13, dword [0x786], edx
|
||||
ccmpg 13, ebp, ecx
|
||||
ccmpg 1, rcx, rdi
|
||||
ccmpg 4, rdx, rbx
|
||||
BIN
travis/insns/ccmpg/ccmpg.bin64.t
Normal file
BIN
travis/insns/ccmpg/ccmpg.bin64.t
Normal file
Binary file not shown.
12
travis/insns/ccmpg/ccmpg.json
Normal file
12
travis/insns/ccmpg/ccmpg.json
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[
|
||||
{
|
||||
"description": "Pseudorandom test for CCMPG",
|
||||
"id": "ccmpg64",
|
||||
"format": "bin",
|
||||
"source": "ccmpg.asm",
|
||||
"option": "--bits 64 -w-ea-absolute -w-implicit-abs-deprecated -I./travis/insns/ccmpg/",
|
||||
"target": [
|
||||
{ "output": "ccmpg.bin64", "match": "ccmpg.bin64.t" }
|
||||
]
|
||||
}
|
||||
]
|
||||
6
travis/insns/ccmpg/ccmpg_narrow.asm
Normal file
6
travis/insns/ccmpg/ccmpg_narrow.asm
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
ccmpg 3, byte [0x4d4], bl
|
||||
ccmpg 6, al, dl
|
||||
ccmpg 0, word [0x421], dx
|
||||
ccmpg 15, word [0xbdb], dx
|
||||
ccmpg 13, dword [0x786], edx
|
||||
ccmpg 13, ebp, ecx
|
||||
9
travis/insns/ccmpge/ccmpge.asm
Normal file
9
travis/insns/ccmpge/ccmpge.asm
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
default rel
|
||||
ccmpge 7, bl, bl
|
||||
ccmpge 12, cl, cl
|
||||
ccmpge 4, bx, bx
|
||||
ccmpge 4, bp, bx
|
||||
ccmpge 2, edi, edx
|
||||
ccmpge 0, ebx, ebx
|
||||
ccmpge 10, rbx, rdx
|
||||
ccmpge 11, rdx, rdx
|
||||
1
travis/insns/ccmpge/ccmpge.bin64.t
Normal file
1
travis/insns/ccmpge/ccmpge.bin64.t
Normal file
|
|
@ -0,0 +1 @@
|
|||
bє<
8лbєd
8Щbє%
9лbє%
9нbє
9зbє
9лbєд
9гbєм
9в
|
||||
12
travis/insns/ccmpge/ccmpge.json
Normal file
12
travis/insns/ccmpge/ccmpge.json
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[
|
||||
{
|
||||
"description": "Pseudorandom test for CCMPGE",
|
||||
"id": "ccmpge64",
|
||||
"format": "bin",
|
||||
"source": "ccmpge.asm",
|
||||
"option": "--bits 64 -w-ea-absolute -w-implicit-abs-deprecated -I./travis/insns/ccmpge/",
|
||||
"target": [
|
||||
{ "output": "ccmpge.bin64", "match": "ccmpge.bin64.t" }
|
||||
]
|
||||
}
|
||||
]
|
||||
6
travis/insns/ccmpge/ccmpge_narrow.asm
Normal file
6
travis/insns/ccmpge/ccmpge_narrow.asm
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
ccmpge 7, bl, bl
|
||||
ccmpge 12, cl, cl
|
||||
ccmpge 4, bx, bx
|
||||
ccmpge 4, bp, bx
|
||||
ccmpge 2, edi, edx
|
||||
ccmpge 0, ebx, ebx
|
||||
9
travis/insns/ccmpl/ccmpl.asm
Normal file
9
travis/insns/ccmpl/ccmpl.asm
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
default rel
|
||||
ccmpl 8, dl, al
|
||||
ccmpl 5, dl, cl
|
||||
ccmpl 1, word [0xf8a], cx
|
||||
ccmpl 7, word [0x4d1], ax
|
||||
ccmpl 9, eax, esi
|
||||
ccmpl 15, ebx, eax
|
||||
ccmpl 15, qword [0x50c], rbx
|
||||
ccmpl 10, qword [0xabe], rsi
|
||||
BIN
travis/insns/ccmpl/ccmpl.bin64.t
Normal file
BIN
travis/insns/ccmpl/ccmpl.bin64.t
Normal file
Binary file not shown.
12
travis/insns/ccmpl/ccmpl.json
Normal file
12
travis/insns/ccmpl/ccmpl.json
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[
|
||||
{
|
||||
"description": "Pseudorandom test for CCMPL",
|
||||
"id": "ccmpl64",
|
||||
"format": "bin",
|
||||
"source": "ccmpl.asm",
|
||||
"option": "--bits 64 -w-ea-absolute -w-implicit-abs-deprecated -I./travis/insns/ccmpl/",
|
||||
"target": [
|
||||
{ "output": "ccmpl.bin64", "match": "ccmpl.bin64.t" }
|
||||
]
|
||||
}
|
||||
]
|
||||
6
travis/insns/ccmpl/ccmpl_narrow.asm
Normal file
6
travis/insns/ccmpl/ccmpl_narrow.asm
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
ccmpl 8, dl, al
|
||||
ccmpl 5, dl, cl
|
||||
ccmpl 1, word [0xf8a], cx
|
||||
ccmpl 7, word [0x4d1], ax
|
||||
ccmpl 9, eax, esi
|
||||
ccmpl 15, ebx, eax
|
||||
9
travis/insns/ccmple/ccmple.asm
Normal file
9
travis/insns/ccmple/ccmple.asm
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
default rel
|
||||
ccmple 4, bl, cl
|
||||
ccmple 3, cl, al
|
||||
ccmple 10, ax, di
|
||||
ccmple 0, word [0x69e], ax
|
||||
ccmple 12, ebp, esi
|
||||
ccmple 9, ecx, ecx
|
||||
ccmple 14, rdx, rbp
|
||||
ccmple 12, rbp, rcx
|
||||
BIN
travis/insns/ccmple/ccmple.bin64.t
Normal file
BIN
travis/insns/ccmple/ccmple.bin64.t
Normal file
Binary file not shown.
12
travis/insns/ccmple/ccmple.json
Normal file
12
travis/insns/ccmple/ccmple.json
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[
|
||||
{
|
||||
"description": "Pseudorandom test for CCMPLE",
|
||||
"id": "ccmple64",
|
||||
"format": "bin",
|
||||
"source": "ccmple.asm",
|
||||
"option": "--bits 64 -w-ea-absolute -w-implicit-abs-deprecated -I./travis/insns/ccmple/",
|
||||
"target": [
|
||||
{ "output": "ccmple.bin64", "match": "ccmple.bin64.t" }
|
||||
]
|
||||
}
|
||||
]
|
||||
6
travis/insns/ccmple/ccmple_narrow.asm
Normal file
6
travis/insns/ccmple/ccmple_narrow.asm
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
ccmple 4, bl, cl
|
||||
ccmple 3, cl, al
|
||||
ccmple 10, ax, di
|
||||
ccmple 0, word [0x69e], ax
|
||||
ccmple 12, ebp, esi
|
||||
ccmple 9, ecx, ecx
|
||||
9
travis/insns/ccmpna/ccmpna.asm
Normal file
9
travis/insns/ccmpna/ccmpna.asm
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
default rel
|
||||
ccmpna 7, byte [0xfa6], bl
|
||||
ccmpna 13, cl, bl
|
||||
ccmpna 15, cx, bp
|
||||
ccmpna 4, ax, bp
|
||||
ccmpna 10, edx, ebx
|
||||
ccmpna 2, ebp, ecx
|
||||
ccmpna 13, rbp, rsi
|
||||
ccmpna 12, rax, rsi
|
||||
BIN
travis/insns/ccmpna/ccmpna.bin64.t
Normal file
BIN
travis/insns/ccmpna/ccmpna.bin64.t
Normal file
Binary file not shown.
12
travis/insns/ccmpna/ccmpna.json
Normal file
12
travis/insns/ccmpna/ccmpna.json
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[
|
||||
{
|
||||
"description": "Pseudorandom test for CCMPNA",
|
||||
"id": "ccmpna64",
|
||||
"format": "bin",
|
||||
"source": "ccmpna.asm",
|
||||
"option": "--bits 64 -w-ea-absolute -w-implicit-abs-deprecated -I./travis/insns/ccmpna/",
|
||||
"target": [
|
||||
{ "output": "ccmpna.bin64", "match": "ccmpna.bin64.t" }
|
||||
]
|
||||
}
|
||||
]
|
||||
6
travis/insns/ccmpna/ccmpna_narrow.asm
Normal file
6
travis/insns/ccmpna/ccmpna_narrow.asm
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
ccmpna 7, byte [0xfa6], bl
|
||||
ccmpna 13, cl, bl
|
||||
ccmpna 15, cx, bp
|
||||
ccmpna 4, ax, bp
|
||||
ccmpna 10, edx, ebx
|
||||
ccmpna 2, ebp, ecx
|
||||
9
travis/insns/ccmpnae/ccmpnae.asm
Normal file
9
travis/insns/ccmpnae/ccmpnae.asm
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
default rel
|
||||
ccmpnae 15, byte [0xc08], dl
|
||||
ccmpnae 1, dl, bl
|
||||
ccmpnae 8, bx, dx
|
||||
ccmpnae 9, cx, cx
|
||||
ccmpnae 5, ecx, eax
|
||||
ccmpnae 3, dword [0x868], edi
|
||||
ccmpnae 14, rdx, rsi
|
||||
ccmpnae 15, rcx, rsi
|
||||
BIN
travis/insns/ccmpnae/ccmpnae.bin64.t
Normal file
BIN
travis/insns/ccmpnae/ccmpnae.bin64.t
Normal file
Binary file not shown.
12
travis/insns/ccmpnae/ccmpnae.json
Normal file
12
travis/insns/ccmpnae/ccmpnae.json
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[
|
||||
{
|
||||
"description": "Pseudorandom test for CCMPNAE",
|
||||
"id": "ccmpnae64",
|
||||
"format": "bin",
|
||||
"source": "ccmpnae.asm",
|
||||
"option": "--bits 64 -w-ea-absolute -w-implicit-abs-deprecated -I./travis/insns/ccmpnae/",
|
||||
"target": [
|
||||
{ "output": "ccmpnae.bin64", "match": "ccmpnae.bin64.t" }
|
||||
]
|
||||
}
|
||||
]
|
||||
6
travis/insns/ccmpnae/ccmpnae_narrow.asm
Normal file
6
travis/insns/ccmpnae/ccmpnae_narrow.asm
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
ccmpnae 15, byte [0xc08], dl
|
||||
ccmpnae 1, dl, bl
|
||||
ccmpnae 8, bx, dx
|
||||
ccmpnae 9, cx, cx
|
||||
ccmpnae 5, ecx, eax
|
||||
ccmpnae 3, dword [0x868], edi
|
||||
9
travis/insns/ccmpnb/ccmpnb.asm
Normal file
9
travis/insns/ccmpnb/ccmpnb.asm
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
default rel
|
||||
ccmpnb 2, byte [0x683], cl
|
||||
ccmpnb 2, bl, cl
|
||||
ccmpnb 4, bx, ax
|
||||
ccmpnb 10, dx, di
|
||||
ccmpnb 8, edx, ecx
|
||||
ccmpnb 0, ecx, edi
|
||||
ccmpnb 2, rdx, rbp
|
||||
ccmpnb 8, rcx, rbp
|
||||
BIN
travis/insns/ccmpnb/ccmpnb.bin64.t
Normal file
BIN
travis/insns/ccmpnb/ccmpnb.bin64.t
Normal file
Binary file not shown.
12
travis/insns/ccmpnb/ccmpnb.json
Normal file
12
travis/insns/ccmpnb/ccmpnb.json
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[
|
||||
{
|
||||
"description": "Pseudorandom test for CCMPNB",
|
||||
"id": "ccmpnb64",
|
||||
"format": "bin",
|
||||
"source": "ccmpnb.asm",
|
||||
"option": "--bits 64 -w-ea-absolute -w-implicit-abs-deprecated -I./travis/insns/ccmpnb/",
|
||||
"target": [
|
||||
{ "output": "ccmpnb.bin64", "match": "ccmpnb.bin64.t" }
|
||||
]
|
||||
}
|
||||
]
|
||||
6
travis/insns/ccmpnb/ccmpnb_narrow.asm
Normal file
6
travis/insns/ccmpnb/ccmpnb_narrow.asm
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
ccmpnb 2, byte [0x683], cl
|
||||
ccmpnb 2, bl, cl
|
||||
ccmpnb 4, bx, ax
|
||||
ccmpnb 10, dx, di
|
||||
ccmpnb 8, edx, ecx
|
||||
ccmpnb 0, ecx, edi
|
||||
9
travis/insns/ccmpnbe/ccmpnbe.asm
Normal file
9
travis/insns/ccmpnbe/ccmpnbe.asm
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
default rel
|
||||
ccmpnbe 10, al, al
|
||||
ccmpnbe 0, bl, cl
|
||||
ccmpnbe 7, word [0xb0f], di
|
||||
ccmpnbe 9, bx, di
|
||||
ccmpnbe 7, ebx, ecx
|
||||
ccmpnbe 9, dword [0x645], eax
|
||||
ccmpnbe 9, rcx, rbp
|
||||
ccmpnbe 5, rdi, rdi
|
||||
BIN
travis/insns/ccmpnbe/ccmpnbe.bin64.t
Normal file
BIN
travis/insns/ccmpnbe/ccmpnbe.bin64.t
Normal file
Binary file not shown.
12
travis/insns/ccmpnbe/ccmpnbe.json
Normal file
12
travis/insns/ccmpnbe/ccmpnbe.json
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[
|
||||
{
|
||||
"description": "Pseudorandom test for CCMPNBE",
|
||||
"id": "ccmpnbe64",
|
||||
"format": "bin",
|
||||
"source": "ccmpnbe.asm",
|
||||
"option": "--bits 64 -w-ea-absolute -w-implicit-abs-deprecated -I./travis/insns/ccmpnbe/",
|
||||
"target": [
|
||||
{ "output": "ccmpnbe.bin64", "match": "ccmpnbe.bin64.t" }
|
||||
]
|
||||
}
|
||||
]
|
||||
6
travis/insns/ccmpnbe/ccmpnbe_narrow.asm
Normal file
6
travis/insns/ccmpnbe/ccmpnbe_narrow.asm
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
ccmpnbe 10, al, al
|
||||
ccmpnbe 0, bl, cl
|
||||
ccmpnbe 7, word [0xb0f], di
|
||||
ccmpnbe 9, bx, di
|
||||
ccmpnbe 7, ebx, ecx
|
||||
ccmpnbe 9, dword [0x645], eax
|
||||
9
travis/insns/ccmpnc/ccmpnc.asm
Normal file
9
travis/insns/ccmpnc/ccmpnc.asm
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
default rel
|
||||
ccmpnc 4, al, cl
|
||||
ccmpnc 0, bl, cl
|
||||
ccmpnc 11, word [0xf2c], bx
|
||||
ccmpnc 4, bp, cx
|
||||
ccmpnc 9, ebx, esi
|
||||
ccmpnc 2, dword [0x6f7], ecx
|
||||
ccmpnc 13, qword [0xa10], rdx
|
||||
ccmpnc 4, rdx, rsi
|
||||
BIN
travis/insns/ccmpnc/ccmpnc.bin64.t
Normal file
BIN
travis/insns/ccmpnc/ccmpnc.bin64.t
Normal file
Binary file not shown.
12
travis/insns/ccmpnc/ccmpnc.json
Normal file
12
travis/insns/ccmpnc/ccmpnc.json
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[
|
||||
{
|
||||
"description": "Pseudorandom test for CCMPNC",
|
||||
"id": "ccmpnc64",
|
||||
"format": "bin",
|
||||
"source": "ccmpnc.asm",
|
||||
"option": "--bits 64 -w-ea-absolute -w-implicit-abs-deprecated -I./travis/insns/ccmpnc/",
|
||||
"target": [
|
||||
{ "output": "ccmpnc.bin64", "match": "ccmpnc.bin64.t" }
|
||||
]
|
||||
}
|
||||
]
|
||||
6
travis/insns/ccmpnc/ccmpnc_narrow.asm
Normal file
6
travis/insns/ccmpnc/ccmpnc_narrow.asm
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
ccmpnc 4, al, cl
|
||||
ccmpnc 0, bl, cl
|
||||
ccmpnc 11, word [0xf2c], bx
|
||||
ccmpnc 4, bp, cx
|
||||
ccmpnc 9, ebx, esi
|
||||
ccmpnc 2, dword [0x6f7], ecx
|
||||
9
travis/insns/ccmpne/ccmpne.asm
Normal file
9
travis/insns/ccmpne/ccmpne.asm
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
default rel
|
||||
ccmpne 9, byte [0x206], bl
|
||||
ccmpne 14, cl, dl
|
||||
ccmpne 5, word [0xfe2], bx
|
||||
ccmpne 0, bp, di
|
||||
ccmpne 4, dword [0xe30], esi
|
||||
ccmpne 15, ebp, esi
|
||||
ccmpne 13, qword [0x1a7], rcx
|
||||
ccmpne 8, rsi, rbp
|
||||
BIN
travis/insns/ccmpne/ccmpne.bin64.t
Normal file
BIN
travis/insns/ccmpne/ccmpne.bin64.t
Normal file
Binary file not shown.
12
travis/insns/ccmpne/ccmpne.json
Normal file
12
travis/insns/ccmpne/ccmpne.json
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[
|
||||
{
|
||||
"description": "Pseudorandom test for CCMPNE",
|
||||
"id": "ccmpne64",
|
||||
"format": "bin",
|
||||
"source": "ccmpne.asm",
|
||||
"option": "--bits 64 -w-ea-absolute -w-implicit-abs-deprecated -I./travis/insns/ccmpne/",
|
||||
"target": [
|
||||
{ "output": "ccmpne.bin64", "match": "ccmpne.bin64.t" }
|
||||
]
|
||||
}
|
||||
]
|
||||
6
travis/insns/ccmpne/ccmpne_narrow.asm
Normal file
6
travis/insns/ccmpne/ccmpne_narrow.asm
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
ccmpne 9, byte [0x206], bl
|
||||
ccmpne 14, cl, dl
|
||||
ccmpne 5, word [0xfe2], bx
|
||||
ccmpne 0, bp, di
|
||||
ccmpne 4, dword [0xe30], esi
|
||||
ccmpne 15, ebp, esi
|
||||
9
travis/insns/ccmpng/ccmpng.asm
Normal file
9
travis/insns/ccmpng/ccmpng.asm
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
default rel
|
||||
ccmpng 14, cl, bl
|
||||
ccmpng 6, dl, cl
|
||||
ccmpng 13, bx, bp
|
||||
ccmpng 5, word [0xc46], si
|
||||
ccmpng 3, eax, ebx
|
||||
ccmpng 15, dword [0xbc9], edx
|
||||
ccmpng 8, rdi, rdx
|
||||
ccmpng 2, rax, rbx
|
||||
BIN
travis/insns/ccmpng/ccmpng.bin64.t
Normal file
BIN
travis/insns/ccmpng/ccmpng.bin64.t
Normal file
Binary file not shown.
12
travis/insns/ccmpng/ccmpng.json
Normal file
12
travis/insns/ccmpng/ccmpng.json
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[
|
||||
{
|
||||
"description": "Pseudorandom test for CCMPNG",
|
||||
"id": "ccmpng64",
|
||||
"format": "bin",
|
||||
"source": "ccmpng.asm",
|
||||
"option": "--bits 64 -w-ea-absolute -w-implicit-abs-deprecated -I./travis/insns/ccmpng/",
|
||||
"target": [
|
||||
{ "output": "ccmpng.bin64", "match": "ccmpng.bin64.t" }
|
||||
]
|
||||
}
|
||||
]
|
||||
6
travis/insns/ccmpng/ccmpng_narrow.asm
Normal file
6
travis/insns/ccmpng/ccmpng_narrow.asm
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
ccmpng 14, cl, bl
|
||||
ccmpng 6, dl, cl
|
||||
ccmpng 13, bx, bp
|
||||
ccmpng 5, word [0xc46], si
|
||||
ccmpng 3, eax, ebx
|
||||
ccmpng 15, dword [0xbc9], edx
|
||||
9
travis/insns/ccmpnge/ccmpnge.asm
Normal file
9
travis/insns/ccmpnge/ccmpnge.asm
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
default rel
|
||||
ccmpnge 6, cl, bl
|
||||
ccmpnge 15, byte [0x9ed], cl
|
||||
ccmpnge 15, si, bx
|
||||
ccmpnge 8, ax, cx
|
||||
ccmpnge 8, dword [0xe6c], ebp
|
||||
ccmpnge 14, dword [0x4ae], ebp
|
||||
ccmpnge 2, rbx, rdi
|
||||
ccmpnge 11, rdx, rbp
|
||||
BIN
travis/insns/ccmpnge/ccmpnge.bin64.t
Normal file
BIN
travis/insns/ccmpnge/ccmpnge.bin64.t
Normal file
Binary file not shown.
12
travis/insns/ccmpnge/ccmpnge.json
Normal file
12
travis/insns/ccmpnge/ccmpnge.json
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[
|
||||
{
|
||||
"description": "Pseudorandom test for CCMPNGE",
|
||||
"id": "ccmpnge64",
|
||||
"format": "bin",
|
||||
"source": "ccmpnge.asm",
|
||||
"option": "--bits 64 -w-ea-absolute -w-implicit-abs-deprecated -I./travis/insns/ccmpnge/",
|
||||
"target": [
|
||||
{ "output": "ccmpnge.bin64", "match": "ccmpnge.bin64.t" }
|
||||
]
|
||||
}
|
||||
]
|
||||
6
travis/insns/ccmpnge/ccmpnge_narrow.asm
Normal file
6
travis/insns/ccmpnge/ccmpnge_narrow.asm
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
ccmpnge 6, cl, bl
|
||||
ccmpnge 15, byte [0x9ed], cl
|
||||
ccmpnge 15, si, bx
|
||||
ccmpnge 8, ax, cx
|
||||
ccmpnge 8, dword [0xe6c], ebp
|
||||
ccmpnge 14, dword [0x4ae], ebp
|
||||
9
travis/insns/ccmpnl/ccmpnl.asm
Normal file
9
travis/insns/ccmpnl/ccmpnl.asm
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
default rel
|
||||
ccmpnl 11, bl, al
|
||||
ccmpnl 7, byte [0xae7], bl
|
||||
ccmpnl 13, bx, si
|
||||
ccmpnl 2, word [0xd24], bp
|
||||
ccmpnl 13, dword [0x8ce], edi
|
||||
ccmpnl 14, dword [0x99f], ebp
|
||||
ccmpnl 2, rdi, rbx
|
||||
ccmpnl 1, rbx, rsi
|
||||
BIN
travis/insns/ccmpnl/ccmpnl.bin64.t
Normal file
BIN
travis/insns/ccmpnl/ccmpnl.bin64.t
Normal file
Binary file not shown.
12
travis/insns/ccmpnl/ccmpnl.json
Normal file
12
travis/insns/ccmpnl/ccmpnl.json
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[
|
||||
{
|
||||
"description": "Pseudorandom test for CCMPNL",
|
||||
"id": "ccmpnl64",
|
||||
"format": "bin",
|
||||
"source": "ccmpnl.asm",
|
||||
"option": "--bits 64 -w-ea-absolute -w-implicit-abs-deprecated -I./travis/insns/ccmpnl/",
|
||||
"target": [
|
||||
{ "output": "ccmpnl.bin64", "match": "ccmpnl.bin64.t" }
|
||||
]
|
||||
}
|
||||
]
|
||||
6
travis/insns/ccmpnl/ccmpnl_narrow.asm
Normal file
6
travis/insns/ccmpnl/ccmpnl_narrow.asm
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
ccmpnl 11, bl, al
|
||||
ccmpnl 7, byte [0xae7], bl
|
||||
ccmpnl 13, bx, si
|
||||
ccmpnl 2, word [0xd24], bp
|
||||
ccmpnl 13, dword [0x8ce], edi
|
||||
ccmpnl 14, dword [0x99f], ebp
|
||||
9
travis/insns/ccmpnle/ccmpnle.asm
Normal file
9
travis/insns/ccmpnle/ccmpnle.asm
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
default rel
|
||||
ccmpnle 2, byte [0x810], cl
|
||||
ccmpnle 7, byte [0xf3a], al
|
||||
ccmpnle 13, cx, bp
|
||||
ccmpnle 9, word [0x9b9], dx
|
||||
ccmpnle 4, eax, esi
|
||||
ccmpnle 5, dword [0xbf9], eax
|
||||
ccmpnle 9, qword [0x337], rdx
|
||||
ccmpnle 9, rax, rdx
|
||||
BIN
travis/insns/ccmpnle/ccmpnle.bin64.t
Normal file
BIN
travis/insns/ccmpnle/ccmpnle.bin64.t
Normal file
Binary file not shown.
12
travis/insns/ccmpnle/ccmpnle.json
Normal file
12
travis/insns/ccmpnle/ccmpnle.json
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[
|
||||
{
|
||||
"description": "Pseudorandom test for CCMPNLE",
|
||||
"id": "ccmpnle64",
|
||||
"format": "bin",
|
||||
"source": "ccmpnle.asm",
|
||||
"option": "--bits 64 -w-ea-absolute -w-implicit-abs-deprecated -I./travis/insns/ccmpnle/",
|
||||
"target": [
|
||||
{ "output": "ccmpnle.bin64", "match": "ccmpnle.bin64.t" }
|
||||
]
|
||||
}
|
||||
]
|
||||
6
travis/insns/ccmpnle/ccmpnle_narrow.asm
Normal file
6
travis/insns/ccmpnle/ccmpnle_narrow.asm
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
ccmpnle 2, byte [0x810], cl
|
||||
ccmpnle 7, byte [0xf3a], al
|
||||
ccmpnle 13, cx, bp
|
||||
ccmpnle 9, word [0x9b9], dx
|
||||
ccmpnle 4, eax, esi
|
||||
ccmpnle 5, dword [0xbf9], eax
|
||||
9
travis/insns/ccmpno/ccmpno.asm
Normal file
9
travis/insns/ccmpno/ccmpno.asm
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
default rel
|
||||
ccmpno 0, dl, dl
|
||||
ccmpno 14, bl, bl
|
||||
ccmpno 12, word [0x212], bx
|
||||
ccmpno 0, ax, bx
|
||||
ccmpno 3, ebp, eax
|
||||
ccmpno 12, ebx, edi
|
||||
ccmpno 8, qword [0xf51], rbp
|
||||
ccmpno 4, rcx, rcx
|
||||
BIN
travis/insns/ccmpno/ccmpno.bin64.t
Normal file
BIN
travis/insns/ccmpno/ccmpno.bin64.t
Normal file
Binary file not shown.
12
travis/insns/ccmpno/ccmpno.json
Normal file
12
travis/insns/ccmpno/ccmpno.json
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[
|
||||
{
|
||||
"description": "Pseudorandom test for CCMPNO",
|
||||
"id": "ccmpno64",
|
||||
"format": "bin",
|
||||
"source": "ccmpno.asm",
|
||||
"option": "--bits 64 -w-ea-absolute -w-implicit-abs-deprecated -I./travis/insns/ccmpno/",
|
||||
"target": [
|
||||
{ "output": "ccmpno.bin64", "match": "ccmpno.bin64.t" }
|
||||
]
|
||||
}
|
||||
]
|
||||
6
travis/insns/ccmpno/ccmpno_narrow.asm
Normal file
6
travis/insns/ccmpno/ccmpno_narrow.asm
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
ccmpno 0, dl, dl
|
||||
ccmpno 14, bl, bl
|
||||
ccmpno 12, word [0x212], bx
|
||||
ccmpno 0, ax, bx
|
||||
ccmpno 3, ebp, eax
|
||||
ccmpno 12, ebx, edi
|
||||
9
travis/insns/ccmpns/ccmpns.asm
Normal file
9
travis/insns/ccmpns/ccmpns.asm
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
default rel
|
||||
ccmpns 11, byte [0x13f], al
|
||||
ccmpns 0, cl, al
|
||||
ccmpns 13, word [0x612], si
|
||||
ccmpns 1, bx, dx
|
||||
ccmpns 12, ebx, ecx
|
||||
ccmpns 2, ecx, edx
|
||||
ccmpns 6, qword [0xa3e], rsi
|
||||
ccmpns 1, qword [0xabb], rbp
|
||||
BIN
travis/insns/ccmpns/ccmpns.bin64.t
Normal file
BIN
travis/insns/ccmpns/ccmpns.bin64.t
Normal file
Binary file not shown.
12
travis/insns/ccmpns/ccmpns.json
Normal file
12
travis/insns/ccmpns/ccmpns.json
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[
|
||||
{
|
||||
"description": "Pseudorandom test for CCMPNS",
|
||||
"id": "ccmpns64",
|
||||
"format": "bin",
|
||||
"source": "ccmpns.asm",
|
||||
"option": "--bits 64 -w-ea-absolute -w-implicit-abs-deprecated -I./travis/insns/ccmpns/",
|
||||
"target": [
|
||||
{ "output": "ccmpns.bin64", "match": "ccmpns.bin64.t" }
|
||||
]
|
||||
}
|
||||
]
|
||||
6
travis/insns/ccmpns/ccmpns_narrow.asm
Normal file
6
travis/insns/ccmpns/ccmpns_narrow.asm
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
ccmpns 11, byte [0x13f], al
|
||||
ccmpns 0, cl, al
|
||||
ccmpns 13, word [0x612], si
|
||||
ccmpns 1, bx, dx
|
||||
ccmpns 12, ebx, ecx
|
||||
ccmpns 2, ecx, edx
|
||||
9
travis/insns/ccmpnz/ccmpnz.asm
Normal file
9
travis/insns/ccmpnz/ccmpnz.asm
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
default rel
|
||||
ccmpnz 9, byte [0x4f5], dl
|
||||
ccmpnz 4, byte [0xe75], cl
|
||||
ccmpnz 11, ax, bx
|
||||
ccmpnz 12, bp, dx
|
||||
ccmpnz 9, esi, edi
|
||||
ccmpnz 5, ebp, ebx
|
||||
ccmpnz 3, rdi, rbx
|
||||
ccmpnz 14, rsi, rax
|
||||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue