diff options
author | Chris Bieneman <beanz@apple.com> | 2016-03-16 23:17:54 +0000 |
---|---|---|
committer | Chris Bieneman <beanz@apple.com> | 2016-03-16 23:17:54 +0000 |
commit | 671d0dda7dcb70115a887936e6d8e58b426bd4c2 (patch) | |
tree | bbdcee110a7b5f05cfadb1ac0bd704ed394f55ce /llvm/test | |
parent | 43e33d61c681f221b03fac71d21044173e33cb0c (diff) | |
download | bcm5719-llvm-671d0dda7dcb70115a887936e6d8e58b426bd4c2.tar.gz bcm5719-llvm-671d0dda7dcb70115a887936e6d8e58b426bd4c2.zip |
Upgrade TBAA *before* upgrading intrinsics
Summary: If TBAA is on an intrinsic and it gets upgraded and drops the TBAA we hit an odd assert. We should just upgrade the TBAA first because it doesn't have side-effects.
Reviewers: reames, apilipenko, manmanren
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D18229
llvm-svn: 263673
Diffstat (limited to 'llvm/test')
-rw-r--r-- | llvm/test/Assembler/auto_upgrade_intrinsics.ll | 10 | ||||
-rw-r--r-- | llvm/test/Bitcode/auto_upgrade_intrinsics.bc | bin | 0 -> 1672 bytes |
2 files changed, 7 insertions, 3 deletions
diff --git a/llvm/test/Assembler/auto_upgrade_intrinsics.ll b/llvm/test/Assembler/auto_upgrade_intrinsics.ll index 43fe7e2d460..ed2f6402f60 100644 --- a/llvm/test/Assembler/auto_upgrade_intrinsics.ll +++ b/llvm/test/Assembler/auto_upgrade_intrinsics.ll @@ -63,7 +63,7 @@ declare <2 x double> @llvm.masked.load.v2f64(<2 x double>* %ptrs, i32, <2 x i1> define <2 x double> @tests.masked.load(<2 x double>* %ptr, <2 x i1> %mask, <2 x double> %passthru) { ; CHECK-LABEL: @tests.masked.load( ; CHECK: @llvm.masked.load.v2f64.p0v2f64 - %res = call <2 x double> @llvm.masked.load.v2f64(<2 x double>* %ptr, i32 1, <2 x i1> %mask, <2 x double> %passthru) + %res = call <2 x double> @llvm.masked.load.v2f64(<2 x double>* %ptr, i32 1, <2 x i1> %mask, <2 x double> %passthru), !tbaa !0 ret <2 x double> %res } @@ -72,6 +72,10 @@ declare void @llvm.masked.store.v2f64(<2 x double> %val, <2 x double>* %ptrs, i3 define void @tests.masked.store(<2 x double>* %ptr, <2 x i1> %mask, <2 x double> %val) { ; CHECK-LABEL: @tests.masked.store( ; CHECK: @llvm.masked.store.v2f64.p0v2f64 - call void @llvm.masked.store.v2f64(<2 x double> %val, <2 x double>* %ptr, i32 3, <2 x i1> %mask) + call void @llvm.masked.store.v2f64(<2 x double> %val, <2 x double>* %ptr, i32 3, <2 x i1> %mask), !tbaa !0 ret void -}
\ No newline at end of file +} + +!0 = !{!"omnipotent char", !1} +!1 = !{!"Simple C/C++ TBAA"} +!2 = !{!"double", !0} diff --git a/llvm/test/Bitcode/auto_upgrade_intrinsics.bc b/llvm/test/Bitcode/auto_upgrade_intrinsics.bc Binary files differnew file mode 100644 index 00000000000..9205c8ae4d3 --- /dev/null +++ b/llvm/test/Bitcode/auto_upgrade_intrinsics.bc |