Skip to content

SSA fails on program with infinite loop #173

Description

@aaronbembenek

I've run this script (using bincaml commit f6421ac):

(load-il ssa-fail.il)
(run-transforms ssa)

And I get this error:

Failure("not found: #nondet_32_1:bv32 likely a read-uninitialised variable")

However, this variable is initialized:

  block %main_entry {.address = 0x400640; .originalLabel = "KTHyjTW0SWiGwqylcMDw6Q=="} [
    var Stack_n16_n8: bv64 := R29_in:bv64 { .label = "4195904_1" };
    var Stack_n8_0: bv64 := R30_in:bv64 { .label = "4195904_2" };
    (var #nondet_32_1: bv32) := call @_havoc();
    goto(%phi_4, %phi_5);
  ];

I suspect it has to do with the fact that the program has an infinite loop (the same error has popped up in other programs with infinite loops).

ssa-fail.zip

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