platform/upstream/linaro-gcc.git
15 years ago * config/arm/thumb2.md: Add 16-bit multiply instructions.
mmitchel [Sat, 23 May 2009 01:34:53 +0000 (01:34 +0000)]
* config/arm/thumb2.md: Add 16-bit multiply instructions.
gcc/testsuite/

* lib/target-supports.exp (check_effective_target_arm_thumb2_ok):
New function.
* gcc.target/arm/thumb2-mul-space.c: New file.
* gcc.target/arm/thumb2-mul-space-2.c: New file.
* gcc.target/arm/thumb2-mul-space-3.c: New file.
* gcc.target/arm/thumb2-mul-speed.c: New file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147812 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoDaily bump.
gccadmin [Sat, 23 May 2009 00:16:43 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147811 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoFix PR tree-optimization/40219
meissner [Fri, 22 May 2009 21:51:12 +0000 (21:51 +0000)]
Fix PR tree-optimization/40219

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147807 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-22 Richard Guenther <rguenther@suse.de>
rguenth [Fri, 22 May 2009 20:41:31 +0000 (20:41 +0000)]
2009-05-22  Richard Guenther  <rguenther@suse.de>

PR middle-end/38964
* alias.c (write_dependence_p): Do not use TBAA for answering
anti-dependence or output-dependence.
* tree-ssa-structalias.c (set_uids_in_ptset): Remove TBAA pruning
code.
(emit_pointer_definition): Remove.
(emit_alias_warning): Likewise.
(find_what_var_points_to): Remove TBAA pruning code.
(find_what_p_points_to): Likewise.  Do not warn about strict-aliasing
violations.
(compute_points_to_sets): Remove code computing the set of
dereferenced pointers.
* tree-data-ref.c (dr_may_alias_p): Properly use the split
oracle for querying anti and output dependencies.
* tree-ssa-alias.c (refs_may_alias_p_1): Add argument specifying
if TBAA may be applied.
(refs_anti_dependent_p): New function.
(refs_output_dependent_p): Likewise.
* tree-ssa-alias.h (refs_anti_dependent_p): Declare.
(refs_output_dependent_p): Likewise.

* doc/tree-ssa.texi (Memory model): New section.

testsuite/
* g++.dg/warn/Wstrict-aliasing-float-ref-int-obj.C: XFAIL.
* gcc.dg/Wstrict-aliasing-converted-assigned.c: Likewise.
* gcc.dg/Wstrict-aliasing-float-ptr-int-obj.c: Likewise.

* doc/c-tree.texi (CHANGE_DYNAMIC_TYPE_EXPR): Remove.
* doc/gimple.texi (GIMPLE_CHANGE_DYNAMIC_TYPE): Remove.

* cfgexpand.c (expand_gimple_basic_block): Do not handle
GIMPLE_CHANGE_DYNAMIC_TYPE or CHANGE_DYNAMIC_TYPE_EXPR.
* expr.c (expand_expr_real_1): Likewise.
* gimple-low.c (lower_stmt): Likewise.
* gimple-pretty-print.c (dump_gimple_stmt): Likewise.
(dump_gimple_cdt): Remove.
* gimple.c (gss_for_code): Do not handle GIMPLE_CHANGE_DYNAMIC_TYPE.
(gimple_size): Likewise.
(walk_gimple_op): Likewise.
(is_gimple_stmt): Likewise.
(walk_stmt_load_store_addr_ops): Likewise.
(gimple_build_cdt): Remove.
* gimple.def (GIMPLE_CHANGE_DYNAMIC_TYPE): Remove.
* gimple.h (gimple_cdt_new_type): Remove.
(gimple_cdt_new_type_ptr): Likewise.
(gimple_cdt_set_new_type): Likewise.
(gimple_cdt_location): Likewise.
(gimple_cdt_location_ptr): Likewise.
(gimple_cdt_set_location): Likewise.
* gimplify.c (gimplify_expr): Do not handle CHANGE_DYNAMIC_TYPE_EXPR.
* tree-cfg.c (remove_useless_stmts_1): Do not handle
GIMPLE_CHANGE_DYNAMIC_TYPE.
(verify_types_in_gimple_stmt): Likewise.
* tree-inline.c (estimate_num_insns): Likewise.
(expand_call_inline): Do not copy DECL_NO_TBAA_P.
(copy_decl_to_var): Likewise.
(copy_result_decl_to_var): Likewise.
* tree-pretty-print.c (dump_generic_node): Do not handle
CHANGE_DYNAMIC_TYPE_EXPR.
* tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Likewise.
* tree-ssa-operands.c (get_expr_operands): Likewise.
* tree-ssa-structalias.c (struct variable_info): Remove
no_tbaa_pruning member.
(new_var_info): Do not set it based on DECL_NO_TBAA_P.
(unify_nodes): Do not copy it.
(find_func_aliases): Do not handle GIMPLE_CHANGE_DYNAMIC_TYPE.
(dump_solution_for_var): Do not dump no_tbaa_pruning state.
(set_uids_in_ptset): Do not check it.
(find_what_var_points_to): Likewise.
(compute_tbaa_pruning): Remove.
(compute_points_to_sets): Do not call it.
* tree.c (walk_tree_1): Do not handle CHANGE_DYNAMIC_TYPE_EXPR.
* tree.def (CHANGE_DYNAMIC_TYPE_EXPR): Remove.
* tree.h (CHANGE_DYNAMIC_TYPE_NEW_TYPE): Remove.
(CHANGE_DYNAMIC_TYPE_LOCATION): Likewise.
(DECL_NO_TBAA_P): Likewise.
(struct tree_decl_common): Move no_tbaa_flag to unused flags section.
* omp-low.c (copy_var_decl): Do not copy DECL_NO_TBAA_P.
(expand_omp_atomic_pipeline): Do not set it.
* print-tree.c (print_node): Do not dump it.
* tree-ssa-copyrename.c (copy_rename_partition_coalesce): Remove
redundant check.

cp/
* init.c (avoid_placement_new_aliasing): Remove.
(build_new_1): Do not call it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147805 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-22 Vladimir Makarov <vmakarov@redhat.com>
vmakarov [Fri, 22 May 2009 19:00:45 +0000 (19:00 +0000)]
2009-05-22 Vladimir Makarov <vmakarov@redhat.com>

PR target/39856
* reg-stack.c (subst_stack_regs_pat): Remove gcc_assert for note
for clobber.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147804 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * src/x86/win32.S (_ffi_closure_STDCALL): New function.
davek [Fri, 22 May 2009 17:58:45 +0000 (17:58 +0000)]
* src/x86/win32.S (_ffi_closure_STDCALL):  New function.
(.eh_frame):  Add FDE for it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147802 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * configure.ac: Also check if assembler supports pc-relative
davek [Fri, 22 May 2009 16:22:53 +0000 (16:22 +0000)]
* configure.ac:  Also check if assembler supports pc-relative
relocs on X86_WIN32 targets.
* configure:  Regenerate.
* src/x86/win32.S (ffi_prep_args):  Declare extern, not global.
(_ffi_call_SYSV):  Add missing function type symbol .def and
add EH markup labels.
(_ffi_call_STDCALL):  Likewise.
(_ffi_closure_SYSV):  Likewise.
(_ffi_closure_raw_SYSV):  Likewise.
(.eh_frame):  Add hand-crafted EH data.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147800 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago gcc/
nathan [Fri, 22 May 2009 14:57:15 +0000 (14:57 +0000)]
gcc/
* tree.c (handle_dll_attribute): Mark dllexport'd inlines as
non-external.

gcc/cp
* decl2.c (decl_needed_p): Consider dllexport'd functions needed.
* semantics.c (expand_or_defer_fn): Similarly.

gcc/testsuite/
* gcc.dg/dll-6.c: New test.
* gcc.dg/dll-6a.c: Likewise.
* gcc.dg/dll-7.c: Likewise.
* gcc.dg/dll-7a.c: Likewise.
* g++.dg/ext/dllexport2.C: Likewise.
* g++.dg/ext/dllexport2a.cc: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147799 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-21 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Fri, 22 May 2009 07:19:37 +0000 (07:19 +0000)]
2009-05-21  Benjamin Kosnik  <bkoz@redhat.com>

PR libstdc++/40221
* include/tr1_impl/functional: Add explicit cast.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147794 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago PR fortran/40195
fxcoudert [Fri, 22 May 2009 07:04:09 +0000 (07:04 +0000)]
PR fortran/40195
* module.c (read_md5_from_module_file): Close file before returning.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147793 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * Makefile.in (bversion.h, s-bversion): New targets.
bje [Fri, 22 May 2009 06:08:04 +0000 (06:08 +0000)]
* Makefile.in (bversion.h, s-bversion): New targets.
(TOPLEV_H): Add bversion.h.
* toplev.h: Include "bversion.h".
(ATTRIBUTE_GCC_DIAG): When building with checking disabled, use
the __format__ attribute only if compiling with the same version
of GCC as the sources (the "build version").

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147792 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * c-format.c (handle_format_attribute): Fix comment typo.
bje [Fri, 22 May 2009 01:51:19 +0000 (01:51 +0000)]
* c-format.c (handle_format_attribute): Fix comment typo.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147790 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-21 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Fri, 22 May 2009 01:32:49 +0000 (01:32 +0000)]
2009-05-21  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/40094
Revert:
2009-05-07  Paolo Carlini  <paolo.carlini@oracle.com>
* include/ext/throw_allocator.h (throw_allocator_base): Avoid
out of line member functions definitions.
(throw_allocator_base::_S_g, _S_map, _S_throw_prob, _S_label):
Remove, use static locals instead.
(throw_allocator_base::do_check_allocated, print_to_string): Declare.
* src/throw_allocator.cc: New.
* src/Makefile.am: Add.
* config/abi/pre/gnu.ver: Add exports.
* src/Makefile.in: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147789 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-21 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Fri, 22 May 2009 01:28:50 +0000 (01:28 +0000)]
2009-05-21  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/40094
Revert:
2009-05-07  Paolo Carlini  <paolo.carlini@oracle.com>
* include/ext/throw_allocator.h (throw_allocator_base): Avoid
out of line member functions definitions.
(throw_allocator_base::_S_g, _S_map, _S_throw_prob, _S_label):
Remove, use static locals instead.
(throw_allocator_base::do_check_allocated, print_to_string): Declare.
* src/throw_allocator.cc: New.
* src/Makefile.am: Add.
* config/abi/pre/gnu.ver: Add exports.
* src/Makefile.in: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147788 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoDaily bump.
gccadmin [Fri, 22 May 2009 00:16:57 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147786 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago PR target/37846
sje [Thu, 21 May 2009 23:53:02 +0000 (23:53 +0000)]
PR target/37846
* gcc.target/ia64/mfused-madd-vect.c: New test.
* gcc.target/ia64/mfused-madd.c: New test.
* gcc.target/ia64/mno-fused-madd-vect.c: New test.
* gcc.target/ia64/mno-fused-madd.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147783 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago PR target/37846
sje [Thu, 21 May 2009 23:51:22 +0000 (23:51 +0000)]
PR target/37846
* config/ia64/ia64.opt (mfused-madd): New.
* config/ia64/ia64.h (TARGET_DEFAULT): Set MASK_FUSED_MADD.
* config/ia64/hpux.h (TARGET_DEFAULT): Ditto.
* config/ia64/ia64.md (maddsf4, msubsf4, nmaddsf4,
madddf4, madddf4_trunc, msubdf4, msubdf4_trunc, nmadddf4,
nmadddf4_truncsf, maddxf4, maddxf4_truncsf, maddxf4_truncdf,
msubxf4, msubxf4_truncsf msubxf4_truncdf, nmaddxf4,
nmaddxf4_truncsf, nmaddxf4_truncdf): Check TARGET_FUSED_MADD.
* config/ia64/vect.md (addv2sf3, subv2sf3): Force fpma/fpms
instruction if !TARGET_FUSED_MADD.
(fpma, fpms): Remove colon from name.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147782 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-22 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 21 May 2009 22:43:19 +0000 (22:43 +0000)]
2009-05-22  Richard Guenther  <rguenther@suse.de>

* tree-ssa-sccvn.c (copy_reference_ops_from_ref): Record
TMR_ORIGINAL.  Always either record TMR_SYMBOL or TMR_BASE.
* tree-ssa-pre.c (create_component_ref_by_pieces_1): Handle
TARGET_MEM_REF.
(create_expression_by_pieces): Only convert if necessary.
* gimplify.c (gimplify_expr): Handle TARGET_MEM_REF.
* tree-ssa-loop-im.c (gen_lsm_tmp_name): Handle INTEGER_CST.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147779 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * config/mips/mips.md (*extzv_trunc<mode>_exts): Turn into a
nemet [Thu, 21 May 2009 20:22:45 +0000 (20:22 +0000)]
* config/mips/mips.md (*extzv_trunc<mode>_exts): Turn into a
regular pattern from a template and rename it ...
(*extzv_truncsi_exts): ... to this.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147778 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-21 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 21 May 2009 18:59:11 +0000 (18:59 +0000)]
2009-05-21  Richard Guenther  <rguenther@suse.de>

* cgraph.h (struct cgraph_node): Remove inline_decl member.
* ipa-inline.c (cgraph_mark_inline_edge): Do not check it.
(cgraph_default_inline_p): Likewise.
(cgraph_decide_inlining_incrementally): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147776 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * MAINTAINERS: Update my e-mail address.
denisc [Thu, 21 May 2009 18:46:07 +0000 (18:46 +0000)]
* MAINTAINERS: Update my e-mail address.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147775 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agogcc/
hjl [Thu, 21 May 2009 18:42:20 +0000 (18:42 +0000)]
gcc/

2009-05-21  H.J. Lu  <hongjiu.lu@intel.com>
    Uros Bizjak  <ubizjak@gmail.com>

* config/i386/cpuid.h (bit_MOVBE): New.

* config/i386/driver-i386.c (host_detect_local_cpu): Check movbe.

* config/i386/i386.c (OPTION_MASK_ISA_MOVBE_SET): New.
(OPTION_MASK_ISA_MOVBE_UNSET): Likewise.
(ix86_handle_option): Handle OPT_mmovbe.
(ix86_target_string): Add -mmovbe.
(pta_flags): Add PTA_MOVBE.
(processor_alias_table): Add PTA_MOVBE to "atom".
(override_options): Handle PTA_MOVBE.

* config/i386/i386.h (TARGET_MOVBE): New.

* config/i386/i386.md (bswapsi2): Check TARGET_MOVBE.
(*bswapsi_movbe): New.
(*bswapdi_movbe): Likewise.
(bswapdi2): Renamed to ...
(*bswapdi_1): This.
(bswapdi2): New expander.

* config/i386/i386.opt (mmovbe): New.

* doc/invoke.texi: Document -mmovbe.

gcc/testsuite/

2009-05-21  H.J. Lu  <hongjiu.lu@intel.com>

* gcc.target/i386/movbe-1.c: New.
* gcc.target/i386/movbe-2.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147773 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agogcc/ChangeLog
tglek [Thu, 21 May 2009 17:34:43 +0000 (17:34 +0000)]
gcc/ChangeLog
* plugin.c (try_init_one_plugin): Updated to new plugin_init API.
* gcc-plugin.h (plugin_init): Updated signature.
* gcc-plugin.h (plugin_name_args): Moved to this header.
* doc/plugins.texi (plugin_init): Updated documention to reflect API change.
* doc/plugins.texi (plugin_name_args): Added to documention.
gcc/testsuite/ChangeLog
* gcc.dg/plugin/selfassign.c (plugin_init): Updated to new plugin_init signature.
* g++.dg/plugin/selfassign.c (plugin_init): Updated to new plugin_init signature.
* g++.dg/plugin/dumb_plugin.c (plugin_init): Updated to new plugin_init signature.
* g++.dg/plugin/attribute_plugin.c (plugin_init): Updated to new plugin_init signature.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147772 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * config/arm/neon.md (*mul<mode>3add<mode>_neon): New pattern.
mmitchel [Thu, 21 May 2009 16:53:48 +0000 (16:53 +0000)]
* config/arm/neon.md (*mul<mode>3add<mode>_neon): New pattern.
(*mul<mode>3neg<mode>add<mode>_neon): Likewise.

* gcc.dg/target/arm/neon-vmla-1.c: New.
* gcc.dg/target/arm/neon-vmls-1.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147771 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * configure.ac (cygwin noconfigdirs): Remove libgcj.
davek [Thu, 21 May 2009 14:42:22 +0000 (14:42 +0000)]
* configure.ac (cygwin noconfigdirs):  Remove libgcj.
* configure:  Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147770 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-21 Shujing Zhao <pearly.zhao@oracle.com>
paolo [Thu, 21 May 2009 14:01:02 +0000 (14:01 +0000)]
2009-05-21  Shujing Zhao  <pearly.zhao@oracle.com>

* config/i386/i386.c: Use REG_P, MEM_P, CONST_INT_P, LABEL_P and
JUMP_TABLE_DATA_P predicates where applicable.
* config/i386/predicates.md: Ditto.
* config/i386/sse.md: Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147769 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * config/i386/i386.md (adddi_4_rex64, addsi_4, addhi_4): For
jakub [Thu, 21 May 2009 13:32:47 +0000 (13:32 +0000)]
* config/i386/i386.md (adddi_4_rex64, addsi_4, addhi_4): For
operand2 -128 override length_immediate attribute to 1.
* config/i386/predicates.md (constm128_operand): New predicate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147767 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * config/i386/i386.c (memory_address_length): Handle %r12
jakub [Thu, 21 May 2009 13:00:30 +0000 (13:00 +0000)]
* config/i386/i386.c (memory_address_length): Handle %r12
the same as %rsp and %r13 the same as %rbp.  For %rsp and %rbp
also check REGNO.
(ix86_attr_length_address_default): For MODE_SI lea in 64-bit
mode look through optional ZERO_EXTEND and SUBREG.
* config/i386/i386.md (R12_REG): New define_constant.
(prefix_data16): For sse unit set also for MODE_TI insns.
(prefix_rex): For -m32 always return 0.  For TYPE_IMOVX
insns set if operand 1 is ext_QIreg_operand.
(modrm): For TYPE_IMOV clear only if not MODE_DI.  For
TYPE_{ALU{,1},ICMP,TEST} insn clear if there is non-shortened
immediate.
(*movdi_extzv_1, zero_extendhidi2, zero_extendqidi2): Change
mode from MODE_DI to MODE_SI.
(movdi_1_rex64): Override modrm and length_immediate attributes
only for movabs (TYPE_IMOV, alternative 2).
(zero_extendsidi2_rex64): Clear prefix_0f attribute if TYPE_IMOVX.
(*float<SSEMODEI24:mode><MODEF:mode>2_mixed_interunit,
*float<SSEMODEI24:mode><MODEF:mode>2_mixed_nointerunit,
*float<SSEMODEI24:mode><MODEF:mode>2_sse_interunit,
*float<SSEMODEI24:mode><MODEF:mode>2_sse_nointerunit): Set
prefix_rex attribute if DImode.
(*adddi_1_rex64, *adddi_2_rex64, *adddi_3_rex64, *adddi_5_rex64,
*addsi_1, *addsi_1_zext, *addsi_2, *addsi_2_zext, *addsi_3,
*addsi_3_zext, *addsi_5, *addhi_1_lea, *addhi_1, *addhi_2, *addhi_3,
*addhi_5, *addqi_1_lea, *addqi_1): Override length_immediate
attribute to 1 if TYPE_ALU and operand 2 is const128_operand.
(pro_epilogue_adjust_stack_1, pro_epilogue_adjust_stack_rex64):
Likewise.  For TYPE_IMOV clear length_immediate attribute.
(*ashldi3_1_rex64, *ashldi3_cmp_rex64, *ashldi3_cconly_rex64,
*ashlsi3_1, *ashlsi3_1_zext, *ashlsi3_cmp, **ashlsi3_cconly,
*ashlsi3_cmp_zext, *ashlhi3_1_lea, *ashlhi3_1, *ashlhi3_cmp,
*ashlhi3_cconly, *ashlqi3_1_lea, *ashlqi3_1, *ashlqi3_cmp,
*ashlqi3_cconly): Override length_immediate attribute to 0 if TYPE_ALU
or one operand TYPE_ISHIFT.
(*ashrdi3_1_one_bit_rex64, *ashrdi3_one_bit_cmp_rex64,
*ashrdi3_one_bit_cconly_rex64, *ashrsi3_1_one_bit,
*ashrsi3_1_one_bit_zext, *ashrsi3_one_bit_cmp,
*ashrsi3_one_bit_cconly, *ashrsi3_one_bit_cmp_zext,
*ashrhi3_1_one_bit, *ashrhi3_one_bit_cmp, *ashrhi3_one_bit_cconly,
*ashrqi3_1_one_bit, *ashrqi3_1_one_bit_slp, *ashrqi3_one_bit_cmp,
*ashrqi3_one_bit_cconly, *lshrdi3_1_one_bit_rex64,
*lshrdi3_cmp_one_bit_rex64, *lshrdi3_cconly_one_bit_rex64,
*lshrsi3_1_one_bit, *lshrsi3_1_one_bit_zext, *lshrsi3_one_bit_cmp,
*lshrsi3_one_bit_cconly, *lshrsi3_cmp_one_bit_zext,
*lshrhi3_1_one_bit, *lshrhi3_one_bit_cmp, *lshrhi3_one_bit_cconly,
*lshrqi3_1_one_bit, *lshrqi3_1_one_bit_slp, *lshrqi2_one_bit_cmp,
*lshrqi2_one_bit_cconly, *rotlsi3_1_one_bit_rex64, *rotlsi3_1_one_bit,
*rotlsi3_1_one_bit_zext, *rotlhi3_1_one_bit, *rotlqi3_1_one_bit_slp,
*rotlqi3_1_one_bit, *rotrdi3_1_one_bit_rex64, *rotrsi3_1_one_bit,
*rotrsi3_1_one_bit_zext, *rotrhi3_one_bit, *rotrqi3_1_one_bit,
*rotrqi3_1_one_bit_slp): Override length_immediate attribute to 0,
set mode attribute, don't override length attribute.
(*btsq, *btrq, *btcq, *btdi_rex64, *btsi): Set prefix_0f attribute
to 1.
(return_internal_long): Set length attribute to 2 instead of 1.
(*strmovqi_rex_1, *strsetqi_rex_1, *rep_stosqi_rex64,
*cmpstrnqi_nz_rex_1, *cmpstrnqi_rex_1, *strlenqi_rex_1): Clear
prefix_rex attribute.
* config/i386/predicates.md (ext_QIreg_operand,
const128_operand): New predicates.
(memory_displacement_only_operand): Always return 0 for
TARGET_64BIT.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147763 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-21 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
ramana [Thu, 21 May 2009 08:46:40 +0000 (08:46 +0000)]
2009-05-21  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

* config/arm/thumb2.md (orsi_notsi_si): Fix typo in pattern.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147761 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago./:
ian [Thu, 21 May 2009 05:58:39 +0000 (05:58 +0000)]
./:
* tree.c (build_tree_list_vec_stat): New function.
(ctor_to_vec): New function.
(build_nt_call_vec): New function.
(build_call_array): Change args to be a const pointer.
(build_call_vec): New function.
* tree.h (build_nt_call_vec): Declare.
(build_tree_list_vec_stat): Declare.
(build_tree_list_vec): Define.
(build_call_array): Update declaration.
(build_call_vec): Declare.
(ctor_to_vec): Declare.
* c-common.c (tree_vector_cache): New static variable.
(make_tree_vector): New function.
(release_tree_vector): New function.
(make_tree_vector_single): New function.
(make_tree_vector_copy): New function.
* c-common.h (tree_vector_cache, make_tree_vector): Declare.
(make_tree_vector_single, make_tree_vector_copy): Declare.
* c-parser.c (cached_expr_list_1, cached_expr_list_2): Remove.
(c_parser_expr_list): Don't manage cache here, instead call
make_tree_vector.
(c_parser_release_expr_list): Remove static function.
(c_parser_vec_to_tree_list): Remove static function.
(c_parser_attributes): Call build_tree_list_vec instead of
c_parser_vec_to_tree_list.  Call release_tree_vector instead of
c_parser_release_expr_list.
(c_parser_postfix_expression_after_primary): Likewise.
(c_parser_objc_keywordexpr): Likewise.
cp/:
* parser.c (cp_parser_postfix_expression): Change args to a vec.
Release it when done.
(tree_vector): Define typedef.  Define VEC functions.
(cp_parser_parenthesized_expression_list): Change return type to
vec.  Change all callers.
(cp_parser_new_expression): Change placement and initializer to
vecs.  Release them when done.
(cp_parser_new_placement): Change return type to vec.  Change all
callers.
(cp_parser_new_initializer): Likewise.
* typeck.c (build_function_call_vec): Just call
cp_build_function_call_vec.
(cp_build_function_call): Just build a vec and call
cp_build_function_call_vec.
(cp_build_function_call_vec): New function based on old
cp_build_function_call.
(convert_arguments): Remove nargs and argarray parameters.  Change
values to a vec.  Change caller.
(build_x_compound_expr_from_vec): New function.
(cp_build_modify_expr): Build vec to pass to
build_special_member_call.
* call.c (struct z_candidate): Add first_arg field.  Change args
field to vec.
(convert_class_to_reference): Handle first argument separately.
(add_candidate): Add first_arg parameter.  Change args parameter
to vec.  Change all callers.
(add_function_candidate, add_conv_candidate): Likewise.
(add_template_candidate_real, add_template_candidate): Likewise.
(add_template_conv_candidate): Likewise.
(build_user_type_conversion_1): Handle first argument separately.
(resolve_args): Change return type and parameter type to vecs.
Change all callers.
(perform_overload_resolution): Change args parameter to vec.
Change all callers.
(build_new_function_call, build_operator_new_call): Likewise.
(add_candidates): Likewise.
(build_op_call): New globally visible function, built from and
replacing static function build_object_call.
(build_new_op): Don't handle CALL_EXPR.  Build vec, not tree_list,
of arguments.
(build_op_delete_call): Build vec to pass to
cp_build_function_call_vec.
(build_temp): Build vec to pass to build_special_member_call.
(convert_like_real): Likewise.
(perform_direct_initialization_if_possible): Likewise.
(build_over_call): Handle first_arg field.  Use build_call_array
rather than build_call_list.
(build_special_member_call): Change args parameter to vec.  Change
all callers.
(build_new_method_call): Likewise.
* init.c (expand_default_init): Change parms to vec.
(build_raw_new_expr): Change placement and init to vecs.  Change
all callers.
(build_new_1, build_new): Likewise.
* class.c (resolve_address_of_overloaded_function): Build array to
pass to fn_type_unification.
* pt.c (tsubst_copy_and_build): For NEW_EXPR build vecs to pass to
build_new.  For CALL_EXPR create a vec rather than a tree_list;
expand a pack if necessary.
(fn_type_unification): Change args parameter to const tree *.  Add
nargs parameter.  Change all callers.
(type_unification_real): Likewise.
(unify): Build array to pass to type_unification_real.
(get_bindings): Build array to pass to fn_type_unification.
(any_type_dependent_arguments_p): Change args parameter to a vec.
Change all callers.
(make_args_non_dependent): Renamed from build_non_dependent_args.
Change return type to void.  Change parameter type to vec.  Change
all callers.
(do_auto_deduction): Pass an array to type_unification_real.
* semantics.c (perform_koenig_lookup): Change args to vec.  Change
all callers.
(finish_call_expr): Change args to vec.  Change all callers.  Call
build_op_call instead of passing CALL_EXPR to build_new_op.
(cxx_omp_create_clause_info): Allocate vec to pass to
build_special_member_call.
* decl2.c (build_offset_ref_call_from_tree): Change args parameter
to vec.  Change all callers.
* name-lookup.c (lookup_function_nonclass): Likewise.
(struct arg_lookup): Change args to vec.
(arg_assoc_namespace): Handle args as a vec.
(arg_assoc_args_vec): New static function.
(lookup_arg_dependent): Change args parameter to vec.  Change all
callers.
* method.c (do_build_assign_ref): Allocate vec to pass to
build_special_member_call.
* except.c (build_throw): Likewise.
* typeck2.c (build_functional_cast): Likewise.
* cvt.c (ocp_convert): Likewise.
* tree.c (build_min_non_dep_call_vec): Change last parameter to
vec.  Change all callers.
* cp-tree.h: Update declarations.
* name-lookup.h: Update declarations.
objc/:
* objc-act.c (objc_generate_cxx_ctor_or_dtor): Pass NULL rather
than NULL_TREE to build_special_member_call.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147759 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-20 Sandra Loosemore <sandra@codesourcery.com>
sandra [Thu, 21 May 2009 03:06:12 +0000 (03:06 +0000)]
2009-05-20  Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* doc/tm.texi (Misc): Document TARGET_INVALID_PARAMETER_TYPE,
TARGET_INVALID_RETURN_TYPE, TARGET_PROMOTED_TYPE, and
TARGET_CONVERT_TO_TYPE.
* hooks.c (hook_tree_const_tree_null): Define.
* hooks.h (hook_tree_const_tree_null): Declare.
* target.h (struct gcc_target):  Add invalid_parameter_type,
invalid_return_type, promoted_type, and convert_to_type fields.
* target-def.h: (TARGET_INVALID_PARAMETER_TYPE): Define.
(TARGET_INVALID_RETURN_TYPE): Define.
(TARGET_PROMOTED_TYPE): Define.
(TARGET_CONVERT_TO_TYPE): Define.
(TARGET_INITIALIZER): Update for new fields.
* c-decl.c (grokdeclarator): Check targetm.invalid_return_type.
(grokparms): Check targetm.invalid_parameter_type.
* c-typeck.c (default_conversion): Check targetm.promoted_type.
* c-convert.c (convert): Check targetm.convert_to_type.

gcc/cp/
* typeck.c (default_conversion): Check targetm.promoted_type.
* decl.c (grokdeclarator): Check targetm.invalid_return_type.
(grokparms): Check targetm.invalid_parameter_type.
* cvt.c (ocp_convert): Check targetm.convert_to_type.
(build_expr_type_conversion): Check targetm.promoted_type.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147758 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-20 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Thu, 21 May 2009 01:12:00 +0000 (01:12 +0000)]
2009-05-20  Benjamin Kosnik  <bkoz@redhat.com>

* include/tr1_impl/functional (function): Use explicit operator bool.
* include/bits/shared_ptr.h (__shared_ptr): Same.
* include/bits/unique_ptr.h (unique_ptr): Same.
* include/std/mutex (unique_lock): Same.
* include/std/system_error (error_code): Same.
(error_condition): Same.
* include/std/ostream (sentry): Same.
* include/std/istream (sentry): Same.
* testsuite/19_diagnostics/error_condition/operators/bool.cc: Adjust.
* testsuite/19_diagnostics/error_condition/operators/bool_neg.cc: Same.
* testsuite/19_diagnostics/error_code/operators/bool.cc: Same.
* testsuite/19_diagnostics/error_code/operators/bool_neg.cc: Same.
* testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Same.
* testsuite/20_util/unique_ptr/assign/assign_neg.cc: Same.
* testsuite/20_util/shared_ptr/observers/bool_conv.cc: Same.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147756 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoDaily bump.
gccadmin [Thu, 21 May 2009 00:16:48 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147755 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * config/mips/mips.md (*extenddi_truncate<mode>,
nemet [Wed, 20 May 2009 21:47:57 +0000 (21:47 +0000)]
* config/mips/mips.md (*extenddi_truncate<mode>,
*extendsi_truncate<mode>): Emit exts if supported.  Add attribute
defintions.
(*extendhi_truncateqi): New define_insn_and_sptit.

testsuite/
* gcc.target/mips/octeon-exts-6.c: New test.
* gcc.target/mips/extend-1.c: New test.
* gcc.target/mips/octeon-exts-2.c: Adjust to not match sign-extension
EXTS.
* gcc.target/mips/octeon-exts-5.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147751 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago PR middle-end/40204
jakub [Wed, 20 May 2009 21:09:11 +0000 (21:09 +0000)]
PR middle-end/40204
* fold-const.c (fold_binary) <case BIT_AND_EXPR>: Avoid infinite
recursion if build_int_cst_type returns the same INTEGER_CST as
arg1.

* gcc.c-torture/compile/pr40204.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147749 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago PR libgomp/40174
jakub [Wed, 20 May 2009 20:54:45 +0000 (20:54 +0000)]
PR libgomp/40174
* team.c (gomp_thread_start): Destroy thr->release semaphore.
(gomp_free_pool_helper): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147747 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoFix formatting
ebotcazou [Wed, 20 May 2009 16:14:16 +0000 (16:14 +0000)]
Fix formatting

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147740 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * fold-const.c (build_fold_addr_expr_with_type): Take the address of
ebotcazou [Wed, 20 May 2009 16:01:41 +0000 (16:01 +0000)]
* fold-const.c (build_fold_addr_expr_with_type): Take the address of
the operand of VIEW_CONVERT_EXPR.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147739 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-20 H.J. Lu <hongjiu.lu@intel.com>
hjl [Wed, 20 May 2009 13:32:14 +0000 (13:32 +0000)]
2009-05-20  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/driver-i386.c (host_detect_local_cpu): Check
extended family and model for Intel processors.  Support Intel
Atom.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147736 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * gstab.h (stab_code_type): Define, to be used instead of the
hainque [Wed, 20 May 2009 12:44:44 +0000 (12:44 +0000)]
* gstab.h (stab_code_type): Define, to be used instead of the
__stab_debug_code enum, made anonymous.  Add 2009 to the copyright
notice.
* dbxout.c (STAB_CODE_TYPE): Remove #define and replace use
occurrences by stab_code_type.
* mips-tfile.c (STAB_CODE_TYPE): Remove #define, unused.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147734 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-20 Martin Jambor <mjambor@suse.cz>
jamborm [Wed, 20 May 2009 10:18:10 +0000 (10:18 +0000)]
2009-05-20  Martin Jambor  <mjambor@suse.cz>

* tree-flow.h (insert_edge_copies_seq): Undeclare.
(sra_insert_before): Likewise.
(sra_insert_after): Likewise.
(sra_init_cache): Likewise.
(sra_type_can_be_decomposed_p): Likewise.
* tree-mudflap.c (insert_edge_copies_seq): Copied here from tree-sra.c
* tree-sra.c (sra_type_can_be_decomposed_p): Made static.
(sra_insert_before): Likewise.
(sra_insert_after): Likewise.
(sra_init_cache): Likewise.
(insert_edge_copies_seq): Made static and moved upwards.

* tree-complex.c (extract_component): Added VIEW_CONVERT_EXPR switch
case.

* tree-flow-inline.h (contains_view_convert_expr_p): New function.

* ipa-prop.c (get_ssa_def_if_simple_copy): New function.
(determine_cst_member_ptr): Call get_ssa_def_if_simple_copy to skip
simple copies.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147733 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: When
ebotcazou [Wed, 20 May 2009 08:29:05 +0000 (08:29 +0000)]
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: When
discriminants affect the shape of the subtype, retrieve the GCC type
directly from the original field if the GNAT types for the field and
the original field are the same.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147732 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-20 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 20 May 2009 08:19:50 +0000 (08:19 +0000)]
2009-05-20  Richard Guenther  <rguenther@suse.de>

* expr.c (expand_expr_real_1): Avoid calling do_store_flag
with mismatched comparison modes.

* gcc.c-torture/compile/20090518-1.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147731 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoFix Thumb2 bic orn
ramana [Wed, 20 May 2009 05:40:17 +0000 (05:40 +0000)]
Fix Thumb2 bic orn

2009-05-20  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

* config/arm/arm.md (*arm_iorsi3): Refactored for only ARM.
        (peephole ior (reg, int) -> mov, ior): Refactored for only ARM.
        * config/arm/thumb2.md (*thumb_andsi_not_shiftsi_si): Allow bic
        with shifts for Thumb2.
        (orsi_notsi): New for orn.
        (*thumb_orsi_notshiftsi_si): Allow orn with shifts.
        (*thumb2_iorsi3): Rewrite support for iorsi for Thumb2.
        * config/arm/arm.c (const_ok_for_op): Split case for IOR for
        Thumb2.
        (arm_gen_constant): Set can_invert for IOR and Thumb2, Add
        comments. Don't invert remainder for IOR.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147729 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-19 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Wed, 20 May 2009 04:05:21 +0000 (04:05 +0000)]
2009-05-19  Benjamin Kosnik  <bkoz@redhat.com>

* testsuite/23_containers/list/14340.cc: Abstract list type.
* testsuite/23_containers/list/init-list.cc: Same.
* testsuite/23_containers/list/pthread5.cc: Same.
* testsuite/23_containers/list/invalidation/1.cc: Same.
* testsuite/23_containers/list/invalidation/2.cc: Same.
* testsuite/23_containers/list/invalidation/3.cc: Same.
* testsuite/23_containers/list/invalidation/4.cc: Same.
* testsuite/23_containers/list/modifiers/insert/25288.cc: Same.
* testsuite/23_containers/list/modifiers/1.cc: Same.
* testsuite/23_containers/list/modifiers/2.cc: Same.
* testsuite/23_containers/list/modifiers/3.cc: Same.
* testsuite/23_containers/list/modifiers/swap/1.cc: Same.
* testsuite/23_containers/list/modifiers/swap/2.cc: Same.
* testsuite/23_containers/list/modifiers/swap/3.cc: Same.
* testsuite/23_containers/list/cons/1.cc: Same.
* testsuite/23_containers/list/cons/2.cc: Same.
* testsuite/23_containers/list/cons/3.cc: Same.
* testsuite/23_containers/list/cons/4.cc: Same.
* testsuite/23_containers/list/cons/5.cc: Same.
* testsuite/23_containers/list/cons/6.cc: Same.
* testsuite/23_containers/list/cons/7.cc: Same.
* testsuite/23_containers/list/cons/clear_allocator.cc: Same.
* testsuite/23_containers/list/cons/8.cc: Same.
* testsuite/23_containers/list/cons/9.cc: Same.
* testsuite/23_containers/list/operations/1.cc: Same.
* testsuite/23_containers/list/operations/2.cc: Same.
* testsuite/23_containers/list/operations/3.cc: Same.
* testsuite/23_containers/list/operations/4.cc: Same.
* testsuite/23_containers/list/operations/5.cc: Same.
* testsuite/23_containers/list/requirements/citerators.cc: Same.
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/
constructor_1_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/
constructor_2_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/constructor.cc: Same.
* testsuite/23_containers/list/requirements/
partial_specialization/1.cc: Same.
* testsuite/23_containers/list/23781.cc: Same.
* testsuite/23_containers/list/pthread1.cc: Same.
* testsuite/23_containers/list/capacity/1.cc: Same.
* testsuite/23_containers/list/capacity/29134.cc: Same.
* testsuite/23_containers/list/check_construct_destroy.cc: Same.
* testsuite/23_containers/list/moveable.cc: Same.

* testsuite/util/common_type/assoc/common_type.hpp: Re-break lines.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147728 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago PR tree-optimization/40087
rakdver [Wed, 20 May 2009 00:33:54 +0000 (00:33 +0000)]
PR tree-optimization/40087
* tree-ssa-loop-niter.c (number_of_iterations_ne_max,
number_of_iterations_ne): Rename never_infinite argument.
(number_of_iterations_lt_to_ne, number_of_iterations_lt,
number_of_iterations_le): Handle pointer-type ivs when
exit_must_be_taken is false.
(number_of_iterations_cond):  Do not always assume that
exit_must_be_taken if the control variable is a pointer.

* gcc.dg/tree-ssa/pr40087.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147727 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoDaily bump.
gccadmin [Wed, 20 May 2009 00:16:48 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147726 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Wed, 20 May 2009 00:16:38 +0000 (00:16 +0000)]
2009-05-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libfortran/37754
* io/write_float.def: Simplify format calculation.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147725 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-19 Andrew Pinski <andrew_pinski@playstation.sony.com>
pinskia [Tue, 19 May 2009 23:14:10 +0000 (23:14 +0000)]
2009-05-19  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        * c-typeck.c (build_binary_op): Allow % on integal vectors.
        * doc/extend.texi (Vector Extension): Document that % is allowed too.

009-05-19  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        * typeck.c (build_binary_op): Allow % on integal vectors.

2009-05-19  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        * gcc.dg/vector-4.c: New testcase.
        * gcc.dg/simd-1b.c: % is now allowed for integer vectors.
        * g++.dg/ext/vector16.C: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147722 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-19 H.J. Lu <hongjiu.lu@intel.com>
hjl [Tue, 19 May 2009 21:17:00 +0000 (21:17 +0000)]
2009-05-19  H.J. Lu  <hongjiu.lu@intel.com>

PR c/40172
* gcc.dg/pr40172.c: Renamed to ...
* gcc.dg/pr40172-1.c: This.

* gcc.dg/pr40172-2.c: New.
* gcc.dg/pr40172-3.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147719 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-19 H.J. Lu <hongjiu.lu@intel.com>
hjl [Tue, 19 May 2009 20:11:55 +0000 (20:11 +0000)]
2009-05-19  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.c (ix86_avoid_jump_mispredicts): Check
ASM_OUTPUT_MAX_SKIP_PAD instead of ASM_OUTPUT_MAX_SKIP_ALIGN.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147718 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-19 Manuel López-Ibáñez <manu@gcc.gnu.org>
manu [Tue, 19 May 2009 19:29:27 +0000 (19:29 +0000)]
2009-05-19  Manuel López-Ibáñez  <manu@gcc.gnu.org>

PR c/40172
gcc/
* c.opt (Wlogical-op): Disabled by default.
* c-opt (c_common_post_options): Do not enable Wlogical-op with
Wextra.
* doc/invoke.texi (Wlogical-op): Likewise.
testsuite/
* gcc.dg/pr40172.c: Add -Wlogical-op to dg-options.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147717 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * tree-scalar-evolution.c (follow_ssa_edge_expr) <NOP_EXPR>: Turn
ebotcazou [Tue, 19 May 2009 19:14:42 +0000 (19:14 +0000)]
* tree-scalar-evolution.c (follow_ssa_edge_expr) <NOP_EXPR>: Turn
into CASE_CONVERT.
<PLUS_EXPR>: Strip useless type conversions instead of type nops.
Propagate the type of the first operand.
<ASSERT_EXPR>: Simplify.
(follow_ssa_edge_in_rhs): Use gimple_expr_type to get the type.
Rewrite using the RHS code as discriminant.
<NOP_EXPR>: Turn into CASE_CONVERT.
<PLUS_EXPR>: Propagate the type of the first operand.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147716 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-19 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Tue, 19 May 2009 18:20:47 +0000 (18:20 +0000)]
2009-05-19  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/40184
* include/bits/locale_classes.h (locale::facet::_S_lc_ctype_c_locale):
Declare...
* config/locale/gnu/c_locale.cc: ... and define.
* config/locale/generic/c_locale.cc: Define.
* src/localename.cc (locale::_Impl::_Impl(const char*, size_t)):
Use it.
* testsuite/22_locale/locale/cons/40184.cc: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147714 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * config/ia64/ia64-protos.h (ia64_dconst_0_5): New.
sje [Tue, 19 May 2009 18:18:08 +0000 (18:18 +0000)]
* config/ia64/ia64-protos.h (ia64_dconst_0_5): New.
(ia64_dconst_0_375): New.
* config/ia64/ia64.c (ia64_override_options): Remove
-minline-sqrt-min-latency warning.
(ia64_dconst_0_5_rtx, ia64_dconst_0_5): New.
(ia64_dconst_0_375_rtx, ia64_dconst_0_375): New
* config/ia64/ia64.md (*sqrt_approx): Remove.
(sqrtsf2): Remove #if 0.
(sqrtsf2_internal_thr): Rewrite and move to div.md.
(sqrtdf): Remove assert.
(sqrtdf2_internal_thr): Rewrite and move to div.md.
(sqrtxf2): Remove #if 0.
(sqrtxf2_internal_thr): Rewrite and move to div.md.
* div.md (sqrt_approx_rf): New.
(sqrtsf2_internal_thr): New implementation.
(sqrtsf2_internal_lat): New.
(sqrtdf2_internal_thr: New implementation.
(sqrtxf2_internal): New implementation.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147713 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * defaults.h (UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE)
hp [Tue, 19 May 2009 18:12:57 +0000 (18:12 +0000)]
* defaults.h (UINT_FAST64_TYPE, INTPTR_TYPE, UINTPTR_TYPE)
(WCHAR_TYPE, MODIFIED_WCHAR_TYPE, PTRDIFF_TYPE, WINT_TYPE)
(INTMAX_TYPE, UINTMAX_TYPE, SIG_ATOMIC_TYPE, INT8_TYPE, INT16_TYPE)
(INT32_TYPE, INT64_TYPE, UINT8_TYPE, UINT16_TYPE, UINT32_TYPE)
(UINT64_TYPE, INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE)
(INT_LEAST64_TYPE, UINT_LEAST8_TYPE, UINT_LEAST16_TYPE)
(UINT_LEAST32_TYPE, UINT_LEAST64_TYPE, INT_FAST8_TYPE)
(INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE)
(UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE)
(SIZE_TYPE, PID_TYPE, CHAR16_TYPE, CHAR32_TYPE): Move defaults here...
* c-common.c: ...from here.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147712 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoReplace spaces with tab.
hjl [Tue, 19 May 2009 16:06:46 +0000 (16:06 +0000)]
Replace spaces with tab.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147709 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-19 Manuel López-Ibáñez <manu@gcc.gnu.org>
manu [Tue, 19 May 2009 15:41:17 +0000 (15:41 +0000)]
2009-05-19  Manuel López-Ibáñez  <manu@gcc.gnu.org>

* c-common.c (warn_logical_operator): Remove unnecessary
conditionals.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147708 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * builtins.c (do_mpc_arg1): Separate MPFR/MPC C rounding types.
ghazi [Tue, 19 May 2009 14:56:05 +0000 (14:56 +0000)]
* builtins.c (do_mpc_arg1): Separate MPFR/MPC C rounding types.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147707 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * unwind-dw2-fde.c (fde_unencoded_compare): Replace type punning
bje [Tue, 19 May 2009 13:24:30 +0000 (13:24 +0000)]
* unwind-dw2-fde.c (fde_unencoded_compare): Replace type punning
assignments with memcpy calls.
(add_fdes): Likewise.
(binary_search_unencoded_fdes): Likewise.
(linear_search_fdes): Eliminate type puns.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147705 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-19 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 19 May 2009 11:51:54 +0000 (11:51 +0000)]
2009-05-19  Richard Guenther  <rguenther@suse.de>

* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Do
not falsely claim to have propagated into all uses.

* gcc.c-torture/compile/20090519-1.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147702 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * cp-demangle.c (cplus_demangle_fill_ctor): Fix logic bug.
bje [Tue, 19 May 2009 02:42:13 +0000 (02:42 +0000)]
* cp-demangle.c (cplus_demangle_fill_ctor): Fix logic bug.
(cplus_demangle_fill_dtor): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147699 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoPR other/40159
aoliva [Tue, 19 May 2009 01:30:35 +0000 (01:30 +0000)]
PR other/40159
* Makefile.tpl (all): Don't assume gcc-bootstrap and
gcc-no-bootstrap are mutually exclusive.
* Makefile.in: Rebuilt.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147695 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoDaily bump.
gccadmin [Tue, 19 May 2009 00:16:50 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147688 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoPR other/40159
aoliva [Tue, 19 May 2009 00:01:17 +0000 (00:01 +0000)]
PR other/40159
* Makefile.tpl (all): Don't end with unconditional success.
* Makefile.in: Rebuilt.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147683 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * doc/invoke.texi (C Dialect Options): Update OpenMP specification
bje [Mon, 18 May 2009 23:41:55 +0000 (23:41 +0000)]
* doc/invoke.texi (C Dialect Options): Update OpenMP specification
version to v3.0.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147682 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-18 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Mon, 18 May 2009 23:16:20 +0000 (23:16 +0000)]
2009-05-18  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/40192
* include/bits/stl_construct.h (struct _Destroy_aux): Add.
(_Destroy(_ForwardIterator, _ForwardIterator)): Use the latter.
* testsuite/23_containers/vector/40192.cc: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147680 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * config/sh/sh-protos.h (sh_legitimate_address_p): Remove.
kkojima [Mon, 18 May 2009 22:31:46 +0000 (22:31 +0000)]
* config/sh/sh-protos.h (sh_legitimate_address_p): Remove.
* config/sh/sh.c (sh_legitimate_address_p): Make static.
(TARGET_LEGITIMATE_ADDRESS_P): New.
* config/sh/sh.h (GO_IF_LEGITIMATE_ADDRESS): Delete.
* config/sh/sh.md: Clean up references to GO_IF_LEGITIMATE_ADDRESS.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147679 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
redi [Mon, 18 May 2009 22:15:56 +0000 (22:15 +0000)]
2009-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>

* include/bits/stl_pair.h (swap): Do not swap rvalues.
* include/bits/stl_deque.h (swap): Likewise.
* include/bits/stl_list.h (swap): Likewise.
* include/bits/stl_vector.h (swap): Likewise.
* include/bits/stl_bvector.h (swap): Likewise.
* include/bits/stl_queue.h (swap): Likewise.
* include/bits/stl_stack.h (swap): Likewise.
* include/bits/stl_tree.h (swap): Likewise.
* include/bits/stl_map.h (swap): Likewise.
* include/bits/stl_multimap.h (swap): Likewise.
* include/bits/stl_set.h (swap): Likewise.
* include/bits/stl_multiset.h (swap): Likewise.
* include/bits/forward_list.h (swap): Likewise.
* include/bits/unique_ptr.h (swap): Likewise.
* include/debug/deque (swap): Likewise.
* include/debug/list (swap): Likewise.
* include/debug/vector (swap): Likewise.
* include/debug/map.h (swap): Likewise.
* include/debug/multimap.h (swap): Likewise.
* include/debug/set.h (swap): Likewise.
* include/debug/multiset.h (swap): Likewise.
* include/debug/unordered_map (swap): Likewise.
* include/debug/unordered_set (swap): Likewise.
* include/ext/vstring.h (swap): Likewise.
* include/tr1_impl/unordered_map (swap): Likewise.
* include/tr1_impl/hashtable (swap): Likewise.
* include/tr1_impl/unordered_set (swap): Likewise.
* include/std/tuple (swap): Likewise.
* include/std/mutex (swap): Likewise.
* include/std/thread (swap): Likewise.
(operator<<): Only output to lvalue streams.
* testsuite/20_util/shared_ptr/modifiers/swap_rvalue.cc: Remove.
* testsuite/23_containers/headers/forward_list/synopsis.cc: Adjust.
* testsuite/23_containers/deque/requirements/dr438/
assign_neg.cc: Adjust line numbers.
* testsuite/23_containers/deque/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/
insert_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
assign_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
insert_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
assign_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
insert_neg.cc: Likewise.
* testsuite/30_threads/thread/swap/1.cc: Swap with lvalue and also
test non-member swap.
* testsuite/30_threads/thread/swap/2.cc: Remove.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147678 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago Implement explicit conversions ops as specified in N2437.
jason [Mon, 18 May 2009 21:48:02 +0000 (21:48 +0000)]
Implement explicit conversions ops as specified in N2437.
* decl.c (grokdeclarator): Handle explicit conversion ops.
(check_initializer): Pass flags to store_init_value.
* decl2.c (maybe_emit_vtables): Likewise.
* init.c (expand_aggr_init_1): Likewise.
* call.c (convert_class_to_reference): Take flags parm,
check DECL_NONCONVERTING_P.
(build_user_type_conversion_1): Check DECL_NONCONVERTING_P.
(add_builtin_candidates): Simplify getting type of conversion.
(build_object_call): Likewise.  Check DECL_NONCONVERTING_P.
(implicit_conversion): Pass through LOOKUP_ONLYCONVERTING.
(reference_binding): Take flags parm.  Direct-initialize copy parm.
(add_function_candidate): Direct-initialize the copy parm.
(add_conv_candidate): Use LOOKUP_IMPLICIT, not LOOKUP_NORMAL.
(build_builtin_candidate): Add LOOKUP_ONLYCONVERTING.
(conditional_conversion): Likewise.
(convert_like_real): Only complain about DECL_NONCONVERTING_P
constructors.
(perform_implicit_conversion_flags): Add flags parm to
perform_implicit_conversion.  Improve diagnostics.
* cp-tree.h (LOOKUP_IMPLICIT): New macro.
(LOOKUP_COPY_PARM): New bit macro.
* cvt.c (build_expr_type_conversion): Check DECL_NONCONVERTING_P.
* typeck.c (convert_for_assignment): Take flags parm, pass it to
perform_implicit_conversion_flags.
(cp_build_modify_expr): Pass flags to convert_for_assignment.
(convert_for_initialization): Likewise.
* typeck2.c (store_init_value): Take flags parm, pass to
digest_init_flags.
(digest_init_flags): Add flags parm to digest_init.
(digest_init_r): Take flags parm, pass to convert_for_initialization.
(process_init_constructor_array): Pass it.
(process_init_constructor_record): Likewise.
(process_init_constructor_union): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147677 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoFix for PR debug/40109
dodji [Mon, 18 May 2009 19:19:52 +0000 (19:19 +0000)]
Fix for PR debug/40109

gcc/ChangeLog:
PR debug/40109
* dwarf2out.c (gen_type_die_with_usage): Generate the DIE as a
child of the containing namespace's DIE.

gcc/testsuite/ChangeLog:
PR debug/40109
* g++.dg/debug/dwarf2/nested-1.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147674 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * config/mips/mips.md (*zero_extend<GPR:mode>_trunc<SHORT:mode>,
nemet [Mon, 18 May 2009 18:43:25 +0000 (18:43 +0000)]
* config/mips/mips.md (*zero_extend<GPR:mode>_trunc<SHORT:mode>,
*zero_extendhi_truncqi):  Move after the zero_extend patterns.
(*extenddi_truncate<mode>, *extendsi_truncate<mode>): Move after the
extend patterns.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147673 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-18 H.J. Lu <hongjiu.lu@intel.com>
hjl [Mon, 18 May 2009 17:21:13 +0000 (17:21 +0000)]
2009-05-18  H.J. Lu  <hongjiu.lu@intel.com>

PR target/39942
* config/i386/i386.c (ix86_avoid_jump_misspredicts): Replace
gen_align with gen_pad.
(ix86_reorg): Check ASM_OUTPUT_MAX_SKIP_PAD instead of
#ifdef ASM_OUTPUT_MAX_SKIP_ALIGN.

* config/i386/i386.h (ASM_OUTPUT_MAX_SKIP_PAD): New.
* config/i386/x86-64.h (ASM_OUTPUT_MAX_SKIP_PAD): Likewise.

* config/i386/i386.md (align): Renamed to ...
(pad): This.  Replace ASM_OUTPUT_MAX_SKIP_ALIGN with
ASM_OUTPUT_MAX_SKIP_PAD.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147671 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-18 H.J. Lu <hongjiu.lu@intel.com>
hjl [Mon, 18 May 2009 16:53:25 +0000 (16:53 +0000)]
2009-05-18  H.J. Lu  <hongjiu.lu@intel.com>

PR testsuite/39907
* gcc.target/x86_64/abi/asm-support.S (snapshot_ret): Preserve
stack alignment.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147667 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago* config.gcc: Fix variable syntax.
schwab [Mon, 18 May 2009 16:49:50 +0000 (16:49 +0000)]
* config.gcc: Fix variable syntax.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147666 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago* config.gcc: Fix variable syntax.
schwab [Mon, 18 May 2009 16:22:47 +0000 (16:22 +0000)]
* config.gcc: Fix variable syntax.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147665 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoPR target/39531
schwab [Mon, 18 May 2009 15:36:18 +0000 (15:36 +0000)]
PR target/39531
* config/m68k/m68k.c (output_andsi3): Mask off sign bit copies
before calling exact_log2.
(output_iorsi3): Likewise.
(output_xorsi3): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147664 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-18 Janus Weil <janus@gcc.gnu.org>
janus [Mon, 18 May 2009 14:44:55 +0000 (14:44 +0000)]
2009-05-18  Janus Weil  <janus@gcc.gnu.org>

PR fortran/40164
* primary.c (gfc_match_rvalue): Handle procedure pointer components in
arrays.
* resolve.c (resolve_ppc_call,resolve_expr_ppc): Resolve component and
array references.
(resolve_fl_derived): Procedure pointer components are not required to
have constant array bounds in their return value.

2009-05-18  Janus Weil  <janus@gcc.gnu.org>

PR fortran/40164
* gfortran.dg/proc_ptr_comp_8.f90: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147663 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-18 Janus Weil <janus@gcc.gnu.org>
janus [Mon, 18 May 2009 13:56:44 +0000 (13:56 +0000)]
2009-05-18  Janus Weil  <janus@gcc.gnu.org>

* intrinsic.c (add_sym): Fix my last commit (r147655),
which broke bootstrap.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147662 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * config/sh/sh.c (expand_cbranchdi4): Use a scratch register
kkojima [Mon, 18 May 2009 12:53:22 +0000 (12:53 +0000)]
* config/sh/sh.c (expand_cbranchdi4): Use a scratch register
for the none zero constant operand except for EQ and NE
comprisons even when the first operand is R0.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147661 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-18 Andreas Krebbel <krebbel1@de.ibm.com>
krebbel [Mon, 18 May 2009 12:33:55 +0000 (12:33 +0000)]
2009-05-18  Andreas Krebbel  <krebbel1@de.ibm.com>

* config/s390/2064.md: Remove trailing whitespaces.
* config/s390/2084.md: Likewise.
* config/s390/constraints.md: Likewise.
* config/s390/fixdfdi.h: Likewise.
* config/s390/libgcc-glibc.ver: Likewise.
* config/s390/s390-modes.def: Likewise.
* config/s390/s390-protos.h: Likewise.
* config/s390/s390.c: Likewise.
* config/s390/s390.h: Likewise.
* config/s390/s390.md: Likewise.
* config/s390/tpf-unwind.h: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147660 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-18 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 18 May 2009 10:24:34 +0000 (10:24 +0000)]
2009-05-18  Richard Guenther  <rguenther@suse.de>

PR fortran/40168
* trans-expr.c (gfc_trans_zero_assign): For local array
destinations use an assignment from an empty constructor.

* gfortran.dg/array_memset_2.f90: Adjust.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147659 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * config/m68k/m68k.c (m68k_legitimize_address): Fix typo in signature.
mkuvyrkov [Mon, 18 May 2009 10:12:44 +0000 (10:12 +0000)]
* config/m68k/m68k.c (m68k_legitimize_address): Fix typo in signature.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147656 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-18 Janus Weil <janus@gcc.gnu.org>
janus [Mon, 18 May 2009 09:19:20 +0000 (09:19 +0000)]
2009-05-18  Janus Weil  <janus@gcc.gnu.org>

PR fortran/36947
PR fortran/40039
* expr.c (gfc_check_pointer_assign): Check intents when comparing
interfaces.
* gfortran.h (typedef struct gfc_intrinsic_arg): Add 'intent' member.
(gfc_compare_interfaces): Additional argument.
* interface.c (operator_correspondence): Add check for equality of
intents, and new argument 'intent_check'.
(gfc_compare_interfaces): New argument 'intent_check', which is passed
on to operator_correspondence.
(check_interface1): Don't check intents when comparing interfaces.
(compare_parameter): Do check intents when comparing interfaces.
* intrinsic.c (add_sym): Add intents for arguments of intrinsic
procedures.
(add_sym_1,add_sym_1s,add_sym_1m,add_sym_2,add_sym_2s,add_sym_3,
add_sym_3ml,add_sym_3red,add_sym_3s,add_sym_4): Use INTENT_IN by
default.
(add_sym_1_intent,add_sym_1s_intent,add_sym_2s_intent,add_sym_3s_intent)
: New functions to add intrinsic symbols, specifying custom intents.
(add_sym_4s,add_sym_5s): Add new arguments to specify intents.
(add_functions,add_subroutines): Add intents for various intrinsics.
* resolve.c (check_generic_tbp_ambiguity): Don't check intents when
comparing interfaces.
* symbol.c (gfc_copy_formal_args_intr): Copy intent.

2009-05-18  Janus Weil  <janus@gcc.gnu.org>

PR fortran/36947
PR fortran/40039
* gfortran.dg/interface_27.f90: New.
* gfortran.dg/interface_28.f90: New.
* gfortran.dg/proc_ptr_11.f90: Fixing invalid test case.
* gfortran.dg/proc_ptr_result_1.f90: Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147655 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago M68K TLS support.
mkuvyrkov [Mon, 18 May 2009 07:54:44 +0000 (07:54 +0000)]
M68K TLS support.
* configure.ac (m68k-*-*): Check if binutils support TLS.
* configure: Regenerate.
* config/m68k/predicates.md (symbolic_operand): Extend comment.
* config/m68k/constraints.md (Cu): New constraint.
* config/m68k/m68k.md (UNSPEC_GOTOFF): Remove.
(UNSPEC_RELOC16, UNSPEC_RELOC32): New constants.
(movsi): Handle TLS symbols.
(addsi3_5200): Handle XTLS symbols, indent.
* config/m68k/m68k-protos.h (m68k_legitimize_tls_address): Declare.
(m68k_tls_reference_p): Declare.
(m68k_legitimize_address): Declare.
(m68k_unwrap_symbol): Declare.
* config/m68k/m68k.opt (mxtls): New option.
* config/m68k/m68k.c (ggc.h): Include.
(m68k_output_dwarf_dtprel): Implement hook.
(TARGET_HAVE_TLS, TARGET_ASM_OUTPUT_DWARF_DTPREL): Define.
(m68k_expand_prologue): Load GOT pointer when function needs it.
(m68k_illegitimate_symbolic_constant_p): Handle TLS symbols.
(m68k_legitimate_constant_address_p): Same.
(m68k_decompose_address): Handle TLS references.
(m68k_get_gp): New static function.
(enum m68k_reloc): New contants.
(TLS_RELOC_P): New macro.
(m68k_wrap_symbol): New static function.
(m68k_unwrap_symbol): New function.
(m68k_final_prescan_insn_1): New static function.
(m68k_final_prescan_insn): New function.
(m68k_move_to_reg, m68k_wrap_symbol_into_got_ref): New static
functions.
(legitimize_pic_address): Handle TLS references..
(m68k_tls_get_addr, m68k_get_tls_get_addr)
(m68k_libcall_value_in_a0_p)
(m68k_call_tls_get_addr, m68k_read_tp, m68k_get_m68k_read_tp)
(m68k_call_m68k_read_tp): Helper variables and functions for ...
(m68k_legitimize_tls_address): Handle TLS references.
(m68k_tls_symbol_p, m68k_tls_reference_p_1, m68k_tls_reference_p):
New functions.
(m68k_legitimize_address): Handle TLS symbols.
(m68k_get_reloc_decoration): New static function.
(m68k_output_addr_const_extra): Handle UNSPEC_RELOC16 and
UNSPEC_RELOC32.
(m68k_output_dwarf_dtprel): Implement hook.
(print_operand_address): Handle UNSPEC_RELOC16 adn UNSPEC_RELOC32.
(m68k_libcall_value): Return result in A0 instead of D0 when asked by
m68k_call_* routines.
(sched_attr_op_type): Handle TLS symbols.
(gt-m68k.h): Include.
* config/m68k/m68k.h (FINAL_PRESCAN_INSN): Define.
(LEGITIMATE_PIC_OPERAND_P): Support TLS.

* gcc.target/m68k/tls-ie.c: New test.
* gcc.target/m68k/tls-le.c: New test.
* gcc.target/m68k/tls-gd.c: New test.
* gcc.target/m68k/tls-ld.c: New test.
* gcc.target/m68k/tls-ie-xgot.c: New test.
* gcc.target/m68k/tls-le-xtls.c: New test.
* gcc.target/m68k/tls-gd-xgot.c: New test.
* gcc.target/m68k/tls-ld-xgot.c: New test.
* gcc.target/m68k/tls-ld-xtls.c: New test.
* gcc.target/m68k/tls-ld-xgot-xtls.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147654 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago PR ada/40166
ebotcazou [Mon, 18 May 2009 07:40:56 +0000 (07:40 +0000)]
PR ada/40166
* Makefile.in (TOOLS_TARGET_PAIRS): Use the correct path to the
target specific sources.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147652 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoDaily bump.
gccadmin [Mon, 18 May 2009 00:16:37 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147649 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-18 Martin Jambor <mjambor@suse.cz>
jamborm [Sun, 17 May 2009 23:33:35 +0000 (23:33 +0000)]
2009-05-18  Martin Jambor  <mjambor@suse.cz>

* ipa-prop.c (ipa_check_stmt_modifications): Removed.
(visit_store_addr_for_mod_analysis): New function.
(ipa_detect_param_modifications): Use walk_stmt_load_store_addr_ops.
(determine_cst_member_ptr): Use gimple_assign_single_p.
(ipa_get_stmt_member_ptr_load_param): Use gimple_assign_single_p.
(ipa_analyze_call_uses): Use !gimple_assign_rhs2 rather than number of
operands.  Don't check number of operands of a NOP_EXPR.

* testsuite/gcc.dg/ipa/modif-1.c: Do not check for unmodified int
parameter.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147645 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-18 Eric Fisher <joefoxreal@gmail.com>
bje [Sun, 17 May 2009 22:10:36 +0000 (22:10 +0000)]
2009-05-18  Eric Fisher  <joefoxreal@gmail.com>
* doc/tree-ssa.texi (SSA Operands): Fix a mistake.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147644 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * win32_threads.c (GC_get_thread_stack_base): Implement for Cygwin.
davek [Sun, 17 May 2009 20:07:18 +0000 (20:07 +0000)]
* win32_threads.c (GC_get_thread_stack_base):  Implement for Cygwin.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147641 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agogcc/
hjl [Sun, 17 May 2009 18:36:44 +0000 (18:36 +0000)]
gcc/

2009-05-17  Manuel López-Ibáñez  <manu@gcc.gnu.org>

PR c/40172
* c-common.c (warn_logical_operator): Don't warn if one of
expression isn't always true or false.

gcc/testscase/

2009-05-17  H.J. Lu  <hongjiu.lu@intel.com>

PR c/40172
* gcc.dg/pr40172.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147639 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago PR c++/40139
jason [Sun, 17 May 2009 18:01:33 +0000 (18:01 +0000)]
PR c++/40139
* pt.c (tsubst_qualified_id): Retain the type if we aren't dealing
with a dependent type.  Actually look up the destructor.
* semantics.c (finish_id_expression): Fix logic.
(finish_qualified_id_expr): Don't try to use 'this' if we aren't in
a function.
* typeck.c (build_x_unary_op): Diagnose taking the address of a
constructor or destructor.
* tree.c (get_first_fn): Handle OFFSET_REF.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147638 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agocp:
jsm28 [Sun, 17 May 2009 16:09:02 +0000 (16:09 +0000)]
cp:
* tree.c (cxx_printable_name_internal): Allow consecutive
translated and untranslated cached copies of the name of the
current function.

testsuite:
* g++.dg/warn/translate-ice-1.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147636 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * iso-fortran-env.def: Define INT8, INT16, INT32, INT64, REAL32,
fxcoudert [Sun, 17 May 2009 14:15:24 +0000 (14:15 +0000)]
* iso-fortran-env.def: Define INT8, INT16, INT32, INT64, REAL32,
REAL64 and REAL128.
* gfortran.h (gfc_get_int_kind_from_width_isofortranenv,
gfc_get_real_kind_from_width_isofortranenv): New prototypes.
* iso-c-binding.def: Update definitions for the INT*_T,
INT_LEAST*_T and INT_FAST*_T named parameters.
* trans-types.c (get_typenode_from_name, get_int_kind_from_name,
gfc_get_real_kind_from_width_isofortranenv): New functions.

* gfortran.dg/c_kind_int128_test1.f03: Also test C_INT_FAST128_T.
* gfortran.dg/c_kind_int128_test2.f03: Update comment.
* gfortran.dg/c_kind_params.f90: Also test int_fast*_t.
* gfortran.dg/c_kinds.c: Add int_fast*_t arguments.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147635 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago libiberty/
jules [Sun, 17 May 2009 13:07:08 +0000 (13:07 +0000)]
libiberty/
* pex-win32.c (pex_win32_exec_child): Fix logic to avoid closing
standard handles (stdin, stdout, stderr) in parent.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147634 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago PR fortran/36260
fxcoudert [Sun, 17 May 2009 12:47:00 +0000 (12:47 +0000)]
PR fortran/36260

* intrinsic.c (add_functions, add_subroutines): Fix argument
names and wrap long lines.
* intrinsic.texi: Fix documentation and argument names of
LOG_GAMMA, DATAN2, DBESJN, DTIME, ETIME, FSTAT, STAT, LSTAT,
GET_COMMAND, IDATE, LTIME, MOVE_ALLOC, NINT, OR, PRODUCT,
SUM, RAND, RANDOM_SEED, REAL, SELECTED_INT_KIND,
SELECTED_REAL_KIND and XOR.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147633 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-17 Kai Tietz <kai.tietz@onevision.com>
ktietz [Sun, 17 May 2009 09:45:39 +0000 (09:45 +0000)]
2009-05-17  Kai Tietz  <kai.tietz@onevision.com>

       * config/i386/biarch32.h: New file.
       * config.gcc: Add for target i386-w64-* the biarch32.h to tm_file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147631 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago * config/mips/mips.md (*zero_extend<mode>_trunchi,
nemet [Sun, 17 May 2009 07:31:25 +0000 (07:31 +0000)]
* config/mips/mips.md (*zero_extend<mode>_trunchi,
*zero_extend<mode>_truncqi): Merge these into ...
(*zero_extend<GPR:mode>_trunc<SHORT:mode>): ... this new pattern.
Name the pattern following this as *zero_extendhi_truncqi.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147630 138bc75d-0d04-0410-961f-82ee72b054a4

15 years agoDaily bump.
gccadmin [Sun, 17 May 2009 00:16:40 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147629 138bc75d-0d04-0410-961f-82ee72b054a4

15 years ago2009-05-16 Brad Lucier <lucier@math.purdue.edu>
hjl [Sat, 16 May 2009 22:42:15 +0000 (22:42 +0000)]
2009-05-16  Brad Lucier  <lucier@math.purdue.edu>

PR middle-end/39301
* hwint.h: Add macro HOST_WIDEST_INT_PRINT.
* bitmap.c (bitmap_descriptor): Make fields HOST_WIDEST_INT.
(output_info): Make field HOST_WIDEST_INT.
(print_statistics): Use HOST_WIDEST_INT_PRINT.
(dump_bitmat_statistics): Same.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147624 138bc75d-0d04-0410-961f-82ee72b054a4