================
@@ -304,6 +304,36 @@ class AArch64MCPlusBuilder : public MCPlusBuilder {
     }
   }
 
+  MCPhysReg getSafelyMaterializedAddressReg(const MCInst &Inst) const override 
{
+    switch (Inst.getOpcode()) {
+    case AArch64::ADR:
+    case AArch64::ADRP:
----------------
kbeyls wrote:

Maybe there could be a comment here about why `ADR` and `ADRP` produce a 
"safely materialized address register"? For example, "These instructions 
produce an address value in the destination register, based only on information 
in parts of the instruction encoding, i.e. based on information from read-only 
code memory. Therefore, the value in the register it writes is safe according 
to the assumed threat model"

https://github.com/llvm/llvm-project/pull/132540
_______________________________________________
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

Reply via email to