[PATCH] D26595: IR: Change PointerType to derive from Type rather than SequentialType.

Peter Collingbourne via llvm-commits llvm-commits at lists.llvm.org
Sun Nov 13 13:24:14 PST 2016


pcc created this revision.
pcc added a reviewer: dblaikie.
pcc added a subscriber: llvm-commits.
pcc added a dependency: D26594: IR: Change the gep_type_iterator API to avoid always exposing the "current" type..
Herald added a subscriber: mzolotukhin.

As proposed on llvm-dev:
http://lists.llvm.org/pipermail/llvm-dev/2016-October/106640.html

This is for a couple of reasons:

- Values of type PointerType are unlike the other SequentialTypes (arrays and vectors) in that they do not hold values of the element type. By moving PointerType we can unify certain aspects of how the other SequentialTypes are handled.
- PointerType will have no place in the SequentialType hierarchy once pointee types are removed, so this is a necessary step towards removing pointee types.

Depends on https://reviews.llvm.org/D26594


https://reviews.llvm.org/D26595

Files:
  llvm/docs/ProgrammersManual.rst
  llvm/include/llvm/IR/DerivedTypes.h
  llvm/include/llvm/IR/GetElementPtrTypeIterator.h
  llvm/include/llvm/IR/Instructions.h
  llvm/include/llvm/IR/Type.h
  llvm/lib/Analysis/ScalarEvolution.cpp
  llvm/lib/IR/ConstantFold.cpp
  llvm/lib/IR/Constants.cpp
  llvm/lib/IR/Core.cpp
  llvm/lib/IR/Type.cpp
  llvm/lib/Linker/IRMover.cpp
  llvm/lib/Target/Hexagon/HexagonCommonGEP.cpp
  llvm/lib/Transforms/IPO/ArgumentPromotion.cpp
  llvm/lib/Transforms/IPO/GlobalOpt.cpp
  llvm/lib/Transforms/Scalar/SROA.cpp
  llvm/lib/Transforms/Utils/FunctionComparator.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D26595.77757.patch
Type: text/x-patch
Size: 19284 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20161113/5046c7fd/attachment.bin>


More information about the llvm-commits mailing list