[PATCH] D86529: [5/5] [AArch64] Generate and parse SEH assembly directives

Martin Storsjö via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Aug 26 02:03:29 PDT 2020


mstorsjo added inline comments.


================
Comment at: llvm/test/CodeGen/AArch64/lrint-conv-fp16-win.ll:7
+; CHECK-NEXT:  .seh_startepilogue
+; CHECK-NEXT:  .seh_endepilogue
 ; CHECK-NEXT:  ret
----------------
efriedma wrote:
> I think this indicates a bug somewhere else: we shouldn't be emitting seh_startepilogue in functions that don't have any other unwind info.
No, we do generate full proper directives for start/endproc, prologue and all that. It's just that the current testcase doesn't break if there's changes in the prologue of the function, but the sequence of `CHECK-NEXT` from `fcvtzs` to `ret` requires including these directives here in order not to break the test.

So for these testcases, that focus on testing some other aspect, I did the minimal changes to include the new directives only where they're needed in `CHECK-NEXT` sequences, but didn't go full out and added checks for all the generated directives. But I'll include one such case as well.

Alternatively, one could add `nounwind` attributes to the tested functions, to avoid the noise from the added directives. (Is it possible to achieve the same with some llc flag? I tried looking for one but didn't find any.)


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D86529/new/

https://reviews.llvm.org/D86529



More information about the llvm-commits mailing list