OSDN Git Service

Make stackmap machineinstrs clobber the scratch regs too.
authorAndrew Trick <atrick@apple.com>
Wed, 5 Mar 2014 07:08:16 +0000 (07:08 +0000)
committerAndrew Trick <atrick@apple.com>
Wed, 5 Mar 2014 07:08:16 +0000 (07:08 +0000)
commita6ace00520a9df552ecfec6557f830ef805bea37
treeff14f611c8ae9461fe2de43dcb308ea7c0aa82b5
parent98f54c09d086f76fa0ec81fc2c01d45bfe5a3739
Make stackmap machineinstrs clobber the scratch regs too.

Patchpoints already did this. Doing it for stackmaps is a convenience
for the runtime in the event that it needs to scratch register to
patch or perform a runtime call thunk.

Unlike patchpoints, we just assume the AnyRegCC calling
convention. This is the only language and target independent calling
convention specific to stackmaps so makes sense.  Although the calling
convention is not currently used to select the scratch registers.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@202943 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/SelectionDAG/InstrEmitter.cpp
test/CodeGen/X86/stackmap.ll