summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.target
diff options
context:
space:
mode:
authoruros <uros@138bc75d-0d04-0410-961f-82ee72b054a4>2007-06-18 22:32:56 +0000
committeruros <uros@138bc75d-0d04-0410-961f-82ee72b054a4>2007-06-18 22:32:56 +0000
commit69ddc71a33bfa34b3d70d8a569ac77c39c8ec6e3 (patch)
tree6bc1912643d3e680f0d78aa2e29d414b810d9e80 /gcc/testsuite/gcc.target
parent0c032b466756b9f8bf6e4304e25d72a24de573c6 (diff)
downloadgcc-69ddc71a33bfa34b3d70d8a569ac77c39c8ec6e3.tar.gz
PR target/32389
* config/i386/i386.h (enum ix86_stack_slot): Add SLOT_VIRTUAL. * config/i386/i386.c (assign_386_stack_local): Assert that SLOT_VIRTUAL is valid only before virtual regs are instantiated. (ix86_expand_builtin) [IX86_BUILTIN_LDMXCSR, IX86_BUILTIN_STMXCSR]: Use SLOT_VIRTUAL stack slot instead of SLOT_TEMP. * config/i386/i386.md (truncdfsf2, truncxf<mode>2): Ditto. testsuite/ChangeLog: PR target/32389 * gcc.target/i386/pr32389.c New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@125830 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/testsuite/gcc.target')
-rw-r--r--gcc/testsuite/gcc.target/i386/pr32389.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.target/i386/pr32389.c b/gcc/testsuite/gcc.target/i386/pr32389.c
new file mode 100644
index 00000000000..3f4cb3e6228
--- /dev/null
+++ b/gcc/testsuite/gcc.target/i386/pr32389.c
@@ -0,0 +1,10 @@
+/* Testcase by Mike Frysinger <vapier@gentoo.org> */
+
+/* { dg-do compile { target { { i?86-*-* x86_64-*-* } && ilp32 } } } */
+/* { dg-options "-msse" } */
+
+double f1();
+int f2() {
+ __builtin_ia32_stmxcsr();
+ return f1();
+}