From ee463214ae3631b697ced1a69952300db3e1b70e Mon Sep 17 00:00:00 2001 From: Benjamin Maurer <maurer.benjamin@gmail.com> Date: Sun, 5 Jun 2022 18:06:28 +0200 Subject: [PATCH] Changed real/mkhprog to read from stdin instead of args, bc. program invocation on shake based nofib-run was broken. Also added a few arguments to input to make single iteration longer and adjusted iteration counts to get desired execution times. --- real/mkhprog/Main.lhs | 4 ++-- real/mkhprog/Makefile | 12 +++-------- real/mkhprog/mkhprog.stdin | 41 ++++++++++++++++++++++++++++++++++++++ 3 files changed, 46 insertions(+), 11 deletions(-) create mode 100644 real/mkhprog/mkhprog.stdin diff --git a/real/mkhprog/Main.lhs b/real/mkhprog/Main.lhs index 60655f63..d22b37a0 100644 --- a/real/mkhprog/Main.lhs +++ b/real/mkhprog/Main.lhs @@ -275,9 +275,9 @@ environment). > main :: IO () > main = do > (n:_) <- getArgs +> input <- unlines <$> words <$> getContents > replicateM_ (read n) $ do -> (_:argv) <- getArgs -> parse_args defaultEnv (unlines argv) +> parse_args defaultEnv input \end{haskell} diff --git a/real/mkhprog/Makefile b/real/mkhprog/Makefile index 6e51d8f1..e7a14119 100644 --- a/real/mkhprog/Makefile +++ b/real/mkhprog/Makefile @@ -3,12 +3,6 @@ include $(TOP)/mk/boilerplate.mk include $(TOP)/mk/target.mk -ARGS = -a Int -b Float -c Foo -d Bar -e Double \ - -f String -g String -h Int -j Double -k Bool -n Basil -p Knob -q Wizzle \ - -r Wissle -s Wibble -u Widdle -A Int -B Float -C Foo -D Bar -E Double \ - -F String -G String -H Int -I Float -J Double -K Bool -L Bool -M Buzzle \ - -N Basil -P Knob -Q Wizzle -R Wissle -S Wibble -T Widdle - -FAST_OPTS = 200 $(ARGS) -NORM_OPTS = 2000 $(ARGS) -SLOW_OPTS = 10000 $(ARGS) +FAST_OPTS = 350 +NORM_OPTS = 3800 +SLOW_OPTS = 18000 diff --git a/real/mkhprog/mkhprog.stdin b/real/mkhprog/mkhprog.stdin new file mode 100644 index 00000000..2de03d97 --- /dev/null +++ b/real/mkhprog/mkhprog.stdin @@ -0,0 +1,41 @@ +-a Int +-b Float +-c Foo +-d Bar +-e Double +-f String +-g String +-h Int +-i Double +-j Double +-k Bool +-l Int +-m Foo +-n Basil +-o Float +-p Knob +-q Wizzle +-r Wissle +-s Wibble +-t Foobar +-u Widdle +-A Int +-B Float +-C Foo +-D Bar +-E Double +-F String +-G String +-H Int +-I Float +-J Double +-K Bool +-L Bool +-M Buzzle +-N Basil +-P Knob +-Q Wizzle +-R Wissle +-S Wibble +-T Widdle +-X Int -- GitLab