Joseph Myers [Fri, 19 Aug 2011 21:55:44 +0000 (22:55 +0100)]
c-parser.c (c_parser_postfix_expression): Convert operands of __builtin_complex to their semantic types.
* c-parser.c (c_parser_postfix_expression): Convert operands of
__builtin_complex to their semantic types.
From-SVN: r177915
H.J. Lu [Fri, 19 Aug 2011 21:18:03 +0000 (21:18 +0000)]
Permute conversion and addition of constant for zero-extend.
gcc/
2011-08-19 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/49721
* explow.c (convert_memory_address_addr_space): Also permute the
conversion and addition of constant for zero-extend.
gcc/testsuite/
2011-08-19 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/49721
* gfortran.dg/pr49721-1.f: New.
* gfortran.fortran-torture/compile/pr49721-1.f: Likewise.
From-SVN: r177914
Joseph Myers [Fri, 19 Aug 2011 15:53:51 +0000 (16:53 +0100)]
c-parser.c (c_parser_postfix_expression): Handle RID_BUILTIN_COMPLEX.
* c-parser.c (c_parser_postfix_expression): Handle
RID_BUILTIN_COMPLEX.
* doc/extend.texi (__builtin_complex): Document.
c-family:
* c-common.c (c_common_reswords): Add __builtin_complex.
* c-common.h (RID_BUILTIN_COMPLEX): New.
testsuite:
* gcc.dg/builtin-complex-err-1.c, gcc.dg/builtin-complex-err-2.c,
gcc.dg/dfp/builtin-complex.c, gcc.dg/torture/builtin-complex-1.c:
New tests.
From-SVN: r177911
Andrew Stubbs [Fri, 19 Aug 2011 15:05:22 +0000 (15:05 +0000)]
tree-ssa-math-opts.c (is_widening_mult_rhs_p): Handle constants beyond conversions.
2011-08-19 Andrew Stubbs <ams@codesourcery.com>
gcc/
* tree-ssa-math-opts.c (is_widening_mult_rhs_p): Handle constants
beyond conversions.
(convert_mult_to_widen): Convert constant inputs to the right type.
(convert_plusminus_to_widen): Don't automatically reject inputs that
are not an SSA_NAME.
Convert constant inputs to the right type.
gcc/testsuite/
* gcc.target/arm/wmul-11.c: New file.
* gcc.target/arm/wmul-12.c: New file.
* gcc.target/arm/wmul-13.c: New file.
From-SVN: r177910
Andrew Stubbs [Fri, 19 Aug 2011 15:01:41 +0000 (15:01 +0000)]
tree-ssa-math-opts.c (convert_plusminus_to_widen): Convert add_rhs to the correct type.
2011-08-19 Andrew Stubbs <ams@codesourcery.com>
gcc/
* tree-ssa-math-opts.c (convert_plusminus_to_widen): Convert add_rhs
to the correct type.
gcc/testsuite/
* gcc.target/arm/wmul-10.c: New file.
From-SVN: r177909
Andrew Stubbs [Fri, 19 Aug 2011 14:56:24 +0000 (14:56 +0000)]
tree-ssa-math-opts.c (convert_mult_to_widen): Better handle unsigned inputs of different modes.
2011-08-19 Andrew Stubbs <ams@codesourcery.com>
gcc/
* tree-ssa-math-opts.c (convert_mult_to_widen): Better handle
unsigned inputs of different modes.
(convert_plusminus_to_widen): Likewise.
gcc/testsuite/
* gcc.target/arm/wmul-9.c: New file.
* gcc.target/arm/wmul-bitfield-2.c: New file.
From-SVN: r177908
Andrew Stubbs [Fri, 19 Aug 2011 14:45:56 +0000 (14:45 +0000)]
tree-ssa-math-opts.c (is_widening_mult_rhs_p): Add new argument 'type'.
2011-08-19 Andrew Stubbs <ams@codesourcery.com>
gcc/
* tree-ssa-math-opts.c (is_widening_mult_rhs_p): Add new argument
'type'.
Use 'type' from caller, not inferred from 'rhs'.
Don't reject non-conversion statements. Do return lhs in this case.
(is_widening_mult_p): Add new argument 'type'.
Use 'type' from caller, not inferred from 'stmt'.
Pass type to is_widening_mult_rhs_p.
(convert_mult_to_widen): Pass type to is_widening_mult_p.
(convert_plusminus_to_widen): Likewise.
gcc/testsuite/
* gcc.target/arm/wmul-8.c: New file.
From-SVN: r177907
Andrew Stubbs [Fri, 19 Aug 2011 14:41:34 +0000 (14:41 +0000)]
tree-ssa-math-opts.c (is_widening_mult_p): Remove FIXME.
2011-08-19 Andrew Stubbs <ams@codesourcery.com>
gcc/
* tree-ssa-math-opts.c (is_widening_mult_p): Remove FIXME.
Ensure the the larger type is the first operand.
gcc/testsuite/
* gcc.target/arm/wmul-7.c: New file.
From-SVN: r177906
Andrew Stubbs [Fri, 19 Aug 2011 14:36:34 +0000 (14:36 +0000)]
tree-ssa-math-opts.c (convert_mult_to_widen): Convert unsupported unsigned multiplies to signed.
2011-08-19 Andrew Stubbs <ams@codesourcery.com>
gcc/
* tree-ssa-math-opts.c (convert_mult_to_widen): Convert
unsupported unsigned multiplies to signed.
(convert_plusminus_to_widen): Likewise.
gcc/testsuite/
* gcc.target/arm/wmul-6.c: New file.
From-SVN: r177905
Andrew Stubbs [Fri, 19 Aug 2011 14:31:30 +0000 (14:31 +0000)]
tree-ssa-math-opts.c (convert_plusminus_to_widen): Permit a single conversion statement separating multiply-and-accumulate.
2011-08-19 Andrew Stubbs <ams@codesourcery.com>
gcc/
* tree-ssa-math-opts.c (convert_plusminus_to_widen): Permit a single
conversion statement separating multiply-and-accumulate.
gcc/testsuite/
* gcc.target/arm/wmul-5.c: New file.
* gcc.target/arm/no-wmla-1.c: New file.
From-SVN: r177904
Richard Guenther [Fri, 19 Aug 2011 14:26:13 +0000 (14:26 +0000)]
re PR tree-optimization/50067 (Wrong code with -fpredictive-commoning)
2011-08-19 Richard Guenther <rguenther@suse.de>
PR tree-optimization/50067
* tree-data-ref.c (dr_analyze_indices): Simplify, strip MEM_REF
offset only if we accounted for it.
From-SVN: r177903
Andrew Stubbs [Fri, 19 Aug 2011 14:21:48 +0000 (14:21 +0000)]
arm.md (maddhidi4): Remove '*' from name.
2011-08-19 Andrew Stubbs <ams@codesourcery.com>
gcc/
* config/arm/arm.md (maddhidi4): Remove '*' from name.
* expr.c (expand_expr_real_2): Use find_widening_optab_handler.
* optabs.c (find_widening_optab_handler_and_mode): New function.
(expand_widen_pattern_expr): Use find_widening_optab_handler.
(expand_binop_directly): Likewise.
(expand_binop): Likewise.
* optabs.h (find_widening_optab_handler): New macro define.
(find_widening_optab_handler_and_mode): New prototype.
* tree-cfg.c (verify_gimple_assign_binary): Adjust WIDEN_MULT_EXPR
type precision rules.
(verify_gimple_assign_ternary): Likewise for WIDEN_MULT_PLUS_EXPR.
* tree-ssa-math-opts.c (build_and_insert_cast): New function.
(is_widening_mult_rhs_p): Allow widening by more than one mode.
Explicitly disallow mis-matched input types.
(convert_mult_to_widen): Use find_widening_optab_handler, and cast
input types to fit the new handler.
(convert_plusminus_to_widen): Likewise.
gcc/testsuite/
* gcc.target/arm/wmul-bitfield-1.c: New file.
From-SVN: r177902
Andrew Stubbs [Fri, 19 Aug 2011 14:12:32 +0000 (14:12 +0000)]
expr.c (expand_expr_real_2): Use widening_optab_handler.
2011-08-19 Andrew Stubbs <ams@codesourcery.com>
gcc/
* expr.c (expand_expr_real_2): Use widening_optab_handler.
* genopinit.c (optabs): Use set_widening_optab_handler for $N.
(gen_insn): $N now means $a must be wider than $b, not consecutive.
* optabs.c (widened_mode): New function.
(expand_widen_pattern_expr): Use widening_optab_handler.
(expand_binop_directly): Likewise.
(expand_binop): Likewise.
* optabs.h (widening_optab_handlers): New struct.
(optab_d): New member, 'widening'.
(widening_optab_handler): New function.
(set_widening_optab_handler): New function.
* tree-ssa-math-opts.c (convert_mult_to_widen): Use
widening_optab_handler.
(convert_plusminus_to_widen): Likewise.
From-SVN: r177901
Joseph Myers [Fri, 19 Aug 2011 13:25:51 +0000 (14:25 +0100)]
c-decl.c (grokdeclarator): Diagnose _Noreturn for non-C1X if pedantic.
* c-decl.c (grokdeclarator): Diagnose _Noreturn for non-C1X if
pedantic.
* c-parser.c (c_parser_declspecs): Include _Noreturn in syntax
comment.
* ginclude/stdnoreturn.h (noreturn): Don't define for C++.
testsuite:
* gcc.dg/c90-noreturn-1.c, gcc.dg/c99-noreturn-1.c: New tests.
From-SVN: r177899
Jakub Jelinek [Fri, 19 Aug 2011 13:25:22 +0000 (15:25 +0200)]
re PR fortran/49792 (OpenMP workshare: Wrong result with array assignment)
PR fortran/49792
* trans-expr.c (gfc_trans_assignment_1): Set OMPWS_SCALARIZER_WS
bit in ompws_flags only if loop.temp_ss is NULL, and clear it if
lhs needs reallocation.
* trans-openmp.c (gfc_trans_omp_workshare): Don't return early if
code is NULL, emit a barrier if workshare emitted no code at all
and NOWAIT clause isn't present.
* testsuite/libgomp.fortran/pr49792-1.f90: New test.
* testsuite/libgomp.fortran/pr49792-2.f90: New test.
From-SVN: r177898
Rainer Orth [Fri, 19 Aug 2011 13:08:51 +0000 (13:08 +0000)]
Require C99 runtime in gcc.dg/builtins-67.c, gcc.target/i386/conversion.c
* gcc.dg/builtins-67.c: Use dg-add-options c99_runtime.
* gcc.target/i386/conversion.c: Likewise.
From-SVN: r177897
Richard Guenther [Fri, 19 Aug 2011 12:30:36 +0000 (12:30 +0000)]
pr50067-1.c: New testcase.
2011-08-19 Richard Guenther <rguenther@suse.de>
* gcc.dg/torture/pr50067-1.c: New testcase.
* gcc.dg/torture/pr50067-2.c: Likewise.
From-SVN: r177896
Joseph Myers [Fri, 19 Aug 2011 10:16:02 +0000 (11:16 +0100)]
opth-gen.awk: Do not declare target save/restore structures and functions if IN_RTS defined.
* opth-gen.awk: Do not declare target save/restore structures and
functions if IN_RTS defined.
From-SVN: r177894
Joey Ye [Fri, 19 Aug 2011 08:28:08 +0000 (08:28 +0000)]
re PR target/49437 (interrupt return pop sometimes corrupts sp)
PR target/49437
* config/arm/arm.c (arm_output_epilogue): Properly handle epilogue
when stack was realigned in interrupt handler prologue.
testsuite:
PR target/49437
* gcc.target/arm/handler-align.c: New test.
* lib/target-supports.exp (check_effective_target_arm_cortex_m):
New Function.
From-SVN: r177891
Joey Ye [Fri, 19 Aug 2011 07:43:45 +0000 (07:43 +0000)]
* gcc.c-torture/execute/
20101011-1.c (DO_TEST): Skip on ARM.
From-SVN: r177890
GCC Administrator [Fri, 19 Aug 2011 00:18:37 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r177889
Mikael Morin [Thu, 18 Aug 2011 22:42:38 +0000 (00:42 +0200)]
re PR fortran/50071 (gfortran does not distinguish labels in different type scoping units)
2011-08-19 Mikael Morin <mikael.morin@sfr.fr>
PR fortran/50071
* gfortran.h (gfc_exec_op): New constant EXEC_END_NESTED_BLOCK.
* parse.c (check_statement_label): Accept ST_END_BLOCK and
ST_END_ASSOCIATE as valid branch target.
(accept_statement): Change EXEC_END_BLOCK to EXEC_END_NESTED_BLOCK.
Add EXEC_END_BLOCK code in the ST_END_BLOCK and ST_END_ASSOCIATE cases.
* resolve.c (find_reachable_labels): Change EXEC_END_BLOCK to
EXEC_END_NESTED_BLOCK.
(resolve_branch): Ditto.
(resolve_code): Add EXEC_END_NESTED_BLOCK case.
* st.c (gfc_free_statement): Ditto.
* trans.c (trans_code): Ditto.
2011-08-19 Mikael Morin <mikael.morin@sfr.fr>
PR fortran/50071
* gfortran.dg/end_block_label_1.f90: New test.
* gfortran.dg/end_associate_label_1.f90: New test.
From-SVN: r177885
Joseph Myers [Thu, 18 Aug 2011 21:59:20 +0000 (22:59 +0100)]
* gcc.dg/c1x-pointer-float-1.c: New test.
From-SVN: r177884
Mikael Morin [Thu, 18 Aug 2011 21:39:42 +0000 (23:39 +0200)]
re PR fortran/50071 (gfortran does not distinguish labels in different type scoping units)
2011-08-18 Mikael Morin <mikael.morin@sfr.fr>
PR fortran/50071
* symbol.c (gfc_get_st_label): Use the derived type namespace when
we are parsing a derived type definition.
2011-08-18 Mikael Morin <mikael.morin@sfr.fr>
PR fortran/50071
* gfortran.dg/duplicate_labels_2.f: New test.
From-SVN: r177882
Joseph Myers [Thu, 18 Aug 2011 21:35:42 +0000 (22:35 +0100)]
c-decl.c (shadow_tag_warned): Check for _Noreturn.
* c-decl.c (shadow_tag_warned): Check for _Noreturn.
(quals_from_declspecs): Assert _Noreturn not present.
(grokdeclarator): Handle _Noreturn.
(build_null_declspecs): Initialize noreturn_p.
(declspecs_add_scspec): Handle RID_NORETURN.
* c-parser.c (c_token_starts_declspecs, c_parser_declspecs)
(c_parser_attributes): Handle RID_NORETURN.
* c-tree.h (struct c_declspecs): Add noreturn_p.
* ginclude/stdnoreturn.h: New.
* Makefile.in (USER_H): Add stdnoreturn.h.
c-family:
* c-common.c (c_common_reswords): Add _Noreturn.
(keyword_is_function_specifier): Handle RID_NORETURN.
* c-common.h (RID_NORETURN): New.
testsuite:
* gcc.dg/c1x-noreturn-1.c, gcc.dg/c1x-noreturn-2.c,
gcc.dg/c1x-noreturn-3.c, gcc.dg/c1x-noreturn-4.c,
gcc.dg/c1x-noreturn-5.c: New tests.
From-SVN: r177881
Rainer Orth [Thu, 18 Aug 2011 17:29:10 +0000 (17:29 +0000)]
Properly define __cplusplus (PR libstdc++-v3/1773)
PR libstdc++/1773
* init.c (cpp_init_builtins): Define __cplusplus 19971L.
From-SVN: r177877
Kirill Yukhin [Thu, 18 Aug 2011 17:24:39 +0000 (17:24 +0000)]
Add -mavx2.
2011-08-18 Kirill Yukhin <kirill.yukhin@intel.com>
* common/config/i386/i386-common.c (OPTION_MASK_ISA_AVX2_SET): New.
(OPTION_MASK_ISA_AVX_UNSET): Update.
(OPTION_MASK_ISA_AVX2_UNSET): New.
(ix86_handle_option): Handle OPT_mavx2 case.
* config/i386/cpuid.h (bit_AVX2): New.
* config/i386/driver-i386.c (host_detect_local_cpu): Detect
AVX2 feature.
* config/i386/i386-c.c (ix86_target_macros_internal):
Conditionally define __AVX2__.
* config/i386/i386.c (ix86_option_override_internal): Define
PTA_AVX2. Define "core-avx2" processor alias. Handle avx2
option.
(ix86_valid_target_attribute_inner_p): Handle avx2 option.
* config/i386/i386.h (TARGET_AVX2): New.
* config/i386/i386.opt (mavx2): New.
* doc/invoke.texi: Document -mavx2.
From-SVN: r177876
Vladimir Makarov [Thu, 18 Aug 2011 17:06:18 +0000 (17:06 +0000)]
re PR rtl-optimization/49890 (IRA spill with plenty of available registers)
2011-08-18 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/49890
* ira-costs.c (setup_regno_cost_classes_by_aclass): Don't exclude
subclasses of class which is superset of a pressure class.
From-SVN: r177874
Marc Glisse [Thu, 18 Aug 2011 16:56:55 +0000 (16:56 +0000)]
cmath: Extend/update comment.
2011-08-18 Marc Glisse <marc.glisse@normalesup.org>
* include/tr1/cmath: Extend/update comment.
From-SVN: r177873
Paolo Carlini [Thu, 18 Aug 2011 16:32:23 +0000 (16:32 +0000)]
re PR libstdc++/50119 ([C++0x] copy_n advances InputIterator one more time than necessary)
2011-08-18 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/50119
* include/bits/stl_algo.h (__copy_n(_InputIterator, _Size,
_OutputIterator, input_iterator_tag)): Fix.
* testsuite/25_algorithms/copy_n/50119.cc: New.
From-SVN: r177871
H.J. Lu [Thu, 18 Aug 2011 15:56:01 +0000 (15:56 +0000)]
Change ix86_isa_flags to HOST_WIDE_INT.
2011-08-18 H.J. Lu <hongjiu.lu@intel.com>
Igor Zamyatin <igor.zamyatin@intel.com>
* config/i386/i386-c.c (ix86_target_macros_internal): Replace int
with HOST_WIDE_INT for isa_flag.
(ix86_pragma_target_parse): Replace int with HOST_WIDE_INT for
isa variables.
* config/i386/i386.c (ix86_target_string): Replace int with
HOST_WIDE_INT for isa. Use HOST_WIDE_INT_PRINT to print isa.
(ix86_target_opts): Replace int with HOST_WIDE_INT on mask.
(pta_flags): Removed.
(PTA_XXX): Redefined as (HOST_WIDE_INT_1 << X).
(pta): Use HOST_WIDE_INT on flags.
(builtin_isa): Use HOST_WIDE_INT on isa.
(ix86_add_new_builtins): Likewise.
(def_builtin): Use HOST_WIDE_INT on mask.
(def_builtin_const): Likewise.
(builtin_description): Likewise.
* config/i386/i386.opt (ix86_isa_flags): Replace int with
HOST_WIDE_INT.
(ix86_isa_flags_explicit): Likewise.
(x_ix86_isa_flags_explicit): Likewise.
Co-Authored-By: Igor Zamyatin <igor.zamyatin@intel.com>
From-SVN: r177870
Joseph Myers [Thu, 18 Aug 2011 15:24:45 +0000 (16:24 +0100)]
* include/cpplib.h (struct cpp_options): Fix typo.
From-SVN: r177869
Joseph Myers [Thu, 18 Aug 2011 15:13:49 +0000 (16:13 +0100)]
c1x-uni-string-1.c, [...]: New tests.
gcc/testsuite:
* gcc.dg/c1x-uni-string-1.c, gcc.dg/c1x-uni-string-2.c: New tests.
libcpp:
* include/cpplib.h (struct cpp_options): Add rliterals.
* init.c (struct lang_flags, lang_defaults): Add rliterals.
(cpp_set_lang): Set rliterals option.
(cpp_init_builtins): Define __STDC_UTF_16__ and __STDC_UTF_32__.
* lex.c (_cpp_lex_direct): Only accept raw strings if rliterals.
From-SVN: r177868
Tobias Burnus [Thu, 18 Aug 2011 15:10:25 +0000 (17:10 +0200)]
re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
2011-08-18 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
* parse.c (parse_derived): Add lock_type
checks, improve coarray_comp handling.
* resolve.c (resolve_allocate_expr,
resolve_lock_unlock, resolve_symbol): Fix lock_type
constraint checks.
2011-08-18 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
* gfortran.dg/coarray_lock_1.f90: Update dg-error.
* gfortran.dg/coarray_lock_3.f90: Fix test.
* gfortran.dg/coarray_lock_4.f90: New.
* gfortran.dg/coarray_lock_5.f90: New.
From-SVN: r177867
Marc Glisse [Thu, 18 Aug 2011 14:59:47 +0000 (14:59 +0000)]
Use Solaris prototypes if possible (PR libstdc++-v3/1773)
Co-Authored-By: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
From-SVN: r177866
Vladimir Makarov [Thu, 18 Aug 2011 14:56:36 +0000 (14:56 +0000)]
re PR rtl-optimization/50107 ([IRA, i386] allocates registers in very non-optimal way)
2011-08-17 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/50107
* ira-int.h (ira_hard_reg_not_in_set_p): Remove.
(ira_hard_reg_in_set_p): New.
* ira-color.c (calculate_saved_nregs): New.
(assign_hard_reg): Use it. Set up allocated_hard_reg_p for all
hard regs.
(allocno_reload_assign, fast_allocation): Use
ira_hard_reg_set_intersection_p instead of
ira_hard_reg_not_in_set_p.
* ira.c (setup_reg_renumber): Use
ira_hard_reg_set_intersection_p instead of
ira_hard_reg_not_in_set_p.
(setup_allocno_assignment_flags, calculate_allocation_cost): Use
ira_hard_reg_in_set_p instead of ira_hard_reg_not_in_set_p.
* ira-costs.c (ira_tune_allocno_costs): Use
ira_hard_reg_set_intersection_p instead of
ira_hard_reg_not_in_set_p.
From-SVN: r177865
H.J. Lu [Thu, 18 Aug 2011 14:52:06 +0000 (14:52 +0000)]
Allow HOST_WIDE_INT for option variable.
2011-08-18 H.J. Lu <hongjiu.lu@intel.com>
Igor Zamyatin <igor.zamyatin@intel.com>
* hwint.h (HOST_WIDE_INT_1): New.
* opt-functions.awk (switch_bit_fields): Initialize the
host_wide_int field.
(host_wide_int_var_name): New.
(var_type_struct): Check and return HOST_WIDE_INT.
* opt-read.awk: Handle HOST_WIDE_INT for "Variable".
* optc-save-gen.awk: Support HOST_WIDE_INT on var_target_other.
* opth-gen.awk: Use HOST_WIDE_INT_1 on HOST_WIDE_INT. Properly
check masks for HOST_WIDE_INT.
* opts-common.c (set_option): Support HOST_WIDE_INT flag_var.
(option_enabled): Likewise.
(get_option_state): Likewise.
* opts.h (cl_option): Add cl_host_wide_int. Change var_value
to HOST_WIDE_INT.
Co-Authored-By: Igor Zamyatin <igor.zamyatin@intel.com>
From-SVN: r177864
Rainer Orth [Thu, 18 Aug 2011 14:47:46 +0000 (14:47 +0000)]
Keep tm, div_t, ldiv_t, lconv mangling on Solaris (PR libstdc++-v3/1773)
Co-Authored-By: Marc Glisse <marc.glisse@normalesup.org>
From-SVN: r177863
Peter Collingbourne [Thu, 18 Aug 2011 14:47:32 +0000 (14:47 +0000)]
2011-08-18 Peter Collingbourne <peter@pcc.me.uk>
* expr.c (expand_invoke) Use the type of the method rewrite
target.
From-SVN: r177862
Jakub Jelinek [Thu, 18 Aug 2011 14:29:10 +0000 (16:29 +0200)]
re PR target/50009 (Segmentation fault in tree_nop_conversion)
PR target/50009
* stor-layout.c (update_alignment_for_field): Don't ICE on
packed flexible array members if ms_bitfield_layout_p.
* gcc.c-torture/compile/pr50009.c: New test.
From-SVN: r177860
Jakub Jelinek [Thu, 18 Aug 2011 14:27:38 +0000 (16:27 +0200)]
re PR target/50092 (internal compiler error: in elimination_costs_in_insn, at reload1.c:3633)
PR target/50092
* config/i386/i386.c (assign_386_stack_local): Call validize_mem
on the result before returning it.
* gcc.dg/torture/pr50092.c: New test.
From-SVN: r177859
Tobias Burnus [Thu, 18 Aug 2011 14:23:41 +0000 (16:23 +0200)]
re PR fortran/50109 (Formatted namelist read with multiple "!" fails with: Cannot match namelist object name !)
2011-08-18 Tobias Burnus <burnus@net-b.de>
PR fortran/50109
* io/list_read.c (eat_separator): Fix skipping over "!" lines.
2011-08-18 Tobias Burnus <burnus@net-b.de>
PR fortran/50109
* gfortran.dg/namelist_73.f90: New.
From-SVN: r177858
Jakub Jelinek [Thu, 18 Aug 2011 14:13:48 +0000 (16:13 +0200)]
re PR debug/50017 (-fcompare-debug failure)
PR debug/50017
* tree-vect-stmts.c (vect_finish_stmt_generation): If gsi_stmt (*gsi)
is a debug stmt, use location of the first non-debug stmt after it.
* gcc.dg/pr50017.c: New test.
From-SVN: r177857
Jakub Jelinek [Thu, 18 Aug 2011 14:09:44 +0000 (16:09 +0200)]
* g++.dg/plugin/decl_plugin.c: Include diagnostic.h.
From-SVN: r177856
Richard Sandiford [Thu, 18 Aug 2011 13:47:21 +0000 (13:47 +0000)]
arm.c (arm_rtx_costs_1): Don't modify the costs of SET.
gcc/
* config/arm/arm.c (arm_rtx_costs_1): Don't modify the costs of SET.
(arm_size_rtx_costs): Likewise.
From-SVN: r177855
Richard Sandiford [Thu, 18 Aug 2011 13:45:07 +0000 (13:45 +0000)]
bpabi-lib.h (RENAME_LIBRARY_SET): Delete.
libgcc/
* config/arm/bpabi-lib.h (RENAME_LIBRARY_SET): Delete.
From-SVN: r177854
Richard Guenther [Thu, 18 Aug 2011 12:42:22 +0000 (12:42 +0000)]
tree.h (tree_int_cst_msb): Remove.
2011-08-18 Richard Guenther <rguenther@suse.de>
* tree.h (tree_int_cst_msb): Remove.
* tree.c (tree_int_cst_msb): Likewise.
(tree_int_cst_sign_bit): Move from ...
* tree-ssa-loop-ivopts.c (tree_int_cst_sign_bit): ... here.
From-SVN: r177853
Richard Sandiford [Thu, 18 Aug 2011 12:37:53 +0000 (12:37 +0000)]
tm.texi.in (TARGET_RTX_COSTS): Add an opno paramter.
gcc/
* doc/tm.texi.in (TARGET_RTX_COSTS): Add an opno paramter.
* doc/tm.texi: Regenerate.
* target.def (rtx_costs): Add an opno parameter.
* hooks.h (hook_bool_rtx_int_int_intp_bool_false): Replace with...
(hook_bool_rtx_int_int_int_intp_bool_false): ...this.
* hooks.c (hook_bool_rtx_int_int_intp_bool_false): Replace with...
(hook_bool_rtx_int_int_int_intp_bool_false): ...this.
* cse.c (COST_IN): Add an opno parameter.
(notreg_cost): Likewise. Update call to rtx_cost.
(COST, fold_rtx): Update accordingly.
* dojump.c (prefer_and_bit_test): Update call to rtx_cost.
* expmed.c (emit_store_flag): Likewise.
* optabs.c (avoid_expensive_constant): Add an opno parameter.
Update call to rtx_cost.
(expand_binop_directly, expand_binop): Likewise.
(expand_twoval_binop, prepare_cmp_insn): Likewise.
* rtl.h (rtx_cost, get_full_rtx_cost): Add opno parameters.
(set_src_cost, get_full_set_src_cost): Update accordingly.
* rtlanal.c (rtx_cost): Add an opno parameter. Update call
to target hook.
(get_full_rtx_cost): Add an opno paramter. Update calls to rtx_cost.
(default_adress_cost): Update calls to rtx_cost.
* config/arm/arm.c (arm_rtx_costs_1, arm_size_rtx_costs)
(arm_slowmul_rtx_costs): Adjust calls to rtx_cost.
(arm_rtx_costs): Add an opno parameter.
* config/alpha/alpha.c (alpha_rtx_costs): Add an opno parameter and
adjust any recursive rtx-cost calls.
* config/avr/avr.c (avr_operand_rtx_cost, avr_rtx_costs): Likewise.
* config/bfin/bfin.c (bfin_rtx_costs): Likewise.
* config/c6x/c6x.c (c6x_rtx_costs): Likewise.
* config/cris/cris.c (cris_rtx_costs): Likewise.
* config/frv/frv.c (frv_rtx_costs): Likewise.
* config/h8300/h8300.c (h8300_rtx_costs): Likewise.
* config/i386/i386.c (ix86_rtx_costs): Likewise.
* config/ia64/ia64.c (ia64_rtx_costs): Likewise.
* config/iq2000/iq2000.c (iq2000_rtx_costs): Likewise.
* config/lm32/lm32.c (lm32_rtx_costs): Likewise.
* config/m32c/m32c.c (m32c_rtx_costs): Likewise.
* config/m32r/m32r.c (m32r_rtx_costs): Likewise.
* config/m68k/m68k.c (m68k_rtx_costs): Likewise.
* config/mcore/mcore.c (mcore_rtx_costs): Likewise.
* config/mep/mep.c (mep_rtx_cost): Likewise.
* config/microblaze/microblaze.c (microblaze_rtx_costs): Likewise.
* config/mips/mips.c (mips_binary_cost): Update call to rtx_cost.
(mips_zero_extend_cost): Add an opno parameter.
* config/mmix/mmix.c (mmix_rtx_costs): Likewise.
* config/mn10300/mn10300.c (mn10300_address_cost): Update call
to rtx_cost.
(mn10300_rtx_costs): Add an opno parameter and adjust any recursive
rtx-cost calls.
* config/pa/pa.c (hppa_rtx_costs): Likewise.
* config/pdp11/pdp11.c (pdp11_rtx_costs): Likewise.
* config/picochip/picochip.c (picochip_rtx_costs): Likewise.
* config/rs6000/rs6000.c (rs6000_rtx_costs): Likewise.
(rs6000_debug_rtx_costs): Likewise.
* config/s390/s390.c (s390_rtx_costs): Likewise.
* config/score/score-protos.h (score_rtx_costs): Likewise.
* config/score/score.c (score_rtx_costs): Likewise.
* config/sh/sh.c (andcosts): Update call to rtx_cost.
(sh_rtx_costs): Add an opno parameter.
* config/sparc/sparc.c (sparc_rtx_costs): Likewise.
* config/spu/spu.c (spu_rtx_costs): Likewise.
* config/stormy16/stormy16.c (xstormy16_rtx_costs): Likewise.
* config/v850/v850.c (v850_rtx_costs): Likewise.
* config/vax/vax.c (vax_rtx_costs): Likewise.
* config/xtensa/xtensa.c (xtensa_rtx_costs): Likewise.
From-SVN: r177852
Richard Sandiford [Thu, 18 Aug 2011 12:37:27 +0000 (12:37 +0000)]
rtl.h (set_src_cost, [...]): New functions.
gcc/
* rtl.h (set_src_cost, get_full_set_src_cost): New functions.
* auto-inc-dec.c (attempt_change): Use set_src_cost instead of
rtx_cost.
* calls.c (precompute_register_parameters): Likewise.
* combine.c (expand_compound_operation, make_extraction): Likewise.
(force_to_mode, distribute_and_simplify_rtx): Likewise.
* dse.c (find_shift_sequence): Likewise.
* expmed.c (init_expmed, expand_mult, expand_smod_pow2): Likewise.
* expr.c (compress_float_constant): Likewise.
* fwprop.c (should_replace_address, try_fwprop_subst): Likewise.
* gcse.c (want_to_gcse_p): Likewise.
* ifcvt.c (noce_try_sign_mask): Likewise.
* loop-doloop.c (doloop_optimize): Likewise.
* loop-invariant.c (create_new_invariant): Likewise.
* optabs.c (avoid_expensive_constant): Likewise.
* postreload.c (reload_cse_simplify_set, reload_cse_simplify_operands)
(try_replace_in_use, reload_cse_move2add): Likewise.
* reload1.c (calculate_elim_costs_all_insns): Likewise.
(note_reg_elim_costly): Likewise.
* rtlanal.c (insn_rtx_cost): Likewise.
* simplify-rtx.c (simplify_binary_operation_1): Likewise.
* stmt.c (lshift_cheap_p): Likewise.
* tree-ssa-loop-ivopts.c (seq_cost, computation_cost): Likewise.
* config/avr/avr.c (final_prescan_insn): Likewise.
* config/bfin/bfin.c (bfin_rtx_costs): Likewise.
* config/mips/mips.c (mips_binary_cost, mips_rtx_costs): Likewise.
From-SVN: r177851
Richard Sandiford [Thu, 18 Aug 2011 12:36:51 +0000 (12:36 +0000)]
rtl.h (set_rtx_cost, [...]): New functions.
gcc/
* rtl.h (set_rtx_cost, get_full_set_rtx_cost): New functions.
* auto-inc-dec.c (attempt_change): Use set_rtx_cost.
* cfgloopanal.c (seq_cost): Likewise.
* loop-invariant.c (create_new_invariant): Likewise.
* postreload.c (move2add_use_add2_insn, move2add_use_add3_insn)
(reload_cse_move2add): Use get_full_set_rtx_cost.
From-SVN: r177850
Richard Guenther [Thu, 18 Aug 2011 11:40:45 +0000 (11:40 +0000)]
expr.c (get_inner_reference): Fix typo in last change.
2011-08-18 Richard Guenther <rguenther@suse.de>
* expr.c (get_inner_reference): Fix typo in last change.
From-SVN: r177849
Paolo Carlini [Thu, 18 Aug 2011 11:30:42 +0000 (11:30 +0000)]
re PR tree-optimization/49963 (ICE: in abs_hwi, at hwint.c:108)
2011-08-18 Paolo Carlini <paolo.carlini@oracle.com>
Joseph Myers <joseph@codesourcery.com>
PR tree-optimization/49963
* hwint.c (absu_hwi): Define.
* hwint.h (absu_hwi): Declare.
* fold-const.c (fold_plusminus_mult_expr): Use absu_hwi instead
of abs_hwi.
* tree-ssa-math-opts.c (gimple_expand_builtin_pow): Likewise.
* tree-ssa-loop-prefetch.c (prune_ref_by_group_reuse): Likewise.
Co-Authored-By: Joseph Myers <joseph@codesourcery.com>
From-SVN: r177848
Richard Guenther [Thu, 18 Aug 2011 08:33:21 +0000 (08:33 +0000)]
expr.c (get_inner_reference): Sign-extend the constant twos-complement offset before doing arbitrary...
2011-08-18 Richard Guenther <rguenther@suse.de>
* expr.c (get_inner_reference): Sign-extend the constant
twos-complement offset before doing arbitrary precision
arithmetic on it.
* tree-ssa-structalias.c (get_constraint_for_ptr_offset): Likewise.
(get_constraint_for_1): Pass the offset of a MEM_REF unchanged
to get_constraint_for_ptr_offset.
From-SVN: r177847
Dodji Seketeli [Thu, 18 Aug 2011 06:44:22 +0000 (06:44 +0000)]
PR c++/45625 - Template parm name doesn't hide outer class scope's member name
gcc/cp/
* pt.c (parameter_of_template_p): Handle comparison with DECLs of
template parameters as created by process_template_parm.
gcc/testsuite/
* g++.dg/lookup/hidden-var1.C: New test case.
From-SVN: r177846
GCC Administrator [Thu, 18 Aug 2011 00:18:23 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r177843
Kaz Kojima [Wed, 17 Aug 2011 22:49:18 +0000 (22:49 +0000)]
re PR target/50068 (Invalid memory access in incr_ticks_for_insn)
PR target/50068
* config/sh/sh.c (sh_output_mi_thunk): Don't call dbr_schedule.
From-SVN: r177839
Tobias Burnus [Wed, 17 Aug 2011 16:31:10 +0000 (18:31 +0200)]
re PR fortran/31461 (warn about entities in USE, ONLY statement not later used)
2011-08-17 Tobias Burnus <burnus@net-b.de>
PR fortran/31461
* trans-decl.c (generate_local_decl): Warn about
unused explicitly imported module variables/parameters.
2011-08-17 Tobias Burnus <burnus@net-b.de>
PR fortran/31461
* gfortran.dg/warn_unused_var_2.f90: New.
* gfortran.dg/warn_unused_var_3.f90: New.
From-SVN: r177833
Richard Guenther [Wed, 17 Aug 2011 12:00:35 +0000 (12:00 +0000)]
tree.h (convert_to_ptrofftype_loc): New function.
2011-08-17 Richard Guenther <rguenther@suse.de>
* tree.h (convert_to_ptrofftype_loc): New function.
(convert_to_ptrofftype): Define.
* builtins.c (expand_builtin_bzero): Use size_type_node.
(fold_builtin_bzero): Likewise.
(std_gimplify_va_arg_expr): Build the BIT_AND_EXPR on the pointer.
* c-typeck.c (build_unary_op): Use convert_to_ptrofftype_loc.
* cgraphunit.c (thunk_adjust): Use fold_build_pointer_plus_loc.
(cgraph_redirect_edge_call_stmt_to_callee): Use size_int.
* expr.c (expand_expr_addr_expr_1): Use fold_build_pointer_plus.
* fold-const.c (build_range_check): Negate using the original
type.
(fold_unary_loc): Use fold_build_pointer_plus_loc.
* gimple-fold.c (gimple_adjust_this_by_delta): Use
convert_to_ptrofftype.
* gimplify.c (gimplify_self_mod_expr): Likewise.
* graphite-clast-to-gimple.c (clast_to_gcc_expression): Likewise.
(graphite_create_new_loop_guard): Likewise.
* graphite-sese-to-poly.c (my_long_long): Remove.
(scop_ivs_can_be_represented): Adjust.
* tree-cfg.c (verify_gimple_assign_unary): Use ptrofftype_p.
* tree-chrec.c (chrec_fold_plus_1): Use fold_build_pointer_plus.
* tree-loop-distribution.c (build_size_arg_loc): Use
size_type_node.
(generate_memset_zero): Simplify.
* tree-mudflap.c: Use fold_convert, not convert.
* tree-predcom.c (suitable_reference_p): Expand DR_OFFSET in
its own type.
(determine_offset): Likewise for DR_STEP.
(valid_initializer_p): Likewise.
* tree-profile.c (prepare_instrumented_value): Convert the pointer
to an integer type of same size.
* tree-scalar-evolution.c (interpret_rhs_expr): Do not refer
to sizetype without need.
* tree-ssa-address.c (tree_mem_ref_addr): Likewise.
* tree-ssa-loop-ivopts.c (find_bivs): Use convert_to_ptrofftype.
* tree-ssa-loop-manip.c (create_iv): Likewise.
(determine_exit_conditions): Adjust comment.
* tree-ssa-pre.c (create_expression_by_pieces): Use
convert_to_ptrofftype.
* tree-ssa-structalias.c (get_constraint_for_1): Likewise.
* varasm.c (array_size_for_constructor): Compute using double_ints.
From-SVN: r177828
Tom de Vries [Wed, 17 Aug 2011 11:39:06 +0000 (11:39 +0000)]
re PR target/43597 (Move and compare with 0 can be combined)
2011-08-17 Tom de Vries <tom@codesourcery.com>
PR target/43597
* gcc.target/arm/pr43597.c: New test.
From-SVN: r177827
Richard Sandiford [Wed, 17 Aug 2011 11:13:20 +0000 (11:13 +0000)]
re PR target/50090 (ARM EABI symbols in libgcc.a have default visibility)
libgcc/
PR target/50090
* config/arm/bpabi-lib.h (RENAME_LIBRARY): Use a C-level alias
instead of an assembly one.
From-SVN: r177826
Janus Weil [Wed, 17 Aug 2011 09:14:18 +0000 (11:14 +0200)]
re PR fortran/50070 (Segmentation fault at size_binop_loc in fold-const.c)
2011-08-17 Janus Weil <janus@gcc.gnu.org>
PR fortran/50070
* resolve.c (resolve_fl_variable): Reject non-constant character lengths
in COMMON variables.
2011-08-17 Janus Weil <janus@gcc.gnu.org>
PR fortran/50070
* gfortran.dg/common_13.f90: New.
From-SVN: r177825
GCC Administrator [Wed, 17 Aug 2011 00:18:42 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r177820
Jason Merrill [Tue, 16 Aug 2011 23:26:08 +0000 (19:26 -0400)]
re PR c++/50086 ([C++0x] Error on lookup of template function address with variadic template arguments)
PR c++/50086
* pt.c (unify_pack_expansion): Correct overloaded unification
logic.
From-SVN: r177813
Jason Merrill [Tue, 16 Aug 2011 23:26:00 +0000 (19:26 -0400)]
* g++.old-deja/g++.brendan/README: Add R.I.P.
From-SVN: r177812
Jason Merrill [Tue, 16 Aug 2011 23:25:52 +0000 (19:25 -0400)]
pt.c (instantiate_class_template_1): If DECL_PRESERVE_P is set on a member function or static data member...
* pt.c (instantiate_class_template_1): If DECL_PRESERVE_P is set
on a member function or static data member, call mark_used.
From-SVN: r177811
Jason Merrill [Tue, 16 Aug 2011 23:25:43 +0000 (19:25 -0400)]
re PR c++/50054 (Fails to recover from type error in function signature)
PR c++/50054
* typeck2.c (cxx_incomplete_type_diagnostic): Handle
init_list_type_node.
From-SVN: r177810
Tobias Burnus [Tue, 16 Aug 2011 21:26:23 +0000 (23:26 +0200)]
re PR fortran/50094 (FAIL: gfortran.dg/coarray_6.f90)
2011-08-16 Tobias Burnus <burnus@net-b.de>
Dominique Dhumieres <dominiq@lps.ens.fr>
PR fortran/50094
* resolve.c (resolve_symbol): Fix stupid typo.
Co-Authored-By: Dominique d'Humieres <dominiq@lps.ens.fr>
From-SVN: r177801
Ulrich Weigand [Tue, 16 Aug 2011 18:39:55 +0000 (18:39 +0000)]
spu.c (spu_emit_branch_or_set): Avoid reverse tests when generating an integer result where possible.
* config/spu/spu.c (spu_emit_branch_or_set): Avoid reverse tests
when generating an integer result where possible. Short-cut
comparison against 0 also for QImode.
From-SVN: r177795
Ulrich Weigand [Tue, 16 Aug 2011 18:33:15 +0000 (18:33 +0000)]
spu.h (LEGITIMIZE_RELOAD_ADDRESS): New macro.
* config/spu/spu.h (LEGITIMIZE_RELOAD_ADDRESS): New macro.
* config/spu/spu-protos.h (spu_legitimize_reload_address): Add
prototype.
* config/spu/spu.c (spu_legitimize_reload_address): New function.
(spu_legitimate_address_p): Do not check displacement if the base
is an eliminable stack register.
From-SVN: r177794
Anatoly Sokolov [Tue, 16 Aug 2011 17:04:13 +0000 (21:04 +0400)]
m32c.h (PREFERRED_RELOAD_CLASS, [...]): Remove macro.
* config/m32c/m32c.h (PREFERRED_RELOAD_CLASS,
PREFERRED_OUTPUT_RELOAD_CLASS): Remove macro.
* config/m32c/m32c-protos.h (m32c_preferred_reload_class,
m32c_preferred_output_reload_class): Remove.
* config/m32c/m32c.c (m32c_preferred_reload_class): Make static.
Change rclass argument and return types to reg_class_t. Use
reg_class_subset_p instead of class_sizes.
(m32c_preferred_output_reload_class): Make static. Change rclass
argument and return types to reg_class_t.
(TARGET_PREFERRED_RELOAD_CLASS,
TARGET_PREFERRED_OUTPUT_RELOAD_CLASS): Define.
From-SVN: r177790
Kai Tietz [Tue, 16 Aug 2011 16:29:20 +0000 (18:29 +0200)]
* config/i386/mingw32.h (GOMP_SELF_SPEC): Add -pthread option.
From-SVN: r177789
Richard Guenther [Tue, 16 Aug 2011 15:32:17 +0000 (15:32 +0000)]
re PR tree-optimization/50082 (-Wstrict-overflow mishandles typedef)
2011-08-16 Richard GUenther <rguenther@suse.de>
PR tree-optimization/50082
* tree-ssa-forwprop.c (combine_cond_expr_cond): Handle overflow
warnings here, instead of ...
(ssa_forward_propagate_and_combine): ... here.
(forward_propagate_into_comparison_1): Adjust.
(forward_propagate_into_comparison): Likewise.
(forward_propagate_into_gimple_cond): Likewise.
(forward_propagate_into_cond): Likewise.
From-SVN: r177788
Andreas Schwab [Tue, 16 Aug 2011 14:14:26 +0000 (14:14 +0000)]
ggc.h (ggc_alloc_rtvec_sized): Use ggc_alloc_zone_rtvec_def instead of ggc_alloc_zone_vec_rtvec_def.
* ggc.h (ggc_alloc_rtvec_sized): Use ggc_alloc_zone_rtvec_def
instead of ggc_alloc_zone_vec_rtvec_def.
From-SVN: r177785
Richard Guenther [Tue, 16 Aug 2011 13:55:30 +0000 (13:55 +0000)]
tree.h (ptrofftype_p): New helper function.
2011-08-16 Richard Guenther <rguenther@suse.de>
* tree.h (ptrofftype_p): New helper function.
* tree-cfg.c (verify_expr): Use ptrofftype_p for POINTER_PLUS_EXPR
offset verification.
(verify_gimple_assign_binary): Likewise.
* tree.c (build2_stat): Likewise.
* tree-chrec.c (chrec_fold_plus_poly_poly): Likewise.
(reset_evolution_in_loop): Likewise.
* tree-chrec.h (build_polynomial_chrec): Likewise.
From-SVN: r177784
Liang Wang [Tue, 16 Aug 2011 09:49:28 +0000 (09:49 +0000)]
ggc.h (ggc_alloc_rtvec_sized): Change arguments of ggc_alloc_zone_vec_rtvec_def.
2011-08-16 Liang Wang <lwang1@marvell.com>
* ggc.h (ggc_alloc_rtvec_sized): Change arguments of
ggc_alloc_zone_vec_rtvec_def.
From-SVN: r177782
Richard Guenther [Tue, 16 Aug 2011 09:01:59 +0000 (09:01 +0000)]
tree-vrp.c (extract_range_from_multiplicative_op_1): New helper factored out from ...
2011-08-16 Richard Guenther <rguenther@suse.de>
* tree-vrp.c (extract_range_from_multiplicative_op_1): New
helper factored out from ...
(extract_range_from_binary_expr_1): ... here. Re-structure
to not glob handling too different tree codes.
From-SVN: r177781
Ian Lance Taylor [Tue, 16 Aug 2011 04:40:41 +0000 (04:40 +0000)]
Remove entry for gofrontend directory which should not be here.
From-SVN: r177779
GCC Administrator [Tue, 16 Aug 2011 00:18:39 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r177777
H.J. Lu [Mon, 15 Aug 2011 22:04:04 +0000 (22:04 +0000)]
Only run g++.dg/opt/life1.C on Linux.
2011-08-15 H.J. Lu <hongjiu.lu@intel.com>
PR testsuite/50085
* g++.dg/opt/life1.C: Only run on Linux.
From-SVN: r177772
Xinliang David Li [Mon, 15 Aug 2011 20:43:07 +0000 (20:43 +0000)]
fix Change log
From-SVN: r177769
Gabriel Charette [Mon, 15 Aug 2011 20:35:58 +0000 (20:35 +0000)]
LINEMAP_POSITION_FOR_COLUMN had the exact same effect as linemap_position_for_column...
LINEMAP_POSITION_FOR_COLUMN had the exact same effect as
linemap_position_for_column, removed it and updated users
to use linemap_position_for_column instead
libcpp/ChangeLog
* include/line-map.h (LINEMAP_POSITION_FOR_COLUMN): Remove.
Update all users to use linemap_position_for_column instead.
gcc/go/ChangeLog
* gofrontend/lex.cc (Lex::location): Update to use
linemap_position_for_column instead.
(Lex::earlier_location): Likewise.
From-SVN: r177768
Tobias Burnus [Mon, 15 Aug 2011 20:10:51 +0000 (22:10 +0200)]
resolve.c (resolve_symbol): Fix coarray result-var check.
2011-08-15 Tobias Burnus <burnus@net-b.de>
* resolve.c (resolve_symbol): Fix coarray result-var check.
2011-08-15 Tobias Burnus <burnus@net-b.de>
* gfortran.dg/coarray_26.f90: New.
From-SVN: r177767
Richard Henderson [Mon, 15 Aug 2011 17:44:11 +0000 (10:44 -0700)]
re PR debug/50006 (ICE in in connect_traces, at dwarf2cfi.c:2677)
PR middle-end/50006
* explow.c (allocate_dynamic_stack_space): Move suppress_reg_args_size
setting out to include allocate_stack named pattern as well.
* builtins.c (expand_builtin_apply): Add ARG_SIZE 0 note.
* stmt.c (expand_stack_restore): Likewise.
From-SVN: r177764
Hans-Peter Nilsson [Mon, 15 Aug 2011 16:34:57 +0000 (16:34 +0000)]
Fix typo last change
From-SVN: r177763
Richard Guenther [Mon, 15 Aug 2011 15:01:33 +0000 (15:01 +0000)]
re PR tree-optimization/50082 (-Wstrict-overflow mishandles typedef)
2011-08-15 Richard Guenther <rguenther@suse.de>
PR middle-end/50082
* fold-const.c (maybe_canonicalize_comparison_1): Properly
convert the modified operand to the other operand type.
(fold_comparison): Call maybe_canonicalize_comparison_1 with
useless conversions stripped from comparison operands.
From-SVN: r177762
Richard Guenther [Mon, 15 Aug 2011 14:32:12 +0000 (14:32 +0000)]
tree-vrp.c (value_range_nonnegative_p): Fix anti-range case.
2011-08-15 Richard Guenther <rguenther@suse.de>
* tree-vrp.c (value_range_nonnegative_p): Fix anti-range case.
(extract_range_from_unary_expr_1): Restructure.
From-SVN: r177761
Richard Guenther [Mon, 15 Aug 2011 12:17:33 +0000 (12:17 +0000)]
re PR tree-optimization/50058 (FAIL: g++.dg/tree-ssa/pr41186.C)
2011-08-15 Richard Guenther <rguenther@suse.de>
PR tree-optimization/50058
* tree-ssa-sccvn.c (vn_reference_lookup_3): Relax aggregate
copy matching.
From-SVN: r177760
Ramana Radhakrishnan [Mon, 15 Aug 2011 11:57:33 +0000 (11:57 +0000)]
re PR target/50022 ("incorrect condition in IT block" when building mozilla code base for ARM)
2011-08-15 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org>
PR target/50022
* config/arm/arm.c (output_move_double): Add 2 parameters
to count the number of insns emitted and whether to emit or not.
Use the flag to decide when to emit and count number of instructions
that will be emitted.
Handle case where output_move_double might be called for calculating
lengths with an invalid constant.
(arm_count_output_move_double_insns): Define.
* config/arm/arm-protos.h (arm_count_output_move_double_insns): Declare.
(output_move_double): Adjust prototype.
* config/arm/vfp.md ("*movdi_vfp"): Adjust call to
output_move_double.
("*movdi_vfp_cortexa8"): Likewise and add attribute
for ce_count.
* config/arm/arm.md ("*arm_movdi"): Adjust call to output_move_double.
("*movdf_soft_insn"): Likewise.
* config/arm/cirrus.md ("*cirrus_arm_movdi"): Likewise.
("*cirrus_thumb2_movdi"): Likewise.
("*thumb2_cirrus_movdf_hard_insn"): Likewise.
("*cirrus_movdf_hard_insn"): Likewise.
* config/arm/neon.md (*neon_mov<mode> VD): Likewise.
* config/arm/iwmmxt.md ("*iwmmxt_arm_movdi"): Likewise.
("mov<mode>_internal VMMX"): Likewise.
* config/arm/fpa.md (*movdf_fpa, *thumb2_movdf_fpa): Likewise.
From-SVN: r177759
Hans-Peter Nilsson [Mon, 15 Aug 2011 10:07:25 +0000 (10:07 +0000)]
vrp61.c: : Use -fdump-tree-vrp1-nouid instead of -fdump-tree-vrp1.
* gcc.dg/tree-ssa/vrp61.c: : Use -fdump-tree-vrp1-nouid instead of
-fdump-tree-vrp1.
From-SVN: r177758
Benjamin Kosnik [Mon, 15 Aug 2011 00:54:18 +0000 (00:54 +0000)]
*: Image and image filename changes.
2011-08-14 Benjamin Kosnik <bkoz@redhat.com>
* doc/xml/images/*: Image and image filename changes.
From-SVN: r177757
Benjamin Kosnik [Mon, 15 Aug 2011 00:51:06 +0000 (00:51 +0000)]
make_graph_test_infos.xml: Edit.
2011-08-14 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/data/make_graph_test_infos.xml: Edit.
* testsuite/data/make_graph_htmls.xml: Remove
* scripts/make_graph.py: Edit, fix.
* scripts/make_graphs.py: Remove.
* doc/Makefile.am (doc-svg-performance): New.
(doc-html-performance): Remove.
* doc/Makefile.in: Regenerate.
* doc/xml/manual/test_policy_data_structures.xml: Markup changes.
* doc/xml/manual/policy_data_structures.xml: Same.
* doc/xml/manual/locale.xml: Same.
Testsuite renames.
* performance/ext/pb_ds/priority_queue_text_modify_down_timing.cc:
Rename.
* performance/ext/pb_ds/random_int_find_timing.cc: Same.
* performance/ext/pb_ds/multimap_text_insert_mem_usage.hpp
* performance/ext/pb_ds/multimap_text_find_timing.hpp
* performance/ext/pb_ds/priority_queue_random_int_push_timing.cc: Same.
* performance/ext/pb_ds/priority_queue_text_modify_timing.hpp
* performance/ext/pb_ds/tree_order_statistics_timing.cc: Same.
* performance/ext/pb_ds/multimap_text_insert_mem_usage_large.cc: Same.
* performance/ext/pb_ds/priority_queue_text_push_pop_timing.cc: Same.
* performance/ext/pb_ds/priority_queue_text_join_timing.cc: Same.
* performance/ext/pb_ds/multimap_text_insert_timing_small.cc: Same.
* performance/ext/pb_ds/random_int_subscript_insert_timing.cc: Same.
* performance/ext/pb_ds/tree_text_lor_find_timing.cc: Same.
* performance/ext/pb_ds/priority_queue_text_pop_mem_usage.cc: Same.
* performance/ext/pb_ds/multimap_text_find_timing_small.cc: Same.
* performance/ext/pb_ds/text_find_timing.cc: Same.
* performance/ext/pb_ds/tree_text_insert_timing.cc: Same.
* performance/ext/pb_ds/hash_random_int_erase_mem_usage.cc: Same.
* performance/ext/pb_ds/random_int_subscript_find_timing.cc: Same.
* performance/ext/pb_ds/priority_queue_text_push_timing.cc: Same.
* performance/ext/pb_ds/tree_split_join_timing.cc: Same.
* performance/ext/pb_ds/multimap_text_insert_timing_large.cc: Same.
* performance/ext/pb_ds/priority_queue_text_modify_up_timing.cc: Same.
* performance/ext/pb_ds/multimap_text_find_timing_large.cc: Same.
* performance/ext/pb_ds/priority_queue_random_int_push_pop_timing.cc:
Same.
* performance/ext/pb_ds/multimap_text_insert_timing.hpp
* performance/ext/pb_ds/multimap_text_insert_mem_usage_small.cc: Same.
* performance/ext/pb_ds/hash_zlob_random_int_find_timing.cc: Same.
* performance/ext/pb_ds/all_int_find.cc: To these new files...
* performance/ext/pb_ds/all_int_subscript_find.cc: ...this.
* performance/ext/pb_ds/all_int_subscript_insert.cc: ...this.
* performance/ext/pb_ds/all_text_find.cc: ...this.
* performance/ext/pb_ds/hash_int_erase_mem.cc: ...this.
* performance/ext/pb_ds/hash_zlob_int_find.cc: ...this.
* performance/ext/pb_ds/multimap_text_find.hpp
* performance/ext/pb_ds/multimap_text_find_large.cc: ...this.
* performance/ext/pb_ds/multimap_text_find_small.cc: ...this.
* performance/ext/pb_ds/multimap_text_insert.hpp
* performance/ext/pb_ds/multimap_text_insert_large.cc: ...this.
* performance/ext/pb_ds/multimap_text_insert_mem.hpp
* performance/ext/pb_ds/multimap_text_insert_mem_large.cc: ...this.
* performance/ext/pb_ds/multimap_text_insert_mem_small.cc: ...this.
* performance/ext/pb_ds/multimap_text_insert_small.cc: ...this.
* performance/ext/pb_ds/priority_queue_int_push.cc: ...this.
* performance/ext/pb_ds/priority_queue_int_push_pop.cc: ...this.
* performance/ext/pb_ds/priority_queue_text_join.cc: ...this.
* performance/ext/pb_ds/priority_queue_text_modify_down.cc: ...this.
* performance/ext/pb_ds/priority_queue_text_modify.hpp
* performance/ext/pb_ds/priority_queue_text_modify_up.cc: ...this.
* performance/ext/pb_ds/priority_queue_text_pop_mem.cc: ...this.
* performance/ext/pb_ds/priority_queue_text_push.cc: ...this.
* performance/ext/pb_ds/priority_queue_text_push_pop.cc: ...this.
* performance/ext/pb_ds/tree_order_statistics.cc: ...this.
* performance/ext/pb_ds/tree_split_join.cc: ...this.
* performance/ext/pb_ds/tree_text_insert.cc: ...this.
* performance/ext/pb_ds/tree_text_lor_find.cc: ...this.
* doc/xml/images/*: Image and image filename changes.
From-SVN: r177756
GCC Administrator [Mon, 15 Aug 2011 00:18:30 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r177755
Uros Bizjak [Sun, 14 Aug 2011 20:02:32 +0000 (22:02 +0200)]
i386.c (ix86_expand_round_sse4): New function.
* config/i386/i386.c (ix86_expand_round_sse4): New function.
* config/i386/i386-protos.h (ix86_expand_round_sse4): New prototype.
* config/i386/i386.md (round<mode>2): Use ix86_expand_round_sse4
for TARGET_ROUND.
(rint<mode>2): Simplify TARGET_ROUND check.
(floor<mode>2): Ditto.
(ceil<mode>2): Ditto.
(btrunc<mode>2): Ditto.
From-SVN: r177751
Steven G. Kargl [Sun, 14 Aug 2011 18:00:51 +0000 (18:00 +0000)]
module.c (use_iso_fortran_env_module): Spell 'referrenced' correctly.
2011-08-14 Steven G. Kargl <kargl@gcc.gnu.org>
* module.c (use_iso_fortran_env_module): Spell 'referrenced' correctly.
From-SVN: r177750
Anatoly Sokolov [Sun, 14 Aug 2011 17:16:42 +0000 (21:16 +0400)]
mmix.c (TARGET_PREFERRED_OUTPUT_RELOAD_CLASS): Redefine as mmix_preferred_output_reload_class.
* config/mmix/mmix.c (TARGET_PREFERRED_OUTPUT_RELOAD_CLASS): Redefine
as mmix_preferred_output_reload_class.
From-SVN: r177749
Yao Qi [Sun, 14 Aug 2011 12:25:15 +0000 (12:25 +0000)]
configure.ac (tic6x-*-*): Remove gdb from noconfigdirs.
* configure.ac (tic6x-*-*): Remove gdb from noconfigdirs.
* configure: Regenerate.
From-SVN: r177746
Janus Weil [Sun, 14 Aug 2011 09:37:25 +0000 (11:37 +0200)]
re PR fortran/50073 (gfortran must not accept function name when result name is present)
2011-08-14 Janus Weil <janus@gcc.gnu.org>
PR fortran/50073
* decl.c (check_function_name): New function, separated off from
'variable_decl' and slightly extended.
(variable_decl,attr_decl1): Call it.
2011-08-14 Janus Weil <janus@gcc.gnu.org>
PR fortran/50073
* gfortran.dg/func_result_7.f90: New.
From-SVN: r177745
Georg-Johann Lay [Sun, 14 Aug 2011 09:10:13 +0000 (09:10 +0000)]
re PR target/49903 ([avr] Redundant comparisons in binary-search switch/case expansion)
* PR target/49903
* config/avr/avr.md (UNSPEC_IDENTITY): New c_enum.
(branch_unspec): New insn.
(branch): Beauty farm.
* config/avr/avr.c (compare_condition): Use JUMP_P. Test SET_SRC
to be IF_THEN_ELSE.
(avr_compare_pattern, avr_reorg_remove_redundant_compare):
New static functions.
(avr_reorg): Use them. Use next_real_insn instead of NEXT_INSN.
Use CONST_INT_P. Beauty.
From-SVN: r177744
Jason Merrill [Sun, 14 Aug 2011 04:41:43 +0000 (00:41 -0400)]
re PR c++/50075 ([C++0x] ICE related to parameter deduction and initializer_list)
PR c++/50075
* name-lookup.c (local_bindings_p): New.
* name-lookup.h: Declare it.
* lex.c (unqualified_name_lookup_error): Use it.
From-SVN: r177743
GCC Administrator [Sun, 14 Aug 2011 00:18:35 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r177741