[all-commits] [llvm/llvm-project] 9a9b64: [WinEH] Allocate space in funclets stack to save X...
Pengfei Wang via All-commits
all-commits at lists.llvm.org
Tue Nov 5 12:53:53 PST 2019
Branch: refs/heads/release/9.x
Home: https://github.com/llvm/llvm-project
Commit: 9a9b6492a66c3f83e58f5b4e451797b6baf7f3ea
https://github.com/llvm/llvm-project/commit/9a9b6492a66c3f83e58f5b4e451797b6baf7f3ea
Author: Pengfei Wang <pengfei.wang at intel.com>
Date: 2019-11-05 (Tue, 05 Nov 2019)
Changed paths:
M llvm/lib/Target/X86/X86FrameLowering.cpp
M llvm/lib/Target/X86/X86FrameLowering.h
M llvm/lib/Target/X86/X86MachineFunctionInfo.h
M llvm/lib/Target/X86/X86RegisterInfo.cpp
M llvm/test/CodeGen/X86/avx512-intel-ocl.ll
M llvm/test/CodeGen/X86/catchpad-realign-savexmm.ll
A llvm/test/CodeGen/X86/win64-funclet-savexmm.ll
M llvm/test/CodeGen/X86/x86-interrupt_cc.ll
Log Message:
-----------
[WinEH] Allocate space in funclets stack to save XMM CSRs
Summary:
This is an alternate approach to D63396
Currently funclets reuse the same stack slots that are used in the
parent function for saving callee-saved xmm registers. If the parent
function modifies a callee-saved xmm register before an excpetion is
thrown, the catch handler will overwrite the original saved value.
This patch allocates space in funclets stack for saving callee-saved xmm
registers and uses RSP instead RBP to access memory.
Signed-off-by: Pengfei Wang <pengfei.wang at intel.com>
Reviewers: rnk, RKSimon, craig.topper, annita.zhang, LuoYuanke, andrew.w.kaylor
Subscribers: hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D66596
Signed-off-by: Pengfei Wang <pengfei.wang at intel.com>
llvm-svn: 370005
(cherry picked from commit 564fb58a32a808c34d809820d00e2f23c0307a71)
More information about the All-commits
mailing list