[LLVMbugs] [Bug 5694] New: ARM backend miscompiles a <= (0 - b)

bugzilla-daemon at cs.uiuc.edu bugzilla-daemon at cs.uiuc.edu
Sat Dec 5 14:11:04 PST 2009


           Summary: ARM backend miscompiles a <= (0 - b)
           Product: libraries
           Version: trunk
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Backend: ARM
        AssignedTo: unassignedbugs at nondot.org
        ReportedBy: vargaz at gmail.com
                CC: llvmbugs at cs.uiuc.edu

The ARM backend seems to miscompile the attached testcase.

Expected result:
Hello, World: 0
Actual result on X86:
Hello, World: 0
Actual result on ARM:
Hello, World: 1

Compiled using:
llc -march=arm bug.ll

I think the problem is that it generates the following code:
        cmn     r0, r1
        movls   r2, #1

but the cmn instruction sets the condition flags differently than the cmp

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