llvm-project/clang/test/CodeGen/x86_64-mno-sse.c
Reid Kleckner 43bbeb4c9f Issue diagnostics when returning FP values on x86_64 without SSE1/2
Avoid using report_fatal_error, because it will ask the user to file a
bug. If the user attempts to disable SSE on x86_64 and them use floating
point, that's a bug in their code, not a bug in the compiler.

This is just a start. There are other ways to crash the backend in this
configuration, but they should be updated to follow this pattern.

Differential Revision: https://reviews.llvm.org/D27522

llvm-svn: 302835
2017-05-11 22:43:02 +00:00

16 lines
449 B
C

// RUN: %clang_cc1 -triple x86_64-linux -target-feature -sse -target-feature -sse2 -S -o /dev/null -verify %s
// REQUIRES: x86-registered-target
double f1(void) { // expected-error {{SSE register return with SSE disabled}}
return 1.4;
}
extern double g;
void f2(void) { // expected-error {{SSE register return with SSE disabled}}
g = f1();
}
void take_double(double);
void pass_double(void) {
// FIXME: Still asserts.
//take_double(1.5);
}