summaryrefslogtreecommitdiff
path: root/insns.pl
diff options
context:
space:
mode:
authorH. Peter Anvin <hpa@zytor.com>2013-11-24 11:13:10 -0800
committerH. Peter Anvin <hpa@zytor.com>2013-11-24 11:13:10 -0800
commit45a22d9a6147c320b6754679de54a8290de3c5e3 (patch)
treeba4fe7f527010f2b6d76895a3bce0715bde224f5 /insns.pl
parent015774dc3fee2aa1a96718e5097fb8045ef020a3 (diff)
downloadnasm-45a22d9a6147c320b6754679de54a8290de3c5e3.tar.gz
nasm-45a22d9a6147c320b6754679de54a8290de3c5e3.tar.bz2
nasm-45a22d9a6147c320b6754679de54a8290de3c5e3.zip
iflag: Fix dependencies, factor out static components of iflag.h
Multi-dependencies don't work as expected, especially not across Make versions, this is why we don't use them and read the instructions list multiple times. iflag.h has a lot of static content, so factor out the static content. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Diffstat (limited to 'insns.pl')
-rwxr-xr-xinsns.pl10
1 files changed, 7 insertions, 3 deletions
diff --git a/insns.pl b/insns.pl
index c9d7b7f..8515c02 100755
--- a/insns.pl
+++ b/insns.pl
@@ -69,7 +69,7 @@ print STDERR "Reading insns.dat...\n";
undef $output;
foreach $arg ( @ARGV ) {
if ( $arg =~ /^\-/ ) {
- if ( $arg =~ /^\-([abdint])$/ ) {
+ if ( $arg =~ /^\-([abdin]|f[hc])$/ ) {
$output = $1;
} else {
die "$0: Unknown option: ${arg}\n";
@@ -395,8 +395,12 @@ if ( !defined($output) || $output eq 'n' ) {
close N;
}
-if ( !defined($output) || $output eq 't') {
- write_iflags();
+if ( !defined($output) || $output eq 'fh') {
+ write_iflaggen_h();
+}
+
+if ( !defined($output) || $output eq 'fc') {
+ write_iflag_c();
}
printf STDERR "Done: %d instructions\n", $insns;