[PUSHED] testsuite: Add a returns_twice testcase for PR126815 [PR126815]
Andrea Pinski <[email protected]>
| Newsgroups | gmane.comp.gcc.patches |
|---|---|
| Message-ID | <[email protected]> |
This adds a returns_twice testcase that shows the ICE (already fixed) and show that adding a stmt before the call does not work either. Pushed as obvious after a quick test on x86_64-linux-gnu to make sure it passes. PR tree-optimization/126815 gcc/testsuite/ChangeLog: * gcc.dg/torture/returns-twice-1.c: New test. Signed-off-by: Andrea Pinski <[email protected]> --- .../gcc.dg/torture/returns-twice-1.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 gcc/testsuite/gcc.dg/torture/returns-twice-1.c diff --git a/gcc/testsuite/gcc.dg/torture/returns-twice-1.c b/gcc/testsuite/gcc.dg/torture/returns-twice-1.c new file mode 100644 index 00000000000..fbd9faa0bce --- /dev/null +++ b/gcc/testsuite/gcc.dg/torture/returns-twice-1.c @@ -0,0 +1,19 @@ +/* { dg-do compile } */ +/* PR tree-optimization/126815 */ +int f (int) __attribute__((returns_twice)); +void sink1 (int) __attribute__((leaf)); +void sink (int); + +void h (int a, int b, int c) +{ + int t; + if (c){ + sink (1); + t = f (a); + } + else + t = b; + if (t == 42) + __builtin_unreachable (); + sink1 (a); +} -- 2.43.0