diff options
Diffstat (limited to 'src/tests/testfile_parameter_ref.c')
-rw-r--r-- | src/tests/testfile_parameter_ref.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/tests/testfile_parameter_ref.c b/src/tests/testfile_parameter_ref.c new file mode 100644 index 00000000..7fe985f3 --- /dev/null +++ b/src/tests/testfile_parameter_ref.c @@ -0,0 +1,20 @@ +// gcc -g -O2 -o parameter_ref parameter_ref.c + +volatile int vv; + +/* Don't inline, but do allow clone to create specialized versions. */ +static __attribute__((noinline)) int +foo (int x, int y, int z) +{ + int a = x * 2; + int b = y * 2; + int c = z * 2; + vv++; + return x + z; +} + +int +main (int x, char **argv) +{ + return foo (x, 2, 3) + foo (x, 4, 3) + foo (x + 6, x, 3) + x; +} |