sub main'asm_init
{
- ($type,$fn)=@_;
+ ($type,$fn,$i386)=@_;
$filename=$fn;
- $cpp=$sol=$aout=$win32=0;
+ $cpp=$sol=$aout=$win32=$gaswin=0;
if ( ($type eq "elf"))
{ require "x86unix.pl"; }
elsif ( ($type eq "a.out"))
{ $aout=1; require "x86unix.pl"; }
+ elsif ( ($type eq "gaswin"))
+ { $gaswin=1; $aout=1; require "x86unix.pl"; }
elsif ( ($type eq "sol"))
{ $sol=1; require "x86unix.pl"; }
elsif ( ($type eq "cpp"))
{ $cpp=1; require "x86unix.pl"; }
elsif ( ($type eq "win32"))
{ $win32=1; require "x86ms.pl"; }
+ elsif ( ($type eq "win32n"))
+ { $win32=1; require "x86nasm.pl"; }
else
{
print STDERR <<"EOF";
sol - x86 solaris
cpp - format so x86unix.cpp can be used
win32 - Windows 95/Windows NT
+ win32n - Windows 95/Windows NT NASM format
EOF
exit(1);
}
&comment("Don't even think of reading this code");
&comment("It was automatically generated by $filename");
&comment("Which is a perl program used to generate the x86 assember for");
-&comment("any of elf, a.out, BSDI,Win32, or Solaris");
+&comment("any of elf, a.out, BSDI, Win32, gaswin (for GNU as on Win32) or Solaris");
&comment("eric <eay\@cryptsoft.com>");
&comment("");
#define TYPE(a,b) .type a,b
#define SIZE(a,b) .size a,b
-#if defined(OUT) || defined(BSDI)
+#if defined(OUT) || (defined(BSDI) && !defined(ELF))
$tmp
#endif
#define ALIGN 4
#endif
-#ifdef BSDI
+#if defined(BSDI) && !defined(ELF)
#define OK 1
#define ALIGN 4
#undef SIZE