diff options
author | Uros Bizjak <uros@gcc.gnu.org> | 2008-06-30 23:24:15 +0200 |
---|---|---|
committer | Uros Bizjak <uros@gcc.gnu.org> | 2008-06-30 23:24:15 +0200 |
commit | 33af070fac88691d3b7e5b8b081f0e89d286f7fe (patch) | |
tree | 8970bfcbcb60382503cff62b5359a8e8e39147ee /gcc | |
parent | 55b3fc29ab075faa616eb3188f102d0f7c4f55a9 (diff) | |
download | gcc-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/ChangeLog | 14 | ||||
-rw-r--r-- | gcc/config/i386/i386.md | 2 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/i386/movti.c | 10 |
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" } } */ |