-
Notifications
You must be signed in to change notification settings - Fork 245
Description
What is the feature you'd like to have?
Various compiler options will sometimes duplicate code within a function, resulting in an HLIL showing both copies with a bunch of ugly goto
s rather than the original program logic.
Is your feature request related to a problem?
n/a
Are any alternative solutions acceptable?
n/a
Additional Information:
See proud castle paints happily
at 0x730. Both the if() block and the else() block end with if (x24_2 != 0)
with the latter using a goto
into the if() block's code.
In its original logic, the if (x24_2 != 0)
belongs outside the 0x730 if/else clause entirely, but the compiler duplicated this if() statement to appear in both cases of that clause (see 429 @ 000008c8 and 441 @ 00000754 in graph view):

(Bonus issue: the red arrows from the two if
s go way off the sides of the window, even though they would fit comfortably around the intervening nodes.)