aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorUros Bizjak <uros@gcc.gnu.org>2008-06-30 23:24:15 +0200
committerUros Bizjak <uros@gcc.gnu.org>2008-06-30 23:24:15 +0200
commit33af070fac88691d3b7e5b8b081f0e89d286f7fe (patch)
tree8970bfcbcb60382503cff62b5359a8e8e39147ee /gcc
parent55b3fc29ab075faa616eb3188f102d0f7c4f55a9 (diff)
downloadgcc-33af070fac88691d3b7e5b8b081f0e89d286f7fe.zip
gcc-33af070fac88691d3b7e5b8b081f0e89d286f7fe.tar.gz
gcc-33af070fac88691d3b7e5b8b081f0e89d286f7fe.tar.bz2
i386.md (*movti_rex64): Add "!" to "r" constraint of operand 0.
* config/i386/i386.md (*movti_rex64): Add "!" to "r" constraint of operand 0. testsuite/ChangeLog: * gcc.target/i386/movti.c: New test. From-SVN: r137291
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog14
-rw-r--r--gcc/config/i386/i386.md2
-rw-r--r--gcc/testsuite/ChangeLog4
-rw-r--r--gcc/testsuite/gcc.target/i386/movti.c10
4 files changed, 23 insertions, 7 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 7c7fd12..aaf1d08 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2008-06-30 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/i386/i386.md (*movti_rex64): Add "!" to "r" constraint
+ of operand 0.
+
2008-06-30 Kenneth Zadeck <zadeck@naturalbridge.com>
* ifcvt.c (cond_move_process_if_block): Free vectors on false
@@ -19,7 +24,7 @@
* config/i386/i386.c (contains_aligned_value_p): Return true
for __float128.
- (ix86_function_arg_boundary): Return its natural boundary for
+ (ix86_function_arg_boundary): Return its natural boundary
for __float128.
(return_in_memory_32): Don't check TDmode.
(ix86_split_to_parts): Support splitting into 4 parts and
@@ -27,8 +32,7 @@
(ix86_split_long_move): Support splitting into 4 parts.
(bdesc_args): Enable IX86_BUILTIN_FABSQ and IX86_BUILTIN_COPYSIGNQ
for SSE2.
- (ix86_init_mmx_sse_builtins): Move __float80 and __float128
- to ...
+ (ix86_init_mmx_sse_builtins): Move __float80 and __float128 to ...
(ix86_init_builtins): Here.
(ix86_scalar_mode_supported_p): Always return true for TFmode.
(ix86_c_mode_for_suffix): Always return TFmode and XFmode for
@@ -51,9 +55,7 @@
H.J. Lu <hongjiu.lu@intel.com>
* global.c (compute_regsets): Set frame_pointer_needed here.
-
- * reload1.c (init_elim_table): Don't set frame_pointer_needed
- here.
+ * reload1.c (init_elim_table): Don't set frame_pointer_needed here.
2008-06-30 Aaron W. LaFramboise <aaronavay62@aaronwl.com>
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index ed3c0d1..c67cf46 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -2464,7 +2464,7 @@
(const_string "TI")))])
(define_insn "*movti_rex64"
- [(set (match_operand:TI 0 "nonimmediate_operand" "=r,o,x,x,xm")
+ [(set (match_operand:TI 0 "nonimmediate_operand" "=!r,o,x,x,xm")
(match_operand:TI 1 "general_operand" "riFo,riF,C,xm,x"))]
"TARGET_64BIT
&& !(MEM_P (operands[0]) && MEM_P (operands[1]))"
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index f1ca632..3a2c9a1 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,7 @@
+2008-06-30 Uros Bizjak <ubizjak@gmail.com>
+
+ * gcc.target/i386/movti.c: New test.
+
2008-06-30 Jakub Jelinek <jakub@redhat.com>
PR c++/36662
diff --git a/gcc/testsuite/gcc.target/i386/movti.c b/gcc/testsuite/gcc.target/i386/movti.c
new file mode 100644
index 0000000..e306c1e
--- /dev/null
+++ b/gcc/testsuite/gcc.target/i386/movti.c
@@ -0,0 +1,10 @@
+/* { dg-do compile } */
+/* { dg-require-effective-target dfp } */
+/* { dg-options "-O -std=gnu99" } */
+
+_Decimal128 test (void)
+{
+ return 1234123412341234.123412341234dl;
+}
+
+/* { dg-final { scan-assembler-not "movabs" } } */