i386.md (*movdi_internal_rex64): Merge alternatives 6 and 8.
* config/i386/i386.md (*movdi_internal_rex64): Merge alternatives 6 and 8. From-SVN: r174850
This commit is contained in:
parent
4745da6ed7
commit
b8bc3a43e9
|
@ -1,3 +1,8 @@
|
|||
2011-06-09 Uros Bizjak <ubizjak@gmail.com>
|
||||
|
||||
* config/i386/i386.md (*movdi_internal_rex64): Merge
|
||||
alternatives 6 and 8.
|
||||
|
||||
2011-06-09 David Li <davidxl@google.com>
|
||||
|
||||
* cgraphunit.c (cgraph_finalize_compilation_unit): Pass dump.
|
||||
|
@ -22,7 +27,6 @@
|
|||
(convert_to_eh_region_ranges): Ditto.
|
||||
* cprop.c (one_cprop_pass): Ditto.
|
||||
|
||||
|
||||
2011-06-09 Bernd Schmidt <bernds@codesourcery.com>
|
||||
|
||||
PR target/48673
|
||||
|
@ -86,8 +90,7 @@
|
|||
(TARGET_STACK_PROTECT_FAIL): Likewise.
|
||||
(rs6000_stack_protect_fail): Mark unused.
|
||||
* dwarf2asm.c (dw2_output_indirect_constant_1): Mark decl hidden if
|
||||
USE_LINKONCE_INDIRECT.
|
||||
Don't emit .hidden expicitly.
|
||||
USE_LINKONCE_INDIRECT. Don't emit .hidden expicitly.
|
||||
|
||||
2011-06-08 Andi Kleen <ak@linux.intel.com>
|
||||
|
||||
|
@ -102,9 +105,8 @@
|
|||
2011-06-08 Andi Kleen <ak@linux.intel.com>
|
||||
|
||||
* reginfo.c (global_regs_decl): Add.
|
||||
(globalize_reg): Add decl parameter. Compute location.
|
||||
Pass location to warnings and add inform. Store decl
|
||||
in global_regs_decl.
|
||||
(globalize_reg): Add decl parameter. Compute location. Pass location
|
||||
to warnings and add inform. Store decl in global_regs_decl.
|
||||
* rtl.h (globalize_reg): Update prototype.
|
||||
* varasm.c (make_decl_rtl): Pass decl to globalize_reg().
|
||||
|
||||
|
@ -121,8 +123,7 @@
|
|||
|
||||
2011-06-09 Nicola Pero <nicola.pero@meta-innovation.com>
|
||||
|
||||
* doc/objc.texi (Traditional GNU Objective-C runtime API):
|
||||
Updated.
|
||||
* doc/objc.texi (Traditional GNU Objective-C runtime API): Updated.
|
||||
|
||||
2011-06-08 Alexandre Oliva <aoliva@redhat.com>
|
||||
|
||||
|
@ -231,8 +232,7 @@
|
|||
2011-06-07 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
PR gcov-profile/49299
|
||||
* value-prof.c (gimple_ic): Don't assume icall has
|
||||
a fallthru edge.
|
||||
* value-prof.c (gimple_ic): Don't assume icall has a fallthru edge.
|
||||
|
||||
2011-06-07 Ira Rosen <ira.rosen@linaro.org>
|
||||
|
||||
|
@ -271,9 +271,8 @@
|
|||
PR c++/49264
|
||||
* gimple-fold.c (fold_stmt_1): Don't try to fold *& on the lhs
|
||||
if stmt folded into nothing.
|
||||
* tree-inline.c (fold_marked_statements): If a builtin at the
|
||||
end of a bb folded into nothing, just update cgraph edges
|
||||
and move to next bb.
|
||||
* tree-inline.c (fold_marked_statements): If a builtin at the end of
|
||||
a bb folded into nothing, just update cgraph edges and move to next bb.
|
||||
* cgraph.c (cgraph_update_edges_for_call_stmt_node): Allow new_stmt
|
||||
to be NULL. Don't compute count and frequency if new_call is NULL.
|
||||
|
||||
|
@ -297,17 +296,13 @@
|
|||
Move initialization code to lto/lto.c.
|
||||
* lto-streamer-out.c (pack_value_fields): Call
|
||||
streamer_hooks.pack_value_fields if set.
|
||||
(lto_output_tree_ref): For tree nodes that are not
|
||||
normally indexable, call streamer_hooks.indexable_with_decls_p
|
||||
before giving up.
|
||||
(lto_output_tree_ref): For tree nodes that are not normally indexable,
|
||||
call streamer_hooks.indexable_with_decls_p before giving up.
|
||||
(lto_output_ts_decl_common_tree_pointers): Move handling
|
||||
for FUNCTION_DECL and TRANSLATION_UNIT_DECL to
|
||||
lto_streamer_write_tree.
|
||||
(lto_output_tree_header): Call streamer_hooks.is_streamable
|
||||
instead of lto_is_streamable.
|
||||
Call lto_streamer_hooks.output_tree_header if set.
|
||||
(lto_write_tree): Call lto_streamer_hooks.write_tree if
|
||||
set.
|
||||
for FUNCTION_DECL and TRANSLATION_UNIT_DECL to lto_streamer_write_tree.
|
||||
(lto_output_tree_header): Call streamer_hooks.is_streamable instead of
|
||||
lto_is_streamable. Call lto_streamer_hooks.output_tree_header if set.
|
||||
(lto_write_tree): Call lto_streamer_hooks.write_tree if set.
|
||||
(lto_streamer_write_tree): New.
|
||||
(lto_output): Call lto_streamer_init directly.
|
||||
(lto_writer_init): Remove.
|
||||
|
@ -347,7 +342,7 @@
|
|||
(expand_builtin_pow): Remove.
|
||||
(expand_builtin_powi): Eliminate handling of constant exponent.
|
||||
(expand_builtin): Use expand_builtin_mathfn_2 for BUILT_IN_POW.
|
||||
|
||||
|
||||
2011-06-06 Alexandre Oliva <aoliva@redhat.com>
|
||||
|
||||
* cprop.c (local_cprop_pass): Don't set changed for debug insns.
|
||||
|
@ -401,10 +396,9 @@
|
|||
2011-06-06 Hans-Peter Nilsson <hp@bitrange.com>
|
||||
|
||||
PR target/49285
|
||||
* config/mmix/mmix.md ("truncdfsf2", "extendsfdf2"): Correct
|
||||
predicate to nonimmediate_operand from memory_operand for the
|
||||
operand that is to be forced to memory by the expander. Lose
|
||||
the constraints.
|
||||
* config/mmix/mmix.md ("truncdfsf2", "extendsfdf2"): Correct predicate
|
||||
to nonimmediate_operand from memory_operand for the operand that is to
|
||||
be forced to memory by the expander. Lose the constraints.
|
||||
|
||||
2011-06-05 Eric Botcazou <ebotcazou@adacore.com>
|
||||
|
||||
|
@ -432,7 +426,8 @@
|
|||
2011-06-04 Jan Hubicka <jh@suse.cz>
|
||||
|
||||
PR lto/48954
|
||||
* lto-cgraph.c (output_node_opt_summary): Handle NULL skip args bitmaps.
|
||||
* lto-cgraph.c (output_node_opt_summary): Handle NULL skip args
|
||||
bitmaps.
|
||||
|
||||
2011-06-04 Jonathan Wakely <jwakely.gcc@gmail.com>
|
||||
|
||||
|
@ -12007,7 +12002,7 @@
|
|||
(avr_function_value): Make static. Rename 'func' argument to
|
||||
'fn_decl_or_type', forward it to avr_libcall_value. Call
|
||||
avr_ret_register function instead of RET_REGISTER macro.
|
||||
(TARGET_LIBCALL_VALUE, TARGET_FUNCTION_VALUE_REGNO_P): Define.
|
||||
(TARGET_LIBCALL_VALUE, TARGET_FUNCTION_VALUE_REGNO_P): Define.
|
||||
|
||||
2011-03-18 Jason Merrill <jason@redhat.com>
|
||||
|
||||
|
|
|
@ -1975,9 +1975,9 @@
|
|||
|
||||
(define_insn "*movdi_internal_rex64"
|
||||
[(set (match_operand:DI 0 "nonimmediate_operand"
|
||||
"=r,r ,r,m ,!m,*y,*y,?r ,m ,?*Ym,?*y,*x,*x,?r ,m,?*Yi,*x,?*x,?*Ym")
|
||||
"=r,r ,r,m ,!m,*y,m*y,?*y,?r ,?*Ym,*x,m ,*x,*x,?r ,?*Yi,?*x,?*Ym")
|
||||
(match_operand:DI 1 "general_operand"
|
||||
"Z ,rem,i,re,n ,C ,*y,*Ym,*y,r ,m ,C ,*x,*Yi,*x,r ,m ,*Ym,*x"))]
|
||||
"Z ,rem,i,re,n ,C ,*y ,m ,*Ym,r ,C ,*x,*x,m ,*Yi,r ,*Ym,*x"))]
|
||||
"TARGET_64BIT && !(MEM_P (operands[0]) && MEM_P (operands[1]))"
|
||||
{
|
||||
switch (get_attr_type (insn))
|
||||
|
@ -2027,18 +2027,18 @@
|
|||
}
|
||||
}
|
||||
[(set (attr "type")
|
||||
(cond [(eq_attr "alternative" "5")
|
||||
(const_string "mmx")
|
||||
(eq_attr "alternative" "6,7,8,9,10")
|
||||
(const_string "mmxmov")
|
||||
(eq_attr "alternative" "11")
|
||||
(const_string "sselog1")
|
||||
(eq_attr "alternative" "12,13,14,15,16")
|
||||
(const_string "ssemov")
|
||||
(eq_attr "alternative" "17,18")
|
||||
(const_string "ssecvt")
|
||||
(eq_attr "alternative" "4")
|
||||
(cond [(eq_attr "alternative" "4")
|
||||
(const_string "multi")
|
||||
(eq_attr "alternative" "5")
|
||||
(const_string "mmx")
|
||||
(eq_attr "alternative" "6,7,8,9")
|
||||
(const_string "mmxmov")
|
||||
(eq_attr "alternative" "10")
|
||||
(const_string "sselog1")
|
||||
(eq_attr "alternative" "11,12,13,14,15")
|
||||
(const_string "ssemov")
|
||||
(eq_attr "alternative" "16,17")
|
||||
(const_string "ssecvt")
|
||||
(match_operand:DI 1 "pic_32bit_operand" "")
|
||||
(const_string "lea")
|
||||
]
|
||||
|
@ -2054,18 +2054,18 @@
|
|||
(const_string "8")
|
||||
(const_string "*")))
|
||||
(set (attr "prefix_rex")
|
||||
(if_then_else (eq_attr "alternative" "7,9")
|
||||
(if_then_else (eq_attr "alternative" "8,9")
|
||||
(const_string "1")
|
||||
(const_string "*")))
|
||||
(set (attr "prefix_data16")
|
||||
(if_then_else (eq_attr "alternative" "15")
|
||||
(if_then_else (eq_attr "alternative" "11")
|
||||
(const_string "1")
|
||||
(const_string "*")))
|
||||
(set (attr "prefix")
|
||||
(if_then_else (eq_attr "alternative" "11,12,13,14,15,16")
|
||||
(if_then_else (eq_attr "alternative" "10,11,12,13,14,15")
|
||||
(const_string "maybe_vex")
|
||||
(const_string "orig")))
|
||||
(set_attr "mode" "SI,DI,DI,DI,SI,DI,DI,DI,DI,DI,DI,TI,TI,DI,DI,DI,DI,DI,DI")])
|
||||
(set_attr "mode" "SI,DI,DI,DI,SI,DI,DI,DI,DI,DI,TI,DI,TI,DI,DI,DI,DI,DI")])
|
||||
|
||||
;; Convert impossible stores of immediate to existing instructions.
|
||||
;; First try to get scratch register and go through it. In case this
|
||||
|
|
Loading…
Reference in New Issue