[PATCH] D46262: Enable sibling-call optimization for functions returning structs

Dávid Bolvanský via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 20 12:28:15 PDT 2019


xbolva00 marked an inline comment as done.
xbolva00 added inline comments.


================
Comment at: lib/Target/X86/X86ISelLowering.cpp:4298
+  // Struct-return functions need to return its argument in RAX, so they can not
+  // sibcall non-struct-return functions.
+  if (isCalleeStructRet != isCallerStructRet ||
----------------
efriedma wrote:
> Not sure why the `CallerF.arg_size() != Outs.size()` check is necessary?  In any case, needs a comment to explain.
Some "args_mismatch" test was miscompiled without it , I think.


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

https://reviews.llvm.org/D46262





More information about the llvm-commits mailing list