diff options
| author | Luc Van Oostenryck <luc.vanoostenryck@gmail.com> | 2018-03-06 05:02:56 +0100 |
|---|---|---|
| committer | Luc Van Oostenryck <luc.vanoostenryck@gmail.com> | 2018-07-01 00:18:44 +0200 |
| commit | 11380d396ac94f6c808f130268c4ac026ac19f14 (patch) | |
| tree | 3c0feb661f49a1da471e32f861c13dc036935b59 /validation/mem2reg/quadra01.c | |
| parent | 745c0d82a5099f6c2680bc1459a652f354a75d10 (diff) | |
| download | sparse-dev-11380d396ac94f6c808f130268c4ac026ac19f14.tar.gz | |
testsuite: add a few more tests catching quadratic behaviour
Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
Diffstat (limited to 'validation/mem2reg/quadra01.c')
| -rw-r--r-- | validation/mem2reg/quadra01.c | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/validation/mem2reg/quadra01.c b/validation/mem2reg/quadra01.c new file mode 100644 index 00000000..b71f4696 --- /dev/null +++ b/validation/mem2reg/quadra01.c @@ -0,0 +1,27 @@ +#include "repeat.h" + +void use(void *, void *, void *, void *); +void *def(void); + +#define BLOCK(n) { \ + void *label; \ + use(&&w##n, &&x##n, &&y##n, &&z##n); \ +w##n: label = def(); goto *label; \ +x##n: label = def(); goto *label; \ +y##n: label = def(); goto *label; \ +z##n: label = def(); goto *label; \ +} + +static void foo(void) { + REPEAT2(5, BLOCK) +} + +/* + * check-name: quadratic @ liveness + * check-command: test-linearize -I. $file + * check-timeout: + * + * check-output-ignore + * check-output-excludes: phi\\. + * check-output-excludes: phisrc\\. + */ |
