################################################################
my $arch = sub {
if ($flavour =~ /linux/) { ".arch\t".join(',',@_); }
+ elsif ($flavour =~ /win64/) { ".arch\t".join(',',@_); }
else { ""; }
};
my $fpu = sub {
};
my $hidden = sub {
if ($flavour =~ /ios/) { ".private_extern\t".join(',',@_); }
+ elsif ($flavour =~ /win64/) { ""; }
else { ".hidden\t".join(',',@_); }
};
my $comm = sub {
"#endif";
}
}
+ elsif ($flavour =~ /win64/) { if (join(',',@_) =~ /(\w+),%function/) {
+ # See https://sourceware.org/binutils/docs/as/Pseudo-Ops.html
+ # Per https://docs.microsoft.com/en-us/windows/win32/debug/pe-format#coff-symbol-table,
+ # the type for functions is 0x20, or 32.
+ ".def $1\n".
+ " .type 32\n".
+ ".endef";
+ }
+ }
else { ""; }
};
my $size = sub {