[PATCH] D25022: Register Calling Convention - CodeGen Basic Additions
Oren Ben Simhon via llvm-commits
llvm-commits at lists.llvm.org
Wed Oct 5 04:24:07 PDT 2016
oren_ben_simhon marked 3 inline comments as done.
oren_ben_simhon added inline comments.
> mkuper wrote in X86CallingConv.td:37
> This is really odd. Maybe fix AssignToReg?
AssignToReg, takes the list of registers and creates a static constant list of registers. For example:
static const MCPhysReg RegList1[] = {
X86::ECX, X86::EDX, X86::R8D, X86::R9D
};
Empty static constant list is forbidden in C.
Changing the expansion of AssignToReg (to check if the list is empty) will require LLVM infrastructure change.
I would prefer to leave it out of the scope of this review.
> mkuper wrote in X86CallingConv.td:95
> If I'm reading this correctly, with this definition, you'll pass f80 in an incompatible way - which sounds fairly bad. The right thing to do would be to either implement it in one go, or leave a TODO, but refuse to compile cases which use f80.
> Otherwise, once you want to fix this, you'll have an unsolvable compatibility problem, since you can't be compatible with both old versions of clang, and with ICC.
Anyway, i added an assertion for the unhandled types.
Repository:
rL LLVM
https://reviews.llvm.org/D25022
More information about the llvm-commits
mailing list