[LLVMbugs] [Bug 6146] New: Assertion failed: ((!From->hasAnyUseOfValue(i) || From-> getValueType(i) == To->getValueType(i)) && " Cannot use this version of ReplaceAllUsesWith!"), function ReplaceAllUsesWith, file SelectionDAG.cpp, line 4952.
bugzilla-daemon at cs.uiuc.edu
bugzilla-daemon at cs.uiuc.edu
Tue Jan 26 02:50:24 PST 2010
http://llvm.org/bugs/show_bug.cgi?id=6146
Summary: Assertion failed: ((!From->hasAnyUseOfValue(i) || From-
>getValueType(i) == To->getValueType(i)) && "Cannot use
this version of ReplaceAllUsesWith!"), function
ReplaceAllUsesWith, file SelectionDAG.cpp, line 4952.
Product: libraries
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P2
Component: Backend: X86
AssignedTo: unassignedbugs at nondot.org
ReportedBy: rdivacky at freebsd.org
CC: llvmbugs at cs.uiuc.edu
this is a pretty recent regression at most 1 week old
pes delta$ cat dmu_traverse.c
typedef struct vm_page *vm_page_t;
vm_page_sleep_if_busy(vm_page_t m, int also_m_busy, const char *msg)
{
} blkptr_t;
typedef struct zbookmark {
unsigned long zb_objset;
long zb_level;
} zbookmark_t;
typedef struct zstream {
} dnode_phys_t;
typedef struct traverse_blk_cache {
} traverse_blk_cache_t;
struct traverse_handle {
};
compare_bookmark(zbookmark_t *szb, zbookmark_t *ezb, dnode_phys_t *dnp,
int advance)
{
int bias = (advance & 0x01) ? 0 : -1;
int slevel, elevel, wshift;
if (szb->zb_objset + bias < ezb->zb_objset + bias)
slevel = szb->zb_level;
elevel = ezb->zb_level;
return ((slevel ^ bias) - (elevel ^ bias));
}
pes delta$ clang -O2 dmu_traverse.c
dmu_traverse.c:2:1: warning: type specifier missing, defaults to 'int'
[-Wimplicit-int]
vm_page_sleep_if_busy(vm_page_t m, int also_m_busy, const char *msg)
^
dmu_traverse.c:4:1: warning: control reaches end of non-void function
[-Wreturn-type]
} blkptr_t;
^
dmu_traverse.c:4:3: warning: type specifier missing, defaults to 'int'
[-Wimplicit-int]
} blkptr_t;
^
dmu_traverse.c:15:1: warning: type specifier missing, defaults to 'int'
[-Wimplicit-int]
compare_bookmark(zbookmark_t *szb, zbookmark_t *ezb, dnode_phys_t *dnp,
^
Assertion failed: ((!From->hasAnyUseOfValue(i) || From->getValueType(i) ==
To->getValueType(i)) && "Cannot use this version of ReplaceAllUsesWith!"),
function ReplaceAllUsesWith, file SelectionDAG.cpp, line 4952.
Stack dump:
0. Program arguments: /usr/local/bin/clang -cc1 -triple
x86_64-unknown-freebsd8.0 -S -disable-free -main-file-name dmu_traverse.c
-mrelocation-model static -mdisable-fp-elim -munwind-tables -target-cpu x86-64
-resource-dir /usr/local/lib/clang/1.1 -O2 -fmessage-length 115 -fgnu-runtime
-fdiagnostics-show-option -fcolor-diagnostics -o /tmp/cc-2sPbT9.s -x c
dmu_traverse.c
1. <eof> parser at end of file
2. Code generation
3. Running pass 'X86 DAG->DAG Instruction Selection' on function
'@compare_bookmark'
clang: error: compiler command failed due to signal 6 (use -v to see
invocation)
--
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