[LLVMbugs] [Bug 8286] New: Invalid indirect branches processing (x86 asm printer).

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Sun Oct 3 06:40:29 PDT 2010


http://llvm.org/bugs/show_bug.cgi?id=8286

           Summary: Invalid indirect branches processing (x86 asm
                    printer).
           Product: libraries
           Version: 2.8
          Platform: PC
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P
         Component: Backend: X86
        AssignedTo: unassignedbugs at nondot.org
        ReportedBy: crystaldragon at codedgers.com
                CC: llvmbugs at cs.uiuc.edu


Created an attachment (id=5556)
 --> (http://llvm.org/bugs/attachment.cgi?id=5556)
bitcode file(for linux x86-64) with a lot of indirect branch instructions

M.bc from attachment can't be compiled:

llc M.bc -o M.s
gcc M.s -lm

/tmp/ccuBJJbW.o:(.rodata+0xf0): undefined reference to `.Ltmp58'
/tmp/ccuBJJbW.o:(.rodata+0x1a0): undefined reference to `.Ltmp59'
collect2: ld error 1

Probably reason - optimization in x86 asm printer, that drops basic blocks
labels without uses. It ignores global variables like this:

@blocks3 = internal constant [4 x i8*] [i8* blockaddress(@cffti, %bb), i8*
blockaddress(@cffti, %bb1), i8* blockaddress(@cffti, %return), i8*
blockaddress(@cffti, %return)] ; <[4 x i8*]*> [#uses=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