HomePhabricator

Bitcode: derive all types used from records instead of Values.

Authored by t.p.northover on Jun 27 2019, 7:46 AM.

Description

Bitcode: derive all types used from records instead of Values.

There is existing bitcode that we need to support where the structured nature
of pointer types is used to derive the result type of some operation. For
example a GEP's operation and result will be based on its input Type.

When pointers become opaque, the BitcodeReader will still have access to this
information because it's explicitly told how to construct the more complex
types used, but this information will not be attached to any Value that gets
looked up. This changes BitcodeReader so that in all places which use type
information in this manner, it's derived from a side-table rather than from the
Value in question.

llvm-svn: 364550

Details

Committed
t.p.northoverJun 27 2019, 7:46 AM
Parents
rG7a9ca67fd556: [LiveRangeEdit] Fix build failure caused by the rL364536
Branches
Unknown
Tags
Unknown