1  /* PR 34808 */
       2  /* { dg-do compile }
       3  /* { dg-options "-fno-tree-dominator-opts" } */
       4  
       5  extern int flags;
       6  
       7  struct r { int code; int val;};
       8  
       9  void bar (void);
      10  void baz (void);
      11  
      12  int
      13  foo (struct r *home)
      14  {
      15    int n = 0;
      16    int regno = -1;
      17  
      18    if (home->code == 0)
      19      regno = home->val;
      20  
      21    if (home->code == 1)
      22        bar ();
      23    else if (regno >= 0)
      24      n = (regno == 16
      25  	 ? 16
      26  	 : (regno - (unsigned long long) (flags != 0 ? 63 : 15)
      27  	    ? regno - 128
      28  	    : -1));
      29  
      30    baz ();
      31    return n;
      32  }