[LLVMdev] Error on using DataStructureAnalysis

Andreas Wilhelm andreas.wilhelm at gmx.com
Wed Jul 6 00:00:49 PDT 2011


Hi, 

though DSA isn't maintained in the current build, I need to
use it for analyzing dependencies among functions.

Therfore I load the EQTDDataStructures pass and retrieve the
mapping from nodes int the callee to the ones in the parent
DSGraph with computeNodeMapping.

In most cases this works well, but for some function calls I
get following error:

DSGraph.cpp:1379: static void llvm::DSGraph::computeNodeMapping(const llvm::DSNodeHandle&, const llvm::DSNodeHandle&, llvm::DSGraph::NodeMapTy&, bool): Assertion `Entry.getNode() == N2 && "Inconsistent mapping detected!"' failed.

The definition of the corresponding function is:
define linkonce_odr void @_ZN9__gnu_cxx13new_allocatorIjE9constructEPjRKj(%"class.__gnu_cxx::new_allocator"* %this, i32* %__p, i32* %__val) align 2

The callsite is:
call void @_ZN9__gnu_cxx13new_allocatorIjE9constructEPjRKj(%"class.__gnu_cxx::new_allocator"* %3, i32* %tmp10, i32* %tmp11)

Does anybody have a clue what could be wrong or what has to be checked
before executing?

Best
Andreas



More information about the llvm-dev mailing list