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

Francis Visoiu Mistrih via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jan 24 17:13:06 PST 2018


thegameg added inline comments.


================
Comment at: lib/Target/X86/X86ISelLowering.cpp:3565
+          report_fatal_error(
+              "Win64 ABI varargs functions require SSE to be enabled");
         // Win64 ABI requires argument XMM reg to be copied to the corresponding
----------------
What @rnk ended up doing in [[ https://reviews.llvm.org/rL302835 | r302835 ]] is emit a diagnostic (you can probably re-use `errorUnsupported`). The inconvenient with a diagnostic is that you might hit some asserts and you might have to set up some dummy state to satisfy the rest of the function. The advantage is that, if this is reached through a clang invocation the diagnostic will show up as a nice error while `report_fatal_error` will show up as a crash instructing the user to file a bug report.


Repository:
  rL LLVM

https://reviews.llvm.org/D42512





More information about the llvm-commits mailing list