[runtime] Avoid indirection when building MonoContext on darwin
[mono.git] / mono / mini / genmdesc.pl
old mode 100644 (file)
new mode 100755 (executable)
index bc4e34e..ae49ecb
@@ -20,7 +20,7 @@ sub INST_MAX   () {return 6;}
 
 # this must include all the #defines used in mini-ops.h
 my @defines = qw (__i386__ __x86_64__ __ppc__ __powerpc__ __ppc64__ __arm__ 
-       __sparc__ sparc __s390__ s390 __ia64__ __alpha__ __mips__ __aarch64__);
+       __sparc__ sparc __s390__ s390 __alpha__ __mips__ __aarch64__ __wasm__);
 my %table =();
 my %template_table =();
 my @opcodes = ();
@@ -88,7 +88,9 @@ sub load_opcodes
        if ($arch =~ "__aarch64__") {
                $arch_define = "TARGET_ARM64";
        }
-
+       if ($arch =~ "__wasm__") {
+               $arch_define = "TARGET_WASM";
+       }
        parse_file ($arch_define, "$srcdir/mini-ops.h");
        return;
        $cpp .= " -D$arch_define $srcdir/mini-ops.h|";
@@ -108,7 +110,6 @@ sub load_file {
        my ($name) = @_;
        my $line = 0;
        my $comment = "";
-       our @spec_names;
 
        open (DESC, $name) || die "Cannot open $name: $!";
        while (<DESC>) {
@@ -150,7 +151,6 @@ sub load_file {
                                        die "Invalid template name $2 at line $line\n" unless defined $tdesc;
                                        $desc->{"spec"} = {%{$tdesc->{"spec"}}};
                                } else {
-                                       die "Invalid specifier $val at line $line" unless grep {$_ eq $1} @spec_names;
                                        $desc->{"spec"}->{$1} = $2;
                                }
                        }