Make @llvm.invariant.start not be readonly, so that it has side-effects. This

unbreaks test/Transforms/InstCombine/invariant.ll which was broken by r120382.
This is a fix-forward to do what I think Chris intended.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120388 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Nick Lewycky 2010-11-30 04:13:41 +00:00
parent bb7b23f5b7
commit 29b6cb40c1
2 changed files with 2 additions and 2 deletions

View File

@ -7506,7 +7506,7 @@ LLVM</a>.</p>
<h5>Syntax:</h5> <h5>Syntax:</h5>
<pre> <pre>
declare {}* @llvm.invariant.start(i64 &lt;size&gt;, i8* nocapture &lt;ptr&gt;) readonly declare {}* @llvm.invariant.start(i64 &lt;size&gt;, i8* nocapture &lt;ptr&gt;)
</pre> </pre>
<h5>Overview:</h5> <h5>Overview:</h5>

View File

@ -436,7 +436,7 @@ def int_lifetime_end : Intrinsic<[],
[IntrReadWriteArgMem, NoCapture<1>]>; [IntrReadWriteArgMem, NoCapture<1>]>;
def int_invariant_start : Intrinsic<[llvm_descriptor_ty], def int_invariant_start : Intrinsic<[llvm_descriptor_ty],
[llvm_i64_ty, llvm_ptr_ty], [llvm_i64_ty, llvm_ptr_ty],
[IntrReadArgMem, NoCapture<1>]>; [IntrReadWriteArgMem, NoCapture<1>]>;
def int_invariant_end : Intrinsic<[], def int_invariant_end : Intrinsic<[],
[llvm_descriptor_ty, llvm_i64_ty, [llvm_descriptor_ty, llvm_i64_ty,
llvm_ptr_ty], llvm_ptr_ty],