Mercurial > hg > CbC > CbC_gcc
diff gcc/testsuite/g++.dg/tree-ssa/pr88152-2.C @ 145:1830386684a0
gcc-9.2.0
author | anatofuz |
---|---|
date | Thu, 13 Feb 2020 11:34:05 +0900 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/gcc/testsuite/g++.dg/tree-ssa/pr88152-2.C Thu Feb 13 11:34:05 2020 +0900 @@ -0,0 +1,85 @@ +// PR target/88152 +// { dg-do compile { target int32 } } +// { dg-options "-O2 -Wno-psabi -fdump-tree-forwprop1" } +// { dg-final { scan-tree-dump-not " (?:>|>=|<|<=) \{ 214748364\[67]" "forwprop1" } } +// { dg-final { scan-tree-dump-not " (?:>|>=|<|<=) \{ -214748364\[78]" "forwprop1" } } +// { dg-final { scan-tree-dump-times "(?:return| =) \{ 0, 0, 0, 0 \}" 2 "forwprop1" } } +// { dg-final { scan-tree-dump-times "(?:return| =) \{ -1, -1, -1, -1 \}" 2 "forwprop1" } } +// { dg-final { scan-tree-dump-times " == \{ 2147483647, 2147483647, 2147483647, 2147483647 \}" 2 "forwprop1" } } +// { dg-final { scan-tree-dump-times " != \{ 2147483647, 2147483647, 2147483647, 2147483647 \}" 2 "forwprop1" } } +// { dg-final { scan-tree-dump-times " == \{ -2147483648, -2147483648, -2147483648, -2147483648 \}" 2 "forwprop1" } } +// { dg-final { scan-tree-dump-times " != \{ -2147483648, -2147483648, -2147483648, -2147483648 \}" 2 "forwprop1" } } + +typedef int V __attribute__((vector_size (16))); + +V +f1 (V a) +{ + return a > __INT_MAX__; +} + +V +f2 (V a) +{ + return a >= __INT_MAX__; +} + +V +f3 (V a) +{ + return a < __INT_MAX__; +} + +V +f4 (V a) +{ + return a <= __INT_MAX__; +} + +V +f5 (V a) +{ + return a > -__INT_MAX__ - 1; +} + +V +f6 (V a) +{ + return a >= -__INT_MAX__ - 1; +} + +V +f7 (V a) +{ + return a < -__INT_MAX__ - 1; +} + +V +f8 (V a) +{ + return a <= -__INT_MAX__ - 1; +} + +V +f9 (V a) +{ + return a > __INT_MAX__ - 1; +} + +V +f10 (V a) +{ + return a <= __INT_MAX__ - 1; +} + +V +f11 (V a) +{ + return a >= -__INT_MAX__; +} + +V +f12 (V a) +{ + return a < -__INT_MAX__; +}