Nathan Froyd [Tue, 31 Aug 2010 13:12:14 +0000 (13:12 +0000)]
m32r.h (FUNCTION_ARG, [...]): Move these...
* config/m32r/m32r.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Move
these...
(ROUND_ADVANCE, ROUND_ADVANCE_ARG, ROUND_ADVANCE_CUM, PASS_IN_REG_P):
...and these...
* config/m32r/m32r.c (m32r_function_arg, m32r_function_arg_advance):
..to here..
(ROUND_ADVANCE, ROUND_ADVANCE_ARG, ROUND_ADVANCE_CUM, PASS_IN_REG_P):
...and here.
(TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
From-SVN: r163672
Nathan Froyd [Tue, 31 Aug 2010 13:10:39 +0000 (13:10 +0000)]
rx-protos.h (rx_function_arg, [...]): Delete.
* config/rx/rx-protos.h (rx_function_arg, rx_function_arg_size):
Delete.
* config/rx/rx.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
* config/rx/rx.c (rx_function_arg_size): Make static.
(rx_function_arg): Likewise.
(rx_function_arg_advance): New function.
(TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
From-SVN: r163671
Richard Guenther [Tue, 31 Aug 2010 10:01:04 +0000 (10:01 +0000)]
re PR testsuite/45455 (gcc.dg/vect/vect-cond-4.c uses uninitialised variable)
2010-08-31 Richard Guenther <rguenther@suse.de>
PR testsuite/45455
* gcc.dg/vect/vect-cond-4.c: Fix use of uninitialized variable.
From-SVN: r163669
Bingfeng Mei [Tue, 31 Aug 2010 09:02:39 +0000 (09:02 +0000)]
pr43430-1.c: Requires vect_condition target.
2010-08-31 Bingfeng Mei <bmei@broadcom.com>
* gcc.dg/vect/pr43430-1.c: Requires vect_condition target.
From-SVN: r163668
John Tytgat [Tue, 31 Aug 2010 08:42:21 +0000 (08:42 +0000)]
arm.c (arm_override_options): Remove superfluous test.
* config/arm/arm.c (arm_override_options): Remove superfluous test.
Fix indentation.
From-SVN: r163667
Eric Botcazou [Tue, 31 Aug 2010 07:02:17 +0000 (07:02 +0000)]
dwarf2out.c (gen_decl_die): Do not skip in Ada.
* dwarf2out.c (gen_decl_die) <CONST_DECL>: Do not skip in Ada.
(dwarf2out_decl) <CONST_DECL>: Likewise.
From-SVN: r163666
GCC Administrator [Tue, 31 Aug 2010 00:17:17 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r163665
Janus Weil [Mon, 30 Aug 2010 21:56:28 +0000 (23:56 +0200)]
re PR fortran/45456 ([OOP] Bogus pointer initialization error on pointer-valued TBP)
2010-08-30 Janus Weil <janus@gcc.gnu.org>
PR fortran/45456
* resolve.c (resolve_structure_cons): Handle pointer-valued PPCs.
2010-08-30 Janus Weil <janus@gcc.gnu.org>
PR fortran/45456
* gfortran.dg/typebound_proc_18.f03: New.
From-SVN: r163661
Eric Botcazou [Mon, 30 Aug 2010 20:04:49 +0000 (20:04 +0000)]
Stack usage support
Stack usage support
* common.opt (-fstack-usage): New option.
* doc/invoke.texi (Debugging options): Document it.
* builtins.c (expand_builtin_apply): Pass TRUE as 4th argument to
allocate_dynamic_stack_space.
(expand_builtin_alloca): Add 4th bool parameter CANNOT_ACCUMULATE
and propagate it to allocate_dynamic_stack_space.
(expand_builtin) <BUILT_IN_ALLOCA>: Adjust for above change.
* calls.c (initialize_argument_information): Pass TRUE as 4th
argument to allocate_dynamic_stack_space.
(expand_call): Set current_function_has_unbounded_dynamic_stack_size
to 1 when pushing a variable-sized argument onto the stack. Pass
TRUE as 4th argument to allocate_dynamic_stack_space.
Update current_function_pushed_stack_size.
(emit_library_call_value_1): Likewise.
* explow.c (allocate_dynamic_stack_space): Add 4th bool parameter
CANNOT_ACCUMULATE. If flag_stack_usage, look into the size and
attempt to find an upper bound. Remove redundant code for the
SETJMP_VIA_SAVE_AREA case.
* expr.h (allocate_dynamic_stack_space): Add 4th bool parameter.
* function.h (struct stack_usage): New structure.
(current_function_static_stack_size): New macro.
(current_function_dynamic_stack_size): Likewise.
(current_function_pushed_stack_size): Likewise.
(current_function_dynamic_alloc_count): Likewise.
(current_function_has_unbounded_dynamic_stack_size): Likewise.
(current_function_allocates_dynamic_stack_space): Likewise.
(struct function): Add new field 'su'.
* function.c (instantiate_virtual_regs): If SETJMP_VIA_SAVE_AREA,
add the value of the dynamic offset to the dynamic stack usage.
(gimplify_parameters): Set ALLOCA_FOR_VAR_P on call to BUILT_IN_ALLOCA
for variable-sized objects.
(prepare_function_start): Allocate cfun->su if flag_stack_usage.
(rest_of_handle_thread_prologue_and_epilogue): Call output_stack_usage.
* gimplify.c (gimplify_decl_expr): Set ALLOCA_FOR_VAR_P on call to
BUILT_IN_ALLOCA for variable-sized objects.
* output.h (output_stack_usage): Declare.
* toplev.c (stack_usage_file): New file pointer.
(output_stack_usage): New function.
(open_auxiliary_file): Likewise.
(lang_dependent_init): Open file if flag_stack_usage is set.
(finalize): Close file if stack_usage_file is not null.
* tree.h (ALLOCA_FOR_VAR_P): New macro.
* config/alpha/alpha.c (compute_frame_size): New function.
(alpha_expand_prologue): Use it.
(alpha_start_function): Likewise.
(alpha_expand_epilogue): Likewise. Set stack usage info.
* config/i386/i386.c (ix86_expand_prologue): Likewise.
* config/ia64/ia64.c (ia64_expand_prologue): Likewise.
* config/mips/mips.c (mips_expand_prologue): Likewise.
* config/pa/pa.c (hppa_expand_prologue): Likewise.
* config/rs6000/rs6000.c (rs6000_emit_prologue): Likewise.
* config/sparc/sparc.c (sparc_expand_prologue): Likewise.
testsuite/
* lib/gcc-dg.exp (cleanup-stack-usage): New procedure.
* lib/scanasm.exp (scan-stack-usage): Likewise.
(scan-stack-usage-not): Likewise.
* gcc.dg/stack-usage-1.c: New test.
* gcc.target/i386/stack-usage-realign.c: Likewise.
From-SVN: r163660
Zdenek Dvorak [Mon, 30 Aug 2010 19:50:05 +0000 (21:50 +0200)]
re PR tree-optimization/45427 (Number of iteration analysis bogus)
PR tree-optimization/45427
* tree-ssa-loop-niter.c (number_of_iterations_ne_max): Rewritten.
Handle the case that the exit is never taken correctly.
(number_of_iterations_ne): Pass exit_must_be_taken to
number_of_iterations_ne_max.
* gcc.dg/tree-ssa/pr45427.c: New test.
From-SVN: r163659
Catherine Moore [Mon, 30 Aug 2010 18:57:30 +0000 (14:57 -0400)]
mips.h (BASE_DRIVER_SELF_SPECS): Infer -mdspr2 for the the 74K.
2010-08-31 Catherine Moore <clm@codesourcery.com>
* config/mips/mips.h (BASE_DRIVER_SELF_SPECS):
Infer -mdspr2 for the the 74K.
From-SVN: r163656
Paolo Carlini [Mon, 30 Aug 2010 18:13:32 +0000 (18:13 +0000)]
re PR c++/45043 (ICE: tree check: expected identifier_node, have bit_not_expr in grokdeclarator, at cp/decl.c:8113 on invalid code)
/cp
2010-08-30 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/45043
* decl.c (grokdeclarator): Use MAIN_NAME_P only on IDENTIFIER_NODEs.
/testsuite
2010-08-30 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/45043
* g++.dg/template/crash102.C: New.
From-SVN: r163655
Jakub Jelinek [Mon, 30 Aug 2010 17:17:15 +0000 (19:17 +0200)]
re PR debug/45419 (-fcompare-debug failure at -O3)
PR debug/45419
* tree-ssa-live.c (dump_enumerated_decls): Clear the whole wi variable.
From-SVN: r163654
Jakub Jelinek [Mon, 30 Aug 2010 17:16:29 +0000 (19:16 +0200)]
re PR middle-end/45423 (#pragma omp atomic on bool has issues)
PR middle-end/45423
* gimplify.c (goa_stabilize_expr): Handle TRUTH_NOT_EXPR
and TRUTH_{AND,OR,XOR}_EXPR.
* c-parser.c (c_parser_omp_atomic): Handle boolean
{PRE,POST}_{INC,DEC}REMENT.
cp/
* parser.c (cp_parser_omp_atomic): Handle boolean
{PRE,POST}_INCREMENT.
testsuite/
* gcc.dg/gomp/atomic-12.c: New test.
* gcc.dg/gomp/atomic-13.c: New test.
* gcc.dg/gomp/atomic-14.c: New test.
* g++.dg/gomp/atomic-11.C: New test.
* g++.dg/gomp/atomic-12.C: New test.
* g++.dg/gomp/atomic-13.C: New test.
* g++.dg/gomp/atomic-14.C: New test.
From-SVN: r163653
Eric Botcazou [Mon, 30 Aug 2010 16:30:41 +0000 (16:30 +0000)]
utils.c (gnat_pushdecl): Remove test for PARM_DECLs.
* gcc-interface/utils.c (gnat_pushdecl): Remove test for PARM_DECLs.
Attach fake PARM_DECLs to the topmost block of the function.
From-SVN: r163651
Rainer Orth [Mon, 30 Aug 2010 16:03:55 +0000 (16:03 +0000)]
nested-2.C: Allow for single / as comment delimiter.
* g++.dg/debug/dwarf2/nested-2.C: Allow for single / as comment
delimiter.
From-SVN: r163650
Nathan Froyd [Mon, 30 Aug 2010 16:03:44 +0000 (16:03 +0000)]
xtensa-protos.h (function_arg_advance): Delete.
* config/xtensa/xtensa-protos.h (function_arg_advance): Delete.
(function_arg): Delete.
* config/xtensa/xtensa.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
(FUNCTION_INCOMING_ARG): Delete.
* config/xtensa/xtensa.c (function_arg_advance): Rename to...
(xtensa_function_arg_advance): ...this. Make static. Take a const_tree
and a bool.
(function_arg): Rename to...
(xtensa_function_arg_1): ...this. Make static. Take a const_tree and
a bool.
(xtensa_function_arg, xtensa_function_incoming_arg): Nex functions.
(TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
(TARGET_FUNCTION_INCOMING_ARG): Define.
From-SVN: r163649
Eric Botcazou [Mon, 30 Aug 2010 15:59:45 +0000 (15:59 +0000)]
trans.c (call_to_gnu): Also force the return slot opt for the call to a function whose return type was...
* gcc-interface/trans.c (call_to_gnu): Also force the return slot opt
for the call to a function whose return type was unconstrained.
From-SVN: r163648
Richard Guenther [Mon, 30 Aug 2010 13:46:31 +0000 (13:46 +0000)]
re PR middle-end/21602 (builtin memmove could be memcpy if src and dst don't alias)
2010-08-30 Richard Guenther <rguenther@suse.de>
PR tree-optimization/21602
* builtins.c (fold_builtin_memory_op): Fold memmove to memcpy
using points-to information.
From-SVN: r163646
Uros Bizjak [Mon, 30 Aug 2010 13:40:36 +0000 (15:40 +0200)]
* Move compare peephole2 to a better place.
From-SVN: r163645
Olivier Hainque [Mon, 30 Aug 2010 13:26:10 +0000 (13:26 +0000)]
decl.c (FOREIGN_FORCE_REALIGN_STACK): New macro, replacement for FORCE_PREFERRED_STACK_BOUNDARY_IN_MAIN.
* gcc-interface/decl.c (FOREIGN_FORCE_REALIGN_STACK): New macro,
replacement for FORCE_PREFERRED_STACK_BOUNDARY_IN_MAIN.
(gnat_to_gnu_entity) <case ..., E_Procedure>: Use it.
From-SVN: r163641
H.J. Lu [Mon, 30 Aug 2010 13:10:59 +0000 (13:10 +0000)]
Replace | with || in TARGET_HAS_SINCOS.
2010-08-30 H.J. Lu <hongjiu.lu@intel.com>
* config/linux.h (TARGET_HAS_SINCOS): Replace | with ||.
From-SVN: r163640
Francois-Xavier Coudert [Mon, 30 Aug 2010 11:44:23 +0000 (11:44 +0000)]
* Make-lang.in: Add frontend-passes.o dependencies.
From-SVN: r163639
Richard Guenther [Mon, 30 Aug 2010 11:13:05 +0000 (11:13 +0000)]
re PR tree-optimization/45449 (-fcompare-debug failure with -O2 -fno-tree-pre -fno-tree-pta)
2010-08-30 Richard Guenther <rguenther@suse.de>
PR tree-optimization/45449
* tree-ssa-live.c (remove_unused_locals): Also remove address-taken
variables.
* gcc.dg/pr45449.c: New testcase.
From-SVN: r163638
Joseph Myers [Mon, 30 Aug 2010 10:30:57 +0000 (11:30 +0100)]
opts.h (CL_ERR_NEGATIVE): Define.
* opts.h (CL_ERR_NEGATIVE): Define.
* opts.c (unknown_option_callback): Don't postpone warnings for
options marked with CL_ERR_NEGATIVE.
* opts-common.c (decode_cmdline_option): Set CL_ERR_NEGATIVE error
for negative versions of CL_REJECT_NEGATIVE options.
testsuite:
* gcc.dg/opts-1.c: Expect errors, not warnings.
From-SVN: r163637
Uros Bizjak [Mon, 30 Aug 2010 07:28:27 +0000 (09:28 +0200)]
i386.md (zero_extendsidi2_1): Rename from zero_extendsidi2_32.
* config/i386/i386.md (zero_extendsidi2_1): Rename from
zero_extendsidi2_32.
(zero_extend<mode>di2): Macroize insn from zero_extend{qi,hi}di2
using SWI12 mode iterator.
(zero_extendhisi2_and): Merge insn pattern and corresponding spliter
to define_insn_and_split pattern.
(zero_extendqi<mode>2): Macroize expander from zero_extendqi{hi,si}2
using SWI24 mode iterator.
(*zero_extendqi<mode>2_and): Macroize insn from
*zero_extendqi{hi,si}2_and using SWI24 mode iterator.
(*zero_extendqi<mode>2_movzbl_and): Macroize insn from
*zero_extendqihi2_movzbw_and and *zero_extendqisi2_movzbl_and using
SWI24 mode iterator.
(*zero_extendqi<mode>2_movzbl): Ditto from
*zero_extendqi{hi,si}2_movzbl.
(extendsidi2_1): Rename from extendsidi2_32.
(extend<mode>di2): Macroize insn from extend{qi,hi}di2 using
SWI12 mode iterator.
From-SVN: r163636
GCC Administrator [Mon, 30 Aug 2010 00:16:57 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r163635
Janus Weil [Sun, 29 Aug 2010 21:29:38 +0000 (23:29 +0200)]
re PR fortran/42769 ([OOP] ICE in resolve_typebound_procedure)
2010-08-29 Janus Weil <janus@gcc.gnu.org>
PR fortran/42769
* resolve.c (resolve_structure_cons): For derived types, make sure the
type has been resolved.
(resolve_typebound_procedures): Make sure the vtab has been generated.
2010-08-29 Janus Weil <janus@gcc.gnu.org>
PR fortran/42769
* gfortran.dg/dynamic_dispatch_11.f03: New.
From-SVN: r163631
Eric Botcazou [Sun, 29 Aug 2010 19:57:07 +0000 (19:57 +0000)]
ia64.h (HARD_REGNO_NREGS): Return 1 for CCImode in general purpose registers.
* config/ia64/ia64.h (HARD_REGNO_NREGS): Return 1 for CCImode in
general purpose registers.
(HARD_REGNO_MODE_OK): Accept CCImode in general purpose registers.
* config/ia64/ia64.md (*movcci): Change to named pattern. Deal
with general purpose registers and memory operands. Add associated
CCImode post-reload splitter.
* config/ia64/div.md: Change BImode to CCImode throughout.
From-SVN: r163630
Jason Merrill [Sun, 29 Aug 2010 19:24:37 +0000 (15:24 -0400)]
re PR c++/44991 (default argument with '<' cause compilation error)
PR c++/44991
* parser.c (cp_parser_parameter_declaration): Pop parameter decls
after tentative parsing.
From-SVN: r163629
Paolo Carlini [Sun, 29 Aug 2010 17:39:00 +0000 (17:39 +0000)]
[multiple changes]
2010-08-29 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/23_containers/bitset/invalidation: Move...
* testsuite/23_containers/bitset/debug/invalidation: ... here.
* testsuite/23_containers/deque/invalidation: Move...
* testsuite/23_containers/deque/debug/invalidation: ... here.
* testsuite/23_containers/list/invalidation: Move...
* testsuite/23_containers/list/debug/invalidation: ... here.
* testsuite/23_containers/map/invalidation: Move...
* testsuite/23_containers/map/debug/invalidation: ... here.
* testsuite/23_containers/multimap/invalidation: Move...
* testsuite/23_containers/multimap/debug/invalidation: ... here.
* testsuite/23_containers/set/invalidation: Move...
* testsuite/23_containers/set/debug/invalidation: ... here.
* testsuite/23_containers/multiset/invalidation: Move...
* testsuite/23_containers/multiset/debug/invalidation: ... here.
* testsuite/23_containers/vector/invalidation: Move...
* testsuite/23_containers/vector/debug/invalidation: ... here.
2010-08-29 François Dumont <francois.cppdevs@free.fr>
* include/bits/stl_algobase.h (_Iter_base): Move...
* include/bits/stl_iterator_base_types.h: ...here.
* include/debug/functions.h (__check_valid_range, __check_string,
__check_sorted): Fix to not depend on _GLIBCXX_DEBUG; include
formatter.h and use formatting macros for a consistent debug result.
* include/debug/formatter.h (__check_singular): Declare; do not
include debug.h.
* include/debug/debug.h: Do not include formatter.h.
* include/debug/safe_iterator.h (_Safe_iterator::_Base_Iterator)
rename to iterator_type.
(__gnu_debug::__base): Add.
* include/debug/set.h: Use everywhere __gnu_debug::__base once
iterator range valided.
* include/debug/unordered_map: Likewise.
* include/debug/multiset.h: Likewise.
* include/debug/vector: Likewise.
* include/debug/unordered_set: Likewise.
* include/debug/deque: Likewise.
* include/debug/map.h: Likewise.
* include/debug/string: Likewise.
* include/debug/list: Likewise.
* include/debug/multimap.h: Likewise.
* testsuite/23_containers/util/debug/assign_neg.h: New test cases on
debug checks performed on container assign operation.
* testsuite/23_containers/util/debug/construct_neg.h: New test cases
on debug checks on constructors.
* testsuite/23_containers/util/debug/insert_neg.h: New test cases on
debug checks performed on container insert operations.
* testsuite/23_containers/unordered_map/debug/cont_traits.h,
debug_cont_traits.h, construct1_neg.cc, construct2_neg.cc,
construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc,
insert3_neg.cc, insert4_neg.cc: New.
* testsuite/23_containers/multimap/debug/cont_traits.h,
debug_cont_traits.h, construct1_neg.cc, construct2_neg.cc,
construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc,
insert3_neg.cc, insert4_neg.cc: Likewise.
* testsuite/23_containers/set/debug/cont_traits.h,
debug_cont_traits.h, construct1_neg.cc, construct2_neg.cc,
construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc,
insert3_neg.cc, insert4_neg.cc: Likewise.
* testsuite/23_containers/unordered_multimap/debug/cont_traits.h,
debug_cont_traits.h, construct1_neg.cc, construct2_neg.cc,
construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc,
insert3_neg.cc, insert4_neg.cc: Likewise.
* testsuite/23_containers/unordered_set/debug/cont_traits.h,
debug_cont_traits.h, construct1_neg.cc, construct2_neg.cc,
construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc,
insert3_neg.cc, insert4_neg.cc: Likewise.
* testsuite/23_containers/multiset/debug/cont_traits.h,
debug_cont_traits.h, construct1_neg.cc, construct2_neg.cc,
construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc,
insert3_neg.cc, insert4_neg.cc: Likewise.
* testsuite/23_containers/unordered_multiset/debug/cont_traits.h,
debug_cont_traits.h, construct1_neg.cc, construct2_neg.cc,
construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc,
insert3_neg.cc, insert4_neg.cc: Likewise.
* testsuite/23_containers/map/debug/cont_traits.h,
debug_cont_traits.h, construct1_neg.cc, construct2_neg.cc,
construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc,
insert3_neg.cc, insert4_neg.cc: Likewise.
* testsuite/23_containers/vector/debug/cont_traits.h,
debug_cont_traits.h, assign1_neg.cc, assign2_neg.cc, assign3_neg.cc,
assign4_neg.cc, construct1_neg.cc, construct2_neg.cc,
construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc,
insert3_neg.cc, insert4_neg.cc: Likewise.
* testsuite/23_containers/deque/debug/cont_traits.h,
debug_cont_traits.h, assign1_neg.cc, assign2_neg.cc, assign3_neg.cc,
assign4_neg.cc, construct1_neg.cc, construct2_neg.cc,
construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc,
insert3_neg.cc, insert4_neg.cc: Likewise.
* testsuite/23_containers/list/debug/cont_traits.h,
debug_cont_traits.h, assign1_neg.cc, assign2_neg.cc, assign3_neg.cc,
assign4_neg.cc, construct1_neg.cc, construct2_neg.cc,
construct3_neg.cc, construct4_neg.cc, insert1_neg.cc, insert2_neg.cc,
insert3_neg.cc, insert4_neg.cc: Likewise.
* testsuite/performance/23_containers/range_construct/
list_construct1.cc: New, validate performance impact of the patch
on the debug mode.
* testsuite/performance/23_containers/range_construct/
list_construct2.cc: Likewise.
* testsuite/performance/23_containers/range_construct/
vector_construct.cc: Likewise.
* testsuite/performance/23_containers/range_construct/
deque_construct.cc: Likewise.
From-SVN: r163628
Janus Weil [Sun, 29 Aug 2010 09:56:45 +0000 (11:56 +0200)]
re PR fortran/45439 ([OOP] SELECT TYPE bogus complaint about INTENT)
2010-08-29 Janus Weil <janus@gcc.gnu.org>
PR fortran/45439
* match.c (gfc_match_select_type): Give the associate-name the
FL_VARIABLE attribute.
2010-08-29 Janus Weil <janus@gcc.gnu.org>
PR fortran/45439
* gfortran.dg/select_type_16.f03: New.
From-SVN: r163626
GCC Administrator [Sun, 29 Aug 2010 00:17:32 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r163624
Francois-Xavier Coudert [Sat, 28 Aug 2010 22:10:52 +0000 (22:10 +0000)]
mtype.m4 (upcase, [...]): New macros.
* m4/mtype.m4 (upcase, hasmathfunc, mathfunc_macro): New macros.
* m4/fraction.m4: Use new macros to support quad-float types.
* m4/set_exponent.m4: Likewise.
* m4/spacing.m4: Likewise.
* m4/exponent.m4: Likewise.
* m4/nearest.m4: Likewise.
* m4/norm2.m4: Likewise.
* m4/bessel.m4: Likewise.
* m4/rrspacing.m4: Likewise.
* generated/bessel_r4.c:Regenerated.
* generated/bessel_r8.c: Regenerated.
* generated/bessel_r10.c: Regenerated.
* generated/bessel_r16.c: Regenerated.
* generated/exponent_r4.c: Regenerated.
* generated/exponent_r8.c: Regenerated.
* generated/exponent_r10.c: Regenerated.
* generated/exponent_r16.c: Regenerated.
* generated/fraction_r4.c: Regenerated.
* generated/fraction_r8.c: Regenerated.
* generated/fraction_r10.c: Regenerated.
* generated/fraction_r16.c: Regenerated.
* generated/nearest_r4.c: Regenerated.
* generated/nearest_r8.c: Regenerated.
* generated/nearest_r10.c: Regenerated.
* generated/nearest_r16.c: Regenerated.
* generated/norm2_r4.c: Regenerated.
* generated/norm2_r8.c: Regenerated.
* generated/norm2_r10.c: Regenerated.
* generated/norm2_r16.c: Regenerated.
* generated/rrspacing_r4.c: Regenerated.
* generated/rrspacing_r8.c: Regenerated.
* generated/rrspacing_r10.c: Regenerated.
* generated/rrspacing_r16.c: Regenerated.
* generated/set_exponent_r4.c: Regenerated.
* generated/set_exponent_r8.c: Regenerated.
* generated/set_exponent_r10.c: Regenerated.
* generated/set_exponent_r16.c: Regenerated.
* generated/spacing_r4.c: Regenerated.
* generated/spacing_r8.c: Regenerated.
* generated/spacing_r10.c: Regenerated.
* generated/spacing_r16.c: Regenerated.
From-SVN: r163620
Eric Botcazou [Sat, 28 Aug 2010 20:07:43 +0000 (20:07 +0000)]
* config/ia64/ia64.md (cstorebi4): Fix thinko.
From-SVN: r163618
Hariharan Sandanagobalane [Sat, 28 Aug 2010 16:40:27 +0000 (16:40 +0000)]
re PR target/45299 (Dwarf information is wrong with optimised code.)
* config/picochip/picochip.c (reorder_var_tracking_notes): This
function was dropping debug insns which caused PR45299.
From-SVN: r163617
Uros Bizjak [Sat, 28 Aug 2010 14:30:34 +0000 (16:30 +0200)]
sse.md (extsuffix): New code attribute.
* config/i386/sse.md (extsuffix): New code attribute.
(sse4_1_<code>v8qiv8hi2): Macroize insn from sse4_1_extendv8qiv8hi2
and sse4_1_zero_extendv8qiv8hi2 using any_extend code iterator.
(sse4_1_<code>v4qiv4si2): Ditto from sse4_1_extendv4qiv4si2
and sse4_1_zero_extendv4qiv4si2.
(sse4_1_<code>v2qiv2di2): Ditto from sse4_1_extendv2qiv2di2
and sse4_1_zero_extendv2qiv2di2.
(sse4_1_<code>v4hiv4si2): Ditto from sse4_1_extendv4hiv4si2
and sse4_1_zero_extendv4hiv4si2.
(sse4_1_<code>v2hiv2di2): Ditto from sse4_1_extendv2hiv2di2
and sse4_1_zero_extendv2hiv2di2.
(sse4_1_extendv2siv2di2): Ditto from sse4_1_extendv2siv2di2
and sse4_1_zero_extendv2siv2di2
(<s>mulv8hi3_highpart): Macroize expander from {u,s}mulv8hi3_highpart
using any_extend code iterator.
(*avx_<s>mulv8hi3_highpart): Macroize insn from
*avx_{u,s}mulv8hi3_highpart using any_extend code iterator.
(*<s>mulv8hi3_highpart): Ditto from *{u,s}mulv8hi3_highpart.
* config/i386/i386.c (ix86_expand_sse4_unpack): Update for renamed
gen_sse4_1_sign_extend* functions.
(struct builtin_description bdesc_args): Ditto.
From-SVN: r163616
Steven G. Kargl [Sat, 28 Aug 2010 14:27:34 +0000 (14:27 +0000)]
simplify.c (gfc_simplify_bessel_n2): Fix indention and argument type.
fortran/
2010-07-21 Steven G. Kargl <kargl@gcc.gnu.org>
* simplify.c (gfc_simplify_bessel_n2): Fix indention
and argument type.
testsuite/
2010-07-21 Steven G. Kargl <kargl@gcc.gnu.org>
Tobias Burnus <burnus@net-b.de>
* gfortran.dg/bessel_7.f90: Decrease required precision.
Co-Authored-By: Tobias Burnus <burnus@net-b.de>
From-SVN: r163615
Tobias Burnus [Sat, 28 Aug 2010 07:35:47 +0000 (09:35 +0200)]
mk-kinds-h.sh: Disable REAL(16) if REAL(10) is available.
2010-08-28 Tobias Burnus <burnus@net-b.de>
* mk-kinds-h.sh: Disable REAL(16) if REAL(10) is available.
From-SVN: r163612
Francois-Xavier Coudert [Sat, 28 Aug 2010 07:35:10 +0000 (07:35 +0000)]
re PR libfortran/45436 (Failed to bootstrap)
PR fortran/45436
* trans-types.c (gfc_init_kinds): Disable TFmode.
From-SVN: r163611
Xinliang David Li [Sat, 28 Aug 2010 05:54:54 +0000 (05:54 +0000)]
Fix PR45422
From-SVN: r163610
Nathan Froyd [Sat, 28 Aug 2010 01:23:19 +0000 (01:23 +0000)]
sh-protos.h (sh_function_arg): Delete.
* config/sh/sh-protos.h (sh_function_arg): Delete.
(sh_function_arg_advance): Delete.
* config/sh/sh.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
(PASS_IN_REG_P): Eliminate cast.
* config/sh/sh.c (sh_function_arg_advance): Make static. Take a
const_tree and a bool.
(sh_function_arg): Likewise.
(sh_output_mi_thunk): Call sh_function_arg_advance) and
sh_function_arg.
(TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
From-SVN: r163607
GCC Administrator [Sat, 28 Aug 2010 00:19:12 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r163606
Naveen H.S [Fri, 27 Aug 2010 23:29:41 +0000 (23:29 +0000)]
sh.c (push_regs): Emit movml for interrupt handler when possible.
* config/sh/sh.c (push_regs): Emit movml for interrupt handler
when possible.
(sh_expand_epilogue): Likewise.
* config/sh/sh.md (movml_push_banked): New insn.
(movml_pop_banked): Likewise.
* gcc.dg/attr-isr.c: Skip test for -m2a. Don't run on sh2a*-*-*.
Co-Authored-By: Kaz Kojima <kkojima@gcc.gnu.org>
From-SVN: r163602
Bernd Schmidt [Fri, 27 Aug 2010 22:11:50 +0000 (22:11 +0000)]
vfp.md (arm_movsi_vfp, [...]): Set attribute "insn".
* config/arm/vfp.md (arm_movsi_vfp, thumb2_movsi_vfp, movsf_vfp,
thumb2_movsf_vfp): Set attribute "insn".
* config/arm/arm.md (arm_ashrdi3_1bit, arm_lshrdi3_1bit, not_shiftsi,
not_shiftsi_compare0, not_shiftsi_compare0_scratch, arm_one_cmplsi2,
thumb1_one_cmplsi2, notsi_compare0, notsi_compare0_scratch,
arm_zero_extendsidi2, arm_extendsidi2, thumb1_movdi_insn,
arm_movsi_insn, movhi_insn_arch4, movhi_bytes, arm_movqi_insn,
thumb1_movqi_insn arm32_movhf, thumb1_movhf, arm_movsf_soft_insn,
thumb1_movsf_insn, thumb_movdf_insn, mov_scc, mov_negscc, mov_notscc,
movsicc_insn, movsfcc_soft_insn, and_scc, cond_move, if_move_not,
if_not_move, if_shift_move, if_move_shift, if_shift_shift,
if_not_arith, if_arith_not, cond_move_not): Likewise.
From-SVN: r163601
Bernd Schmidt [Fri, 27 Aug 2010 22:08:37 +0000 (22:08 +0000)]
genautomata.c (gen_regexp_repeat, [...]): Use the string found in vector element 0 rather than the original string when...
* genautomata.c (gen_regexp_repeat, gen_regexp_allof,
gen_regexp_oneof, gen_regexp_sequence): Use the string found
in vector element 0 rather than the original string when there's
only one element.
(gen_regexp): Remove extra semicolon.
From-SVN: r163600
Janus Weil [Fri, 27 Aug 2010 21:50:47 +0000 (23:50 +0200)]
re PR fortran/45432 (gfortran.dg/allocate_alloc_opt_9.f90: Segfault due to invalid FREE)
2010-08-27 Janus Weil <janus@gcc.gnu.org>
PR fortran/45432
* match.c (gfc_match_allocate): Avoid double free on error.
From-SVN: r163599
Michael Meissner [Fri, 27 Aug 2010 21:32:44 +0000 (21:32 +0000)]
Improve floating point conversions on powerpc
From-SVN: r163598
Francois-Xavier Coudert [Fri, 27 Aug 2010 21:24:13 +0000 (21:24 +0000)]
re PR fortran/32049 (Support on x86_64 also kind=16)
PR fortran/32049
* gfortran.h (gfc_real_info): Add c_float128 field.
* mathbuiltins.def: Indicate which builtins are const.
* trans-types.h (float128_type_node, complex_float128_type_node,
gfc_real16_is_float128): New variables.
* trans-types.c (float128_type_node, complex_float128_type_node,
gfc_real16_is_float128): New variables.
(gfc_init_kinds): Allow TFmode.
(gfc_build_real_type): Mark __float128 types as such.
(gfc_init_types): Initialize float128_type_node and
complex_float128_type_node
* f95-lang.c (gfc_init_builtin_functions): Adjust for new
argument of OTHER_BUILTIN macro.
* trans-intrinsic.c (gfc_intrinsic_map_t): Likewise.
(builtin_decl_for_precision): Special case for __float128.
(builtin_decl_for_float_kind): Likewise.
(define_quad_builtin): New function.
(gfc_build_intrinsic_lib_fndecls): Create all __float128
library decls if necessary. Store them in the real16_decl and
complex16_decl builtin map fields.
(gfc_get_intrinsic_lib_fndecl): Handle q-suffixed __float128
library function names.
* gfortran.dg/random_seed_1.f90: Adjust test.
* gfortran.dg/float128_1.f90: New test.
From-SVN: r163597
Basile Starynkevitch [Fri, 27 Aug 2010 20:32:27 +0000 (20:32 +0000)]
gengtype.c (output_type_enum): Test the right union member.
2010-08-27 Basile Starynkevitch <basile@starynkevitch.net>
Jeremie Salvucci <jeremie.salvucci@free.fr>
* gengtype.c (output_type_enum): Test the right union member.
Co-Authored-By: Jeremie Salvucci <jeremie.salvucci@free.fr>
From-SVN: r163596
Tobias Burnus [Fri, 27 Aug 2010 19:17:45 +0000 (21:17 +0200)]
re PR fortran/33197 (Fortran 2008: math functions)
gcc/fortran/
2010-08-27 Tobias Burnus <burnus@net-b.de>
PR fortran/33197
* gcc/fortran/intrinsic.c (add_functions): Add norm2 and parity.
* gcc/fortran/intrinsic.h (gfc_check_norm2, gfc_check_parity):
gfc_simplify_norm2, gfc_simplify_parity, gfc_resolve_norm2,
gfc_resolve_parity): New prototypes.
* gcc/fortran/gfortran.h (gfc_isym_id): New enum items
GFC_ISYM_NORM2 and GFC_ISYM_PARITY.
* gcc/fortran/iresolve.c (gfc_resolve_norm2,
gfc_resolve_parity): New functions.
* gcc/fortran/check.c (gfc_check_norm2, gfc_check_parity):
New functions.
* gcc/fortran/trans-intrinsic.c (gfc_conv_intrinsic_arith,
gfc_conv_intrinsic_function): Handle NORM2 and PARITY.
* gcc/fortran/intrinsic.texi (NORM2, PARITY): Add.
* gcc/fortran/simplify.c (simplify_transformation_to_array):
Add post-processing opterator.
(gfc_simplify_all, gfc_simplify_any, gfc_simplify_count,
gfc_simplify_product, gfc_simplify_sum): Update call.
(add_squared, do_sqrt, gfc_simplify_norm2, do_xor,
gfc_simplify_parity): New functions.
gcc/testsuite/
2010-08-27 Tobias Burnus <burnus@net-b.de>
PR fortran/33197
* gcc/testsuite/gfortran.dg/norm2_1.f90: New.
* gcc/testsuite/gfortran.dg/norm2_2.f90: New.
* gcc/testsuite/gfortran.dg/norm2_3.f90: New.
* gcc/testsuite/gfortran.dg/norm2_4.f90: New.
* gcc/testsuite/gfortran.dg/parity_1.f90: New.
* gcc/testsuite/gfortran.dg/parity_2.f90: New.
* gcc/testsuite/gfortran.dg/parity_3.f90: New.
libgfortran/
2010-08-27 Tobias Burnus <burnus@net-b.de>
PR fortran/33197
* libgfortran/m4/ifunction.m4 (FINISH_ARRAY_FUNCTION,
ARRAY_FUNCTION): Allow expression after loop.
* libgfortran/m4/norm2.m4: New for _gfortran_norm2_r{4,8,10,16}.
* libgfortran/m4/parity.m4: New for
* _gfortran_parity_l{1,2,4,8,16}.
* libgfortran/gfortran.map: Add new functions.
* libgfortran/Makefile.am: Ditto.
* libgfortran/m4/minloc1.m4: Add empty argument for
* ARRAY_FUNCTION.
* libgfortran/m4/maxloc1.m4: Ditto.
* libgfortran/m4/all.m4: Ditto.
* libgfortran/m4/minval.m4: Ditto.
* libgfortran/m4/maxval.m4: Ditto.
* libgfortran/m4/count.m4: Ditto.
* libgfortran/m4/product.m4: Ditto.
* libgfortran/m4/any.m4: Ditto.
* Makefile.in: Regenerated.
* generated/minval_r8.c: Regenerated.
* generated/maxloc1_4_r8.c: Regenerated.
* generated/minloc1_16_r16.c: Regenerated.
* generated/norm2_r4.c: Regenerated.
* generated/sum_i8.c: Regenerated.
* generated/parity_l2.c: Regenerated.
* generated/any_l16.c: Regenerated.
* generated/maxval_i2.c: Regenerated.
* generated/any_l2.c: Regenerated.
* generated/product_r4.c: Regenerated.
* generated/maxloc1_8_i4.c: Regenerated.
* generated/parity_l16.c: Regenerated.
* generated/all_l1.c: Regenerated.
* generated/product_i2.c: Regenerated.
* generated/minloc1_8_r16.c: Regenerated.
* generated/maxloc1_8_r16.c: Regenerated.
* generated/sum_r16.c: Regenerated.
* generated/sum_i1.c: Regenerated.
* generated/minloc1_4_r8.c: Regenerated.
* generated/maxloc1_16_r16.c: Regenerated.
* generated/minloc1_16_i4.c: Regenerated.
* generated/maxloc1_16_i4.c: Regenerated.
* generated/maxval_r16.c: Regenerated.
* generated/product_c10.c: Regenerated.
* generated/minloc1_8_i4.c: Regenerated.
* generated/all_l2.c: Regenerated.
* generated/product_c4.c: Regenerated.
* generated/sum_r4.c: Regenerated.
* generated/all_l16.c: Regenerated.
* generated/minloc1_16_r10.c: Regenerated.
* generated/sum_i2.c: Regenerated.
* generated/maxloc1_8_r8.c: Regenerated.
* generated/minval_i16.c: Regenerated.
* generated/parity_l4.c: Regenerated.
* generated/maxval_i4.c: Regenerated.
* generated/any_l4.c: Regenerated.
* generated/minval_i8.c: Regenerated.
* generated/maxloc1_4_i8.c: Regenerated.
* generated/minloc1_4_i16.c: Regenerated.
* generated/maxloc1_4_i16.c: Regenerated.
* generated/minloc1_8_r10.c: Regenerated.
* generated/product_i4.c: Regenerated.
* generated/maxloc1_8_r10.c: Regenerated.
* generated/sum_c16.c: Regenerated.
* generated/minloc1_16_r8.c: Regenerated.
* generated/maxloc1_16_r8.c: Regenerated.
* generated/count_4_l.c: Regenerated.
* generated/sum_r10.c: Regenerated.
* generated/count_8_l.c: Regenerated.
* generated/sum_c4.c: Regenerated.
* generated/maxloc1_16_r10.c: Regenerated.
* generated/minloc1_8_r8.c: Regenerated.
* generated/maxval_r10.c: Regenerated.
* generated/minval_i1.c: Regenerated.
* generated/maxloc1_4_i1.c: Regenerated.
* generated/minloc1_4_i8.c: Regenerated.
* generated/product_i16.c: Regenerated.
* generated/all_l4.c: Regenerated.
* generated/norm2_r16.c: Regenerated.
* generated/minval_r4.c: Regenerated.
* generated/maxloc1_4_r4.c: Regenerated.
* generated/sum_i4.c: Regenerated.
* generated/maxval_r8.c: Regenerated.
* generated/norm2_r8.c: Regenerated.
* generated/minloc1_4_i1.c: Regenerated.
* generated/minval_r16.c: Regenerated.
* generated/minval_i2.c: Regenerated.
* generated/maxloc1_4_i2.c: Regenerated.
* generated/product_r8.c: Regenerated.
* generated/maxloc1_8_i8.c: Regenerated.
* generated/sum_c10.c: Regenerated.
* generated/minloc1_4_r16.c: Regenerated.
* generated/maxloc1_4_r16.c: Regenerated.
* generated/count_1_l.c: Regenerated.
* generated/minloc1_4_r4.c: Regenerated.
* generated/minloc1_16_i8.c: Regenerated.
* generated/maxloc1_16_i8.c: Regenerated.
* generated/minloc1_4_i2.c: Regenerated.
* generated/maxloc1_8_i1.c: Regenerated.
* generated/minloc1_8_i8.c: Regenerated.
* generated/product_r16.c: Regenerated.
* generated/product_c8.c: Regenerated.
* generated/sum_r8.c: Regenerated.
* generated/norm2_r10.c: Regenerated.
* generated/minloc1_16_i16.c: Regenerated.
* generated/maxloc1_8_r4.c: Regenerated.
* generated/minloc1_16_i1.c: Regenerated.
* generated/maxloc1_16_i1.c: Regenerated.
* generated/minval_r10.c: Regenerated.
* generated/count_16_l.c: Regenerated.
* generated/parity_l8.c: Regenerated.
* generated/minloc1_8_i1.c: Regenerated.
* generated/minval_i4.c: Regenerated.
* generated/maxloc1_4_i4.c: Regenerated.
* generated/maxloc1_8_i2.c: Regenerated.
* generated/maxval_i8.c: Regenerated.
* generated/any_l8.c: Regenerated.
* generated/minloc1_4_r10.c: Regenerated.
* generated/minloc1_8_i16.c: Regenerated.
* generated/maxloc1_4_r10.c: Regenerated.
* generated/maxloc1_8_i16.c: Regenerated.
* generated/minloc1_16_r4.c: Regenerated.
* generated/maxloc1_16_r4.c: Regenerated.
* generated/product_i8.c: Regenerated.
* generated/sum_i16.c: Regenerated.
* generated/count_2_l.c: Regenerated.
* generated/maxloc1_16_i16.c: Regenerated.
* generated/minloc1_8_r4.c: Regenerated.
* generated/sum_c8.c: Regenerated.
* generated/minloc1_16_i2.c: Regenerated.
* generated/maxloc1_16_i2.c: Regenerated.
* generated/parity_l1.c: Regenerated.
* generated/maxval_i16.c: Regenerated.
* generated/maxval_i1.c: Regenerated.
* generated/minloc1_4_i4.c: Regenerated.
* generated/any_l1.c: Regenerated.
* generated/minloc1_8_i2.c: Regenerated.
* generated/product_c16.c: Regenerated.
* generated/product_r10.c: Regenerated.
* generated/product_i1.c: Regenerated.
* generated/all_l8.c: Regenerated.
* generated/maxval_r4.c: Regenerated.
From-SVN: r163595
Janus Weil [Fri, 27 Aug 2010 19:02:15 +0000 (21:02 +0200)]
re PR fortran/45420 ([OOP] polymorphic TBP call in a CLASS DEFAULT clause)
2010-08-27 Janus Weil <janus@gcc.gnu.org>
PR fortran/45420
* match.c (select_type_set_tmp): Add the possibility to reset the
temporary to NULL.
(gfc_match_class_is): Reset the temporary in CLASS DEFAULT clauses.
2010-08-27 Janus Weil <janus@gcc.gnu.org>
PR fortran/45420
* gfortran.dg/select_type_15.f03: New.
From-SVN: r163594
Benjamin Kosnik [Fri, 27 Aug 2010 18:16:05 +0000 (18:16 +0000)]
stl_iterator_base_types.h: Fix doxygen warning.
2010-08-26 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/stl_iterator_base_types.h: Fix doxygen warning.
From-SVN: r163592
Uros Bizjak [Fri, 27 Aug 2010 16:53:51 +0000 (18:53 +0200)]
re PR target/41484 (Please add memory forms of pmovzx* (SSE4.1))
PR target/41484
* config/i386/sse.md (sse4_1_extendv8qiv8hi2): Also accept memory
operands for operand 1.
(sse4_1_extendv4qiv4si2): Ditto.
(sse4_1_extendv2qiv2di2): Ditto.
(sse4_1_extendv4hiv4si2): Ditto.
(sse4_1_extendv2hiv2di2): Ditto.
(sse4_1_extendv2siv2di2): Ditto.
(sse4_1_zero_extendv8qiv8hi2): Ditto.
(sse4_1_zero_extendv4qiv4si2): Ditto.
(sse4_1_zero_extendv2qiv2di2): Ditto.
(sse4_1_zero_extendv4hiv4si2): Ditto.
(sse4_1_zero_extendv2hiv2di2): Ditto.
(sse4_1_zero_extendv2siv2di2): Ditto.
(*sse4_1_extendv8qiv8hi2): Remove insn pattern.
(*sse4_1_extendv4qiv4si2): Ditto.
(*sse4_1_extendv2qiv2di2): Ditto.
(*sse4_1_extendv4hiv4si2): Ditto.
(*sse4_1_extendv2hiv2di2): Ditto.
(*sse4_1_extendv2siv2di2): Ditto.
(*sse4_1_zero_extendv8qiv8hi2): Ditto.
(*sse4_1_zero_extendv4qiv4si2): Ditto.
(*sse4_1_zero_extendv2qiv2di2): Ditto.
(*sse4_1_zero_extendv4hiv4si2): Ditto.
(*sse4_1_zero_extendv2hiv2di2): Ditto.
(*sse4_1_zero_extendv2siv2di2): Ditto.
From-SVN: r163591
Eric Botcazou [Fri, 27 Aug 2010 16:23:07 +0000 (16:23 +0000)]
Fix long lines
From-SVN: r163590
Jerry DeLisle [Fri, 27 Aug 2010 15:00:11 +0000 (15:00 +0000)]
re PR fortran/43217 (Output of Hollerith constants which are not a multiple of 4 bytes)
2010-08-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/43217
* gfortran.dg/hollerith8.f90: New test.
From-SVN: r163588
Nathan Froyd [Fri, 27 Aug 2010 14:48:16 +0000 (14:48 +0000)]
mips-protos.h (mips_function_arg_advance): Delete
* config/mips/mips-protos.h (mips_function_arg_advance): Delete
(mips_function_arg): Delete.
(mips_function_arg_boundary): Take a const_tree.
* config/mips/mips.c (mips_function_arg_boundary): Likewise.
(mips_arg_info): Likewise.
(mips_setup_incoming_varargs): Call mips_function_arg_advance
instead of FUNCTION_ARG_ADVANCE.
(mips_function_arg_advance): Adjust prototype. Make static.
(mips_function_arg): Likewise.
(TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
* config/mips/mips.h (FUNCTION_ARG_ADVANCE, FUNCTION_ARG): Delete.
From-SVN: r163587
Nathan Froyd [Fri, 27 Aug 2010 14:46:22 +0000 (14:46 +0000)]
rs6000.h (FUNCTION_ARG, [...]): Delete.
* config/rs6000/rs6000.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete.
* config/rs6000/rs6000-protos.h (function_arg_advance): Delete.
(function_arg): Delete.
(function_arg_boundary): Take a const_tree.
* config/rs6000/rs6000.c (function_arg_boundary): Likewise.
(rs6000_spe_function_arg): Likewise.
(rs6000_parm_start): Likewise.
(rs6000_arg_size): Likewise.
(rs6000_darwin64_record_arg_advance_recurse): Likewise.
(rs6000_darwin64_record_arg): Likewise. Take a bool instead of
an int.
(rs6000_mixed_function_arg): Likewise.
(function_arg): Rename to...
(rs6000_function_arg): ...this.
(function_arg_advance): Rename to...
(rs6000_function_arg_advance_1): ...this
(rs6000_function_arg_advance): New function. Call it.
(setup_incoming_varargs): Call rs6000_function_arg_advance_1.
(rs6000_return_in_memory): Adjust call to rs6000_darwin64_record_arg.
(rs6000_function_value): Likewise.
(TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define.
From-SVN: r163586
Ramana Radhakrishnan [Fri, 27 Aug 2010 14:22:41 +0000 (14:22 +0000)]
arm.md (enabled): Test the value of arch_enabled rather than just using it.
2010-08-27 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
* config/arm/arm.md (enabled): Test the value of arch_enabled
rather than just using it.
From-SVN: r163585
Thomas Koenig [Fri, 27 Aug 2010 12:08:47 +0000 (12:08 +0000)]
re PR fortran/45159 (Unnecessary temporaries)
2010-08-27 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/45159
* dependency.c (check_section_vs_section): Single test for
identical strides which takes into account that only one
of the strides may be NULL.
2010-08-27 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/45159
* gfortran.dg/dependency_33.f90: New test.
From-SVN: r163584
Richard Guenther [Fri, 27 Aug 2010 11:39:45 +0000 (11:39 +0000)]
scop-1.c: Fix out-of-bound array accesses.
2010-08-27 Richard Guenther <rguenther@suse.de>
* gcc.dg/graphite/scop-1.c: Fix out-of-bound array accesses.
* gcc.dg/graphite/scop-2.c: Likewise.
* gcc.dg/graphite/scop-20.c: Likewise.
* gcc.dg/vect/slp-25.c: Likewise.
From-SVN: r163583
Olivier Hainque [Fri, 27 Aug 2010 10:48:32 +0000 (10:48 +0000)]
dse.c (group_info.base_mem, [...]): Use BLKmode to cover all the possible offsets from this base.
* dse.c (group_info.base_mem, get_group_info): Use BLKmode to
cover all the possible offsets from this base.
(scan_reads_nospill): Pass base_mem's mode to canon_true_dependence.
testsuite/
* gnat.dg/dse_step.ads, dse_step.adb, test_dse_step.adb: New test.
Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com>
From-SVN: r163582
Jerry DeLisle [Fri, 27 Aug 2010 06:50:03 +0000 (06:50 +0000)]
re PR fortran/43217 (Output of Hollerith constants which are not a multiple of 4 bytes)
2010-08-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/43217
* primary.c (match_hollerith_constant): Calculate padding needed to
fill default integer and allocate string for that size. Set pad bytes
to ' '.
* gfortran.h: Add hollerith pad value to type spec union.
* data.c (create_character_initializer): Fix spelling of function name.
Use hollerith pad value to calculate length.
* arith.c (hollerith2representation); Use hollerith pad value to
calculate length.
From-SVN: r163581
Dmitrijs Ledkovs [Fri, 27 Aug 2010 04:27:40 +0000 (04:27 +0000)]
Fix building ecjx in cross compile mode.
libjava/:
PR libgcj/40868
* configure.ac: Add GCC_FOR_ECJX variable. Ensure
GCJ_FOR_ECJX is always set.
* Makefile.am [!NATIVE] (ecjx.$(OBJEXT)): New rule.
* Makefile.in: Regenerate.
* configure: Regenerate.
* gcj/Makefile.in: Regenerate.
* include/Makefile.in: Regenerate.
* testsuite/Makefile.in: Regenerate.
Co-Authored-By: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
From-SVN: r163580
GCC Administrator [Fri, 27 Aug 2010 00:17:31 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r163579
Daniel Kraft [Thu, 26 Aug 2010 19:48:43 +0000 (21:48 +0200)]
re PR fortran/38936 ([F03] ASSOCIATE construct / improved SELECT TYPE (a=>expr))
2010-08-26 Daniel Kraft <d@domob.eu>
PR fortran/38936
PR fortran/44047
PR fortran/45384
* gfortran.h (struct gfc_association_list): New flag `dangling'.
(gfc_build_block_ns): Declared here...
* parse.h (gfc_build_block_ns): ...instead of here.
* trans.h (gfc_process_block_locals): Expect additionally the
gfc_association_list of BLOCK (if present).
* match.c (select_type_set_tmp): Create sym->assoc for temporary.
* resolve.c (resolve_variable): Only check for invalid *array*
references on associate-names.
(resolve_assoc_var): New method with code previously in resolve_symbol.
(resolve_select_type): Use association to give the selector and
temporaries their values instead of ordinary assignment.
(resolve_fl_var_and_proc): Allow CLASS associate-names.
(resolve_symbol): Use new `resolve_assoc_var' instead of inlining here.
* trans-stmt.c (gfc_trans_block_construct): Pass association-list
to `gfc_process_block_locals' to match new interface.
* trans-decl.c (gfc_get_symbol_decl): Don't defer associate-names
here automatically.
(gfc_process_block_locals): Defer them rather here when linked to
from the BLOCK's association list.
2010-08-26 Daniel Kraft <d@domob.eu>
PR fortran/38936
PR fortran/44047
PR fortran/45384
* gfortran.dg/associate_8.f03: New test.
* gfortran.dg/select_type_13.f03: New test.
* gfortran.dg/select_type_14.f03: New test.
From-SVN: r163572
Rainer Orth [Thu, 26 Aug 2010 17:58:31 +0000 (17:58 +0000)]
* system.h [HAVE_INTTYPES_H]: Include inttypes.h.
From-SVN: r163569
Jakub Jelinek [Thu, 26 Aug 2010 16:39:26 +0000 (18:39 +0200)]
re PR tree-optimization/44485 (ICE in get_expr_operands, at tree-ssa-operands.c:1020)
PR tree-optimization/44485
* calls.c (flags_from_decl_or_type): For const or pure
noreturn functions return ECF_LOOPING_CONST_OR_PURE|ECF_NORETURN
together with ECF_CONST resp. ECF_PURE.
* builtins.c (expand_builtin): Use flags_from_decl_or_type
instead of querying flags directly.
* tree-ssa-loop-niter.c (finite_loop_p): Likewise.
* tree-ssa-dce.c (find_obviously_necessary_stmts): Likewise.
* gcc.dg/pr44485.c: New test.
From-SVN: r163568
Rainer Orth [Thu, 26 Aug 2010 15:52:41 +0000 (15:52 +0000)]
thr-init-2.c: Use dg-add-options tls.
* gcc.dg/tls/thr-init-2.c: Use dg-add-options tls.
* gcc.dg/torture/tls/thr-init-1.c: Likewise.
* gcc.dg/torture/tls/thr-init-2.c: Likewise.
From-SVN: r163567
Rainer Orth [Thu, 26 Aug 2010 15:29:31 +0000 (15:29 +0000)]
fpu-387.h (has_sse): Remove cw_sse, unused.
* config/fpu-387.h (has_sse): Remove cw_sse, unused.
Use fixed-length asm.
From-SVN: r163566
Richard Guenther [Thu, 26 Aug 2010 14:20:45 +0000 (14:20 +0000)]
re PR tree-optimization/45255 (internal compiler error: verify_stmts failed with -fwhopr)
2010-08-26 Richard Guenther <rguenther@suse.de>
PR tree-optimization/45255
* tree.c (decl_address_invariant_p): DECL_DLLIMPORT_P
statics and externals are also invariant.
From-SVN: r163565
Richard Guenther [Thu, 26 Aug 2010 13:10:15 +0000 (13:10 +0000)]
scop-0.c: Fix out-of-bound array accesses.
2010-08-26 Richard Guenther <rguenther@suse.de>
* gcc.dg/graphite/scop-0.c: Fix out-of-bound array accesses.
* gcc.dg/graphite/scop-21.c: Likewise.
From-SVN: r163564
Richard Guenther [Thu, 26 Aug 2010 11:13:58 +0000 (11:13 +0000)]
vect-64.c: Fix out-of-bound array accesses.
2010-08-26 Richard Guenther <rguenther@suse.de>
* gcc.dg/vect/vect-64.c: Fix out-of-bound array accesses.
* gcc.dg/vect/fast-math-slp-27.c: Likewise.
* gcc.dg/vect/no-section-anchors-vect-64.c: Likewise.
* gcc.dg/vect/vect-91.c: Likewise.
* gcc.dg/vect/vect-peel-1.c: Likewise.
* gcc.dg/vect/vect-peel-2.c: Likewise.
* gcc.dg/vect/vect-peel-4.c: Likewise.
From-SVN: r163563
Jerry DeLisle [Thu, 26 Aug 2010 02:12:49 +0000 (02:12 +0000)]
re PR fortran/41859 (ICE on invalid expression involving DT with pointer components in I/O)
2010-08-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/41859
* gfortran.dg/der_io_4.f90: New test.
From-SVN: r163561
GCC Administrator [Thu, 26 Aug 2010 00:16:50 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r163560
Jakub Jelinek [Wed, 25 Aug 2010 17:50:59 +0000 (19:50 +0200)]
re PR rtl-optimization/44858 (likely integer wrong code bug)
PR rtl-optimization/44858
* combine.c (try_combine): If recog_for_combine added CLOBBERs to
newi2pat, make sure they don't affect newpat.
* gcc.c-torture/execute/pr44858.c: New test.
From-SVN: r163552
Jakub Jelinek [Wed, 25 Aug 2010 17:49:26 +0000 (19:49 +0200)]
re PR rtl-optimization/45400 (XBMC AudioEngine Compilation C++ Internal Compiler Error /w Optimization)
PR rtl-optimization/45400
* combine.c (simplify_shift_const_1) <case SUBREG>: Only use
SUBREG_REG if both modes are of MODE_INT class.
* g++.dg/other/i386-8.C: New test.
From-SVN: r163551
Julian Brown [Wed, 25 Aug 2010 15:35:24 +0000 (15:35 +0000)]
arm.c (arm_issue_rate): Return 2 for Cortex-A5.
* config/arm/arm.c (arm_issue_rate): Return 2 for Cortex-A5.
* config/arm/arm.md (generic_sched): No for Cortex-A5.
(generic_vfp): Likewise.
(cortex-a5.md): Include.
* config/arm/cortex-a5.md: New.
From-SVN: r163550
Richard Guenther [Wed, 25 Aug 2010 14:46:40 +0000 (14:46 +0000)]
alias.c (get_alias_set): Assign a single alias-set to all pointers.
2010-08-25 Richard Guenther <rguenther@suse.de>
* alias.c (get_alias_set): Assign a single alias-set to
all pointers.
* gimple.c (gimple_get_alias_set): Remove special handling
for pointers.
c-family/
* c-common.c (c_common_get_alias_set): Remove special
handling for pointers.
* gcc.dg/alias-8.c: Adjust.
From-SVN: r163549
Jakub Jelinek [Wed, 25 Aug 2010 14:44:46 +0000 (16:44 +0200)]
trans-decl.c (gfc_build_intrinsic_function_decls): Set TREE_NOTHROW on fndecls that can't throw.
* trans-decl.c (gfc_build_intrinsic_function_decls): Set
TREE_NOTHROW on fndecls that can't throw. Set
TREE_READONLY on gfor_fndecl_math_ishftc{4,8,16}.
(gfc_build_builtin_function_decls): Set TREE_NOTHROW on
gfor_fndecl_associated.
From-SVN: r163548
Bernd Schmidt [Wed, 25 Aug 2010 14:14:59 +0000 (14:14 +0000)]
combine.c (find_split_point): Undo canonicalization of multiply-add to (minus x (mult)) when...
* combine.c (find_split_point): Undo canonicalization of multiply-add
to (minus x (mult)) when it seems likely that this will increase the
chances of a split.
* gcc.target/i386/combine-mul.c: New test.
From-SVN: r163547
Bernd Schmidt [Wed, 25 Aug 2010 14:08:23 +0000 (14:08 +0000)]
re PR middle-end/45355 (FAIL: gcc.c-torture/compile/pr43164.c)
PR middle-end/45355
* combine.c (try_combine): Use reg_overlap_mentioned_p rather than
dead_or_set_p when computing i0_feeds_i2_n.
From-SVN: r163546
Richard Guenther [Wed, 25 Aug 2010 14:05:28 +0000 (14:05 +0000)]
re PR tree-optimization/44562 (ICE: in get_alias_set, at alias.c:716 with -flto -fstrict-aliasing -fgraphite-identity)
2010-08-25 Richard Guenther <rguenther@suse.de>
PR lto/44562
* lto-streamer.c (lto_record_common_node): Do not mess with
TYPE_CANONICAL when not in lto.
* gimple.c (gimple_register_type): Likewise.
* gcc.dg/graphite/id-27.c: New testcase.
* gcc.dg/lto/
20100825-1_0.c: Likewise.
From-SVN: r163545
Richard Guenther [Wed, 25 Aug 2010 12:53:30 +0000 (12:53 +0000)]
re PR middle-end/45316 (ICE: verify_flow_info failed: BB 3 can not throw but has an EH edge with -O1 -ftree-pre -fnon-call-exceptions)
2010-08-25 Richard Guenther <rguenther@suse.de>
PR tree-optimization/45316
* tree-ssa-pre.c (eliminate): Properly clean EH info.
* g++.dg/opt/pr45316.C: New testcase.
From-SVN: r163543
Richard Guenther [Wed, 25 Aug 2010 10:47:50 +0000 (10:47 +0000)]
re PR middle-end/45393 (ICE in redirect_eh_edge_1, at tree-eh.c:2135)
2010-08-25 Richard Guenther <rguenther@suse.de>
PR tree-optimization/45393
* tree-ssa-math-opts.c (execute_cse_sincos_1): Properly transfer
and clean EH info. Avoid SSA update.
(execute_cse_sincos): Cleanup the CFG if it has changed.
* g++.dg/torture/pr45393.C: New testcase.
From-SVN: r163541
Richard Guenther [Wed, 25 Aug 2010 10:03:19 +0000 (10:03 +0000)]
re PR middle-end/45379 (~10% slowdown on test_fpu at revision 163278)
2010-08-25 Richard Guenther <rguenther@suse.de>
PR middle-end/45379
* emit-rtl.c (set_mem_attributes_minus_bitpos): Handle
TARGET_MEM_REF in alignment computation.
From-SVN: r163540
Jakub Jelinek [Wed, 25 Aug 2010 09:36:35 +0000 (11:36 +0200)]
re PR tree-optimization/45059 (error: invalid operands in binary operation, leads to ICE: verify_stmts failed)
PR tree-optimization/45059
* tree-ssa-reassoc.c (eliminate_redundant_comparison): Strip useless
type conversions from newop{1,2}. Assert t is a comparison and
newop{1,2} after the stripping are gimple vals.
* gcc.c-torture/compile/pr45059.c: New test.
From-SVN: r163539
Tejas Belagod [Wed, 25 Aug 2010 07:23:26 +0000 (08:23 +0100)]
vmull / vmovl support for Neon.
For Tejas Belagod
2010-08-25 Tejas Belagod <tejas.belagod@arm.com>
* lib/target-supports.exp (check_effective_target_vect_unpack):
Set vect_unpack supported flag to true for neon.
* config/arm/iterators.md (VU, SE, V_widen_l): New.
(V_unpack, US): New.
* config/arm/neon.md (vec_unpack<US>_hi_<mode>): Expansion for
vmovl.
(vec_unpack<US>_lo_<mode>): Likewise.
(neon_vec_unpack<US>_hi_<mode>): Instruction pattern for vmovl.
(neon_vec_unpack<US>_lo_<mode>): Likewise.
(vec_widen_<US>mult_lo_<mode>): Expansion for vmull.
(vec_widen_<US>mult_hi_<mode>): Likewise.
(neon_vec_<US>mult_lo_<mode>"): Instruction pattern for vmull.
(neon_vec_<US>mult_hi_<mode>"): Likewise.
(neon_unpack<US>_<mode>): Widening move intermediate step for
vectorizing without -mvectorize-with-neon-quad.
(neon_vec_<US>mult_<mode>): Widening multiply intermediate step
for vectorizing without -mvectorize-with-neon-quad.
* config/arm/predicates.md (vect_par_constant_high): Check for
high-half lanes of a vector.
(vect_par_constant_low): Check for low-half lanes of a vector.
From-SVN: r163538
GCC Administrator [Wed, 25 Aug 2010 00:17:23 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r163536
Sebastian Pop [Tue, 24 Aug 2010 23:36:04 +0000 (23:36 +0000)]
Speed-up ifcvt_memrefs_wont_trap caching previous results.
This patch speeds up the ifcvt_memrefs_wont_trap computation by
caching the results of the computations in the data references ->aux
fields.
* tree-if-conv.c (struct ifc_dr): New.
(IFC_DR): New.
(DR_WRITTEN_AT_LEAST_ONCE): New.
(DR_RW_UNCONDITIONALLY): New.
(memref_read_or_written_unconditionally): Use the cached values
when possible.
(write_memref_written_at_least_once): Same.
(if_convertible_loop_p): Initialize and free DR->aux fields.
From-SVN: r163532
Sebastian Pop [Tue, 24 Aug 2010 23:35:56 +0000 (23:35 +0000)]
Do not check whether memory references accessed in every iteration trap.
This patch relaxes the checks from gimple_could_trap_p in order to
allow the flag_loop_if_convert_stores to if-convert more loops
in which it is possible to prove that:
- the accesses to an array in a loop do not trap (more than the
original non-if-converted loop). This is true when the memory
accesses are executed at every iteration of the if-converted loop.
- the writes to memory occur on arrays that are not const qualified.
This is true when there exists at least one unconditional write to
the array in the analyzed program. In this patch this analysis is
limited to the loop to be if-converted.
* gimple.c (gimple_could_trap_p_1): Not static anymore.
Pass an extra bool parameter include_mem.
(gimple_could_trap_p): Adjust call to gimple_could_trap_p_1.
(gimple_assign_rhs_could_trap_p): Same.
* gimple.h (gimple_could_trap_p_1): Declared.
* tree-data-ref.h (same_data_refs_base_objects): New.
(same_data_refs): New.
* tree-if-conv.c (memrefs_read_or_written_unconditionally): New.
(write_memrefs_written_at_least_once): New.
(ifcvt_memrefs_wont_trap): New.
(operations_could_trap): New.
(ifcvt_could_trap_p): New.
(if_convertible_gimple_assign_stmt_p): Call ifcvt_could_trap_p.
Gets a vector of data refs.
(if_convertible_stmt_p): Same.
(if_convertible_loop_p_1): New.
(if_convertible_loop_p): Call if_convertible_loop_p_1.
* gcc.dg/tree-ssa/ifc-5.c: New.
From-SVN: r163531
Sebastian Pop [Tue, 24 Aug 2010 23:35:48 +0000 (23:35 +0000)]
Add flag -ftree-loop-if-convert-stores.
This patch adds a flag that controls the replacement of the memory
writes that are in predicated basic blocks with a full write:
for (...)
if (cond)
A[i] = foo
is replaced with:
for (...)
A[i] = cond ? foo : A[i]
In order to do this, we have to call gimple_could_trap_p instead of
gimple_assign_rhs_could_trap_p, as we have to also check that the LHS
of assign stmts does not trap.
* common.opt (ftree-loop-if-convert-stores): New flag.
* doc/invoke.texi (ftree-loop-if-convert-stores): Documented.
* tree-if-conv.c (ifc_temp_var): Pass an extra parameter GSI. Insert
the created statement before GSI.
(if_convertible_phi_p): Allow virtual phi nodes when
flag_loop_if_convert_stores is set.
(if_convertible_gimple_assign_stmt_p): Allow memory reads and writes
Do not handle types that do not match is_gimple_reg_type.
Remove loop and bb parameters. Call gimple_could_trap_p instead of
when flag_loop_if_convert_stores is set, as LHS can contain
memory refs.
(if_convertible_stmt_p): Remove loop and bb parameters. Update calls
to if_convertible_gimple_assign_stmt_p.
(if_convertible_loop_p): Update call to if_convertible_stmt_p.
(replace_phi_with_cond_gimple_assign_stmt): Renamed
predicate_scalar_phi. Do not handle virtual phi nodes.
(ifconvert_phi_nodes): Renamed predicate_all_scalar_phis.
Call predicate_scalar_phi.
(insert_gimplified_predicates): Insert the gimplified predicate of a BB
just after the labels for flag_loop_if_convert_stores, otherwise
insert the predicate in the end of the BB.
(predicate_mem_writes): New.
(combine_blocks): Call predicate_all_scalar_phis. When
flag_loop_if_convert_stores is set, call predicate_mem_writes.
(tree_if_conversion): Call mark_sym_for_renaming when
flag_loop_if_convert_stores is set.
(main_tree_if_conversion): Return TODO_update_ssa_only_virtuals when
flag_loop_if_convert_stores is set.
* gcc.dg/tree-ssa/ifc-4.c: New.
* gcc.dg/tree-ssa/ifc-7.c: New.
From-SVN: r163530
Danny Smith [Tue, 24 Aug 2010 22:41:34 +0000 (22:41 +0000)]
MAINTAINERS (OS Port Maintainers): Remove myself from windows ports
* MAINTAINERS (OS Port Maintainers): Remove myself from windows
ports
From-SVN: r163529
Richard Henderson [Tue, 24 Aug 2010 21:08:05 +0000 (14:08 -0700)]
re PR bootstrap/45376 (no such instruction: `pcmpestri $0,(%rdi),%xmm0')
PR bootstrap/45376
* configure.ac (HAVE_SSE4): New check.
* configure, config.in: Rebuild.
* lex.c (search_line_sse42): Omit if !HAVE_SSE4.
From-SVN: r163528
Anatoly Sokolov [Tue, 24 Aug 2010 18:52:08 +0000 (22:52 +0400)]
pa.c (hppa_register_move_cost, [...]): New.
* config/pa/pa.c (hppa_register_move_cost, pa_libcall_value,
pa_function_value_regno_p, pa_print_operand_punct_valid_p): New.
(pa_function_value): Make static.
(override_options): Rename to...
(pa_option_override): ...this. Make static.
(TARGET_PRINT_OPERAND_PUNCT_VALID_P, TARGET_REGISTER_MOVE_COST,
TARGET_LIBCALL_VALUE, TARGET_FUNCTION_VALUE_REGNO_P,
TARGET_OPTION_OVERRIDE): Define.
* config/pa/pa.h (OVERRIDE_OPTIONS, FUNCTION_VALUE_REGNO_P,
LIBCALL_VALUE, REGISTER_MOVE_COST, PRINT_OPERAND_PUNCT_VALID_P):
Remove.
* config/pa/pa-protos.h (override_options): Remove.
From-SVN: r163525
Rainer Orth [Tue, 24 Aug 2010 17:23:35 +0000 (17:23 +0000)]
lex.c: Disable init_vectorized_lexer etc.
* lex.c [__sun__ && __svr4__]: Disable init_vectorized_lexer
etc. on Solaris 2/x86.
From-SVN: r163522
Richard Guenther [Tue, 24 Aug 2010 13:25:25 +0000 (13:25 +0000)]
re PR middle-end/45379 (~10% slowdown on test_fpu at revision 163278)
2010-08-24 Richard Guenther <rguenther@suse.de>
PR middle-end/45379
* tree-ssa-address.c (create_mem_ref_raw): Drop to MEM_REF
if addr->index is NULL or zero.
* tree-ssa-alias.c (indirect_refs_may_alias_p): Handle
TARGET_MEM_REF more properly.
(indirect_ref_may_alias_decl_p): Likewise.
* emit-rtl.c (set_mem_attributes_minus_bitpos): Keep TARGET_MEM_REFs.
* alias.c (ao_ref_from_mem): Handle TARGET_MEM_REF more
properly.
From-SVN: r163519
Mingjie Xing [Tue, 24 Aug 2010 03:22:07 +0000 (03:22 +0000)]
check loongson targets in vect.exp
From-SVN: r163495
GCC Administrator [Tue, 24 Aug 2010 00:17:23 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r163494
Anatoly Sokolov [Mon, 23 Aug 2010 19:34:15 +0000 (23:34 +0400)]
m32c.c (m32c_function_value_regno_p): Make static.
* config/m32c/m32c.c (m32c_function_value_regno_p): Make static.
(m32c_override_options): Rename to...
(m32c_option_override): ...this. Make static.
(TARGET_FUNCTION_VALUE_REGNO_P, TARGET_OPTION_OVERRIDE): Define.
* config/m32c/m32c.h (OVERRIDE_OPTIONS, FUNCTION_VALUE_REGNO_P):
Remove.
* config/m32c/m32c-protos.h (m32c_override_options,
m32c_function_value_regno_p): Remove.
From-SVN: r163488