[PATCH] D132073: [CodeGen] Zero out only modified registers

Bill Wendling via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Sep 1 11:29:54 PDT 2022


void added a comment.

In D132073#3759740 <https://reviews.llvm.org/D132073#3759740>, @efriedma wrote:

> Can you give an example of a function that is miscompiled without your patch, and is not miscompiled with you patch?  I don't see anything obviously wrong with the way we're compiling the given testcases without the patch.

I believe I have it now. I had to find the issue again... PTAL



================
Comment at: llvm/test/CodeGen/X86/zero-call-used-regs.ll:13-25
+; I386-NEXT:    .cfi_def_cfa_offset 8
+; I386-NEXT:    pushl %ebx
+; I386-NEXT:    .cfi_def_cfa_offset 12
+; I386-NEXT:    pushl %edi
+; I386-NEXT:    .cfi_def_cfa_offset 16
+; I386-NEXT:    pushl %esi
+; I386-NEXT:    .cfi_def_cfa_offset 20
----------------
void wrote:
> nickdesaulniers wrote:
> > consider adding the `nounwind` fn attr to your test functions to eliminate all these obnoxious/verbose CFI directives stemming from `-fasynchronous-unwind-tables`. That should help with readability of the tests significantly.
> It didn't work. :-/
> It didn't work. :-/

It was `uwtable`. I removed it.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D132073



More information about the llvm-commits mailing list