Search Issue Tracker

Fixed

Fixed in 1.8.16

Votes

0

Found in [Package]

1.8.16

Issue ID

BUR-2697

Regression

Yes

Release 1.8.16 crashes during optimisation

Package: Burst

-

Release 1.8.16 issue, the attached 7zip (unpacked to c:\ ) appears to repeat the issue with the bcl command line {{+burstc @/c/repro/response.log}} from a git bash, using a local release build of release/1.8.16 branch.

Drop the updated response.log into the unpacked directory to reduce the amount of code being compiled. 

The following entry point hash is known to cause a problem : 

e6451c09b175407d87339d3a2266d831 

(got by updating FindEntryPoints just before the return result ) :
{code:java}
result = new HashSet<EntryPointMethod>(result.Skip(21).Take(1).ToArray()); {code}
UNITY_BURST_ENTRY_POINT_METHOD_CHUNK_SIZE=1 was used to ensure one module per entry.

Callstack :
{code:java}
> burst-llvm-16.dll!llvm::Type::getTypeID() Line 137 C++
burst-llvm-16.dll!llvm::Type::isStructTy() Line 243 C++
burst-llvm-16.dll!UBAAAliasAnalysis::handle(const llvm::ExtractValueInst & instruction, llvm::SmallVector<UBAAAliasAnalysis::ResultTuple,16> & result) Line 600 C++
burst-llvm-16.dll!UBAAAliasAnalysis::getResult(const llvm::Value * const value, llvm::SmallVector<UBAAAliasAnalysis::ResultTuple,16> & result) Line 644 C++
burst-llvm-16.dll!UBAAAliasAnalysis::alias(const llvm::MemoryLocation & a, const llvm::MemoryLocation & b, llvm::AAQueryInfo & queryInfo, const llvm::Instruction * i) Line 983 C++
burst-llvm-16.dll!llvm::AAResults::Model<UBAAAliasAnalysis>::alias(const llvm::MemoryLocation & LocA, const llvm::MemoryLocation & LocB, llvm::AAQueryInfo & AAQI, const llvm::Instruction * CtxI) Line 760 C++
burst-llvm-16.dll!llvm::AAResults::alias(class llvm::MemoryLocation const &,class llvm::MemoryLocation const &,class llvm::AAQueryInfo &,class llvm::Instruction const *) Unknown
burst-llvm-16.dll!llvm::BasicAAResult::aliasGEP(class llvm::GEPOperator const *,class llvm::LocationSize,class llvm::Value const *,class llvm::LocationSize,class llvm::Value const *,class llvm::Value const *,class llvm::AAQueryInfo &) Unknown
burst-llvm-16.dll!llvm::BasicAAResult::aliasCheckRecursive(class llvm::Value const *,class llvm::LocationSize,class llvm::Value const *,class llvm::LocationSize,class llvm::AAQueryInfo &,class llvm::Value const *,class llvm::Value const *) Unknown
burst-llvm-16.dll!llvm::BasicAAResult::aliasCheck(class llvm::Value const *,class llvm::LocationSize,class llvm::Value const *,class llvm::LocationSize,class llvm::AAQueryInfo &,class llvm::Instruction const *) Unknown
burst-llvm-16.dll!llvm::BasicAAResult::alias(class llvm::MemoryLocation const &,class llvm::MemoryLocation const &,class llvm::AAQueryInfo &,class llvm::Instruction const *) Unknown
burst-llvm-16.dll!llvm::AAResults::Model<llvm::BasicAAResult>::alias(const llvm::MemoryLocation & LocA, const llvm::MemoryLocation & LocB, llvm::AAQueryInfo & AAQI, const llvm::Instruction * CtxI) Line 760 C++
burst-llvm-16.dll!llvm::AAResults::alias(class llvm::MemoryLocation const &,class llvm::MemoryLocation const &,class llvm::AAQueryInfo &,class llvm::Instruction const *) Unknown
burst-llvm-16.dll!llvm::AAResults::getModRefInfo(class llvm::StoreInst const *,class llvm::MemoryLocation const &,class llvm::AAQueryInfo &) Unknown
burst-llvm-16.dll!llvm::AAResults::getModRefInfo(class llvm::Instruction const *,class std::optional<class llvm::MemoryLocation> const &,class llvm::AAQueryInfo &) Unknown
burst-llvm-16.dll!llvm::BatchAAResults::getModRefInfo(class llvm::Instruction const *,class std::optional<class llvm::MemoryLocation> const &) Unknown {code}

  1. Resolution Note (fix version 1.8.16):

    Fixed null pointer usage in optimisation pass

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.