[MemLoc] Fix a bug causing any use of invariant.end to crash in LICM
authorPhilip Reames <listmail@philipreames.com>
Thu, 16 Aug 2018 20:48:55 +0000 (20:48 +0000)
committerPhilip Reames <listmail@philipreames.com>
Thu, 16 Aug 2018 20:48:55 +0000 (20:48 +0000)
commit684fa57ef7c1b58998afeec7298b8a861049a2dd
tree59cb171c1c761b0428bbbadb9ff9426dcc4c750c
parent8bb383f1fbb83588fe901a507e485254256886ed
[MemLoc] Fix a bug causing any use of invariant.end to crash in LICM

The fix is fairly simple, but is says something unpleasant about the usage and testing of invariant.start/end scopes that this went undetected.  To put this in perspective, *any* invariant.end in a loop flowing through LICM crashed.  I haven't bothered to figure out just how far back this goes, but it's not caused by any of the recent changes.  We're probably talking months if not years.

llvm-svn: 339936
llvm/lib/Analysis/MemoryLocation.cpp
llvm/test/Transforms/LICM/invariant.start.ll