[llvm-dev] uninitialized values in Attributes.cpp

regehr via llvm-dev llvm-dev at lists.llvm.org
Sat Nov 19 21:00:29 PST 2016


I did a RelWithDebInfo + asserts build of LLVM just now and, when 
running "make check" under Valgrind, am seeing a lot of uses of 
uninitialized memory like the one below.  Anyone know offhand what's 
likely to be the root cause?  Unfortunately a Debug build doesn't give 
these errors.  Thanks,

John


FAIL: LLVM :: Analysis/BasicAA/pr18573.ll (2093 of 18733)
******************** TEST 'LLVM :: Analysis/BasicAA/pr18573.ll' FAILED 
********************
Script:
--
/home/regehr/llvm/build-vg/./bin/opt 
/home/regehr/llvm/test/Analysis/BasicAA/pr18573.ll -O2 -S | 
/home/regehr/llvm/build-vg/./bin/FileCheck 
/home/regehr/llvm/test/Analysis/BasicAA/pr18573.ll
--
Exit Code: 123

Command Output (stderr):
--
==29299== Conditional jump or move depends on uninitialised value(s)
==29299==    at 0x13FCF12: hasAttribute (Attributes.cpp:421)
==29299==    by 0x13FCF12: hasAttribute (Attributes.cpp:186)
==29299==    by 0x13FCF12: operator() (Attributes.cpp:627)
==29299==    by 0x13FCF12: operator()<const std::pair<unsigned int, 
llvm::Attribute> *> (predefined_ops.h:234)
==29299==    by 0x13FCF12: __find_if<const std::pair<unsigned int, 
llvm::Attribute> *, __gnu_cxx::__ops::_Iter_pred<(lambda at 
../lib/IR/Attributes.cpp:627:3)> > (stl_algo.h:140)
==29299==    by 0x13FCF12: __find_if<const std::pair<unsigned int, 
llvm::Attribute> *, __gnu_cxx::__ops::_Iter_pred<(lambda at 
../lib/IR/Attributes.cpp:627:3)> > (stl_algo.h:161)
==29299==    by 0x13FCF12: find_if<const std::pair<unsigned int, 
llvm::Attribute> *, (lambda at ../lib/IR/Attributes.cpp:627:3)> 
(stl_algo.h:3815)
==29299==    by 0x13FCF12: none_of<const std::pair<unsigned int, 
llvm::Attribute> *, (lambda at ../lib/IR/Attributes.cpp:627:3)> 
(stl_algo.h:526)
==29299==    by 0x13FCF12: none_of<llvm::ArrayRef<std::pair<unsigned 
int, llvm::Attribute> > &, (lambda at ../lib/IR/Attributes.cpp:627:3)> 
(STLExtras.h:607)
==29299==    by 0x13FCF12: llvm::AttributeSet::get(llvm::LLVMContext&, 
llvm::ArrayRef<std::pair<unsigned int, llvm::Attribute> >) 
(Attributes.cpp:627)
==29299==    by 0x13FD62B: llvm::AttributeSet::get(llvm::LLVMContext&, 
unsigned int, llvm::ArrayRef<llvm::Attribute::AttrKind>) 
(Attributes.cpp:712)
==29299==    by 0x146F9AC: 
llvm::Intrinsic::getAttributes(llvm::LLVMContext&, llvm::Intrinsic::ID) 
(Intrinsics.gen:20104)
==29299==    by 0x146F3A0: llvm::Function::Function(llvm::FunctionType*, 
llvm::GlobalValue::LinkageTypes, llvm::Twine const&, llvm::Module*) 
(Function.cpp:277)
==29299==    by 0x1CD2B36: Create (Function.h:106)
==29299==    by 0x1CD2B36: 
llvm::LLParser::ParseFunctionHeader(llvm::Function*&, bool) 
(LLParser.cpp:4766)
==29299==    by 0x1CCE2C2: llvm::LLParser::ParseDeclare() (LLParser.cpp:444)
==29299==    by 0x1CCC15A: llvm::LLParser::ParseTopLevelEntities() 
(LLParser.cpp:276)
==29299==    by 0x1CCBFBF: llvm::LLParser::Run() (LLParser.cpp:74)
==29299==    by 0x1CC59D8: 
llvm::parseAssemblyInto(llvm::MemoryBufferRef, llvm::Module&, 
llvm::SMDiagnostic&, llvm::SlotMapping*) (Parser.cpp:31)
==29299==    by 0x1CC5C16: llvm::parseAssembly(llvm::MemoryBufferRef, 
llvm::SMDiagnostic&, llvm::LLVMContext&, llvm::SlotMapping*) (Parser.cpp:41)
==29299==    by 0x158C59E: llvm::parseIR(llvm::MemoryBufferRef, 
llvm::SMDiagnostic&, llvm::LLVMContext&) (IRReader.cpp:89)
==29299==    by 0x158CA61: llvm::parseIRFile(llvm::StringRef, 
llvm::SMDiagnostic&, llvm::LLVMContext&) (IRReader.cpp:102)
==29299==


More information about the llvm-dev mailing list