[PATCH] D51524: [ARM64] [Windows] Handle funclets

Reid Kleckner via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Nov 2 14:16:39 PDT 2018


rnk added a comment.

In https://reviews.llvm.org/D51524#1285854, @efriedma wrote:

> Reid, do you have an opinion on what test coverage is necessary here?


It's probably important to handle each and every kind of prologue. I don't know if there are any special corners cases for arm64 prologues, but for x64, this ended up being:

- normal prologue
- normal with -fno-omit-frame-pointer
- stack realignment caused by a highly aligned alloca
- normal with dynamic alloca or VLA
- dynamic alloca with highly aligned static alloca

SEH and C++ EH have major differences, so test both. Alternatively, you can focus on one in one patch and defer work on the other.

SEH __except blocks in particular had to do some extra work to restore SP and register state when recovering from an exception, especially when the frame has dynamic SP updates.

I still need to go back and review, but hopefully that helps.


Repository:
  rL LLVM

https://reviews.llvm.org/D51524





More information about the llvm-commits mailing list