[project @ 1996-01-08 20:28:12 by partain]
[ghc-hetmet.git] / ghc / driver / test_mangler
diff --git a/ghc/driver/test_mangler b/ghc/driver/test_mangler
new file mode 100644 (file)
index 0000000..5cfe057
--- /dev/null
@@ -0,0 +1,27 @@
+#! /usr/local/bin/perl
+# a simple wrapper to test a .s-file mangler
+# reads stdin, writes stdout
+
+$which = $ARGV[0]; shift; # nice error checking, Will
+
+require("ghc-asm-$which.prl") || die "require mangler failed!\n";
+
+$SpX86Mangling = 1;
+$StolenX86Regs = 5;
+
+open(INP, "> /tmp/mangle1.$$") || die "Can't open tmp file 1\n";
+while (<>) {
+    print INP $_;
+}
+close(INP) || die "Can't close tmp file 1";
+
+&mangle_asm("/tmp/mangle1.$$", "/tmp/mangle2.$$");
+
+open(INP, "< /tmp/mangle2.$$") || die "Can't open tmp file 2\n";
+while (<INP>) {
+    print STDOUT $_;
+}
+close(INP) || die "Can't close tmp file 2";
+
+unlink("/tmp/mangle1.$$", "/tmp/mangle2.$$");
+exit(0);