[PATCH] D14407: [WinEH] Mark funclet entries and exits as clobbering all registers

Reid Kleckner via llvm-commits llvm-commits at lists.llvm.org
Thu Nov 5 16:36:02 PST 2015


rnk created this revision.
rnk added reviewers: MatzeB, qcolombet, JosephTremoulet, majnemer.
rnk added a subscriber: llvm-commits.
Herald added a subscriber: MatzeB.

In this implementation, LiveIntervalAnalysis invents a few register
masks on basic block boundaries that preserve no registers. The nice
thing about this is that it prevents the prologue inserter from thinking
it needs to spill all XMM CSRs, because it doesn't see any explicit
physreg defs in the MI.

http://reviews.llvm.org/D14407

Files:
  include/llvm/Target/TargetRegisterInfo.h
  lib/CodeGen/LiveIntervalAnalysis.cpp
  lib/Target/ARM/ARMBaseRegisterInfo.h
  lib/Target/PowerPC/PPCRegisterInfo.h
  lib/Target/X86/X86RegisterInfo.h
  test/CodeGen/X86/catchpad-regmask.ll
  test/CodeGen/X86/cleanuppad-large-codemodel.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D14407.39446.patch
Type: text/x-patch
Size: 10904 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20151106/adf66f42/attachment.bin>


More information about the llvm-commits mailing list