OSDN Git Service

pf3gnuchains/gcc-fork.git
12 years agoAlways dereference nil receiver passed to value method.
ian [Tue, 13 Sep 2011 21:34:24 +0000 (21:34 +0000)]
Always dereference nil receiver passed to value method.

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

12 years ago * cfgcleanup.c (try_head_merge_bb): If get_condition returns
bernds [Tue, 13 Sep 2011 20:40:53 +0000 (20:40 +0000)]
* cfgcleanup.c (try_head_merge_bb): If get_condition returns
NULL for a jump that is a cc0 insn, pick the previous insn for
move_before.

* gcc.c-torture/compile/20110913-1.c: New test.

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

12 years ago * testsuite-management: New.
dnovillo [Tue, 13 Sep 2011 20:24:47 +0000 (20:24 +0000)]
* testsuite-management: New.
* testsuite-management/validate_failures.py: New.

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

12 years ago2011-09-13 Janus Weil <janus@gcc.gnu.org>
janus [Tue, 13 Sep 2011 18:37:33 +0000 (18:37 +0000)]
2011-09-13  Janus Weil  <janus@gcc.gnu.org>

PR fortran/50379
* symbol.c (check_conflict): Check conflict between GENERIC and RESULT
attributes.

2011-09-13  Janus Weil  <janus@gcc.gnu.org>

PR fortran/50379
* gfortran.dg/result_2.f90: New.

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

12 years agoFix inheriting hidden methods with arguments of hidden type.
ian [Tue, 13 Sep 2011 18:24:45 +0000 (18:24 +0000)]
Fix inheriting hidden methods with arguments of hidden type.

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

12 years agogcc/
rsandifo [Tue, 13 Sep 2011 18:17:03 +0000 (18:17 +0000)]
gcc/
* config/v850/v850.md: Use match_test rather than eq/ne symbol_ref
throughout file.

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

12 years agogcc/
rsandifo [Tue, 13 Sep 2011 18:14:26 +0000 (18:14 +0000)]
gcc/
* config/pa/pa.md: Use match_test rather than eq/ne symbol_ref
throughout file.

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

12 years agogcc/
rsandifo [Tue, 13 Sep 2011 18:14:00 +0000 (18:14 +0000)]
gcc/
* config/mn10300/mn10300.md: Use match_test rather than eq/ne
symbol_ref throughout file.

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

12 years agogcc/
rsandifo [Tue, 13 Sep 2011 18:13:24 +0000 (18:13 +0000)]
gcc/
* config/m68k/m68k.md: Use match_test rather than eq/ne symbol_ref
throughout file.

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

12 years agogcc/
rsandifo [Tue, 13 Sep 2011 18:12:53 +0000 (18:12 +0000)]
gcc/
* config/h8300/h8300.md: Use match_test rather than eq/ne symbol_ref
throughout file.

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

12 years agogcc/
rsandifo [Tue, 13 Sep 2011 18:11:00 +0000 (18:11 +0000)]
gcc/
* config/arm/arm.md: Use match_test rather than eq/ne symbol_ref
throughout file.
* config/arm/neon.md: Likewise.
* config/arm/vfp.md: Likewise.
* config/arm/thumb2.md: Likewise.
* config/arm/cortex-m4.md: Likewise.

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

12 years agoFix inherited hidden methods that return hidden types.
ian [Tue, 13 Sep 2011 17:21:40 +0000 (17:21 +0000)]
Fix inherited hidden methods that return hidden types.

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

12 years ago2011-09-13 Sevak Sargsyan <sevak.sargsyan@ispras.ru>
amonakov [Tue, 13 Sep 2011 16:21:38 +0000 (16:21 +0000)]
2011-09-13  Sevak Sargsyan <sevak.sargsyan@ispras.ru>

* config/arm/neon.md (neon_vabd<mode>_2, neon_vabd<mode>_3): New
define_insn patterns for combine.

* gcc.target/arm/neon-combine-sub-abs-into-vabd.c: New test.

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

12 years agogcc/
rsandifo [Tue, 13 Sep 2011 14:42:29 +0000 (14:42 +0000)]
gcc/
2011-09-13  Giuseppe Scrivano  <gscrivano@gnu.org>

* reorg.c: Always define make_return_insns.

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

12 years agoc++/48320 - Template parameter packs cannot be expanded in default template arguments
dodji [Tue, 13 Sep 2011 14:39:15 +0000 (14:39 +0000)]
c++/48320 - Template parameter packs cannot be expanded in default template arguments

gcc/cp/

PR c++/48320
* pt.c (template_parameter_pack_p):  Support TEMPLATE_PARM_INDEX
nodes.  Add a comment.
(arg_from_parm_pack_p):  New static function, factorized out from
tsubst_pack_expansion and extended to support non-type parameter
packs represented with TEMPLATE_PARM_INDEX nodes.
(tsubst_pack_expansion): Use arg_from_parm_pack_p.

gcc/testsuite/

PR c++/48320
* g++.dg/cpp0x/variadic116.C: New test case.

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

12 years ago PR other/49533
hubicka [Tue, 13 Sep 2011 14:28:39 +0000 (14:28 +0000)]
PR other/49533
* cgraphunit.c (assemble_thunks_and_aliases): Force alias to be output.

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

12 years ago other/49533
hubicka [Tue, 13 Sep 2011 14:03:04 +0000 (14:03 +0000)]
other/49533
* ipa-inline-transform.c (can_remove_node_now_p): Fix thunkos.

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

12 years ago2011-09-13 Paul Brook <paul@codesourcery.com>
pbrook [Tue, 13 Sep 2011 12:48:33 +0000 (12:48 +0000)]
2011-09-13  Paul Brook  <paul@codesourcery.com>

gcc/
* config/arm/arm.h (ASM_PREFERRED_EH_DATA_FORMAT): Define.
(ARM_TARGET2_DWARF_FORMAT): Provide default definition.
* config/arm/linux-eabi.h (ARM_TARGET2_DWARF_FORMAT): Define.
* config/arm/symbian.h (ARM_TARGET2_DWARF_FORMAT): Define.
* config/arm/uclinux-eabi.h(ARM_TARGET2_DWARF_FORMAT): Define.
* config/arm/t-bpabi (EXTRA_HEADERS): Add unwind-arm-common.h.
* config/arm/t-symbian (EXTRA_HEADERS): Add unwind-arm-common.h.
* config/c6x/c6x.c (c6x_output_file_unwind): Don't rely on dwarf2 code
enabling unwind tables.
(c6x_debug_unwind_info): New function.
(TARGET_ARM_EABI_UNWINDER): Define.
(TARGET_DEBUG_UNWIND_INFO): Define.
* config/c6x/c6x.h (DWARF_FRAME_RETURN_COLUMN): Define.
(TARGET_EXTRA_CFI_SECTION): Remove.
* config/c6x/t-c6x-elf (EXTRA_HEADERS): Set.
* ginclude/unwind-arm-common.h: New file.

libgcc/
* config.host (tic6x-*-*): Add c6x/t-c6x-elf.  Set unwind_header.
* unwind-c.c (PERSONALITY_FUNCTION): Use UNWIND_POINTER_REG.
* unwind-arm-common.inc: New file.
* config/arm/unwind-arm.c: Use unwind-arm-common.inc.
* config/arm/unwind-arm.h: Use unwind-arm-common.h.
(_GLIBCXX_OVERRIDE_TTYPE_ENCODING): Define.
* config/c6x/libunwind.S: New file.
* config/c6x/pr-support.c: New file.
* config/c6x/unwind-c6x.c: New file.
* config/c6x/unwind-c6x.h: New file.
* config/c6x/t-c6x-elf: New file.

libstdc++-v3/
* libsupc++/eh_arm.cc (__cxa_end_cleanup): Add C6X implementation.
* libsupc++/eh_call.cc (__cxa_call_unexpected): Set rtti_base.
* libsupc++/eh_personality.cc (NO_SIZE_OF_ENCODED_VALUE): Remove
__ARM_EABI_UNWINDER__ check.
(parse_lsda_header): Check _GLIBCXX_OVERRIDE_TTYPE_ENCODING.
(get_ttype_entry): Use generic implementation on ARM EABI.
(check_exception_spec): Use _Unwind_decode_typeinfo_ptr and
UNWIND_STACK_REG.
(PERSONALITY_FUNCTION): Set ttype_base.

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

12 years ago PR target/50358
gjl [Tue, 13 Sep 2011 09:23:36 +0000 (09:23 +0000)]
PR target/50358
* config/avr/predicates.md (const_1_to_6_operand): New predicate.
* config/avr/avr.md: (extend_s): New code attribute.
(mul_r_d): New code attribute.
(*maddqihi4, *umaddqihi4): New insns.
(*msubqihi4, *umsubqihi4): New insns.
(*usmaddqihi4, *sumaddqihi4): New insns.
(*usmsubqihi4, *susubdqihi4): New insns.
(*umaddqihi4.uconst, *maddqihi4.sconst): New insn-and-splits.
(*umsubqihi4.uconst, *msubqihi4.sconst): New insn-and-splits.
(*umsubqihi4.uconst.ashift): New insn-and-split.
(*msubqihi4.sconst.ashift): New insn-and-split.
(*sumaddqihi4.uconst): New insn-and-split.
(*sumsubqihi4.uconst): New insn-and-split.
* config/avr/avr.c (avr_rtx_costs): Report costs of above in case
PLUS:HI and MINUS:HI.

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

12 years agoSMS: Minor misc. fixes
revitale [Tue, 13 Sep 2011 06:01:24 +0000 (06:01 +0000)]
SMS: Minor misc. fixes

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

12 years agoDaily bump.
gccadmin [Tue, 13 Sep 2011 00:19:50 +0000 (00:19 +0000)]
Daily bump.

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

12 years ago2011-09-12 Daniel Krugler <daniel.kruegler@googlemail.com>
paolo [Tue, 13 Sep 2011 00:06:25 +0000 (00:06 +0000)]
2011-09-12  Daniel Krugler  <daniel.kruegler@googlemail.com>
    Paolo Carlini  <paolo.carlini@oracle.com>

* include/std/tuple (_Head_base<>::_M_head, _Head_base<>::_M_tail,
_Tuple_impl<>::_M_head, _Tuple_impl<>::_M_tail): Change to static
constexpr functions; adjust everywhere.
(__get_helper, get): Declare constexpr all three overloads.
(tuple_cat): Declare constexpr; use late return type to improve
error messages.
* include/std/utility (__pair_get<>::__get, __pair_get<>::__move_get,
__pair_get<>::__const_get, get): Declare all constexpr.
* include/std/array (get): Likewise.
* testsuite/20_util/tuple/creation_functions/constexpr.cc: Re-enable
tuple_cat test.
* testsuite/23_containers/array/constexpr_get.cc: New.
* testsuite/20_util/tuple/element_access/constexpr_get.cc: Likewise.
* testsuite/20_util/pair/constexpr_get.cc: Likewise.
* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
line number.

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

12 years ago * rtl.c (copy_rtx): Do not handle frame_related, jump or call
bernds [Mon, 12 Sep 2011 23:38:21 +0000 (23:38 +0000)]
* rtl.c (copy_rtx): Do not handle frame_related, jump or call
flags specially.

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

12 years ago PR bootstrap/50010
jakub [Mon, 12 Sep 2011 19:29:31 +0000 (19:29 +0000)]
PR bootstrap/50010
* dwarf2cfi.c (add_cfis_to_fde): Ignore non-active insns in between
NOTE_INSN_CFI notes, with the exception of
NOTE_INSN_SWITCH_TEXT_SECTIONS.

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

12 years agogcc/
rsandifo [Mon, 12 Sep 2011 19:25:59 +0000 (19:25 +0000)]
gcc/
2011-09-11  Bernd Schmidt  <bernds@codesourcery.com>
    Richard Sandiford  <rdsandiford@googlemail.com>

* config/mips/mips.c (mips_epilogue): New structure.
(mips16e_save_restore_reg): Queue REG_CFA_RESTORE notes when
restoring registers.
(mips_epilogue_emit_cfa_restores): New function.
(mips_epilogue_set_cfa): Likewise.
(mips_restore_reg): Queue REG_CFA_RESTORE notes.  When restoring
the current CFA register from the stack, redefine the CFA in terms
of the stack pointer.
(mips_expand_epilogue): Set up mips_epilogue.  Attach CFA information
to the epilogue instructions.

gcc/testsuite/
* gcc.target/mips/mips.exp (mips_option_groups): Add debug options.
* gcc.target/mips/interrupt_handler-2.c: New test.
* gcc.target/mips/interrupt_handler-3.c: Likewise.

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

12 years agogcc/
rsandifo [Mon, 12 Sep 2011 19:25:39 +0000 (19:25 +0000)]
gcc/
* config/mips/mips.c (mips16e_save_restore_reg): Add a reg_parm_p
argument.
(mips16e_build_save_restore): Update accordingly.

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

12 years ago * pt.c (type_unification_real): Fix handling of DEDUCE_CONV
jason [Mon, 12 Sep 2011 18:05:03 +0000 (18:05 +0000)]
* pt.c (type_unification_real): Fix handling of DEDUCE_CONV
with no deducible template parameters.
* call.c (rejection_reason_code): Add rr_template_conversion.
(print_z_candidate): Handle it.
(template_conversion_rejection): New.
(build_user_type_conversion_1): Use it.

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

12 years ago * call.c (merge_conversion_sequences): Set bad_p and user_conv_p
jason [Mon, 12 Sep 2011 18:04:55 +0000 (18:04 +0000)]
* call.c (merge_conversion_sequences): Set bad_p and user_conv_p
on all of the second conversion sequence.
(build_user_type_conversion_1): Set bad_p on the ck_user conv.
(convert_like_real): Handle bad ck_ref_bind with user_conv_p in the
first section.  Fix loop logic.
(initialize_reference): Call convert_like for diagnostics when
we have a (bad) conversion.

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

12 years ago * call.c (convert_class_to_reference)
jason [Mon, 12 Sep 2011 18:04:46 +0000 (18:04 +0000)]
* call.c (convert_class_to_reference)
(convert_class_to_reference_1): Remove.
(reference_binding): Use build_user_type_conversion_1 instead.

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

12 years ago * call.c (initialize_reference): Add flags parm.
jason [Mon, 12 Sep 2011 18:04:39 +0000 (18:04 +0000)]
* call.c (initialize_reference): Add flags parm.
* decl.c (grok_reference_init): Likewise.
(check_initializer): Pass it.
* typeck.c (convert_for_initialization): Likewise.
* cp-tree.h: Adjust.

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

12 years ago * cp-tree.h (LOOKUP_NO_RVAL_BIND): New.
jason [Mon, 12 Sep 2011 18:04:31 +0000 (18:04 +0000)]
* cp-tree.h (LOOKUP_NO_RVAL_BIND): New.
* call.c (conditional_conversion): Use it.
(reference_binding): Fix handling of xvalues.

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

12 years ago * call.c (implicit_conversion): Check BRACE_ENCLOSED_INITIALIZER_P
jason [Mon, 12 Sep 2011 18:04:23 +0000 (18:04 +0000)]
* call.c (implicit_conversion): Check BRACE_ENCLOSED_INITIALIZER_P
before forcing instantiation.

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

12 years ago PR rtl-optimization/50212
jakub [Mon, 12 Sep 2011 17:55:36 +0000 (17:55 +0000)]
PR rtl-optimization/50212
* bb-reorder.c (find_rarely_executed_basic_blocks_and_crossing_edges):
Skip also lps with NULL landing_pad or non-LABEL_P landing_pad.

* g++.dg/other/pr50212.C: New test.

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

12 years ago PR debug/50299
jakub [Mon, 12 Sep 2011 15:49:38 +0000 (15:49 +0000)]
PR debug/50299
* calls.c (load_register_parameters): Use use_reg_mode instead
of use_reg when adding a single register CALL_INSN_FUNCTION_USAGE
entry.
(expand_call): Set EXPR_LIST mode to TYPE_MODE of the argument
for stack CALL_INSN_FUNCTION_USAGE uses.
* expr.h (use_reg_mode): New prototype.
(use_reg): Changed into inline around use_reg_mode.
* expr.c (use_reg): Renamed to...
(use_reg_mode): ... this.  Added MODE argument, set EXPR_LIST
mode to that mode instead of VOIDmode.
* var-tracking.c (prepare_call_arguments): Don't track parameters
whose EXPR_LIST mode is VOIDmode, BLKmode or X mode isn't convertible
to it using lowpart_subreg.  Convert VALUE and REG/MEM to the
EXPR_LIST mode.

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

12 years agogcc/
gjl [Mon, 12 Sep 2011 10:06:46 +0000 (10:06 +0000)]
gcc/
PR target/43746
* config/avr/avr.c (AVR_SECTION_PROGMEM): New Define.
(progmem_section): New Variable.
(avr_asm_init_sections): Initialize it.
(TARGET_ASM_SELECT_SECTION): Define to...
(avr_asm_select_section): ... this new Function.
(avr_replace_prefix): New Function.
(avr_asm_function_rodata_section): Use it.
(avr_insert_attributes): Don't add section attribute for PROGMEM.
(avr_section_type_flags): Use avr_progmem_p instead of section
name to detect if object is in PROGMEM.
(avr_asm_named_section): Set section name prefix for objects in
PROGMEM.

testsuite/
PR target/43746
* testsuite/gcc.target/avr/torture/avr-torture.exp
(AVR_TORTURE_OPTIONS): Add test cases "-O2 -fdata-sections" and
"-O2 -fmerge-all-constants".

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

12 years ago PR bootstrap/50352
jakub [Mon, 12 Sep 2011 09:33:36 +0000 (09:33 +0000)]
PR bootstrap/50352
* config/arm/arm.md (*push_fp_multi): Add % before %( and %) in the
sprintf format string.

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

12 years ago2011-09-12 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 12 Sep 2011 06:01:15 +0000 (06:01 +0000)]
2011-09-12  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/50343
* tree-vect-patterns.c (vect_recog_dot_prod_pattern): Check
that the reduction is over an SSA name before checking its
definition.

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

12 years agoDaily bump.
gccadmin [Mon, 12 Sep 2011 00:19:00 +0000 (00:19 +0000)]
Daily bump.

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

12 years ago2011-09-11 Daniel Krugler <daniel.kruegler@googlemail.com>
paolo [Sun, 11 Sep 2011 22:10:21 +0000 (22:10 +0000)]
2011-09-11  Daniel Krugler  <daniel.kruegler@googlemail.com>

PR libstdc++/50159
* include/std/tuple (tuple_cat): Reimplement according to the
resolution of LWG 1385.
* include/std/type_traits: Define __and_ and __or_ for zero
arguments too; minor tweaks.
* testsuite/20_util/tuple/creation_functions/tuple_cat.cc: New.
* testsuite/20_util/tuple/creation_functions/constexpr.cc: Disable
for now tuple_cat test.
* testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
line numbers.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.
* doc/xml/manual/status_cxx200x.xml: Update.

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

12 years ago2011-09-11 Thomas Koenig <tkoenig@gcc.gnu.org>
tkoenig [Sun, 11 Sep 2011 20:48:26 +0000 (20:48 +0000)]
2011-09-11  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/50327
* frontend-passes.c (dummy_expr_callback):  New function.
(convert_do_while):  New function.
(optimize_namespace):  Call code walker to convert do while loops.

2011-09-11  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/50327
* gfortran.dg/do_while_1.f90:  New test.

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

12 years ago2011-09-11 Janus Weil <janus@gcc.gnu.org>
janus [Sun, 11 Sep 2011 20:12:24 +0000 (20:12 +0000)]
2011-09-11  Janus Weil  <janus@gcc.gnu.org>

PR fortran/35831
PR fortran/47978
* interface.c (check_dummy_characteristics): New function to check the
characteristics of dummy arguments.
(gfc_compare_interfaces,gfc_check_typebound_override): Call it here.

2011-09-11  Janus Weil  <janus@gcc.gnu.org>

PR fortran/35831
PR fortran/47978
* gfortran.dg/dynamic_dispatch_5.f03: Fix invalid test case.
* gfortran.dg/proc_decl_26.f90: New.
* gfortran.dg/typebound_override_2.f90: New.
* gfortran.dg/typebound_proc_6.f03: Changed wording in error message.

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

12 years ago * gcc-interface/utils.c (maybe_unconstrained_array): In the reference
ebotcazou [Sun, 11 Sep 2011 19:14:51 +0000 (19:14 +0000)]
* gcc-interface/utils.c (maybe_unconstrained_array): In the reference
to unconstrained array case, deal with each branch of a COND_EXPR.
* gcc-interface/utils2.c (build_allocator): Deal with each branch of
a COND_EXPR in the initializer, if present.

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

12 years ago * gcc-interface/decl.c (maybe_pad_type): Do not try to change the form
ebotcazou [Sun, 11 Sep 2011 18:56:40 +0000 (18:56 +0000)]
* gcc-interface/decl.c (maybe_pad_type): Do not try to change the form
of an addressable type.
* gcc-interface/trans.c (gnat_gimplify_expr) <VIEW_CONVERT_EXPR>: New.
Deal with those cases for which creating a temporary is mandatory.

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

12 years ago * gcc-interface/trans.c (call_to_gnu): Use local variable. Make sure
ebotcazou [Sun, 11 Sep 2011 18:38:30 +0000 (18:38 +0000)]
* gcc-interface/trans.c (call_to_gnu): Use local variable.  Make sure
this is a real formal parameter before testing whether it is by ref.

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

12 years ago * gcc-interface/gigi.h (build_call_0_expr): Delete.
ebotcazou [Sun, 11 Sep 2011 18:33:46 +0000 (18:33 +0000)]
* gcc-interface/gigi.h (build_call_0_expr): Delete.
(build_call_1_expr): Likewise.
(build_call_2_expr): Likewise.
(build_call_n_expr): New prototype.
* gcc-interface/decl.c (gnat_to_gnu_entity): Use build_call_n_expr.
* gcc-interface/trans.c (establish_gnat_vms_condition_handler): Ditto.
(Handled_Sequence_Of_Statements_to_gnu): Likewise.
(Exception_Handler_to_gnu_zcx): Likewise.
(gnat_to_gnu): Likewise.
(build_binary_op_trapv): Likewise.
* gcc-interface/utils2.c (build_call_0_expr): Delete.
(build_call_1_expr): Likewise.
(build_call_2_expr): Likewise.
(build_call_n_expr): New function.
(build_call_raise): Use build_call_n_expr.
(build_call_raise_range): Likewise.
(build_call_raise_column): Likewise.
(build_call_alloc_dealloc_proc): Likewise.
(maybe_wrap_malloc): Likewise.
(maybe_wrap_free): Likewise.

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

12 years ago * gcc-interface/trans.c (build_return_expr): Use void_type_node for
ebotcazou [Sun, 11 Sep 2011 18:28:05 +0000 (18:28 +0000)]
* gcc-interface/trans.c (build_return_expr): Use void_type_node for
MODIFY_EXPR.
* gcc-interface/utils2.c (build_binary_op) <MODIFY_EXPR>: Assert that
the result type is null if ENABLE_CHECKING.  Set operation_type at the
end unconditionally if not set in the previous cases.
Use build2 and void_type_node for MODIFY_EXPR.
(build_allocator): Use NULL_TREE for MODIFY_EXPR.

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

12 years agogcc/
rsandifo [Sun, 11 Sep 2011 17:21:50 +0000 (17:21 +0000)]
gcc/
* config/cris/cris.md: Use match_test rather than eq/ne symbol_ref
throughout file.

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

12 years agogcc/
rsandifo [Sun, 11 Sep 2011 17:19:55 +0000 (17:19 +0000)]
gcc/
* config/mips/mips.md: Use match_test rather than eq/ne symbol_ref
throughout file.
* config/mips/sb1.md: Likewise.
* config/mips/predicates.md: Replace (match_test "!...")
with (not (match_test "..."))
* config/mips/constraints.md: Likewise.

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

12 years agoDaily bump.
gccadmin [Sun, 11 Sep 2011 00:20:00 +0000 (00:20 +0000)]
Daily bump.

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

12 years agoCheck ia32 instead of ilp32.
hjl [Sat, 10 Sep 2011 19:15:38 +0000 (19:15 +0000)]
Check ia32 instead of ilp32.

2011-09-10  H.J. Lu  <hongjiu.lu@intel.com>

* gcc.dg/sibcall-6.c: Check ia32 instead of ilp32.

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

12 years ago2011-09-10 Thomas Koenig <tkoenig@gcc.gnu.org>
tkoenig [Sat, 10 Sep 2011 14:06:57 +0000 (14:06 +0000)]
2011-09-10  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/49479
* generated/m4/ifunction.m4:  Always call internal_malloc_size
even when there is a zero-sized return array.
* generated/generated/maxloc1_16_i16.c: Regenerated.
* generated/generated/maxloc1_16_i1.c: Regenerated.
* generated/generated/maxloc1_16_i2.c: Regenerated.
* generated/generated/maxloc1_16_i4.c: Regenerated.
* generated/generated/maxloc1_16_i8.c: Regenerated.
* generated/generated/maxloc1_16_r10.c: Regenerated.
* generated/generated/maxloc1_16_r16.c: Regenerated.
* generated/generated/maxloc1_16_r4.c: Regenerated.
* generated/generated/maxloc1_16_r8.c: Regenerated.
* generated/generated/maxloc1_4_i16.c: Regenerated.
* generated/generated/maxloc1_4_i1.c: Regenerated.
* generated/generated/maxloc1_4_i2.c: Regenerated.
* generated/generated/maxloc1_4_i4.c: Regenerated.
* generated/generated/maxloc1_4_i8.c: Regenerated.
* generated/generated/maxloc1_4_r10.c: Regenerated.
* generated/generated/maxloc1_4_r16.c: Regenerated.
* generated/generated/maxloc1_4_r4.c: Regenerated.
* generated/generated/maxloc1_4_r8.c: Regenerated.
* generated/generated/maxloc1_8_i16.c: Regenerated.
* generated/generated/maxloc1_8_i1.c: Regenerated.
* generated/generated/maxloc1_8_i2.c: Regenerated.
* generated/generated/maxloc1_8_i4.c: Regenerated.
* generated/generated/maxloc1_8_i8.c: Regenerated.
* generated/generated/maxloc1_8_r10.c: Regenerated.
* generated/generated/maxloc1_8_r16.c: Regenerated.
* generated/generated/maxloc1_8_r4.c: Regenerated.
* generated/generated/maxloc1_8_r8.c: Regenerated.
* generated/generated/maxval_i16.c: Regenerated.
* generated/generated/maxval_i1.c: Regenerated.
* generated/generated/maxval_i2.c: Regenerated.
* generated/generated/maxval_i4.c: Regenerated.
* generated/generated/maxval_i8.c: Regenerated.
* generated/generated/maxval_r10.c: Regenerated.
* generated/generated/maxval_r16.c: Regenerated.
* generated/generated/maxval_r4.c: Regenerated.
* generated/generated/maxval_r8.c: Regenerated.
* generated/generated/minloc1_16_i16.c: Regenerated.
* generated/generated/minloc1_16_i1.c: Regenerated.
* generated/generated/minloc1_16_i2.c: Regenerated.
* generated/generated/minloc1_16_i4.c: Regenerated.
* generated/generated/minloc1_16_i8.c: Regenerated.
* generated/generated/minloc1_16_r10.c: Regenerated.
* generated/generated/minloc1_16_r16.c: Regenerated.
* generated/generated/minloc1_16_r4.c: Regenerated.
* generated/generated/minloc1_16_r8.c: Regenerated.
* generated/generated/minloc1_4_i16.c: Regenerated.
* generated/generated/minloc1_4_i1.c: Regenerated.
* generated/generated/minloc1_4_i2.c: Regenerated.
* generated/generated/minloc1_4_i4.c: Regenerated.
* generated/generated/minloc1_4_i8.c: Regenerated.
* generated/generated/minloc1_4_r10.c: Regenerated.
* generated/generated/minloc1_4_r16.c: Regenerated.
* generated/generated/minloc1_4_r4.c: Regenerated.
* generated/generated/minloc1_4_r8.c: Regenerated.
* generated/generated/minloc1_8_i16.c: Regenerated.
* generated/generated/minloc1_8_i1.c: Regenerated.
* generated/generated/minloc1_8_i2.c: Regenerated.
* generated/generated/minloc1_8_i4.c: Regenerated.
* generated/generated/minloc1_8_i8.c: Regenerated.
* generated/generated/minloc1_8_r10.c: Regenerated.
* generated/generated/minloc1_8_r16.c: Regenerated.
* generated/generated/minloc1_8_r4.c: Regenerated.
* generated/generated/minloc1_8_r8.c: Regenerated.
* generated/generated/minval_i16.c: Regenerated.
* generated/generated/minval_i1.c: Regenerated.
* generated/generated/minval_i2.c: Regenerated.
* generated/generated/minval_i4.c: Regenerated.
* generated/generated/minval_i8.c: Regenerated.
* generated/generated/minval_r10.c: Regenerated.
* generated/generated/minval_r16.c: Regenerated.
* generated/generated/minval_r4.c: Regenerated.
* generated/generated/minval_r8.c: Regenerated.
* generated/generated/product_c10.c: Regenerated.
* generated/generated/product_c16.c: Regenerated.
* generated/generated/product_c4.c: Regenerated.
* generated/generated/product_c8.c: Regenerated.
* generated/generated/product_i16.c: Regenerated.
* generated/generated/product_i1.c: Regenerated.
* generated/generated/product_i2.c: Regenerated.
* generated/generated/product_i4.c: Regenerated.
* generated/generated/product_i8.c: Regenerated.
* generated/generated/product_r10.c: Regenerated.
* generated/generated/product_r16.c: Regenerated.
* generated/generated/product_r4.c: Regenerated.
* generated/generated/product_r8.c: Regenerated.
* generated/generated/sum_c10.c: Regenerated.
* generated/generated/sum_c16.c: Regenerated.
* generated/generated/sum_c4.c: Regenerated.
* generated/generated/sum_c8.c: Regenerated.
* generated/generated/sum_i16.c: Regenerated.
* generated/generated/sum_i1.c: Regenerated.
* generated/generated/sum_i2.c: Regenerated.
* generated/generated/sum_i4.c: Regenerated.
* generated/generated/sum_i8.c: Regenerated.
* generated/generated/sum_r10.c: Regenerated.
* generated/generated/sum_r16.c: Regenerated.
* generated/generated/sum_r4.c: Regenerated.
* generated/generated/sum_r8.c: Regenerated.

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

12 years agoFix using package name as composite literal struct key.
ian [Sat, 10 Sep 2011 04:12:07 +0000 (04:12 +0000)]
Fix using package name as composite literal struct key.

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

12 years ago2011-09-09 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Sat, 10 Sep 2011 00:47:02 +0000 (00:47 +0000)]
2011-09-09  Paolo Carlini  <paolo.carlini@oracle.com>

* include/std/tuple: Use everywhere std::size_t... instead of int...
* include/std/functional: Likewise.
* include/std/scoped_allocator: Likewise.
* include/bits/stl_pair.h: Likewise.

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

12 years agoDaily bump.
gccadmin [Sat, 10 Sep 2011 00:19:17 +0000 (00:19 +0000)]
Daily bump.

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

12 years ago PR target/49030
gjl [Fri, 9 Sep 2011 17:00:26 +0000 (17:00 +0000)]
PR target/49030
* gcc.dg/torture/pr49030.c: Run only if target int32plus.

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

12 years ago2011-09-09 Andrew Stubbs <ams@codesourcery.com>
ams [Fri, 9 Sep 2011 13:57:41 +0000 (13:57 +0000)]
2011-09-09  Andrew Stubbs  <ams@codesourcery.com>

gcc/
* config/arm/arm-cores.def (generic-armv7-a): New architecture.
* config/arm/arm-tables.opt: Regenerate.
* config/arm/arm-tune.md: Regenerate.
* config/arm/arm.c (arm_file_start): Output .arch directive when
user passes -mcpu=generic-*.
(arm_issue_rate): Add genericv7a support.
* config/arm/arm.h (EXTRA_SPECS): Add asm_cpu_spec.
(ASM_CPU_SPEC): New define.
* config/arm/elf.h (ASM_SPEC): Use %(asm_cpu_spec).
* config/arm/semi.h (ASM_SPEC): Likewise.
* doc/invoke.texi (ARM Options): Document -mcpu=generic-*
and -mtune=generic-*.

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

12 years agogcc/testsuite:
iains [Fri, 9 Sep 2011 13:51:12 +0000 (13:51 +0000)]
gcc/testsuite:

PR target/49614
* gcc.dg/vmx/gcc-bug-i.c (inline_me): Declare 'inline'.

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

12 years ago2011-09-09 Richard Guenther <rguenther@suse.de>
rguenth [Fri, 9 Sep 2011 12:35:11 +0000 (12:35 +0000)]
2011-09-09  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/50328
* tree-vect-loop.c (vect_is_simple_reduction_1): Allow one
constant or default-def operand.

* gcc.dg/vect/fast-math-vect-outer-7.c: New testcase.

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

12 years ago2011-09-09 Richard Guenther <rguenther@suse.de>
rguenth [Fri, 9 Sep 2011 12:31:33 +0000 (12:31 +0000)]
2011-09-09  Richard Guenther  <rguenther@suse.de>

* tree-ssa-pre.c (create_expression_by_pieces): Fold the
last statement.

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

12 years ago2011-09-09 Richard Guenther <rguenther@suse.de>
rguenth [Fri, 9 Sep 2011 11:52:51 +0000 (11:52 +0000)]
2011-09-09  Richard Guenther  <rguenther@suse.de>

* gimple.h (fold_stmt_inplace): Adjust to take a gimple_stmt_iterator
instead of a statement.
* gimple-fold.c (fold_stmt_inplace): Likewise.
* sese.c (graphite_copy_stmts_from_block): Adjust.
* tree-ssa-dom.c (propagate_rhs_into_lhs): Likewise.
* tree-ssa-forwprop.c (forward_propagate_into_comparison): Use
fold_stmt.
(forward_propagate_addr_into_variable_array_index): Likewise.
(forward_propagate_addr_expr_1): adjust.
(associate_plusminus): Likewise.
(ssa_forward_propagate_and_combine): Likewise.
* tree-ssa-mathopts.c (replace_reciprocal): Adjust.
(execute_cse_reciprocals): Likewise.
* tree-ssa.c (insert_debug_temp_for_var_def): Adjust.

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

12 years ago * config/mn10300/mn10300.c (mn10300_split_and_operand_count):
nickc [Fri, 9 Sep 2011 10:58:10 +0000 (10:58 +0000)]
* config/mn10300/mn10300.c (mn10300_split_and_operand_count):
Return a positive value to indicate that the bits at the
bottom of the register should be cleared.

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

12 years ago2011-09-09 Richard Guenther <rguenther@suse.de>
rguenth [Fri, 9 Sep 2011 10:31:10 +0000 (10:31 +0000)]
2011-09-09  Richard Guenther  <rguenther@suse.de>

* tree-ssa-operands.c (swap_tree_operands): Always adjust
existing operand positions.

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

12 years ago2011-09-09 Richard Guenther <rguenther@suse.de>
rguenth [Fri, 9 Sep 2011 09:06:49 +0000 (09:06 +0000)]
2011-09-09  Richard Guenther  <rguenther@suse.de>

PR middle-end/50333
* tree-data-ref.c (split_constant_offset): Do not try to handle
ternary ops.

* gcc.dg/torture/pr50333.c: New testcase.

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

12 years agoDaily bump.
gccadmin [Fri, 9 Sep 2011 00:19:15 +0000 (00:19 +0000)]
Daily bump.

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

12 years ago2011-09-09 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Thu, 8 Sep 2011 22:42:21 +0000 (22:42 +0000)]
2011-09-09  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/50336
* include/bits/streambuf_iterator.h (class istreambuf_iterator):
Implement LWG 445 in C++0x mode.
* testsuite/24_iterators/istreambuf_iterator/requirements/dr445.cc:
New.

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

12 years agoFix PR c/50332
dodji [Thu, 8 Sep 2011 21:46:14 +0000 (21:46 +0000)]
Fix PR c/50332

gcc/testsuite/

* gcc.dg/attr-invalid.c: Adjust as __attribute__((used) is no
longer ignored on typedefs.

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

12 years ago * gcc-interface/utils.c (unchecked_convert): Use a field of the right
ebotcazou [Thu, 8 Sep 2011 21:12:37 +0000 (21:12 +0000)]
* gcc-interface/utils.c (unchecked_convert): Use a field of the right
precision when converting to or from an integral type whose precision
is not equal to its size.

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

12 years ago2011-09-08 Andrew Stubbs <ams@codesourcery.com>
ams [Thu, 8 Sep 2011 19:45:37 +0000 (19:45 +0000)]
2011-09-08  Andrew Stubbs  <ams@codesourcery.com>

PR tree-optimization/50318

gcc/
* tree-ssa-math-opts.c (convert_plusminus_to_widen): Correct
typo in use of mult_rhs1 and mult_rhs2.

gcc/testsuite/
* gcc.target/arm/pr50318-1.c: New file.

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

12 years ago * config/i386.c (standard_sse_constant_opcode): Fix last commit.
uros [Thu, 8 Sep 2011 18:30:43 +0000 (18:30 +0000)]
* config/i386.c (standard_sse_constant_opcode): Fix last commit.

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

12 years ago2011-09-08 Uros Bizjak <ubizjak@gmail.com>
uros [Thu, 8 Sep 2011 18:24:04 +0000 (18:24 +0000)]
2011-09-08  Uros Bizjak  <ubizjak@gmail.com>

* config/i386/i386.c (standard_sse_constant_p): Handle AVX2 modes.
(standard_sse_constant_opcode) <case 2>: Change vpcmpeqd template.

testsuite/ChangeLog:

2011-09-08  Uros Bizjak  <ubizjak@gmail.com>

* gcc.target/i386/all_one_m256i.c: New test.

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

12 years ago * config/arm/arm.md (push_multi): Emit predicates.
bernds [Thu, 8 Sep 2011 16:29:17 +0000 (16:29 +0000)]
* config/arm/arm.md (push_multi): Emit predicates.
(push_fp_multi): Likewise.
* config/arm/arm.c (vfp_output_fstmd): Likewise.

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

12 years ago2011-09-08 Mikael Morin <mikael.morin@sfr.fr>
mikael [Thu, 8 Sep 2011 15:40:48 +0000 (15:40 +0000)]
2011-09-08  Mikael Morin  <mikael.morin@sfr.fr>

* trans-array.c (gfc_trans_constant_array_constructor): Remove
superfluous initialisation of DIM field.
(gfc_trans_array_constructor): Assert that DIMEN field is properly set.
(gfc_conv_expr_descriptor): Ditto.
* trans-expr.c (gfc_conv_procedure_call): Ditto.

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

12 years ago2011-09-08 Mikael Morin <mikael.morin@sfr.fr>
mikael [Thu, 8 Sep 2011 15:30:39 +0000 (15:30 +0000)]
2011-09-08  Mikael Morin  <mikael.morin@sfr.fr>

* trans-array.h (gfc_get_scalar_ss): New prototype.
* trans-array.c (gfc_get_scalar_ss): New function.
(gfc_walk_variable_expr, gfc_walk_op_expr,
gfc_walk_elemental_function_args): Re-use gfc_get_scalar_ss.
* trans-expr.c (gfc_trans_subarray_assign): Ditto.
(gfc_trans_assignment_1): Ditto.
* trans-stmt.c (compute_inner_temp_size, gfc_trans_where_assign,
gfc_trans_where_3): Ditto.

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

12 years ago2011-09-08 Mikael Morin <mikael.morin@sfr.fr>
mikael [Thu, 8 Sep 2011 15:18:20 +0000 (15:18 +0000)]
2011-09-08  Mikael Morin  <mikael.morin@sfr.fr>

* trans-array.h (gfc_get_temp_ss): New prototype.
* trans-array.c (gfc_get_temp_ss): New function.
(gfc_conv_resolve_dependencies): Re-use gfc_get_temp_ss.
(gfc_conv_expr_descriptor): Ditto.
* trans-expr.c (gfc_conv_subref_array_arg): Ditto.

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

12 years ago2011-09-08 Mikael Morin <mikael.morin@sfr.fr>
mikael [Thu, 8 Sep 2011 15:07:01 +0000 (15:07 +0000)]
2011-09-08  Mikael Morin  <mikael.morin@sfr.fr>

* trans-array.h (gfc_get_array_ss): New prototype.
* trans-array.c (gfc_get_array_ss): New function.
(gfc_walk_variable_expr, gfc_walk_function_expr,
gfc_walk_array_constructor): Re-use gfc_get_array_ss.
* trans-expr.c (gfc_trans_subarray_assign): Ditto.
* trans-intrinsic.c (gfc_walk_intrinsic_bound,
gfc_walk_intrinsic_libfunc): Ditto.
* trans-io.c (transfer_array_component): Ditto.

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

12 years ago/cp
paolo [Thu, 8 Sep 2011 14:58:21 +0000 (14:58 +0000)]
/cp
2011-09-08  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50324
* typeck2.c (digest_init_r): Call complete_type_or_maybe_complain
instead of complete_type_or_else.

/testsuite
2011-09-08  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50324
* g++.dg/cpp0x/sfinae28.C: New.

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

12 years agoPR c++/33255 - Support -Wunused-local-typedefs warning
dodji [Thu, 8 Sep 2011 13:54:24 +0000 (13:54 +0000)]
PR c++/33255 - Support -Wunused-local-typedefs warning

gcc/

* c-decl.c (lookup_name): Use the new
maybe_record_typedef_use.
(pushdecl): Use the new
record_locally_defined_typedef.
(store_parm_decls): Allocate cfun->language.
(finish_function): Use the new maybe_warn_unused_local_typedefs,
and free cfun->language.
(c_push_function_context): Allocate cfun->language here only if
needed.
(c_pop_function_context): Likewise, mark cfun->language
for collection only when it should be done.
* c-common.c (handle_used_attribute): Don't ignore TYPE_DECL
nodes.
* c-typeck.c (c_expr_sizeof_type, c_cast_expr): Use the new
maybe_record_local_typedef_use.

gcc/c-family

* c-common.h (struct c_language_function::local_typedefs): New
field.
(record_locally_defined_typedef, maybe_record_typedef_use)
(maybe_warn_unused_local_typedefs): Declare new functions.
* c-common.c (record_locally_defined_typedef)
(maybe_record_typedef_use)
(maybe_warn_unused_local_typedefs): Define new functions.
* c.opt: Declare new -Wunused-local-typedefs flag.

gcc/cp

* name-lookup.c (pushdecl_maybe_friend_1): Use the new
record_locally_defined_typedef.
* decl.c (finish_function): Use the new
maybe_warn_unused_local_typedefs.
(grokfield): Use the new record_locally_defined_typedef.
* parser.c (lookup_name): Use the new maybe_record_typedef_use.

gcc/doc/

* invoke.texi: Update documentation for -Wunused-local-typedefs.

gcc/testsuite/

* g++.dg/warn/Wunused-local-typedefs.C: New test file.
* c-c++-common/Wunused-local-typedefs.c: Likewise.

libstdc++-v3/

* include/ext/bitmap_allocator.h
(__detail::__mini_vector::__lower_bound): Remove unused typedef.
* src/istream.cc (std::operator>>(basic_istream<char>& __in,
basic_string<char>& __str)): Likewise.
(std::getline): Likewise.
* src/valarray.cc (__valarray_product): Likewise.

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

12 years agoImprove AGU stalls avoidance optimization.
hjl [Thu, 8 Sep 2011 13:41:27 +0000 (13:41 +0000)]
Improve AGU stalls avoidance optimization.

2011-09-08  Enkovich Ilya  <ilya.enkovich@intel.com>

* config/i386/i386-protos.h (ix86_lea_outperforms): New.
(ix86_avoid_lea_for_add): Likewise.
(ix86_avoid_lea_for_addr): Likewise.
(ix86_split_lea_for_addr): Likewise.

* config/i386/i386.c (LEA_MAX_STALL): New.
(increase_distance): Likewise.
(insn_defines_reg): Likewise.
(insn_uses_reg_mem): Likewise.
(distance_non_agu_define_in_bb): Likewise.
(distance_agu_use_in_bb): Likewise.
(ix86_lea_outperforms): Likewise.
(ix86_ok_to_clobber_flags): Likewise.
(ix86_avoid_lea_for_add): Likewise.
(ix86_avoid_lea_for_addr): Likewise.
(ix86_split_lea_for_addr): Likewise.
(distance_non_agu_define): Search in pred BBs added.
(distance_agu_use): Search in succ BBs added.
(IX86_LEA_PRIORITY): Value changed from 2 to 0.
(LEA_SEARCH_THRESHOLD): Now depends on LEA_MAX_STALL.
(ix86_lea_for_add_ok): Use ix86_lea_outperforms to make decision.

* config/i386/i386.md: Split added to transform non destructive
add into move and add.
(lea_1): transformed into insn_and_split to avoid AGU stalls.
(lea<mode>_2): Likewise.

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

12 years ago2011-09-08 Martin Jambor <mjambor@suse.cz>
jamborm [Thu, 8 Sep 2011 13:09:38 +0000 (13:09 +0000)]
2011-09-08  Martin Jambor  <mjambor@suse.cz>

PR tree-optimization/50287
* ipa-split.c (split_function): Do not create SSA names for
non-gimple-registers.

* testsuite/gcc.dg/torture/pr50287.c: New test.

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

12 years ago2011-09-08 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 8 Sep 2011 13:00:23 +0000 (13:00 +0000)]
2011-09-08  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/19831
* tree-ssa-dce.c (mark_all_reaching_defs_necessary_1): Also
skip builtins with vdefs that do not really store something.
(propagate_necessity): For calls to free that we can associate
with an allocation function do not mark the freed pointer
definition necessary.
(eliminate_unnecessary_stmts): Remove a call to free if
the associated call to an allocation function is not necessary.

* gcc.dg/tree-ssa/pr19831-1.c: New testcase.
* gcc.dg/tree-ssa/pr19831-2.c: Likewise.
* gcc.dg/tree-ssa/pr19831-3.c: Likewise.
* gcc.dg/errno-1.c: Adjust.

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

12 years ago2011-09-08 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 8 Sep 2011 09:21:39 +0000 (09:21 +0000)]
2011-09-08  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/19831
* tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Do not mark
allocation functions as necessary.

* gcc.dg/tree-ssa/ssa-dce-8.c: New testcase.

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

12 years agopart of restore of powerpc-darwin Ada bootstrap
iains [Thu, 8 Sep 2011 09:20:12 +0000 (09:20 +0000)]
part of restore of powerpc-darwin Ada bootstrap

* traceback.c (Darwin) USE_GCC_UNWINDER for Darwin
versions >= 8.

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

12 years agomake darwin port a little more cross & cross native build friendly.
iains [Thu, 8 Sep 2011 07:28:11 +0000 (07:28 +0000)]
make darwin port a little more cross & cross native build friendly.

*config/darwin-driver.c (darwin_find_version_from_kernel): New routine
cut from ... (darwin_default_min_version): Amended to provide defaults
for the cross directory case.
(darwin_driver_init): call darwin_default_min_version unconditionally.
* config/darwin.h (DEF_MIN_OSX_VERSION): New.
* config/darwin9.h: Likewise.
* config/darwin10.h: Likewise.
* config/rs6000/darwin7.h: Likewise.

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

12 years agogcc/fortran/
burnus [Thu, 8 Sep 2011 06:38:13 +0000 (06:38 +0000)]
gcc/fortran/
2011-09-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/44646
        * decl.c (gfc_match_entry, gfc_match_end): Handle
        * COMP_DO_CONCURRENT.
        * dump-parse-tree.c (show_code_node): Handle EXEC_DO_CONCURRENT.
        * gfortran.h (gfc_exec_op): Add EXEC_DO_CONCURRENT.
        * match.c (gfc_match_critical, match_exit_cycle,
        * gfc_match_stopcode,
        lock_unlock_statement, sync_statement, gfc_match_allocate,
        gfc_match_deallocate, gfc_match_return): Add DO CONCURRENT diagnostic.
        (gfc_match_do): Match DO CONCURRENT.
        (match_derived_type_spec, match_type_spec, gfc_free_forall_iterator,
        match_forall_iterator, match_forall_header, match_simple_forall,
        gfc_match_forall): Move up in the file.
        * parse.c (check_do_closure, parse_do_block): Handle do
        * concurrent.
        * parse.h (gfc_compile_state): Add COMP_DO_CONCURRENT.
        * resolve.c (do_concurrent_flag): New global variable.
        (resolve_function, pure_subroutine, resolve_branch,
        gfc_resolve_blocks, resolve_code, resolve_types): Add do concurrent
        diagnostic.
        * st.c (gfc_free_statement): Handle EXEC_DO_CONCURRENT.
        * trans-stmt.c (gfc_trans_do_concurrent): New function.
        (gfc_trans_forall_1): Handle do concurrent.
        * trans-stmt.h (gfc_trans_do_concurrent): New function
        * prototype.
        * trans.c (trans_code): Call it.
        * frontend-passes.c (gfc_code_walker): Handle
        * EXEC_DO_CONCURRENT.

gcc/testsuite/
2011-09-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/44646
        * gfortran.dg/do_concurrent_1.f90: New.
        * gfortran.dg/do_concurrent_2.f90: New.

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

12 years ago PR target/50310
jakub [Thu, 8 Sep 2011 05:58:54 +0000 (05:58 +0000)]
PR target/50310
* config/i386/i386.c (ix86_prepare_sse_fp_compare_args): Return
code early if TARGET_AVX.
(ix86_expand_fp_vcond): Handle LTGT and UNEQ.

* gcc.c-torture/execute/ieee/pr50310.c: New test.
* gcc.dg/pr50310-2.c: New test.

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

12 years ago2011-09-07 François Dumont <francois.cppdevs@free.fr>
bkoz [Thu, 8 Sep 2011 01:24:11 +0000 (01:24 +0000)]
2011-09-07  François Dumont  <francois.cppdevs@free.fr>

* testsuite/23_containers/array/at.cc: Revert to...
* testsuite/23_containers/array/at_neg.cc: ...this.

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

12 years agoDaily bump.
gccadmin [Thu, 8 Sep 2011 00:18:59 +0000 (00:18 +0000)]
Daily bump.

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

12 years ago2011-09-07 Janus Weil <janus@gcc.gnu.org>
janus [Wed, 7 Sep 2011 22:20:47 +0000 (22:20 +0000)]
2011-09-07  Janus Weil  <janus@gcc.gnu.org>

PR fortran/48095
* primary.c (gfc_match_structure_constructor): Handle parsing of
procedure pointers components in structure constructors.
* resolve.c (resolve_structure_cons): Check interface of procedure
pointer components. Changed wording of some error messages.

2011-09-07  Janus Weil  <janus@gcc.gnu.org>

PR fortran/48095
* gfortran.dg/derived_constructor_comps_2.f90: Modified.
* gfortran.dg/impure_constructor_1.f90: Modified.
* gfortran.dg/proc_ptr_comp_33.f90: New.

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

12 years ago * config/i386/sse.md (sseinsnmode): Remove 32-byte integer vector
jakub [Wed, 7 Sep 2011 19:46:14 +0000 (19:46 +0000)]
* config/i386/sse.md (sseinsnmode): Remove 32-byte integer vector
duplicates.

PR target/50310
* config/i386/sse.md (*andnot<mode>3, *<code><mode>3): Fix up
"mode" attribute computation.

* gcc.dg/pr50310-1.c: New test.

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

12 years ago * bb-reorder.c (insert_section_boundary_note): Don't check
bernds [Wed, 7 Sep 2011 17:38:29 +0000 (17:38 +0000)]
* bb-reorder.c (insert_section_boundary_note): Don't check
optimize_function_for_speed_p.
(gate_handle_partition_blocks): Do it here instead.
(gate_handle_reorder_blocks): Move preliminary checks here ...
(rest_of_handle_reorder_blocks): ... from here.

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

12 years ago PR middle-end/48571
gjl [Wed, 7 Sep 2011 17:31:01 +0000 (17:31 +0000)]
PR middle-end/48571
* gcc.c-torture/execute/pr48571-1.c (bar): Use offsets sizeof(int)
instead of 4.

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

12 years ago/cp
paolo [Wed, 7 Sep 2011 17:16:23 +0000 (17:16 +0000)]
/cp
2011-09-07  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50309
* decl.c (grokdeclarator): Check u.function.exception_specification
for error_mark_node.

/testsuite
2011-09-07  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50309
* g++.dg/cpp0x/noexcept14.C: New.

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

12 years ago PR c++/50298
jason [Wed, 7 Sep 2011 17:11:49 +0000 (17:11 +0000)]
PR c++/50298
* parser.c (cp_parser_member_declaration): Don't require a constant
rvalue here in C++0x.

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

12 years ago * pt.c (type_unification_real): Correct complain arg for tsubsting
jason [Wed, 7 Sep 2011 17:11:37 +0000 (17:11 +0000)]
* pt.c (type_unification_real): Correct complain arg for tsubsting
default template args.

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

12 years ago * pt.c (tsubst_aggr_type): Check TYPE_P before tsubsting.
jason [Wed, 7 Sep 2011 17:11:20 +0000 (17:11 +0000)]
* pt.c (tsubst_aggr_type): Check TYPE_P before tsubsting.

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

12 years ago * gcc.dg/section1.c: Don't xfail for avr.
gjl [Wed, 7 Sep 2011 16:55:08 +0000 (16:55 +0000)]
* gcc.dg/section1.c: Don't xfail for avr.

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

12 years ago PR tree-optimization/50322
gjl [Wed, 7 Sep 2011 16:09:12 +0000 (16:09 +0000)]
PR tree-optimization/50322
* gcc.dg/tree-ssa/ivopts-lt.c: Add xfails for avr.

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

12 years ago * regrename.c (struct du_head): Make nregs signed.
bernds [Wed, 7 Sep 2011 15:57:45 +0000 (15:57 +0000)]
* regrename.c (struct du_head): Make nregs signed.
(closed_chains): Remove.
(create_new_chain): Return the new chain.
(chain_from_id): New static function.
(dump_def_use_chain): Change argument to be an int, indicating
the first ID to print.  All callers changed.
(merge_overlapping_regs): Use chain_from_id.  Assert that
chains don't conflict with themselves.
(rename_chains): Take no argument.  Iterate over id_to_chain
rather to find chains to rename.  Clear tick before the main
loop.
(struct incoming_reg_info): New struct.
(struct bb_rename_info): New struct.
(init_rename_info, set_incoming_from_chain, merge_chains): New
static functions.
(regrename_analyze): New static function, broken out of
regrename_optimize.  Record and make use of open chain information
at basic block boundaries, and merge chains where possible.
(scan_rtx_reg): Make this_nregs signed.  Don't update
closed_chains.
(build_def_use): Return a bool to indicate success.  All callers
changed.  Don't initialize global data here.
(regrename_optimize): Move most code out of here into
regrename_analyze.
* regs.h (add_range_to_hard_reg_set, remove_range_from_hard_reg_set,
range_overlaps_hard_reg_set_p, range_in_hard_reg_set_p): New
static inline functions.
* vec.h (FOR_EACH_VEC_ELT_FROM): New macro.

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

12 years ago2011-09-07 Martin Jambor <mjambor@suse.cz>
jamborm [Wed, 7 Sep 2011 15:36:53 +0000 (15:36 +0000)]
2011-09-07  Martin Jambor  <mjambor@suse.cz>

* g++.dg/tree-ssa/pr49911.C: Added flag -fstrict-enums.

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

12 years ago2011-09-07 Martin Jambor <mjambor@suse.cz>
jamborm [Wed, 7 Sep 2011 14:31:40 +0000 (14:31 +0000)]
2011-09-07  Martin Jambor  <mjambor@suse.cz>

PR middle-end/50301
* ipa-cp.c (find_more_values_for_callers_subset): Check jump
function index bounds.
(perhaps_add_new_callers): Likewise.

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