Cruise fires expletive-laden rant on set