[LLVMbugs] [Bug 2740] New: Lo is not <= Hi in range emission code!

bugzilla-daemon at cs.uiuc.edu bugzilla-daemon at cs.uiuc.edu
Sun Aug 31 15:53:04 PDT 2008


           Summary: Lo is not <= Hi in range emission code!
           Product: new-bugs
           Version: unspecified
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: new bugs
        AssignedTo: unassignedbugs at nondot.org
        ReportedBy: regehr at cs.utah.edu
                CC: llvmbugs at cs.uiuc.edu

Seen on r55591 on Ubuntu Hardy on ia32.

regehr at john-home:~/volatile/tmp18$ llvm-gcc -O1 small.c
cc1: InstructionCombining.cpp:3261:
llvm::Constant*, llvm::Constant*, bool, bool, llvm::Instruction&): Assertion
`cast<ConstantInt>(ConstantExpr::getICmp((isSigned ?
ICmpInst::ICMP_SLE:ICmpInst::ICMP_ULE), Lo, Hi))->getZExtValue() && "Lo is not
<= Hi in range emission code!"' failed.
small.c: In function ‘func_75’:
small.c:19: internal compiler error: Aborted
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://developer.apple.com/bugreporter> for instructions.

regehr at john-home:~/volatile/tmp18$ cat small.c

typedef short int int16_t;
typedef unsigned char uint8_t;
typedef unsigned int uint32_t;
static inline int
safe_mod_s_s (int si1, int si2)
  return si1 / si2;
static inline unsigned int
safe_div_u_u (unsigned int ui1, unsigned int ui2)
  return ui1;

uint8_t g_6;
func_75 (int16_t p_76, uint8_t p_78, uint32_t p_79, uint32_t p_80,
         uint32_t p_81, uint8_t p_82)
  uint32_t l_106 = 0xB0CEA4F5L;
  uint32_t l_92 = -1L;
  1, (func_97
      ((safe_mod_s_s ((safe_div_s_s (p_79, 1)) >= 1, l_106)) ==
       (safe_div_u_u (l_92, 1)), 1) <= (safe_div_u_u (g_6, 1)));

Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

More information about the llvm-bugs mailing list