Skip to content

Data Flow Analysis Incorrectly Associating Value with Register #283

@JoshSanch

Description

@JoshSanch

FYI @stravant

Found this while working on Battle for Bikini Bottom decomp (PPC architecture).

I found this instance where the Data Flow Analysis incorrectly analyzed that register f0 would always contain value 0.0f. Left photo is original assembly with DFA on, right photo is DFA off.

Not sure if it is specifically related to analysis of ternary constructs. Relevant C decompilation output (decomp.me scratch here for full func):

...
cur_fx->irate = cur_fx->rate > 0.0f ? 1.0f / cur_fx->rate : 0.0f;
...
Image Image

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions