[x86/Linux] Do NOT use pXXX fields (dotnet/coreclr#9121)
authorJonghyun Park <parjong@gmail.com>
Thu, 2 Feb 2017 09:41:46 +0000 (18:41 +0900)
committerJan Vorlicek <janvorli@microsoft.com>
Thu, 2 Feb 2017 09:41:46 +0000 (10:41 +0100)
commit39579c38c3bd189e37721d24c1f9f046a946aaf6
tree085c5f4000d29e55f5b8bb01697c09731e450030
parent8c4c225953d35e3cd4a7a579fe50c980e96e6d9b
[x86/Linux] Do NOT use pXXX fields (dotnet/coreclr#9121)

* [x86/Linux] Do NOT use pXXX fields

* Fix x86/Windows build error

* Fix another x86/Windows build error

* Fix typo

* Do NOT trash EBP

* Reflect the original semantics of EHContext::UpdateFrame

* Unify ReadXXX/LocateXXX into GetXXXLocation, and RestoreXXX/TrashXXX into SetXXXLocation

* Revert the order of pXXX fields

* Revise cgenx86.cpp

* Revert unnecessary changes

* Remove direct accesses to CALLEE_SAVED_REGISTERS_TAG

* Do NOT update pCurrentContext inside SetXXXLocation

* Update RegPtr via offset

* Unify REG_METHODS (and revise UpdateRegDisplay methods accordingly)

* Revise per feedback

* Fix x86/Windows build error

Commit migrated from https://github.com/dotnet/coreclr/commit/009c70f81d2899848ea254fd39969de91fd33519
13 files changed:
src/coreclr/src/debug/daccess/dacdbiimplstackwalk.cpp
src/coreclr/src/debug/ee/debugger.inl
src/coreclr/src/debug/ee/i386/x86walker.cpp
src/coreclr/src/debug/shared/i386/primitives.cpp
src/coreclr/src/inc/regdisp.h
src/coreclr/src/pal/inc/pal.h
src/coreclr/src/unwinder/i386/unwinder_i386.cpp
src/coreclr/src/vm/eetwain.cpp
src/coreclr/src/vm/frames.cpp
src/coreclr/src/vm/gccover.cpp
src/coreclr/src/vm/i386/cgencpu.h
src/coreclr/src/vm/i386/cgenx86.cpp
src/coreclr/src/vm/proftoeeinterfaceimpl.cpp