## MLton 20241230+git20251029+dfsg-5

# SplitTypes

SplitTypes is an optimization pass for the SSA IntermediateLanguage, invoked from SSASimplify.

## Description

SplitTypes performs a unification-based analysis to split a datatype into distinct instances for constructed values that are not unified. Because datatypes are recursive, other analyses often conflate all defs and uses of `ConApp`-s; `SplitTypes` allows non-unified instances of a datatype to be analyzed separately.

## Implementation

- `split-types.fun`

## Details and Notes