]> granicus.if.org Git - llvm/commit
IR: Change PointerType to derive from Type rather than SequentialType.
authorPeter Collingbourne <peter@pcc.me.uk>
Fri, 2 Dec 2016 03:05:41 +0000 (03:05 +0000)
committerPeter Collingbourne <peter@pcc.me.uk>
Fri, 2 Dec 2016 03:05:41 +0000 (03:05 +0000)
commit9c9ec72b63f4f32fb5a38d4f50f7e3ae35e90ebd
treeaef19244470e17c9481bd2afd251f3901fa434a0
parentf5bbb38c1a20d29b0207bc50932bd55804c379e5
IR: Change PointerType to derive from Type rather than SequentialType.

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.

Differential Revision: https://reviews.llvm.org/D26595

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@288462 91177308-0d34-0410-b5e6-96231b3b80d8
docs/ProgrammersManual.rst
include/llvm/IR/DerivedTypes.h
include/llvm/IR/Instructions.h
include/llvm/IR/Type.h
lib/Analysis/ScalarEvolution.cpp
lib/IR/ConstantFold.cpp
lib/IR/Core.cpp
lib/IR/Type.cpp
lib/Target/Hexagon/HexagonCommonGEP.cpp
lib/Transforms/IPO/ArgumentPromotion.cpp
lib/Transforms/Scalar/SROA.cpp