Marvell and Flex to join S&P 500 in $320B index reshuffle