gcc.git
16 years agoFormatting fix.
Ben Elliston [Fri, 9 May 2008 02:57:20 +0000 (12:57 +1000)]
Formatting fix.

From-SVN: r135106

16 years agoDaily bump.
GCC Administrator [Fri, 9 May 2008 00:17:37 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r135101

16 years agocommon.opt (Wframe-larger-than=): Shorten the help message to one line.
Seongbae Park [Thu, 8 May 2008 22:57:55 +0000 (22:57 +0000)]
common.opt (Wframe-larger-than=): Shorten the help message to one line.

2008-05-08  Seongbae Park  <seongbae.park@gmail.com>
* common.opt (Wframe-larger-than=): Shorten the help message
to one line.
* doc/invoke.texi (Wframe-larger-than=): Add more description.

From-SVN: r135097

16 years agotree-complex.c (expand_complex_div_wide): Don't create CONDs that trap.
Rafael Avila de Espindola [Thu, 8 May 2008 22:16:59 +0000 (22:16 +0000)]
tree-complex.c (expand_complex_div_wide): Don't create CONDs that trap.

* tree-complex.c (expand_complex_div_wide): Don't create CONDs that
trap.
* tree-gimple.c (is_gimple_condexpr): Check that the expression doesn't
trap and that both operands are gimple values.
(canonicalize_cond_expr_cond): Use is_gimple_condexpr.
* gcc/tree-eh.c (tree_could_trap_p): Correctly detect if a comparison
is a fp operation.

* gcc/testsuite/gcc.dg/vect/vect-111.c: Rename to no-trapping-math-vect-111.c
* gcc/testsuite/gcc.dg/vect/vect-ifcvt-11.c: Rename to no-trapping-math-vect-ifcvt-11.c
* gcc/testsuite/gcc.dg/vect/vect-ifcvt-12.c: Rename to no-trapping-math-vect-ifcvt-12.c
* gcc/testsuite/gcc.dg/vect/vect-ifcvt-13.c: Rename to no-trapping-math-vect-ifcvt-13.c
* gcc/testsuite/gcc.dg/vect/vect-ifcvt-14.c: Rename to no-trapping-math-vect-ifcvt-14.c
* gcc/testsuite/gcc.dg/vect/vect-ifcvt-15.c: Rename to no-trapping-math-vect-ifcvt-15.c

From-SVN: r135093

16 years agoread-rtl.c (join_c_conditions): Return the first string if the two strings are equal.
Richard Sandiford [Thu, 8 May 2008 21:29:00 +0000 (21:29 +0000)]
read-rtl.c (join_c_conditions): Return the first string if the two strings are equal.

gcc/
* read-rtl.c (join_c_conditions): Return the first string if the
two strings are equal.

From-SVN: r135091

16 years agogensupport.h (pred_data): Add a "num_codes" field.
Richard Sandiford [Thu, 8 May 2008 21:28:27 +0000 (21:28 +0000)]
gensupport.h (pred_data): Add a "num_codes" field.

gcc/
* gensupport.h (pred_data): Add a "num_codes" field.
(add_predicate_code): Declare.
* gensupport.c (add_predicate_code): New function.
(std_pred_table): Add an "allows_const_p" field.
(std_preds): Set this field for predicates that allow RTX_CONST_OBJs.
Remove the (incomplete) list of such codes from the codes field.
(init_predicate_table): Use add_predicate_code.  Add all
RTX_CONST_OBJs if allows_const_p is true.
* genrecog.c (process_define_predicate): Use add_predicate_code.

From-SVN: r135090

16 years agotarget-supports.exp (check_effective_target_sync_int_long): Add mips*-*-*.
David Daney [Thu, 8 May 2008 17:04:12 +0000 (17:04 +0000)]
target-supports.exp (check_effective_target_sync_int_long): Add mips*-*-*.

2008-05-08  David Daney  <ddaney@avtrex.com>

* lib/target-supports.exp (check_effective_target_sync_int_long): Add
mips*-*-*.
(check_effective_target_sync_char_short): Same.

2008-05-08  David Daney  <ddaney@avtrex.com>
    Richard Sandiford  <rsandifo@nildram.co.uk>

* config/mips/mips.md (mips_expand_compare_and_swap_12): Handle
special case of constant zero operands.
* config/mips/mips.c (mips_expand_compare_and_swap_12): Zero extend
old and new values.  Special case constant zero values.
* config/mips/mips.h (MIPS_COMPARE_AND_SWAP): Skip 'sync' if compare
fails.
(MIPS_COMPARE_AND_SWAP_12): Handle constant zero operands.
(MIPS_COMPARE_AND_SWAP_12_0): New macro.

Co-Authored-By: Richard Sandiford <rsandifo@nildram.co.uk>
From-SVN: r135088

16 years agore PR target/36090 (ppc64 cacoshl miscompilation)
Paolo Bonzini [Thu, 8 May 2008 16:35:56 +0000 (16:35 +0000)]
re PR target/36090 (ppc64 cacoshl miscompilation)

2008-05-08  Paolo Bonzini  <bonzini@gnu.org>

        PR target/36090
        * simplify-rtx.c (simplify_plus_minus): Create CONST of
        similar RTX_CONST_OBJ before CONST_INT.

From-SVN: r135086

16 years ago* stmt.c (expand_stack_restore): Change sa mode if needed.
Steve Ellcey [Thu, 8 May 2008 16:22:27 +0000 (16:22 +0000)]
* stmt.c (expand_stack_restore): Change sa mode if needed.

From-SVN: r135085

16 years agopatch_tester.sh (report): Do not print "Checker: ".
Sebastian Pop [Thu, 8 May 2008 15:14:47 +0000 (15:14 +0000)]
patch_tester.sh (report): Do not print "Checker: ".

2008-05-08  Sebastian Pop  <sebastian.pop@amd.com>

* patch_tester.sh (report): Do not print "Checker: ".

From-SVN: r135083

16 years agoChangeLog: Whitespace fixes.
Uros Bizjak [Thu, 8 May 2008 13:26:02 +0000 (15:26 +0200)]
ChangeLog: Whitespace fixes.

* ChangeLog: Whitespace fixes.
* testsuite/Changelog: Ditto.

From-SVN: r135081

16 years agoi386-protos.h (ix86_return_in_memory): Adjust return type to bool.
Richard Guenther [Thu, 8 May 2008 12:25:39 +0000 (12:25 +0000)]
i386-protos.h (ix86_return_in_memory): Adjust return type to bool.

2008-05-08  Richard Guenther  <rguenther@suse.de>

* config/i386/i386-protos.h (ix86_return_in_memory): Adjust
return type to bool.
(ix86_sol10_return_in_memory): Likewise.
(ix86_i386elf_return_in_memory): Likewise.
(ix86_i386interix_return_in_memory): Likewise.
* config/i386/i386.c (ix86_return_in_memory): Likewise.
(ix86_sol10_return_in_memory): Likewise.
(ix86_i386elf_return_in_memory): Likewise.
(ix86_i386interix_return_in_memory): Likewise.

From-SVN: r135080

16 years agocalls.c (compute_argument_block_size ): Add ATTRIBUTE_UNUSED to fndecl argument.
Kai Tietz [Thu, 8 May 2008 11:32:55 +0000 (11:32 +0000)]
calls.c (compute_argument_block_size ): Add ATTRIBUTE_UNUSED to fndecl argument.

2008-05-08  Kai Tietz  <kai.tietz@onevision.com>

PR/36180
* calls.c (compute_argument_block_size ): Add ATTRIBUTE_UNUSED to
fndecl argument.
(emit_library_call_value_1): Add ATTRIBUTE_UNUSED to variable
fndecl.
* target-def.h: Check that TARGET_RETURN_IN_MEMORY isn't declared in front.

From-SVN: r135079

16 years agoutils.c (handle_pure_attribute, [...]): Rename DECL_IS_PURE to DECL_PURE_P.
Andreas Schwab [Thu, 8 May 2008 11:11:05 +0000 (11:11 +0000)]
utils.c (handle_pure_attribute, [...]): Rename DECL_IS_PURE to DECL_PURE_P.

* utils.c (handle_pure_attribute, init_gigi_decls): Rename
DECL_IS_PURE to DECL_PURE_P.

From-SVN: r135078

16 years agotree-data-ref.c (dr_analyze_alias): Do not set DR_SUBVARS.
Richard Guenther [Thu, 8 May 2008 09:27:29 +0000 (09:27 +0000)]
tree-data-ref.c (dr_analyze_alias): Do not set DR_SUBVARS.

2008-05-08  Richard Guenther  <rguenther@suse.de>

* tree-data-ref.c (dr_analyze_alias): Do not set DR_SUBVARS.
* tree-data-ref.h (struct dr_alias): Remove subvars field.
(DR_SUBVARS): Remove.
* tree-dfa.c (dump_subvars_for): Remove.
(debug_subvars_for): Likewise.
(dump_variable): Do not dump subvars.
(remove_referenced_var): Do not remove subvars.
* tree-flow-inline.h (clear_call_clobbered): SFTs no longer exist.
(lookup_subvars_for_var): Remove.
(get_subvars_for_var): Likewise.
(get_subvars_at): Likewise.
(get_first_overlapping_subvar): Likewise.
(overlap_subvar): Likewise.
* tree-flow.h (subvar_t): Remove.
(struct var_ann_d): Remove subvars field.
* tree-ssa-alias.c (mark_aliases_call_clobbered): Remove queued
argument.  Remove special handling of SFTs.
(compute_tag_properties): Likewise.
(set_initial_properties): Likewise.
(compute_call_clobbered): Likewise.
(count_mem_refs): Likewise.
(compute_memory_partitions): Likewise.
(compute_flow_insensitive_aliasing): Likewise.
(setup_pointers_and_addressables): Likewise.
(new_type_alias): Likewise.
(struct used_part): Remove.
(used_portions): Likewise.
(struct used_part_map): Likewise.
(used_part_map_eq): Likewise.
(used_part_map_hash): Likewise.
(free_used_part_map): Likewise.
(up_lookup): Likewise.
(up_insert): Likewise.
(get_or_create_used_part_for): Likewise.
(create_sft): Likewise.
(create_overlap_variables_for): Likewise.
(find_used_portions): Likewise.
(create_structure_vars): Likewise.
* tree.def (STRUCT_FIELD_TAG): Remove.
* tree.h (MTAG_P): Adjust.
(struct tree_memory_tag): Remove base_for_components and
unpartitionable flags.
(struct tree_struct_field_tag): Remove.
(SFT_PARENT_VAR): Likewise.
(SFT_OFFSET): Likewise.
(SFT_SIZE): Likewise.
(SFT_NONADDRESSABLE_P): Likewise.
(SFT_ALIAS_SET): Likewise.
(SFT_UNPARTITIONABLE_P): Likewise.
(SFT_BASE_FOR_COMPONENTS_P): Likewise.
(union tree_node): Remove sft field.
* alias.c (get_alias_set): Remove special handling of SFTs.
* print-tree.c (print_node): Remove handling of SFTs.
* tree-dump.c (dequeue_and_dump): Likewise.
* tree-into-ssa.c (mark_sym_for_renaming): Likewise.
* tree-nrv.c (dest_safe_for_nrv_p): Remove special handling of SFTs.
* tree-predcom.c (set_alias_info): Do not set subvars.
* tree-pretty-print.c (dump_generic_node): Do not handle SFTs.
* tree-ssa-loop-ivopts.c (get_ref_tag): Likewise.
* tree-ssa-operands.c (access_can_touch_variable): Likewise.
(add_vars_for_offset): Remove.
(add_virtual_operand): Remove special handling of SFTs.
(add_call_clobber_ops): Likewise.
(add_call_read_ops): Likewise.
(get_asm_expr_operands): Likewise.
(get_modify_stmt_operands): Likewise.
(get_expr_operands): Likewise.
(add_to_addressable_set): Likewise.
* tree-ssa.c (verify_ssa_name): Do not handle SFTs.
* tree-tailcall.c (suitable_for_tail_opt_p): Likewise.
* tree-vect-transform.c (vect_create_data_ref_ptr): Do not
set subvars.
* tree.c (init_ttree): Remove STRUCT_FIELD_TAG initialization.
(tree_code_size): Remove STRUCT_FIELD_TAG handling.
(tree_node_structure): Likewise.
* tree-ssa-structalias.c (set_uids_in_ptset): Remove special
handling of SFTs.
(find_what_p_points_to): Likewise.

From-SVN: r135077

16 years agopr36172.c: Replace unsigned long by __SIZE_TYPE__.
Kai Tietz [Thu, 8 May 2008 08:53:39 +0000 (08:53 +0000)]
pr36172.c: Replace unsigned long by __SIZE_TYPE__.

2008-05-08  Kai Tietz  <kai.tietz@onevision.com>

        * gcc.c-torture/compile/pr36172.c: Replace unsigned long by
        __SIZE_TYPE__.

From-SVN: r135076

16 years agofixed subti3 pattern
Sa Liu [Thu, 8 May 2008 08:45:15 +0000 (08:45 +0000)]
fixed subti3 pattern

From-SVN: r135075

16 years agotest subti3
Sa Liu [Thu, 8 May 2008 08:42:38 +0000 (08:42 +0000)]
test subti3

From-SVN: r135074

16 years agofixed subti3 pattern
Sa Liu [Thu, 8 May 2008 08:39:45 +0000 (08:39 +0000)]
fixed subti3 pattern

From-SVN: r135073

16 years agore PR middle-end/36154 (internal compiler error: in get_constraint_for_component_ref...
Richard Guenther [Thu, 8 May 2008 08:20:45 +0000 (08:20 +0000)]
re PR middle-end/36154 (internal compiler error: in get_constraint_for_component_ref, at tree-ssa-structalias.c:2727)

2008-05-08  Richard Guenther  <rguenther@suse.de>

PR middle-end/36154
* tree-ssa-structalias.c (push_fields_onto_fieldstack): Make
sure to create a representative for trailing arrays for PTA.

* gcc.c-torture/compile/pr36154.c: New testcase.

From-SVN: r135071

16 years agore PR middle-end/36172 (ice for legal code with -O3)
Richard Guenther [Thu, 8 May 2008 08:19:16 +0000 (08:19 +0000)]
re PR middle-end/36172 (ice for legal code with -O3)

2008-05-08  Richard Guenther  <rguenther@suse.de>

PR middle-end/36172
* fold-const.c (operand_equal_p): Two objects which types
differ in pointerness are not equal.

* gcc.c-torture/compile/pr36172.c: New testcase.

From-SVN: r135070

16 years ago2008-05-07 Kai Tietz <kai,tietz@onevision.com>
Kai Tietz [Thu, 8 May 2008 07:10:49 +0000 (09:10 +0200)]
2008-05-07  Kai Tietz  <kai,tietz@onevision.com>

* calls.c (compute_argument_block_size): Add argument tree fndecl.
(OUTGOING_REG_PARM_STACK_SPACE): Add function type argument.
(emit_library_call_value_1): Add new variable fndecl initialized by
NULL_TREE. It should be the decl type of orgfun, but this information
seems not to be available here, so it uses the default calling abi.
* config/arm/arm.c (arm_return_in_memory): Add fntype argumen.
* config/arm/arm.h (RETURN_IN_MEMORY): Replace RETURN_IN_MEMORY
by TARGET_RETURN_IN_MEMORY.
* config/i386/i386-interix.h: Likewise.
* config/i386/i386.h: Likewise.
* config/i386/i386elf.h: Likewise.
* config/i386/ptx4-i.h: Likewise.
* config/i386/sol2-10.h: Likewise.
* config/i386/sysv4.h: Likewise.
* config/i386/vx-common.h: Likewise.
* config/cris/cris.h: Removed #if 0 clause.
* config/arm/arm-protos.h (arm_return_in_memory): Add fntype
argument.
* config/i386/i386-protos.h (ix86_return_in_memory): Add fntype
argument.
(ix86_sol10_return_in_memory): Likewise.
(ix86_i386elf_return_in_memory): New.
(ix86_i386interix_return_in_memory): New.
* config/mt/mt-protos.h (mt_return_in_memory): New.
* config/mt/mt.c: Likewise.
* config/mt/mt.h (OUTGOING_REG_PARM_STACK_SPACE): Add FNTYPE argument.
(RETURN_IN_MEMORY):  Replace by TARGET_RETURN_IN_MEMORY.
* config/bfin/bfin.h: Likewise.
* config/bfin/bfin-protos.h (bfin_return_in_memory): Add fntype
argument.
* config/bfin/bfin.c: Likewise.
* config/pa/pa.h (OUTGOING_REG_PARM_STACK_SPACE): Add FNTYPE argument.
* config/alpha/unicosmk.h: Likewise.
* config/i386/cygming.h: Likewise.
* config/iq2000/iq2000.h: Likewise.
* config/mips/mips.h: Likewise.
* config/mn10300/mn10300.h: Likewise.
* config/rs6000/rs6000.h: Likewise.
* config/score/score.h: Likewise.
* config/spu/spu.h: Likewise.
* config/v850/v850.h: Likewise.
* defaults.h: Likewise.
* doc/tm.texi (OUTGOING_REG_PARM_STACK_SPACE): Adjust documentation.
* expr.c (emit_block_move): Adjust use of OUTGOING_REG_PARM_STACK_SPACE.
* function.c (STACK_DYNAMIC_OFFSET): Adjust use of
OUTGOING_REG_PARM_STACK_SPACE.
* targhooks.c (default_return_in_memory): Remove RETURN_IN_MEMORY.

From-SVN: r135069

16 years agoDaily bump.
GCC Administrator [Thu, 8 May 2008 00:17:37 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r135064

16 years agore PR debug/35896 (gfortran TLS symbols broken with debug info)
Jakub Jelinek [Wed, 7 May 2008 23:15:50 +0000 (01:15 +0200)]
re PR debug/35896 (gfortran TLS symbols broken with debug info)

PR debug/35896
* dwarf2out.c (dw_expand_expr, common_check): Removed.
(fortran_common): New function.
(gen_variable_die): Call fortran_common instead of common_check,
adjust for it returning tree instead of rtx.    Formatting.

From-SVN: r135060

16 years agotree-parloops.c (create_parallel_loop): Set OMP_RETURN_NOWAIT on OMP_RETURN for OMP_FOR.
Jakub Jelinek [Wed, 7 May 2008 23:14:13 +0000 (01:14 +0200)]
tree-parloops.c (create_parallel_loop): Set OMP_RETURN_NOWAIT on OMP_RETURN for OMP_FOR.

* tree-parloops.c (create_parallel_loop): Set OMP_RETURN_NOWAIT
on OMP_RETURN for OMP_FOR.

From-SVN: r135059

16 years ago[multiple changes]
Kenneth Zadeck [Wed, 7 May 2008 20:48:07 +0000 (20:48 +0000)]
[multiple changes]

2008-05-07 Kenneth Zadeck <zadeck@naturalbridge.com>

        PATCH rtl/7335
        PATCH rtl/33826
        * see.c (see_copy_insn): Copy new pure const attributes for new
        call.
        * c-decl.c (merge_decls): Ditto.
        * postreload.c (record_opr_changes): Change CONST_OR_PURE_CALL_P
        to RTL_CONST_OR_PURE_CALL_P.
        * tree.c (define_local_buitin): Rename DECL_IS_PURE to
        DECL_PURE_P.  Initialized DECL_LOOPING_CONST_PURE.
        (process_call_operands): Set tree_side_effects properly.
        * tree.h (TREE_READONLY_DECL_P): Removed.
        (DECL_IS_PURE): Renamed to DECL_PURE_P.
        (DECL_LOOPING_OR_CONST_P): New macro.
        (struct tree_function_decl): Added looping_const_or_pure_p.
        (ECF_*) Renumbered.
        (ECF_LOOPING_OR_CONST_P): New macro,
        * rtlanal.c (pure_const_p): Removed.
        * builtins.c (expand_builtin): Rename DECL_IS_PURE to DECL_PURE_P.
        * reorg.c (delete_prior_computation) Changed CONST_OR_PURE_CALL_P
        to RTL_CONST_CALL_P.
        * ipa-pure-const.c (pure_const_state_e): Added looping field.
        (check_decl, check_tree, check_call, scan_function): Initialize
        looping.
        (analyze_function): Rename DECL_IS_PURE to DECL_PURE_P.
        (static_execute): Set looping true for recursive functions.
        Undo setting state to IPA_NEITHER for recursive functions.
        * cse.c (cse_insn):
        * ifcvt.c (noce_can_store_speculate_p): Changed
        CONST_OR_PURE_CALL_P and pure_call_p to RTL_CONST_CALL_P or
        RTL_CONST_OR_PURE_CALL_P.
        * dse.c (scan_insn): Ditto.
        * local-alloc.c (validate_equiv_mem, memref_used_between_p): Ditto.
        * gcse.c (oprs_not_seen_p) Changed CONST_OR_PURE_CALL_P to
        RTL_CONST_OR_PURE_CALL_P.
        (store_killed_in_insn): Changed CONST_OR_PURE_CALL_P and
        pure_call_p to RTL_CONST_CALL_P.
        * gimplify.c (gimplify_call_expr): Clear side effects for
        non-looping pure and constant calls.
        * calls.c (emit_call_1): Set rtl flags from ecf flags.
        (flags_from_decl_or_type): Set ecf flags from decl flags.
        (initialize_argument_information): Turn off
        ECF_LOOPING_CONST_OR_PURE when turning off ECF_CONST.
        Change const to pure if callee_copies is true rather than just
        turning off const.
        (expand_call): Turn off ECF_LOOPING_PURE_CONST_CALL and remove old
        way of marking pure calls.
        (emit_library_call_value_1): Turn off ECF_LOOPING_PURE_CONST_CALL.
        Remove hack that was supposed to fix pr7335 and remove old
        way of marking pure calls.
        * emit-rtl.c (emit_copy_of_insn_after): Copy RTL_CONST_CALL_P,
        RTL_PURE_CALL_P, RTL_LOOPING_CONST_OR_PURE_CALL_P.
        * cselib.c (cselib_process_insn): Changed CONST_OR_PURE_CALL_P to
        RTL_CONST_OR_PURE_CALL_P.
        * tree-ssa-pre.c (can_value_number_call): Fixed spacing.
        * loop-invariant.c (find_exits, find_invariant_bb): Changed
        CONST_OR_PURE_CALL_P to RTL_CONST_OR_PURE_CALL_P.
        * sched-deps.c (schedule_analyze): Ditto.
        * rtl.h (struct rtx_def): Use call field, unchanging field, and
        return_val field of calls to represent pure and const function
        info.
        (CONST_OR_PURE_CALL_P): Deleted macro.
        (RTL_CONST_CALL_P, RTL_PURE_CALL_P,
        RTL_LOOPING_CONST_OR_PURE_CALL_P, RTL_CONST_OR_PURE_P): New macros.
        * tree-inline.c (copy_body_r): Changed TREE_READONLY_DECL_P to
        TREE_READONLY.
        * tree-optimize.c (execute_fixup_cfg): Added test for
        ECF_LOOPING_CONST_OR_PURE.
        * c-common.c (handle_pure_attribute): Changed DECL_IS_PURE to
        DECL_PURE_P.
        * tree-cfg.c (update_call_expr_flags): Do not clear tree side
        effects for looping pure or const calls.
        (verify_gimple_expr): Added verification code.
        * config/alpha/alpha.c (alpha_legitimize_address,
        alpha_emit_xfloating_libcall): Changed CONST_OR_PURE_CALL_P to
        RTL_CONST_CALL_P.
        * config/s390/s390.c (s390_emit_tls_call_insn): Ditto.
        * config/rs6000/rs6000.c (rs6000_legitimize_tls_address): Ditto.
        * config/mips/mips.c (mips_call_tls_get_addr): Ditto.
        * cfgrtl.c (need_fake_edge_p): Changed CONST_OR_PURE_CALL_P to
        RTL_CONST_OR_PURE_CALL_P.
        * dce.c (deletable_insn_p): Allow non looping, non sibling, pure
        and const calls to be deleted.

java:
2008-05-07  Kenneth Zadeck <zadeck@naturalbridge.com>

* decl.c (java_init_decl_processing): Change DECL_IS_PURE to
DECL_PURE_P.

cp:
2008-05-07 Kenneth Zadeck <zadeck@naturalbridge.com>

 * decl.c (duplicate_decls): Merge in DECL_PURE_P, TREE_READONLY,
 DECL_LOOPING_CONST_OR_PURE_P attributes.
 * rtti.c (build_dynamic_cast_1): Rename DECL_IS_PURE to
 DECL_PURE_P.

gfortran:
2008-05-07 Kenneth Zadeck <zadeck@naturalbridge.com>

 * trans-decl.c (gfc_get_extern_function_decl, build_function_decl):
 Rename DECL_IS_PURE to DECL_PURE_P.

From-SVN: r135053

16 years ago* sv.po: Update.
Joseph Myers [Wed, 7 May 2008 20:43:26 +0000 (21:43 +0100)]
* sv.po: Update.

From-SVN: r135049

16 years agoi386.c (struct_builtin_description): Use CODE_FOR_sse_loadhps_exp.
Uros Bizjak [Wed, 7 May 2008 19:08:53 +0000 (21:08 +0200)]
i386.c (struct_builtin_description): Use CODE_FOR_sse_loadhps_exp.

        * config/i386/i386.c (struct_builtin_description)
        [IX86_BUILTIN_LOADHPS]: Use CODE_FOR_sse_loadhps_exp.
        [IX86_BUILTIN_STOREHPS]: Use CODE_FOR_sse_loadlps_exp.
        [IX86_BUILTIN_LOADHPD]: Use CODE_FOR_sse2_loadhpd_exp.
        [IX86_BUILTIN_LOADLPD]: Use CODE_FOR_sse2_loadlpd_exp.
        [IX86_BUILTIN_MOVHLPS]: Use CODE_FOR_sse_movhlps_exp.
        [IX86_BUILTIN_MOVLHPS]: Use CODE_FOR_sse_movlhps_exp.
        [IX86_BUILTIN_UNPCKHPD]: Use FOR_sse2_unpckhpd_exp.
        [IX86_BUILTIN_UNPCKLPD]: Use FOR_sse2_unpcklpd_exp.

From-SVN: r135047

16 years agore PR target/35714 (x86 poor code with pmaddwd)
Uros Bizjak [Wed, 7 May 2008 13:12:02 +0000 (15:12 +0200)]
re PR target/35714 (x86 poor code with pmaddwd)

PR target/35714
* config/i386/mmx.md (mmx_subv2sf3): New expander.
(*mmx_subv2sf3): Rename from mmx_subv2sf3 insn pattern.
(*mmx_eqv2sf3): Rename from mmx_eqv2sf3 insn pattern.
(mmx_eqv2sf3): New expander.  Use ix86_fixup_binary_operands_no_copy
to handle nonimmediate operands.
(*mmx_paddwd): Rename from mmx_paddwd insn pattern.
(mmx_paddwd): New expander.  Use ix86_fixup_binary_operands_no_copy
to handle nonimmediate operands.
(*mmx_pmulhrwv4hi3): Rename from mmx_pmulhrwv4hi3 insn pattern.
(mmx_pmulhrwv4hi3): New expander.  Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*sse2_umulv1siv1di3): Rename from sse2_umulv1siv1di3 insn pattern.
(sse2_umulv1siv1di3): New expander.  Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*mmx_eq<mode>3): Rename from mmx_eq<mode>3 insn pattern.
(mmx_eq<mode>3): New expander.  Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*mmx_uavgv8qi3): Rename from mmx_uavgv8qi3 insn pattern.
(mmx_uavgv8qi3): New expander.  Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*mmx_uavgv4hi3): Rename from mmx_uavgv4hi3 insn pattern.
(mmx_uavgv4hi3): New expander.  Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.

* config/i386/sse.md
(*sse_movhlps): Rename from sse_movhlps insn pattern.
(sse_movhlps): New expander.  Use ix86_fixup_binary_operands
to handle nonimmediate operands.
(*sse_movlhps): Rename from sse_movlhps insn pattern.
(sse_movlhps): New expander.  Use ix86_fixup_binary_operands
to handle nonimmediate operands.
(*sse_loadhps): Rename from sse_loadhps insn pattern.
(sse_loadhps): New expander.  Use ix86_fixup_binary_operands
to handle nonimmediate operands.
(*sse_loadlps): Rename from sse_loadlps insn pattern.
(sse_loadlps): New expander.  Use ix86_fixup_binary_operands
to handle nonimmediate operands.
(*sse2_unpckhpd): Rename from sse2_unpckhpd insn pattern.
(sse2_unpckhpd): New expander.  Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*sse2_unpcklpd): Rename from sse2_unpcklpd insn pattern.
(sse2_unpcklpd): New expander.  Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*sse_loadhpd): Rename from sse_loadhpd insn pattern.
(sse_loadhpd): New expander.  Use ix86_fixup_binary_operands
to handle nonimmediate operands.
(*sse_loadlpd): Rename from sse_loadlpd insn pattern.
(sse_loadlpd): New expander.  Use ix86_fixup_binary_operands
to handle nonimmediate operands.
(*sse2_<plusminus_insn><mode>3): Rename from
sse2_<plusminus_insn><mode>3 insn pattern.
(sse2_<plusminus_insn><mode>3): New expander.  Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*sse2_umulv2siv2di3): Rename from sse2_umulv2siv2di3 insn pattern.
(sse2_umulv2siv2di3): New expander.  Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*sse4_1_mulv2siv2di3): Rename from sse4_1_mulv2siv2di3 insn pattern.
(sse4_1_mulv2siv2di3): New expander.  Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*sse2_pmaddwd): Rename from sse2_pmaddwd insn pattern.
(sse2_pmaddwd): New expander.  Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*sse2_eq<mode>3): Rename from sse2_eq<mode>3 insn pattern.
(sse2_eq<mode>3): New expander.  Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*sse4_1_eqv2di3): Rename from sse4_1_eqv2di3 insn pattern.
(sse4_1_eqv2di3): New expander.  Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*sse2_uavgv16qi3): Rename from sse2_uavgv16qi3 insn pattern.
(sse2_uavgv16qi3): New expander.  Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*sse2_uavgv16qi3): Rename from sse2_uavgv16qi3 insn pattern.
(sse2_uavgv16qi3): New expander.  Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*sse2_uavgv8hi3): Rename from sse2_uavgv8hi3 insn pattern.
(sse2_uavgv8hi3): New expander.  Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*ssse3_pmulhrswv8hi3): Rename from ssse3_pmulhrswv8hi3 insn pattern.
(ssse3_pmulhrswv8hi3): New expander.  Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*ssse3_pmulhrswv4hi3): Rename from ssse3_pmulhrswv4hi3 insn pattern.
(ssse3_pmulhrswv4hi3): New expander.  Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.

(<sse>_vm<plusminus_insn><mode>3): Do not use ix86_binary_operator_ok.
(<sse>_vmmul<mode>3): Ditto.
(divv4sf3): Do not use ix86_fixup_binary_operands_no_copy.
(divv2df3): Ditto.
(ssse3_pmaddubsw128): Use register_operand for operand 1.
(ssse3_pmaddubsw): Ditto.

* config/i386/sse.md (ix86_fixup_binary_operands): Assert that src1
and src2 must have the same mode when swapped.
(ix86_expand_binop_builtin): Do not use ix86_fixup_binary_operands
and ix86_binary_operator_ok.  Do not force operands in registers
when optimizing.

testsuite/ChangeLog:

PR target/35714
* gcc.target/i386/pr35714.c: New test.

From-SVN: r135041

16 years agoquicksort.h: (parallel_sort_qs_conquer) Explicitly request number of threads in the...
Johannes Singler [Wed, 7 May 2008 11:14:05 +0000 (11:14 +0000)]
quicksort.h: (parallel_sort_qs_conquer) Explicitly request number of threads in the parallel...

2008-05-07  Johannes Singler  <singler@ira.uka.de>

       * include/parallel/quicksort.h:
       (parallel_sort_qs_conquer) Explicitly request number of threads
       in the parallel clause.
       (parallel_sort_qs) Remove setting the number of threads globally.

From-SVN: r135038

16 years agocgraph.c (dump_cgraph_node): Update.
Jan Hubicka [Wed, 7 May 2008 09:44:30 +0000 (11:44 +0200)]
cgraph.c (dump_cgraph_node): Update.

* cgraph.c (dump_cgraph_node): Update.
* cgraph.h (cgraph_local_info): Break out inline summary.
* cgraphunit.c (cgraph_process_new_functions): Use inliner analysis
hook.
* ipa-inline (inline_summary): New accestor function.
(cgraph_clone_inlined_nodes, cgraph_check_inline_limits,
cgraph_decide_inlining, compute_inline_parameters): Update.
* ipa.c (cgraph_remove_unreachable_nodes): Remove statistics.

From-SVN: r135037

16 years agoCleanup ColdFire scheduling support and add V4 pipeline model.
Maxim Kuvyrkov [Wed, 7 May 2008 08:09:27 +0000 (08:09 +0000)]
Cleanup ColdFire scheduling support and add V4 pipeline model.

* config/m68k/m68k.md (UNSPEC_TIE): New constant.
(define_attr cpu): Add cfv4 value.
(define_attr type, define_attr type1): Merge into a single 'type'
attribute.  Update all uses.
(define_attr opx_type, define_attr opy_type, define_attr opx_access):
Rearrange and update.  Rename value 'reg' to 'Rn', add value 'FPn'.
Update all uses.
(define_attr opx_mem, define_attr opy_mem): Remove.
(define_attr op_mem): Clean up, update comment.
(define_attr size): Use specific values instead of general int.
(define_attr guess, define_attr split): Remove.  Update all uses.
(movdf_internal, tstsi_internal, tsthi_internal, tstqi_internal,
tst<mode>_68881, pushexthisi_const, movsi_const0_68000_10,
movsi_const0_68040_60, movsi_const0, movsi_cf, movstrictqi_cf,
zero_extendhisi2_cf, zero_extendqisi2_cfv4, cfv4_extendhisi2,
68k_extendhisi2, extendqihi2, cfv4_extendqisi2, 68k_extendqisi2,
floatsi<mode>2_68881, ftrunc<mode>2_68881, ftrunc<mode>2_cf,
fix<mode>qi2_68881, fix<mode>hi2_68881, fix<mode>si2_68881,
adddi_dishl32, addsi3_5200, add<mode>3_floatsi_68881,
add<mode>3_floathi_68881, add<mode>3_floatqi_68881,
add<mode>3_68881, add<mode>3_cf, subdi_dishl32, subsi3,
sub<mode>3_floatsi_68881, sub<mode>3_floathi_68881,
sub<mode>3_floatqi_68881, sub<mode>3_68881, sub<mode>3_cf,
mulhi3, mulhisi3, mulhisisi3_s, mulsi3_68020, mulsi3_cf,
umulhisi3, mulhisisi3_z, mul<mode>3_floatsi_68881,
mul<mode>3_floathi_68881, mul<mode>3_floatqi_68881, fmul<mode>3_cf,
div<mode>3_cf, sqrt<mode>2_cf, abs<mode>2_cf, clzsi2,
one_cmplsi2_5200, subreghi1ashrdi_const32, ashrsi3, lshrsi3,
bsetmemqi, bsetmemqi_ext, bclrmemqi, bclrmemqi_ext,
beq, bne, bgt, blt, bordered, bunordered, buneq, bunge, bungt, bunle,
bunlt, bltgt, tablejump_internal, call, non_symbolic_call_value,
symbolic_call_value_jsr, symbolic_call_value_bsr, link):
Update or set attributes.
(stack_tie): New fake instruction.

* config/m68k/m68k.h (TUNE_CFV4): New macro.
(m68k_sched_attr_size): Update declaration.
(m68k_sched_attr_type2): Remove.
(m68k_sched_address_bypass_p, m68k_sched_indexed_address_bypass_p):
Declare new bypass predicates.

* config/m68k/m68k.c (m68k_sched_issue_rate,
m68k_sched_first_cycle_multipass_dfa_lookahead): Declare hook
implementations.
(TARGET_SCHED_ISSUE_RATE,
TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD): Override hooks.
(override_options): Handle scheduling for ColdFire V4 core.
(m68k_expand_prologue): Emit stack_tie.
(enum attr_op_type): Split value 'OP_TYPE_REG' to 'OP_TYPE_RN' and
'OP_TYPE_FPN'.  Update all uses.
(sched_guess_p): Remove.
(sched_address_type): Handle symbolic addresses.
(sched_get_operand): New static function.
(sched_operand_type): Merge into sched_attr_op_type.
(sched_attr_op_type): Handle FP registers, handle quick constants,
update.
(m68k_sched_attr_opx_type, m68k_sched_attr_opy_type): Update.
(m68k_sched_attr_size): Update.  Move logic to ...
(sched_get_attr_size_int): New static function.
(sched_get_opxy_mem_type): New static function.
(m68k_sched_attr_op_mem): Update.
(m68k_sched_attr_type2): Remove.
(sched_cfv4_bypass_data): New static variable.
(m68k_sched_adjust_cost): Handle ColdFire V4 bypass.
(m68k_sched_issue_rate): Implement scheduler hook.
(struct _sched_ib: enabled_p): New field.
(m68k_sched_variable_issue): Update.  Handle V4.
(SCHED_DUMP_TODO, SCHED_DUMP_DONE, SCHED_DUMP_NOTHING,
sched_dump_class_func_t, sched_dump_split_class,
sched_dump_dfa_guess_unit_code, sched_dump_dfa_state,
sched_dump_dfa_class, m68k_sched_dump): Remove.
(m68k_sched_first_cycle_multipass_dfa_lookahead): Implement scheduler
hook.
(m68k_sched_init_global): Remove statisctics dumping, introduce
sanity check that all instructions have pipeline reservations.  Handle
ColdFire V4 core.
(m68k_sched_dfa_pre_advance_cycle, m68k_sched_dfa_post_advance_cycle):
Handle ColdFire V4 core.
(sched_mem_operand_p, sched_get_reg_operand, sched_get_mem_operand):
New static functions.
(m68k_sched_address_bypass_p): New bypass predicate.
(sched_get_indexed_address_scale): New static function.
(m68k_sched_indexed_address_bypass_p): New bypass predicate.

* cf.md: Update comments.
(define_attr type2): Remove.  Use 'type' attribute instead.
Update all uses.
(cf_ib): Rename to cfv123_ib.  Update all uses.
(cf_oep): Rename to cfv123_oep.  Update all uses.
(cf_chr): Rename to cfv123_chr.  Update all uses.
(cf_mem): Rename to cfv123_mem.  Update all uses.
(cf_mac): Move to more appropriate place.
(cfv123_guess): New automaton and cpu_unit.
(cfv123_*, cfv12_*, cfv1_*, cfv2_*, cfv3_*): Use type attribute.
Update uses of 'size' attribute.  Handle before reload scheduling.
(cfv123_guess): New dummy reservation for unhandled instructions.
(cfv4_*): Pipeline description of ColdFire V4 core.
(ignore): New reservation to handle 'ignore' type.

From-SVN: r135033

16 years agore PR middle-end/36013 (Wrong code involving restricted pointers to non-restricted...
Ian Lance Taylor [Wed, 7 May 2008 07:45:17 +0000 (09:45 +0200)]
re PR middle-end/36013 (Wrong code involving restricted pointers to non-restricted pointers)

PR middle-end/36013
* gimplify.c (find_single_pointer_decl_1): Don't look through
indirections.
(find_single_pointer_decl): Adjust comments.

* gcc.c-torture/execute/20080506-2.c: New test.

From-SVN: r135029

16 years agore PR middle-end/36137 (gcc can't do math)
Jakub Jelinek [Wed, 7 May 2008 07:40:01 +0000 (09:40 +0200)]
re PR middle-end/36137 (gcc can't do math)

PR middle-end/36137
* fold-const.c (fold_binary): Use STRIP_SIGN_NOPS instead of
STRIP_NOPS on arguments even for MIN_EXPR and MAX_EXPR.

* gcc.c-torture/execute/20080506-1.c: New test.

From-SVN: r135028

16 years agore PR middle-end/36106 (#pragma omp atomic issues with floating point types)
Jakub Jelinek [Wed, 7 May 2008 07:28:14 +0000 (09:28 +0200)]
re PR middle-end/36106 (#pragma omp atomic issues with floating point types)

PR middle-end/36106
* omp-low.c (expand_omp_atomic_pipeline): Load value using the
integral type rather than floating point, then VIEW_CONVERT_EXPR
to the floating point type.

* testsuite/libgomp.c/atomic-5.c: New test.
* testsuite/libgomp.c/atomic-6.c: New test.
* testsuite/libgomp.c/autopar-1.c: New test.

From-SVN: r135027

16 years agoi386.c (ix86_expand_copysign): Force non-zero constant TFmode op0 to register.
Uros Bizjak [Wed, 7 May 2008 07:19:01 +0000 (09:19 +0200)]
i386.c (ix86_expand_copysign): Force non-zero constant TFmode op0 to register.

* config/i386/i386.c (ix86_expand_copysign): Force non-zero constant
TFmode op0 to register.

From-SVN: r135025

16 years agore PR libfortran/34974 (null bytes when reverse-tabbing long records (regression...
Jerry DeLisle [Wed, 7 May 2008 02:28:45 +0000 (02:28 +0000)]
re PR libfortran/34974 (null bytes when reverse-tabbing long records (regression vs. g77))

2008-05-06  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libfortran/34974
gfortran.dg/fmt_t_7.f: XFAIL this until we get issue resolved.

From-SVN: r135017

16 years agoc-decl.c (grokdeclarator): Comment typo.
Alan Modra [Wed, 7 May 2008 01:46:50 +0000 (01:46 +0000)]
c-decl.c (grokdeclarator): Comment typo.

* c-decl.c (grokdeclarator): Comment typo.

From-SVN: r135016

16 years agomutex (mutex::mutex): Fix usage of initializing macro.
Benjamin Kosnik [Wed, 7 May 2008 00:55:51 +0000 (00:55 +0000)]
mutex (mutex::mutex): Fix usage of initializing macro.

2008-05-06  Benjamin Kosnik  <bkoz@redhat.com>

* include/std/mutex (mutex::mutex): Fix usage of initializing macro.
(recursive_mutex::recursive_mutex): Same.
(once_flag::once_flag): Same.
* testsuite/30_threads/mutex/cons/assign_neg.cc: Fix line numbers.
* testsuite/30_threads/mutex/cons/copy_neg.cc: Same.
* testsuite/30_threads/recursive_mutex/cons/assign_neg.cc: Same.
* testsuite/30_threads/recursive_mutex/cons/copy_neg.cc: Same.

From-SVN: r135015

16 years agoDaily bump.
GCC Administrator [Wed, 7 May 2008 00:17:45 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r135013

16 years agotree-flow.h: Remove prototype for computed_goto_p.
Aldy Hernandez [Tue, 6 May 2008 22:16:50 +0000 (22:16 +0000)]
tree-flow.h: Remove prototype for computed_goto_p.

        * tree-flow.h: Remove prototype for computed_goto_p.
        * tree-cfg.c (computed_goto_p): Make static.

From-SVN: r135009

16 years agore PR testsuite/36155 (UTF tests doesn't work on Linux)
H.J. Lu [Tue, 6 May 2008 21:35:33 +0000 (21:35 +0000)]
re PR testsuite/36155 (UTF tests doesn't work on Linux)

2008-05-06  H.J. Lu  <hongjiu.lu@intel.com>

PR testsuite/36155
* g++.dg/ext/utf32-4.C: Fix a typo.

From-SVN: r135008

16 years agocondition_variable: New.
Benjamin Kosnik [Tue, 6 May 2008 21:11:47 +0000 (21:11 +0000)]
condition_variable: New.

2008-05-06  Benjamin Kosnik  <bkoz@redhat.com>

* include/std/condition_variable: New.
* include/std/mutex: New.
* src/condition_variable.cc: New.
* src/mutex.cc: New.
* include/bits/functexcept.h: Add __throw_system_error varients.
* src/functexcept.cc: Same.
* config/abi/pre/gnu.ver: Add exports.

* doc/xml/manual/using.xml: Add new includes.
* doc/doxygen/user.cfg.in: Doxygen support.
* doc/doxygen/doxygroups.cc: Same.

* include/Makefile.am: Add mutex, condition_variable.
* include/Makefile.in: Regenerated.
* src/Makefile.am: Add mutex.cc, condition_variable.cc.
* src/Makefile.in: Regenerated.

* testsuite/30_threads: New.
* testsuite/30_threads/lock_error: New.
* testsuite/30_threads/mutex: New.
* testsuite/30_threads/mutex/dest: New.
* testsuite/30_threads/mutex/dest/destructor_locked.cc: New.
* testsuite/30_threads/mutex/native_handle: New.
* testsuite/30_threads/mutex/native_handle/1.cc: New.
* testsuite/30_threads/mutex/cons: New.
* testsuite/30_threads/mutex/cons/assign_neg.cc: New.
* testsuite/30_threads/mutex/cons/1.cc: New.
* testsuite/30_threads/mutex/cons/copy_neg.cc: New.
* testsuite/30_threads/mutex/requirements: New.
* testsuite/30_threads/mutex/requirements/typedefs.cc: New.
* testsuite/30_threads/mutex/try_lock: New.
* testsuite/30_threads/mutex/try_lock/1.cc: New.
* testsuite/30_threads/mutex/try_lock/2.cc: New.
* testsuite/30_threads/mutex/lock: New.
* testsuite/30_threads/mutex/lock/1.cc: New.
* testsuite/30_threads/mutex/unlock: New.
* testsuite/30_threads/mutex/unlock/1.cc: New.
* testsuite/30_threads/recursive_mutex: New.
* testsuite/30_threads/recursive_mutex/dest: New.
* testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc: New.
* testsuite/30_threads/recursive_mutex/native_handle: New.
* testsuite/30_threads/recursive_mutex/native_handle/1.cc: New.
* testsuite/30_threads/recursive_mutex/cons: New.
* testsuite/30_threads/recursive_mutex/cons/assign_neg.cc: New.
* testsuite/30_threads/recursive_mutex/cons/1.cc: New.
* testsuite/30_threads/recursive_mutex/cons/copy_neg.cc: New.
* testsuite/30_threads/recursive_mutex/requirements: New.
* testsuite/30_threads/recursive_mutex/requirements/typedefs.cc: New.
* testsuite/30_threads/lock_guard: New.
* testsuite/30_threads/lock_guard/requirements: New.
* testsuite/30_threads/lock_guard/requirements/typedefs.cc: New.
* testsuite/30_threads/lock_guard/requirements/
explicit_instantiation.cc: New.
* testsuite/30_threads/headers: New.
* testsuite/30_threads/headers/mutex: New.
* testsuite/30_threads/headers/mutex/types_std_c++0x.cc: New.
* testsuite/30_threads/headers/mutex/std_c++0x_neg.cc: New.
* testsuite/30_threads/headers/condition_variable: New.
* testsuite/30_threads/headers/condition_variable/
types_std_c++0x.cc: New.
* testsuite/30_threads/headers/condition_variable/std_c++0x_neg.cc: New.
* testsuite/30_threads/once_flag: New.
* testsuite/30_threads/unique_lock: New.
* testsuite/30_threads/unique_lock/requirements: New.
* testsuite/30_threads/unique_lock/requirements/typedefs.cc: New.
* testsuite/30_threads/unique_lock/requirements/
explicit_instantiation.cc: New.
* testsuite/17_intro/headers/c++200x/all.cc: Add new includes.

From-SVN: r135007

16 years agoarith.c: (gfc_arith_concat...
Francois-Xavier Coudert [Tue, 6 May 2008 21:06:20 +0000 (21:06 +0000)]
arith.c: (gfc_arith_concat...

* arith.c: (gfc_arith_concat, gfc_compare_string,
gfc_compare_with_Cstring, hollerith2representation,
gfc_hollerith2int, gfc_hollerith2real, gfc_hollerith2complex,
gfc_hollerith2character, gfc_hollerith2logical): Use wide
characters for character constants.
* data.c (create_character_intializer): Likewise.
* decl.c (gfc_set_constant_character_len): Likewise.
* dump-parse-tree.c (show_char_const): Correctly dump wide
character strings.
error.c (print_wide_char): Rename into gfc_print_wide_char.
(show_locus): Adapt to new prototype of gfc_print_wide_char.
expr.c (free_expr0): Representation is now disjunct from
character string value, so we always free it.
(gfc_copy_expr, find_substring_ref, gfc_simplify_expr): Adapt
to wide character strings.
* gfortran.h (gfc_expr): Make value.character.string a wide string.
(gfc_wide_toupper, gfc_wide_strncasecmp, gfc_wide_memset,
gfc_widechar_to_char, gfc_char_to_widechar): New prototypes.
(gfc_get_wide_string): New macro.
(gfc_print_wide_char): New prototype.
* io.c (format_string): Make a wide string.
(next_char, gfc_match_format, compare_to_allowed_values,
gfc_match_open): Deal with wide strings.
* module.c (mio_expr): Convert between wide strings and ASCII ones.
* primary.c (match_hollerith_constant, match_charkind_name):
Handle wide strings.
* resolve.c (build_default_init_expr): Likewise.
* scanner.c (gfc_wide_toupper, gfc_wide_memset,
gfc_char_to_widechar): New functions.
(wide_strchr, gfc_widechar_to_char, gfc_wide_strncasecmp):
Changes in prototypes.
(gfc_define_undef_line, load_line, preprocessor_line,
include_line, load_file, gfc_read_orig_filename): Handle wide
strings.
* simplify.c (gfc_simplify_achar, gfc_simplify_adjustl,
gfc_simplify_adjustr, gfc_simplify_char, gfc_simplify_iachar,
gfc_simplify_ichar, simplify_min_max, gfc_simplify_new_line,
gfc_simplify_repeat): Handle wide strings.
(wide_strspn, wide_strcspn): New helper functions.
(gfc_simplify_scan, gfc_simplify_trim, gfc_simplify_verify):
Handle wide strings.
* symbol.c (generate_isocbinding_symbol): Likewise.
* target-memory.c (size_character, gfc_target_expr_size,
encode_character, gfc_target_encode_expr, gfc_interpret_character,
gfc_target_interpret_expr): Handle wide strings.
* trans-const.c (gfc_conv_string_init): Lower wide strings to
narrow ones.
(gfc_conv_constant_to_tree): Likewise.
* trans-expr.c (gfc_conv_substring_expr): Handle wide strings.
* trans-io.c (gfc_new_nml_name_expr): Likewise.
* trans-stmt.c (gfc_trans_label_assign): Likewise.

From-SVN: r135006

16 years agosimplify.c (gfc_simplify_bessel_j0,gfc_simplify_bessel_j1, [...]): Mark arguments...
Francois-Xavier Coudert [Tue, 6 May 2008 20:28:19 +0000 (20:28 +0000)]
simplify.c (gfc_simplify_bessel_j0,gfc_simplify_bessel_j1, [...]): Mark arguments with ATTRIBUTE_UNUSED.

* simplify.c (gfc_simplify_bessel_j0,gfc_simplify_bessel_j1,
gfc_simplify_bessel_jn,gfc_simplify_bessel_y0,
gfc_simplify_bessel_y1,gfc_simplify_bessel_yn): Mark arguments
with ATTRIBUTE_UNUSED.

From-SVN: r134998

16 years agocheck.c (gfc_check_sizeof): Switch to ATTRIBUTE_UNUSED.
Francois-Xavier Coudert [Tue, 6 May 2008 20:24:05 +0000 (20:24 +0000)]
check.c (gfc_check_sizeof): Switch to ATTRIBUTE_UNUSED.

* check.c (gfc_check_sizeof): Switch to ATTRIBUTE_UNUSED.
* simplify.c (gfc_simplify_lgamma): Likewise.

From-SVN: r134997

16 years agore PR libstdc++/36130 (Atomics regression test fail to compile when parallel mode...
Benjamin Kosnik [Tue, 6 May 2008 18:57:46 +0000 (18:57 +0000)]
re PR libstdc++/36130 (Atomics regression test fail to compile when parallel mode is enabled)

2008-05-06  Benjamin Kosnik  <bkoz@redhat.com>

PR libstdc++/36130
* include/bits/c++config: Namespace macros and setup only in C++.
* testsuite/29_atomics/headers/stdatomic.h/debug_mode.c: New.

From-SVN: r134995

16 years agore PR testsuite/36155 (UTF tests doesn't work on Linux)
H.J. Lu [Tue, 6 May 2008 18:37:03 +0000 (18:37 +0000)]
re PR testsuite/36155 (UTF tests doesn't work on Linux)

2008-05-06  H.J. Lu  <hongjiu.lu@intel.com>

PR testsuite/36155
* gcc.dg/utf32-4.c: Fix a typo.

* lib/target-supports.exp (check_effective_target_4byte_wchar_t):
Use __WCHAR_TYPE__ instead of wchar_t.

From-SVN: r134994

16 years agoenum6.C, [...]: Broaden dg-options pattern.
Mark Shinwell [Tue, 6 May 2008 18:34:53 +0000 (18:34 +0000)]
enum6.C, [...]: Broaden dg-options pattern.

* g++.old-deja/g++.jason/enum6.C, g++.old-deja/g++.law/enum9.C,
g++.old-deja/g++.other/enum4.C, gfortran/enum_9.f90,
gfortran.dg/enum_10.f90: Broaden dg-options pattern.

Co-Authored-By: Andrew Jenner <andrew@codesourcery.com>
Co-Authored-By: Daniel Jacobowitz <dan@codesourcery.com>
From-SVN: r134993

16 years agoopenmp.c (gfc_match_omp_eos): Use gfc_next_ascii_char and gfc_peek_ascii_char.
Francois-Xavier Coudert [Tue, 6 May 2008 18:28:32 +0000 (20:28 +0200)]
openmp.c (gfc_match_omp_eos): Use gfc_next_ascii_char and gfc_peek_ascii_char.

* openmp.c (gfc_match_omp_eos): Use gfc_next_ascii_char and
gfc_peek_ascii_char.
* decl.c (gfc_match_kind_spec, gfc_match_type_spec,
gfc_match_implicit_none, match_implicit_range, gfc_match_implicit,
match_string_p, match_attr_spec, gfc_match_suffix,
match_procedure_decl, gfc_match_entry, gfc_match_subroutine):
Likewise.
* gfortran.h (gfc_char_t): New type.
(gfc_linebuf): Make line member a gfc_char_t.
(locus): Make nextc member a gfc_char_t.
(gfc_wide_is_printable, gfc_wide_is_digit, gfc_wide_fits_in_byte,
gfc_wide_tolower, gfc_wide_strlen, gfc_next_ascii_char,
gfc_peek_ascii_char, gfc_check_digit): New prototypes.
* error.c (print_wide_char): New function.
(show_locus): Use print_wide_char and gfc_wide_strlen.
* io.c (next_char): Use gfc_char_t type.
(match_io): Use gfc_peek_ascii_char and gfc_next_ascii_char.
* match.c (gfc_match_parens, gfc_match_eos,
gfc_match_small_literal_int, gfc_match_name, gfc_match_name_C,
gfc_match_intrinsic_op, gfc_match_char,  gfc_match_return,
gfc_match_common): Likewise.
* match.h (gfc_match_special_char): Change prototype.
* parse.c (decode_specification_statement, decode_statement,
decode_omp_directive, next_free, next_fixed): Use
gfc_peek_ascii_char and gfc_next_ascii_char.
* primary.c (gfc_check_digit): Change name.
(match_digits, match_hollerith_constant, match_boz_constant,
match_real_constant, next_string_char, match_charkind_name,
match_string_constant, match_logical_constant_string,
match_complex_constant, match_actual_arg, match_varspec,
gfc_match_rvalue, match_variable): Use gfc_peek_ascii_char and
gfc_next_ascii_char.
* scanner.c (gfc_wide_fits_in_byte, wide_is_ascii,
gfc_wide_is_printable, gfc_wide_tolower, gfc_wide_is_digit,
gfc_wide_is_digit, wide_atoi, gfc_wide_strlen, wide_strcpy,
wide_strchr, widechar_to_char, wide_strncmp, wide_strncasecmp,
gfc_next_ascii_char, gfc_peek_ascii_char):
New functions.
(next_char, gfc_define_undef_line, skip_free_comments,
gfc_next_char_literal, gfc_next_char, gfc_peek_char,
gfc_error_recovery, load_line, preprocessor_line, include_line,
load_file, gfc_read_orig_filename): Use gfc_char_t for source
characters and the {gfc_,}wide_* functions to manipulate wide
strings.

From-SVN: r134992

16 years agommx.md: Rename "*..." insn patterns from my previous commit to "*mmx_...".
Uros Bizjak [Tue, 6 May 2008 17:41:46 +0000 (19:41 +0200)]
mmx.md: Rename "*..." insn patterns from my previous commit to "*mmx_...".

* config/i386/mmx.md: Rename "*..." insn patterns from my
previous commit to "*mmx_...".

From-SVN: r134991

16 years agoPR preprocessor/35313, PR preprocessor/36088:
Tom Tromey [Tue, 6 May 2008 17:15:07 +0000 (17:15 +0000)]
PR preprocessor/35313, PR preprocessor/36088:

gcc/testsuite
PR preprocessor/35313, PR preprocessor/36088:
* gcc.dg/cpp/pr35313.c: New file.
* gcc.dg/cpp/if-oppr.c: Remove test for ',' in a conditional
expression.
* gcc.dg/cpp/if-oppr2.c: New file.
libcpp
PR preprocessor/35313, PR preprocessor/36088:
* expr.c (optab) <QUERY, COMMA>: Set precedence to 4.
(reduce) <case CPP_QUERY>: Special case CPP_COMMA and CPP_COLON.

From-SVN: r134989

16 years agore PR fortran/36117 (Use MPFR for bessel function (optimization, rejects valid F2008))
Tobias Burnus [Tue, 6 May 2008 17:06:54 +0000 (19:06 +0200)]
re PR fortran/36117 (Use MPFR for bessel function (optimization, rejects valid F2008))

2008-05-06  Tobias Burnus  <burnus@net-b.de>

        PR fortran/36117
        * intrinsic.c (add_functions): Call gfc_simplify_bessel_*.
        * intrinsic.h: Add prototypes for gfc_simplify_bessel_*.
        * simplify.c (gfc_simplify_bessel_j0,gfc_simplify_bessel_j1,
        gfc_simplify_bessel_jn,gfc_simplify_bessel_y0,
        gfc_simplify_bessel_y1,gfc_simplify_bessel_yn): New.

2008-05-06  Tobias Burnus  <burnus@net-b.de>

        PR fortran/36117
        * gfortran.dg/bessel_2.f90: New.

From-SVN: r134988

16 years agore PR target/35657 (Alignments of DFP types aren't consistent)
H.J. Lu [Tue, 6 May 2008 15:41:08 +0000 (08:41 -0700)]
re PR target/35657 (Alignments of DFP types aren't consistent)

2008-05-06  H.J. Lu  <hongjiu.lu@intel.com>

PR target/35657
* config/i386/i386.c (contains_128bit_aligned_vector_p): Renamed
to ...
(contains_aligned_value_p): This.  Handle _Decimal128.
(ix86_function_arg_boundary): Only align _Decimal128 to its
natural boundary and handle it properly.

From-SVN: r134987

16 years agoFix another typo in ChangeLog.
H.J. Lu [Tue, 6 May 2008 14:28:58 +0000 (07:28 -0700)]
Fix another typo in ChangeLog.

From-SVN: r134986

16 years agoFix a typo in ChangeLog.
H.J. Lu [Tue, 6 May 2008 14:26:01 +0000 (07:26 -0700)]
Fix a typo in ChangeLog.

From-SVN: r134985

16 years agoipa-cp.c (ipcp_method_orig_node): Renamed to ipcp_get_orig_node.
Martin Jambor [Tue, 6 May 2008 14:15:18 +0000 (16:15 +0200)]
ipa-cp.c (ipcp_method_orig_node): Renamed to ipcp_get_orig_node.

2008-05-06  Martin Jambor  <mjambor@suse.cz>

        * ipa-cp.c (ipcp_method_orig_node): Renamed to ipcp_get_orig_node.
        (ipcp_method_is_cloned): Renamed to ipcp_node_is_clone
        (ipcp_method_set_orig_node): Removed.
        (ipcp_cval_get_cvalue_type): Removed.
        (ipcp_method_get_scale): Renamed to ipcp_get_node_scale.
        (ipcp_method_set_scale): Renamed to ipcp_set_node_scale.
        (ipcp_cval_set_cvalue_type): Removed.
        (ipcp_cval_get_cvalue): Removed.
        (ipcp_cval_set_cvalue): Removed.
        (ipcp_type_is_const): Renamed to ipcp_lat_is_const.
        (ipcp_cval_equal_cvalues): Renamed to ipcp_lats_are_equal
        (ipcp_lats_are_equal): Changed parameters to two ipcp_lattice's
        (ipcp_cval_meet): Renamed to ipa_lattice_meet
        (ipcp_cval_changed): Changed to use ipcp_lat_is_const
        (ipcp_method_cval): Renamed to ipcp_get_ith_lattice
        (ipcp_get_ith_lattice): Changed parameters.
        (ipcp_cval_compute): Renamed to ipcp_lattice_from_jfunc
        (ipcp_lattice_from_jfunc): Changed parameters.
(ipcp_redirect): Local lattice pointer instead of lattice type variable.
(ipcp_method_cval_print): Added temporary variable info.
(ipcp_redirect): Removed already unused local variable caller.
(ipcp_redirect): New temporary variable orig_callee_info
(ipcp_redirect): Removed newly unused local variable callee.
(ipcp_redirect): Removed (a bit confusing) local variable type.
(ipcp_insert_stage): Added local variable info.
(ipcp_cval_changed): Renamed to ipcp_lattice_changed, parameters
renamed too
(ipcp_formal_create): Removed.
(ipcp_method_cval_set): Removed.
(ipcp_propagate_stage): Renamed lattice variables.
(ipcp_method_cval_set_cvalue_type): Removed.
(ipcp_method_cval_print): Renamed to ipcp_print_all_lattices
(ipcp_print_all_lattices): Changed printed strings to refer to
lattices rather than cvals.
(ipcp_method_cval_init): Renamed to ipcp_initialize_node_lattices
(ipcp_propagate_const): Changed formal parameters.
(build_const_val): Changed formal parameters.
(ipcp_insert_stage): Removed useless variable cvalue
(build_const_val): Changed formal parameters.
(ipcp_method_compute_scale): Renamed to ipcp_compute_node_scale
(ipcp_after_propagate): Renamed to ipcp_change_tops_to_bottom
(ipcp_callsite_param_print): Renamed to ipcp_print_all_jump_functions
(ipcp_profile_mt_count_print): Renamed to ipcp_print_func_profile_counts
(ipcp_print_func_profile_counts): Changed string from "method" to
"function"
(ipcp_profile_cs_count_print): Renamed to ipcp_print_call_profile_counts
(ipcp_profile_edge_print): Renamed to ipcp_print_edge_profiles
(ipcp_profile_bb_print): Renamed to ipcp_print_bb_profiles
(ipcp_structures_print): Renamed to ipcp_print_all_structures
(ipcp_profile_print): Renamed to ipcp_print_profile_data
(ipcp_lat_is_const): Changed parameters and made inline.
(ipcp_replace_map_create): Renamed to ipcp_create_replace_map
(ipcp_redirect): Renamed to ipcp_need_redirect_p
(ipcp_need_redirect_p): Calls ipcp_lat_is_const instead of using
the predicate condition directly
(ipcp_propagate_stage): Added local variable args. Removed local
variable callee.  (Both are mere code simplifications.)
(ipcp_method_dont_insert_const): Renamed to
ipcp_node_not_modifiable_p.
(ipcp_node_not_modifiable_p): Made inline.
(ipcp_cloned_create): Renamed to ipcp_init_cloned_node
(ipcp_propagate_const): Renamed to ipcp_propagate_one_const
(ipcp_print_all_lattices): Removed variable cvalue
(ipcp_method_scale_print): Renamed to ipcp_function_scale_print
Updated comments.

From-SVN: r134984

16 years agotree-sra.c (try_instantiate_multiple_fields): Early return if field has POINTER_TYPE.
Olivier Hainque [Tue, 6 May 2008 12:13:07 +0000 (12:13 +0000)]
tree-sra.c (try_instantiate_multiple_fields): Early return if field has POINTER_TYPE.

        * tree-sra.c (try_instantiate_multiple_fields): Early return
        if field has POINTER_TYPE.

        testsuite/
        * gnat.dg/fatp_sra.adb: New test.

From-SVN: r134982

16 years agoi386.c (output_set_got): Fix for x86_64 output_emit_asm by using 'q' specifier for...
Kai Tietz [Tue, 6 May 2008 10:07:13 +0000 (10:07 +0000)]
i386.c (output_set_got): Fix for x86_64 output_emit_asm by using 'q' specifier for instruction.

2008-05-06  Kai Tietz  <kai.tietz@onevision.com>

* config/i386/i386.c (output_set_got): Fix for x86_64 output_emit_asm
by using 'q' specifier for instruction.
(ix86_file_end): Replaced case TARGET_64BIT_MS_ABI by TARGET_64BIT.

From-SVN: r134981

16 years agoavr.md (*sbrx_branch, [...]): Change mode of zero_extract from QImode to HImode.
Anatoly Sokolov [Tue, 6 May 2008 09:30:17 +0000 (13:30 +0400)]
avr.md (*sbrx_branch, [...]): Change mode of zero_extract from QImode to HImode.

* config/avr/avr.md (*sbrx_branch, *sbix_branch, *sbix_branch_tmp):
Change mode of zero_extract from QImode to HImode.
(sign bit tests peepholes): (Ditto.).

From-SVN: r134979

16 years ago2008-05-06 Johannes Singler <singler@ira.uka.de>
Johannes Singler [Tue, 6 May 2008 08:55:57 +0000 (08:55 +0000)]
2008-05-06  Johannes Singler  <singler@ira.uka.de>

        * include/parallel/multiway_merge.h:
          (multiway_merge_*_unguarded):
          Pass sentinel directly, to allow correct determination.
          (multiway_merge_loser_tree_unguarded):
          Remove over-cautious assertion.
          (calls to multiway_merge_*_splitting):
          Parametrize with type that is correct in all cases.
        * include/parallel/losertree.h:
          (delete_min_insert (in many classes)):
          Correct and standardize assertions.

From-SVN: r134977

16 years agommx.md: Remove double backslashes from asm templates.
Uros Bizjak [Tue, 6 May 2008 08:39:51 +0000 (10:39 +0200)]
mmx.md: Remove double backslashes from asm templates.

* config/i386/mmx.md: Remove double backslashes from asm templates.
(*addv2sf3): Rename from mmx_addv2sf3 insn pattern.
(mmx_addv2sf3): New expander.  Use ix86_fixup_binary_operands_no_copy
to handle nonimmediate operands.
(*mulv2sf3): Rename from mmx_mulv2sf3 insn pattern.
(mmx_mulv2sf3): New expander.  Use ix86_fixup_binary_operands_no_copy
to handle nonimmediate operands.
(*<code>v2sf3_finite): New insn pattern.
(*<code>v2sf3): Rename from mmx_<code>v2sf3 insn pattern.
(mmx_<code>v2sf3): New expander.  Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(mmx_<plusminus_insn><mode>3): New expander.  Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*<plusminus_insn><mode>3): New insn pattern.
(mmx_add<mode>3): Removed.
(mmx_ssadd<mode>3): Ditto.
(mmx_usadd<mode>3): Ditto.
(mmx_sub<mode>3): Ditto.
(mmx_sssub<mode>3): Ditto.
(mmx_ussub<mode>3): Ditto.
(*mulv4hi3): Rename from mmx_mulv4hi3 insn pattern.
(mmx_mulv4hi3): New expander.  Use ix86_fixup_binary_operands_no_copy
to handle nonimmediate operands.
(*smulv4hi3_highpart): Rename from mmx_smulv4hi3_highpart
insn pattern.
(mmx_smulv4hi3_highpart): New expander.  Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*umulv4hi3_highpart): Rename from mmx_umulv4hi3_highpart
insn pattern.
(mmx_umulv4hi3_highpart): New expander.  Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*<code>v4hi3): Rename from mmx_<code>v4hi3 insn pattern.
(mmx_<code>v4hi3): New expander.  Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*<code>v8qi3): Rename from mmx_<code>v8qi3 insn pattern.
(mmx_<code>v8qi3): New expander.  Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
(*<code><mode>3): Rename from mmx_<code><mode>3 insn pattern.
(mmx_<code><mode>3): New expander.  Use
ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.

From-SVN: r134976

16 years agore PR tree-optimization/36118 ([4.4 Regressions] inline-related regressions)
Jan Hubicka [Tue, 6 May 2008 07:59:54 +0000 (09:59 +0200)]
re PR tree-optimization/36118 ([4.4 Regressions] inline-related regressions)

PR tree-optimization/36118
* passes.c (pass_init_dump_file): Fix dump header.

From-SVN: r134975

16 years agore PR libfortran/36131 (wrong IO)
Jerry DeLisle [Tue, 6 May 2008 04:00:38 +0000 (04:00 +0000)]
re PR libfortran/36131 (wrong IO)

2008-05-05  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libfortran/36131
* io/transfer.c (formatted_transfer_scalar): Revert patch for PR34974.
(next_record_w): Likewise.

From-SVN: r134973

16 years agore PR middle-end/36141 (Gcc 4.4 failed to boostrap)
Andrew Pinski [Tue, 6 May 2008 03:47:29 +0000 (03:47 +0000)]
re PR middle-end/36141 (Gcc 4.4 failed to boostrap)

2008-05-05  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR middle-end/36141
        * tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Don't create VCE
        for function decls.

2008-05-05  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR middle-end/36141
        * gcc.c-torture/pr36141.c: New testcase.

From-SVN: r134972

16 years agotarget_supports.exp (check_effective_target_4byte_wchar_t): New proc.
Danny Smith [Tue, 6 May 2008 02:59:12 +0000 (02:59 +0000)]
target_supports.exp (check_effective_target_4byte_wchar_t): New proc.

* lib/target_supports.exp (check_effective_target_4byte_wchar_t):
New proc.
* gcc.dg/utf16-4.c: Use it.
* gcc.dg/utf32-4.c: Use it.
* g++.dg/ext/utf16-4.C: Use it.
* gcc.dg/ext/utf32-4.C: Use it.

From-SVN: r134971

16 years agosse.md (sse2_<plusminus_insn><mode>3): Fix a typo.
H.J. Lu [Tue, 6 May 2008 00:17:57 +0000 (00:17 +0000)]
sse.md (sse2_<plusminus_insn><mode>3): Fix a typo.

2008-05-05  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/sse.md (sse2_<plusminus_insn><mode>3): Fix a typo.

From-SVN: r134966

16 years agoDaily bump.
GCC Administrator [Tue, 6 May 2008 00:17:57 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r134965

16 years agoi386.md (sat_plusminus): New.
H.J. Lu [Mon, 5 May 2008 21:34:17 +0000 (14:34 -0700)]
i386.md (sat_plusminus): New.

2008-05-05  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.md (sat_plusminus): New.
(plusminus_insn): Likewise.
(plusminus_mnemonic): Likewise.
(addsub): Removed.
(comm): Add ss_plus, us_plus, ss_minus and us_minus.
(*<addsub><mode>3_cc_overflow): Renamed to ...
(*<plusminus_insn><mode>3_cc_overflow): This.
(*<addsub>si3_zext_cc_overflow): Renamed to ...
(*<plusminus_insn>si3_zext_cc_overflow): This.

* gcc/config/i386/sse.md (<addsub><mode>3): Renamed to ...
(<plusminus_insn><mode>3): This.
(*<addsub><mode>3): Renamed to ...
(*<plusminus_insn><mode>3): This.
(<sse>_vm<addsub><mode>3): Renamed to ...
(<sse>_vm<plusminus_insn><mode>3): This.
(sse3_h<addsub>v4sf3): Renamed to ...
(sse3_h<plusminus_insn>v4sf3): This.
(sse3_h<addsub>v2df3): Renamed to ...
(sse3_h<plusminus_insn>v2df3): This.
(<plusminus_insn><mode>3): New.
(*<plusminus_insn><mode>3): Likewise.
(sse2_<plusminus_insn><mode>3): Likewise.
(add<mode>): Removed.
(*add<mode>3): Likewise.
(sse2_ssadd<mode>3): Likewise.
(sse2_usadd<mode>3): Likewise.
(sub<mode>3): Likewise.
(*sub<mode>3): Likewise.
(sse2_sssub<mode>3): Likewise.
(sse2_ussub<mode>3): Likewise.

From-SVN: r134957

16 years ago* gfortran.dg/dev_null.f90. Remove and replace with...
Danny Smith [Mon, 5 May 2008 21:15:51 +0000 (21:15 +0000)]
* gfortran.dg/dev_null.f90. Remove and replace with...

* gfortran.dg/dev_null.F90: Use preprocessor define to
generalize the DEV_NULL name.

From-SVN: r134955

16 years ago* decl.c (maybe_pad_type): Add ??? comment.
Eric Botcazou [Mon, 5 May 2008 19:44:55 +0000 (19:44 +0000)]
* decl.c (maybe_pad_type): Add ??? comment.

From-SVN: r134953

16 years agogthr-single.h: Add in required interface elements as per gthr.h.
Benjamin Kosnik [Mon, 5 May 2008 17:42:26 +0000 (17:42 +0000)]
gthr-single.h: Add in required interface elements as per gthr.h.

2008-05-05  Benjamin Kosnik  <bkoz@redhat.com>

        * gthr-single.h: Add in required interface elements as per gthr.h.
        Add stub types for __gthread_key_t, __gthread_once_t. Add defines
        for __GTHREAD_ONCE_INIT, __GTHREAD_RECURSIVE_MUTEX_INIT.
        Generalize UNUSED macro.
        (__gthread_once): Add.
        (__gthread_key_create): Add.
        (__gthread_key_delete): Add.
        (__gthread_getspecific): Add.
        (__gthread_setspecific): Add.

From-SVN: r134951

16 years agotestsuite_visualization.h: Move contents into...
Benjamin Kosnik [Mon, 5 May 2008 17:22:02 +0000 (17:22 +0000)]
testsuite_visualization.h: Move contents into...

2008-05-05  Benjamin Kosnik  <bkoz@redhat.com>

* testsuite/util/testsuite_visualization.h: Move contents into...
* testsuite/util/testsuite_performance.h: ...here.
* testsuite/util/testsuite_common_types.h: Move
performance-related test infrastructure into
testsuite_performance.
* testsuite/performance/25_algorithms/search_n.cc: Fix includes.
* testsuite/performance/23_containers/find/map.cc: Same.
* testsuite/performance/23_containers/create/map.cc: Same.
* testsuite/performance/23_containers/insert_erase/associative.cc: Same.
* testsuite/performance/23_containers/insert/sequence.cc: Same.
* testsuite/performance/23_containers/insert/associative.cc: Same.
* testsuite/performance/23_containers/create_from_sorted/set.cc: Same.
* testsuite/performance/23_containers/index/map.cc: Same.
* testsuite/performance/23_containers/insert_from_sorted/set.cc: Same.
* testsuite/performance/23_containers/create_sort/list.cc: Same.
* testsuite/performance/23_containers/sort_search/list.cc: Same.
* testsuite/performance/23_containers/producer_consumer/sequence.cc:
Same.
* testsuite/performance/23_containers/producer_consumer/associative.cc:
Same.

* testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust line numbers.
* testsuite/29_atomics/atomic/cons/copy_neg.cc: Same.

From-SVN: r134949

16 years agotypedefs-1.cc: Correct requirements.
Benjamin Kosnik [Mon, 5 May 2008 17:16:44 +0000 (17:16 +0000)]
typedefs-1.cc: Correct requirements.

2008-05-05  Benjamin Kosnik  <bkoz@redhat.com>

* 20_util/make_signed/requirements/typedefs-1.cc: Correct requirements.
* 20_util/make_unsigned/requirements/typedefs-1.cc: Same.

From-SVN: r134948

16 years agotree-ssa-forwprop.c (forward_propagate_addr_expr_1): If we have the same size types...
Andrew Pinski [Mon, 5 May 2008 16:10:43 +0000 (09:10 -0700)]
tree-ssa-forwprop.c (forward_propagate_addr_expr_1): If we have the same size types for...

2008-05-05  Andrew Pinski  <Andrew.Pinski@playstation.sony.com>

        * tree-ssa-forwprop.c (forward_propagate_addr_expr_1): If we have the
        same size types for the indirect reference on the rhs, then create a VCE.

2008-05-05  Andrew Pinski  <andrew.pinski@playstation.sony.com>

        * gcc.dg/tree-ssa/forwprop-5.c: New testcase.
        * gcc.dg/tree-ssa/forwprop-6.c: New testcase.
        * gcc.dg/tree-ssa/forwprop-7.c: New testcase.
        * gcc.dg/tree-ssa/forwprop-8.c: New testcase.
        * gcc.dg/tree-ssa/forwprop-9.c: New testcase.

From-SVN: r134947

16 years ago* config/i386/i386.md
Uros Bizjak [Mon, 5 May 2008 12:56:15 +0000 (14:56 +0200)]
* config/i386/i386.md
(*float<SSEMODEI24:mode><MODEF:mode>2_sse_interunit): Use only
one insn template instead of template series.
(*xordi_1_rex64): Ditto.
(*xordi_2_rex64): Ditto.

From-SVN: r134946

16 years agore PR tree-optimization/36119 (internal compiler error: in vectorizable_assignment...
Ira Rosen [Mon, 5 May 2008 07:47:49 +0000 (07:47 +0000)]
re PR tree-optimization/36119 (internal compiler error: in vectorizable_assignment, at tree-vect-transform.c:3671)

PR tree-optimization/36119
* tree-vect-transform.c (vectorizable_assignment): Set NCOPIES to 1
in case of SLP.

From-SVN: r134944

16 years agotree-pass.h (pass_O0_always_inline): Declare.
Jan Hubicka [Mon, 5 May 2008 05:31:34 +0000 (07:31 +0200)]
tree-pass.h (pass_O0_always_inline): Declare.

tree-optimization/36100
* tree-pass.h (pass_O0_always_inline): Declare.
* ipa-inline.c (inline_transform): Remove dead code.
(cgraph_gate_O0_always_inline, cgraph_O0_always_inline,
pass_O0_always_inline): New.
* passes.c (init_optimization_passes): Add pass_O0_always_inline.

From-SVN: r134942

16 years agoDaily bump.
GCC Administrator [Mon, 5 May 2008 00:17:39 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r134940

16 years agore PR fortran/32770 ([Meta-bug] -fdefault-integer-8 issues)
Thomas Koenig [Sun, 4 May 2008 20:56:30 +0000 (20:56 +0000)]
re PR fortran/32770 ([Meta-bug] -fdefault-integer-8 issues)

2008-05-04  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/32770
* gfortran.dg/any_all_1.f90:  Adjust kinds to make test
pass with -fdefault-integer-8.
* gfortran.dg/maxloc_bounds_4.f90:  Likewise.
* gfortran.dg/maxloc_bounds_5.f90:  Likewise.
* gfortran.dg/maxloc_bounds_7.f90:  Likewise.

From-SVN: r134936

16 years agoi386.c (x86_output_mi_thunk): Use movq alternative mnemonic in this_param move for...
Kai Tietz [Sun, 4 May 2008 19:19:50 +0000 (19:19 +0000)]
i386.c (x86_output_mi_thunk): Use movq alternative mnemonic in this_param move for TARGET_64BIT.

2008-05-04  Kai Tietz  <kai.tietz@onevision.com>

* config/i386/i386.c (x86_output_mi_thunk): Use movq alternative
mnemonic in this_param move for TARGET_64BIT.

From-SVN: r134935

16 years agore PR fortran/35995 (ANY, ALL, and COUNT errors for zero sized sections)
Thomas Koenig [Sun, 4 May 2008 19:07:28 +0000 (19:07 +0000)]
re PR fortran/35995 (ANY, ALL, and COUNT errors for zero sized sections)

2008-05-04  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR libfortran/35995
* m4/ifunction_logical.m4:  If the extent of "array"
is less than zero, set it to zero.  Use an explicit
flag for breaking out of the main loop to avoid, because
the data pointer for "array" may be NULL for an empty
array.
* m4/ifunction.m4:  Likewise.
* generated/all_l1.c: Regenerated.
* generated/all_l16.c: Regenerated.
* generated/all_l2.c: Regenerated.
* generated/all_l4.c: Regenerated.
* generated/all_l8.c: Regenerated.
* generated/any_l1.c: Regenerated.
* generated/any_l16.c: Regenerated.
* generated/any_l2.c: Regenerated.
* generated/any_l4.c: Regenerated.
* generated/any_l8.c: Regenerated.
* generated/count_16_l.c: Regenerated.
* generated/count_1_l.c: Regenerated.
* generated/count_2_l.c: Regenerated.
* generated/count_4_l.c: Regenerated.
* generated/count_8_l.c: Regenerated.
* generated/maxloc1_16_i1.c: Regenerated.
* generated/maxloc1_16_i16.c: Regenerated.
* generated/maxloc1_16_i2.c: Regenerated.
* generated/maxloc1_16_i4.c: Regenerated.
* generated/maxloc1_16_i8.c: Regenerated.
* generated/maxloc1_16_r10.c: Regenerated.
* generated/maxloc1_16_r16.c: Regenerated.
* generated/maxloc1_16_r4.c: Regenerated.
* generated/maxloc1_16_r8.c: Regenerated.
* generated/maxloc1_4_i1.c: Regenerated.
* generated/maxloc1_4_i16.c: Regenerated.
* generated/maxloc1_4_i2.c: Regenerated.
* generated/maxloc1_4_i4.c: Regenerated.
* generated/maxloc1_4_i8.c: Regenerated.
* generated/maxloc1_4_r10.c: Regenerated.
* generated/maxloc1_4_r16.c: Regenerated.
* generated/maxloc1_4_r4.c: Regenerated.
* generated/maxloc1_4_r8.c: Regenerated.
* generated/maxloc1_8_i1.c: Regenerated.
* generated/maxloc1_8_i16.c: Regenerated.
* generated/maxloc1_8_i2.c: Regenerated.
* generated/maxloc1_8_i4.c: Regenerated.
* generated/maxloc1_8_i8.c: Regenerated.
* generated/maxloc1_8_r10.c: Regenerated.
* generated/maxloc1_8_r16.c: Regenerated.
* generated/maxloc1_8_r4.c: Regenerated.
* generated/maxloc1_8_r8.c: Regenerated.
* generated/maxval_i1.c: Regenerated.
* generated/maxval_i16.c: Regenerated.
* generated/maxval_i2.c: Regenerated.
* generated/maxval_i4.c: Regenerated.
* generated/maxval_i8.c: Regenerated.
* generated/maxval_r10.c: Regenerated.
* generated/maxval_r16.c: Regenerated.
* generated/maxval_r4.c: Regenerated.
* generated/maxval_r8.c: Regenerated.
* generated/minloc1_16_i1.c: Regenerated.
* generated/minloc1_16_i16.c: Regenerated.
* generated/minloc1_16_i2.c: Regenerated.
* generated/minloc1_16_i4.c: Regenerated.
* generated/minloc1_16_i8.c: Regenerated.
* generated/minloc1_16_r10.c: Regenerated.
* generated/minloc1_16_r16.c: Regenerated.
* generated/minloc1_16_r4.c: Regenerated.
* generated/minloc1_16_r8.c: Regenerated.
* generated/minloc1_4_i1.c: Regenerated.
* generated/minloc1_4_i16.c: Regenerated.
* generated/minloc1_4_i2.c: Regenerated.
* generated/minloc1_4_i4.c: Regenerated.
* generated/minloc1_4_i8.c: Regenerated.
* generated/minloc1_4_r10.c: Regenerated.
* generated/minloc1_4_r16.c: Regenerated.
* generated/minloc1_4_r4.c: Regenerated.
* generated/minloc1_4_r8.c: Regenerated.
* generated/minloc1_8_i1.c: Regenerated.
* generated/minloc1_8_i16.c: Regenerated.
* generated/minloc1_8_i2.c: Regenerated.
* generated/minloc1_8_i4.c: Regenerated.
* generated/minloc1_8_i8.c: Regenerated.
* generated/minloc1_8_r10.c: Regenerated.
* generated/minloc1_8_r16.c: Regenerated.
* generated/minloc1_8_r4.c: Regenerated.
* generated/minloc1_8_r8.c: Regenerated.
* generated/minval_i1.c: Regenerated.
* generated/minval_i16.c: Regenerated.
* generated/minval_i2.c: Regenerated.
* generated/minval_i4.c: Regenerated.
* generated/minval_i8.c: Regenerated.
* generated/minval_r10.c: Regenerated.
* generated/minval_r16.c: Regenerated.
* generated/minval_r4.c: Regenerated.
* generated/minval_r8.c: Regenerated.
* generated/product_c10.c: Regenerated.
* generated/product_c16.c: Regenerated.
* generated/product_c4.c: Regenerated.
* generated/product_c8.c: Regenerated.
* generated/product_i1.c: Regenerated.
* generated/product_i16.c: Regenerated.
* generated/product_i2.c: Regenerated.
* generated/product_i4.c: Regenerated.
* generated/product_i8.c: Regenerated.
* generated/product_r10.c: Regenerated.
* generated/product_r16.c: Regenerated.
* generated/product_r4.c: Regenerated.
* generated/product_r8.c: Regenerated.
* generated/sum_c10.c: Regenerated.
* generated/sum_c16.c: Regenerated.
* generated/sum_c4.c: Regenerated.
* generated/sum_c8.c: Regenerated.
* generated/sum_i1.c: Regenerated.
* generated/sum_i16.c: Regenerated.
* generated/sum_i2.c: Regenerated.
* generated/sum_i4.c: Regenerated.
* generated/sum_i8.c: Regenerated.
* generated/sum_r10.c: Regenerated.
* generated/sum_r16.c: Regenerated.
* generated/sum_r4.c: Regenerated.
* generated/sum_r8.c: Regenerated.

2008-05-04  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR libfortran/35995
* gfortran.dg/intrinsic_ifunction_1.f90:  New test case.

From-SVN: r134934

16 years agoi386.md (*strmovsi_1): Simplify asm alternatives.
Uros Bizjak [Sun, 4 May 2008 18:40:15 +0000 (20:40 +0200)]
i386.md (*strmovsi_1): Simplify asm alternatives.

        * config/i386/i386.md (*strmovsi_1): Simplify asm alternatives.
        (*strmovsi_rex_1): Ditto.
        (*strsetsi_1): Ditto.
        (*strsetsi_rex_1): Ditto.

        (add<mode>cc): Macroize expander from addqicc, addhicc, addsicc and
        adddicc expanders using SWI mode iterator.

From-SVN: r134933

16 years agore PR target/36121 (config/i386/i386.c: array index out of range)
H.J. Lu [Sun, 4 May 2008 15:22:05 +0000 (15:22 +0000)]
re PR target/36121 (config/i386/i386.c: array index out of range)

2008-05-04  H.J. Lu  <hongjiu.lu@intel.com>

PR target/36121
* config/i386/i386.c (ix86_expand_special_args_builtin): Remove
3 argument handling.

From-SVN: r134932

16 years agonested-func-5.c: Skip for target without trampolines.
Andy Hutchinson [Sun, 4 May 2008 13:10:14 +0000 (13:10 +0000)]
nested-func-5.c: Skip for target without trampolines.

2008-05-04   Andy Hutchinson   <hutchinsonandy@aim.com>

* gcc.dg/nested-func-5.c: Skip for target without trampolines.
* gcc.dg/torture/nested-fn-1.c: Ditto.

From-SVN: r134931

16 years agoSorry, forgot this in previous commit.
David S. Miller [Sun, 4 May 2008 11:25:30 +0000 (04:25 -0700)]
Sorry, forgot this in previous commit.

From-SVN: r134930

16 years agoconfig.gcc (sparc*-*-*): Always set need_64bit_hwint to yes.
David S. Miller [Sun, 4 May 2008 11:25:04 +0000 (11:25 +0000)]
config.gcc (sparc*-*-*): Always set need_64bit_hwint to yes.

gcc/

* config.gcc (sparc*-*-*): Always set need_64bit_hwint to yes.
(sparc*-*-linux*): Use linux.h in tm_file.
(sparc-*-linux*): If 'enabled_targets' is 'all', build a bi-arch
compiler defaulting to 32-bit.
(sparc*-*-*): Remove explicit target settings of need_64bit_hwint,
no longer needed.
* config/sparc/linux.h: Remove definitions now obtained
properly from linux.h
* config/sparc/linux64.h: Likewise.
(ASM_CPU_DEFAULT_SPEC): Change this to ASM_CPU64_DEFAULT_SPEC, we
don't want this setting for 32-bit builds in a biarch compiler.
* doc/install.texi: Add sparc-linux to list of targets
supporting --enable-targets=all.

libcpp/

* configure.ac (sparc*-*-*): Always set need_64bit_hwint to yes.
* configure: Regenerate.

From-SVN: r134929

16 years agore PR fortran/35990 (run-time abort for PACK of run-time zero sized array)
Thomas Koenig [Sun, 4 May 2008 10:14:49 +0000 (10:14 +0000)]
re PR fortran/35990 (run-time abort for PACK of run-time zero sized array)

2008-05-04  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR libfortran/35990
* intrinsics/pack_generic.c:  Really commit.

From-SVN: r134928

16 years agore PR fortran/35990 (run-time abort for PACK of run-time zero sized array)
Thomas Koenig [Sun, 4 May 2008 08:06:02 +0000 (08:06 +0000)]
re PR fortran/35990 (run-time abort for PACK of run-time zero sized array)

2008-05-04  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR libfortran/35990
* intrinsics/pack_generic.c:  If an extent of the source
array is less then zero, set it to zero.  Set the source
pointer to NULL if the source size is zero.  Set the total
number of elements to zero if the vector has an extent
less or equal to zero.
* m4/pack.m4:  Set the source pointer to NULL if the
source array is zero-sized.  Set the total number of
elemements to zero if the vector has an extent less or
equal to zero.
* generated/pack_i1.c:  Regenerated.
* generated/pack_i2.c:  Regenerated.
* generated/pack_i4.c:  Regenerated.
* generated/pack_i8.c:  Regenerated.
* generated/pack_i16.c:  Regenerated.
* generated/pack_r4.c:  Regenerated.
* generated/pack_r8.c:  Regenerated.
* generated/pack_r10.c:  Regenerated.
* generated/pack_r16.c:  Regenerated.
* generated/pack_c4.c:  Regenerated.
* generated/pack_c8.c:  Regenerated.
* generated/pack_c10.c:  Regenerated.
* generated/pack_c16.c:  Regenerated.

2008-05-04  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR libfortran/35990
* gfortran.dg/intrinsic_pack_4.f90:  New test case.

From-SVN: r134927

16 years agoAdded myself with write-after-approval privs.
Kris Van Hees [Sun, 4 May 2008 00:54:32 +0000 (00:54 +0000)]
Added myself with write-after-approval privs.

From-SVN: r134926

16 years agoDaily bump.
GCC Administrator [Sun, 4 May 2008 00:17:17 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r134924

16 years agoMakefile.in (tree-ssa-phiprop.o): Fix dependencies.
Andrew Pinski [Sat, 3 May 2008 20:54:43 +0000 (13:54 -0700)]
Makefile.in (tree-ssa-phiprop.o): Fix dependencies.

2008-05-03  Andrew Pinski  <pinskia@gmail.com>

        * Makefile.in (tree-ssa-phiprop.o): Fix dependencies.

From-SVN: r134920

16 years agomisc.c (gfc_clear_ts): Set interface to NULL.
Janus Weil [Sat, 3 May 2008 20:37:48 +0000 (20:37 +0000)]
misc.c (gfc_clear_ts): Set interface to NULL.

2008-05-03  Janus Weil  <jaydub66@gmail.com>

* misc.c (gfc_clear_ts): Set interface to NULL.

From-SVN: r134918

16 years agodecl.c (components_to_record): Zero the alignment of the qualified union built for...
Eric Botcazou [Sat, 3 May 2008 19:47:22 +0000 (19:47 +0000)]
decl.c (components_to_record): Zero the alignment of the qualified union built for the variant part upon...

* decl.c (components_to_record): Zero the alignment of the qualified
union built for the variant part upon creating it.

From-SVN: r134917

16 years agodecl.c (maybe_pad_type): Try to get a form of the type with integral mode even if...
Eric Botcazou [Sat, 3 May 2008 19:35:01 +0000 (19:35 +0000)]
decl.c (maybe_pad_type): Try to get a form of the type with integral mode even if...

* decl.c (maybe_pad_type): Try to get a form of the type with integral
mode even if the alignment is not a factor of the original size.  But
make sure to create the inner field with the original size.  Reorder.
* trans.c (addressable_p) <COMPONENT_REF>: Treat the field of a padding
record as always addressable.
* utils.c (convert): Deal specially with conversions between original
and packable versions of a record type.
* utils2.c (build_binary_op) <MODIFY_EXPR>: Be more restrictive when
recognizing an assignment between padded objects.

From-SVN: r134916

16 years agoloop-36.c: Cleanup the dump file.
Richard Guenther [Sat, 3 May 2008 16:31:59 +0000 (16:31 +0000)]
loop-36.c: Cleanup the dump file.

2008-05-03  Richard Guenther  <rguenther@suse.de>

* gcc.dg/tree-ssa/loop-36.c: Cleanup the dump file.

From-SVN: r134912

16 years ago* zh_CN.po: Update.
Joseph Myers [Sat, 3 May 2008 16:19:42 +0000 (17:19 +0100)]
* zh_CN.po: Update.

From-SVN: r134907

16 years agoi386.c (ix86_builtin_type): Move V4SI_FTYPE_V4SF after V4SI_FTYPE_V8HI.
H.J. Lu [Sat, 3 May 2008 16:17:24 +0000 (16:17 +0000)]
i386.c (ix86_builtin_type): Move V4SI_FTYPE_V4SF after V4SI_FTYPE_V8HI.

2008-05-03  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.c (ix86_builtin_type): Move V4SI_FTYPE_V4SF
after V4SI_FTYPE_V8HI.
(ix86_init_mmx_sse_builtins): Move case V4HI_FTYPE_V4HI after
case V4SI_FTYPE_V2DF.

From-SVN: r134906

16 years agoinvoke.texi (max-flow-memory-locations): Removed.
Kenneth Zadeck [Sat, 3 May 2008 15:53:11 +0000 (15:53 +0000)]
invoke.texi (max-flow-memory-locations): Removed.

2008-05-03  Kenneth Zadeck <zadeck@naturalbridge.com>

* doc/invoke.texi (max-flow-memory-locations): Removed.
* params.def (PARAM_MAX_FLOW_MEMORY_LOCATIONS): Removed.

From-SVN: r134904

16 years agore PR middle-end/34973 (Wno-strict-aliasing is not working)
Richard Guenther [Sat, 3 May 2008 15:28:57 +0000 (15:28 +0000)]
re PR middle-end/34973 (Wno-strict-aliasing is not working)

2008-05-03  Richard Guenther  <rguenther@suse.de>

PR middle-end/34973
* opts.c (set_Wstrict_aliasing): Handle the turn-off case.

From-SVN: r134903