Wei Guozhi [Fri, 8 Apr 2011 09:17:42 +0000 (09:17 +0000)]
arm-protos.h (arm_attr_length_push_multi): New prototype.
* config/arm/arm-protos.h (arm_attr_length_push_multi): New prototype.
* config/arm/arm.c (arm_attr_length_push_multi): New function.
* config/arm/arm.md (*push_multi): Change the length computation to
call a C function.
From-SVN: r172169
Anatoly Sokolov [Fri, 8 Apr 2011 06:44:09 +0000 (10:44 +0400)]
tm.texi.in (ASM_OUTPUT_BSS): Remove documentation.
* doc/tm.texi.in (ASM_OUTPUT_BSS): Remove documentation.
(BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_BSS): Update documentation.
* doc/tm.texi: Regenerate.
* system.h (ASM_OUTPUT_BSS): Poison.
* varasm.c (asm_output_bss): Remove function.
(emit_bss, init_varasm_once): Don't use ASM_OUTPUT_BSS macro.
* config/frv/frv.h (BSS_SECTION_ASM_OP): Remove comment.
* config/frv/fr30.h (BSS_SECTION_ASM_OP): Likewise.
* config/i386/djgpp.h (BSS_SECTION_ASM_OP): Likewise.
* config/i386/i386elf.h (BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_BSS):
Likewise.
* config/sh/sh.h (BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_BSS):
Likewise.
* config/m68k/m68kelf.h (BSS_SECTION_ASM_OP, ASM_OUTPUT_ALIGNED_BSS):
Likewise.
* config/m68k/netbsd-elf.h (ASM_OUTPUT_ALIGNED_BSS): Likewise.
From-SVN: r172166
Jason Merrill [Fri, 8 Apr 2011 06:08:31 +0000 (02:08 -0400)]
re PR c++/48500 (Regression: Failing to convert template argument to concrete type, in C++0x mode.)
PR c++/48500
* semantics.c (potential_constant_expression_1) [CALL_EXPR]: Check
arguments even if we don't know the function.
From-SVN: r172165
Jason Merrill [Fri, 8 Apr 2011 06:08:21 +0000 (02:08 -0400)]
re PR c++/48481 (C++ overloading memory hog)
PR c++/48481
* tree.c (build_overload): Allow an unwrapped FUNCTION_DECL
at the end of the chain.
* pt.c (dependent_template_p): Use OVL_CURRENT/NEXT.
(iterative_hash_template_arg): Likewise.
From-SVN: r172164
Jason Merrill [Fri, 8 Apr 2011 06:08:13 +0000 (02:08 -0400)]
re PR c++/48481 (C++ overloading memory hog)
PR c++/48481
* cp-tree.h (OVL_ARG_DEPENDENT): New.
* name-lookup.c (add_function): Set it.
* semantics.c (finish_call_expr): Free OVERLOADs if it's set.
From-SVN: r172163
Jason Merrill [Fri, 8 Apr 2011 06:08:04 +0000 (02:08 -0400)]
re PR c++/48481 (C++ overloading memory hog)
PR c++/48481
* call.c (build_user_type_conversion_1): Use lookup_fnfields_slot.
Release unused vector.
From-SVN: r172162
Jason Merrill [Fri, 8 Apr 2011 02:03:25 +0000 (22:03 -0400)]
re PR c++/48451 ([C++0x][SFINAE] Failures with n-ary initialization expressions (with template default argument))
PR c++/48451
* pt.c (fn_type_unification): Don't clear incomplete pack flag.
(type_unification_real): Clear it here instead.
From-SVN: r172159
GCC Administrator [Fri, 8 Apr 2011 00:18:51 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r172155
Joseph Myers [Thu, 7 Apr 2011 21:48:01 +0000 (22:48 +0100)]
rx.opt (rx610, [...]): Use Enum not Name on EnumValue lines.
* config/rx/rx.opt (rx610, rx200, rx600): Use Enum not Name on
EnumValue lines.
From-SVN: r172149
Jason Merrill [Thu, 7 Apr 2011 21:48:00 +0000 (17:48 -0400)]
re PR c++/48468 ([C++0x][SFINAE] noexcept operator does not handle function templates well)
PR c++/48468
* except.c (build_noexcept_spec): Propagate error_mark_node.
(finish_noexcept_expr): Likewise.
From-SVN: r172148
Jason Merrill [Thu, 7 Apr 2011 21:47:53 +0000 (17:47 -0400)]
re PR c++/48452 ([C++0x][SFINAE] Failures with n-ary initialization expressions (in return type))
PR c++/48452
* typeck.c (build_x_compound_expr_from_list): Return error_mark_node
in SFINAE context.
From-SVN: r172147
Jason Merrill [Thu, 7 Apr 2011 21:47:45 +0000 (17:47 -0400)]
re PR c++/48450 ([C++0x][SFINAE] Hard errors with static_cast expressions)
PR c++/48450
* call.c (resolve_args): Take complain.
(build_new_function_call, build_operator_new_call): Pass it.
(build_op_call, build_new_op, build_new_method_call): Pass it.
From-SVN: r172146
Jason Merrill [Thu, 7 Apr 2011 21:47:38 +0000 (17:47 -0400)]
re PR c++/48450 ([C++0x][SFINAE] Hard errors with static_cast expressions)
PR c++/48450
* typeck.c (check_for_casting_away_constness): Take complain.
(build_static_cast_1, build_reinterpret_cast_1): Pass it.
(build_const_cast_1): Pass it. Take full complain parm.
(build_const_cast, cp_build_c_cast): Adjust.
From-SVN: r172145
Jason Merrill [Thu, 7 Apr 2011 21:47:31 +0000 (17:47 -0400)]
tree.c (build_aggr_init_expr): Always return error_mark_node on abstract violation.
* tree.c (build_aggr_init_expr): Always return error_mark_node
on abstract violation.
From-SVN: r172144
Jason Merrill [Thu, 7 Apr 2011 21:47:24 +0000 (17:47 -0400)]
re PR c++/48450 ([C++0x][SFINAE] Hard errors with static_cast expressions)
PR c++/48450
* tree.c (build_cplus_new, build_aggr_init_expr): Take complain.
(bot_manip): Adjust.
* cp-tree.h: Adjust.
* call.c (convert_like_real, build_cxx_call): Adjust.
(perform_direct_initialization_if_possible): Adjust.
* cvt.c (ocp_convert): Adjust.
* init.c (build_value_init): Adjust.
* semantics.c (maybe_add_lambda_conv_op): Adjust.
* typeck.c (unary_complex_lvalue, cp_build_modify_expr): Adjust.
* typeck2.c (build_functional_cast): Adjust.
From-SVN: r172143
Jason Merrill [Thu, 7 Apr 2011 21:47:17 +0000 (17:47 -0400)]
init.c (build_value_init_noctor): Handle REFERENCE_TYPE at top level.
* init.c (build_value_init_noctor): Handle REFERENCE_TYPE at top
level.
(perform_member_init): Not here.
* typeck2.c (build_functional_cast): Limit REFERENCE_TYPE special
case to templates.
(abstract_virtuals_error_sfinae): Remove RESULT_DECL special case.
From-SVN: r172142
Jason Merrill [Thu, 7 Apr 2011 21:47:10 +0000 (17:47 -0400)]
re PR c++/48449 ([C++0x][SFINAE] Hard errors during value-initialization expressions)
PR c++/48449
* typeck2.c (build_functional_cast): Check complain consistently.
Use build_value_init and abstract_virtuals_error_sfinae.
(abstract_virtuals_error_sfinae): Split out.
* cp-tree.h: Declare it.
* init.c (build_new_1): Use it.
(build_value_init_noctor): Handle FUNCTION_TYPE.
From-SVN: r172141
Jason Merrill [Thu, 7 Apr 2011 21:47:03 +0000 (17:47 -0400)]
semantics.c (finish_decltype_type): Simplify handling of unknown type.
* semantics.c (finish_decltype_type): Simplify handling of unknown
type.
From-SVN: r172140
Jason Merrill [Thu, 7 Apr 2011 21:46:57 +0000 (17:46 -0400)]
semantics.c (finish_decltype_type): Add complain parm.
* semantics.c (finish_decltype_type): Add complain parm.
* cp-tree.h: Adjust.
* parser.c (cp_parser_decltype): Adjust.
* pt.c (tsubst): Adjust.
From-SVN: r172139
Jason Merrill [Thu, 7 Apr 2011 21:46:48 +0000 (17:46 -0400)]
re PR c++/48450 ([C++0x][SFINAE] Hard errors with static_cast expressions)
PR c++/48450
* c-family/c-common.c (c_common_truthvalue_conversion): Don't ignore
conversion from C++0x scoped enum.
* cp/cvt.c (ocp_convert): Handle converting scoped enum to bool.
From-SVN: r172138
Joseph Myers [Thu, 7 Apr 2011 21:25:55 +0000 (22:25 +0100)]
m68k.c (m68k_handle_option): Don't handle OPT_m68000...
* config/m68k/m68k.c (m68k_handle_option): Don't handle
OPT_m68000, OPT_mc68000, OPT_m68010, OPT_m68020, OPT_mc68020,
OPT_m68030, OPT_m68040, OPT_m68060, OPT_m68302, OPT_m68332 and
OPT_mcpu32.
* config/m68k/m68k.h (OPTION_DEFAULT_SPECS, ASM_CPU_SPEC): Don't
handle -mc68000, -m68000, -m68302, -m68010, -mc68020, -m68020,
-m68030, -m68040, -m68060, -mcpu32 and -m68332.
* config/m68k/m68k.opt (m68000, m68010, m68020, m68030, m68040,
m68060, m68302, m68332, mc68000, mc68020, mcpu32): Use Alias.
* config/m68k/t-mlibs (CANONICALIZE_OPTIONS): Remove.
(MULTILIB_OPTIONS): Don't use $(CANONICALIZE_OPTIONS).
(MULTILIB_MATCHES): Map -march= options to corresponding -mcpu=
options. Don't map other m68k options manually. Don't handle
old-style options as canonical.
(MULTILIB_EXCEPTIONS): Don't use $(CANONICALIZE_OPTIONS).
* doc/install.texi (m68k-*-*): Document binutils version
requirement.
From-SVN: r172130
Eric Botcazou [Thu, 7 Apr 2011 21:11:51 +0000 (21:11 +0000)]
basic-block.h (force_nonfallthru): Move to...
* basic-block.h (force_nonfallthru): Move to...
* cfghooks.h (struct cfg_hooks): Add force_nonfallthru hook.
(force_nonfallthru): ...here.
* cfghooks.c (force_nonfallthru): New function.
* cfgrtl.c (force_nonfallthru): Rename into...
(rtl_force_nonfallthru): ...this.
(commit_one_edge_insertion): Do not set AUX field.
(commit_edge_insertions): Do not discover new basic blocks.
(rtl_cfg_hooks): Add rtl_force_nonfallthru.
(cfg_layout_rtl_cfg_hooks): Likewise.
* function.c (thread_prologue_and_epilogue_insns): Remove bogus
ATTRIBUTE_UNUSED. Discover new basic blocks in the prologue insns.
* tree-cfg.c (gimple_cfg_hooks): Add NULL for force_nonfallthru.
From-SVN: r172128
Mike Stump [Thu, 7 Apr 2011 20:55:01 +0000 (20:55 +0000)]
non-local-goto-5.c: Fix for targets with no trampolines.
* gcc.dg/torture/stackalign/non-local-goto-5.c: Fix for targets
with no trampolines.
From-SVN: r172127
Anatoly Sokolov [Thu, 7 Apr 2011 19:58:24 +0000 (23:58 +0400)]
mips.h (REG_MODE_OK_FOR_BASE_P, [...]): Remove macros.
* config/mips/mips.h (REG_MODE_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P):
Remove macros.
From-SVN: r172125
Uros Bizjak [Thu, 7 Apr 2011 18:47:16 +0000 (20:47 +0200)]
sse.md: Update copyright year.
* config/i386/sse.md: Update copyright year.
(avxcvtvecmode): Remove.
(sse_movhlps): Merge with *avx_movhlps.
(sse_movlhps): Merge with *avx_movlhps.
(vec_interleave_highv4sf): Merge with *avx_interleave_highv4sf.
(vec_interleave_lowv4sf): Merge with *avx_interleave_lowv4sf.
(sse_shufps_<mode>): Merge with *avx_shufps_<mode>.
(sse_loadhps): Merge with *avx_loadhps.
(sse_storelps): Merge with *avx_storelps.
(sse_loadlps): Merge with *avx_loadlps.
(sse_movss): Merge with *avx_movss.
(*vec_concatv2sf_sse4_1): Merge with *vec_concatv2sf_avx.
(*vec_concatv4sf_sse): Merge with *vec_concatv4sf_avx.
(*vec_set<mode>_0_sse4_1): Merge with *vec_set<mode>_0_avx.
(*vec_set<mode>_0_sse2): Split multi-unit alternative.
(vec_set<mode>_0): Ditto.
(*vec_setv4sf_sse4_1): Merge with *vec_setv4sf_avx.
(sse4_1_insertps): Merge with *avx_insertps.
(*sse3_interleave_highv2df): Merge with *avx_interleave_highv2df.
(*sse3_interleave_lowv2df): Merge with *avx_interleave_lowv2df.
(vec_interleave_highv2di): Merge with *avx_interleave_highv2di.
(sse2_shufpd_<mode>): Merge with *avx_shufpd_<mode>.
(sse2_storehpd): Merge with *avx_storehpd.
(sse2_loadhpd): Merge with *avx_loadhpd.
(sse2_loadlpd): Merge with *avx_loadlpd.
(sse2_movsd): Merge with *avx_movsd.
(*vec_concatv2df): Merge with *vec_concatv2df.
From-SVN: r172123
Jakub Jelinek [Thu, 7 Apr 2011 18:31:43 +0000 (20:31 +0200)]
re PR fortran/48117 (ICE: OpenMP; in build_int_cst_wide, at tree.c:1178)
PR fortran/48117
* gfortran.dg/gomp/pr48117.f90: New test.
From-SVN: r172119
Jakub Jelinek [Thu, 7 Apr 2011 17:58:05 +0000 (19:58 +0200)]
re PR debug/48343 (ICE compiling i586 linux-2.6.38/drivers/staging/wlan-ng/p80211wep.c: in form_sum, at reload.c:5338)
PR debug/48343
* combine.c (combine_instructions): Add last_combined_insn,
update it if insn is after it, pass it to all try_combine
calls.
(try_combine): Add last_combined_insn parameter, pass it instead of
i3 to propagate_for_debug.
* gcc.dg/torture/pr48343.c: New test.
From-SVN: r172109
Jakub Jelinek [Thu, 7 Apr 2011 17:57:26 +0000 (19:57 +0200)]
re PR debug/48343 (ICE compiling i586 linux-2.6.38/drivers/staging/wlan-ng/p80211wep.c: in form_sum, at reload.c:5338)
PR debug/48343
* combine.c (combine_instructions): Add last_combined_insn,
update it if insn is after it, pass it to all try_combine
calls.
(try_combine): Add last_combined_insn parameter, pass it instead of
i3 to propagate_for_debug.
* gcc.dg/torture/pr48343.c: New test.
From-SVN: r172108
Rainer Orth [Thu, 7 Apr 2011 17:11:30 +0000 (17:11 +0000)]
* gcc.target/i386/asm-6.c: Remove dg-xfail-if.
From-SVN: r172107
Ian Lance Taylor [Thu, 7 Apr 2011 17:09:10 +0000 (17:09 +0000)]
libgo: Update to current Go library.
From-SVN: r172106
Joseph Myers [Thu, 7 Apr 2011 16:30:42 +0000 (17:30 +0100)]
* de.po: Update.
From-SVN: r172103
Eric Botcazou [Thu, 7 Apr 2011 16:07:44 +0000 (16:07 +0000)]
Fix typos
From-SVN: r172102
Maxim Kuvyrkov [Thu, 7 Apr 2011 14:53:50 +0000 (14:53 +0000)]
* gcc.dg/lto/20090210_0.c: Require tls_runtime target.
From-SVN: r172101
Nick Clifton [Thu, 7 Apr 2011 14:02:37 +0000 (14:02 +0000)]
mn10300.md (movqi_internal): Add alternatives to handle MDR <-> data register transfers.
* config/mn10300/mn10300.md (movqi_internal): Add alternatives
to handle MDR <-> data register transfers.
(movhi_internal): Likewise.
From-SVN: r172099
Alan Modra [Thu, 7 Apr 2011 11:17:05 +0000 (20:47 +0930)]
rs6000.c (rs6000_stack_info): Don't compare against previous stack info.
* config/rs6000/rs6000.c (rs6000_stack_info): Don't compare against
previous stack info.
From-SVN: r172096
Stuart Henderson [Thu, 7 Apr 2011 11:09:02 +0000 (11:09 +0000)]
MAINTAINERS (Write After Approval): Add myself.
2011-04-07 Stuart Henderson <shenders@gcc.gnu.org>
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r172095
Tom de Vries [Thu, 7 Apr 2011 09:48:39 +0000 (09:48 +0000)]
re PR target/43920 (Choosing conditional execution over conditional branches for code size in some cases.)
2011-04-07 Tom de Vries <tom@codesourcery.com>
PR target/43920
* cfgcleanup.c (try_crossjump_to_edge): Add dir parameter. Pass dir to
flow_find_cross_jump. Swap variables to implement backward replacement.
(try_crossjump_bb): Add argument to try_crossjump_to_edge.
From-SVN: r172094
Tom de Vries [Thu, 7 Apr 2011 09:28:11 +0000 (09:28 +0000)]
re PR target/43920 (Choosing conditional execution over conditional branches for code size in some cases.)
2011-04-07 Tom de Vries <tom@codesourcery.com>
PR target/43920
* lib/scanasm.exp (object-size): New proc.
* gcc.target/arm/pr43920-2.c: New test.
From-SVN: r172093
Tom de Vries [Thu, 7 Apr 2011 08:35:23 +0000 (08:35 +0000)]
re PR target/43920 (Choosing conditional execution over conditional branches for code size in some cases.)
2011-04-07 Tom de Vries <tom@codesourcery.com>
PR target/43920
* cfgcleanup.c (walk_to_nondebug_insn): New function.
(flow_find_cross_jump): Use walk_to_nondebug_insn. Recalculate bb1 and
bb2.
(try_crossjump_to_edge): Handle case that newpos1 or newpos2 is not src1
or src2. Redirect edges to the last basic block. Update frequency and
count on multiple basic blocks in case of fallthru.
From-SVN: r172091
Tom de Vries [Thu, 7 Apr 2011 08:10:34 +0000 (08:10 +0000)]
re PR target/43920 (Choosing conditional execution over conditional branches for code size in some cases.)
2011-04-07 Tom de Vries <tom@codesourcery.com>
PR target/43920
* cfgcleanup.c (equal_different_set_p, can_replace_by, merge_dir): New
function.
(old_insns_match_p): Change return type. Replace return false/true with
return dir_none/dir_both. Use can_replace_by.
(flow_find_cross_jump): Add dir_p parameter. Init replacement direction
from dir_p. Register replacement direction in dir, last_dir and
afterlast_dir. Handle new return type of old_insns_match_p using
merge_dir. Return replacement direction in dir_p.
(flow_find_head_matching_sequence, outgoing_edges_match): Handle new
return type of old_insns_match_p.
(try_crossjump_to_edge): Add argument to call to flow_find_cross_jump.
* ifcvt.c ( cond_exec_process_if_block): Add argument to call to
flow_find_cross_jump.
* basic-block.h (enum replace_direction): New type.
(flow_find_cross_jump): Add parameter to declaration.
From-SVN: r172090
Jeffrey Yasskin [Thu, 7 Apr 2011 04:11:12 +0000 (04:11 +0000)]
In C++0x mode, import iota and is_sorted from namespace std into namespace __gnu_cxx to avoid ambiguous call errors.
In C++0x mode, import iota and is_sorted from namespace std into
namespace __gnu_cxx to avoid ambiguous call errors. copy_n would be a
good candidate for this too, except it was standardized with a
different return type.
Tested:
`make -k check-c++` on x86_64-unknown-linux-gnu.
libstdc++-v3/ChangeLog:
2011-04-06 Jeffrey Yasskin <jyasskin@google.com>
* include/ext/algorithm (is_sorted): In C++0x mode import from
namespace std.
* include/ext/numeric (iota): In C++0x mode import from
namespace std.
* testsuite/ext/is_sorted/cxx0x.cc: New.
* testsuite/ext/iota/cxx0x.cc: New.
From-SVN: r172073
GCC Administrator [Thu, 7 Apr 2011 00:18:54 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r172072
Ian Lance Taylor [Wed, 6 Apr 2011 23:07:13 +0000 (23:07 +0000)]
Use backend interface for constant switch statements.
* go-gcc.cc (if_statement): Use build3_loc.
(Gcc_backend::switch_statement): New function.
(Gcc_backend::statement_list): New function.
From-SVN: r172066
Tobias Burnus [Wed, 6 Apr 2011 18:32:27 +0000 (20:32 +0200)]
re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
2011-04-06 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
PR fortran/48477
* gfortran.dg/coarray_13.f90: Avoid out-of-bounds access.
From-SVN: r172061
Tobias Burnus [Wed, 6 Apr 2011 18:30:58 +0000 (20:30 +0200)]
re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
2011-04-06 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
* trans-intrinsic.c (gfc_conv_intrinsic_function): Fix
call for this_image.
From-SVN: r172060
Tobias Burnus [Wed, 6 Apr 2011 18:29:55 +0000 (20:29 +0200)]
re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
2011-04-06 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
* caf/mpi.c (_gfortran_caf_init, _gfortran_caf_finalize):
Add global variable caf_mpi_initialized and use it for when
finalizing.
From-SVN: r172059
Uros Bizjak [Wed, 6 Apr 2011 17:39:27 +0000 (19:39 +0200)]
sse.md (AVXMODEDCVTDQ2PS): Remove.
* config/i386/sse.md (AVXMODEDCVTDQ2PS): Remove.
(AVXMODEDCVTPS2DQ): Ditto.
(VEC_FLOAT_MODE): Ditto.
(<sse>_andnot<mode>3): Merge with avx_andnot<mode>3. Use VF mode
iterator. Handle TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL target flag.
(<any_logic:code><mode>3): Use VF mode iterator.
(*<any_logic:code><mode>3): Merge with *avx_<any_logic:code><mode>3.
Use VF mode iterator.
(copysign<mode>3): Use VF mode iterator.
(*andnot<MODEF:mode>3): Merge with *avx_andnot<MODEF:mode>3. Handle
TARGET_SSE_PACKED_SINGLE_INSN_OPTIMAL target flag.
(*<any_logic:code><MODEF:mode>3): Merge with
*avx_<any_logic:code><MODEF:mode>3.
(sse_cvtsi2ss): Merge with *avx_cvtsi2ss.
(sse_cvtsi2ssq): Merge with *avx_cvtsi2ssq.
(avx_cvtdq2ps256): Split from avx_cvtdq2ps<avxmodesuffix>.
(avx_cvtdq2ps<avxmodesuffix>): Remove.
(sse2_cvtdq2ps): Use %v modifier.
(avx_cvtps2dq256): Split from avx_cvtps2dq<avxmodesuffix>.
(avx_cvtps2dq<avxmodesuffix>): Remove.
(sse2_cvtps2dq): Use %v modifier.
(avx_cvttps2dq256): Split from avx_cvttps2dq<avxmodesuffix>.
(avx_cvttps2dq<avxmodesuffix>): Remove.
(sse2_cvttps2dq): Use %v modifier.
(sse2_cvtsi2sd): Merge with *avx_cvtsi2sd.
(sse2_cvtsi2sdq): Merge with *avx_cvtsi2sdq.
(sse2_cvtsd2siq): Fix insn template.
(sse2_cvtsd2siq_2): Ditto.
(sse2_cvttsd2siq): Ditto.
(sse2_cvtsd2ss): Merge with *avx_cvtsd2ss.
(sse2_cvtss2sd): Merge with *avx_cvtss2sd.
From-SVN: r172058
Steve Ellcey [Wed, 6 Apr 2011 16:15:28 +0000 (16:15 +0000)]
mtune.c: Prune note from output.
2011-04-06 Steve Ellcey <sje@cup.hp.com>
* gcc.dg/mtune.c: Prune note from output.
From-SVN: r172056
Joseph Myers [Wed, 6 Apr 2011 16:04:18 +0000 (17:04 +0100)]
* gcov-io.c: Use GCC Runtime Library Exception.
From-SVN: r172053
Ian Lance Taylor [Wed, 6 Apr 2011 15:46:53 +0000 (15:46 +0000)]
Use backend interface for if statements.
Rename some temporary conversion functions to shorter names.
* go-gcc.cc (Gcc_backend::if_statement): New function.
(tree_to_stat): New function.
(expr_to_tree): Renamed from expression_to_tree.
(stat_to_tree): Renamed from statement_to_tree.
From-SVN: r172052
Ian Lance Taylor [Wed, 6 Apr 2011 15:30:20 +0000 (15:30 +0000)]
Use backend interface for expression statements.
* go-gcc.cc (Gcc_backend::expression_statement): New function.
From-SVN: r172051
Rainer Orth [Wed, 6 Apr 2011 15:23:33 +0000 (15:23 +0000)]
re PR testsuite/48480 (FAIL: staticrootslib.lo -O2 (test for excess errors))
PR testsuite/48480
* testsuite/lib/boehm-gc.exp (boehm-gc-dg-prune): Allow for path
to ranlib.
From-SVN: r172050
Joseph Myers [Wed, 6 Apr 2011 12:18:12 +0000 (13:18 +0100)]
configure.ac (build_tools): Remove build-byacc.
* configure.ac (build_tools): Remove build-byacc.
(host_libs): Remove mmalloc.
(host_tools): Remove byacc make patch prms send-pr ash bash bzip2
autoconf automake libtool diff rcs fileutils shellutils time
textutils wdiff find uudecode hello tar gzip indent recode release
sed perl gawk findutils gettext zip.
(libgcj): Remove target-qthreads.
(target_tools): Remove target-examples target-gperf.
(YACC): Don't handle building byacc.
* configure: Regenerate.
* Makefile.def (ash, autoconf, automake, bash, byacc, bzip2, diff,
dosutils, examples, fileutils, find, findutils, gawk, gettext,
gnuserv, gperf, gzip, hello, indent, libtool, make, mmalloc,
patch, perl, prms, qthreads, rcs, recode, release, sed, send-pr,
shellutils, tar, textutils, time, uudecode, wdiff, zip): Don't
handle building components.
* Makefile.in: Regenerate.
From-SVN: r172042
Jakub Jelinek [Wed, 6 Apr 2011 11:49:59 +0000 (13:49 +0200)]
re PR debug/48466 (Wrong variable locations at -O0 on i686)
PR debug/48466
* dwarf2out.c (based_loc_descr): If drap_reg is INVALID_REGNUM, use
as base_reg whatever register reg has been eliminated to, instead
of hardcoding STACK_POINTER_REGNUM.
* gcc.dg/guality/pr36977.c: New test.
* gcc.dg/guality/pr48466.c: New test.
From-SVN: r172039
Joseph Myers [Wed, 6 Apr 2011 11:08:17 +0000 (12:08 +0100)]
tm.texi.in: Document C target hooks as separate from general target hooks.
* doc/tm.texi.in: Document C target hooks as separate from general
target hooks.
* doc/tm.texi: Regenerate.
* genhooks.c (struct hook_desc): Add docname field.
(HOOK_VECTOR_1, DEFHOOKPOD, DEFHOOK, DEFHOOK_UNDOC). Initialize
docname field.
(hook_array): Include c-target.def.
(emit_documentation): Use docname field in output.
(emit_init_macros): Take docname argument. Only emit definitions
for hooks matching docname.
(main): Expect additional arguments in all cases. Pass argument
to emit_init_macros.
* target.def: Move initial macro definitions and comments to
target-hooks-macros.h.
(gcc_targetcm): Move to c-family/c-target.def.
* target.h (targetcm): Move declaration to c-family/c-target.h.
* targhooks.c (default_handle_c_option): Move to
c-family/c-opts.c.
* targhooks.h (default_handle_c_option): Move declaration to
c-family/c-common.h.
* target-hooks-macros.h: New file.
* config.gcc (target_has_targetcm): Define and use to add to
c_target_objs and cxx_target_objs.
* config/default-c.c: New file.
* config/darwin-c.c: Include c-target.h and c-target-def.h instead
of target.h and target-def.h.
(TARGET_HANDLE_C_OPTION, targetcm): Define later in file.
(darwin_objc_construct_string, darwin_cfstring_ref_p,
darwin_check_cfstring_format_arg): Make static.
(TARGET_OBJC_CONSTRUCT_STRING_OBJECT,
TARGET_STRING_OBJECT_REF_TYPE_P,
TARGET_CHECK_STRING_OBJECT_FORMAT_ARG): Define here.
* config/darwin-protos.h (darwin_objc_construct_string,
darwin_cfstring_ref_p, darwin_check_cfstring_format_arg): Don't
declare.
* config/darwin.h (TARGET_OBJC_CONSTRUCT_STRING_OBJECT,
TARGET_STRING_OBJECT_REF_TYPE_P,
TARGET_CHECK_STRING_OBJECT_FORMAT_ARG, TARGET_HAS_TARGETCM):
Remove.
* config/t-darwin (darwin-c.o): Update dependencies.
* system.h (TARGET_HAS_TARGETCM): Poison.
* Makefile.in (TARGET_H): Update.
(TARGET_DEF, C_TARGET_DEF, C_TARGET_H, C_TARGET_DEF_H): Define.
(c-family/c-format.o, c-family/c-opts.o): Update dependencies.
(default-c.o): New target.
(s-target-hooks-def-h): Pass "Target Hook" string to genhooks.
(c-family/c-target-hooks-def.h, s-c-target-hooks-def-h): New
targets.
(s-tm-texi): Pass -d option to genhooks. Also test timestamp on
c-target.def.
(build/genhooks.o): Update dependencies.
c-family:
* c-target-def.h: New file.
* c-target.def: New file.
* c-target.h: New file.
* c-common.c (targetcm): Don't define here.
* c-common.h (default_handle_c_option): Declare.
* c-format.c: Include c-target.h instead of target.h.
* c-opts.c: Include c-target.h instead of target.h. Explicitly
include tm.h.
(default_handle_c_option): Move from targhooks.c.
objc:
* objc-act.c: Include c-target.h instead of target.h.
* Make-lang.in (objc/objc-act.o): Update dependencies.
From-SVN: r172035
Richard Guenther [Wed, 6 Apr 2011 10:16:30 +0000 (10:16 +0000)]
ipa-inline.c (enum inlining_mode): Remove.
2011-04-06 Richard Guenther <rguenther@suse.de>
* ipa-inline.c (enum inlining_mode): Remove.
(cgraph_flatten): Use some other token.
(cgraph_edge_early_inlinable_p): New function, split out from ...
(cgraph_perform_always_inlining): New function, split out from ...
(cgraph_decide_inlining_incrementally): ... here.
(cgraph_mark_inline_edge): Adjust.
(cgraph_early_inlining): Re-structure.
(pass_early_inline): Require SSA form.
From-SVN: r172033
Andrew Stubbs [Wed, 6 Apr 2011 09:52:52 +0000 (09:52 +0000)]
arm.h (arm_class_likely_spilled_p): Check against LO_REGS only for Thumb-1.
2011-03-06 Andrew Stubbs <ams@codesourcery.com>
Julian Brown <julian@codesourcery.com>
Mark Shinwell <shinwell@codesourcery.com>
gcc/
* config/arm/arm.h (arm_class_likely_spilled_p): Check against
LO_REGS only for Thumb-1.
(MODE_BASE_REG_CLASS): Restrict base registers to those which can
be used in short instructions when optimising for size on Thumb-2.
Co-Authored-By: Julian Brown <julian@codesourcery.com>
Co-Authored-By: Mark Shinwell <shinwell@codesourcery.com>
From-SVN: r172032
Ramana Radhakrishnan [Wed, 6 Apr 2011 09:41:07 +0000 (09:41 +0000)]
Fix commit for PR target/43920
From-SVN: r172031
Eric Botcazou [Wed, 6 Apr 2011 09:34:02 +0000 (09:34 +0000)]
gimple-low.c (lower_gimple_return): When not optimizing, force labels associated with user returns to be preserved.
* gimple-low.c (lower_gimple_return): When not optimizing, force labels
associated with user returns to be preserved.
From-SVN: r172030
Tristan Gingold [Wed, 6 Apr 2011 09:29:53 +0000 (09:29 +0000)]
dbxout.c: (debug_nesting...
2011-04-06 Tristan Gingold <gingold@adacore.com>
* dbxout.c: (debug_nesting, symbol_queue, symbol_queue_index)
(symbol_queue_size, DBXOUT_DECR_NESTING)
(DBXOUT_DECR_NESTING_AND_RETURN): Also define
if XCOFF_DEBUGGING_INFO.
From-SVN: r172029
Uros Bizjak [Wed, 6 Apr 2011 09:24:46 +0000 (11:24 +0200)]
i386.md (attribute isa): New.
* config/i386/i386.md (attribute isa): New.
(attribute enabled): New.
(setcc_<mode>_sse): Merge from *{avx,sse}_setcc<mode>.
(*fop_<mode>_comm_mixed): Merge with *fop_<mode>_comm_mixed_avx.
(*fop_<mode>_comm_sse): Merge with *fop_<mode>_comm_avx.
(*fop_<mode>_1_mixed): Merge with *fop_<mode>_1_mixed_avx.
(*fop_<mode>_1_sse): Merge with *fop_<mode>_1_avx.
(<smaxmin:code><mode>3): Merge with *avx_<smaxmin:code><mode>3.
(*ieee_smin<mode>3): Merge with *avx_ieee_smin<mode>3.
(*ieee_smax<mode>3): Merge with *avx_ieee_smax<mode>3.
* config/i386/sse.md (VF): New mode iterator.
(VF1): Ditto.
(VF2): Ditto.
(VF_128): Ditto.
(SSEMODEF4): Remove.
(attribute sse): Handle V8SF and V4DF modes.
(<absneg:code><mode>2): Use VF mode iterator.
(*absneg<mode>2): Merge from *{avx,sse}_absneg<mode>2. Use VF
mode iterator.
(<plusminus_insn><mode>3): Use VF mode iterator.
(*<plusminus_insn><mode>3): Merge with *avx_<plusminus_insn><mode>3.
Use VF mode iterator.
(<sse>_vm<plusminus_insn><mode>3): Merge with
*avx_vm<plusminus_insn><mode>3. Use VF_128 mode iterator.
(mul<mode>3): Use VF mode iterator.
(*mul<mode>3): Merge with *avx_mul<mode>3. Use VF mode iterator.
(<sse>_vmmul<mode>3): Merge with *avx_vmmul<mode>3. Use VF_128
mode iterator.
(div<VF2:mode>3): Merge from divv2df3 and divv4df3.
(div<VF1:mode>3): Merge from divv4sf3 and divv8sf3.
(<sse>_div<mode>3): Merge with *avx_div<mode>3. Use VF mode iterator.
(<sse>_vmdiv<mode>3): Merge with *avx_vmdiv<mode>3. Use VF_128
mode iterator.
(<sse>_rcp<mode>2): Merge from avx_rcpv8sf2 and sse_rcpv4sf2.
Use VF1 mode iterator.
(sse_vmrcpv4sf2): Merge with *avx_vmrcpv4sf2.
(sqrt<VF2:mode>2): New expander.
(sqrt<VF1:mode>2): Merge from sqrtv4sf2 and sqrtv8sf2.
(<sse>_sqrt<mode>2): Merge from avx_sqrtv8sf2, sse_sqrtv4sf, sqrtv4df2
and sqrtv2df2. Use VF mode iterator.
(<sse>_vmsqrt<mode>2): Merge with *avx_vmsqrt<mode>2. Use VF_128
mode iterator.
(rsqrt<VF1:mode>2): Merge from rsqrtv4sf2 and rsqrtv8sf2.
(<sse>_rsqrt<mode>2): Merge from avx_rsqrtv8sf2 and sse_rsqrt4sf2.
Use VF1 mode iterator.
(sse_vmrsqrtv4sf2): Merge with *avx_vmrsqrtv4sf2.
(<smaxmin:code><mode>3): Use VF mode iterator.
(*<smaxmin:code><mode>3_finite): Merge with
*avx_<smaxmin:code><mode>3_finite. Use VF mode iterator.
(*<smaxmin:code><mode>3): Merge with *avx_<smaxmin:code><mode>3.
(<sse>_vm<smaxmin:code><mode>2): Merge with
*avx_vm<smaxmin:code><mode>2. Use VF_128 mode iterator.
(*ieee_smin<mode>3): Merge with *avx_ieee_smin<mode>3. Use VF
mode iterator.
(*ieee_smax<mode>3): Merge with *avx_ieee_smax<mode>3. Use VF
mode iterator.
(sse3_addsubv2df3): Merge with *avx_addsubv2df3.
(sse3_addsubv4sf3): Merge with *avx_addsubv4sf3.
(sse3_h<plusminus_insn>v2df3): Merge with *avx_h<plusminus_insn>v2df3.
(sse3_h<plusminus_insn>v4sf3): Merge with *avx_h<plusminus_insn>v4sf3.
(avx_cmp<mode>3): Rename from avx_cmp<ssemodesuffix><mode>3. Use
VF mode iterator.
(avx_vmcmp<mode>3): Rename from avx_cmp<ssescalarmodesuffix><mode>3.
Use VF_128 mode iterator.
(<sse>_maskcmp<mode>3): Merge with *avx_maskcmp<mode>3. Use VF
mode iterator.
(<sse>_vmmaskcmp<mode>3): Merge with *avx_vmmaskcmp<mode>3. Use
VF_128 mode iterator.
(vcond<mode>): Use VF mode iterator.
* config/i386/predicates.md (sse_comparison_operator): Merge with
avx_comparison_float_operator. Do not declare as special_predicate.
* config/i386/i386.c (struct builtin_description): Update for renamed
compare patterns.
(ix86_expand_args_builtin): Ditto.
(ix86_expand_sse_compare_mask): Ditto.
From-SVN: r172028
Richard Guenther [Wed, 6 Apr 2011 08:56:28 +0000 (08:56 +0000)]
tree-inline.c (estimate_num_insns): For calls simply account for all passed arguments and a used return value.
2011-04-06 Richard Guenther <rguenther@suse.de>
* tree-inline.c (estimate_num_insns): For calls simply account
for all passed arguments and a used return value.
From-SVN: r172024
Richard Guenther [Wed, 6 Apr 2011 08:51:23 +0000 (08:51 +0000)]
re PR middle-end/47663 (Very simple wrapper not inlined)
2011-04-06 Richard Guenther <rguenther@suse.de>
PR tree-optimization/47663
* cgraph.h (struct cgraph_edge): Add call_stmt_size and
call_stmt_time fields.
(cgraph_edge_inlinable_p): Declare.
(cgraph_edge_recursive_p): New inline function.
* cgraph.c (cgraph_create_edge_1): Initialize call_stmt_size.
(cgraph_clone_edge): Copy it.
* ipa-inline.c (cgraph_estimate_edge_time): New function.
Account for call stmt time.
(cgraph_estimate_time_after_inlining): Take edge argument.
(cgraph_estimate_edge_growth): Account call stmt size.
(cgraph_estimate_size_after_inlining): Take edge argument.
(cgraph_mark_inline_edge): Adjust.
(cgraph_check_inline_limits): Likewise.
(cgraph_recursive_inlining_p): Remove.
(cgraph_edge_badness): Use cgraph_edge_recursive_p.
(cgraph_decide_recursive_inlining): Take edge argument and
adjust.
(cgraph_decide_inlining_of_small_functions): Do not avoid
diags for recursive inlining here.
(cgraph_flatten): Adjust.
(cgraph_decide_inlining_incrementally): Likewise.
(estimate_function_body_sizes): Remove call cost handling.
(compute_inline_parameters): Initialize caller edge call costs.
(cgraph_estimate_edge_growth): New function.
(cgraph_estimate_growth): Use it.
(cgraph_edge_badness): Likewise.
(cgraph_check_inline_limits): Take an edge argument.
(cgraph_decide_inlining_of_small_functions): Adjust.
(cgraph_decide_inlining): Likewise.
* tree-inline.c (estimate_num_insns): Only account for call
return value if it is used.
(expand_call_inline): Avoid diagnostics on recursive inline
functions here.
* lto-cgraph.c (lto_output_edge): Output edge call costs.
(input_edge): Input edge call costs.
* gcc.dg/tree-ssa/inline-8.c: New testcase.
From-SVN: r172023
Rainer Orth [Wed, 6 Apr 2011 08:48:22 +0000 (08:48 +0000)]
* config/alpha/osf5.h (MAX_OFILE_ALIGNMENT): Define.
From-SVN: r172022
Jonathan Wakely [Wed, 6 Apr 2011 08:00:43 +0000 (08:00 +0000)]
invoke.texi (Spec Files): Fix typo.
2011-04-06 Jonathan Wakely <jwakely.gcc@gmail.com>
* doc/invoke.texi (Spec Files): Fix typo.
From-SVN: r172020
Eric Botcazou [Wed, 6 Apr 2011 06:17:22 +0000 (06:17 +0000)]
profile.c (branch_prob): Move declaration of local variable.
* profile.c (branch_prob): Move declaration of local variable. Remove
obsolete ??? comment. Expand the location explicitly instead of using
the LOCATION_FILE and LOCATION_LINE macros.
From-SVN: r172019
Ian Lance Taylor [Wed, 6 Apr 2011 06:01:53 +0000 (06:01 +0000)]
libgo: Always use AM_LDFLAGS when linking libgo.la.
This ensures that we pass -fsplit-stack as required.
From-SVN: r172018
Wei Guozhi [Wed, 6 Apr 2011 02:24:16 +0000 (02:24 +0000)]
arm.md (arm_cmpsi_insn): Compute attr "length".
* config/arm/arm.md (arm_cmpsi_insn): Compute attr "length".
(arm_cond_branch): Likewise.
(arm_cond_branch_reversed): Likewise.
(arm_jump): Likewise.
(push_multi): Likewise.
* config/arm/constraints.md (Py): New constraint.
From-SVN: r172017
Nathan Froyd [Wed, 6 Apr 2011 01:06:42 +0000 (01:06 +0000)]
re PR bootstrap/48471 (ia64-*-* does not bootstrap due to unused variables in dbxout.c)
PR bootstrap/48471
* dbxout.c (debug_nesting, symbol_queue, symbol_queue_index):
Move these...
(symbol_queue_size, DBXOUT_DECR_NESTING): ...and these...
(DBXOUT_DECR_NESTING_AND_RETURN): ...and this under
#ifdef DBX_DEBUGGING_INFO.
From-SVN: r172016
GCC Administrator [Wed, 6 Apr 2011 00:18:48 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r172015
Joseph Myers [Tue, 5 Apr 2011 23:08:35 +0000 (00:08 +0100)]
* de.po: Update.
From-SVN: r172009
Eric Botcazou [Tue, 5 Apr 2011 22:52:46 +0000 (22:52 +0000)]
pr47917.c: Add -D_XOPEN_SOURCE=500 to dg-options for Solaris 9 as well.
* gcc.dg/torture/pr47917.c: Add -D_XOPEN_SOURCE=500 to dg-options for
Solaris 9 as well.
From-SVN: r172008
Eric Botcazou [Tue, 5 Apr 2011 22:43:32 +0000 (22:43 +0000)]
pr47917.c: Add -D_XOPEN_SOURCE=500 to dg-options for Solaris 8 as well.
* gcc.dg/torture/pr47917.c: Add -D_XOPEN_SOURCE=500 to dg-options for
Solaris 8 as well.
From-SVN: r172007
Bernd Schmidt [Tue, 5 Apr 2011 22:19:17 +0000 (22:19 +0000)]
re PR bootstrap/48403 (bootstrap comparison failure)
PR bootstrap/48403
* haifa-sched.c (schedule_block): Increment cycle_issued_insns only
if old and new states differ.
From-SVN: r172006
Joseph Myers [Tue, 5 Apr 2011 21:55:18 +0000 (22:55 +0100)]
m68k.c (m68k_handle_option): Don't handle OPT_m5200, OPT_m5206e, OPT_m528x, OPT_m5307, OPT_m5407 and OPT_mcfv4e.
* config/m68k/m68k.c (m68k_handle_option): Don't handle OPT_m5200,
OPT_m5206e, OPT_m528x, OPT_m5307, OPT_m5407 and OPT_mcfv4e.
* config/m68k/m68k.h (OPTION_DEFAULT_SPECS, ASM_CPU_SPEC): Don't
handle -m5200, -m5206e, -m528x, -m5307, -m5407 and -mcfv4e.
* config/m68k/m68k.opt (m5200, m5206e, m528x, m5307, m5407,
mcfv4e): Use Alias.
* config/m68k/t-mlibs (MULTILIB_MATCHES): Don't map legacy
ColdFire options to -mcpu= options.
From-SVN: r172005
Jeff Law [Tue, 5 Apr 2011 21:30:54 +0000 (15:30 -0600)]
tree-ssa-threadupdate.c (determine_bb_domination_status): Always check if BB is a successor of LOOP->header and return NONDOMINATING if...
* tree-ssa-threadupdate.c (determine_bb_domination_status): Always
check if BB is a successor of LOOP->header and return NONDOMINATING
if it is not, regardless of ENABLE_CHECKING.
From-SVN: r172004
Ian Lance Taylor [Tue, 5 Apr 2011 21:11:35 +0000 (21:11 +0000)]
gotest: Add external timeout if internal timeout fails.
From-SVN: r172003
Sterling Augustine [Tue, 5 Apr 2011 20:45:10 +0000 (20:45 +0000)]
+2011-04-05 Sterling Augustine <augustine.sterling@gmail.com> + + * MAINTAINERS...
+2011-04-05 Sterling Augustine <augustine.sterling@gmail.com>
+
+ * MAINTAINERS: Update my email address as Xtensa maintainer.
+
From-SVN: r172002
Ian Lance Taylor [Tue, 5 Apr 2011 19:53:33 +0000 (19:53 +0000)]
gotest: Avoid echo -n.
From-SVN: r172000
Steven Bosscher [Tue, 5 Apr 2011 19:49:52 +0000 (19:49 +0000)]
cprop.c (struct reg_use): Remove.
* cprop.c (struct reg_use): Remove.
(reg_use_table): Make an array of RTX.
(find_used_regs, constprop_register, local_cprop_pass,
bypass_block): Simplify users of reg_use_table.
(cprop_insn): Likewise. Iterate if copy propagation succeeded
on one of the uses found by find_used_regs.
From-SVN: r171999
Nathan Froyd [Tue, 5 Apr 2011 19:33:49 +0000 (19:33 +0000)]
re PR bootstrap/48469 (bootstrap failure)
PR bootstrap/48469
* combine.c (combine_instructions): #ifdef AUTO_INC_DEC links
declaration.
From-SVN: r171998
Ralf Wildenhues [Tue, 5 Apr 2011 19:05:27 +0000 (19:05 +0000)]
Sync config.sub from upstream.
/:
* config.sub: Sync from upstream.
From-SVN: r171996
Nathan Froyd [Tue, 5 Apr 2011 18:36:15 +0000 (18:36 +0000)]
fix compilation on AUTO_INC_DEC targets
fix compilation on AUTO_INC_DEC targets
* combine.c (combine_instructions) [AUTO_INC_DEC]: Declare links
as an rtx.
(try_combine) [AUTO_INC_DEC]: Declare a local link rtx.
From-SVN: r171995
Steven Bosscher [Tue, 5 Apr 2011 18:15:04 +0000 (18:15 +0000)]
re PR middle-end/48441 (ICE in mark_oprs_set)
PR middle-end/48441
* cprop.c (one_cprop_pass): Do not mark_oprs_set of deleted insns.
From-SVN: r171994
Nathan Froyd [Tue, 5 Apr 2011 17:24:06 +0000 (17:24 +0000)]
combine.c: Include obstack.h.
* combine.c: Include obstack.h.
(struct insn_link): Define.
(uid_log_links): Adjust type.
(FOR_EACH_LOG_LINK): New macro.
(insn_link_obstack): Declare.
(alloc_insn_link): Define.
(create_log_links): Call it. Use FOR_EACH_LOG_LINK and adjust
type of link variables.
(find_single_use, insn_a_feeds_b, combine_instructions): Likewise.
(try_combine, record_promoted_values, distribute_notes): Likewise.
(distribute_links): Likewise. Tweak prototype.
(clear_log_links): Delete.
(adjust_for_new_dest): Call alloc_insn_link.
* Makefile.in (combine.o): Depend on $(OBSTACK_H).
From-SVN: r171993
Nathan Froyd [Tue, 5 Apr 2011 17:20:44 +0000 (17:20 +0000)]
gcse.c (modify_mem_list): Convert to an array of VECs.
* gcse.c (modify_mem_list): Convert to an array of VECs.
(canon_modify_mem_list, compute_transp): Tweak formatting.
(alloc_gcse_mem): Likewise. Adjust for modify_mem_list change.
(load_killed_in_block_p): Likewise.
(record_last_mem_set_info): Likewise.
(clear_modify_mem_tables): Likewise.
From-SVN: r171992
Tom de Vries [Tue, 5 Apr 2011 15:54:13 +0000 (15:54 +0000)]
re PR middle-end/48461 (function.c:5268:1: error: emit_use_return_register_into_block defined but not used)
2011-04-05 Tom de Vries <tom@codesourcery.com>
PR middle-end/48461
* function.c (emit_use_return_register_into_block): Only define if
HAVE_return.
From-SVN: r171990
Eric Botcazou [Tue, 5 Apr 2011 14:34:28 +0000 (14:34 +0000)]
* stor-layout.c (self_referential_size): Fix 2010-07-13 commit.
From-SVN: r171988
Nathan Froyd [Tue, 5 Apr 2011 14:25:32 +0000 (14:25 +0000)]
trans-intrinsic.c (gfc_build_intrinsic_lib_fndecls): Use build_function_type_list instead of build_function_type.
* trans-intrinsic.c (gfc_build_intrinsic_lib_fndecls): Use
build_function_type_list instead of build_function_type. Correct
argument order for func_frexp and func_scalbn.
From-SVN: r171987
Tom de Vries [Tue, 5 Apr 2011 13:01:50 +0000 (13:01 +0000)]
re PR target/43920 (Choosing conditional execution over conditional branches for code size in some cases.)
2011-04-05 Tom de Vries <tom@codesourcery.com>
PR target/43920
* gcc.target/arm/pr43920-1.c: New test.
From-SVN: r171986
Joseph Myers [Tue, 5 Apr 2011 12:28:41 +0000 (13:28 +0100)]
rx-opts.h: New.
* config/rx/rx-opts.h: New.
* config/rx/rx.c (rx_cpu_type): Remove.
(rx_handle_option): Don't assert that global structures are in
use. Access variables via opts pointer. Defer most handling of
OPT_mint_register_. Use error_at.
(rx_option_override): Handle deferred OPT_mint_register_ here.
* config/rx/rx.h (enum rx_cpu_types): Move to rx-opts.h.
* config/rx/rx.opt (config/rx/rx-opts.h: New HeaderInclude.
(mcpu=): Use Enum and specifiy rx_cpu_type with Var.
(rx_cpu_types): New Enum and EnumValue entries.
(mint-register=): Use Defer and use Var accordingly.
From-SVN: r171984
Richard Guenther [Tue, 5 Apr 2011 12:11:08 +0000 (12:11 +0000)]
re PR lto/48431 (patch to fix a compile error in lto-plugin.c when using older C compilers)
2011-04-05 Richard Guenther <rguenther@suse.de>
PR bootstrap/48431
* lto-plugin.c (claim_file_handler): Do not declare vars in code.
From-SVN: r171982
Nathan Froyd [Tue, 5 Apr 2011 12:02:55 +0000 (12:02 +0000)]
debug.h (debug_flush_symbol_queue, [...]): Delete.
* debug.h (debug_flush_symbol_queue, debug_queue_symbol): Delete.
(debug_free_queue, debug_nesting, symbol_queue_index): Delete.
* final.c (debug_flush_symbol_queue, debug_queue_symbol):
Move these...
(debug_free_queue, debug_nesting, symbol_queue_index):
...and these...
* dbxout.c: ...to here. Make static.
From-SVN: r171981
Nathan Froyd [Tue, 5 Apr 2011 11:40:10 +0000 (11:40 +0000)]
gcse.c (modify_pair): Define.
* gcse.c (modify_pair): Define. Define a VEC of it.
(canon_modify_mem_list): Convert to an array of VECs.
(free_insn_expr_list_list): Delete.
(clear_modify_mem_tables): Call VEC_free instead.
(record_last_mem_set_info): Don't modify canon_modify_mem_list.
(alloc_gcse_mem): Adjust for canon_modify_mem_list change.
(canon_list_insert, compute_transp): Likewise.
From-SVN: r171980
Tom de Vries [Tue, 5 Apr 2011 10:33:13 +0000 (10:33 +0000)]
re PR target/43920 (Choosing conditional execution over conditional branches for code size in some cases.)
2011-04-05 Tom de Vries <tom@codesourcery.com>
PR target/43920
* config/arm/arm.h (BRANCH_COST): Set to 1 for Thumb-2 when optimizing
for size.
From-SVN: r171978
Tom de Vries [Tue, 5 Apr 2011 10:12:14 +0000 (10:12 +0000)]
re PR target/43920 (Choosing conditional execution over conditional branches for code size in some cases.)
2011-04-05 Tom de Vries <tom@codesourcery.com>
PR target/43920
* function.c (emit_use_return_register_into_block): New function.
(thread_prologue_and_epilogue_insns): Use
emit_use_return_register_into_block.
From-SVN: r171977
Tom de Vries [Tue, 5 Apr 2011 10:04:44 +0000 (10:04 +0000)]
re PR target/43920 (Choosing conditional execution over conditional branches for code size in some cases.)
2011-04-05 Tom de Vries <tom@codesourcery.com>
PR target/43920
* cfgcleanup.c (flow_find_cross_jump): Don't count USE or CLOBBER as
insn.
From-SVN: r171976
Tom de Vries [Tue, 5 Apr 2011 09:43:12 +0000 (09:43 +0000)]
cfgcleanup.c (try_crossjump_bb): Remove 2 superfluous variables.
2011-04-05 Tom de Vries <tom@codesourcery.com>
* cfgcleanup.c (try_crossjump_bb): Remove 2 superfluous variables.
From-SVN: r171975
Eric Botcazou [Tue, 5 Apr 2011 08:41:58 +0000 (08:41 +0000)]
Minor tweaks
From-SVN: r171974
Yufeng Zhang [Tue, 5 Apr 2011 08:35:31 +0000 (08:35 +0000)]
For Yufeng Zhang.
2011-04-05 Yufeng Zhang <yufeng.zhang@arm.com>
* config/arm/arm.md (define_constants for unspec): Replace with
define_c_enum.
(define_constants for unspecv): Replace with define_c_enum.
* config/arm/neon.md (define_constants for unspec): Replace with
define_c_enum.
From-SVN: r171973