OSDN Git Service

Stackmap shadows should consider call returns a branch target.
authorPete Cooper <peter_cooper@apple.com>
Mon, 27 Oct 2014 19:40:35 +0000 (19:40 +0000)
committerPete Cooper <peter_cooper@apple.com>
Mon, 27 Oct 2014 19:40:35 +0000 (19:40 +0000)
commit7476f9c5134a7170ca53561d20e9a19adef251f8
treebc25c5c395a7de4821bbf3ebc9e9da3ddc6450cb
parentb11c5b1078eea128a2b2e80c7bf43017f2c4552b
Stackmap shadows should consider call returns a branch target.

To avoid emitting too many nops, a stackmap shadow can include emitted instructions in the shadow, but these must not include branch targets.

A return from a call should count as a branch target as patching over the instructions after the call would lead to incorrect behaviour for threads currently making that call, when they return.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@220710 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/X86/X86MCInstLower.cpp
test/CodeGen/X86/stackmap-shadow-optimization.ll