llvm / llvm-project

The LLVM Project is a collection of modular and reusable compiler and toolchain technologies.
http://llvm.org
Other
27.94k stars 11.53k forks source link

Assertion fires in Value.cpp for "List invariant broken". #5639

Closed llvmbot closed 14 years ago

llvmbot commented 14 years ago
Bugzilla Link 5267
Resolution FIXED
Resolved on Mar 06, 2010 13:59
Version trunk
OS Solaris
Reporter LLVM Bugzilla Contributor
CC @lattner

Extended Description

Good day,

While building cairo on: clang version 1.1 (trunk 84751)

We hit the following Assertion:

0 hydra: cairo $ make make test -z @ && echo -s all-recursive Making all in src CC cairo-bentley-ottmann.o Assertion failed: PrevPtr == this && "List invariant broken", file Value.cpp, line 476 0 clang-cc 0x09916ddc llvm::sys::RWMutexImpl::RWMutexImpl() + 846 1 clang-cc 0x0991747f llvm::sys::SetInterruptFunction(void ()()) + 595 2 libc.so.1 0xfeb5d6df sighndlr + 15 3 libc.so.1 0xfeb5076f call_user_handler + 687 4 libc.so.1 0xfeb61fc7 _lwp_kill + 7 5 libc.so.1 0xfeb0adaa raise + 34 6 libc.so.1 0xfeae216c abort + 116 7 libc.so.1 0xfeae243a assert + 130 8 clang-cc 0x098b2871 llvm::ValueHandleBase::RemoveFromUseList() + 133 9 clang-cc 0x088c308d llvm::ValueHandleBase::~ValueHandleBase() + 47 10 clang-cc 0x098b29fc llvm::CallbackVH::~CallbackVH() + 48 11 clang-cc 0x098841a1 llvm::MDNode::ElementVH::~ElementVH() + 43 12 clang-cc 0x09881e3d llvm::SmallVectorImpl::destroy_range(llvm::MDNode::ElementVH, llvm::MDNode::ElementVH) + 27 13 clang-cc 0x09881e78 llvm::SmallVectorImpl::clear() + 48 14 clang-cc 0x0987ff3f llvm::MDNode::dropAllReferences() + 43 15 clang-cc 0x0987c58f llvm::LLVMContextImpl::~LLVMContextImpl() + 197 16 clang-cc 0x098716fc llvm::LLVMContext::~LLVMContext() + 40 17 clang-cc 0x0987c957 llvm::object_deleter::call(void*) + 41 18 clang-cc 0x098f73d5 llvm::ManagedStaticBase::destroy() const + 141 19 clang-cc 0x098f7410 llvm::llvm_shutdown() + 34 20 clang-cc 0x087ab33f main + 4269 21 clang-cc 0x087a1490 _start + 128 Stack dump:

  1. Program arguments: /opt/clang/bin/../libexec/clang-cc -triple i386-pc-auroraux2.11 -S -disable-free -main-file-name cairo-bentley-ottmann.c --relocation-model pic -pic-level=2 --disable-fp-elim --unwind-tables=0 --mcpu=pentium4 --fmath-errno=1 -g -dependency-file .deps/cairo-bentley-ottmann.Tpo -sys-header-deps -MP -MT cairo-bentley-ottmann.lo -DHAVE_CONFIG_H -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -D_POSIX_PTHREAD_SEMANTICS -DPIC -I. -I.. -I. -I/export/home2/jpihlaja/cairo/prefixes/pixman/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/X11/include -I/usr/X11/include -D_FORTIFY_SOURCE=2 -O2 -Wall -Wextra -Wold-style-definition -Wmissing-declarations -Werror-implicit-function-declaration -Wnested-externs -Wpointer-arith -Wwrite-strings -Wsign-compare -Wstrict-prototypes -Wmissing-prototypes -Wpacked -Wmissing-format-attribute -Wbad-function-cast -Wvolatile-register-var -Wstrict-aliasing=2 -Winit-self -Wno-missing-field-initializers -Wno-unused-parameter -Wno-attributes -Wno-long-long -Winline -fexceptions=0 -fno-common -fdiagnostics-show-option -o /tmp/cc-xcayM0.s -x c cairo-bentley-ottmann.c clang: error: compiler command failed due to signal 6 (use -v to see invocation) Error code 1 The following command caused the error: /bin/bash /export/home2/jpihlaja/cairo/cairo/build/shave-libtool '/bin/bash ../libtool' --tag=CC --mode=compile /bin/bash /export/home2/jpihlaja/cairo/cairo/build/shave cc /opt/clang/bin/clang -DHAVE_CONFIG_H -I. -I.. -I. -I/export/home2/jpihlaja/cairo/prefixes/pixman/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12 -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -I/usr/X11/include -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -I/usr/X11/include -Wall -Wextra -Wold-style-definition -Wmissing-declarations -Werror-implicit-function-declaration -Wnested-externs -Wpointer-arith -Wwrite-strings -Wsign-compare -Wstrict-prototypes -Wmissing-prototypes -Wpacked -Wmissing-format-attribute -Wbad-function-cast -Wvolatile-register-var -Wstrict-aliasing=2 -Winit-self -Wno-missing-field-initializers -Wno-unused-parameter -Wno-attributes -Wno-long-long -Winline -fno-strict-aliasing -fno-common -Wp,-D_FORTIFY_SOURCE=2 -g -O2 -D_POSIX_PTHREAD_SEMANTICS -MT cairo-bentley-ottmann.lo -MD -MP -MF .deps/cairo-bentley-ottmann.Tpo -c -o cairo-bentley-ottmann.lo cairo-bentley-ottmann.c make: Fatal error: Command failed for target `cairo-bentley-ottmann.lo' Current working directory /export/home2/jpihlaja/cairo/cairo/src Error code 1

Are we falling off the end of a link list or something? Thanks for your time, Edward.

llvmbot commented 14 years ago

OK, I believe this was fixed in or around revision, 84801. I'll close this for now as it looks to be working.

Cheers, Edward.

lattner commented 14 years ago

MDNode::dropAllReferences() should be gone, is this fixed on mainline? :)

llvmbot commented 14 years ago

N.B. When attempting to build the code without the "-g" flag, things continue as they should..

Cheers, Edward.