Chandler Carruth
2008-Mar-25 06:49 UTC
[LLVMdev] llvm-gcc 4.2 assertion failed on linux x86_64
Hello,
Trying to get my machine building up-to-date, and a nightly going, i
ran into an assertion during the build of llvm-gcc 4.2:
$ make -j2
<snip!>
/home/chandlerc/code/compilers/build/llvm-gcc/./gcc/xgcc
-B/home/chandlerc/code/compilers/build/llvm-gcc/./gcc/
-B/home/chandlerc/code/compilers/install/llvm-gcc/x86_64-pc-linux-gnu/bin/
-B/home/chandlerc/code/compilers/install/llvm-gcc/x86_64-pc-linux-gnu/lib/
-isystem
/home/chandlerc/code/compilers/install/llvm-gcc/x86_64-pc-linux-gnu/include
-isystem
/home/chandlerc/code/compilers/install/llvm-gcc/x86_64-pc-linux-gnu/sys-include
-O2 -O2 -march=k8 -mfpmath=sse -pipe -DIN_GCC -W -Wall
-Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes
-Wold-style-definition -isystem ./include -fPIC -g
-DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -I. -I.
-I/home/chandlerc/code/compilers/llvm-gcc/gcc
-I/home/chandlerc/code/compilers/llvm-gcc/gcc/.
-I/home/chandlerc/code/compilers/llvm-gcc/gcc/../include
-I/home/chandlerc/code/compilers/llvm-gcc/gcc/../libcpp/include
-I/home/chandlerc/code/compilers/llvm-gcc/gcc/../libdecnumber
-I../libdecnumber -I/home/chandlerc/code/compilers/llvm/include
-I/home/chandlerc/code/compilers/build/llvm/include -DL_powitf2 -c
/home/chandlerc/code/compilers/llvm-gcc/gcc/libgcc2.c -o
libgcc/./_powitf2.o
cc1: /home/chandlerc/code/compilers/llvm-gcc/gcc/llvm-types.cpp:81:
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", 81,
__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", 81,
__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",
81, __FUNCTION__); __t; })->type.size), true)
=getTargetData().getABITypeSizeInBits(Ty)) && "LLVM type size
doesn't
match GCC type size!"' failed.
/home/chandlerc/code/compilers/llvm-gcc/gcc/libgcc2.c: In function
'__powixf2':
/home/chandlerc/code/compilers/llvm-gcc/gcc/libgcc2.c:1765: internal
compiler error: Aborted
My configure:
.../configure --host=x86_64-pc-linux-gnu --build=x86_64-pc-linux-gnu
--target=x86_64-pc-linux-gnu
--prefix=/home/chandlerc/code/compilers/install/llvm-gcc
--disable-multilib --disable-shared
--enable-llvm=/home/chandlerc/code/compilers/build/llvm
--program-prefix=llvm- --enable-languages=c,c++
If more information would help, just let me know.
-Chandler
Bill Wendling
2008-Mar-25 07:51 UTC
[LLVMdev] llvm-gcc 4.2 assertion failed on linux x86_64
Hi Chandler, This looks like a FE error, so you probably won't be able to get an LLVM bitcode file for us. You could help by whittling the test case down to something managable. First get a preprocessed file. Then I would suggest following the instructions on this page to reduce the testcase: http://gcc.gnu.org/wiki/A_guide_to_testcase_reduction That will help us a lot with the bug report. -bw On Mar 24, 2008, at 11:49 PM, Chandler Carruth wrote:> Hello, > > Trying to get my machine building up-to-date, and a nightly going, i > ran into an assertion during the build of llvm-gcc 4.2: > > $ make -j2 > <snip!> > /home/chandlerc/code/compilers/build/llvm-gcc/./gcc/xgcc > -B/home/chandlerc/code/compilers/build/llvm-gcc/./gcc/ > -B/home/chandlerc/code/compilers/install/llvm-gcc/x86_64-pc-linux- > gnu/bin/ > -B/home/chandlerc/code/compilers/install/llvm-gcc/x86_64-pc-linux- > gnu/lib/ > -isystem /home/chandlerc/code/compilers/install/llvm-gcc/x86_64-pc- > linux-gnu/include > -isystem /home/chandlerc/code/compilers/install/llvm-gcc/x86_64-pc- > linux-gnu/sys-include > -O2 -O2 -march=k8 -mfpmath=sse -pipe -DIN_GCC -W -Wall > -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes > -Wold-style-definition -isystem ./include -fPIC -g > -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -I. -I. > -I/home/chandlerc/code/compilers/llvm-gcc/gcc > -I/home/chandlerc/code/compilers/llvm-gcc/gcc/. > -I/home/chandlerc/code/compilers/llvm-gcc/gcc/../include > -I/home/chandlerc/code/compilers/llvm-gcc/gcc/../libcpp/include > -I/home/chandlerc/code/compilers/llvm-gcc/gcc/../libdecnumber > -I../libdecnumber -I/home/chandlerc/code/compilers/llvm/include > -I/home/chandlerc/code/compilers/build/llvm/include -DL_powitf2 -c > /home/chandlerc/code/compilers/llvm-gcc/gcc/libgcc2.c -o > libgcc/./_powitf2.o > cc1: /home/chandlerc/code/compilers/llvm-gcc/gcc/llvm-types.cpp:81: > 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", 81, > __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", 81, > __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", > 81, __FUNCTION__); __t; })->type.size), true) => getTargetData().getABITypeSizeInBits(Ty)) && "LLVM type size doesn't > match GCC type size!"' failed. > /home/chandlerc/code/compilers/llvm-gcc/gcc/libgcc2.c: In function > '__powixf2': > /home/chandlerc/code/compilers/llvm-gcc/gcc/libgcc2.c:1765: internal > compiler error: Aborted > > My configure: > .../configure --host=x86_64-pc-linux-gnu --build=x86_64-pc-linux-gnu > --target=x86_64-pc-linux-gnu > --prefix=/home/chandlerc/code/compilers/install/llvm-gcc > --disable-multilib --disable-shared > --enable-llvm=/home/chandlerc/code/compilers/build/llvm > --program-prefix=llvm- --enable-languages=c,c++ > > If more information would help, just let me know. > > -Chandler > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
Chandler Carruth
2008-Mar-27 06:47 UTC
[LLVMdev] llvm-gcc 4.2 assertion failed on linux x86_64
Bam. This is about as reduced as it gets. I think I can spot the problem point:
chandlerc at osiris ~/code/compilers/build/llvm-gcc $ cat testcase.i
void
foo () {
float x __attribute__ ((mode (XF)));
}
chandlerc at osiris ~/code/compilers/build/llvm-gcc $ ./gcc/cc1
-fpreprocessed -march=k8 testcase.i -o /dev/null
foocc1: /home/chandlerc/code/compilers/llvm-gcc/gcc/llvm-types.cpp:81:
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", 81,
__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", 81,
__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",
81, __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
Hope that helps. =]
-Chandler
PS: delta hates me, and this test case, a lot. reduced it by hand.
On Tue, Mar 25, 2008 at 12:51 AM, Bill Wendling <isanbard at gmail.com>
wrote:> Hi Chandler,
>
> This looks like a FE error, so you probably won't be able to get an
> LLVM bitcode file for us. You could help by whittling the test case
> down to something managable. First get a preprocessed file. Then I
> would suggest following the instructions on this page to reduce the
> testcase:
>
> http://gcc.gnu.org/wiki/A_guide_to_testcase_reduction
>
> That will help us a lot with the bug report.
>
> -bw
>
>
>
> On Mar 24, 2008, at 11:49 PM, Chandler Carruth wrote:
> > Hello,
> >
> > Trying to get my machine building up-to-date, and a nightly going, i
> > ran into an assertion during the build of llvm-gcc 4.2:
> >
> > $ make -j2
> > <snip!>
> > /home/chandlerc/code/compilers/build/llvm-gcc/./gcc/xgcc
> > -B/home/chandlerc/code/compilers/build/llvm-gcc/./gcc/
> > -B/home/chandlerc/code/compilers/install/llvm-gcc/x86_64-pc-linux-
> > gnu/bin/
> > -B/home/chandlerc/code/compilers/install/llvm-gcc/x86_64-pc-linux-
> > gnu/lib/
> > -isystem /home/chandlerc/code/compilers/install/llvm-gcc/x86_64-pc-
> > linux-gnu/include
> > -isystem /home/chandlerc/code/compilers/install/llvm-gcc/x86_64-pc-
> > linux-gnu/sys-include
> > -O2 -O2 -march=k8 -mfpmath=sse -pipe -DIN_GCC -W -Wall
> > -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes
> > -Wold-style-definition -isystem ./include -fPIC -g
> > -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -I. -I.
> > -I/home/chandlerc/code/compilers/llvm-gcc/gcc
> > -I/home/chandlerc/code/compilers/llvm-gcc/gcc/.
> > -I/home/chandlerc/code/compilers/llvm-gcc/gcc/../include
> > -I/home/chandlerc/code/compilers/llvm-gcc/gcc/../libcpp/include
> > -I/home/chandlerc/code/compilers/llvm-gcc/gcc/../libdecnumber
> > -I../libdecnumber -I/home/chandlerc/code/compilers/llvm/include
> > -I/home/chandlerc/code/compilers/build/llvm/include -DL_powitf2 -c
> > /home/chandlerc/code/compilers/llvm-gcc/gcc/libgcc2.c -o
> > libgcc/./_powitf2.o
> > cc1: /home/chandlerc/code/compilers/llvm-gcc/gcc/llvm-types.cpp:81:
> > 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", 81,
> > __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", 81,
> > __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",
> > 81, __FUNCTION__); __t; })->type.size), true) => >
getTargetData().getABITypeSizeInBits(Ty)) && "LLVM type size
doesn't
> > match GCC type size!"' failed.
> > /home/chandlerc/code/compilers/llvm-gcc/gcc/libgcc2.c: In function
> > '__powixf2':
> > /home/chandlerc/code/compilers/llvm-gcc/gcc/libgcc2.c:1765: internal
> > compiler error: Aborted
> >
> > My configure:
> > .../configure --host=x86_64-pc-linux-gnu
--build=x86_64-pc-linux-gnu
> > --target=x86_64-pc-linux-gnu
> > --prefix=/home/chandlerc/code/compilers/install/llvm-gcc
> > --disable-multilib --disable-shared
> > --enable-llvm=/home/chandlerc/code/compilers/build/llvm
> > --program-prefix=llvm- --enable-languages=c,c++
> >
> > If more information would help, just let me know.
> >
> > -Chandler
> > _______________________________________________
> > LLVM Developers mailing list
> > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
Apparently Analagous Threads
- [LLVMdev] llvm-gcc 4.2 assertion failed on linux x86_64
- [LLVMdev] llvm-gcc 4.2 assertion failed on linux x86_64
- [LLVMdev] llvm-gcc 4.2 assertion failed on linux x86_64
- [LLVMdev] llvm-gcc 4.2 assertion failed on linux x86_64
- [LLVMdev] Can't bootstrap llvm-gcc-4.0 for x84_64