Skip to content

Assertion `New != this && "this->replaceAllUsesWith(this) is NOT valid!"' failed. #9389

@regehr

Description

@regehr
Bugzilla Link 9017
Resolution FIXED
Resolved on Jan 23, 2011 21:29
Version trunk
OS Linux
CC @tkremenek

Extended Description

regehr@home:~/volatile/bugs/tmp349$ clang -O2 -c small.c
clang: Value.cpp:312: void llvm::Value::replaceAllUsesWith(llvm::Value*): Assertion `New != this && "this->replaceAllUsesWith(this) is NOT valid!"' failed.
0 clang 0x09498118
Stack dump:
0. Program arguments: /mnt/z/z/compiler-install/llvm-gcc-r123968-install/bin/clang -cc1 -triple i386-pc-linux-gnu -emit-obj -disable-free -main-file-name small.c -mrelocation-model static -mdisable-fp-elim -masm-verbose -mconstructor-aliases -target-cpu pentium4 -target-linker-version 2.20.51 -resource-dir /mnt/z/z/compiler-install/llvm-gcc-r123968-install/bin/../lib/clang/2.9 -O2 -ferror-limit 19 -fmessage-length 80 -fgnu-runtime -fdiagnostics-show-option -fcolor-diagnostics -o small.o -x c small.c

  1. parser at end of file
  2. Per-module optimization passes
  3. Running pass 'CallGraph Pass Manager' on module 'small.c'.
  4. Running pass 'Scalar Replacement of Aggregates (SSAUp)' on function '@int322'
    clang: error: unable to execute command: Aborted
    clang: error: clang frontend command failed due to signal 1 (use -v to see invocation)

regehr@home:~/volatile/bugs/tmp349$ clang -v

clang version 2.9 (trunk 123968)
Target: i386-pc-linux-gnu
Thread model: posix

regehr@home:~/volatile/bugs/tmp349$ cat small.c

int g_85;

int func_75 (void)
{
lbl_95:
g_85 ^= 0;
goto lbl_95;
}

int *func_80 (int **p_82)
{
return *p_82;
}

void int322 (void)
{
int l_34;
int *l_72 = &l_34;
if (func_75 ())
for (;;)
{
int **l_144 = &l_72;
*l_144 = func_80 (&l_72);
}
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugzillaIssues migrated from bugzilla

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions