summaryrefslogtreecommitdiff
path: root/insns.pl
diff options
context:
space:
mode:
authorH. Peter Anvin <hpa@zytor.com>2008-10-08 21:17:32 -0700
committerH. Peter Anvin <hpa@zytor.com>2008-10-08 21:17:32 -0700
commitff6e12da50733794235bf830add135e50b88f999 (patch)
tree7d281442f04cea0e2de6a61f45cf06a0d143fb71 /insns.pl
parenta5c31197f5eca5c5b5675fea0c6596a26976238e (diff)
downloadnasm-ff6e12da50733794235bf830add135e50b88f999.tar.gz
Reshuffle and move the bytecodes for segment register push/pop
Reshuffle the bytecodes for segment register push/pop to make more sense, and move them from \4 to \344, thus freeing up the single-digit bytecodes \4..\7 for future use. It doesn't really make sense to use single-digit bytecodes for this very oddball use. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Diffstat (limited to 'insns.pl')
-rwxr-xr-xinsns.pl16
1 files changed, 8 insertions, 8 deletions
diff --git a/insns.pl b/insns.pl
index 66309f07..b74017b2 100755
--- a/insns.pl
+++ b/insns.pl
@@ -504,14 +504,6 @@ sub startseq($) {
}
unshift(@codes, $c0);
- } elsif ($c0 == 04) {
- return addprefix($prefix, 0x07, 0x17, 0x1F);
- } elsif ($c0 == 05) {
- return addprefix($prefix, 0xA1, 0xA9);
- } elsif ($c0 == 06) {
- return addprefix($prefix, 0x06, 0x0E, 0x16, 0x1E);
- } elsif ($c0 == 07) {
- return addprefix($prefix, 0xA0, 0xA8);
} elsif ($c0 >= 010 && $c0 <= 013) {
return addprefix($prefix, $c1..($c1+7));
} elsif (($c0 & ~013) == 0144) {
@@ -520,6 +512,14 @@ sub startseq($) {
return addprefix($prefix, $c1..($c1+15));
} elsif ($c0 == 0 || $c0 == 0340) {
return $prefix;
+ } elsif ($c0 == 0344) {
+ return addprefix($prefix, 0x06, 0x0E, 0x16, 0x1E);
+ } elsif ($c0 == 0345) {
+ return addprefix($prefix, 0x07, 0x17, 0x1F);
+ } elsif ($c0 == 0346) {
+ return addprefix($prefix, 0xA0, 0xA8);
+ } elsif ($c0 == 0347) {
+ return addprefix($prefix, 0xA1, 0xA9);
} elsif (($c0 & ~3) == 0260 || $c0 == 0270) {
my $m,$wlp,$vxp;
$m = shift(@codes);