Add extra field to gtm_jmpbuf on x86 only
commitd92b55a26032682f9691d98cbac944ea06e0d504
authoritsimbal <itsimbal@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 17 Nov 2017 22:57:07 +0000 (17 22:57 +0000)
committeritsimbal <itsimbal@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 17 Nov 2017 22:57:07 +0000 (17 22:57 +0000)
tree0ff8632cc51a62f1347e564e5a2d05329e0aee43
parent76501cd11b45f2a2e7e2d5d29f74d597bfa4e599
Add extra field to gtm_jmpbuf on x86 only

Expand the gtm_jmpbuf structure by one word field to add
Intel CET support further. The code in sjlj.S already
allocates more space on the stack then gtm_jmpbuf needs.
Use this extra space to absorb the new field.

The structure is allocated on the stack in such a way
that eip/rsp field is overlapped with return address on
the stack. Locate the new field right before eip/rsp so
code that accesses buffer fields relative to address of
gtm_jmpbuf has its offsets unchanged.

* libitm/config/x86/target.h: Add new field (ssp).
* libitm/config/x86/sjlj.S: Change offsets.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@254907 138bc75d-0d04-0410-961f-82ee72b054a4
libitm/ChangeLog
libitm/config/x86/sjlj.S
libitm/config/x86/target.h