This implements the remaining overflow generating instructions in the AArch64 GlobalISel selector. Now wide add/sub operations do not fallback to SelectionDAG anymore. We make use of PostSelectOptimize to cleanup the hereby generated flag-setting operations when the carry-out is unused. Since we do not fallback anymore when selecting add/sub atomics on O0 some test changes were required there. Fixes: https://github.com/llvm/llvm-project/issues/59407 Differential Revision: https://reviews.llvm.org/D153164