The very first AA, at least the first one in order, is not necessary
anymore. AAReturnedValues was from a different time; one might say, a
simpler time.
It was rewriten once to use Attribute::getAssumedSimplifiedValues,
which is what the replacement, AAPotentialValuesReturned, does too.
To match the old behavior we needed to avoid the helper
AAReturnedFromReturnedValues and iterate the return instructions
explicitly, however, it is still less complexity than it was before.
AAReturnedFromReturnedValues and getAssumedSimplifiedValues now
allow users to stop at PHI and select nodes or to ignore those and look
through. AANoFPClass will stop at select and phi nodes to read the
fast math flags.
Not sure if this should happen here or in a follow up