isSSA :: Expression -> [Binding]
isSSA e = [b | (b, count) <- HM.toList counts, count > 1]
  where
    counts = HM.fromListWith (+) [(b, 1 :: Word) | b <- definedBindings e]
isSSA :: Expression -> [Binding]
isSSA e = [b | (b, count) <- HM.toList counts, count > 1]
  where
    counts = HM.fromListWith (+) [(b, 1 :: Word) | b <- definedBindings e]
isSSA e = [b | (b, count) <- HM.toList counts, count > 1]
  where
    counts = HM.fromListWith (+) [(b, 1 :: Word) | b <- definedBindings e]