summaryrefslogtreecommitdiff
path: root/testsuite/tests/cps/cps017.cmm
blob: 7f12348260b8d4c410604239fcba517edc3c0279 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// Test whether extra proc-points are generated
// by a label after a call such as with a heap check,
// but where the return signature is different.
// The extra proc-point should be generated in this case.

foo1 () {
  bits32 p, q;
  bits32 x, y, z;
  (p, q) = foreign "C--" bar(1, 2) "safe";
L:
  if (Hp < HpLim) {
    (p) = foreign "C--" do_gc() "safe";
    goto L;
  }
  return (p+q+x+y+z);
}