[PATCH] D42512: [X86] When using Win64 ABI, exit with error if SSE is disabled for varargs

James Y Knight via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Apr 4 11:58:17 PDT 2019


jyknight added a comment.

This patch is not correct -- the crash is not with varargs functions specifically, llvm also crashes for a function declared to explicitly take a float/double. The Win64 calling convention code assigns values to xmm registers, but it should not when sse is disabled.

Additionally, this patch unnecessarily breaks calling vararg functions with _integer_ arguments, which in particular, the EDK2 project does, with windows ABI functions and sse disabled. So, since this breaks existing working code, I'm going to revert this change now, and then propose a different change to address the crash.


Repository:
  rL LLVM

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

https://reviews.llvm.org/D42512





More information about the llvm-commits mailing list