platform/upstream/gcc.git
17 years agoMakefile.in: Regenerate.
Douglas Gregor [Sat, 10 Mar 2007 02:04:13 +0000 (02:04 +0000)]
Makefile.in: Regenerate.

2007-03-09  Douglas Gregor  <doug.gregor@gmail.com>

* include/Makefile.in: Regenerate.
* include/tr1/mu_iterate.h: Remove.
* include/tr1/tuple (_Tuple_impl): New.
(tuple): Make variadic, re-implement as shell over _Tuple_impl.
(0-element tuple): Basis case.
(2-element tuple): Handle pair methods.
(__get_helper): Remove.
(tuple_element): Reimplement with variadic templates.
(tuple_size): Ditto.
(get): Ditto.
(operator==): Use variadic templates in the signature.
(operator<): Ditto.
(operator!=): Ditto.
(operator>): Ditto.
(operator<=): Ditto.
(operator>=): Ditto.
(__stripped_tuple_type): Remove; we've inlined its behavior.
(make_tuple): Reimplement with variadic templates.
(tie): Ditto.
* include/tr1/tuple_iterate.h: Remove.
* include/tr1/bind_repeat.h: Remove.
* include/tr1/ref_wrap_iterate.h: Remove.
* include/tr1/bind_iterate.h: Remove.
* include/tr1/functional (_Weak_result_type): Add variadic
partial specializations.
(result_of): Ditto.
(__invoke): Reimplement using variadic templates.
(reference_wrapper): Reimplement operator() with variadic
templates.
(_Maybe_unary_or_binary_function): New.
(_Mem_fn): Implement for member function pointers using variadic
templates.
(placeholders): Define 30 placeholders.
(_Index_tuple): New.
(_Build_index_tuple): New.
(_No_tuple_element): New.
(_Safe_tuple_element_impl): New.
(_Safe_tuple_element): New.
(_Mu): Reimplement with variadic templates, use
_Safe_tuple_element instead of tuple_element.
(_Bind): Reimplement with variadic templates and tuples.
(_Bind_result): Ditto.
(bind): Reimplement with variadic templates.
(_Function_handler): Ditto.
(function): Ditto.
* include/tr1/functional_iterate.h: Remove.
* include/tr1/repeat.h: Remove.
* include/Makefile.am: Don't install removed headers.

From-SVN: r122790

17 years agore PR c++/20599 (variadic template support)
Douglas Gregor [Sat, 10 Mar 2007 02:01:49 +0000 (02:01 +0000)]
re PR c++/20599 (variadic template support)

2007-03-09  Douglas Gregor  <doug.gregor@gmail.com>

PR c++/20599
* g++.dg/cpp0x/variadic-bind.C: New.
* g++.dg/cpp0x/variadic-function.C: New.
* g++.dg/cpp0x/variadic-mem_fn.C: New.
* g++.dg/cpp0x/variadic-tuple.C: New.
* g++.dg/cpp0x/variadic1.C: New.
* g++.dg/cpp0x/variadic2.C: New.
* g++.dg/cpp0x/variadic3.C: New.
* g++.dg/cpp0x/variadic4.C: New.
* g++.dg/cpp0x/variadic5.C: New.
* g++.dg/cpp0x/variadic6.C: New.
* g++.dg/cpp0x/variadic7.C: New.
* g++.dg/cpp0x/variadic8.C: New.
* g++.dg/cpp0x/variadic9.C: New.
* g++.dg/cpp0x/variadic10.C: New.
* g++.dg/cpp0x/variadic11.C: New.
* g++.dg/cpp0x/variadic12.C: New.
* g++.dg/cpp0x/variadic13.C: New.
* g++.dg/cpp0x/variadic14.C: New.
* g++.dg/cpp0x/variadic15.C: New.
* g++.dg/cpp0x/variadic16.C: New.
* g++.dg/cpp0x/variadic17.C: New.
* g++.dg/cpp0x/variadic18.C: New.
* g++.dg/cpp0x/variadic19.C: New.
* g++.dg/cpp0x/variadic20.C: New.
* g++.dg/cpp0x/variadic21.C: New.
* g++.dg/cpp0x/variadic22.C: New.
* g++.dg/cpp0x/variadic23.C: New.
* g++.dg/cpp0x/variadic24.C: New.
* g++.dg/cpp0x/variadic25.C: New.
* g++.dg/cpp0x/variadic26.C: New.
* g++.dg/cpp0x/variadic27.C: New.
* g++.dg/cpp0x/variadic28.C: New.
* g++.dg/cpp0x/variadic29.C: New.
* g++.dg/cpp0x/variadic30.C: New.
* g++.dg/cpp0x/variadic31.C: New.
* g++.dg/cpp0x/variadic32.C: New.
* g++.dg/cpp0x/variadic33.C: New.
* g++.dg/cpp0x/variadic34.C: New.
* g++.dg/cpp0x/variadic35.C: New.
* g++.dg/cpp0x/variadic36.C: New.
* g++.dg/cpp0x/variadic37.C: New.
* g++.dg/cpp0x/variadic38.C: New.
* g++.dg/cpp0x/variadic39.C: New.
* g++.dg/cpp0x/variadic40.C: New.
* g++.dg/cpp0x/variadic41.C: New.
* g++.dg/cpp0x/variadic42.C: New.
* g++.dg/cpp0x/variadic43.C: New.
* g++.dg/cpp0x/variadic44.C: New.
* g++.dg/cpp0x/variadic45.C: New.
* g++.dg/cpp0x/variadic46.C: New.
* g++.dg/cpp0x/variadic47.C: New.
* g++.dg/cpp0x/variadic48.C: New.
* g++.dg/cpp0x/variadic49.C: New.
* g++.dg/cpp0x/variadic50.C: New.
* g++.dg/cpp0x/variadic51.C: New.
* g++.dg/cpp0x/variadic52.C: New.
* g++.dg/cpp0x/variadic53.C: New.
* g++.dg/cpp0x/variadic54.C: New.
* g++.dg/cpp0x/variadic55.C: New.
* g++.dg/cpp0x/variadic56.C: New.
* g++.dg/cpp0x/variadic57.C: New.
* g++.dg/cpp0x/variadic58.C: New.
* g++.dg/cpp0x/variadic59.C: New.
        * g++.dg/cpp0x/variadic60.C : New.
        * g++.dg/cpp0x/variadic61.C : New.
        * g++.dg/cpp0x/variadic62.C : New.
        * g++.dg/cpp0x/variadic63.C : New.
        * g++.dg/cpp0x/variadic64.C : New.
        * g++.dg/cpp0x/variadic65.C : New.
        * g++.dg/cpp0x/variadic66.C : New.
        * g++.dg/cpp0x/variadic67.C : New.
        * g++.dg/cpp0x/variadic68.C : New.
        * g++.dg/cpp0x/variadic69.C : New.
* g++.dg/cpp0x/variadic70.C : New.
* g++.dg/cpp0x/variadic71.C : New.
* g++.dg/cpp0x/variadic72.C : New.
* g++.dg/cpp0x/variadic73.C : New.
* g++.dg/cpp0x/variadic74.C : New.
* g++.dg/cpp0x/variadic75.C : New.
* g++.dg/cpp0x/variadic-ex1.C : New.
* g++.dg/cpp0x/variadic-ex2.C : New.
* g++.dg/cpp0x/variadic-ex3.C : New.
* g++.dg/cpp0x/variadic-ex4.C : New.
* g++.dg/cpp0x/variadic-ex5.C : New.
* g++.dg/cpp0x/variadic-ex6.C : New.
* g++.dg/cpp0x/variadic-ex7.C : New.
* g++.dg/cpp0x/variadic-ex8.C : New.
* g++.dg/cpp0x/variadic-ex9.C : New.
* g++.dg/cpp0x/variadic-ex10.C : New.
* g++.dg/cpp0x/variadic-ex11.C : New.
* g++.dg/cpp0x/variadic-ex12.C : New.
* g++.dg/cpp0x/variadic-ex13.C : New.
* g++.dg/cpp0x/variadic-ex14.C : New.

From-SVN: r122789

17 years agore PR c++/20599 (variadic template support)
Douglas Gregor [Sat, 10 Mar 2007 01:58:58 +0000 (01:58 +0000)]
re PR c++/20599 (variadic template support)

2007-03-09  Douglas Gregor  <doug.gregor@gmail.com>

PR c++/20599
* typeck.c (check_return_expr): Check for bare parameter packs.
(comptypes): Compare template parameter packs and
type pack expansions.
* decl.c (grokdeclarator): Deal with the declaration of function
parameter packs.
(grokparms): Verify that the (optional) function parameter pack is
at the end of the parameter list.
(xref_basetypes): Handle pack expansions in the base class.
(cp_tree_node_structure): Handle ARGUMENT_PACK_SELECT.
* cp-tree.def (TYPE_ARGUMENT_PACK): New.
(NONTYPE_ARGUMENT_PACK): New.
(TYPE_PACK_EXPANSION): New.
(EXPR_PACK_EXPANSION): New.
(ARGUMENT_PACK_SELECT): New.
* cp-objcp-common.c (cp_tree_size): Compute size of
(NON)TYPE_ARGUMENT_PACK, (TYPE|EXPR)_PACK_EXPANSION, and
ARGUMENT_PACK_SELECT.
* error.c (dump_template_argument): Print template argument packs.
(dump_template_argument_list): Ditto.
(dump_template_parameter): Dump `...' for template type parameter
packs.
(dump_type): Dump TYPE_PACK_EXPANSION nodes.
(dump_parameters): Print function parameter packs.
(dump_template_parms): Print template argument packs.
(dump_expr): Dump EXPR_PACK_EXPANSION nodes.
(maybe_warn_variadic_templates): New.
* operators.def: Add ellipsis operator for EXPR_PACK_EXPANSION.
* tree.c (cp_walk_subtrees): Walk BASELINK, TYPE_ARGUMENT_PACK,
NONTYPE_ARGUMENT_PACK, TYPE_PACK_EXPANSION, EXPR_PACK_EXPANSION,
CAST_EXPR.
* mangle.c (write_type): Mangle TYPE_PACK_EXPANSION.
(write_template_arg): Write argument packs as separate arguments.
* cp-tree.h (struct template_parm_index_s): Add flag that
indicates that the template parameter is actually a parameter
pack.
(struct tree_argument_pack_select): New.
(enum cp_tree_node_structure_enum): Add TS_CP_ARGUMENT_PACK_SELECT.
(union lang_tree_node): Add argument_pack_select.
(FUNCTION_PARAMETER_PACK_P): New.
(PACK_EXPANSION_P): New.
(PACK_EXPANSION_PATTERN): New.
(SET_PACK_EXPANSION_PATTERN): New.
(PACK_EXPANSION_PARAMETER_PACKS): New.
(ARGUMENT_PACK_P): New.
(ARGUMENT_PACK_ARGS): New.
(SET_ARGUMENT_PACK_ARGS): New.
(ARGUMENT_PACK_INCOMPLETE_P): New.
(ARGUMENT_PACK_EXPLICIT_ARGS): New.
(TEMPLATE_PARM_PARAMETER_PACK): New.
(TEMPLATE_TYPE_PARAMETER_PACK): New.
(ARGUMENT_PACK_SELECT_FROM_PACK): New.
(ARGUMENT_PACK_SELECT_INDEX): New.
(ARGUMENT_PACK_SELECT_ARG): New.
(struct cp_declarator): Add parameter_pack_p flag.
(maybe_warn_variadic_templates): Declare.
(process_template_parm): Add bool parameter IS_PARAMETER_PACK, to
indicate a template parameter pack.
(uses_parameter_packs): Declare.
(template_parameter_pack_p): Declare.
(template_parms_variadic_p): Declare.
(make_pack_expansion): Declare.
(check_for_bare_parameter_packs): Declare.
* cxx-pretty-print.c (pp_cxx_unary_expression): Print
sizeof... expressions.
(pp_cxx_expression): Print pack expansions and non-type argument
packs.
(pp_cxx_exception_specification): Print pack expansions.
(pp_cxx_direct_declarator): Print ellipsis for parameter packs.
(pp_cxx_ctor_initializer): Print pack expansions.
(pp_cxx_type_id): Print pack expansions.
(pp_cxx_template_argument_list): Print argument packs.
(pp_cxx_template_parameter): Print ellipsis for template parameter
packs.
* pt.c (comp_template_parms): Compare template parameter packs.
(template_parameter_pack_p): New.
(template_parms_variadic_p): New.
(template_args_variadic_p): New.
(make_ith_pack_parameter_name): New.
(struct find_parameter_pack_data): New.
(find_parameter_packs_r): New.
(uses_parameter_packs): New.
(make_pack_expansion): New.
(check_for_bare_parameter_packs): New.
(expand_template_argument_pack): New.
(reduce_template_parm_level): Propagate parameter pack flag.
(process_template_parm): Add is_parameter_pack parameter to state
when the parameter is actually a parameter pack. Create template
parameter packs when is_parameter_pack is true.
(current_template_args): The argument for a template parameter
pack is an argument pack containing a single pack expansion.
(process_partial_specialization): When checking that non-type
argument expressions do not involve template parameters, loop over
the arguments in argument packs separately.
(push_template_decl_real): Check that the type of the declaration
does not have any bare parameter packs. Check that primary
templates have no more than one parameter pack, and that it comes
at the end of the template parameter list.
(convert_template_argument): Handle coercions for pack expansion
expressions by coercing the pattern then rebuilding the expansion.
(coerce_template_parms): When coercing the arguments for a
variadic template, pack "extra" arguments into an argument pack.
(coerce_template_template_parms): Cannot coerce between parameter
packs and non-pack parameters.
(template_args_equal): Compare PACK_EXPANSION_P expressions.
(comp_template_args): Expand all template arguments packs before
comparing template argument lists.
(mangle_class_name_for_template): Make argument packs as separate
template arguments.
(for_each_template_parm_r): No need to handle BASELINK.
(instantiate_class_template): Handle pack expansions in the base
class list.
(tsubst_pack_expansion): New.
(tsubst_template_args): Handle substitutions of argument packs and
pack expansion into template argument lists.
(tsubst_decl): Expand function parameter packs into separate
function parameters.
(tsubst_arg_types): Expand a type pack expansion into separate
argument types.
(tsubst_exception_specification): Handle pack expansions in
exception specifiers.
(tsubst): See through ARGUMENT_PACK_SELECT arguments when
replacing a template parameter with its argument. If we encounter
a substitution for an argument pack, just return the parameter
itself.
(tsubst_copy): sizeof(X...) returns the number of elements in
parameter pack X.  See through ARGUMENT_PACK_SELECT when the
PARM_DECL is a parameter pack.
(tsubst_expr): Expression pack expansions and argument packs
cannot show up here; they will all be handled through function
calls, sizeof, and template argument lists.
(tsubst_copy_and_build): sizeof(X...) returns the number of
elements in parameter pack X.  Handle pack expansions in TREE_LIST
and CONSTRUCTOR nodes.
(fn_type_unification): Handle "incomplete" explicit template
argument lists that specify some of the arguments for a template
parameter pack.
(type_unification_real): Unify arguments against pack expansions.
(template_parm_level_and_index): New, helper function.
(unify_pack_expansion): New.
(unify): Unify argument packs on an argument-by-argument basis,
handling variadic argument packs as well.
(more_specialized_fn): Handle unification of function parameter
packs. All things being equal, prefer non-variadic function
templates to variadic function templates.
(more_specialized_class): Prefer the variadic class template
partial specialization that binds fewer arguments to a parameter
pack.
(regenerate_decl_from_template): Expand function parameter packs
into separate parameters.
(instantiate_decl): Ditto.
(tsubst_initializer_list): Handle pack expansions for base-class
initializers.
(dependent_type_p_r): Determine dependent types in argument packs
and pack expansions.
(value_dependent_expression_p): Determine value-dependence of
non-type argument packs.
(dependent_template_arg_p): Handle argument packs.
* semantics.c (finish_cond): Check for bare parameter packs.
(finish_expr_stmt): Ditto.
(finish_for_expr): Ditto.
(finish_switch_cond): Ditto.
(finish_mem_initializers): Ditto.
* name-lookup.c (arg_assoc_type): Handle pack expansions and
argument packs.
* decl2.c (cp_build_parm_decl): Mark function parameter packs.
* parser.c (make_declarator): Declarator is not an expansion.
(make_pointer_declarator): Transfer parameter pack flag to outer
declarator.
(make_reference_declarator): Ditto.
(make_ptrmem_declarator): Ditto.
(make_call_declarator): Ditto.
(make_array_declarator): Ditto.
(cp_parser_postfix_expression): Allow pack expansion expressions
in the argument list for a call expression.
(cp_parser_parenthesized_expression_list): Add new parameter
ALLOW_EXPANSION_P. When true, parse the ellipsis to mean "expand
into separate arguments."
(cp_parser_new_placement): Allow pack expansion expressions.
(cp_parser_new_initializer): Ditto.
(cp_parser_mem_initializer_list): Allow ellipsis to create a
base-class initializer expansion.
(cp_parser_mem_initializer): Ditto.
(cp_parser_template_parameter_list): Keep track of whether the
template parameter is a template parameter pack.
(cp_parser_template_parameter): Parse the ellipsis to indicate a
template parameter pack.
(cp_parser_type_parameter): Ditto.
(cp_parser_template_argument_list): Parse the ellipsis to indicate
a pack expansion.
(cp_parser_direct_declarator): Parse the ellipsis to indicate that
this declarator is a parameter pack.
(cp_parser_parameter_declaration): The ellipsis does not end the
parameter declaration, because it might be a parameter pack. Parse
the ellipsis to indicate a parameter pack.
(cp_parser_initializer): Allow pack expansions.
(cp_parser_initializer_list): Allow ellipsis to create an
initializer expansion.
(cp_parser_base_clause): Allow ellipsis to create a base specifier
expansion.
(cp_parser_type_id_list): Allow ellipsis to create an exception
specifier expansion.
(cp_parser_attribute_list): Don't allow pack expansions.
(cp_parser_functional_cast): Allow pack expansions.
(cp_parser_sizeof_operand): Allow ellipsis following "sizeof" to
compute the length of a parameter pack.
(cp_parser_next_token_ends_template_argument_p): An ellipsis can
end a template argument.
* tree.c (cp_walk_subtrees): Walk BASELINK, TYPE_ARGUMENT_PACK,
NONTYPE_ARGUMENT_PACK, TYPE_PACK_EXPANSION, EXPR_PACK_EXPANSION,
CAST_EXPR.

From-SVN: r122788

17 years agotree-pass.h (TODO_update_smt_usage): Remove.
Diego Novillo [Sat, 10 Mar 2007 01:54:13 +0000 (01:54 +0000)]
tree-pass.h (TODO_update_smt_usage): Remove.

* tree-pass.h (TODO_update_smt_usage): Remove.
Update all users.
* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Remove
argument SOME.
Update all users.

From-SVN: r122787

17 years agopa.c (attr_length_call): Revise condition for long pc-relative branch.
John David Anglin [Sat, 10 Mar 2007 01:34:23 +0000 (01:34 +0000)]
pa.c (attr_length_call): Revise condition for long pc-relative branch.

* pa.c (attr_length_call): Revise condition for long pc-relative branch.
(output_call): Use "LONG_PIC_SDIFF" instruction sequence for long local
calls on the SOM target.  Don't use "LONG_PIC_PCREL" call sequence on
SOM target.

From-SVN: r122784

17 years agogcc.c: Document %{, in big comment at top.
Geoffrey Keating [Sat, 10 Mar 2007 01:03:36 +0000 (01:03 +0000)]
gcc.c: Document %{, in big comment at top.

* gcc.c: Document %{, in big comment at top.
(input_suffix_matches): Remove special handling for .s and
.S.
(input_spec_matches): New.
(handle_braces): Handle %{,.
(validate_switches): ',' indicates a value which is not a switch.
* config/alpha/osf.h (ASM_FINAL_SPEC): Use %{, rather than %{.
to detect assembler input.
* config/i386/sol2.h (CPP_SPEC): Likewise.
* config/rs6000/sysv4.h (ASM_SPEC): Likewise.
* config/rs6000/vxworks.h (ASM_SPEC): Likewise.
* config/rs6000/lynx.h (ASM_SPEC): Likewise.
* config/rs6000/linux64.h (ASM_SPEC_COMMON): Likewise.
* config/i386/darwin.h (DARWIN_MINVERSION_SPEC): Objective-C plus
-m64 causes deployment target to default to 10.5.
* config/rs6000/darwin.h (DARWIN_MINVERSION_SPEC): Likewise.

From-SVN: r122783

17 years agore PR target/26090 (IA-64 creates DT_TEXTREL binaries)
Richard Henderson [Sat, 10 Mar 2007 00:53:09 +0000 (16:53 -0800)]
re PR target/26090 (IA-64 creates DT_TEXTREL binaries)

        PR target/26090
* target.h (targetm.asm.out.reloc_rw_mask): New.
* target-def.h (TARGET_ASM_RELOC_RW_MASK): New.
(TARGET_ASM_OUT): Use it.
* targhooks.c, targhooks.h (default_reloc_rw_mask): New.
* varasm.c (categorize_decl_for_section): Remove shlib argument;
use the new reloc_rw_mask target hook instead.
(default_section_type_flags_1): Merge into...
(default_section_type_flags): ... here.
(decl_readonly_section_1): Merge into...
(decl_readonly_section): ... here.
(default_elf_select_section_1): Merge into...
(default_elf_select_section): ... here.
(default_unique_section_1): Merge into...
(default_unique_section): ... here.
(compute_reloc_for_rtx_1, compute_reloc_for_rtx): New.
(default_select_rtx_section): Use it.
(default_elf_select_rtx_section): Likewise.
* output.h: Update to match.
* doc/tm.texi (TARGET_ASM_RELOC_RW_MASK): New.
* config/alpha/alpha.c (alpha_elf_reloc_rw_mask): New.
(TARGET_ASM_RELOC_RW_MASK): New.
* config/i386/i386.c (x86_64_elf_select_section): Adjust call
to categorize_decl_for_section.
(x86_64_elf_unique_section): Likewise.
* config/ia64/hpux.h (TARGET_ASM_SELECT_SECTION,
TARGET_ASM_UNIQUE_SECTION, TARGET_ASM_SELECT_RTX_SECTION): Remove.
(TARGET_ASM_RELOC_RW_MASK): New.
* config/ia64/ia64.c (ia64_rwreloc_select_section,
ia64_rwreloc_unique_section, ia64_rwreloc_select_rtx_section): Remove.
(ia64_hpux_reloc_rw_mask, ia64_reloc_rw_mask): New.
(TARGET_RWRELOC): Remove.
(ia64_section_type_flags): Adjust call to default_section_type_flags.
* config/ia64/sysv4.h (TARGET_ASM_RELOC_RW_MASK): New.
* config/rs6000/rs6000.c (rs6000_elf_section_type_flags): Remove.
(rs6000_elf_select_section, rs6000_elf_unique_section): Remove.
(rs6000_elf_reloc_rw_mask, rs6000_xcoff_reloc_rw_mask): New.
(rs6000_xcoff_select_section): Use decl_readonly_section.
(rs6000_xcoff_section_type_flags): Use default_section_type_flags.
* config/rs6000/sysv4.h (TARGET_ASM_RELOC_RW_MASK): New.
(TARGET_ASM_SELECT_SECTION, TARGET_ASM_UNIQUE_SECTION): Remove.
(TARGET_SECTION_TYPE_FLAGS): Remove.
* config/rs6000/xcoff.h (TARGET_ASM_RELOC_RW_MASK): New.

From-SVN: r122781

17 years agoDaily bump.
GCC Administrator [Sat, 10 Mar 2007 00:17:59 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r122779

17 years agore PR libfortran/31099 (Runtime error on legal code using RECL)
Jerry DeLisle [Sat, 10 Mar 2007 00:03:19 +0000 (00:03 +0000)]
re PR libfortran/31099 (Runtime error on legal code using RECL)

2007-03-09  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/31099
* gfortran.dg/unformatted_recl.f90: New test.

From-SVN: r122776

17 years agofold-const.c (fold_comparison): Remove compile-time evaluation of complex constant...
Roger Sayle [Fri, 9 Mar 2007 23:09:10 +0000 (23:09 +0000)]
fold-const.c (fold_comparison): Remove compile-time evaluation of complex constant equality/inequality...

* fold-const.c (fold_comparison): Remove compile-time evaluation of
complex constant equality/inequality comparisons for here.
(fold_binary) <EQ_EXPR>: Simplify complex comparisons that are
known at compile-time or can be simplified to a scalar comparison.
(fold_relational_const): Move compile-time evaluation of complex
constant equality/inequality comparisons to here.

* gcc.dg/fold-eqcmplx-1.c: New test case.

From-SVN: r122767

17 years agosources.am, [...]: Rebuilt.
Tom Tromey [Fri, 9 Mar 2007 22:10:49 +0000 (22:10 +0000)]
sources.am, [...]: Rebuilt.

* sources.am, Makefile.in: Rebuilt.
* scripts/makemake.tcl (scan_directory): Allow service files to be
omitted.
Omit all XML-related service files.

From-SVN: r122764

17 years agore PR libfortran/31099 (Runtime error on legal code using RECL)
Jerry DeLisle [Fri, 9 Mar 2007 21:51:39 +0000 (21:51 +0000)]
re PR libfortran/31099 (Runtime error on legal code using RECL)

2007-03-09  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/31099
* io/open.c (new_unit): Initialize bytes_left and recl_subrecord.
* io/transfer.c (next_record_w): Set bytes left to record length for
sequential unformatted I/O.
(next_record_r): Ditto.
(read_block_direct): Fix test for exceeding bytes_left.

From-SVN: r122763

17 years agoAdd line that went missing in the last ChangeLog entry.
Alexandre Oliva [Fri, 9 Mar 2007 20:16:25 +0000 (20:16 +0000)]
Add line that went missing in the last ChangeLog entry.

From-SVN: r122761

17 years agore PR rtl-optimization/30643 (CSE pessimization)
Alexandre Oliva [Fri, 9 Mar 2007 20:13:10 +0000 (20:13 +0000)]
re PR rtl-optimization/30643 (CSE pessimization)

gcc/ChangeLog:
PR rtl-optimization/30643
* cse.c (cse_insn): Recompute dest_hash after insert_regs for
(fold_rtx): Recurse, like before 2006-11-03.
gcc/testsuite/ChangeLog:
PR rtl-optimization/30643
* gcc.dg/pr30643.c: New.

From-SVN: r122760

17 years ago* config/m32c/t-m32c (m32c-pragma.o): Add TM_H dependency to m32c-pragma.o
DJ Delorie [Fri, 9 Mar 2007 20:08:13 +0000 (15:08 -0500)]
* config/m32c/t-m32c (m32c-pragma.o): Add TM_H dependency to m32c-pragma.o

From-SVN: r122759

17 years agore PR tree-optimization/30375 (tree-ssa-dse incorrectly removes struct initialization)
Aldy Hernandez [Fri, 9 Mar 2007 20:05:08 +0000 (20:05 +0000)]
re PR tree-optimization/30375 (tree-ssa-dse incorrectly removes struct initialization)

        PR tree-optimization/30375
        * tree-ssa-dse.c (dse_possible_dead_store_p): Do not eliminate if
        LHS of statements is not the same.
        * testsuite/gcc.dg/tree-ssa/ssa-dse-10.c: New.

From-SVN: r122758

17 years agomips32-dspr2-type.c: New test.
Chao-ying Fu [Fri, 9 Mar 2007 19:23:22 +0000 (19:23 +0000)]
mips32-dspr2-type.c: New test.

* gcc.target/mips/mips32-dspr2-type.c: New test.
* gcc.target/mips/mips32-dspr2.c: New test.
* gcc.target/mips/dspr2-MULT.c: New test.
* gcc.target/mips/dspr2-MULTU.c: New test.
* gcc.target/mips/mips32-dsp-run.c: New test to check execution.
* gcc.target/mips/mips32-dsp.c: Change v4i8 typedef to use signed char.
Adjust some formats.

From-SVN: r122757

17 years agoextend.texi (MIPS DSP Built-in Functions): Document the DSP REV 2.
Chao-ying Fu [Fri, 9 Mar 2007 19:19:44 +0000 (19:19 +0000)]
extend.texi (MIPS DSP Built-in Functions): Document the DSP REV 2.

* doc/extend.texi (MIPS DSP Built-in Functions): Document the DSP
REV 2.
* doc/invoke.texi (-mdspr2): Document new option.
* config/mips/mips.md (UNSPEC_ABSQ_S_QB .. UNSPEC_DPSQX_SA_W_PH):
New unspec for DSP REV 2.
(<u>mulsidi3_32bit_internal): Check if !TARGET_DSPR2, because
these instructions are extended in DSP REV 2.
(mips-dspr2.md): Include.
* config/mips/mips.opt (mdspr2): New option.
* config/mips/mips.c (mips_function_type): Add MIPS_V4QI_FTYPE_V4QI,
MIPS_SI_FTYPE_SI_SI_SI, MIPS_DI_FTYPE_DI_USI_USI, MIPS_DI_FTYPE_SI_SI,
MIPS_DI_FTYPE_USI_USI, MIPS_V2HI_FTYPE_SI_SI_SI.
(override_options): Check TARGET_DSPR2 to enable MASK_DSP.
(CODE_FOR_mips_mul_ph): Define it to CODE_FOR_mulv2hi3.
(dsp_bdesc): Add DSP REV 2 builtins.  Remove 32-bit only DSP builtins.
(dsp_32only_bdesc): New description table for 32-bit only DSP REV 1
and 2 builtins.
(bdesc_map): Add one field of unsupported_target_flags.
(bdesc_arrays):  Update entries to have extra fields.  Add
dsp_32only_bdesc.
(mips_init_builtins): Initialize new function types.
Check unsupported_target_fileds to filter out builtins.
* config/mips/mips.h (TARGET_CPU_CPP_BUILTINS): Define __mips_dspr2 if
TARGET_DSPR2.
(ASM_SPEC): Pass mdspr2 to the assembler.
* config/mips/mips-dspr2.md: New file.

From-SVN: r122756

17 years agoaltivec.md: Fix vcond patterns using if_then_else.
Sa Liu [Fri, 9 Mar 2007 18:17:08 +0000 (18:17 +0000)]
altivec.md: Fix vcond patterns using if_then_else.

2007-03-09  Sa Liu  <saliu@de.ibm.com>

* config/rs6000/altivec.md: Fix vcond patterns using if_then_else.

From-SVN: r122755

17 years agoopts.c (common_handle_option): Treat -Wstrict-overflow (with no argument) like -Wstri...
Ian Lance Taylor [Fri, 9 Mar 2007 17:59:47 +0000 (17:59 +0000)]
opts.c (common_handle_option): Treat -Wstrict-overflow (with no argument) like -Wstrict-overflow=2.

* opts.c (common_handle_option): Treat -Wstrict-overflow (with no
argument) like -Wstrict-overflow=2.
* doc/invoke.texi (Warning Options): Update documentation.

From-SVN: r122753

17 years agocuintp.c (UI_To_gnu): Use fold_buildN calls instead of calling fold with the result...
Roger Sayle [Fri, 9 Mar 2007 17:09:54 +0000 (17:09 +0000)]
cuintp.c (UI_To_gnu): Use fold_buildN calls instead of calling fold with the result of buildN.

* cuintp.c (UI_To_gnu): Use fold_buildN calls instead of calling
fold with the result of buildN.
* decl.c (gnat_to_gnu_entity): Likewise.
* trans.c (Attribute_to_gnu, gnat_to_gnu, emit_check): Likewise.
* utils.c (finish_record_type, merge_sizes, max_size, convert):
Likewise.
* utils2.c (gnat_truthvalue_conversion, compare_arrays,
nonbinary_modular_operation, build_binary_op, build_unary_op,
build_cond_expr): Likewise.

* utils.c (convert): Use fold_build1 when casting values to void.
* utils2.c (gnat_truthvalue_conversion): Use build_int_cst and
fold_convert instead of convert when appropriate.

From-SVN: r122752

17 years agore PR c/17946 (wanted: warning for "a && MASK" when "a & MASK" was probably intended)
Dirk Mueller [Fri, 9 Mar 2007 16:16:35 +0000 (16:16 +0000)]
re PR c/17946 (wanted: warning for "a && MASK" when "a & MASK" was probably intended)

2007-03-09  Dirk Mueller  <dmueller@suse.de>

       PR c++/17946
       * doc/invoke.texi (-Wlogical-op): Document.
       * common.opt (-Wlogical-op): New.
       * c-common.h (warn_logical_operator): Declare.
       * c-common.c (warn_logical_operator): Define.
       * c-typeck.c (parser_build_binary_op): Call
       warn_logical_operator.

       * cp/call.c (build_new_op): Call warn_logical_operator.

       * testsuite/gcc.dg/Wlogical-op-1.c: New.
       * testsuite/g++.dg/warn/Wlogical-op-1.C: New.

From-SVN: r122751

17 years agortl.h (gen_rtx_ASM_INPUT): Use "" instead of NULL file name.
Alexandre Oliva [Fri, 9 Mar 2007 15:10:33 +0000 (15:10 +0000)]
rtl.h (gen_rtx_ASM_INPUT): Use "" instead of NULL file name.

* rtl.h (gen_rtx_ASM_INPUT): Use "" instead of NULL file name.
* final.c (final_scan_insn): Test for non-"" file name.

From-SVN: r122750

17 years agoloop.texi: Document the Omega linear constraints solver.
Sebastian Pop [Fri, 9 Mar 2007 12:39:49 +0000 (13:39 +0100)]
loop.texi: Document the Omega linear constraints solver.

* doc/loop.texi: Document the Omega linear constraints solver.
* doc/invoke.texi: Document -fcheck-data-deps, omega-max-vars,
omega-max-geqs, omega-max-eqs, omega-max-wild-cards,
omega-hash-table-size, omega-max-keys, and
omega-eliminate-redundant-constraints.
* tree-pass.h (pass_check_data_deps): Declared.
* omega.c: New.
* omega.h: New.
* timevar.def (TV_CHECK_DATA_DEPS): Declared.
* tree-ssa-loop.c (check_data_deps, gate_check_data_deps,
pass_check_data_deps): New.
* tree-data-ref.c (init_data_ref): Remove declaration.
(dump_data_dependence_relation): Dump DDR_INNER_LOOP.
(analyze_array): Renamed init_array_ref, move up initializations.
(init_data_ref): Renamed init_pointer_ref.  Moved before its call.
Removed arguments that are set to NULL.
(analyze_indirect_ref): Correct indentation, correct call to
init_pointer_ref.
(object_analysis): Call init_array_ref instead of analyze_array.
(initialize_data_dependence_relation): Initialize DDR_INNER_LOOP.
(access_functions_are_affine_or_constant_p): Use DR_ACCESS_FNS instead
of DR_ACCESS_FNS_ADDR.
(init_omega_eq_with_af, omega_extract_distance_vectors,
omega_setup_subscript, init_omega_for_ddr_1, init_omega_for_ddr,
ddr_consistent_p): New.
(compute_affine_dependence): Check consistency of ddrs when
flag_check_data_deps is passed.
(analyze_all_data_dependences): Uncomment.
(tree_check_data_deps): New.
* tree-data-ref.h: Include omega.h.
(DR_ACCESS_FNS_ADDR): Removed.
(data_dependence_relation): Add inner_loop.
(DDR_INNER_LOOP): New.
* common.opt (fcheck-data-deps): New.
* tree-flow.h (tree_check_data_deps): Declare.
* Makefile.in (TREE_DATA_REF_H): Depend on omega.h.
(OBJS-common): Depend on omega.o.
(omega.o): Define.
* passes.c (pass_check_data_deps): Scheduled.
* params.def (PARAM_OMEGA_MAX_VARS, PARAM_OMEGA_MAX_GEQS,
PARAM_OMEGA_MAX_EQS, PARAM_OMEGA_MAX_WILD_CARDS,
PARAM_OMEGA_HASH_TABLE_SIZE, PARAM_OMEGA_MAX_KEYS,
PARAM_VECT_MAX_VERSION_CHECKS,
PARAM_OMEGA_ELIMINATE_REDUNDANT_CONSTRAINTS): New.

From-SVN: r122749

17 years agore PR tree-optimization/30904 (VRP does not track values of shifts and/or bitfields?)
Richard Guenther [Fri, 9 Mar 2007 12:29:09 +0000 (12:29 +0000)]
re PR tree-optimization/30904 (VRP does not track values of shifts and/or bitfields?)

2007-03-09  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/30904
PR middle-end/31058
* tree-vrp.c (extract_range_from_binary_expr): Handle RSHIFT_EXPR
the same way as *_DIV_EXPR.

* gcc.dg/pr30904.c: Remove xfail.

From-SVN: r122748

17 years ago* recog.c (decode_asm_operands): No mixed declarations and code.
Alexandre Oliva [Fri, 9 Mar 2007 10:39:05 +0000 (10:39 +0000)]
* recog.c (decode_asm_operands): No mixed declarations and code.

From-SVN: r122746

17 years agore PR xml/30831 (Writing (transforming) XML fails)
Gary Benson [Fri, 9 Mar 2007 09:31:18 +0000 (09:31 +0000)]
re PR xml/30831 (Writing (transforming) XML fails)

2007-03-09  Gary Benson  <gbenson@redhat.com>
    Chris Burdess  <dog@gnu.org>

PR classpath/30831
* gnu/xml/dom/ls/SAXEventSink.java: Only set extended document
properties when reader is available.

Co-Authored-By: Chris Burdess <dog@gnu.org>
From-SVN: r122743

17 years agortl.def (ASM_INPUT): Add location.
Alexandre Oliva [Fri, 9 Mar 2007 07:36:43 +0000 (07:36 +0000)]
rtl.def (ASM_INPUT): Add location.

* rtl.def (ASM_INPUT): Add location.
* rtl.h (ASM_INPUT_SOURCE_LOCATION): New.
(ASM_INPUT_SOURCE_FILE, ASM_INPUT_SOURCE_LINE): New.
(decode_asm_operands): Add loc operand.
(gen_rtx_ASM_INPUT, gen_rtx_ASM_INPUT_loc): Define.
* stmt.c (expand_asm): Rename to...
(expand_asm_loc): ... this.  Add locus argument.  Pass it on to
gen_rtx_ASM_INPUT_loc.
(expand_asm_expr): Adjust.
* recog.c (decode_asm_operands): Add loc operand.
(check_asm_operands, extract_insn): Adjust.
* reload1.c (maybe_fix_stack_asms): Likewise.
* final.c (asm_insn_count): Likewise.
(final_scan_insn): Output # line before and after asm.

From-SVN: r122742

17 years agotree-ssa-structalias.c (variable_info): Remove finished_solution.
Daniel Berlin [Fri, 9 Mar 2007 07:27:44 +0000 (07:27 +0000)]
tree-ssa-structalias.c (variable_info): Remove finished_solution.

2007-03-09  Daniel Berlin  <dberlin@dberlin.org>

* tree-ssa-structalias.c (variable_info): Remove
finished_solution.
(new_var_info): Ditto.
(shared_bitmap_info_t): New structure.
(shared_bitmap_table): New variable.
(shared_bitmap_hash): New function.
(shared_bitmap_eq): Ditto
(shared_bitmap_lookup): Ditto.
(shared_bitmap_add): Ditto.
(merge_smts_into): Change to take bitmap directly.
(find_what_p_points_to): Rewrite to use shared bitmap hashtable.
(init_alias_vars): Init shared bitmap hashtable.
(delete_points_to_sets): Delete shared bitmap hashtable.
* tree-ssa-operands.c (add_virtual_operand): Partially revert the
is_aliased removal as a change that was still necessary was
deleted.

From-SVN: r122741

17 years agoi386.h (override_options): Conditionally disable x86_sahf for 64bit targets only.
Uros Bizjak [Fri, 9 Mar 2007 07:21:19 +0000 (08:21 +0100)]
i386.h (override_options): Conditionally disable x86_sahf for 64bit targets only.

        * config/i386/i386.h (override_options): Conditionally disable
x86_sahf for 64bit targets only.

From-SVN: r122740

17 years agore PR c/31072 ([4.2 Rgression] Wrong code for volatile var with initalization and...
Andrew Pinski [Fri, 9 Mar 2007 00:32:34 +0000 (00:32 +0000)]
re PR c/31072 ([4.2 Rgression] Wrong code for volatile var with initalization and optimization)

2007-03-08  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR C/31072
        * c-decl.c (merge_decls): Don't call make_var_volatile.
        * varasm.c (make_var_volatile): Remove.
        * output.h (make_var_volatile): Remove.

2007-03-08  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR C/31072
        * gcc.c-torture/execute/pr31072.c: New test.

From-SVN: r122736

17 years agoDaily bump.
GCC Administrator [Fri, 9 Mar 2007 00:17:21 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r122734

17 years agointrinsic.texi: (ICHAR) Improve internal I/O note.
Brooks Moses [Thu, 8 Mar 2007 23:12:25 +0000 (23:12 +0000)]
intrinsic.texi: (ICHAR) Improve internal I/O note.

* intrinsic.texi: (ICHAR) Improve internal I/O note.
(ACHAR): Reference it.
(CHAR): Reference it.
(IACHAR): Reference it.

From-SVN: r122729

17 years agointrinsic.texi: (LINK) Document function form.
Brooks Moses [Thu, 8 Mar 2007 22:58:50 +0000 (22:58 +0000)]
intrinsic.texi: (LINK) Document function form.

* intrinsic.texi: (LINK) Document function form.
(RENAME): Likewise.
(SYMLNK): Likewise.
(SYSTEM): Likewise.
(UNLINK): Likewise.

From-SVN: r122728

17 years agointrinsic.texi: minor typo fixes, removed prologue.
Brooks Moses [Thu, 8 Mar 2007 22:49:28 +0000 (22:49 +0000)]
intrinsic.texi: minor typo fixes, removed prologue.

* intrinsic.texi: minor typo fixes, removed prologue.
(FSEEK): moved to correct place in alphabetical order.

From-SVN: r122726

17 years agore PR tree-optimization/31085 (internal compiler error: in create_mem_ref, at tree...
Zdenek Dvorak [Thu, 8 Mar 2007 22:36:47 +0000 (23:36 +0100)]
re PR tree-optimization/31085 (internal compiler error: in create_mem_ref, at tree-ssa-address.c:606)

PR tree-optimization/31085
* tree-ssa-address.c (create_mem_ref): Fix test of type of base.

From-SVN: r122724

17 years agodecContext.c, [...]: Add libgcc-style license exception clause.
Ben Elliston [Thu, 8 Mar 2007 22:23:15 +0000 (22:23 +0000)]
decContext.c, [...]: Add libgcc-style license exception clause.

* decContext.c, decContext.h, decDPD.h, decimal128.c,
decimal128.h, decimal32.c, decimal32.h, decimal64.c, decimal64.h,
decLibrary.c, decNumber.c, decNumber.h, decNumberLocal.h,
decRound.c, decRound.h, decUtility.c, decUtility.h: Add
libgcc-style license exception clause.

From-SVN: r122722

17 years agore PR fortran/30947 (intrinsic: ALARM)
Daniel Franke [Thu, 8 Mar 2007 21:46:16 +0000 (16:46 -0500)]
re PR fortran/30947 (intrinsic: ALARM)

2007-03-08  Daniel Franke  <franke.daniel@gmail.com>

        PR fortran/30947
        * intrinsics/signal.c (alarm_sub_int): Avoid SEGFAULT with
        integer arguments.

From-SVN: r122716

17 years agore PR fortran/30947 (intrinsic: ALARM)
Daniel Franke [Thu, 8 Mar 2007 21:45:22 +0000 (16:45 -0500)]
re PR fortran/30947 (intrinsic: ALARM)

2007-03-08  Daniel Franke  <franke.daniel@gmail.com>

PR fortran/30947
* check.c (gfc_check_alarm_sub): Added check for default integer
kind of status argument.
* iresolve.c (gfc_resolve_alarm_sub): Removed conversion of
status argument.
* intrinsic.texi (ALARM): Extended documentation.

From-SVN: r122715

17 years agobuiltins.def (lceil, [...]): Mark with ATTR_CONST_NOTHROW_LIST.
Kaveh R. Ghazi [Thu, 8 Mar 2007 21:37:28 +0000 (21:37 +0000)]
builtins.def (lceil, [...]): Mark with ATTR_CONST_NOTHROW_LIST.

* builtins.def (lceil, lceilf, lceill, lfloor, lfloorf, lfloorl,
llceil, llceilf, llceill, llfloor, llfloorf, llfloorl): Mark with
ATTR_CONST_NOTHROW_LIST.

* fold-const.c (tree_expr_nonnegative_warnv_p): Handle
FIX_TRUNC_EXPR.

testsuite:
* gcc.dg/builtins-55.c: Test *lceil* and *lfloor*.
* gcc.dg/torture/builtin-attr-1.c: Likewise.
* gcc.dg/torture/builtin-convert-1.c: Likewise.  Also test *lrint* and *lround*.
* gcc.dg/torture/builtin-convert-2.c: Test ceil->lceil and floor->lfloor.
* gcc.dg/torture/builtin-convert-3.c: Test *lceil* and *lfloor*.
* gcc.dg/torture/builtin-integral-1.c: Likewise.
* gcc.dg/torture/builtin-minmax-1.c: Likewise.  Also test *lrint*
and *lround*.  Correct macro names.
* gcc.dg/torture/builtin-nonneg-1.c: Test *lceil* and *lfloor*.
* gcc.dg/torture/builtin-rounding-1.c: Likewise.

From-SVN: r122713

17 years agointrinsic.texi (GERROR, [...]): New.
Daniel Franke [Thu, 8 Mar 2007 21:30:11 +0000 (16:30 -0500)]
intrinsic.texi (GERROR, [...]): New.

2007-03-08  Daniel Franke  <franke.daniel@gmail.com>

* intrinsic.texi (GERROR, ISATTY, TTYNAM): New.
(ABORT, FLUSH, FNUM, IRAND, MALLOC, SIGNAL, SRAND): Fixed typo.
* intrinsic.c (add_subroutines): Adjusted dummy argument names
of GERROR and TTYNAM.

From-SVN: r122712

17 years agotree-ssa.texi: Remove documentation for V_MUST_DEF.
Diego Novillo [Thu, 8 Mar 2007 20:51:41 +0000 (20:51 +0000)]
tree-ssa.texi: Remove documentation for V_MUST_DEF.

* doc/tree-ssa.texi: Remove documentation for V_MUST_DEF.

From-SVN: r122710

17 years agore PR objc/31013 (objc PCH is broken on powerpc-darwin again)
Geoffrey Keating [Thu, 8 Mar 2007 19:56:37 +0000 (19:56 +0000)]
re PR objc/31013 (objc PCH is broken on powerpc-darwin again)

PR 31013
* gccspec.c (lang_specific_driver): Do nothing when NEXT_OBJC_RUNTIME
is declared.
* config/darwin.h (REAL_LIBGCC_SPEC): When -fgnu-runtime is
passed, use shared libgcc.

From-SVN: r122709

17 years agotree-eh.c (do_return_redirection): Call build_gimple_modify_stmt instead of calling...
Roger Sayle [Thu, 8 Mar 2007 19:02:51 +0000 (19:02 +0000)]
tree-eh.c (do_return_redirection): Call build_gimple_modify_stmt instead of calling build2 with a GIMPLE_MODIFY_STMT.

* tree-eh.c (do_return_redirection): Call build_gimple_modify_stmt
instead of calling build2 with a GIMPLE_MODIFY_STMT.
(honor_protect_cleanup_actions, lower_try_finally_switch):
Likewise.
* tree-if-conv.c (replace_phi_with_cond_gimple_modify_stmt,
ifc_temp_var): Likewise.
* tree-inline.c (setup_one_parameter): Likewise.
* tree-mudflap.c (mf_decl_cache_locals,
mf_build_check_statement_for): Likewise.
* tree-nested.c (init_tmp_var, save_tmp_var,
finalize_nesting_tree_1): Likewise.
* tree-outof-ssa.c (insert_copy_on_edge,
insert_backedge_copies): Likewise.
* tree-profile.c (tree_gen_edge_profiler,
tree_gen_ic_profiler): Likewise.
* tree-scalar-evolution.c (scev_const_prop): Likewise.
* tree-sra.c (sra_build_assignment): Likewise.
* tree-ssa-loop-im.c (determine_invariantness_stmt): Likewise.
* tree-ssa-math-opts.c (insert_reciprocals,
execute_cse_sincos_1): Likewise.
* tree-tailcall.c (adjust_accumulator_values,
adjust_return_value): Likewise.
* tree-vect-patterns.c (vect_pattern_recog_1): Likewise.
* tree-vect-transform.c (vect_create_data_ref_ptr,
bump_vector_ptr, vect_init_vector, get_initial_def_for_induction,
vect_create_epilog_for_reduction, vectorizable_reduction,
vectorizable_call, vectorizable_conversion,
vectorizable_assignment, vectorizable_operation,
vectorizable_type_demotion, vect_gen_widened_results_half,
vect_permute_store_chain, vectorizable_store,
vect_setup_realignment, vect_permute_load_chain,
vectorizable_load, vectorizable_condition,
vect_create_cond_for_align_checks): Likewise.
* tree-vrp.c (build_assert_expr_for): Likewise.

From-SVN: r122707

17 years agotree-vrp.c: Include "intl.h".
Ian Lance Taylor [Thu, 8 Mar 2007 17:36:05 +0000 (17:36 +0000)]
tree-vrp.c: Include "intl.h".

./: * tree-vrp.c: Include "intl.h".
(usable_range_p): New static function.
(compare_values_warnv): Don't test TYPE_OVERFLOW_UNDEFINED for
overflowed values, juts set *strict_overflow_p.
(compare_values): Only return -2 if one of the operands is not a
constant.
(compare_ranges): Call usable_range_p.
(compare_range_with_value): Likewise.
(vrp_evaluate_conditional_warnv): Rename from
vrp_evaluate_conditional.  Make static.  Change all callers.
(vrp_evaluate_conditional): New function.
(simplify_div_or_mod_using_ranges): Issue warning about reliance
on signed overflow.
(simplify_abs_using_ranges): Likewise.
(simplify_stmt_for_jump_threading): Add within_stmt parameter.
* tree-ssa-dom.c (simplify_stmt_for_jump_threading): Add
within_stmt parameter.
* tree-ssa-propagate.c (fold_predicate_in): Update call to
vrp_evaluate_conditional.
* tree-ssa-threadedge.c
(record_temporary_equivalences_from_stmts_at_dest): Change
simplify parameter to take a second tree parameter.
(simplify_control_stmt_condition): Likewise.
(thread_across_edge): Likewise.
* tree-flow.h (vrp_evaluate_conditional): Update declaration.
(thread_across_edge): Likewise.
* gcc/Makefile.in (tree-vrp.o): Depend upon intl.h.
testsuite/:
* gcc.dg/no-strict-overflow-5.c: New test.
* gcc.dg/no-strict-overflow-6.c: New test.
* gcc.dg/Wstrict-overflow-11.c: New test.
* gcc.dg/Wstrict-overflow-12.c: New test.
* gcc.dg/Wstrict-overflow-13.c: New test.
* gcc.dg/Wstrict-overflow-14.c: New test.
* gcc.dg/Wstrict-overflow-15.c: New test.

From-SVN: r122706

17 years agoi386.h (TARGET_SAHF): New define.
Uros Bizjak [Thu, 8 Mar 2007 17:21:40 +0000 (18:21 +0100)]
i386.h (TARGET_SAHF): New define.

        * config/i386/i386.h (TARGET_SAHF): New define.
        * config/i386/i386.c (ix86_tune_features) [X86_TUNE_USE_SAHF]:
        Also enable for m_K8, m_AMDFAM10 and m_CORE2.
        (x86_sahf): New global variable.
        (override_options): Add PTA_NO_SAHF to pta_flags enum.  Recode
        pta_flags masks using shifts.  Add PTA_NO_SAHF to x86_64 and
        nocona processor flags.  Set x86_sahf when PTA_NO_SAHF is not set
        in processor flags.  Do not unconditionally disable TARGET_USE_SAHF
        for 64-bit.
        (ix86_fp_comparison_sahf_cost): Return high value for !TARGET_SAHF.
        (ix86_expand_fp_compare): Check for TARGET_CMOVE or TARGET_SAHF
        when expanding fcomi/sahf based tests.
        (ix86_emit_fp_unordered_jump): Check for TARGET_SAHF when
        expanding sahf based alternative. Emit sahf based sequence when
        optimizing for code size.
        * config/i386/i386.md (x86_sahf_1): Do not disable for
        TARGET_64BIT, enable for TARGET_SAHF.

From-SVN: r122705

17 years agostrcmp-1.x: New file.
Richard Sandiford [Thu, 8 Mar 2007 16:38:54 +0000 (16:38 +0000)]
strcmp-1.x: New file.

gcc/testsuite/
* gcc.c-torture/execute/strcmp-1.x: New file.  XFAIL execution
for VxWorks kernel mode.
* gcc.c-torture/execute/strncmp-1.x: Likewise.

From-SVN: r122703

17 years agohugeval.x: XFAIL for VxWorks kernel mode.
Richard Sandiford [Thu, 8 Mar 2007 16:36:25 +0000 (16:36 +0000)]
hugeval.x: XFAIL for VxWorks kernel mode.

gcc/testsuite/
* gcc.c-torture/execute/ieee/hugeval.x: XFAIL for VxWorks kernel
mode.

From-SVN: r122702

17 years agomemmove-lib.c: Include lib/bzero.c and lib/bfill.c on VxWorks targets.
Richard Sandiford [Thu, 8 Mar 2007 16:34:43 +0000 (16:34 +0000)]
memmove-lib.c: Include lib/bzero.c and lib/bfill.c on VxWorks targets.

gcc/testsuite/
* gcc.c-torture/execute/builtins/memmove-lib.c: Include lib/bzero.c
and lib/bfill.c on VxWorks targets.
* gcc.c-torture/execute/builtins/memmove-2-lib.c: Likewise.
* gcc.c-torture/execute/builtins/strchr-lib.c: Include lib/bzero.c,
lib/bfill.c and lib/memmove.c on VxWorks targets.
* gcc.c-torture/execute/builtins/strrchr-lib.c: Likewise.
* gcc.c-torture/execute/builtins/memops-asm-lib.c: Include lib/bfill.c
on VxWorks targets.
* gcc.c-torture/execute/builtins/lib/bzero.c: New file.
* gcc.c-torture/execute/builtins/lib/bfill.c: Likewise.

From-SVN: r122701

17 years agore PR xml/30983 (DocumentBuilder.parse throws exception)
Gary Benson [Thu, 8 Mar 2007 16:33:40 +0000 (16:33 +0000)]
re PR xml/30983 (DocumentBuilder.parse throws exception)

2007-03-08  Gary Benson  <gbenson@redhat.com>

PR classpath/30983:
* gnu/xml/dom/ls/DomLSParser.java (getInputSource):
Do not use the entity resolver to resolve the top-level document.

From-SVN: r122700

17 years ago[multiple changes]
Tobias Burnus [Thu, 8 Mar 2007 13:11:54 +0000 (14:11 +0100)]
[multiple changes]

2007-07-08  Tobias Burnus  <burnus@net-b.de>

       * module.c (gfc_match_use): Support renaming of operators
       in USE statements.
       * gfortran.texi (Fortran 2003 Status): Document support of
       renaming of operators.

2007-03-08  Tobias Burnus  <burnus@net-b.de>

       * gfortran.dg/use_5.f90: New test.
       * gfortran.dg/use_6.f90: Ditto.
       * gfortran.dg/use_7.f90: Ditto.

From-SVN: r122699

17 years agore PR fortran/30973 ([4.1, 4.2 only] undetected name conflict: variables may be named...
Tobias Burnus [Thu, 8 Mar 2007 12:30:58 +0000 (13:30 +0100)]
re PR fortran/30973 ([4.1, 4.2 only] undetected name conflict: variables may be named like modules)

2007-03-08  Tobias Burnus  <burnus@net-b.de>

PR fortran/30973
* module.c (read_module): Always import module name as symbol.
(gfc_match_use): Disallow module name in the only clause of
a use statement.

2007-03-08  Tobias Burnus  <burnus@net-b.de>

PR fortran/30973
* gfortran.dg/use_4.f90: New test.
* gfortran.dg/used_dummy_types_7.f90: Correct ambiguous symbol.

From-SVN: r122696

17 years ago* sr.po: New.
Joseph Myers [Thu, 8 Mar 2007 11:48:03 +0000 (11:48 +0000)]
* sr.po: New.

From-SVN: r122693

17 years agoffi.c (flush_icache): Fix left-over from previous patch.
Alexandre Oliva [Thu, 8 Mar 2007 11:06:41 +0000 (11:06 +0000)]
ffi.c (flush_icache): Fix left-over from previous patch.

* src/powerpc/ffi.c (flush_icache): Fix left-over from previous
patch.
(ffi_prep_closure_loc): Remove unneeded casts.  Add needed ones.

From-SVN: r122692

17 years agotree-ssa-coalesce.c (fail_abnormal_edge_coalesce): Remove
Martin Michlmayr [Thu, 8 Mar 2007 09:40:15 +0000 (09:40 +0000)]
tree-ssa-coalesce.c (fail_abnormal_edge_coalesce): Remove
spurious whitespace from error message.

From-SVN: r122690

17 years agore PR fortran/31011 ([4.2 and 4.1 only] Incorrect error: parameter array sections)
Paul Thomas [Thu, 8 Mar 2007 09:09:38 +0000 (09:09 +0000)]
re PR fortran/31011 ([4.2 and 4.1 only] Incorrect error: parameter array sections)

2007-03-08 Paul Thomas <pault@gcc.gnu.org>

PR fortran/31011
* expr.c (find_array_section): Correct arithmetic for section
size.

2007-03-08 Paul Thomas <pault@gcc.gnu.org>

PR fortran/31011
* gfortran.dg/parameter_array_section_2.f90: New test.

From-SVN: r122689

17 years agore PR c++/30852 (Trouble with __builtin_offsetof and volatile)
Volker Reichelt [Thu, 8 Mar 2007 07:31:47 +0000 (07:31 +0000)]
re PR c++/30852 (Trouble with __builtin_offsetof and volatile)

PR c++/30852
* c-common.c (fold_offsetof_1): Handle COMPOUND_EXPR.

* semantics.c (finish_offsetof): Handle COMPOUND_EXPR.

* g++.dg/ext/offsetof1.C: Add cases with volatile.

From-SVN: r122686

17 years agore PR c++/30534 (ICE with invalid template argument)
Volker Reichelt [Thu, 8 Mar 2007 07:26:43 +0000 (07:26 +0000)]
re PR c++/30534 (ICE with invalid template argument)

PR c++/30534
* pt.c (any_template_arguments_need_structural_equality_p):
Robustify.

* g++.dg/template/arg5.C: New test.

From-SVN: r122685

17 years agoc-decl.c (grokdeclarator): Disable warnings for anonymous bitfields.
Alexandre Oliva [Thu, 8 Mar 2007 06:48:21 +0000 (06:48 +0000)]
c-decl.c (grokdeclarator): Disable warnings for anonymous bitfields.

gcc/ChangeLog:
* c-decl.c (grokdeclarator): Disable warnings for anonymous
bitfields.
* tree-sra.c (instantiate_element): Propagate disabled warnings
from the element itself to the created variable.
gcc/cp/ChangeLog:
* decl.c (grokdeclarator): Disable warnings for anonymous
bitfields.

From-SVN: r122684

17 years agoDaily bump.
GCC Administrator [Thu, 8 Mar 2007 00:17:26 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r122680

17 years agoconfigure: Rebuilt.
Tom Tromey [Wed, 7 Mar 2007 23:49:45 +0000 (23:49 +0000)]
configure: Rebuilt.

* configure: Rebuilt.
* configure.ac: Clear vm-tools-packages.

From-SVN: r122677

17 years ago* iresolve.c (gfc_resolve_ishftc): Correct s_kind value.
Brooks Moses [Wed, 7 Mar 2007 20:50:25 +0000 (20:50 +0000)]
* iresolve.c (gfc_resolve_ishftc): Correct s_kind value.

From-SVN: r122674

17 years agoFix date format.
Eric Botcazou [Wed, 7 Mar 2007 18:40:09 +0000 (18:40 +0000)]
Fix date format.

From-SVN: r122670

17 years agore PR target/30848 (ICE with invalid constraint in asm statement)
Richard Henderson [Wed, 7 Mar 2007 18:13:29 +0000 (10:13 -0800)]
re PR target/30848 (ICE with invalid constraint in asm statement)

        PR target/30848
        * reg-stack.c (emit_swap_insn): If a malformed asm was seen,
        silently fix up the stack in the case of a missing register.

From-SVN: r122669

17 years agoWin32Process.java: Added nested class EOFInputStream.
Mohan Embar [Wed, 7 Mar 2007 18:05:39 +0000 (18:05 +0000)]
Win32Process.java: Added nested class EOFInputStream.

* java/lang/Win32Process.java: Added nested class EOFInputStream.
* java/lang/natWin32Process.cc (ChildProcessPipe): Added DUMMY
enum and implementation.
(startProcess): Use redirect flag.
* classpath/lib/java/lang/Win32Process.class: Regenerated.
* classpath/lib/java/lang/Win32Process$EOFInputStream.class: New.
* gcj/javaprims.h: Regenerated.
* java/lang/Win32Process$EOFInputStream.h: New.

From-SVN: r122668

17 years ago* gcc.pot: Regenerate.
Joseph Myers [Wed, 7 Mar 2007 18:02:40 +0000 (18:02 +0000)]
* gcc.pot: Regenerate.

From-SVN: r122667

17 years ago* cpplib.pot: Regenerate.
Joseph Myers [Wed, 7 Mar 2007 18:01:18 +0000 (18:01 +0000)]
* cpplib.pot: Regenerate.

From-SVN: r122666

17 years agolibgcj_bc.c (JvRunMainName): Declare.
Andrew Haley [Wed, 7 Mar 2007 15:54:27 +0000 (15:54 +0000)]
libgcj_bc.c (JvRunMainName): Declare.

2007-03-07  Andrew Haley  <aph@redhat.com>

* libgcj_bc.c (JvRunMainName): Declare.

From-SVN: r122663

17 years agoorg.w3c.dom.DOMImplementationSourceList: New file.
Gary Benson [Wed, 7 Mar 2007 15:31:07 +0000 (15:31 +0000)]
org.w3c.dom.DOMImplementationSourceList: New file.

2007-03-07  Gary Benson  <gbenson@redhat.com>

* resource/META-INF/services/org.w3c.dom.DOMImplementationSourceList:
New file.

2007-03-07  Gary Benson  <gbenson@redhat.com>

* sources.am, Makefile.in: Rebuilt.

From-SVN: r122661

17 years ago* gcj/javaprims.h: Regenerated.
Mohan Embar [Wed, 7 Mar 2007 14:54:00 +0000 (14:54 +0000)]
* gcj/javaprims.h: Regenerated.

From-SVN: r122660

17 years agoconfigure: Regenerate.
Andreas Schwab [Wed, 7 Mar 2007 14:01:40 +0000 (14:01 +0000)]
configure: Regenerate.

* configure: Regenerate.

config/:
* acx.m4 (GCC_TARGET_TOOL): Expand backquotes outside
AC_MSG_RESULT.

From-SVN: r122659

17 years agolibunwind.S: Add .arch/.object_arch for armv4 builds.
Joseph Myers [Wed, 7 Mar 2007 13:04:15 +0000 (13:04 +0000)]
libunwind.S: Add .arch/.object_arch for armv4 builds.

gcc:
2007-03-07  Paul Brook  <paul@codesourcery.com>

* config/arm/libunwind.S: Add .arch/.object_arch for armv4 builds.

gcc:
2007-03-07  Joseph Myers  <joseph@codesourcery.com>

* config/arm/unwind-arm.c (struct wmmxd_regs, struct wmmxc_regs):
New.
(phase1_vrs): Use them.
(DEMAND_SAVE_WMMXD, DEMAND_SAVE_WMMXC): New.
(__gnu_Unwind_Save_WMMXD, __gnu_Unwind_Restore_WMMXD,
__gnu_Unwind_Save_WMMXC, __gnu_Unwind_Restore_WMMXC): Declare.
(restore_non_core_regs): Call __gnu_Unwind_Restore_WMMXD and
__gnu_Unwind_Restore_WMMXC if required.
(_Unwind_VRS_Pop): Implement iWMMXt support.
* config/arm/libunwind.S (gnu_Unwind_Restore_WMMXD,
gnu_Unwind_Save_WMMXD, gnu_Unwind_Restore_WMMXC,
gnu_Unwind_Save_WMMXC): Define.

gcc/testsuite:
2007-03-07  Joseph Myers  <joseph@codesourcery.com>

* g++.dg/eh/arm-iwmmxt-unwind.C: New test.

From-SVN: r122658

17 years agovxworks.h (vxworks_override_options): Declare.
Richard Sandiford [Wed, 7 Mar 2007 11:52:52 +0000 (11:52 +0000)]
vxworks.h (vxworks_override_options): Declare.

gcc/
* config/vxworks.h (vxworks_override_options): Declare.
(VXWORKS_OVERRIDE_OPTIONS): Use it.
* config/vxworks.c: Include target.h and toplev.h.
(vxworks_override_options): New function.
* config/t-vxworks (vxworks.o): Depend on $(TARGET_H) and toplev.h.

From-SVN: r122657

17 years agovar-expand1.c: Add newline at end of file.
Paolo Bonzini [Wed, 7 Mar 2007 11:45:28 +0000 (11:45 +0000)]
var-expand1.c: Add newline at end of file.

2007-03-07  Paolo Bonzini  <bonzini@gnu.org>

* gcc.dg/var-expand1.c: Add newline at end of file.

From-SVN: r122656

17 years agos390.c (override_options): Don't emit an error when -mstack-size is used without...
Andreas Krebbel [Wed, 7 Mar 2007 09:11:12 +0000 (09:11 +0000)]
s390.c (override_options): Don't emit an error when -mstack-size is used without providing -mstack-guard.

2007-03-07  Andreas Krebbel  <krebbel1@de.ibm.com>

* config/s390/s390.c (override_options): Don't emit an error when
-mstack-size is used without providing -mstack-guard.
(s390_emit_prologue): Choose stack_guard value automatically if not
provided via command line.
* doc/invoke.texi: Adjust description of -mstack-guard and -mstack-size.

From-SVN: r122655

17 years agoi386.c (output_set_got): Add a GOT initialization sequence for VxWorks PIC.
Richard Sandiford [Wed, 7 Mar 2007 09:02:14 +0000 (09:02 +0000)]
i386.c (output_set_got): Add a GOT initialization sequence for VxWorks PIC.

gcc/
* config/i386/i386.c (output_set_got): Add a GOT initialization
sequence for VxWorks PIC.
(legitimate_pic_address_disp_p): Allow UNSPEC_GOT wrappers
around labels as well as symbols.  Use gotoff_operand instead
of local_symbolic_operand.
(legitimize_pic_address): Use gotoff_operand instead of
local_symbolic_operand.  Use @GOT accesses for labels as
well as symbols.
(ix86_output_addr_diff_elt): Use PC-relative rather than
GP-relative offsets for VxWorks PIC.
(ix86_expand_move): Pass NULL_RTX to legitimize_pic_address unless
no_new_pseudos.  Check whether the returned register is op0.
* config/i386/i386.md (tablejump): Use PC-relative rather than
GP-relative offsets for VxWorks PIC.
* config/i386/predicates.md (gotoff_operand): New predicate.

From-SVN: r122654

17 years agovxworks.h (VXWORKS_GOTT_BASE, [...]): Undefine before defining.
Richard Sandiford [Wed, 7 Mar 2007 07:37:16 +0000 (07:37 +0000)]
vxworks.h (VXWORKS_GOTT_BASE, [...]): Undefine before defining.

gcc/
* config/vxworks.h (VXWORKS_GOTT_BASE, VXWORKS_GOTT_INDEX): Undefine
before defining.
* config/vxworks-dummy.h: New file.
* config/i386/i386.h: Include it.

From-SVN: r122653

17 years agoffi.h.in (ffi_closure_alloc, [...]): New.
Alexandre Oliva [Wed, 7 Mar 2007 07:27:25 +0000 (07:27 +0000)]
ffi.h.in (ffi_closure_alloc, [...]): New.

libffi/ChangeLog:
* include/ffi.h.in (ffi_closure_alloc, ffi_closure_free): New.
(ffi_prep_closure_loc): New.
(ffi_prep_raw_closure_loc): New.
(ffi_prep_java_raw_closure_loc): New.
* src/closures.c: New file.
* src/dlmalloc.c [FFI_MMAP_EXEC_WRIT] (struct malloc_segment):
Replace sflags with exec_offset.
[FFI_MMAP_EXEC_WRIT] (mmap_exec_offset, add_segment_exec_offset,
sub_segment_exec_offset): New macros.
(get_segment_flags, set_segment_flags, check_segment_merge): New
macros.
(is_mmapped_segment, is_extern_segment): Use get_segment_flags.
(add_segment, sys_alloc, create_mspace, create_mspace_with_base,
destroy_mspace): Use new macros.
(sys_alloc): Silence warning.
* Makefile.am (libffi_la_SOURCES): Add src/closures.c.
* Makefile.in: Rebuilt.
* src/prep_cif [FFI_CLOSURES] (ffi_prep_closure): Implement in
terms of ffi_prep_closure_loc.
* src/raw_api.c (ffi_prep_raw_closure_loc): Renamed and adjusted
from...
(ffi_prep_raw_closure): ... this.  Re-implement in terms of the
renamed version.
* src/java_raw_api (ffi_prep_java_raw_closure_loc): Renamed and
adjusted from...
(ffi_prep_java_raw_closure): ... this.  Re-implement in terms of
the renamed version.
* src/alpha/ffi.c (ffi_prep_closure_loc): Renamed from
(ffi_prep_closure): ... this.
* src/pa/ffi.c: Likewise.
* src/cris/ffi.c: Likewise.  Adjust.
* src/frv/ffi.c: Likewise.
* src/ia64/ffi.c: Likewise.
* src/mips/ffi.c: Likewise.
* src/powerpc/ffi_darwin.c: Likewise.
* src/s390/ffi.c: Likewise.
* src/sh/ffi.c: Likewise.
* src/sh64/ffi.c: Likewise.
* src/sparc/ffi.c: Likewise.
* src/x86/ffi64.c: Likewise.
* src/x86/ffi.c: Likewise.
(FFI_INIT_TRAMPOLINE): Adjust.
(ffi_prep_raw_closure_loc): Renamed and adjusted from...
(ffi_prep_raw_closure): ... this.
* src/powerpc/ffi.c (ffi_prep_closure_loc): Renamed from
(ffi_prep_closure): ... this.
(flush_icache): Adjust.
boehm-gc/ChangeLog:
* include/gc.h (GC_REGISTER_FINALIZER_UNREACHABLE): New.
(GC_register_finalizer_unreachable): Declare.
(GC_debug_register_finalizer_unreachable): Declare.
* finalize.c (GC_unreachable_finalize_mark_proc): New.
(GC_register_finalizer_unreachable): New.
(GC_finalize): Handle it.
* dbg_mlc.c (GC_debug_register_finalizer_unreachable): New.
(GC_debug_register_finalizer_no_order): Fix whitespace.
libjava/ChangeLog:
* include/jvm.h (_Jv_ClosureListFinalizer): New.
(_Jv_Linker::create_error_method): Adjust.
* boehm.cc (_Jv_ClosureListFinalizer): New.
* nogc.cc (_Jv_ClosureListFinalizer): New.
* java/lang/Class.h (class _Jv_ClosureList): New.
(class java::lang::Class): Declare it as friend.
* java/lang/natClass.cc (_Jv_ClosureList::releaseClosures): New.
(_Jv_ClosureList::registerClousure): New.
* include/execution.h (_Jv_ExecutionEngine): Add get_closure_list.
(_Jv_CompiledEngine::do_get_closure_list): New.
(_Jv_CompiledEngine::_Jv_CompiledEngine): Use it.
(_Jv_IndirectCompiledClass): Add closures.
(_Jv_IndirectCompiledEngine::get_aux_info): New.
(_Jv_IndirectCompiledEngine::do_allocate_field_initializers): Use
it.
(_Jv_IndirectCompiledEngine::do_get_closure_list): New.
(_Jv_IndirectCompiledEngine::_Jv_IndirectCompiledEngine): Use it.
(_Jv_InterpreterEngine::do_get_closure_list): Declare.
(_Jv_InterpreterEngine::_Jv_InterpreterEngine): Use it.
* interpret.cc (FFI_PREP_RAW_CLOSURE): Use _loc variants.
(node_closure): Add closure list.
(_Jv_InterpMethod::ncode): Add jclass argument.  Use
ffi_closure_alloc and the separate code pointer.  Register the
closure for finalization.
(_Jv_JNIMethod::ncode): Likewise.
(_Jv_InterpreterEngine::do_create_ncode): Pass klass to ncode.
(_Jv_InterpreterEngine::do_get_closure_list): New.
* include/java-interp.h (_Jv_InterpMethod::ncode): Adjust.
(_Jv_InterpClass): Add closures field.
(_Jv_JNIMethod::ncode): Adjust.
* defineclass.cc (_Jv_ClassReader::handleCodeAttribute): Adjust.
(_Jv_ClassReader::handleMethodsEnd): Likewise.
* link.cc (struct method_closure): Add closure list.
(_Jv_Linker::create_error_method): Add jclass argument.  Use
ffi_closure_alloc and the separate code pointer.  Register the
closure for finalization.
(_Jv_Linker::link_symbol_table): Remove outdated comment about
sharing of otable and atable.  Adjust.
* java/lang/reflect/natVMProxy.cc (ncode_closure): Add closure
list.
(ncode): Add jclass argument.  Use ffi_closure_alloc and the
separate code pointer.  Register the closure for finalization.
(java::lang::reflect::VMProxy::generateProxyClass): Adjust.
* testsuite/libjava.jar/TestClosureGC.java: New.
* testsuite/libjava.jar/TestClosureGC.out: New.
* testsuite/libjava.jar/TestClosureGC.xfail: New.
* testsuite/libjava.jar/TestClosureGC.jar: New.

From-SVN: r122652

17 years agodlmalloc.c: New file, imported version 2.8.3 of Doug Lea's malloc.
Alexandre Oliva [Wed, 7 Mar 2007 07:20:20 +0000 (07:20 +0000)]
dlmalloc.c: New file, imported version 2.8.3 of Doug Lea's malloc.

* src/dlmalloc.c: New file, imported version 2.8.3 of Doug
Lea's malloc.

From-SVN: r122651

17 years agodwarf2out.c (is_inlined_entry_point): New
Alexandre Oliva [Wed, 7 Mar 2007 07:18:41 +0000 (07:18 +0000)]
dwarf2out.c (is_inlined_entry_point): New

* dwarf2out.c (is_inlined_entry_point): New
(add_high_low_attributes): Emit DW_AT_entry_pc along with
DW_AT_ranges if the first subblock is the entry point.

From-SVN: r122650

17 years agoinstall.texi (mips-*-*): Change recommended binutils version.
David Daney [Wed, 7 Mar 2007 04:40:28 +0000 (04:40 +0000)]
install.texi (mips-*-*): Change recommended binutils version.

* doc/install.texi (mips-*-*): Change recommended binutils
version.

From-SVN: r122648

17 years ago* g++.old-deja/g++.jason/template31.C: Include cstdlib.
Hans-Peter Nilsson [Wed, 7 Mar 2007 03:10:26 +0000 (03:10 +0000)]
* g++.old-deja/g++.jason/template31.C: Include cstdlib.

From-SVN: r122647

17 years agoDaily bump.
GCC Administrator [Wed, 7 Mar 2007 00:17:10 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r122644

17 years agore PR fortran/30950 (intrinsic: CPU_TIME)
Daniel Franke [Tue, 6 Mar 2007 21:57:02 +0000 (16:57 -0500)]
re PR fortran/30950 (intrinsic: CPU_TIME)

2007-03-06  Daniel Franke  <franke.daniel@gmail.com>

        PR documentation/30950
        * intrinsic.texi (AND, CPU_TIME): Fix dummy argument names.
        (FREE): Fix call syntax.

From-SVN: r122640

17 years agoAbsentInformationException.java: New file.
Kyle Galloway [Tue, 6 Mar 2007 21:09:22 +0000 (21:09 +0000)]
AbsentInformationException.java: New file.

2007-03-06  Kyle Galloway  <kgallowa@redhat.com>

* classpath/gnu/classpath/jdwp/exception/AbsentInformationException.java: New file.
* classpath/lib/gnu/classpath/jdwp/exception/AbsentInformationException.class: Ditto.
* gnu/classpath/jdwp/exception/AbsentInformationException.h: Ditto.
* gnu/classpath/jdwp/natVMMethod.cc: Add CHECK_INTERP_CLASS macro.
(VMMethod::getLineTable): Use new macro.
(VMMethod::getVariableTable): Implement.
* sources.am: Regenerated.
* Makefile.in: Ditto.

From-SVN: r122639

17 years agoavr.c (avr_mcu_types): Add support for ATmega325P...
Anatoly Sokolov [Tue, 6 Mar 2007 20:06:58 +0000 (23:06 +0300)]
avr.c (avr_mcu_types): Add support for ATmega325P...

2006-02-24  Anatoly Sokolov <aesok@post.ru>

* config/avr/avr.c (avr_mcu_types): Add support for ATmega325P,
ATmega3250P, ATmega329P, ATmega3290P, AT90USB82 and AT90USB162
devices.
* config/avr/avr.h (LINK_SPEC, CRT_BINUTILS_SPECS): (Ditto.).
* config/avr/t-avr (MULTILIB_MATCHES): (Ditto.).

From-SVN: r122635

17 years agoMakefile.am (gkeytool.pod): Don't use sed -i.
Matthias Klose [Tue, 6 Mar 2007 19:12:22 +0000 (19:12 +0000)]
Makefile.am (gkeytool.pod): Don't use sed -i.

2007-03-06  Matthias Klose  <doko@ubuntu.com>

        * doc/Makefile.am(gkeytool.pod): Don't use sed -i.
        * doc/Makefile.in: Regenerate.

From-SVN: r122634

17 years agoerrors.h (warning, [...]): Mark as cold.
Jan Hubicka [Tue, 6 Mar 2007 18:57:27 +0000 (19:57 +0100)]
errors.h (warning, [...]): Mark as cold.

* errors.h (warning, error, fatal, internal_error): Mark as cold.
* predict.c (maybe_hot_bb): Cold functions are never hot; hot functions
are hot.
(probably_cold_bb_p): Cold functions are cold.
(probably_never_executed_bb_p): Cold functions are cold.
(tree_bb_level_predictions): Predict calls to cold functions as not
taken.
(compute_function_frequency): Check hot/cold attributes.
* function.h (function_frequency): Update comments.
* predict.def (PRED_COLD_FUNCTION): Predict cold function.
* c-common.c (handle_hot_attribute, handle_cold_attribute): New.
(c_common_att): Add cold and hot.

* doc/extend.texi (hot,cold attributes): Document.

* ansidecl.h (ATTRIBUTE_COLD, ATTRIBUTE_HOT): New.

From-SVN: r122632

17 years agoMakefile.in: Rebuilt.
Tom Tromey [Tue, 6 Mar 2007 18:50:14 +0000 (18:50 +0000)]
Makefile.in: Rebuilt.

libjava
* Makefile.in: Rebuilt.
* Makefile.am (bin_PROGRAMS): Added gcjh.
(gcjh_SOURCES, gcjh_LDFLAGS, gcjh_LINK, gcjh_LDADD,
gcjh_DEPENDENCIES): New variables.
libjava/classpath
* tools/gnu/classpath/tools/javah/Main.java (getName): New
method.
(getParser): Now protected.  Use getName.  Add '-v' alias for
--verbose.
(postParse): New method.
(run): Now protected.  Use postParse.
* tools/gnu/classpath/tools/javah/GcjhMain.java: New file.
* tools/Makefile.in: Rebuilt.
* tools/Makefile.am: Remove vm-tools.lst before creating it.

From-SVN: r122631

17 years agojvmti.cc (_Jv_JVMTI_GetLocalVariableTable): Fix _Jv_Malloc parameters.
Kyle Galloway [Tue, 6 Mar 2007 18:22:28 +0000 (18:22 +0000)]
jvmti.cc (_Jv_JVMTI_GetLocalVariableTable): Fix _Jv_Malloc parameters.

2007-03-06  Kyle Galloway  <kgallowa@redhat.com>
* jvmti.cc(_Jv_JVMTI_GetLocalVariableTable): Fix _Jv_Malloc parameters.
* testsuite/libjava.jvmti/interp/natgetlocalvartable.cc
(do_getlocalvartable_tests): Add Deallocate calls to free strings.

From-SVN: r122630

17 years agoPR libstdc++/28080 (partial)
Paolo Carlini [Tue, 6 Mar 2007 17:43:27 +0000 (17:43 +0000)]
PR libstdc++/28080 (partial)

2007-03-06  Paolo Carlini  <pcarlini@suse.de>

PR libstdc++/28080 (partial)
* include/bits/stl_algobase.h: Do not include <cstdlib>.
* src/localename.cc: Do it here.
* src/ctype.cc: Likewise.
* include/ext/pb_ds/detail/map_debug_base.hpp: Likewise.
* include/ext/pb_ds/exception.hpp: Likewise.
* include/ext/pb_ds/list_update_policy.hpp: Likewise.
* include/bits/stl_algo.h: Likewise.
* include/tr1/random: Likewise.
* testsuite/util/testsuite_hooks.cc: Likewise.
* testsuite/util/testsuite_abi_check.cc: Likewise.
* testsuite/util/testsuite_abi.cc: Likewise.
* testsuite/util/performance/assoc/timing/
tree_order_statistics_test.hpp: Likewise.
* config/locale/darwin/ctype_members.cc: Likewise.
* config/locale/gnu/c++locale_internal.h: Likewise.
* config/locale/generic/ctype_members.cc: Likewise.
* config/locale/generic/time_members.cc: Likewise.

* include/ext/pb_ds/detail/resize_policy/
hash_load_check_resize_trigger_imp.hpp: Qualify abort.
* testsuite/util/performance/assoc/timing/
multimap_find_test.hpp: Likewise.
* include/std/valarray: Do include <cstdlib>.
* include/tr1/hashtable: Likewise.

From-SVN: r122628

17 years agofunction.c (expand_function_end): Move blockage to just after we emit the label for...
Andrew Haley [Tue, 6 Mar 2007 17:21:37 +0000 (17:21 +0000)]
function.c (expand_function_end): Move blockage to just after we emit the label for the naked return from the...

2007-03-06  Andrew Haley  <aph@redhat.com>

        * function.c (expand_function_end): Move blockage to just after we
        emit the label for the naked return from the function.

From-SVN: r122626

17 years agoatt.h (ASM_OUTPUT_ASCII, [...]): Undefine before redefining.
Richard Sandiford [Tue, 6 Mar 2007 17:17:30 +0000 (17:17 +0000)]
att.h (ASM_OUTPUT_ASCII, [...]): Undefine before redefining.

gcc/
* config/i386/att.h (ASM_OUTPUT_ASCII, ASM_OUTPUT_SKIP): Undefine
before redefining.

From-SVN: r122625

17 years agoreg-stack.c (reg_to_stack): Large models don't allow NAN to be loaded for constant...
Jan Hubicka [Tue, 6 Mar 2007 16:38:43 +0000 (17:38 +0100)]
reg-stack.c (reg_to_stack): Large models don't allow NAN to be loaded for constant large models.

* reg-stack.c (reg_to_stack): Large models don't allow NAN to be
loaded for constant large models.  Non-large 64bit PIC can do.
* i386.h (CASE_VECTOR_MODE): Large PIC cases are 64bit.
* cmodel.h: Add LARGE PIC.
* i386.md (UNSPEC_PLTOFF): New.
(UNSPEC_SET_RIP, UNSPEC_SET_GOT_OFFSET): New; renumber other unspecs as
needed.
(*call_1_rex64): Disable for large models.
(*call_1_rex64_large): New.
(*call_value_1_rex64): Disable for large models.
(*call_value_1_rex64_large): New.
(set_rip_rex4): New.
(set_got_offset_rex64): New.
* predicates.md (constant_call_address_operand): For large model
constant calls are not possible.
* i386-protos.h (construct_plt_address): Declare.
* i386.c (override_options): Accept large models.
(ix86_expand_prologue): Expand large PIC GOT pointer load.
(legitimate_constant_p): Add new UNSPECs.
(legitimate_pic_operand_p): Likewise.
(legitimate_pic_address_disp_p): Disallow local symbols for large PICs.
(legitimize_pic_address): Do easy RIP relative way for TLS only for
non-large model.
(output_pic_addr_const): Add PLTOFF.
(ix86_output_addr_diff_elt): Output 64bit tables when needed.
(ix86_expand_move): Legitimize pic address when in PIC mode.
(construct_plt_address): New function.
(ix86_expand_call): Offload the address to register and use GOT pointer
for large model.
* invoke.texi (mcmodel=large): Update documentation.

From-SVN: r122623

17 years agoi386.c (x86_use_leave, [...]): Merge into ...
Richard Henderson [Tue, 6 Mar 2007 15:59:38 +0000 (07:59 -0800)]
i386.c (x86_use_leave, [...]): Merge into ...

* config/i386/i386.c (x86_use_leave, x86_push_memory,
x86_zero_extend_with_and, x86_movx, x86_double_with_add,
x86_use_bit_test, x86_unroll_strlen, x86_deep_branch,
x86_branch_hints, x86_use_sahf, x86_partial_reg_stall,
x86_partial_flag_reg_stall, x86_use_himode_fiop, x86_use_simode_fiop,
x86_use_mov0, x86_use_cltd, x86_read_modify_write, x86_read_modify,
x86_split_long_moves, x86_promote_QImode, x86_fast_prefix,
x86_single_stringop, x86_qimode_math, x86_promote_qi_regs,
x86_himode_math, x86_promote_hi_regs, x86_sub_esp_4, x86_sub_esp_8,
x86_add_esp_4, x86_add_esp_8, x86_integer_DFmode_moves,
x86_partial_reg_dependency, x86_memory_mismatch_stall,
x86_prologue_using_move, x86_epilogue_using_move, x86_shift1,
x86_sse_partial_reg_dependency, x86_sse_split_regs,
x86_sse_unaligned_move_optimal, x86_sse_typeless_stores,
x86_sse_load0_by_pxor, x86_use_ffreep, x86_use_incdec,
x86_inter_unit_moves, x86_ext_80387_constants, x86_four_jump_limit,
x86_schedule, x86_use_bt, x86_pad_returns): Merge into ...
(ix86_tune_features): ... here.  New array.
(x86_cmove, x86_use_xchgb, x86_cmpxchg, x86_cmpxchg8b,
x86_xadd, x86_bswap): Merge into ...
(ix86_arch_features): ... here.  New array.
(x86_3dnow_a): Remove.
(x86_accumulate_outgoing_args): Make static.
(x86_arch_always_fancy_math_387): Make static.
(ix86_tune_mask, ix86_arch_mask): Move ...
(override_options): ... to local variables here.  Apply the
appropriate mask to each element of ix86_arch_features and
ix86_tune_features.  Adjust TARGET_CMOVE and TARGET_USE_SAHF
as were done in the old macros.
(standard_80387_constant_p): Use TARGET_EXT_80387_CONSTANTS.
* config/i386/i386.h (x86_use_leave, x86_push_memory,
x86_zero_extend_with_and, x86_use_bit_test, x86_cmove, x86_deep_branch,
x86_branch_hints, x86_unroll_strlen, x86_double_with_add,
x86_partial_reg_stall, x86_movx, x86_use_himode_fiop,
x86_use_simode_fiop, x86_use_mov0, x86_use_cltd, x86_use_xchgb,
x86_read_modify_write, x86_read_modify, x86_split_long_moves,
x86_promote_QImode, x86_single_stringop, x86_fast_prefix,
x86_himode_math, x86_qimode_math, x86_promote_qi_regs,
x86_promote_hi_regs, x86_integer_DFmode_moves, x86_add_esp_4,
x86_add_esp_8, x86_sub_esp_4, x86_sub_esp_8,
x86_partial_reg_dependency, x86_memory_mismatch_stall,
x86_accumulate_outgoing_args, x86_prologue_using_move,
x86_epilogue_using_move, x86_decompose_lea,
x86_arch_always_fancy_math_387, x86_shift1,
x86_sse_partial_reg_dependency, x86_sse_split_regs,
x86_sse_unaligned_move_optimal, x86_sse_typeless_stores,
x86_sse_load0_by_pxor, x86_use_ffreep, x86_inter_unit_moves,
x86_schedule, x86_use_bt, x86_cmpxchg, x86_cmpxchg8b, x86_xadd,
x86_use_incdec, x86_pad_returns, x86_bswap,
x86_partial_flag_reg_stall): Remove.
(enum ix86_tune_indices): New.
(ix86_tune_features): New.
(TARGET_USE_LEAVE, TARGET_PUSH_MEMORY, TARGET_ZERO_EXTEND_WITH_AND,
TARGET_USE_BIT_TEST, TARGET_UNROLL_STRLEN,
TARGET_DEEP_BRANCH_PREDICTION, TARGET_BRANCH_PREDICTION_HINTS,
TARGET_DOUBLE_WITH_ADD, TARGET_USE_SAHF, TARGET_MOVX,
TARGET_PARTIAL_REG_STALL, TARGET_PARTIAL_FLAG_REG_STALL,
TARGET_USE_HIMODE_FIOP, TARGET_USE_SIMODE_FIOP, TARGET_USE_MOV0,
TARGET_USE_CLTD, TARGET_USE_XCHGB, TARGET_SPLIT_LONG_MOVES,
TARGET_READ_MODIFY_WRITE, TARGET_READ_MODIFY, TARGET_PROMOTE_QImode,
TARGET_FAST_PREFIX, TARGET_SINGLE_STRINGOP, TARGET_QIMODE_MATH,
TARGET_HIMODE_MATH, TARGET_PROMOTE_QI_REGS, TARGET_PROMOTE_HI_REGS,
TARGET_ADD_ESP_4, TARGET_ADD_ESP_8, TARGET_SUB_ESP_4,
TARGET_SUB_ESP_8, TARGET_INTEGER_DFMODE_MOVES,
TARGET_PARTIAL_REG_DEPENDENCY, TARGET_SSE_PARTIAL_REG_DEPENDENCY,
TARGET_SSE_UNALIGNED_MOVE_OPTIMAL, TARGET_SSE_SPLIT_REGS,
TARGET_SSE_TYPELESS_STORES, TARGET_SSE_LOAD0_BY_PXOR,
TARGET_MEMORY_MISMATCH_STALL, TARGET_PROLOGUE_USING_MOVE,
TARGET_EPILOGUE_USING_MOVE, TARGET_SHIFT1, TARGET_USE_FFREEP,
TARGET_INTER_UNIT_MOVES, TARGET_FOUR_JUMP_LIMIT, TARGET_SCHEDULE,
TARGET_USE_BT, TARGET_USE_INCDEC, TARGET_PAD_RETURNS,
TARGET_EXT_80387_CONSTANTS): Use it.
(enum ix86_arch_indices): New.
(ix86_arch_features): New.
(TARGET_CMOVE, TARGET_CMPXCHG, TARGET_CMPXCHG8B, TARGET_XADD,
TARGET_BSWAP): Use it.
(ix86_tune_mask, ix86_arch_mask): Remove.

From-SVN: r122621

17 years agore PR bootstrap/31020 (cannot write in </test/gnu/gcc/objdir/prev-gcc/../gcc/./include>)
Joseph Myers [Tue, 6 Mar 2007 15:50:28 +0000 (15:50 +0000)]
re PR bootstrap/31020 (cannot write in </test/gnu/gcc/objdir/prev-gcc/../gcc/./include>)

fixincludes:
* mkheaders.in: Fix headers for each multilib required.

gcc:
PR bootstrap/31020
* configure.ac (CROSS_SYSTEM_HEADER_DIR, build_system_header_dir):
Define using $${sysroot_headers_suffix}.
* configure: Regenerate.
* cppdefault.c (cpp_include_defaults): Make FIXED_INCLUDE_DIR a
multilib-suffixed directory if SYSROOT_HEADERS_SUFFIX_SPEC
defined.
* doc/invoke.texi (-print-sysroot-headers-suffix): Document.
* gcc.c (print_sysroot_headers_suffix): New.
(option_map): Include --print-sysroot-headers-suffix.
(display_help): Mention -print-sysroot-headers-suffix.
(process_command): Handle -print-sysroot-headers-suffix.
(do_spec_1): Append multilib directory to include-fixed path if
sysroot suffixes in use.
(main): Handle -print-sysroot-headers-suffix.
* Makefile.in (start.encap): Don't depend on xlimits.h
(xlimits.h): Remove.
(stmp-int-hdrs): Don't depend on xlimits.h.  Inline generation of
limits.h for each multilib in fixinc_list.
(fixinc_list, s-fixinc_list): New.
(stmp-fixinc): Depend on fixinc_list.  If not copying headers,
generate them for each multilib in fixinc_list.
(stmp-fixproto): Use include-fixed.  Run fixproto for each
multilib in fixinc_list.
(mostlyclean): Don't remove xlimits.h.
(clean): Remove include-fixed.
(real-install-headers-tar, real-install-headers-cpio,
real-install-headers-cp): Don't copy include, only include-fixed.
(install-mkheaders): Depend on fixinc_list.  Don't depend on
xlimits.h.  Save limits.h files for each multilib in fixinc_list.
Always save mkinstalldirs.  Preserve ${sysroot_headers_suffix} in
SYSTEM_HEADER_DIR setting in mkheaders.conf.

From-SVN: r122620

17 years agoregstack.c (reg_to_stack): When in 64bit PIC mode, we still can load NANs easilly.
Jan Hubicka [Tue, 6 Mar 2007 14:02:00 +0000 (15:02 +0100)]
regstack.c (reg_to_stack): When in 64bit PIC mode, we still can load NANs easilly.

* regstack.c (reg_to_stack): When in 64bit PIC mode, we still can load
NANs easilly.

From-SVN: r122619

17 years ago* intrinsic.texi: Limit column widths to a total of .85.
Brooks Moses [Tue, 6 Mar 2007 09:26:08 +0000 (09:26 +0000)]
* intrinsic.texi: Limit column widths to a total of .85.

From-SVN: r122615

17 years agoconfigure.ac: Allow tm_file to contain build-directory files.
Richard Sandiford [Tue, 6 Mar 2007 09:06:35 +0000 (09:06 +0000)]
configure.ac: Allow tm_file to contain build-directory files.

gcc/
* configure.ac: Allow tm_file to contain build-directory files.
* configure: Regenerate.
* config.gcc (m68k-*-uclinux*): Add ./sysroot-suffix.h to tm_file.
* config/m68k/t-uclinux (sysroot-suffix.h): New target.
* config/m68k/print-sysroot-suffix.sh: New file.

From-SVN: r122613

17 years agom68k.h (PIC_OFFSET_TABLE_REGNUM): Use the REGNO of pic_offset_table_rtx if reload_com...
Richard Sandiford [Tue, 6 Mar 2007 09:04:47 +0000 (09:04 +0000)]
m68k.h (PIC_OFFSET_TABLE_REGNUM): Use the REGNO of pic_offset_table_rtx if reload_completed.

gcc/
* config/m68k/m68k.h (PIC_OFFSET_TABLE_REGNUM): Use the REGNO
of pic_offset_table_rtx if reload_completed.
(CONDITIONAL_REGISTER_USAGE): Use PIC_REG instead of
PIC_OFFSET_TABLE_REGNUM.
* config/m68k/m68k.c (TARGET_ASM_CAN_OUTPUT_MI_THUNK): Always
return true.
(m68k_save_reg): Use PIC_REG instead of PIC_OFFSET_TABLE_REGNO.
(m68k_output_mi_thunk): Rewrite to use RTL.  Honor vcall_offset.

From-SVN: r122612