diff --git a/llvm/include/llvm/IR/IntrinsicsNVVM.td b/llvm/include/llvm/IR/IntrinsicsNVVM.td --- a/llvm/include/llvm/IR/IntrinsicsNVVM.td +++ b/llvm/include/llvm/IR/IntrinsicsNVVM.td @@ -1582,19 +1582,23 @@ // isspacep.{const, global, local, shared} def int_nvvm_isspacep_const - : DefaultAttrsIntrinsic<[llvm_i1_ty], [llvm_ptr_ty], [IntrNoMem, IntrSpeculatable], + : DefaultAttrsIntrinsic<[llvm_i1_ty], [llvm_ptr_ty], + [IntrNoMem, IntrSpeculatable, NoCapture>], "llvm.nvvm.isspacep.const">, ClangBuiltin<"__nvvm_isspacep_const">; def int_nvvm_isspacep_global - : DefaultAttrsIntrinsic<[llvm_i1_ty], [llvm_ptr_ty], [IntrNoMem, IntrSpeculatable], + : DefaultAttrsIntrinsic<[llvm_i1_ty], [llvm_ptr_ty], + [IntrNoMem, IntrSpeculatable, NoCapture>], "llvm.nvvm.isspacep.global">, ClangBuiltin<"__nvvm_isspacep_global">; def int_nvvm_isspacep_local - : DefaultAttrsIntrinsic<[llvm_i1_ty], [llvm_ptr_ty], [IntrNoMem, IntrSpeculatable], + : DefaultAttrsIntrinsic<[llvm_i1_ty], [llvm_ptr_ty], + [IntrNoMem, IntrSpeculatable, NoCapture>], "llvm.nvvm.isspacep.local">, ClangBuiltin<"__nvvm_isspacep_local">; def int_nvvm_isspacep_shared - : DefaultAttrsIntrinsic<[llvm_i1_ty], [llvm_ptr_ty], [IntrNoMem, IntrSpeculatable], + : DefaultAttrsIntrinsic<[llvm_i1_ty], [llvm_ptr_ty], + [IntrNoMem, IntrSpeculatable, NoCapture>], "llvm.nvvm.isspacep.shared">, ClangBuiltin<"__nvvm_isspacep_shared">;