llvm-project/llvm/test/Transforms/WholeProgramDevirt
Nikita Popov f8aaec19e6 [OpaquePtr] Support forward references in textual IR
Currently, LLParser will create a Function/GlobalVariable forward
reference based on the desired pointer type and then modify it when
it is declared. With opaque pointers, we generally do not know the
correct type to use until we see the declaration.

Solve this by creating the forward reference with a dummy type, and
then performing a RAUW with the correct Function/GlobalVariable when
it is declared. The approach is adopted from
b5b55963f6.

This results in a change to the use list order, which is why we see
test changes on some module passes that are not stable under use list
reordering.

Differential Revision: https://reviews.llvm.org/D104950
2021-06-29 20:10:31 +02:00
..
Inputs
bad-read-from-vtable.ll
branch-funnel-threshold.ll
branch-funnel.ll [OpaquePtr] Support forward references in textual IR 2021-06-29 20:10:31 +02:00
constant-arg.ll
devirt-single-impl-check.ll
devirt-single-impl-multiple-assumes.ll [WPD] Don't optimize calls more than once 2021-06-24 13:28:09 -07:00
devirt-single-impl.ll
devirt-single-impl2.ll
expand-check.ll
export-nothing.ll
export-single-impl.ll
export-uniform-ret-val.ll
export-unique-ret-val.ll
export-unsuccessful-checked.ll
export-vcp.ll
import-indir.ll
import-no-dominating-assume.ll
import.ll
non-constant-vtable.ll
pointer-vtable.ll
soa-vtable.ll
struct-vtable.ll
uniform-retval-invoke.ll
uniform-retval-multiple-assumes.ll [WPD] Don't optimize calls more than once 2021-06-24 13:28:09 -07:00
uniform-retval.ll
unique-retval-multiple-assumes.ll [WPD] Don't optimize calls more than once 2021-06-24 13:28:09 -07:00
unique-retval-same-vtable.ll
unique-retval.ll
vcp-accesses-memory.ll
vcp-decl.ll
vcp-no-this.ll
vcp-non-constant-arg.ll
vcp-too-wide-ints.ll
vcp-type-mismatch.ll
vcp-uses-this.ll
virtual-const-prop-begin.ll [OpaquePtr] Support forward references in textual IR 2021-06-29 20:10:31 +02:00
virtual-const-prop-check.ll [OpaquePtr] Support forward references in textual IR 2021-06-29 20:10:31 +02:00
virtual-const-prop-end.ll [OpaquePtr] Support forward references in textual IR 2021-06-29 20:10:31 +02:00
virtual-const-prop-multiple-assumes.ll [WPD] Don't optimize calls more than once 2021-06-24 13:28:09 -07:00
vtable-decl.ll