tree: d1f9e9b15b682aa396c4901a67df7029020aeb3e [path history] [tgz]
  1. CMakeLists.txt
  2. mocks.c
  3. README.md
  4. sap_fct_splitting.bc
Bitcode/Regression/sap_fct_splitting/README.md

SAP function splitting regression test

Purpose

This tests the correct compilation of indirectbr and blockaddr in combination with custom cost-based function outlining.

Produce bitcode file

This bitcode test was generated from this high level program:

Int32 main() {
  Bool x;
  Int32 counter = test::produce(5);
  while (counter < 10) {
    counter++;
// Creation of subfunction forced here - start
    if (counter >= 8) {
      break; // triggers indirectbr
    } else if (counter >= 4) {
      continue; // triggers indirectbr
    }
// Creation of subfunction forced here - end
    test::consume(counter);
  }
  return 1;
}