OSDN Git Service

[PlaceSafepoints] Introduce a -spp-no-statepoints flag
authorSanjoy Das <sanjoy@playingwithpointers.com>
Fri, 22 Jan 2016 21:02:55 +0000 (21:02 +0000)
committerSanjoy Das <sanjoy@playingwithpointers.com>
Fri, 22 Jan 2016 21:02:55 +0000 (21:02 +0000)
commitdaee17d68a3e834d14ac742e2dad92cee476248b
treeabc36c5aeb568cdc39adc8313ebf98451ed020c2
parent5c32749d7b5cc03745a310e5917b811c3eeae711
[PlaceSafepoints] Introduce a -spp-no-statepoints flag

Summary:
This change adds a `-spp-no-statepoints` flag to PlaceSafepoints that
bypasses the code that wraps newly introduced polls and existing calls
in gc.statepoint.  With `-spp-no-statepoints` enabled, PlaceSafepoints
effectively becomes a safpeoint **poll** insertion pass.

The eventual goal is to "constant fold" this option, along with
`-rs4gc-use-deopt-bundles` to `true`, once clients using gc.statepoint
are okay doing so.

Reviewers: pgavlin, reames, JosephTremoulet

Subscribers: sanjoy, mcrosier, llvm-commits

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@258551 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Transforms/Scalar/PlaceSafepoints.cpp
test/Transforms/PlaceSafepoints/no-statepoints.ll [new file with mode: 0644]