llvm-6502/test/Transforms/RewriteStatepointsForGC
Sanjoy Das f73780ec1a [RewriteStatepointsForGC] Strip deref info after rewriting.
Summary:
Once a gc.statepoint has been rewritten to relocate live references, the
SSA values represent physical pointers instead of logical references.
Logical dereferencability does not imply physical dereferencability and
after RewriteStatepointsForGC has run any attributes that imply
dereferencability of the logical references need to be stripped.

This current approach is conservative, and can be made more precise
later if needed.  For starters, we need to strip dereferencable
attributes only from pointers that live in the GC address space.

Reviewers: reames, pgavlin

Subscribers: llvm-commits

Differential Revision: http://reviews.llvm.org/D10105

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@238883 91177308-0d34-0410-b5e6-96231b3b80d8
2015-06-02 22:33:37 +00:00
..
base-pointers-1.ll [Statepoints] Support for "patchable" statepoints. 2015-05-12 23:52:24 +00:00
base-pointers-2.ll [Statepoints] Support for "patchable" statepoints. 2015-05-12 23:52:24 +00:00
base-pointers-3.ll [Statepoints] Support for "patchable" statepoints. 2015-05-12 23:52:24 +00:00
base-pointers-4.ll [Statepoints] Support for "patchable" statepoints. 2015-05-12 23:52:24 +00:00
base-pointers-5.ll [Statepoints] Support for "patchable" statepoints. 2015-05-12 23:52:24 +00:00
base-pointers-6.ll [Statepoints] Support for "patchable" statepoints. 2015-05-12 23:52:24 +00:00
base-pointers-7.ll [Statepoints] Support for "patchable" statepoints. 2015-05-12 23:52:24 +00:00
base-pointers-8.ll [Statepoints] Support for "patchable" statepoints. 2015-05-12 23:52:24 +00:00
base-pointers-9.ll [Statepoints] Support for "patchable" statepoints. 2015-05-12 23:52:24 +00:00
base-pointers-10.ll [Statepoints] Support for "patchable" statepoints. 2015-05-12 23:52:24 +00:00
base-pointers-11.ll [Statepoints] Support for "patchable" statepoints. 2015-05-12 23:52:24 +00:00
base-pointers.ll [Statepoints] Support for "patchable" statepoints. 2015-05-12 23:52:24 +00:00
basics.ll [RewriteStatepointsForGC] For some values (like gep's and bitcasts) it's cheaper to clone them after statepoint than to emit proper relocates for them. This change implements this logic. There is alredy similar optimization in CodeGenPrepare, but doing so during RewriteStatepointsForGC allows to capture more opprtunities such as relocates in loops and longer instruction chains. 2015-05-19 15:59:05 +00:00
constants.ll [Statepoints] Support for "patchable" statepoints. 2015-05-12 23:52:24 +00:00
deref-pointers.ll [RewriteStatepointsForGC] Strip deref info after rewriting. 2015-06-02 22:33:37 +00:00
gc_relocate_creation.ll [Statepoints] Support for "patchable" statepoints. 2015-05-12 23:52:24 +00:00
live-vector.ll [Statepoints] Support for "patchable" statepoints. 2015-05-12 23:52:24 +00:00
liveness-basics.ll [RewriteStatepointsForGC] For some values (like gep's and bitcasts) it's cheaper to clone them after statepoint than to emit proper relocates for them. This change implements this logic. There is alredy similar optimization in CodeGenPrepare, but doing so during RewriteStatepointsForGC allows to capture more opprtunities such as relocates in loops and longer instruction chains. 2015-05-19 15:59:05 +00:00
preprocess.ll [Statepoints] Support for "patchable" statepoints. 2015-05-12 23:52:24 +00:00
relocate_invoke_result.ll [Statepoints] Support for "patchable" statepoints. 2015-05-12 23:52:24 +00:00
relocation.ll [RewriteStatepointsForGC] For some values (like gep's and bitcasts) it's cheaper to clone them after statepoint than to emit proper relocates for them. This change implements this logic. There is alredy similar optimization in CodeGenPrepare, but doing so during RewriteStatepointsForGC allows to capture more opprtunities such as relocates in loops and longer instruction chains. 2015-05-19 15:59:05 +00:00
rematerialize-derived-pointers.ll [RewriteStatepointsForGC] For some values (like gep's and bitcasts) it's cheaper to clone them after statepoint than to emit proper relocates for them. This change implements this logic. There is alredy similar optimization in CodeGenPrepare, but doing so during RewriteStatepointsForGC allows to capture more opprtunities such as relocates in loops and longer instruction chains. 2015-05-19 15:59:05 +00:00