[PATCH] D87153: [RFC] BPF: move AbstractMemberAccess and PreserveDIType passes to EP_EarlyAsPossible

Yonghong Song via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Sep 10 13:45:25 PDT 2020


yonghong-song added inline comments.


================
Comment at: llvm/lib/Target/BPF/BPFAbstractMemberAccess.cpp:105
+  // Prevent sink common which may create a PHI node for reloc globals.
+  NewInst->addAttribute(AttributeList::FunctionIndex, Attribute::NoMerge);
+  BB->getInstList().insert(Before->getIterator(), NewInst);
----------------
ast wrote:
> Instead of adding this attribute when bpf_passthrough is inserted by the compiler would it be possible to have this attribute attached to the builtin unconditionally? Meaning that the user could use such builtin in their C code and it would contain NoMerge as well ?
All the __builtin_preserve_* builtins will be gone at this phase (the first phase after clang codegen) after they are replaced by globals. So here we are dealing with cases where they may not have calls in the basic block which contains relocation globals.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D87153/new/

https://reviews.llvm.org/D87153



More information about the llvm-commits mailing list