Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/gcc.c-torture/execute/pr85095.c @ 158:494b0b89df80 default tip
...
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Mon, 25 May 2020 18:13:55 +0900 |
parents | 84e7813d76e9 |
children |
line wrap: on
line source
/* PR target/85095 */ __attribute__((noipa)) unsigned long f1 (unsigned long a, unsigned long b) { unsigned long i = __builtin_add_overflow (a, b, &a); return a + i; } __attribute__((noipa)) unsigned long f2 (unsigned long a, unsigned long b) { unsigned long i = __builtin_add_overflow (a, b, &a); return a - i; } __attribute__((noipa)) unsigned long f3 (unsigned int a, unsigned int b) { unsigned int i = __builtin_add_overflow (a, b, &a); return a + i; } __attribute__((noipa)) unsigned long f4 (unsigned int a, unsigned int b) { unsigned int i = __builtin_add_overflow (a, b, &a); return a - i; } int main () { if (f1 (16UL, -18UL) != -2UL || f1 (16UL, -17UL) != -1UL || f1 (16UL, -16UL) != 1UL || f1 (16UL, -15UL) != 2UL || f2 (24UL, -26UL) != -2UL || f2 (24UL, -25UL) != -1UL || f2 (24UL, -24UL) != -1UL || f2 (24UL, -23UL) != 0UL || f3 (32U, -34U) != -2U || f3 (32U, -33U) != -1U || f3 (32U, -32U) != 1U || f3 (32U, -31U) != 2U || f4 (35U, -37U) != -2U || f4 (35U, -36U) != -1U || f4 (35U, -35U) != -1U || f4 (35U, -34U) != 0U) __builtin_abort (); return 0; }