[PATCH] D69372: [X86][VARARG] Avoid spilling xmm vararg arguments.
Reid Kleckner via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Feb 10 17:16:11 PST 2020
rnk added inline comments.
================
Comment at: llvm/lib/Target/X86/X86ISelLowering.cpp:3711
+ VarargXMMOps.push_back(ALVal);
+ VarargXMMOps.push_back(
+ DAG.getIntPtrConstant(FuncInfo->getThunkRegSaveFrameIndex(), dl));
----------------
I haven't reviewed all of this code, but we have to find some way to refactor LowerCall. It was already poorly factored and long, but this is just too much complexity, too many lines of code. We need to find some way to separate concerns.
================
Comment at: llvm/test/CodeGen/X86/musttail-varargs.ll:299-300
-; This thunk shouldn't require any spills and reloads, assuming the register
-; allocator knows what it's doing.
----------------
This seems unfortunate. :( Does all this go away if you put the "thunk" attribute on it? Everything in this file is meant to be a test for universal thunks, so adding the attribute is reasonable.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D69372/new/
https://reviews.llvm.org/D69372
More information about the llvm-commits
mailing list