Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/gcc.dg/20100906-1.c @ 131:84e7813d76e9
gcc-8.2
author | mir3636 |
---|---|
date | Thu, 25 Oct 2018 07:37:49 +0900 |
parents | 04ced10e8804 |
children |
line wrap: on
line source
/* { dg-do run } */ /* { dg-options "-O2" } */ /* { dg-options "-O2 -fno-short-enums -Wl,--no-enum-size-warning" {target arm_eabi} } */ /* This testcase got misoptimized by combine due to a wrong setting of subst_low_luid in try_combine. */ enum rtx_code { A, B }; void abort (void); struct rtx_def { __extension__ enum rtx_code code:16; }; typedef struct rtx_def *rtx; void __attribute__((noinline)) add_constraint (unsigned char is_a) { if (is_a) abort (); } void __attribute__((noinline)) foo (rtx defn) { switch (defn->code) { case A: case B: add_constraint (defn->code == A); break; default: break; } } int main () { struct rtx_def r; r.code = B; foo (&r); return 0; }