================
@@ -1085,6 +1085,14 @@ class CodeGenModule : public CodeGenTypeCache {
   /// space, target-specific global or constant address space may be returned.
   LangAS GetGlobalVarAddressSpace(const VarDecl *D);
 
+  /// Return whether loads from an address space are invariant.
+  bool isInvariantAddressSpace(LangAS AS) const {
+    return AS == LangAS::opencl_constant || AS == LangAS::cuda_constant;
+  }
+
+  /// Return whether loads from a global variable are invariant.
+  bool isGlobalVarInvariant(const VarDecl *D);
+
----------------
keshavvinayak01 wrote:

@arsenm `isGlobalVarInvariant` keeps address-space recovery and classification 
out of the CodeGen call site.

https://github.com/llvm/llvm-project/pull/218356
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to