X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Fdriver%2Ftest_mangler;fp=ghc%2Fdriver%2Ftest_mangler;h=5cfe057770bcccd773b60a87275aed1524fa13c5;hb=e7d21ee4f8ac907665a7e170c71d59e13a01da09;hp=0000000000000000000000000000000000000000;hpb=e48474bff05e6cfb506660420f025f694c870d38;p=ghc-hetmet.git diff --git a/ghc/driver/test_mangler b/ghc/driver/test_mangler new file mode 100644 index 0000000..5cfe057 --- /dev/null +++ b/ghc/driver/test_mangler @@ -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 () { + print STDOUT $_; +} +close(INP) || die "Can't close tmp file 2"; + +unlink("/tmp/mangle1.$$", "/tmp/mangle2.$$"); +exit(0);