Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@xxxxxxxxx> --- validation/optim/select-constant-cond.c | 10 ++++++++++ validation/optim/select-same-args.c | 9 +++++++++ validation/optim/select-select-true-false0.c | 11 +++++++++++ validation/optim/select-select-true-false1.c | 14 ++++++++++++++ validation/optim/select-select-true-true.c | 10 ++++++++++ 5 files changed, 54 insertions(+) create mode 100644 validation/optim/select-constant-cond.c create mode 100644 validation/optim/select-same-args.c create mode 100644 validation/optim/select-select-true-false0.c create mode 100644 validation/optim/select-select-true-false1.c create mode 100644 validation/optim/select-select-true-true.c diff --git a/validation/optim/select-constant-cond.c b/validation/optim/select-constant-cond.c new file mode 100644 index 000000000000..a9337e2ceaee --- /dev/null +++ b/validation/optim/select-constant-cond.c @@ -0,0 +1,10 @@ +int t(int p, int a, int b) { return ((p == p) ? a : b) == a; } +int f(int p, int a, int b) { return ((p != p) ? a : b) == b; } + +/* + * check-name: select-constant-cond + * check-command: test-linearize -Wno-decl $file + * + * check-output-ignore + * check-output-returns: 1 + */ diff --git a/validation/optim/select-same-args.c b/validation/optim/select-same-args.c new file mode 100644 index 000000000000..403af47169c3 --- /dev/null +++ b/validation/optim/select-same-args.c @@ -0,0 +1,9 @@ +int foo(int p, int a) { return (p ? a : a) == a; } + +/* + * check-name: select-same-args + * check-command: test-linearize -Wno-decl $file + * + * check-output-ignore + * check-output-returns: 1 + */ diff --git a/validation/optim/select-select-true-false0.c b/validation/optim/select-select-true-false0.c new file mode 100644 index 000000000000..46bd7667400d --- /dev/null +++ b/validation/optim/select-select-true-false0.c @@ -0,0 +1,11 @@ +int fw(int p, int a, int b) { return ((p ? 42 : 0) ? a : b) == ( p ? a : b); } +int bw(int p, int a, int b) { return ((p ? 0 : 42) ? a : b) == ( p ? b : a); } + +/* + * check-name: select-select-true-false0 + * check-command: test-linearize -Wno-decl $file + * check-known-to-fail + * + * check-output-ignore + * check-output-returns: 1 + */ diff --git a/validation/optim/select-select-true-false1.c b/validation/optim/select-select-true-false1.c new file mode 100644 index 000000000000..00ffdcd1bc9b --- /dev/null +++ b/validation/optim/select-select-true-false1.c @@ -0,0 +1,14 @@ +int foo(int p) +{ + int t = (p ? 42 : 0); + return (t ? 42 : 0) == ( p ? 42 : 0); +} + +/* + * check-name: select-select-true-false1 + * check-command: test-linearize -Wno-decl $file + * check-known-to-fail + * + * check-output-ignore + * check-output-returns: 1 + */ diff --git a/validation/optim/select-select-true-true.c b/validation/optim/select-select-true-true.c new file mode 100644 index 000000000000..e6fa2c89febb --- /dev/null +++ b/validation/optim/select-select-true-true.c @@ -0,0 +1,10 @@ +int foo(int p, int a, int b) { return ((p ? 42 : 43) ? a : b) == a ; } + +/* + * check-name: select-select-true-true + * check-command: test-linearize -Wno-decl $file + * check-known-to-fail + * + * check-output-ignore + * check-output-returns: 1 + */ -- 2.29.2