diff options
Diffstat (limited to 'llvm/test/Assembler/auto_upgrade_intrinsics.ll')
| -rw-r--r-- | llvm/test/Assembler/auto_upgrade_intrinsics.ll | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/llvm/test/Assembler/auto_upgrade_intrinsics.ll b/llvm/test/Assembler/auto_upgrade_intrinsics.ll index af211721107..2f0f4f779e7 100644 --- a/llvm/test/Assembler/auto_upgrade_intrinsics.ll +++ b/llvm/test/Assembler/auto_upgrade_intrinsics.ll @@ -76,6 +76,21 @@ define void @tests.masked.store(<2 x double>* %ptr, <2 x i1> %mask, <2 x double> ret void } + +declare {}* @llvm.invariant.start(i64, i8* nocapture) nounwind readonly +declare void @llvm.invariant.end({}*, i64, i8* nocapture) nounwind + +define void @tests.invariant.start.end() { + ; CHECK-LABEL: @tests.invariant.start.end( + %a = alloca i8 + %i = call {}* @llvm.invariant.start(i64 1, i8* %a) + ; CHECK: call {}* @llvm.invariant.start.p0i8 + store i8 0, i8* %a + call void @llvm.invariant.end({}* %i, i64 1, i8* %a) + ; CHECK: call void @llvm.invariant.end.p0i8 + ret void +} + @__stack_chk_guard = external global i8* declare void @llvm.stackprotectorcheck(i8**) |

