typedef unsigned short __u16;
typedef unsigned int __u32;
typedef __u8 uint8_t;
typedef __u16 uint16_t;
typedef __u32 uint32_t;
typedef struct {
    uint8_t mbxCommand;
} MAILBOX_t;
typedef struct lpfcMboxq {
};
int lpfc_sli_brdrestart(struct lpfc_hba * phba)
{
  MAILBOX_t *mb;
  uint16_t skip_post;
  volatile uint32_t word0;
  void *to_slim;
  mb = (MAILBOX_t *) &word0;
  mb->mbxCommand = 0x1A;
  __writel((*(uint32_t *) mb),(to_slim));
  if (skip_post)
    (__builtin_constant_p(100) && (100)<=5)
        ? (__builtin_constant_p((100)*1000)
           ? (((100)*1000) > 20000
              ? __bad_udelay() : __const_udelay(((100)*1000) * 0x10c7ul))
           : __udelay((100)*1000)) : ({ });
}

ICEs with -O because TREE_SIDE_EFFECTS is set on word0.


-- 
           Summary: [4.4 Regression] ICE in gimple_rhs_has_side_effects, at
                    gimple.c:2369
           Product: gcc
           Version: 4.4.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: middle-end
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: rguenth at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36988

Reply via email to