[llvm] [DirectX] Make dx.RawBuffer an op that can't be replaced (PR #154620)

Farzon Lotfi via llvm-commits llvm-commits at lists.llvm.org
Wed Aug 27 12:50:46 PDT 2025


================
@@ -3852,6 +3852,10 @@ bool llvm::canReplaceOperandWithVariable(const Instruction *I, unsigned OpIdx) {
   if (I->isLifetimeStartOrEnd())
     return false;
 
+  if (auto *TT = dyn_cast<TargetExtType>(Op->getType());
+      TT && TT->hasProperty(TargetExtType::Property::NoReplacement))
+    return false;
----------------
farzonl wrote:

Added a unit test!

https://github.com/llvm/llvm-project/pull/154620


More information about the llvm-commits mailing list