platform/upstream/gcc.git
16 years agoconfigure.host: Set atomic_flags on i486.
Benjamin Kosnik [Tue, 18 Sep 2007 15:25:39 +0000 (15:25 +0000)]
configure.host: Set atomic_flags on i486.

2007-09-17  Benjamin Kosnik  <bkoz@redhat.com>

* configure.host: Set atomic_flags on i486.

* include/Makefile.am: Remove parallel-mode pch.
* include/Makefile.in: Regenerate.

* testsuite/lib/libstdc++.exp: Set ld_library_flags for libgomp if
present.

* acinclude.m4 (GLIBCXX_ENABLE_PARALLEL): Comment.
* configure: Regenerate.

From-SVN: r128579

16 years agore PR c++/33464 (Broken diagnostic: 'trait_expr' not supported by dump_expr)
Paolo Carlini [Tue, 18 Sep 2007 14:35:42 +0000 (14:35 +0000)]
re PR c++/33464 (Broken diagnostic: 'trait_expr' not supported by dump_expr)

/cp
2007-09-18  Paolo Carlini  <pcarlini@suse.de>

PR c++/33464
* cxx-pretty-print.c (pp_cxx_trait_expression): Add.
(pp_cxx_primary_expression): Use it.
* cxx-pretty-print.h (pp_cxx_trait_expression): Declare.
* error.c (dump_expr): Use it.

/testsuite
2007-09-18  Paolo Carlini  <pcarlini@suse.de>

PR c++/33464
* g++.dg/ext/is_class_error.C: Rename to is_class_error1.C.
* g++.dg/ext/is_class_error2.C: New.

From-SVN: r128578

16 years agore PR target/33388 (fr30: ICE: RTL check: expected code 'reg', have 'subreg' in rhs_r...
Rask Ingemann Lambertsen [Tue, 18 Sep 2007 13:24:44 +0000 (15:24 +0200)]
re PR target/33388 (fr30: ICE: RTL check: expected code 'reg', have 'subreg' in rhs_regno, at rtl.h:983)

PR target/33388
PR target/33397
* config/fr30/fr30.md (addsi3): Check REG_P() before calling REGNO().
(addsi_small_int): Likewise.
(addsi_big_int): Use rtx_equal_p() instead of REGNO() comparison.
(one_cmplsi2): Likewise.
(negsi2): Delete.
(enter_func): Expand insn using hard_frame_pointer_rtx and
stack_pointer_rtx.
(*enter_func): New.
* config/fr30/fr30.c (fr30_expand_prologue): Check for
hard_frame_pointer_rtx instead of using REGNO() check.
Properly sign extend GEN_INT() argument.

From-SVN: r128577

16 years agom68k.c (override_options): Remove USE_GAS, use %.
Roman Zippel [Tue, 18 Sep 2007 12:11:49 +0000 (12:11 +0000)]
m68k.c (override_options): Remove USE_GAS, use %.

* config/m68k/m68k.c (override_options): Remove USE_GAS,
use %. syntax.
(output_dbcc_and_branch, output_scc_di): Replace all jbcc
alternatives with just jcc.
* config/m68k/m68k.md (addsi_lshrsi_31, beq0_di, bne0_di,
bge0_di, blt0_di, bgtu, bltu, bgeu, bleu, bgtu_rev,
bltu_rev, bgeu_rev, bleu_rev, jump, dbne_hi, dbne_si,
dbge_hi, dbge_si): Likewise.

From-SVN: r128576

16 years agom68k.md (beq, [...]): Replace all fbcc with fjcc.
Roman Zippel [Tue, 18 Sep 2007 12:08:00 +0000 (12:08 +0000)]
m68k.md (beq, [...]): Replace all fbcc with fjcc.

* config/m68k/m68k.md (beq, bne, bgt, blt, bge, ble, bordered,
bunordered, buneq, bunge, bungt, bunle, bunlt, bltgt, beq_rev,
bne_rev, bgt_rev, blt_rev, bge_rev, ble_rev, bordered_rev,
bunordered_rev, buneq_rev, bunge_rev, bungt_rev, bunle_rev,
bunlt_rev, bltgt_rev): Replace all fbcc with fjcc.

From-SVN: r128575

16 years agom68k-devices.def (51qe): New device.
Maxim Kuvyrkov [Tue, 18 Sep 2007 11:40:04 +0000 (11:40 +0000)]
m68k-devices.def (51qe): New device.

* config/m68k/m68k-devices.def (51qe): New device.
* config/m68k/m68k.c (FL_FOR_isa_c): Remove division unit.  Add it
to all uses of FL_FOR_isa_c for compatibility.
(all_microarchs): Add cfv1 microarchitecture.
(m68k_handle_option): Handle m51qe option.
* config/m68k/m68k.h (TARGET_CPU_CPP_BUILTINS): Handle 51QE.
(TUNE_CFV1): New macro.
(enum uarch_type): Add ucfv1.
* doc/invoke.texi: Document 51qe device and cfv1 microarchitecture.

From-SVN: r128574

16 years agore PR c++/31863 (g++-4.1: out of memory with -O1/-O2)
Richard Guenther [Tue, 18 Sep 2007 11:22:47 +0000 (11:22 +0000)]
re PR c++/31863 (g++-4.1: out of memory with -O1/-O2)

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

PR tree-optimization/31863
* tree-ssa-structalias.c (create_variable_info_for): Always
free the fieldstack.

From-SVN: r128573

16 years ago* opts.c (decode_options): Enable vectorization under -O3.
Dorit Nuzman [Tue, 18 Sep 2007 11:13:35 +0000 (11:13 +0000)]
* opts.c (decode_options): Enable vectorization under -O3.

From-SVN: r128572

16 years agore PR tree-optimization/33340 (ICE: SSA corruption with -O (FRE))
Richard Guenther [Tue, 18 Sep 2007 08:46:23 +0000 (08:46 +0000)]
re PR tree-optimization/33340 (ICE: SSA corruption   with -O (FRE))

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

PR tree-optimization/33340
* tree-ssa-sccvn.c (set_ssa_val_to): Do not set values to
SSA_NAMEs that occur in abnormal PHI nodes.

* g++.dg/torture/pr33340.C: New testcase.

From-SVN: r128571

16 years agore PR fortran/33231 (Reject for -std=f* calls to elementar functions where array...
Tobias Burnus [Tue, 18 Sep 2007 06:34:30 +0000 (08:34 +0200)]
re PR fortran/33231 (Reject for -std=f* calls to elementar functions where array and scalar are mixed)

2007-09-18  Tobias Burnus  <burnus@net-b.de>

PR fortran/33231
* resolve.c (resolve_elemental_actual): Check for conformance
of intent out/inout dummies.

2007-09-18  Tobias Burnus  <burnus@net-b.de>

PR fortran/33231
* gfortran.dg/elemental_optional_args_1.f90: Make valid Fortran.
* gfortran.dg/elemental_subroutine_1.f90: Ditto.
* gfortran.dg/elemental_subroutine_5.f90: New.

From-SVN: r128570

16 years agotree-cfg.c (is_ctrl_altering_stmt, [...]): Don't use const_get_call_expr_in.
Kaveh R. Ghazi [Tue, 18 Sep 2007 03:25:06 +0000 (03:25 +0000)]
tree-cfg.c (is_ctrl_altering_stmt, [...]): Don't use const_get_call_expr_in.

* tree-cfg.c (is_ctrl_altering_stmt, tree_block_ends_with_call_p):
Don't use const_get_call_expr_in.
* tree-gimple.c (const_get_call_expr_in): Delete.
* tree-gimple.h (const_get_call_expr_in): Likewise.

From-SVN: r128569

16 years agoDaily bump.
GCC Administrator [Tue, 18 Sep 2007 00:17:07 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r128567

16 years agotarget-supports.exp (check_profiling_available): Extend mips*-*-elf check to mips...
Richard Sandiford [Mon, 17 Sep 2007 23:44:00 +0000 (23:44 +0000)]
target-supports.exp (check_profiling_available): Extend mips*-*-elf check to mips*-*-elf*.

gcc/testsuite/
* lib/target-supports.exp (check_profiling_available): Extend
mips*-*-elf check to mips*-*-elf*.

From-SVN: r128564

16 years agodf-scan.c (df_notes_rescan): Do nothing if the instruction does not yet have a basic...
Richard Sandiford [Mon, 17 Sep 2007 23:41:36 +0000 (23:41 +0000)]
df-scan.c (df_notes_rescan): Do nothing if the instruction does not yet have a basic block.

gcc/
* df-scan.c (df_notes_rescan): Do nothing if the instruction does
not yet have a basic block.
* dse.c (find_shift_sequence): Don't set DF_NO_INSN_RESCAN.

From-SVN: r128563

16 years agomips.c (mips_file_start): Add ".previous" directives to both ".section"s.
Richard Sandiford [Mon, 17 Sep 2007 23:11:25 +0000 (23:11 +0000)]
mips.c (mips_file_start): Add ".previous" directives to both ".section"s.

gcc/
* config/mips/mips.c (mips_file_start): Add ".previous" directives
to both ".section"s.

From-SVN: r128562

16 years agoconfigure.ac: Raise minimum makeinfo version to 4.6.
Andreas Schwab [Mon, 17 Sep 2007 22:44:27 +0000 (22:44 +0000)]
configure.ac: Raise minimum makeinfo version to 4.6.

* configure.ac: Raise minimum makeinfo version to 4.6.
* configure: Regenerate.

From-SVN: r128561

16 years agomips.c (mips_output_mi_thunk): Use mips_function_ok_for_sibcall and const_call_insn_o...
Richard Sandiford [Mon, 17 Sep 2007 22:29:59 +0000 (22:29 +0000)]
mips.c (mips_output_mi_thunk): Use mips_function_ok_for_sibcall and const_call_insn_operand to determine if...

gcc/
* config/mips/mips.c (mips_output_mi_thunk): Use
mips_function_ok_for_sibcall and const_call_insn_operand
to determine if a direct sibcall is allowed.  Use
mips_classify_symbol to determine a global pointer is needed.

From-SVN: r128560

16 years agomips.md (*clear_upper32): Use "W" as the memory operand.
Richard Sandiford [Mon, 17 Sep 2007 22:26:19 +0000 (22:26 +0000)]
mips.md (*clear_upper32): Use "W" as the memory operand.

gcc/
* config/mips/mips.md (*clear_upper32): Use "W" as the memory operand.

From-SVN: r128559

16 years agofixed-obj.mk: New file to support fine-grain fixed-point functions.
Chao-ying Fu [Mon, 17 Sep 2007 22:18:13 +0000 (22:18 +0000)]
fixed-obj.mk: New file to support fine-grain fixed-point functions.

* fixed-obj.mk: New file to support fine-grain fixed-point functions.
* Makefile.in (fixed_point): Define.
Check if fixed_point is yes to build support functions.
* configure.ac: Check for fixed_point support.
* configure: Regenerated.
* gen-fixed.sh: New file to generate lists of fixed-point labels,
funcs, modes, from, to.

Co-Authored-By: Nigel Stephens <nigel@mips.com>
From-SVN: r128557

16 years agofixed-bit.h: New file.
Chao-ying Fu [Mon, 17 Sep 2007 22:12:54 +0000 (22:12 +0000)]
fixed-bit.h: New file.

* config/fixed-bit.h: New file.
* config/fixed-bit.c: New file.
* doc/libgcc.texi (Fixed-point fractional library routines): New node.

Co-Authored-By: Nigel Stephens <nigel@mips.com>
From-SVN: r128556

16 years agoc-format.h (format_kind_info): Add alloc_char field.
Jakub Jelinek [Mon, 17 Sep 2007 22:07:46 +0000 (00:07 +0200)]
c-format.h (format_kind_info): Add alloc_char field.

* c-format.h (format_kind_info): Add alloc_char field.
* c-format.c (scanf_flag_specs): Add 'm'.
(scanf_flag_pairs): Add 'a', 'm' pair.
(scan_char_table): Allow 'm' modifier for c, s, [, C and S.
(format_types_orig): Add alloc_char fields.
(check_format_info_main): Rename aflag to alloc_flag.
Handle fki->alloc_char. modifier after width and before length
modifiers.  Move FMT_FLAG_SCANF_A_KLUDGE handling before
length modifiers as well.
* config/sol2-c.c (solaris_format_types): Add alloc_char field.

* gcc.dg/format/c90-scanf-5.c: New test.
* gcc.dg/format/c99-scanf-4.c: New test.
* gcc.dg/format/ext-7.c: New test.
* gcc.dg/format/ext-8.c: New test.

From-SVN: r128555

16 years agore PR middle-end/33423 (internal compiler error: in expand_expr_real_1, at expr.c...
Jakub Jelinek [Mon, 17 Sep 2007 22:05:40 +0000 (00:05 +0200)]
re PR middle-end/33423 (internal compiler error: in expand_expr_real_1, at expr.c:8670)

PR middle-end/33423
* builtins.c (expand_builtin_memory_chk): Handle COMPOUND_EXPRs
returned by build_call_expr.

* gcc.c-torture/compile/20070915-1.c: New test.

From-SVN: r128554

16 years agotree-sra.c (maybe_lookup_element_for_expr): Return NULL for variable-sized records...
Eric Botcazou [Mon, 17 Sep 2007 18:47:15 +0000 (18:47 +0000)]
tree-sra.c (maybe_lookup_element_for_expr): Return NULL for variable-sized records too.

* tree-sra.c (maybe_lookup_element_for_expr) <COMPONENT_REF>: Return
NULL for variable-sized records too.
(sra_walk_expr) <COMPONENT_REF>: Stop at variable-sized records too.

From-SVN: r128553

16 years agoc-decl.c (pushdecl): Don't set DECL_LANG_SPECIFIC.
Tom Tromey [Mon, 17 Sep 2007 18:01:01 +0000 (18:01 +0000)]
c-decl.c (pushdecl): Don't set DECL_LANG_SPECIFIC.

* c-decl.c (pushdecl): Don't set DECL_LANG_SPECIFIC.
(c_builtin_function): Likewise.
(grokdeclarator): Likewise.

From-SVN: r128552

16 years agodefineclass.cc (MAJOR_1_6): New define.
Tom Tromey [Mon, 17 Sep 2007 16:30:46 +0000 (16:30 +0000)]
defineclass.cc (MAJOR_1_6): New define.

* defineclass.cc (MAJOR_1_6): New define.
(MINOR_1_6): Likewise.
(_Jv_ClassReader::parse): Handle 1.6 bytecode.

From-SVN: r128551

16 years agore PR fortran/33106 (Access of components of public entities of private types wrongly...
Tobias Burnus [Mon, 17 Sep 2007 15:55:22 +0000 (17:55 +0200)]
re PR fortran/33106 (Access of components of public entities of private types wrongly allowed)

2007-09-17  Tobias Burnus  <burnus@net-b.de>

PR fortran/33106
* resolve.c (resolve_symbol): Reject public variable of
private derived-types for Fortran 95.

2007-09-17  Tobias Burnus  <burnus@net-b.de>

PR fortran/33106
* gfortran.dg/private_type_9.f90: New.

From-SVN: r128550

16 years agore PR rtl-optimization/26449 (ICE in loop invariant motion)
Zdenek Dvorak [Mon, 17 Sep 2007 15:38:48 +0000 (17:38 +0200)]
re PR rtl-optimization/26449 (ICE in loop invariant motion)

PR rtl-optimization/26449
* loop-invariant.c (move_invariant_reg): Do not use force_operand.
(seq_insns_valid_p): Removed.

From-SVN: r128549

16 years agotree-nomudflap.c (gate_mudflap): New static function.
Eric Botcazou [Mon, 17 Sep 2007 15:15:16 +0000 (15:15 +0000)]
tree-nomudflap.c (gate_mudflap): New static function.

* tree-nomudflap.c (gate_mudflap): New static function.
(pass_mudflap_1): Use it as gate function.
(pass_mudflap_2): Likewise.

From-SVN: r128548

16 years agore PR middle-end/33348 (gfortran.dg/g77/19990826-3.f fails at -O1)
Jan Hubicka [Mon, 17 Sep 2007 15:12:10 +0000 (17:12 +0200)]
re PR middle-end/33348 (gfortran.dg/g77/19990826-3.f fails at -O1)

PR middle-end/33348
PR target/33406
* loop-invariant.c (move_invariant_reg): Unshare sequence.

From-SVN: r128547

16 years agoRemove superfluous line.
Eric Botcazou [Mon, 17 Sep 2007 14:47:27 +0000 (14:47 +0000)]
Remove superfluous line.

From-SVN: r128546

16 years agofor_each.h: Fixed comment/doxygen markup typos.
Johannes Singler [Mon, 17 Sep 2007 12:58:07 +0000 (12:58 +0000)]
for_each.h: Fixed comment/doxygen markup typos.

2007-09-17  Johannes Singler  <singler@ira.uka.de>

        * include/parallel/for_each.h: Fixed comment/doxygen markup typos.
        * include/parallel/base.h: Same.
        * include/parallel/numeric: Same.
        * include/parallel/quicksort.h: Same.
        * include/parallel/compiletime_settings.h: Same.
        * include/parallel/random_shuffle.h: Same.
        * include/parallel/balanced_quicksort.h: Same.
        * include/parallel/tree.h: Same.
        * include/parallel/settings.h: Same.
        * include/parallel/search.h: Same.
        * include/parallel/partition.h: Same.
        * include/parallel/partial_sum.h: Same.

From-SVN: r128545

16 years ago2007-09-17 Johannes Singler <singler@ira.uka.de>
Johannes Singler [Mon, 17 Sep 2007 12:38:26 +0000 (12:38 +0000)]
2007-09-17  Johannes Singler <singler@ira.uka.de>

        * MAINTAINERS (write-after-approval) add myself

From-SVN: r128544

16 years agore PR middle-end/33449 (ICE for fortran code with -O2 -ftree-vectorize)
Francois-Xavier Coudert [Mon, 17 Sep 2007 10:42:29 +0000 (10:42 +0000)]
re PR middle-end/33449 (ICE for fortran code with -O2 -ftree-vectorize)

PR middle-end/33449
* gfortran.dg/pr33449.f90: New test.

From-SVN: r128543

16 years agotype_traitsfwd.h (aligned_storage): Remove declaration.
Paolo Carlini [Mon, 17 Sep 2007 10:18:51 +0000 (10:18 +0000)]
type_traitsfwd.h (aligned_storage): Remove declaration.

2007-09-17  Paolo Carlini  <pcarlini@suse.de>

* include/tr1_impl/type_traitsfwd.h (aligned_storage): Remove
declaration.
* include/tr1_impl/type_traits (aligned_storage): Remove.
* include/std/type_traits (aligned_storage, __aligned_storage_msa):
Add.
* include/tr1/type_traits (aligned_storage): Add.
* testsuite/20_util/aligned_storage/value.cc: New.
* testsuite/20_util/aligned_storage/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
dg-error lines.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.

From-SVN: r128542

16 years agoresolve.c (resolve_fl_procedure): Allow private dummies for Fortran 2003.
Tobias Burnus [Mon, 17 Sep 2007 10:12:06 +0000 (12:12 +0200)]
resolve.c (resolve_fl_procedure): Allow private dummies for Fortran 2003.

2007-09-17  Tobias Burnus  <burnus@net-b.de>

* resolve.c (resolve_fl_procedure): Allow private dummies
for Fortran 2003.

2007-09-17  Tobias Burnus  <burnus@net-b.de>

* gfortran.dg/interface_15.f90: Compile with -std=f95.
* gfortran.dg/private_type_1.f90: Ditto
* gfortran.dg/interface_18.f90: New.
* gfortran.dg/private_type_8.f90: New.

From-SVN: r128541

16 years agotrans-types.c (gfc_get_desc_dim_type): Do not to try emit debug info.
Francois-Xavier Coudert [Mon, 17 Sep 2007 10:03:12 +0000 (10:03 +0000)]
trans-types.c (gfc_get_desc_dim_type): Do not to try emit debug info.

* trans-types.c (gfc_get_desc_dim_type): Do not to try
emit debug info.
(gfc_get_array_descriptor_base): Likewise.
(gfc_get_mixed_entry_union): Likewise
(gfc_get_derived_type): Set decl location for fields and
derived type itself.

From-SVN: r128540

16 years agore PR tree-optimization/33319 (g++.dg/tree-ssa/pr27549.C ICE with vectorization)
Victor Kaplansky [Mon, 17 Sep 2007 09:37:31 +0000 (09:37 +0000)]
re PR tree-optimization/33319 (g++.dg/tree-ssa/pr27549.C ICE with vectorization)

        PR tree-optimization/33319
        * tree-vect-analyze.c (vect_same_range_drs): New.
        (vect_vfa_range_equal): New.
        (vect_is_duplicate_ddr): Removed.
        (vect_mark_for_runtime_alias_test): Do not perform marking when
        optimizing for size or max_param for alias checking is zero.
        Move the function before vect_analyze_data_ref_dependence.
        (vect_analyze_data_ref_dependence): Add call to
        vect_mark_for_runtime_alias_test in two cases when dependence
        is not clear.
        (vect_analyze_data_ref_dependences): Do not call to
        vect_mark_for_runtime_alias_test.
        (vect_prune_runtime_alias_test_list): New.
        (vect_analyze_loop): Add call to vect_prune_runtime_alias_test_list.
        * tree-vect-transform.c (vect_estimate_min_profitable_iters):
        Update vec_outside_cost.
        (vect_vfa_segment_size): More compact code, use TYPE_SIZE_UNIT.
        (vect_create_cond_for_alias_checks): Build the base address of data
        reference from DR_GROUP_FIRST_DR.
        (vect_loop_versioning): New.
        (vect_transform_loop): Add a call to vect_loop_versioning.
        Remove factored out code.

From-SVN: r128539

16 years agodecl.c (gnat_to_gnu_entity): Make again the type of an object covered by 13.3(19...
Eric Botcazou [Mon, 17 Sep 2007 06:29:32 +0000 (06:29 +0000)]
decl.c (gnat_to_gnu_entity): Make again the type of an object covered by 13.3(19) volatile.

* decl.c (gnat_to_gnu_entity) <object>: Make again the type of an
object covered by 13.3(19) volatile.

From-SVN: r128538

16 years agore PR middle-end/33273 (FAIL: 27_io/basic_istream/ignore/char/1.cc (test for excess...
John David Anglin [Mon, 17 Sep 2007 02:13:23 +0000 (02:13 +0000)]
re PR middle-end/33273 (FAIL: 27_io/basic_istream/ignore/char/1.cc (test for excess errors))

PR middle-end/33273
* expr.c (store_expr): Call adjust_address to change mode of dest_mem
to BLKmode.

From-SVN: r128537

16 years agoDaily bump.
GCC Administrator [Mon, 17 Sep 2007 00:17:22 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r128535

16 years agotype_traits (aligned_storage): Implement in the neat and general way.
Paolo Carlini [Sun, 16 Sep 2007 23:59:34 +0000 (23:59 +0000)]
type_traits (aligned_storage): Implement in the neat and general way.

2007-09-16  Paolo Carlini  <pcarlini@suse.de>
    Douglas Gregor  <doug.gregor@gmail.com>

* include/tr1_impl/type_traits (aligned_storage): Implement
in the neat and general way.

Co-Authored-By: Douglas Gregor <doug.gregor@gmail.com>
From-SVN: r128532

16 years agore PR c++/33124 (C++ frontend should not warn about new a[0] in template context)
Paolo Carlini [Sun, 16 Sep 2007 22:54:12 +0000 (22:54 +0000)]
re PR c++/33124 (C++ frontend should not warn about new a[0] in template context)

/cp
2007-09-16  Paolo Carlini  <pcarlini@suse.de>

PR c++/33124
* init.c (build_new): Remove warning for zero-element
allocations.

/testsuite
2007-09-16  Paolo Carlini  <pcarlini@suse.de>

PR c++/33124
* g++.dg/warn/new1.C: Adjust.
* g++.dg/torture/str_empty.C: Likewise.

From-SVN: r128531

16 years agodse.c (find_shift_sequence): Allow word as well as subword shifts.
Richard Sandiford [Sun, 16 Sep 2007 21:02:54 +0000 (21:02 +0000)]
dse.c (find_shift_sequence): Allow word as well as subword shifts.

gcc/
* dse.c (find_shift_sequence): Allow word as well as subword shifts.
Do the tentative shift expansion with the DF_NO_INSN_RESCAN flag set.
Fix the call to insn_rtx_cost.  Skip access sizes that require a
real truncation of the store register.  Use convert_move instead
of gen_lowpart when narrowing the result.
(replace_read): Use convert_move instead of gen_lowpart when
narrowing the store rhs.

gcc/testsuite/
* gcc.target/mips/dse-1.c: New test.

From-SVN: r128530

16 years agore PR c++/32756 (wrong ambiguous overload error?)
Nathan Sidwell [Sun, 16 Sep 2007 17:26:42 +0000 (17:26 +0000)]
re PR c++/32756 (wrong ambiguous overload error?)

cp/
PR c++/32756
* call.c (maybe_handle_implicit_object): Set this_p, clear
rvaluedness_matches_p.
(compare_ics): Do not compare rvaluedness matching when one of the
operands is an implicit object.

testsuite/
PR c++/32756
* g++.dg/overload/operator3.C: New.

From-SVN: r128528

16 years agoFix typo.
Richard Sandiford [Sun, 16 Sep 2007 09:46:44 +0000 (09:46 +0000)]
Fix typo.

From-SVN: r128526

16 years agomips.md (SHORT): Fix long line.
Richard Sandiford [Sun, 16 Sep 2007 09:45:36 +0000 (09:45 +0000)]
mips.md (SHORT): Fix long line.

gcc/
* config/mips/mips.md (SHORT): Fix long line.
(SUBDI): New mode iterator.  Extend the shift-and-truncate insns
to QImode and HImoe.

gcc/testsuite/
* gcc.target/mips/truncate-1.c: New test.

From-SVN: r128525

16 years agomips.h (POINTERS_EXTEND_UNSIGNED): Define.
Richard Sandiford [Sun, 16 Sep 2007 09:23:31 +0000 (09:23 +0000)]
mips.h (POINTERS_EXTEND_UNSIGNED): Define.

gcc/
* config/mips/mips.h (POINTERS_EXTEND_UNSIGNED): Define.

From-SVN: r128524

16 years agore PR fortran/29396 (segfault with character pointer association)
Paul Thomas [Sun, 16 Sep 2007 09:17:49 +0000 (09:17 +0000)]
re PR fortran/29396 (segfault with character pointer association)

2007-09-16  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/29396
PR fortran/29606
PR fortran/30625
PR fortran/30871
* trans.h : Add extra argument to gfc_build_array_ref. Rename
gfc_conv_aliased_arg to gfc_conv_subref_array_arg.  Move
prototype of is_aliased_array to gfortran.h and rename it
gfc_is_subref_array.  Add field span to lang_decl, add a new
decl lang specific flag accessed by GFC_DECL_SUBREF_ARRAY_P
and a new type flag GFC_DECL_SUBREF_ARRAY_P.
* trans.c (gfc_build_array_ref): Add the new argument, decl.
If this is a subreference array pointer, use the lang_decl
field 'span' to calculate the offset in bytes and use pointer
arithmetic to address the element.
* trans-array.c (gfc_conv_scalarized_array_ref,
gfc_conv_array_ref): Add the backend declaration as the third
field, if it is likely to be a subreference array pointer.
(gfc_conv_descriptor_dimension, gfc_trans_array_ctor_element,
gfc_trans_array_constructor_element, structure_alloc_comps,
gfc_conv_array_index_offset): For all other references to
gfc_build_array_ref, set the third argument to NULL.
(gfc_get_dataptr_offset): New function.
(gfc_conv_expr_descriptor): If the rhs of a pointer assignment
is a subreference array, then calculate the offset to the
subreference of the first element and set the descriptor data
pointer to this, using gfc_get_dataptr_offset.
trans-expr.c (gfc_get_expr_charlen): Use the expression for the
character length for a character subreference.
(gfc_conv_substring, gfc_conv_subref_array_arg): Add NULL for
third argument in call to gfc_build_array_ref.
(gfc_conv_aliased_arg): Rename to gfc_conv_subref_array_arg.
(is_aliased_array): Remove.
(gfc_conv_function_call): Change reference to is_aliased_array
to gfc_is_subref_array and reference to gfc_conv_aliased_arg to
gfc_conv_subref_array_arg.
(gfc_trans_pointer_assignment): Add the array element length to
the lang_decl 'span' field.
* gfortran.h : Add subref_array_pointer to symbol_attribute and
add the prototype for gfc_is_subref_array.
* trans-stmt.c : Add NULL for third argument in all references
to gfc_build_array_ref.
* expr.c (gfc_is_subref_array): Renamed is_aliased_array.
If this is a subreference array pointer, return true.
(gfc_check_pointer_assign): If the rhs is a subreference array,
set the lhs subreference_array_pointer attribute.
* trans-decl.c (gfc_get_symbol_decl): Allocate the lang_decl
field if the symbol is a subreference array pointer and set an
initial value of zero for the 'span' field.
* trans-io.c (set_internal_unit): Refer to is_subref_array and
gfc_conv_subref_array_arg.
(nml_get_addr_expr): Add NULL third argument to
gfc_build_array_ref.
(gfc_trans_transfer): Use the scalarizer for a subreference
array.

2007-09-16  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/29396
PR fortran/29606
PR fortran/30625
PR fortran/30871
* gfortran.dg/subref_array_pointer_1.f90: New test.
* gfortran.dg/subref_array_pointer_2.f90: New test.

From-SVN: r128523

17 years agoDaily bump.
GCC Administrator [Sun, 16 Sep 2007 00:16:57 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r128521

17 years ago* gfortran.dg/nint_2.f90: Correct last change.
H.J. Lu [Sun, 16 Sep 2007 00:12:51 +0000 (00:12 +0000)]
* gfortran.dg/nint_2.f90: Correct last change.

From-SVN: r128518

17 years agotree-parloops.c: New file.
Zdenek Dvorak [Sat, 15 Sep 2007 21:53:45 +0000 (23:53 +0200)]
tree-parloops.c: New file.

* tree-parloops.c: New file.
* tree-ssa-operands.h (free_stmt_operands): Declare.
* tree-ssa-loop-manip.c (split_loop_exit_edge): Return the new basic
block.
* tree-pass.h (pass_parallelize_loops): Declare.
* omp-low.c (expand_omp_parallel, expand_omp_for): Update SSA form for
virtual operands.
(build_omp_regions_1): Allow analysing just a single OMP region and
its subregions.
( build_omp_regions_root, omp_expand_local): New functions.
(build_omp_regions): Add argument to build_omp_regions_1 call.
* builtins.def (DEF_GOMP_BUILTIN): Initialize OMP builtins when
autoparallelization is run.
* timevar.def (TV_TREE_PARALLELIZE_LOOPS): New.
* tree-ssa-loop.c (gate_tree_parallelize_loops, tree_parallelize_loops,
pass_parallelize_loops): New.
* common.opt (ftree-parallelize-loops): New.
* tree-flow.h (omp_expand_local, tree_duplicate_sese_tail,
parallelize_loops): Declare.
(add_phi_args_after_copy, split_loop_exit_edge): Declaration changed.
* Makefile.in (tree-parloops.o): Added.
* tree-cfg.c (add_phi_args_after_copy_edge, tree_duplicate_sese_tail):
New functions.
(add_phi_args_after_copy_bb): Use add_phi_args_after_copy_edge.
(add_phi_args_after_copy): Call add_phi_args_after_copy_edge for
one extra edge as well.
(tree_duplicate_sese_region): Add argument to add_phi_args_after_copy.
Use VEC_free to free doms vector.
(move_block_to_fn): Update loop info. Remove phi nodes for virtual
operands.  Recompute operand caches in the new function.
(move_sese_region_to_fn): Update loop info.
* passes.c (init_optimization_passes): Add pass_parallelize_loops.
* tree-ssa-operands.c (free_stmt_operands): New function.

* doc/passes.texi: Document autoparallelization.
* doc/invoke.texi (-ftree-parallelize-loops): New option.

* gcc.dg/tree-ssa/parallelization-1.c: New test.

From-SVN: r128517

17 years agore PR target/33062 (ICE in emit_move_insn and expand_call with -fdefault-integer-8)
John David Anglin [Sat, 15 Sep 2007 19:30:50 +0000 (19:30 +0000)]
re PR target/33062 (ICE in emit_move_insn and expand_call with -fdefault-integer-8)

PR target/33062
* pa.c (function_value): Use GET_MODE_BITSIZE instead of TYPE_PRECISION.

From-SVN: r128516

17 years agotree-vect-transform.c (vect_get_vec_defs_for_stmt_copy): check if the VEC is not...
Dorit Nuzman [Sat, 15 Sep 2007 18:24:23 +0000 (18:24 +0000)]
tree-vect-transform.c (vect_get_vec_defs_for_stmt_copy): check if the VEC is not NULL.

        * tree-vect-transform.c (vect_get_vec_defs_for_stmt_copy): check if
        the VEC is not NULL.
        (vectorizable_type_demotion, vectorizable_type_promotion): Check that
        get_vectype_for_scalar_type succeeded.
        (vectorizable_conversion): Likewise.

From-SVN: r128514

17 years agojava-tree.h (struct lang_decl_func): Remove.
Tom Tromey [Sat, 15 Sep 2007 15:25:22 +0000 (15:25 +0000)]
java-tree.h (struct lang_decl_func): Remove.

* java-tree.h (struct lang_decl_func) <function_decl_body>:
Remove.
<init_final>: Likewise.
* lang.c (java_dump_tree): Update.
* java-tree.h (DECL_FUNCTION_BODY): Remove.

From-SVN: r128513

17 years agore PR libfortran/21185 (Improve testsuite results on newlib targets)
Francois-Xavier Coudert [Sat, 15 Sep 2007 14:52:46 +0000 (14:52 +0000)]
re PR libfortran/21185 (Improve testsuite results on newlib targets)

PR libfortran/21185
* runtime/compile_options.c (set_options): Fix typo.
* runtime/main.c (store_exe_path): If getcwd is not available,
don't use it.
* intrinsics/getcwd.c: Same thing here.
* io/unix.c (fallback_access): New fallback function for access.
(fix_fd): Don't use dup if it's not available.
* configure.ac: Check for dup and getcwd.
* configure: Regenerate.
* config.h.in: Regenerate.

From-SVN: r128512

17 years agoDaily bump.
GCC Administrator [Sat, 15 Sep 2007 00:17:05 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r128508

17 years agobase.h (__gnu_parallel::less<Tp>): Add partial specialization for one argument.
Benjamin Kosnik [Fri, 14 Sep 2007 20:37:25 +0000 (20:37 +0000)]
base.h (__gnu_parallel::less<Tp>): Add partial specialization for one argument.

2007-09-14  Benjamin Kosnik  <bkoz@redhat.com>

* include/parallel/base.h (__gnu_parallel::less<Tp>): Add partial
        specialization for one argument.
(__gnu_parallel::less): Add operator.

* include/parallel/multiway_merge.h: Use __builtin_alloca.
* include/parallel/partial_sum.h: Same.
* include/parallel/find.h: Same.

From-SVN: r128505

17 years agoi386.md (*floatdi<mode>2_i387): Guard against TARGET_64BIT.
Jan Hubicka [Fri, 14 Sep 2007 20:26:17 +0000 (22:26 +0200)]
i386.md (*floatdi<mode>2_i387): Guard against TARGET_64BIT.

2007-09-14  Jan Hubicka  <jh@suse.cz>

* config/i386/i386.md (*floatdi<mode>2_i387): Guard against
TARGET_64BIT.

From-SVN: r128504

17 years agoboost_shared_ptr.h: (__weak_ptr::lock()): Add missing template argument.
Jonathan Wakely [Fri, 14 Sep 2007 20:17:29 +0000 (20:17 +0000)]
boost_shared_ptr.h: (__weak_ptr::lock()): Add missing template argument.

2007-09-14  Jonathan Wakely  <jwakely.gcc@gmail.com>

* include/tr1_impl/boost_shared_ptr.h: (__weak_ptr::lock()): Add
missing template argument.
* testsuite/tr1/2_general_utilities/shared_ptr/requirements/
explicit_instantiation/2.cc: New.
* testsuite/tr1/2_general_utilities/weak_ptr/requirements/
explicit_instantiation/2.cc: New.

From-SVN: r128503

17 years agore PR target/33438 (ICE in cselib_record_set, at cselib.c:1515 on x86)
Uros Bizjak [Fri, 14 Sep 2007 19:24:26 +0000 (21:24 +0200)]
re PR target/33438 (ICE in cselib_record_set, at cselib.c:1515 on x86)

        PR target/33438
        * config/i386/i386.md (fmodxf3): Copy operands[2] to temporary register
        when operands[2] equals operands[1].
        (remainderxf3): Ditto.

testsuite/ChangeLog:

        PR target/33438
        * gcc.target/i386/pr33438.c: New test.

From-SVN: r128502

17 years agotm.texi (LIBGCC2_UNWIND_ATTRIBUTE): Document.
Sandra Loosemore [Fri, 14 Sep 2007 18:35:12 +0000 (14:35 -0400)]
tm.texi (LIBGCC2_UNWIND_ATTRIBUTE): Document.

2007-09-14  Sandra Loosemore  <sandra@codesourcery.com>
    Nigel Stephens  <nigel@mips.com>

gcc/
* doc/tm.texi (LIBGCC2_UNWIND_ATTRIBUTE): Document.
* unwind-generic.h (LIBGCC2_UNWIND_ATTRIBUTE): Define.
(_Unwind_RaiseException): Add LIBGCC2_UNWIND_ATTRIBUTE to
declaration.
(_Unwind_ForcedUnwind): Likewise.
(_Unwind_Resume): Likewise.
(_Unwind_Resume_or_Rethrow): Likewise.
(_Unwind_Backtrace): Likewise.
(_Unwind_SjLj_RaiseException): Likewise.
(_Unwind_SjLj_ForcedUnwind): Likewise.
(_Unwind_SjLj_Resume): Likewise.
(_Unwind_SjLj_Resume_or_Rethrow): Likewise.
* unwind.inc (_Unwind_RaiseException): Add LIBGCC2_UNWIND_ATTRIBUTE
to definition.
(_Unwind_ForcedUnwind): Likewise.
(_Unwind_Resume): Likewise.
(_Unwind_Resume_or_Rethrow): Likewise.
(_Unwind_Backtrace): Likewise.
* unwind-compat.c (_Unwind_Backtrace): Likewise.
(_Unwind_ForcedUnwind): Likewise.
(_Unwind_RaiseException): Likewise.
(_Unwind_Resume): Likewise.
(_Unwind_Resume_or_Rethrow): Likewise.

* config/mips/mips.h (LIBGCC2_UNWIND_ATTRIBUTE): Define to force
nomips16 mode when IN_LIBGCC2 with hard float.

Co-Authored-By: Nigel Stephens <nigel@mips.com>
From-SVN: r128501

17 years agoall_pedantic_errors.cc: New.
Benjamin Kosnik [Fri, 14 Sep 2007 17:46:56 +0000 (17:46 +0000)]
all_pedantic_errors.cc: New.

2007-09-14  Benjamin Kosnik  <bkoz@redhat.com>

        * testsuite/17_intro/headers/all_pedantic_errors.cc: New.
        * include/tr1_impl/cinttypes: Add pragma GCC system_header.
        * include/tr1_impl/cfenv: Same.
        * include/tr1_impl/cstdint: Same.
        * include/tr1/cstdbool: Same.
        * include/ext/pb_ds/detail/resize_policy/
        hash_prime_size_policy_imp.hpp: Same.
        * include/parallel/partial_sum.h: Avoid VLA error with
        __builtin_alloca.

From-SVN: r128500

17 years agosdemtk.opt: Update to GPLv3.
Richard Sandiford [Fri, 14 Sep 2007 17:31:38 +0000 (17:31 +0000)]
sdemtk.opt: Update to GPLv3.

gcc/
* config/mips/sdemtk.opt: Update to GPLv3.
* config/mips/sdemtk.h: Likewise.

From-SVN: r128499

17 years agoconfig.gcc (mips*-*-linux*): Recognise mipsisa32r2 and set MIPS_ISA_DEFAULT appropria...
Nigel Stephens [Fri, 14 Sep 2007 17:30:27 +0000 (17:30 +0000)]
config.gcc (mips*-*-linux*): Recognise mipsisa32r2 and set MIPS_ISA_DEFAULT appropriately.

gcc/
2007-09-14  Nigel Stephens  <nigel@mips.com>

* config.gcc (mips*-*-linux*): Recognise mipsisa32r2 and set
MIPS_ISA_DEFAULT appropriately.  Don't make soft-float the default
for mipsisa32-*-linux*.

From-SVN: r128498

17 years agoconfigure.ac: Correct makeinfo version check.
Alan Modra [Fri, 14 Sep 2007 15:42:18 +0000 (15:42 +0000)]
configure.ac: Correct makeinfo version check.

* configure.ac: Correct makeinfo version check.
* configure: Regenerate.

From-SVN: r128497

17 years ago* MAINTAINERS: Update my email address.
Richard Sandiford [Fri, 14 Sep 2007 15:39:29 +0000 (15:39 +0000)]
* MAINTAINERS: Update my email address.

From-SVN: r128496

17 years agoconfigure.ac (mips*-sde-elf*): New stanza.
Richard Sandiford [Fri, 14 Sep 2007 14:50:26 +0000 (14:50 +0000)]
configure.ac (mips*-sde-elf*): New stanza.

* configure.ac (mips*-sde-elf*): New stanza.  Add target-libiberty
to $skipdirs and only disable gprof for newlib.  Use the normal
mips*-elf* handling in other respects.
* configure: Regnerate.

gcc/
2007-xx-xx  Nigel Stephens  <nigel@mips.com>
    David Ung  <davidu@mips.com>
    Thiemo Seufer  <ths@mips.com>
    Richard Sandiford  <richard@codesourcery.com>

* config.gcc (mips*-sde-elf*): Add support for the SDE C libraries.
* configure.ac: Add a mipssde threading type.
* configure: Regenerate.
* config/mips/sdemtk.h: New file.
* config/mips/t-sdemtk: Likewise.
* config/mips/sdemtk.opt: Likewise.
* gthr-mipssde.h: Likewise.
* config/mips/sde.h (FUNCTION_PROFILER): Move to config/mips/sdemtk.h.
* config/mips/mips.h (MIPS_SAVE_REG_FOR_PROFILING_P): New macro.
(MIPS_ICACHE_SYNC): New macro, split from ...
* config/mips/mips.md (clear_cache): ...here.
* config/mips/mips.c (mips_save_reg_p): Check
MIPS_SAVE_REG_FOR_PROFILING_P on profiled functions.
(build_mips16_function_stub): Use targetm.strip_name_encoding.
(build_mips16_call_stub): Likewise.

libstdc++-v3/
2007-xx-xx  Thiemo Seufer  <ths@mips.com>

* crossconfig.m4 (mips*-sde-elf*): New stanza.
* configure: Regenerate.

From-SVN: r128495

17 years ago* gfortran.dg/nint_2.f90: Revert previous commit.
Francois-Xavier Coudert [Fri, 14 Sep 2007 14:34:02 +0000 (14:34 +0000)]
* gfortran.dg/nint_2.f90: Revert previous commit.

From-SVN: r128494

17 years agoMakefile.in (stmp-int-hdrs): Depend on fixinc_list.
Richard Sandiford [Fri, 14 Sep 2007 14:30:33 +0000 (14:30 +0000)]
Makefile.in (stmp-int-hdrs): Depend on fixinc_list.

gcc/
* Makefile.in (stmp-int-hdrs): Depend on fixinc_list.

From-SVN: r128493

17 years ago* gfortran.dg/nint_2.f90: Do not xfail on powerpc64-linux.
Francois-Xavier Coudert [Fri, 14 Sep 2007 12:55:17 +0000 (12:55 +0000)]
* gfortran.dg/nint_2.f90: Do not xfail on powerpc64-linux.

From-SVN: r128491

17 years agore PR target/32337 (Error: Register number out of range 0..1)
Jakub Jelinek [Fri, 14 Sep 2007 09:56:59 +0000 (11:56 +0200)]
re PR target/32337 (Error: Register number out of range 0..1)

PR target/32337
* config/ia64/ia64.c (find_gr_spill): Don't decrement
current_frame_info.n_local_regs.  Don't return emitted local
regs.
(ia64_compute_frame_size): Improve unwind hack to put
RP, PFS, FP in that order by allowing some of the registers
been already emitted, as long as they are emitted to the
desired register.

From-SVN: r128490

17 years agore PR debug/33429 (debug info for class2 in g++.dg/other/unused1.C requires -femit...
Hans-Peter Nilsson [Fri, 14 Sep 2007 06:48:17 +0000 (06:48 +0000)]
re PR debug/33429 (debug info for class2 in g++.dg/other/unused1.C  requires -femit-class-debug-always)

PR debug/33429
* g++.dg/other/unused1.C: XFAIL class2 scan.

From-SVN: r128489

17 years agoPR c++/17743, c++/19163
Jason Merrill [Fri, 14 Sep 2007 06:07:25 +0000 (02:07 -0400)]
PR c++/17743, c++/19163

        PR c++/17743, c++/19163
        * decl2.c (is_late_template_attribute): New fn.
        (splice_template_attributes, save_template_attributes): New fns.
        (cplus_decl_attributes): Call save_template_attributes.
        * pt.c (apply_late_template_attributes): New fn.
        (instantiate_class_template, tsubst_decl): Use it.
        * cp-tree.h: Declare is_late_template_attribute.

From-SVN: r128488

17 years agovmx2spu.h (vec_extract, [...]): New intrinsics.
Ulrich Weigand [Fri, 14 Sep 2007 04:24:25 +0000 (14:24 +1000)]
vmx2spu.h (vec_extract, [...]): New intrinsics.

* config/spu/vmx2spu.h (vec_extract, vec_insert, vec_lvlx,
vec_lvlxl, vec_lvrx, vec_lvrxl, vec_promote, vec_splats,
vec_stvlx, vec_stvlxl, vec_stvrx, vec_stvrxl): New intrinsics.

From-SVN: r128487

17 years agoDaily bump.
GCC Administrator [Fri, 14 Sep 2007 00:16:58 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r128484

17 years agodse.c (find_shift_sequence): New function.
Eric Christopher [Fri, 14 Sep 2007 00:06:00 +0000 (00:06 +0000)]
dse.c (find_shift_sequence): New function.

2007-09-13  Eric Christopher  <echristo@apple.com>
    Kenneth Zadeck <zadeck@naturalbridge.com>

* dse.c (find_shift_sequence): New function.
(replace_read): Add case to remove read if it requires shift.
* config/i386/i386.c (ix86_expand_prologue): Fixed typo in comment.

Co-Authored-By: Kenneth Zadeck <zadeck@naturalbridge.com>
From-SVN: r128481

17 years agoc-common.c (fname_as_string): Update.
Tom Tromey [Thu, 13 Sep 2007 20:18:38 +0000 (20:18 +0000)]
c-common.c (fname_as_string): Update.

gcc
* c-common.c (fname_as_string): Update.
* c-parser.c (c_parser) <lex_untranslated_string>: New field.
(c_lex_one_token): Update.  Add 'parser' argument.
(c_parser_simple_asm_expr): Update.
(c_parser_attributes): Update.
(c_parser_asm_statement): Update.
(c_parser_asm_operands): Update.
(c_parser_peek_token): Update.
(c_parser_peek_2nd_token): Update.
* c-lex.c (c_lex_string_translate): Remove.
(c_lex_return_raw_strings): Likewise.
(c_lex_with_flags): Added 'lex_flags' argument.
(lex_string): Added 'translate' argument.
* c-pragma.h (c_lex_with_flags): Update.
(c_lex_string_translate, c_lex_return_raw_strings): Remove.
(C_LEX_STRING_NO_TRANSLATE): New define.
(C_LEX_RAW_STRINGS): Likewise.
gcc/cp
* parser.c (cp_lexer_new_main): Don't use
c_lex_return_raw_strings.
(cp_lexer_get_preprocessor_token): Update.  Add special case when
lexer is NULL.

From-SVN: r128479

17 years agoiresolve.c (resolve_mask_arg): If a mask is an array expression, convert it to kind=1.
Thomas Koenig [Thu, 13 Sep 2007 19:02:31 +0000 (19:02 +0000)]
iresolve.c (resolve_mask_arg): If a mask is an array expression, convert it to kind=1.

2007-09-13  Thomas Koenig  <tkoenig@gcc.gnu.org>

* iresolve.c (resolve_mask_arg): If a mask is an array
expression, convert it to kind=1.

From-SVN: r128477

17 years agoFrom Jie Zhang:
Bernd Schmidt [Thu, 13 Sep 2007 18:27:28 +0000 (18:27 +0000)]
From Jie Zhang:

* config/bfin/bfin.c (enum bfin_builtins): Add BFIN_BUILTIN_ONES,
BFIN_BUILTIN_CPLX_MUL_16_S40, BFIN_BUILTIN_CPLX_MAC_16_S40,
BFIN_BUILTIN_CPLX_MSU_16_S40, and BFIN_BUILTIN_CPLX_SQU.
(bfin_init_builtins): Initialize __builtin_bfin_ones,
__builtin_bfin_min_fr1x16, __builtin_bfin_max_fr1x16,
__builtin_bfin_min_fr1x32, __builtin_bfin_max_fr1x32,
__builtin_bfin_cmplx_add, __builtin_bfin_cmplx_sub,
__builtin_bfin_cmplx_mul_s40, __builtin_bfin_cmplx_mac_s40,
__builtin_bfin_cmplx_msu_s40 and __builtin_bfin_csqu_fr16.
(bdesc_1arg): Add __builtin_bfin_ones.
(bfin_expand_builtin): Expand __builtin_bfin_cmplx_mul_s40,
__builtin_bfin_cmplx_mac_s40, __builtin_bfin_cmplx_msu_s40,
and __builtin_bfin_csqu_fr16.
* config/bfin/bfin.md (UNSPEC_ONES): New constant.
(ones): New define_insn.
(ssaddhi3_parts): New define_insn.
(sssubhi3_parts): New define_insn.
(flag_mulhi_parts): New define_insn.

From-SVN: r128475

17 years agocommon.opt (femit-class-debug-always): Turn off by default.
Seongbae Park [Thu, 13 Sep 2007 18:25:33 +0000 (18:25 +0000)]
common.opt (femit-class-debug-always): Turn off by default.

2007-09-13  Seongbae Park <seongbae.park@gmail.com>

* common.opt (femit-class-debug-always): Turn off by default.

From-SVN: r128474

17 years agore PR fortran/33343 (ICE (segfault) on invalid code with wrongly shaped arguments...
Tobias Burnus [Thu, 13 Sep 2007 18:08:04 +0000 (20:08 +0200)]
re PR fortran/33343 (ICE (segfault) on invalid code with wrongly shaped arguments to elemental procedures)

2007-09-13  Tobias Burnus  <burnus@net-b.de>

PR fortran/33343
* expr.c (gfc_check_conformance): Print ranks in the error message.
* resolve.c (resolve_elemental_actual): Check also conformance of
the actual arguments for elemental functions.

2007-09-13  Tobias Burnus  <burnus@net-b.de>

PR fortran/33343
* gfortran.dg/elemental_args_check_1.f90: New.
* gfortran.dg/assumed_size_refs_1.f90: Update error message.
* gfortran.dg/elemental_subroutine_4.f90: Ditto.

From-SVN: r128473

17 years agosymbol.c (gfc_add_elemental,gfc_add_pure,gfc_add_recursive): Allow prefixes only...
Tobias Burnus [Thu, 13 Sep 2007 18:03:39 +0000 (20:03 +0200)]
symbol.c (gfc_add_elemental,gfc_add_pure,gfc_add_recursive): Allow prefixes only to be specified once.

2007-09-13  Tobias Burnus  <burnus@net-b.de>

* symbol.c (gfc_add_elemental,gfc_add_pure,gfc_add_recursive):
Allow prefixes only to be specified once.

2007-09-13  Tobias Burnus  <burnus@net-b.de>

* gfortran.dg/recursive_check_3.f90: New.

From-SVN: r128472

17 years agore PR fortran/33412 (Bind(C): ELEMENTAL procedure conflicts with BIND(C))
Tobias Burnus [Thu, 13 Sep 2007 17:58:10 +0000 (19:58 +0200)]
re PR fortran/33412 (Bind(C): ELEMENTAL procedure conflicts with BIND(C))

2007-09-13  Tobias Burnus  <burnus@net-b.de>

PR fortran/33412
* symbol.c (check_conflict): Add conflict of ELEMENTAL with Bind(C).

2007-09-13  Tobias Burnus  <burnus@net-b.de>

PR fortran/33412
* gfortran.dg/elemental_bind_c.f90: New.

From-SVN: r128471

17 years agobfin.md (reload_outpdi, [...]): New patterns.
Bernd Schmidt [Thu, 13 Sep 2007 17:16:29 +0000 (17:16 +0000)]
bfin.md (reload_outpdi, [...]): New patterns.

* config/bfin/bfin.md (reload_outpdi, reload_inpdi): New patterns.
* config/bfin/bfin.c (bfin_secondary_reload): Make sure we use them.

From-SVN: r128470

17 years agore PR tree-optimization/33389 (Revision 128239 causes libgomp failure)
James E Wilson [Thu, 13 Sep 2007 16:33:49 +0000 (09:33 -0700)]
re PR tree-optimization/33389 (Revision 128239 causes libgomp failure)

2007-09-13  James E. Wilson  <wilson@specifix.com>

PR tree-optimization/33389
* tree-ssa-operands.c (append_vuse): If ann->in_vdef_list true,
then set build_loads before returning.

From-SVN: r128469

17 years agomips.h (ASM_OUTPUT_REG_PUSH): Replace {d}subu with {d}addiu and a negative immediate...
Sandra Loosemore [Thu, 13 Sep 2007 14:54:12 +0000 (10:54 -0400)]
mips.h (ASM_OUTPUT_REG_PUSH): Replace {d}subu with {d}addiu and a negative immediate such that it works with...

2007-09-13  Sandra Loosemore  <sandra@codesourcery.com>
    David Ung  <davidu@mips.com>

gcc/
* config/mips/mips.h (ASM_OUTPUT_REG_PUSH): Replace {d}subu with
{d}addiu and a negative immediate such that it works with MIPS16
instructions.

Co-Authored-By: David Ung <davidu@mips.com>
From-SVN: r128468

17 years agore PR bootstrap/33418 ([4.1/4.2/4.3]: Gcc failed to detect HJL's binutils linker)
H.J. Lu [Thu, 13 Sep 2007 14:12:37 +0000 (14:12 +0000)]
re PR bootstrap/33418 ([4.1/4.2/4.3]: Gcc failed to detect HJL's binutils linker)

2007-09-13  H.J. Lu  <hongjiu.lu@intel.com>

PR bootstrap/33418
* configure.ac (ld_vers): Support Linux linker.
* configure: Regenerated.

From-SVN: r128465

17 years agoImplement pragma Compiler_Unit and adds it to relevant library units.
Robert Dewar [Thu, 13 Sep 2007 12:52:18 +0000 (12:52 +0000)]
Implement pragma Compiler_Unit and adds it to relevant library units.

From-SVN: r128461

17 years agomips.h (SYMBOL_FLAG_MIPS16_FUNC): Delete.
Richard Sandiford [Thu, 13 Sep 2007 12:44:10 +0000 (12:44 +0000)]
mips.h (SYMBOL_FLAG_MIPS16_FUNC): Delete.

gcc/
2007-09-13  Richard Sandiford  <richard@codesourcery.com>
    Sandra Loosemore <sandra@codesourcery.com>

* config/mips/mips.h (SYMBOL_FLAG_MIPS16_FUNC): Delete.
(SYMBOL_REF_MIPS16_FUNC_P): Delete.
* config/mips/mips.c (mips_attribute_table): Turn mips16 and
nomips16 into decl attributes.
(TARGET_INSERT_ATTRIBUTES): Override.
(TARGET_MERGE_DECL_ATTRIBUTES): Likewise.
(TARGET_FUNCTION_ATTRIBUTE_INLINABLE_P): Always return true.
(mips_mips16_type_p, mips_nomips16_type_p): Delete in favor of...
(mips_mips16_decl_p, mips_nomips16_decl_p): ...these new functions.
(mips_comp_type_attributes): Remove mips16 and nomips16 handling.
(mips_use_mips16_mode_p): Reimplement as a function that takes
a decl and considers only decl attributes.  If the decl is nested
function, use its parent attributes.
(mips_function_ok_for_sibcall): Use mips_use_mips16_mode_p
instead of SYMBOL_REF_MIPS16_FUNC_P.
(mips_set_mips16_mode): Move call to sorry here from old
mips_use_mips16_mode_p.
(mflip_mips16_entry): New structure.
(mflip_mips16_htab): New variable.
(mflip_mips16_htab_hash, mflip_mips16_htab_eq): New functions.
(mflip_mips16_use_mips16_p, mips_insert_attributes): Likewise.
(mips_merge_decl_attributes): New function.
(mips_set_current_function): Reinstate call to mips_set_mips16_mode.
Use mips_use_mips16_mode_p.
(mips_output_mi_thunk): Use mips_use_mips16_mode_p instead of
SYMBOL_REF_MIPS16_FUNC_P.
(mips_encode_section_info): Don't set SYMBOL_FLAG_MIPS16_FUNC.

gcc/testsuite/
* gcc.dg/gcc-have-sync-compare-and-swap.c: Skip for -mflip-mips16.
* gcc.target/mips/mips16-attributes-2.c: New test.
* gcc.target/mips/mips16-attributes-3.c: Likewise.
* gcc.target/mips/args-3.c: Skip for -mflip-mips16.  Do not use the
hard-float asm when __mips16 is defined.
* gcc.target/mips/atomic-memory-1.c (main): Add a nomips16 attribute.
* gcc.target/mips/atomic-memory-2.c (main): Likewise.
* gcc.target/mips/fpcmp-1.c (f1, f2): Likewise.
* gcc.target/mips/fpcmp-2.c (f1, f2): Likewise.
* gcc.target/mips/neg-abs-1.c (f1, f2, d1, f2): Likewise.
* gcc.target/mips/pr26765.c (foo): Likewise.
* gcc.target/mips/gcc-have-sync-compare-and-swap-1.c: Run for all
targets, use dg-mips-options instead of dg-options, and use -mgp32
to force 32-bit mode.
* gcc.target/mips/gcc-have-sync-compare-and-swap-2.c: Likewise -mgp64
and 64-bit mode.
* gcc.target/mips/mips.exp (is_gp32_flag): Return true for -mips32*.

Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>
From-SVN: r128460

17 years agoc-parser.c (c_parser_struct_declaration): Check for a null return.
Richard Sandiford [Thu, 13 Sep 2007 12:27:00 +0000 (12:27 +0000)]
c-parser.c (c_parser_struct_declaration): Check for a null return.

gcc/
* c-parser.c (c_parser_struct_declaration): Check for a null return.

From-SVN: r128459

17 years agore PR bootstrap/33309 (gcc.c:6236: error: passing argument 1 of 'xputenv' discards...
François-Xavier Coudert [Thu, 13 Sep 2007 10:10:11 +0000 (10:10 +0000)]
re PR bootstrap/33309 (gcc.c:6236: error: passing argument 1 of 'xputenv' discards qualifiers from pointer target type)

PR driver/33309
* gcc.c (xputenv): Make argument const, and use CONST_CAST.

From-SVN: r128457

17 years agoAdd AMD SSE5 support; Add iterator over function arguments; Add stdarg_p, prototype_p...
Michael Meissner [Thu, 13 Sep 2007 02:17:51 +0000 (02:17 +0000)]
Add AMD SSE5 support; Add iterator over function arguments; Add stdarg_p, prototype_p, function_args_count functions

From-SVN: r128455

17 years agore PR testsuite/33153 (FAIL: gcc.dg/pr32912-[12].c (test for excess errors))
John David Anglin [Thu, 13 Sep 2007 00:43:04 +0000 (00:43 +0000)]
re PR testsuite/33153 (FAIL: gcc.dg/pr32912-[12].c (test for excess errors))

PR testsuite/33153
* gcc.dg/pr32912-1.c: Add -fno-common to options on hppa*-*-hpux*.
* gcc.dg/pr32912-2.c: Delete declaration of a, b, c, d, e and f.

From-SVN: r128454

17 years agoDaily bump.
GCC Administrator [Thu, 13 Sep 2007 00:17:04 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r128452

17 years agodfp-bit.c (dfp_conversion_exception): New function.
Janis Johnson [Thu, 13 Sep 2007 00:07:54 +0000 (00:07 +0000)]
dfp-bit.c (dfp_conversion_exception): New function.

* config/dfp-bit.c (dfp_conversion_exception): New function.
(DFP_TO_DFP) Add new variants to use direct conversions in decNumber.
(DFP_TO_INT): Ditto.
(INT_TO_DFP): Ditto.
* config/dfp-bit.h (DEC_FLOAT_FROM_INT, DEC_FLOAT_TO_INT): New.

From-SVN: r128449

17 years ago*: Change namespace pb_ds to __gnu_pbds.
Benjamin Kosnik [Wed, 12 Sep 2007 23:06:27 +0000 (23:06 +0000)]
*: Change namespace pb_ds to __gnu_pbds.

2007-09-12  Benjamin Kosnik  <bkoz@redhat.com>

* include/ext/pb_ds/*: Change namespace pb_ds to __gnu_pbds.
* docs/html/ext/pb_ds/*: Same.
* testsuite/ext/pb_ds/*: Same.
* testsuite/performance/ext/pb_ds/*: Same.
* testsuite/util/*: Same.

From-SVN: r128448

17 years agore PR target/32338 (Error: .prologue within prologue)
Jakub Jelinek [Wed, 12 Sep 2007 21:19:51 +0000 (23:19 +0200)]
re PR target/32338 (Error: .prologue within prologue)

PR target/32338
* config/ia64/ia64.c (ia64_expand_epilogue): Emit blockage
before sp restoration even when total_size is 0, but
frame_pointer_needed.

* gcc.dg/pr32338-1.c: New test.
* gcc.dg/pr32338-2.c: New test.

From-SVN: r128446

17 years agotarget-supports.exp (check_effective_target_sync_int_long): Revert change to add...
Bob Wilson [Wed, 12 Sep 2007 17:57:05 +0000 (17:57 +0000)]
target-supports.exp (check_effective_target_sync_int_long): Revert change to add xtensa.

* lib/target-supports.exp (check_effective_target_sync_int_long):
Revert change to add xtensa.
(check_effective_target_sync_char_short): Likewise.

From-SVN: r128444

17 years agoxtensa.c (machine_function): Add vararg_a7_copy.
Bob Wilson [Wed, 12 Sep 2007 16:57:25 +0000 (16:57 +0000)]
xtensa.c (machine_function): Add vararg_a7_copy.

* config/xtensa/xtensa.c (machine_function): Add vararg_a7_copy.
(xtensa_copy_incoming_a7): Use start_sequence instead of
push_to_sequence.  Stash insns in vararg_a7_copy for builtin_saveregs.
(xtensa_builtin_saveregs): Place code from vararg_a7_copy at the start
of the saveregs sequence.

From-SVN: r128443

17 years ago* io/io.h: Include libgfortran.h first.
Francois-Xavier Coudert [Wed, 12 Sep 2007 16:20:27 +0000 (16:20 +0000)]
* io/io.h: Include libgfortran.h first.

From-SVN: r128442