Revert "[AArch64][GlobalISel] Lower formal arguments of AAPCS & ms_abi variadic funct...
authorMartin Storsjö <martin@martin.st>
Tue, 13 Dec 2022 09:36:12 +0000 (11:36 +0200)
committerMartin Storsjö <martin@martin.st>
Tue, 13 Dec 2022 09:37:35 +0000 (11:37 +0200)
commit899739cdbd6646fa48b4b7ad251eb52143d909ba
tree3076715f8b0065a0353757662323324d4c208a29
parentde59d222abb2c8d65f6225b314fa6486b1b66809
Revert "[AArch64][GlobalISel] Lower formal arguments of AAPCS & ms_abi variadic functions."

This reverts commit 56fd846f370adf16bea333b12637038ea2f3c225.

This commit regressed handling of functions with floats as arguments,
reproducible e.g. like this:

$ cat test.c
double func(double f) {
    return f;
}
$ clang -target aarch64-windows -S -o - test.c -fno-asynchronous-unwind-tables
func:
sub sp, sp, #16
str x0, [sp, #8]
ldr d0, [sp, #8]
add sp, sp, #16
ret
llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
llvm/lib/Target/AArch64/AArch64ISelLowering.h
llvm/lib/Target/AArch64/GISel/AArch64CallLowering.cpp
llvm/lib/Target/AArch64/GISel/AArch64CallLowering.h
llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
llvm/test/CodeGen/AArch64/GlobalISel/aapcs_vararg_frame.ll [deleted file]
llvm/test/CodeGen/AArch64/aarch64_win64cc_vararg.ll