Constructed product result analysis
In the field of compiler implementation in computer science, constructed product result analysis is a static analysis that determines which functions in a given program can return multiple results in an efficient manner. Typically, this means returning multiple results in a register
CPR analysis was introduced in the context of compiling Haskell and is implemented in the Glasgow Haskell Compiler. It may be applicable to other programming languages as well.