[PATCH] D67626: [IR] Merge metadata manipulation code into Value

Serge Pavlov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Sep 16 09:33:48 PDT 2019


sepavloff created this revision.
sepavloff added reviewers: rnk, pcc, bkramer, dexonsmith, aprantl.
Herald added a subscriber: hiraditya.
Herald added a project: LLVM.

Now there are two main classes in Value hierarchy, which support metadata,
these are Instruction and GlobalObject. They implement different APIs for
metadata manipulation, which however substantially overlap. Implementation
of metadata support for new Value descendant would require creation of one
more API with almost the same functionality.

This change moves common metadata manipulation code into Value, so that
any descendant class could have metadata support.

No functional changes intended.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D67626

Files:
  llvm/include/llvm/IR/GlobalObject.h
  llvm/include/llvm/IR/Instruction.h
  llvm/include/llvm/IR/Value.h
  llvm/lib/IR/Core.cpp
  llvm/lib/IR/Instruction.cpp
  llvm/lib/IR/LLVMContextImpl.cpp
  llvm/lib/IR/LLVMContextImpl.h
  llvm/lib/IR/Metadata.cpp
  llvm/lib/IR/Value.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D67626.220353.patch
Type: text/x-patch
Size: 31368 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190916/b0d50514/attachment-0001.bin>


More information about the llvm-commits mailing list