Skip to content

Commit

Permalink
was not ignoring tyco arguments when determing argument strictness
Browse files Browse the repository at this point in the history
  • Loading branch information
Nicolas Frisby committed Mar 24, 2013
1 parent fc34e65 commit c445412
Showing 1 changed file with 4 additions and 2 deletions.
6 changes: 4 additions & 2 deletions compiler/simplCore/SetLevels.lhs
Expand Up @@ -1967,7 +1967,9 @@ analyzeFVsM env app@(App fun arg) = do
Nothing -> computeArgumentDemands app
Just dmds -> dmds
let (argIsStrictlyDemanded, dmds') = case argDmds of
let (argIsStrictlyDemanded, dmds')
| isTyCoArg arg = (False, argDmds)
| otherwise = case argDmds of
[] -> (False, []) -- for some reason, we couldn't determine
-- argument strictness for this application
isStrDmd : dmds -> (isStrDmd, dmds)
Expand All @@ -1985,7 +1987,7 @@ analyzeFVsM env app@(App fun arg) = do
x <- gensymFVM
arg2 <- return $
let arg_fvis = fvisOf arg2
new_arg_fvis = if argIsAClosure
new_arg_fvis = if fve_isFinal env && argIsAClosure
then closureBindingFVIs x env Nothing arg_fvis
else arg_fvis
in (new_arg_fvis, snd arg2)
Expand Down

0 comments on commit c445412

Please sign in to comment.