[LLVMbugs] [Bug 2373] New: Type size mismatch assertion during llvm-gcc compile on __powixf2

bugzilla-daemon at cs.uiuc.edu bugzilla-daemon at cs.uiuc.edu
Mon May 26 19:24:33 PDT 2008


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

           Summary: Type size mismatch assertion during llvm-gcc compile on
                    __powixf2
           Product: libraries
           Version: trunk
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Backend: X86
        AssignedTo: unassignedbugs at nondot.org
        ReportedBy: chandlerc at gmail.com
                CC: llvmbugs at cs.uiuc.edu


Created an attachment (id=1669)
 --> (http://llvm.org/bugs/attachment.cgi?id=1669)
Reduced testcase

This is specific to x86-64 and Linux AFAIK:

/home/chandlerc/code/compilers/build/llvm-gcc/./gcc/cc1 -fpreprocessed
testcase.i -march=k8 -o /dev/null
 foocc1: /home/chandlerc/code/compilers/llvm-gcc/gcc/llvm-types.cpp:84: const
llvm::Type* llvm_set_type(tree_node*, const llvm::Type*): Assertion
`(!(__extension__ ({ const tree __t = (Tr); if (tree_code_type[(int) (((enum
tree_code) (__t)->common.code))] != (tcc_type)) tree_class_check_failed (__t,
(tcc_type), "/home/chandlerc/code/compilers/llvm-gcc/gcc/llvm-types.cpp", 84,
__FUNCTION__); __t; })->type.size) || !Ty->isSized() || !isInt64((__extension__
({ const tree __t = (Tr); if (tree_code_type[(int) (((enum tree_code)
(__t)->common.code))] != (tcc_type)) tree_class_check_failed (__t, (tcc_type),
"/home/chandlerc/code/compilers/llvm-gcc/gcc/llvm-types.cpp", 84,
__FUNCTION__); __t; })->type.size), true) || getInt64((__extension__ ({ const
tree __t = (Tr); if (tree_code_type[(int) (((enum tree_code)
(__t)->common.code))] != (tcc_type)) tree_class_check_failed (__t, (tcc_type),
"/home/chandlerc/code/compilers/llvm-gcc/gcc/llvm-types.cpp", 84,
__FUNCTION__); __t; })->type.size), true) ==
getTargetData().getABITypeSizeInBits(Ty)) && "LLVM type size doesn't match GCC
type size!"' failed.

testcase.i: In function 'foo':
testcase.i:2: internal compiler error: Aborted

Duncan diagnosed this correctly, and I'm filing and attaching patches here.

Also, this originally showed up compiling libgcc2.c to __powixf2 in case
someone searches with those terms. The above and attached are reduced test
cases.


-- 
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