[x86/Linux] Enable gcMarkFilterVarsPinned (WIN64EXCEPTIONS) (dotnet/coreclr#11281)
authorHanjoung Lee <waterets@gmail.com>
Fri, 16 Jun 2017 00:53:44 +0000 (09:53 +0900)
committerBruce Forstall <brucefo@microsoft.com>
Fri, 16 Jun 2017 00:53:44 +0000 (17:53 -0700)
commit1c2ccba34aa77e4073435aac32ce683dc8ffadfb
tree1c0239e1abb0d78ae92c14246093dde691f06759
parentbdfb70fb57653975b383b8ea491cf6550154e60d
[x86/Linux] Enable gcMarkFilterVarsPinned (WIN64EXCEPTIONS) (dotnet/coreclr#11281)

* [x86/Linux] Enable gcMarkFilterVarsPinned

Do gcMarkFilterVarsPinned() for WIN64EXCEPTIONS

* [x86/Linux] GCInfo : Force this pointer untracked

`this` pointer is now always untracked so we can use pinned flag in tracked lifetimes.
This allows us to make the refs(inside filter) pinned to prevent from double-relocation.

* [x86/Linux] GCInfo : fix comment and formatting

* [x86/Linux] GCInfo : Update

- Force "this" pointer untracked only when "this" is generic context
- Style fixes

* [x86/Linux] GCInfo : remove this_OFFSET_FLAG

Commit migrated from https://github.com/dotnet/coreclr/commit/0c96db33ddb7d784cda9bd0368756046f436e8bc
src/coreclr/src/gcdump/i386/gcdumpx86.cpp
src/coreclr/src/inc/gcinfo.h
src/coreclr/src/jit/codegenxarch.cpp
src/coreclr/src/jit/emit.cpp
src/coreclr/src/jit/gcencode.cpp
src/coreclr/src/jit/gcinfo.cpp
src/coreclr/src/jit/jitgcinfo.h
src/coreclr/src/jit/lclvars.cpp
src/coreclr/src/vm/eetwain.cpp