Skip to content

Another non-terminating program (no LSQ this time!) #904

@zero9178

Description

@zero9178

Given the following C program:

#include "dynamatic/Integration.h"
#include <stdint.h>

int16_t
    test32(double var0, uint32_t var1, uint32_t var2, uint16_t var3,
           uint8_t var6, uint16_t var7, uint32_t var8, int32_t var9,
           uint8_t var4[16], float var5[2]) {
  var4[0] = ((var1 ? var0 : var5[0]) ? 0 : 0 == var3 | 9) < -var2;
  return 0;
}

void
    test_bench() {
  double var0 = 9.934348e-01;
  uint32_t var1 = 8;
  uint32_t var2 = 0;
  uint16_t var3 = 0;
  uint8_t var6 = 0;
  uint16_t var7 = 0;
  uint32_t var8 = 0;
  int32_t var9 = 0;
  uint8_t var4[16];
  float var5[2];
  CALL_KERNEL(test32, var0, var1, var2, var3, var6, var7, var8, var9, var4,
              var5);
}
int main() { test_bench(); }

The program does not terminate within 20000 cycles despite being rather simple.

Script used for compilation:

/home/mboeck/dynamatic/build/bin/dynamatic --exit-on-failure <<EOF 2>&1
set-dynamatic-path /home/mboeck/dynamatic
set-src test32.c
compile
write-hdl
simulate --timeout 20000
exit
EOF

Commit tested: ba6615e

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingfuzzer-foundBugs found using an automated fuzzer

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions