The vast majority of modern ALUs are "two's complement" adders, which don't need the "extra" steps you circled.
This looks like a sign-and-magnitude ALU, which I haven't seen in years.
Let's say we are subtracting (+7)-(+9).
In sign-and-magnitude format, we have
As = +; A = 0000_0111 (represents +7 in sign-and-magnitude notation)
Bs = +; B = 0000_1001 (represents +9 in sign-and-magnitude notation)
The first decision compares the signs.
Since +7 and +9 have the same sign (both positive), we go down the operations on the left:
EA <- A + !B + 1 = 0000_0111 + 1111_0110 + 1 = 0_1111_1110
E = 0; A = 1111_1110
This is the two's complement representation of the result.
A two's complement ALU pretty much finishes here.
This flowchart illustrates a sign-and-magnitude ALU, which takes a few more steps:
Since that carry bit E is now 0, that implies that A was originally less than B, so we need to do a special fix-up to convert from two's complement notation to sign-and-magnitude notation:
A <- !A + 1 = !(1111_1110) + 1 = 0000_0001 + 1 = 0000_0010
As <- !As = !(+)
so we end up with
As = -; A = 0000_0010 (represents -2 in sign-and-magnitude notation)
Is that the correct result for (+7)-(+9) ?