summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* * Makefile.tpl (POSTSTAGE1_CONFIGURE_FLAGS): Add libsupc++ todje2011-07-203-2/+14
| | | | | | | | link directories. * Makefile.in: Rebuild. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176521 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-20 Ed Smith-Rowland <3dw4rd@verizon.net>paolo2011-07-202-1/+6
| | | | | | | * include/precompiled/stdc++.h: Add scoped_allocator. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176520 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-20 Benjamin Kosnik <bkoz@redhat.com>bkoz2011-07-203-8/+52
| | | | | | | | | * include/std/bitset (operator[]): Make constexpr. * testsuite/23_containers/bitset/operations/constexpr.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176519 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-20 Sandra Loosemore <sandra@codesourcery.com>sandra2011-07-202-1/+6
| | | | | | | | | gcc/ * genrecog.c (make_insn_sequence): Correct position numbering when filtering out match_scratch and match_dup. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176518 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-20 Richard Guenther <rguenther@suse.de>rguenth2011-07-203-33/+52
| | | | | | | | | | | | | | | * tree-ssa-forwprop.c (remove_prop_source_from_use): Robustify against already removed statements. (forward_propagate_into_comparison): Remove dead defining stmts. (forward_propagate_into_gimple_cond): Likewise. (forward_propagate_into_cond): Simplify. (ssa_forward_propagate_and_combine): Handle changed cfg from forward_propagate_into_comparison. * tree-ssa-phiopt.c (conditional_replacement): Use proper locations for newly built statements. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176517 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/avr/avr.c (avr_rtx_costs): Set cost of SYMBOL_REF to 0.gjl2011-07-202-2/+6
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176516 138bc75d-0d04-0410-961f-82ee72b054a4
* changelog tweakjason2011-07-201-0/+2
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176514 138bc75d-0d04-0410-961f-82ee72b054a4
* PR c++/6709 (DR 743)jason2011-07-208-49/+185
| | | | | | | | | | | | | | | | | | | | | PR c++/42603 (DR 950) gcc/cp/ * parser.c (token_is_decltype, cp_lexer_next_token_is_decltype): New. (cp_parser_nested_name_specifier_opt): Allow decltype. (cp_parser_qualifying_entity): Likewise. (cp_parser_decltype): Replace source tokens with CPP_DECLTYPE. (cp_parser_simple_type_specifier): Handle decltype as scope. (cp_parser_base_specifier): Allow decltype. (cp_parser_base_clause): Don't crash on null base. * parser.h (CPP_KEYWORD, CPP_TEMPLATE_ID): Move to c-common.h. (CPP_NESTED_NAME_SPECIFIER, N_CP_TTYPES): Likewise. gcc/c-family/ * c-common.h (CPP_KEYWORD, CPP_TEMPLATE_ID): Move from cp/parser.h. (CPP_NESTED_NAME_SPECIFIER, N_CP_TTYPES): Likewise. (CPP_DECLTYPE): New. * c-common.c (c_parse_error): Handle CPP_DECLTYPE. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176513 138bc75d-0d04-0410-961f-82ee72b054a4
* PR bootstrap/49787ian2011-07-203-104/+124
| | | | | | | | | | * configure.ac: Move --enable-bootstrap handling earlier in file. If --enable-bootstrap and either --enable-build-with-cxx or --enable-build-poststage1-with-cxx, enable C++ automatically. * configure: Rebuild. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176512 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-20 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>krebbel2011-07-203-2/+7
| | | | | | | | | * config/s390/s390.c (s390_class_max_nregs): Fix return type. * config/s390/s390-protos.h (s390_class_max_nregs): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176511 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-20 Richard Guenther <rguenther@suse.de>rguenth2011-07-201-3/+1
| | | | | | | | | | | | | PR middle-end/18908 * tree.c (integer_all_onesp): Use TYPE_PRECISION, not mode precision. * tree-ssa-forwprop.c (simplify_bitwise_binary): Remove bogus ADDR_EXPR folding. Canonicalize X ^ ~0 as ~X. * gcc.dg/tree-ssa/pr18908.c: New testcase. * gcc.dg/tree-ssa/bitwise-sink.c: Adjust. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176510 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-20 Richard Guenther <rguenther@suse.de>rguenth2011-07-205-32/+34
| | | | | | | | | | | | | PR middle-end/18908 * tree.c (integer_all_onesp): Use TYPE_PRECISION, not mode precision. * tree-ssa-forwprop.c (simplify_bitwise_binary): Remove bogus ADDR_EXPR folding. Canonicalize X ^ ~0 as ~X. * gcc.dg/tree-ssa/pr18908.c: New testcase. * gcc.dg/tree-ssa/bitwise-sink.c: Adjust. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176508 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-20 Vladimir Makarov <vmakarov@redhat.com>vmakarov2011-07-202-0/+33
| | | | | | | | | * config/frv/frv.c (frv_register_move_cost): Define explicitly costs for subclasses of GR_REGS. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176507 138bc75d-0d04-0410-961f-82ee72b054a4
* PR target/49780uros2011-07-203-10/+24
| | | | | | | | | | | | * config/i386/predicates.md (no_seg_addres_operand): No more special. * config/i386/i386.c (ix86_decompose_address): Allow only subregs of DImode hard registers in base. (ix86_legitimate_address_p): Allow SImode and DImode base and index registers. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176506 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-20 Richard Guenther <rguenther@suse.de>rguenth2011-07-202-11/+26
| | | | | | | | | | * tree-ssa-structalias.c (new_var_info): Allocate oldsolution lazily. (unify_nodes): Deal with that. (solve_graph): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176505 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-20 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-07-202-1/+7
| | | | | | | | | * include/debug/safe_local_iterator.h (_Safe_local_iterator<>:: _Safe_local_iterator(const _Iterator&, size_type, const _Sequence*)): Fix typo. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176500 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-20 Chung-Lin Tang <cltang@codesourcery.com>cltang2011-07-205-0/+53
| | | | | | | | | | | | * config/arm/arm.c (arm_canonicalize_comparison): Add case to canonicalize left operand from ZERO_EXTEND to AND. testsuite/ * gcc.target/arm/combine-movs.c: New. * gcc.target/arm/unsigned-extend-2.c: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176495 138bc75d-0d04-0410-961f-82ee72b054a4
* Daily bump.gccadmin2011-07-201-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176494 138bc75d-0d04-0410-961f-82ee72b054a4
* * target.def (class_max_nregs): New hook.aesok2011-07-1932-124/+147
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * doc/tm.texi.in (TARGET_CLASS_MAX_NREGS): Document. * doc/tm.texi: Regenerate. * targhooks.c (default_class_max_nregs): New function. * targhooks.h (default_class_max_nregs): Declare. * ira.h (target_ira): Change type x_ira_reg_class_max_nregs and x_ira_reg_class_min_nregs arrays to unsigned char. * ira.c (setup_reg_class_nregs): Use TARGET_CLASS_MAX_NREGS target hook instead of CLASS_MAX_NREGS macro. * reginfo.c (restore_register_info): Ditto. * ira-conflicts.c (process_regs_for_copy): Use ira_reg_class_max_nregs array instead of CLASS_MAX_NREGS macro. Change type rclass and aclass vars to reg_class_t. * ira-costs.c (record_reg_classes): Use ira_reg_class_max_nregs array instead of CLASS_MAX_NREGS macro. Change type rclass var to reg_class_t. * reload.c (combine_reloads, find_reloads, find_reloads_address_1): Use ira_reg_class_max_nregs array instead of CLASS_MAX_NREGS macro. * config/i386/i386.h (CLASS_MAX_NREGS): Remove. * config/i386/i386.c (ix86_class_max_nregs): New function. (ix86_register_move_cost): Use TARGET_CLASS_MAX_NREGS target hook instead of CLASS_MAX_NREGS macro. (TARGET_CLASS_MAX_NREGS): Define. * config/avr/avr.h (CLASS_MAX_NREGS): Remove. * config/avr/avr-protos.h (class_max_nregs): Remove declaration. * config/avr/avr.c (class_max_nregs): Remove function. * config/alpha/alpha.h (CLASS_MAX_NREGS): Remove. * config/spu/spu.h (CLASS_MAX_NREGS): Remove. * config/mep/mep.h (CLASS_MAX_NREGS): Remove. * config/m32r/m32r.h (CLASS_MAX_NREGS): Remove. * config/microblaze/microblaze.h (CLASS_MAX_NREGS): Remove. * config/xtensa/xtensa.h (CLASS_MAX_NREGS): Remove. * config/stormy16/stormy16.h (CLASS_MAX_NREGS): Remove. * config/lm32/lm32.h (CLASS_MAX_NREGS): Remove. * config/moxie/moxie.h (CLASS_MAX_NREGS): Remove. * config/iq2000/iq2000.h (CLASS_MAX_NREGS): Remove. * config/mn10300/mn10300.h (CLASS_MAX_NREGS): Remove. * config/score/score.h (CLASS_MAX_NREGS): Remove. * config/vax/vax.h (CLASS_MAX_NREGS): Remove. * config/h8300/h8300.h (CLASS_MAX_NREGS): Remove. * config/v850/v850.h (CLASS_MAX_NREGS): Remove. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176490 138bc75d-0d04-0410-961f-82ee72b054a4
* * cif-code.def (OVERWRITABLE): Fix typo and move around.ebotcazou2011-07-193-21/+27
| | | | | | | | | | | (TARGET_OPTIMIZATION_MISMATCH): Delete. (EH_PERSONALITY): Fix typo. (NON_CALL_EXCEPTIONS): Fix message. (OPTIMIZATION_MISMATCH): Adjust message. * ipa-inline.c (can_inline_edge_p): Use CIF_OPTIMIZATION_MISMATCH. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176488 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-19 François Dumont <francois.cppdevs@free.fr>fdumont2011-07-1938-190/+2519
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * include/debug/safe_unordered_base.h, safe_unordered_sequence.h, safe_unordered_sequence.tcc, safe_local_iterator.h, safe_local_iterator.tcc: New, support for unordered sequence safe local iterators. * include/Makefile.am: Add previous files. * include/Makefile.in: Regenerate. * include/debug/unordered_map, unordered_set: Implement _Safe_unordered_sequence and expose _Safe_local_iterator. * include/debug/safe_iterator.h, safe_iterator.tcc: Refactor _Safe_iterator::_M_get_distance static method to expose it as __get_distance function and use it in _Safe_local_iterator type. * include/debug/formatter.h: Add __msg_local_iter_compare_bad _Debug_msg_id enum entry to notify invalid comparison between local iterators from different buckets. Add _Parameter constructor from _Safe_local_iterator. * include/debug/functions.h: Add __valid_range overload for _Safe_local_iterator. * src/debug.cc: Add _Safe_unordered_sequence_base and _Safe_local_iterator_base methods implementations. * config/abi/pre/gnu.ver: Add export of some _Safe_unordered_sequence_base and _Safe_local_iterator_base methods. * testsuite/util/debug/checks.h: Add use_invalid_iterator function to simulate use of a singular iterator. * testsuite/util/debug/unordered_checks.h: New, several functions to simulate classic invalid usage of unordered sequence local iterators. * testsuite/23_containers/unordered_map/debug/ use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc, use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc, invalid_local_iterator_compare_neg.cc: New. * testsuite/23_containers/unordered_multimap/debug/ use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc, use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc, invalid_local_iterator_compare_neg.cc: New. * testsuite/23_containers/unordered_set/debug/ use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc, use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc, invalid_local_iterator_compare_neg.cc: New. * testsuite/23_containers/unordered_multiset/debug/ use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc, use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc, invalid_local_iterator_compare_neg.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176487 138bc75d-0d04-0410-961f-82ee72b054a4
* ./:ian2011-07-197-21/+113
| | | | | | | | | | | | | | | * configure.ac: Add --enable-build-poststage1-with-cxx. If set, make C++ a boot_language. Set and substitute POSTSTAGE1_CONFIGURE_FLAGS. * Makefile.tpl (POSTSTAGE1_CONFIGURE_FLAGS): New variable. (STAGE[+id+]_CONFIGURE_FLAGS): Add $(POSTSTAGE1_CONFIGURE_FLAGS). * configure, Makefile.in: Rebuild. gcc/: * doc/install.texi (Configuration): Document --enable-build-poststage1-with-cxx. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176480 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/rsandifo2011-07-196-164/+231
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2011-07-19 Robert Millan <rmh@gnu.org> * config/mips/gnu-user.h: Copy from linux.h. Update comments. (GLIBC_DYNAMIC_LINKER): Remove. * config/mips/gnu-user64.h: Copy from linux64.h. Update comments. (GLIBC_DYNAMIC_LINKER32, GLIBC_DYNAMIC_LINKER64) (GLIBC_DYNAMIC_LINKERN32, UCLIBC_DYNAMIC_LINKERN32) (BIONIC_DYNAMIC_LINKERN32, GNU_USER_DYNAMIC_LINKERN32): Remove. (LINK_SPEC): Use GNU_USER_DYNAMIC_LINKER32, GNU_USER_DYNAMIC_LINKER64 and GNU_USER_LINK_EMULATIONN32. * config/mips/linux.h: Remove everything except for ... (GLIBC_DYNAMIC_LINKER): ... this macro. * config/mips/linux64.h: Remove everything except for ... (GLIBC_DYNAMIC_LINKER32, GLIBC_DYNAMIC_LINKER64) (GLIBC_DYNAMIC_LINKERN32, UCLIBC_DYNAMIC_LINKERN32) (BIONIC_DYNAMIC_LINKERN32): ... these macros. (GNU_USER_LINK_EMULATION32, GNU_USER_LINK_EMULATION64) (GNU_USER_LINK_EMULATIONN32): New macros. * config.gcc (mips64*-*-linux* | mipsisa64*-*-linux* | mips-*-linux*): Use the new headers. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176479 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/rsandifo2011-07-193-64/+124
| | | | | | | | | | | | | | | * rtl.h (mem_attrs): Turn offset and size fields into HOST_WIDE_INTs. Add offset_known_p and size_known_p fields. (MEM_OFFSET_KNOWN_P): Update accordingly. (MEM_OFFSET, MEM_SIZE_KNOWN_P, MEM_SIZE): Likewise. * emit-rtl.c (mem_attrs_htab_hash): Update after mem_attrs changes. (mem_attrs_eq_p, set_mem_attributes_minus_bitpos, set_mem_offset) (clear_mem_offset, set_mem_size, clear_mem_size, change_address) (adjust_address_1, widen_memory_access, set_mem_attrs_for_spill) (init_emit_regs): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176478 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/rsandifo2011-07-1915-86/+142
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * doc/rtl.texi (MEM_OFFSET_KNOWN_P): Document. (MEM_OFFSET): Change from returning an rtx to returning a HOST_WIDE_INT. * rtl.h (MEM_OFFSET_KNOWN_P): New macro. (MEM_OFFSET): Return a HOST_WIDE_INT rather than an rtx. * emit-rtl.h (set_mem_offset): Take a HOST_WIDE_INT rather than an rtx. (clear_mem_offset): Declare. * alias.c (ao_ref_from_mem): Adjust uses of MEM_OFFSET, using MEM_OFFSET_KNOWN_P to test whether the offset is known, and MEM_OFFSET to get a HOST_WIDE_INT offset. (nonoverlapping_memrefs_p): Likewise. Adjust calls to... (adjust_offset_for_component_ref): Take a bool "known_p" parameter and a HOST_WIDE_INT "offset" parameter. * builtins.c (get_memory_rtx): As for ao_ref_from_mem. Adjust calls to set_mem_offset, passing a HOST_WIDE_INT rather than an rtx. Use clear_mem_offset to clear the offset. * cfgcleanup.c (merge_memattrs): Likewise. * dwarf2out.c (tls_mem_loc_descriptor): Likewise. * function.c (assign_parm_find_stack_rtl): Likewise. (assign_parm_setup_stack): Likewise. * print-rtl.c (print_rtx): Likewise. * reload.c (find_reloads_subreg_address): Likewise. * simplify-rtx.c (delegitimize_mem_from_attrs): Likewise. * var-tracking.c (INT_MEM_OFFSET): Likewise. * emit-rtl.c (set_reg_attrs_from_value): Likewise. (get_mem_align_offset): Likewise. (set_mem_offset): Take a HOST_WIDE_INT rather than an rtx. (clear_mem_offset): New function. * config/mips/mips.c (r10k_safe_mem_expr_p): Take a HOST_WIDE_INT offset rather than an rtx. Assume both the expressio and offset are available. (r10k_needs_protection_p_1): Update accordingly, checking the expression and offset availability here instead. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176477 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/rsandifo2011-07-1928-107/+171
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * doc/rtl.texi (MEM_SIZE_KNOWN_P): Document. (MEM_SIZE): Change from returning an rtx to returning a HOST_WIDE_INT. * rtl.h (MEM_SIZE_KNOWN_P): New macro. (MEM_SIZE): Return a HOST_WIDE_INT rather than an rtx. * emit-rtl.h (set_mem_size): Take a HOST_WIDE_INT rather than an rtx. (clear_mem_size): Declare. * emit-rtl.c (set_mem_size): Take a HOST_WIDE_INT rather than an rtx. (clear_mem_size): New function. * alias.c (ao_ref_from_mem): Adjust uses of MEM_SIZE, using MEM_SIZE_KNOWN_P to test whether the size is known, and MEM_SIZE to get a HOST_WIDE_INT size. Adjust calls to set_mem_size, passing a HOST_WIDE_INT rather than an rtx. Use clear_mem_size to clear the size. (nonoverlapping_memrefs_p): Likewise. * builtins.c (get_memory_rtx, expand_builtin_memcmp): Likewise. (expand_builtin_init_trampoline): Likewise. * calls.c (compute_argument_addresses): Likewise. * cfgcleanup.c (merge_memattrs): Likewise. * dce.c (find_call_stack_args): Likewise. * dse.c (record_store, scan_insn): Likewise. * dwarf2out.c (dw_sra_loc_expr): Likewise. * expr.c (emit_block_move_hints): Likewise. * function.c (assign_parm_find_stack_rtl): Likewise. * print-rtl.c (print_rtx): Likewise. * reload.c (find_reloads_subreg_address): Likewise. * rtlanal.c (may_trap_p_1): Likewise. * var-tracking.c (track_expr_p): Likewise. * varasm.c (assemble_trampoline_template): Likewise. * config/arm/arm.c (arm_print_operand): Likewise. * config/h8300/h8300.c (h8sx_emit_movmd): Likewise. * config/i386/i386.c (expand_movmem_via_rep_mov): Likewise. (expand_setmem_via_rep_stos, expand_constant_movmem_prologue) (expand_constant_setmem_prologue): Likewise. * config/mips/mips.c (mips_get_unaligned_mem): Likewise. * config/rs6000/rs6000.c (expand_block_move): Likewise. (adjacent_mem_locations): Likewise. * config/s390/s390.c (s390_expand_setmem): Likewise. (s390_expand_insv): Likewise. * config/s390/s390.md (*extzv<mode>, *extv<mode>): Likewise. (*extendqi<mode>2_short_displ): Likewise. * config/sh/sh.c (expand_block_move): Likewise. * config/sh/sh.md (extv, extzv): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176476 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/rsandifo2011-07-192-186/+206
| | | | | | | | | | | | | | | | * emit-rtl.c (mem_attrs_eq_p): New function, split out from... (mem_attrs_htab_eq): ...here. (find_mem_attrs): Replace with... (set_mem_attrs): ...this function. Take a mem_attrs structure rather than individual fields. (set_mem_attributes_minus_bitpos, set_mem_alias_set) (set_mem_addr_space, set_mem_align, set_mem_expr, set_mem_offset) (set_mem_size, change_address, adjust_address_1, offset_address) (widen_memory_access, get_spill_slot_decl, set_mem_attrs_for_spill): Update accordingly. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176475 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/rsandifo2011-07-193-53/+103
| | | | | | | | | | | | | | | | | | | | * rtl.h (MEM_ALIAS_SET, MEM_EXPR, MEM_OFFSET, MEM_ADDR_SPACE) (MEM_SIZE, MEM_ALIGN): Redefine in terms of get_mem_attrs. Provide a dummy definition of MEM_ADDR_SPACE for generators. (target_rtl): Add x_mode_mem_attrs. (mode_mem_attrs): New macro. (get_mem_attrs): New function. * emit-rtl.c (get_mem_attrs): Rename to... (find_mem_attrs): ...this. (set_mem_attributes_minus_bitpos, set_mem_alias_set) (set_mem_addr_space, set_mem_align, set_mem_expr, set_mem_offset) (set_mem_size, change_address, adjust_address_1, offset_address) (widen_memory_access, get_spill_slot_decl, set_mem_attrs_for_spill): Update accordingly. (init_emit_regs): Initialize mode_mem_attrs. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176474 138bc75d-0d04-0410-961f-82ee72b054a4
* PR c++/49785jason2011-07-194-9/+50
| | | | | | * pt.c (coerce_template_parms): Handle non-pack after pack. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176472 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-19 Tobias Burnus <burnus@net-b.de>burnus2011-07-197-35/+166
| | | | | | | | | | | | | | | * expr.c (gfc_is_coarray): New function. * gfortran.h (gfc_is_coarray): New prototype. * interface.c (compare_parameter): Use it. 2011-07-19 Tobias Burnus <burnus@net-b.de> * gfortran.dg/coarray_args_1.f90: New. * gfortran.dg/coarray_args_2.f90: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176467 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-19 Vladimir Makarov <vmakarov@redhat.com>vmakarov2011-07-192-1/+6
| | | | | | | | | * MAINTAINERS (Register Allocation): Move myself from reviewers to maintainers. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176464 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-19 Richard Guenther <rguenther@suse.de>rguenth2011-07-195-26/+19
| | | | | | | | | | | | | | * tree-ssa-forwprop.c (lookup_logical_inverted_value): Remove TRUTH_*_EXPR handling. * tree-ssa-operands.c (get_expr_operands): Likewise. * tree-ssa-pre.c (fully_constant_expression): Likewise. * tree-ssa-uninit.c (use_pred_not_overlap_with_undef_path_pre): Likewise. (is_and_or_or): Likewise. (is_norm_cond_subset_of): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176463 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-19 Richard Guenther <rguenther@suse.de>rguenth2011-07-1956-396/+355
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * tree.h (fold_build_pointer_plus_loc): New helper function. (fold_build_pointer_plus_hwi_loc): Likewise. (fold_build_pointer_plus): Define. (fold_build_pointer_plus_hwi): Likewise. * builtins.c (std_gimplify_va_arg_expr): Use fold_build_pointer_plus. (fold_builtin_memory_op): Likewise. (fold_builtin_stpcpy): Likewise. (fold_builtin_memchr): Likewise. (fold_builtin_strstr): Likewise. (fold_builtin_strchr): Likewise. (fold_builtin_strrchr): Likewise. (fold_builtin_strpbrk): Likewise. (fold_builtin_strcat): Likewise. (expand_builtin_memory_chk): Likewise. (fold_builtin_memory_chk): Likewise. * c-typeck.c (build_unary_op): Likewise. * cgraphunit.c (thunk_adjust): Likewise. * fold-const.c (build_range_check): Likewise. (fold_binary_loc): Likewise. * omp-low.c (extract_omp_for_data): Likewise. (expand_omp_for_generic): Likewise. (expand_omp_for_static_nochunk): Likewise. (expand_omp_for_static_chunk): Likewise. * tree-affine.c (add_elt_to_tree): Likewise. * tree-data-ref.c (split_constant_offset_1): Likewise. * tree-loop-distribution.c (generate_memset_zero): Likewise. * tree-mudflap.c (mf_xform_derefs_1): Likewise. * tree-predcom.c (ref_at_iteration): Likewise. * tree-ssa-address.c (tree_mem_ref_addr): Likewise. (add_to_parts): Likewise. (create_mem_ref): Likewise. * tree-ssa-loop-ivopts.c (force_expr_to_var_cost): Likewise. * tree-ssa-loop-niter.c (number_of_iterations_lt_to_ne): Likewise. (number_of_iterations_le): Likewise. * tree-ssa-loop-prefetch.c (issue_prefetch_ref): Likewise. * tree-vect-data-refs.c (vect_analyze_data_refs): Likewise. (vect_create_addr_base_for_vector_ref): Likewise. * tree-vect-loop-manip.c (vect_update_ivs_after_vectorizer): Likewise. (vect_create_cond_for_alias_checks): Likewise. * tree-vrp.c (extract_range_from_assert): Likewise. * config/alpha/alpha.c (alpha_va_start): Likewise. (alpha_gimplify_va_arg_1): Likewise. * config/i386/i386.c (ix86_va_start): Likewise. (ix86_gimplify_va_arg): Likewise. * config/ia64/ia64.c (ia64_gimplify_va_arg): Likewise. * config/mep/mep.c (mep_expand_va_start): Likewise. (mep_gimplify_va_arg_expr): Likewise. * config/mips/mips.c (mips_va_start): Likewise. (mips_gimplify_va_arg_expr): Likewise. * config/pa/pa.c (hppa_gimplify_va_arg_expr): Likewise. * config/rs6000/rs6000.c (rs6000_va_start): Likewise. (rs6000_gimplify_va_arg): Likewise. * config/s390/s390.c (s390_va_start): Likewise. (s390_gimplify_va_arg): Likewise. * config/sh/sh.c (sh_va_start): Likewise. (sh_gimplify_va_arg_expr): Likewise. * config/sparc/sparc.c (sparc_gimplify_va_arg): Likewise. * config/spu/spu.c (spu_va_start): Likewise. (spu_gimplify_va_arg_expr): Likewise. * config/stormy16/stormy16.c (xstormy16_expand_builtin_va_start): Likewise. (xstormy16_gimplify_va_arg_expr): Likewise. * config/xtensa/xtensa.c (xtensa_va_start): Likewise. (xtensa_gimplify_va_arg_expr): Likewise. c-family/ * c-common.c (pointer_int_sum): Use fold_build_pointer_plus. * c-omp.c (c_finish_omp_for): Likewise. cp/ * call.c (build_special_member_call): Use fold_build_pointer_plus. * class.c (build_base_path): Likewise. (convert_to_base_statically): Likewise. (dfs_accumulate_vtbl_inits): Likewise. * cp-gimplify.c (cxx_omp_clause_apply_fn): Likewise. * except.c (expand_start_catch_block): Likewise. * init.c (expand_virtual_init): Likewise. (build_new_1): Likewise. (build_vec_delete_1): Likewise. (build_vec_delete): Likewise. * rtti.c (build_headof): Likewise. (tinfo_base_init): Likewise. * typeck.c (get_member_function_from_ptrfunc): Likewise. (cp_build_addr_expr_1): Likewise. * typeck2.c (build_m_component_ref): Likewise. fortran/ * trans-expr.c (fill_with_spaces): Use fold_build_pointer_plus. (gfc_trans_string_copy): Likewise. * trans-intrinsic.c (gfc_conv_intrinsic_repeat): Likewise. * trans-types.c (gfc_get_array_descr_info): Likewise. * trans.c (gfc_build_array_ref): Likewise. java/ * builtins.c (static): Use fold_build_pointer_plus. * class.c (make_class_data): Likewise. (build_symbol_entry): Likewise. * except.c (build_exception_object_ref): Likewise. * expr.c (build_java_arrayaccess): Likewise. (build_field_ref): Likewise. (build_known_method_ref): Likewise. (build_invokevirtual): Likewise. objc/ * objc-next-runtime-abi-02.c (objc_v2_build_ivar_ref): Use fold_build_pointer_plus. (objc2_build_ehtype_initializer): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176461 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-19 Richard Guenther <rguenther@suse.de>rguenth2011-07-192-71/+22
| | | | | | | | | | | | | * expr.c (expand_expr_real_2): Remove TRUTH_*_EXPR handling. (expand_expr_real_1): Remove TRUTH_*IF_EXPR and STATEMENT_LIST handling. PR middle-end/18908 * expr.c (expand_expr_real_2): Do not unnecessarily truncate the result of BIT_*_EXPR to bitfield precision. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176460 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-19 Janus Weil <janus@gcc.gnu.org>janus2011-07-194-1/+20
| | | | | | | | | | | | | | PR fortran/49708 * resolve.c (resolve_allocate_expr): Fix diagnostics for pointers. 2011-07-19 Janus Weil <janus@gcc.gnu.org> PR fortran/49708 * gfortran.dg/allocate_error_3.f90: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176447 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/rsandifo2011-07-192-13/+23
| | | | | | | | | PR tree-optimization/49742 * tree-data-ref.c (get_references_in_stmt): Treat the lhs of a call as a potential write. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176446 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-19 Richard Guenther <rguenther@suse.de>rguenth2011-07-192-80/+50
| | | | | | | | | * Makefile.in (tree-ssa-forwprop.o): Depend on gimple-pretty-print.h. * tree-ssa-forwprop.c: Include gimple-pretty-print.h. (forward_propagate_comparison): Simplify, remove obsolete code. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176445 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-19 Richard Guenther <rguenther@suse.de>rguenth2011-07-199-42/+53
| | | | | | | | | | | | | | | | | * gimplify.c (gimplify_expr): Gimplify TRUTH_NOT_EXPR as BIT_XOR_EXPR, same as the RTL expander does. * tree-cfg.c (verify_expr): Disallow TRUTH_NOT_EXPR in the gimple IL. (verify_gimple_assign_unary): Likewise. * tree-ssa-propagate.c (valid_gimple_rhs_p): Disallow TRUTH_*_EXPR. * tree-ssa-forwprop.c (forward_propagate_comparison): Handle BIT_NOT_EXPR and BIT_XOR_EXPR instead of TRUTH_NOT_EXPR. * gcc.dg/tree-ssa/bool-10.c: Adjust expected pattern. * gcc.dg/tree-ssa/bool-11.c: Likewise. * gcc.dg/torture/20110719-1.c: New testcase. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176442 138bc75d-0d04-0410-961f-82ee72b054a4
* PR tree-optimization/49768jakub2011-07-194-5/+33
| | | | | | | | | | | * gimple-fold.c (fold_nonarray_ctor_reference): Return NULL if offset is smaller than bitoffset, but offset+size is bigger than bitoffset. * gcc.c-torture/execute/pr49768.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176437 138bc75d-0d04-0410-961f-82ee72b054a4
* PR tree-optimization/49771irar2011-07-194-3/+45
| | | | | | | | | * tree-vect-loop-manip.c (vect_vfa_segment_size): In case of zero step, set segment length to the size of the data-ref's type. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176434 138bc75d-0d04-0410-961f-82ee72b054a4
* Daily bump.gccadmin2011-07-191-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176430 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-18 Martin Jambor <mjambor@suse.cz>jamborm2011-07-1820-1408/+2364
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * ipa-prop.h: Include alloc-pool.h, all sorts of updates to general comments. (ipcp_values_pool): Declare. (ipcp_sources_pool): Likewise. (ipcp_lattice): Changed to forward declaration. (ipa_param_descriptor): Removed fields ipcp_lattice, types and cannot_devirtualize. (ipa_node_params): New fields descriptors, lattices, known_vals, clone_for_all_contexts and node dead, removed fields params and count_scale. (ipa_set_param_count): Removed. (ipa_get_param_count): Made to work with descriptors vector. (ipa_get_param): Updated. (ipa_param_cannot_devirtualize_p): Removed. (ipa_param_types_vec_empty): Likewise. (ipa_set_param_used): New function. (ipa_get_param_used): Updated to use descriptors vector. (ipa_func_list): Removed. (ipa_init_func_list): Removed declaration. (ipa_push_func_to_list_1): Likewise. (ipa_pop_func_from_list): Likewise. (ipa_push_func_to_list): Removed. (ipa_lattice_from_jfunc): Remove declaration. (ipa_get_jf_pass_through_result): Declare. (ipa_get_jf_ancestor_result): Likewise. (ipa_value_from_jfunc): Likewise. (ipa_get_lattice): Update. (ipa_lat_is_single_const): New function. * ipa-prop.c (ipa_push_func_to_list_1): Removed. (ipa_init_func_list): Likewise. (ipa_pop_func_from_list): Likewise. (ipa_get_param_decl_index): Fix coding style. (count_formal_params): Removed. (count_formal_params_1): Renamed to count_formal_params. (ipa_populate_param_decls): Update to use descriptors vector. (ipa_initialize_node_params): Likewise. (visit_ref_for_mod_analysis): Use ipa_set_param_used. (ipa_analyze_params_uses): Likewise. (ipa_free_node_params_substructures): Likewise and free also lattices and known values. (duplicate_array): Removed. (ipa_edge_duplication_hook): Add the new edge to the list of edge clones. (ipa_node_duplication_hook): Update to use new lattices. (ipa_free_all_structures_after_ipa_cp): Free alloc pools. (ipa_free_all_structures_after_iinln): Likewise. (ipa_write_node_info): Update to use new lattices. (ipa_read_node_info): Likewise. (ipa_get_jf_pass_through_result): New function. (ipa_get_jf_ancestor_result): Likewise. (ipa_value_from_jfunc): Likewise. (ipa_cst_from_jfunc): Reimplemented using ipa_value_from_jfunc. * ipa-cp.c: Reimplemented. * params.def (PARAM_DEVIRT_TYPE_LIST_SIZE): Removed. (PARAM_IPA_CP_VALUE_LIST_SIZE): New parameter. (PARAM_IPA_CP_EVAL_THRESHOLD): Likewise. * Makefile.in (IPA_PROP_H): Added alloc-pool.h to dependencies. * doc/invoke.texi (devirt-type-list-size): Removed description. (ipa-cp-value-list-size): Added description. * testsuite/gcc.dg/ipa/ipa-1.c: Updated testcase dump scan. * testsuite/gcc.dg/ipa/ipa-2.c: Likewise. * testsuite/gcc.dg/ipa/ipa-3.c: Likewise and made functions static. * testsuite/gcc.dg/ipa/ipa-4.c: Updated testcase dump scan. * testsuite/gcc.dg/ipa/ipa-5.c: Likewise. * testsuite/gcc.dg/ipa/ipa-7.c: Likewise. * testsuite/gcc.dg/ipa/ipa-8.c: Updated testcase dump scan. * testsuite/gcc.dg/ipa/ipacost-1.c: Likewise. * testsuite/gcc.dg/ipa/ipacost-2.c: Likewise and increased sizes of some functions. * testsuite/gcc.dg/ipa/ipcp-1.c: New test. * testsuite/gcc.dg/ipa/ipcp-2.c: Likewise. * testsuite/gcc.dg/tree-ssa/ipa-cp-1.c: Updated testcase. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176424 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-18 Martin Jambor <mjambor@suse.cz>jamborm2011-07-182-1/+6
| | | | | | | | | | gcc/cp/ * parser.c (cp_parser_parameter_declaration_list): Initialize parenthesized_p. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176423 138bc75d-0d04-0410-961f-82ee72b054a4
* * bb-reorder.c (fix_crossing_conditional_branches): Emit all insnsrth2011-07-182-24/+17
| | | | | | before calling create_basic_block. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176420 138bc75d-0d04-0410-961f-82ee72b054a4
* PR middle-end/49675jakub2011-07-184-0/+43
| | | | | | | | | | | * tree.c (build_common_builtin_nodes): Register __builtin_return_address, __cyg_profile_func_enter and __cyg_profile_func_exit. * gfortran.dg/pr49675.f90: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176417 138bc75d-0d04-0410-961f-82ee72b054a4
* * bb-reorder.c (emit_barrier_after_bb): Split out of ...rth2011-07-182-22/+22
| | | | | | | (add_labels_and_missing_jumps): ... here. (fix_up_fall_thru_edges, fix_crossing_conditional_branches): Use it. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176416 138bc75d-0d04-0410-961f-82ee72b054a4
* PR target/47744uros2011-07-182-11/+18
| | | | | | | | | * config/i386/i386.c (ix86_decompose_address): Allow only subregs of DImode hard registers in PLUS address chains. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176413 138bc75d-0d04-0410-961f-82ee72b054a4
* PR bootstrap/49769ro2011-07-182-7/+33
| | | | | | | | | | | | | | | | | | | | | | * config.gcc (alpha*-*-linux*): Add crtfastmath.o to extra_parts. (alpha*-*-freebsd*): Likewise. (i[34567]86-*-linux*, i[34567]86-*-kfreebsd*-gnu, i[34567]86-*-knetbsd*-gnu, i[34567]86-*-gnu*, i[34567]86-*-kopensolaris*-gnu): Add crtprec32.o, crtprec64.o, crtprec80.o, crtfastmath.o to extra_parts for all targets. (ia64*-*-elf*): Remove extra_parts. (sparc-*-linux*): Add crtfastmath.o to extra_parts. (sparc64-*-linux*): Likewise. (sparc64-*-freebsd*): Likewise. Revert: * config.gcc (ia64*-*-freebsd*): Remove crtfastmath.o from extra_parts. (ia64*-*-linux*): Likewise. (mips64*-*-linux*): Likewise. (mips*-*-linux*): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176406 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-18 Paolo Carlini <paolo.carlini@oracle.com>paolo2011-07-183-2/+9
| | | | | | | | | | PR libstdc++/48430 * include/bits/shared_ptr.h (struct hash<shared_ptr<>>): Use __hash_base. * include/bits/unique_ptr.h (struct hash<unique_ptr<>>): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176405 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-07-17 Tobias Burnus <burnus@net-b.de>burnus2011-07-182-3/+10
| | | | | | | | | * trans-decl.c (gfc_build_qualified_array): Make coarray's token TYPE_QUAL_RESTRICT. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176404 138bc75d-0d04-0410-961f-82ee72b054a4
OpenPOWER on IntegriCloud