gcc.git
13 years agore PR c++/49347 (G++ rejects Solaris spawn.h use of __restrict)
Rainer Orth [Mon, 25 Jul 2011 15:56:27 +0000 (15:56 +0000)]
re PR c++/49347 (G++ rejects Solaris spawn.h use of __restrict)

PR c++/49347
* inclhack.def (solaris_posix_spawn_restrict): New fix.
* fixincl.x: Regenerate.
* tests/base/spawn.h: New test.

From-SVN: r176758

13 years agore PR target/39386 ([avr] different computation results for O1 and O0 executables)
Georg-Johann Lay [Mon, 25 Jul 2011 15:41:55 +0000 (15:41 +0000)]
re PR target/39386 ([avr] different computation results for O1 and O0 executables)

PR target/39386
* config/avr/avr.c (out_shift_with_cnt): Use tmp_reg as
shift counter for x << x and x >> x shifts.

From-SVN: r176756

13 years agore PR libgomp/45351 (many unaligned accesses in libgomp tests)
Rainer Orth [Mon, 25 Jul 2011 15:39:52 +0000 (15:39 +0000)]
re PR libgomp/45351 (many unaligned accesses in libgomp tests)

PR libgomp/45351
* config/osf/sem.h: New file.
* configure.tgt (alpha*-dec-osf*): Prepend osf to config_path.

From-SVN: r176755

13 years agore PR c++/49838 ([C++0x] ICE in cp_parser_perform_range_for_lookup, at cp/parser...
Paolo Carlini [Mon, 25 Jul 2011 15:29:13 +0000 (15:29 +0000)]
re PR c++/49838 ([C++0x] ICE in cp_parser_perform_range_for_lookup, at cp/parser.c:8796)

/cp
2011-07-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/49838
* parser.c (cp_parser_perform_range_for_lookup): Early return if
error_operand_p (range).

/testsuite
2011-07-25  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/49838
* g++.dg/cpp0x/range-for19.C: New.

From-SVN: r176754

13 years agore PR testsuite/49753 (FAIL: g++.dg/torture/pr49309.C)
Rainer Orth [Mon, 25 Jul 2011 15:25:32 +0000 (15:25 +0000)]
re PR testsuite/49753 (FAIL: g++.dg/torture/pr49309.C)

gcc/testsuite:
PR testsuite/49753
* g++.dg/torture/pr49309.C: Add -fpreprocessed to dg-options.

Revert:
2011-07-15  Jakub Jelinek  <jakub@redhat.com>

PR testsuite/49753
* g++.dg/torture/pr49309.C: Remove.

libmudflap:
Revert:
2011-07-15  Jakub Jelinek  <jakub@redhat.com>

PR testsuite/49753
PR tree-optimization/49309
* testsuite/libmudflap.c++/pass68-frag.cxx: New test.

From-SVN: r176752

13 years agore PR target/47124 (*solaris2 configurations configure, but don't build)
Rainer Orth [Mon, 25 Jul 2011 14:58:18 +0000 (14:58 +0000)]
re PR target/47124 (*solaris2 configurations configure, but don't build)

PR target/47124
* config.gcc: Reject *-*-solaris2 configuration.

From-SVN: r176751

13 years agore PR tree-optimization/49809 (gimple_check failure at -O3)
Richard Sandiford [Mon, 25 Jul 2011 14:51:47 +0000 (14:51 +0000)]
re PR tree-optimization/49809 (gimple_check failure at -O3)

gcc/
PR tree-optimization/49809
* tree-ssa-phiopt.c (cond_if_else_store_replacement): Use
gimple_get_lhs instead of gimple_assign_lhs.

gcc/testsuite/
PR tree-optimization/49809
* gnat.dg/opt18.adb, gnat.dg/opt18.ads, gnat.dg/opt18_pkg.ads: New
test.

From-SVN: r176750

13 years agosystem.h [...]: Wrap C function declarations in extern "C".
Rainer Orth [Mon, 25 Jul 2011 14:26:58 +0000 (14:26 +0000)]
system.h [...]: Wrap C function declarations in extern "C".

* system.h [__cplusplus]: Wrap C function declarations in extern "C".
-This line, and those below, will be ignored--

M    ChangeLog
M    system.h

From-SVN: r176748

13 years agosystem.h [...]: Wrap C function declarations in extern "C".
Rainer Orth [Mon, 25 Jul 2011 14:24:59 +0000 (14:24 +0000)]
system.h [...]: Wrap C function declarations in extern "C".

gcc:
* system.h [__cplusplus]: Wrap C function declarations in extern "C".

include:
* xregex.h (regoff_t): Define.

From-SVN: r176747

13 years agore PR tree-optimization/49822 (Segfault in remove_prop_source_from_use)
Richard Guenther [Mon, 25 Jul 2011 14:15:02 +0000 (14:15 +0000)]
re PR tree-optimization/49822 (Segfault in remove_prop_source_from_use)

2011-07-25  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/49822
* tree-ssa-forwprop.c (remove_prop_source_from_use): Robustify
more.  Make sure to preserve stmts with side-effects.  Properly
handle virtual defs, follow a longer def chain.

From-SVN: r176745

13 years agobehalf of romain.geissler@gmail.com. Fix plugin file installation
Romain Geissler [Mon, 25 Jul 2011 11:15:12 +0000 (11:15 +0000)]
behalf of romain.geissler@gmail.com. Fix plugin file installation

From-SVN: r176741

13 years agoipa-inline.c (can_inline_edge_p): Look into DECL_STRUCT_FUNCTION of original nodes...
Eric Botcazou [Mon, 25 Jul 2011 10:40:10 +0000 (10:40 +0000)]
ipa-inline.c (can_inline_edge_p): Look into DECL_STRUCT_FUNCTION of original nodes if...

* ipa-inline.c (can_inline_edge_p): Look into DECL_STRUCT_FUNCTION of
original nodes if we are dealing with virtual clones.

From-SVN: r176739

13 years ago* common/config/c6x/c6x-common.c: New file.
Bernd Schmidt [Mon, 25 Jul 2011 10:37:07 +0000 (10:37 +0000)]
* common/config/c6x/c6x-common.c: New file.

From-SVN: r176738

13 years agotree-flow.h (tree_ssa_loop_version): Remove unused declaration.
Roman Zhuykov [Mon, 25 Jul 2011 09:43:01 +0000 (09:43 +0000)]
tree-flow.h (tree_ssa_loop_version): Remove unused declaration.

2011-07-25  Roman Zhuykov  <zhroma@ispras.ru>

* tree-flow.h (tree_ssa_loop_version): Remove unused declaration.

From-SVN: r176737

13 years agore PR tree-optimization/49715 (Could do more efficient unsigned-to-float to conversio...
Richard Guenther [Mon, 25 Jul 2011 08:30:46 +0000 (08:30 +0000)]
re PR tree-optimization/49715 (Could do more efficient unsigned-to-float to conversions based on range information)

2011-07-25  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/49715
* tree-vrp.c: Include expr.h and optabs.h.
(range_fits_type_): New function.
(simplify_float_conversion_using_ranges): Likewise.
(simplify_stmt_using_ranges): Call it.
* Makefile.in (tree-vrp.o): Add $(EXPR_H) and $(OPTABS_H) dependencies.
* optabs.c (can_float_p): Export.
* optabs.h (can_float_p): Declare.

* gcc.target/i386/pr49715-1.c: New testcase.
* gcc.target/i386/pr49715-2.c: Likewise.

From-SVN: r176735

13 years agotree-vrp.c (num_vr_values, [...]): New global vars.
Richard Guenther [Mon, 25 Jul 2011 08:29:01 +0000 (08:29 +0000)]
tree-vrp.c (num_vr_values, [...]): New global vars.

2011-07-25  Richard Guenther  <rguenther@suse.de>

* tree-vrp.c (num_vr_values, values_propagated): New global vars.
(get_value_range): For out-of-range SSA names or names created
after propagation return a read-only varying range.
(dump_all_value_ranges): Adjust.
(vrp_initialize): Likewise.
(vrp_finalize): Likewise.

From-SVN: r176734

13 years agore PR c++/49823 ([C++0x] ICE on decltype(expr)::type with template)
Jason Merrill [Mon, 25 Jul 2011 05:03:50 +0000 (01:03 -0400)]
re PR c++/49823 ([C++0x] ICE on decltype(expr)::type with template)

PR c++/49823
* parser.c (cp_parser_qualifying_entity): Handle templates.

From-SVN: r176732

13 years agore PR debug/49831 (arm-linux-gnueabi bootstrap failures due to ICE in dwarf2cfi.c...
Richard Henderson [Mon, 25 Jul 2011 03:35:05 +0000 (20:35 -0700)]
re PR debug/49831 (arm-linux-gnueabi bootstrap failures due to ICE in dwarf2cfi.c connect_traces)

PR debug/49831
        * dwarf2cfi.c (connect_traces): Allow unvisited traces.  Skip
        them entirely.

Constant pools are emitted in such a way as to be indistinguishable
from regular instructions, and these constant pools are, naturally,
not reachable as code.

From-SVN: r176730

13 years agore PR debug/49825 (Many testcase failures)
Richard Henderson [Mon, 25 Jul 2011 03:26:35 +0000 (20:26 -0700)]
re PR debug/49825 (Many testcase failures)

PR debug/49825
        * dwarf2cfi.c (dwarf2out_stack_adjust): Move A_O_A test earlier.
        (dwarf2out_notice_stack_adjust): Use args_size from call_insn.

From-SVN: r176729

13 years agore PR debug/49827 (sparc64-linux and cris-elf bootstrap failures due to ICE in dwarf2...
Richard Henderson [Mon, 25 Jul 2011 03:18:13 +0000 (20:18 -0700)]
re PR debug/49827 (sparc64-linux and cris-elf bootstrap failures due to ICE in dwarf2cfi.c connect_traces)

PR debug/49827
        * dwarf2cfi.c (create_trace_edges): Handle sequences properly.

From-SVN: r176728

13 years agodwarf2cfi: Reset args_size properly across abnormal edges.
Richard Henderson [Mon, 25 Jul 2011 03:10:42 +0000 (20:10 -0700)]
dwarf2cfi: Reset args_size properly across abnormal edges.

        * dwarf2cfi.c (maybe_record_trace_start): Add abnormal parameter.
        Zero args_size for abnormal edges.  Adjust all callers.

From-SVN: r176727

13 years agore PR debug/49825 (Many testcase failures)
Richard Henderson [Mon, 25 Jul 2011 03:05:06 +0000 (20:05 -0700)]
re PR debug/49825 (Many testcase failures)

PR debug/49825

Test case gcc.c-torture/compile/pr49474.c, among others.

        * dwarf2cfi.c (cfi_row_equal_p): Don't compare args_size.

From-SVN: r176726

13 years agoRemove the unused demangle_flag in collect2.c.
H.J. Lu [Mon, 25 Jul 2011 02:08:44 +0000 (02:08 +0000)]
Remove the unused demangle_flag in collect2.c.

2011-07-24  H.J. Lu  <hongjiu.lu@intel.com>

PR bootstrap/49835
* collect2.c (demangle_flag): Removed.

From-SVN: r176725

13 years agoDaily bump.
GCC Administrator [Mon, 25 Jul 2011 00:18:53 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r176724

13 years agoconfigure.ac (demangler_in_ld): Default to yes.
Sandra Loosemore [Sun, 24 Jul 2011 23:22:41 +0000 (19:22 -0400)]
configure.ac (demangler_in_ld): Default to yes.

2011-07-24  Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* configure.ac (demangler_in_ld): Default to yes.
* configure: Regenerated.
* collect2.c (main): When HAVE_LD_DEMANGLE is defined, don't
mess with COLLECT_NO_DEMANGLE, and just pass --demangle and
--no-demangle options straight through to ld.  When
HAVE_LD_DEMANGLE is not defined, set COLLECT_NO_DEMANGLE in a
way that has the intended effect on Windows.

From-SVN: r176720

13 years agohashtable_policy.h (_Prime_rehash_policy::_M_next_bkt, [...]): Fix typos in the last...
Paolo Carlini [Sun, 24 Jul 2011 19:47:04 +0000 (19:47 +0000)]
hashtable_policy.h (_Prime_rehash_policy::_M_next_bkt, [...]): Fix typos in the last commit.

2011-07-24  Paolo Carlini  <paolo.carlini@oracle.com>

* include/bits/hashtable_policy.h (_Prime_rehash_policy::_M_next_bkt,
_M_bkt_for_elements, _M_need_rehash): Fix typos in the last commit.

From-SVN: r176718

13 years agohashtable_policy.h (_Prime_rehash_policy): Use __builtin_floor rather than __builtin_...
François Dumont [Sun, 24 Jul 2011 19:20:26 +0000 (21:20 +0200)]
hashtable_policy.h (_Prime_rehash_policy): Use __builtin_floor rather than __builtin_ceil to compute next resize value.

2011-07-24  François Dumont  <francois.cppdevs@free.fr>

        * include/bits/hashtable_policy.h (_Prime_rehash_policy): Use
        __builtin_floor rather than __builtin_ceil to compute next resize
        value.
        * testsuite/23_containers/unordered_set/hash_policy/load_factor.cc:
        New.

From-SVN: r176717

13 years agodecl.c (gnat_to_gnu_entity): If the subprogram has copy-in copy-out parameters...
Eric Botcazou [Sun, 24 Jul 2011 13:14:17 +0000 (13:14 +0000)]
decl.c (gnat_to_gnu_entity): If the subprogram has copy-in copy-out parameters...

* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Subprogram_Type>: If the
subprogram has copy-in copy-out parameters, try to promote the mode of
the return type if it is passed in registers.

From-SVN: r176714

13 years agoutils2.c (build_binary_op): Do not mark the left operand as addressable.
Eric Botcazou [Sun, 24 Jul 2011 12:50:41 +0000 (12:50 +0000)]
utils2.c (build_binary_op): Do not mark the left operand as addressable.

* gcc-interface/utils2.c (build_binary_op) <ARRAY_REF>: Do not mark the
left operand as addressable.

From-SVN: r176713

13 years agogigi.h (build_function_stub): Remove.
Eric Botcazou [Sun, 24 Jul 2011 12:45:44 +0000 (12:45 +0000)]
gigi.h (build_function_stub): Remove.

* gcc-interface/gigi.h (build_function_stub): Remove.
(build_return_expr): Likewise.
(convert_vms_descriptor): Declare.
* gcc-interface/utils.c (convert_vms_descriptor): Make global.
(build_function_stub): Move to...
* gcc-interface/utils2.c (build_return_expr): Move to...
* gcc-interface/trans.c (build_function_stub): ...here.
(build_return_expr): ...here.
(Subprogram_Body_to_gnu): Add local variable for language_function.
Disconnect the parameter attributes cache, if any, once done with it.
Call end_subprog_body only after setting the end_locus.
Build the stub associated with the function, if any, at the very end.
(gnat_to_gnu) <N_Return_Statement>: Remove couple of useless local
variables and streamline control flow.

From-SVN: r176712

13 years agoDaily bump.
GCC Administrator [Sun, 24 Jul 2011 00:18:49 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r176711

13 years agodwarf2cfi: Generate and connect traces.
Richard Henderson [Sat, 23 Jul 2011 20:49:33 +0000 (13:49 -0700)]
dwarf2cfi: Generate and connect traces.

This kinda-sorta corresponds to Bernd's 007-dw2cfi patch.  Certainly
the same concepts of splitting the instruction stream into extended
basic blocks is the same.  This patch does a bit better job with the
documentation.  Also, I'm a bit more explicit about matching things
up with the similar code from the regular CFG routines.

What's missing at this point is any attempt to use DW_CFA_remember_state.
I've deferred that for the moment because it's easy to test the state
change code across epilogues, whereas the shrink-wrapping code is not
in this tree and section switching is difficult to force.

        * dwarf2cfi.c: Include basic-block.h.
        (dw_label_info): Remove.
        (trace_work_list, trace_index): New.
        (remember_row, emit_cfa_remember): Remove.
        (dw_trace_info_hash, dw_trace_info_eq): New.
        (get_trace_index, get_trace_info): New.
        (save_point_p): New.
        (free_cfi_row): Remove.
        (add_cfi): Do not emit DW_CFA_remember_state.
        (cfa_row_equal_p): New.
        (barrier_args_size): Remove.
        (compute_barrier_args_size_1, compute_barrier_args_size): Remove.
        (dwarf2out_notice_stack_adjust): Don't compute_barrier_args_size.
        (maybe_record_trace_start, create_trace_edges, scan_trace): New.
        (dwarf2out_cfi_begin_epilogue): Remove.
        (dwarf2out_frame_debug_restore_state): Remove.
        (connect_traces, create_pseudo_cfg): New.
        (create_cfi_notes, execute_dwarf2_frame): Rewrite using traces.
        * Makefile.in (dwarf2cfi.o): Update.

From-SVN: r176705

13 years agodwarf2cfi: Introduce dw_trace_info.
Richard Henderson [Sat, 23 Jul 2011 20:36:36 +0000 (13:36 -0700)]
dwarf2cfi: Introduce dw_trace_info.

This patch only introduces the structure definition and adjusts
the existing routines to use the new cur_trace global to access
the variables that were moved into the structure.

        * dwarf2cfi.c (dw_trace_info): New.
        (dw_label_info): New.
        (cie_return_save): New.
        (cur_trace): New.
        (queued_args_size): Rename from args_size.  Update all users.
        (cfa_store, cfa_temp, regs_saved_in_regs): Remove.
        (def_cfa_1): Use cur_trace instead of cfa_*.
        (dwarf2out_stack_adjust, record_reg_saved_in_reg): Likewise.
        (clobbers_queued_reg_save, reg_saved_in): Likewise.
        (dwarf2out_frame_debug_expr): Likewise.
        (create_cie_data): Split out from ...
        (execute_dwarf2_frame): ... here.  Initialize cur_trace.

From-SVN: r176704

13 years agodwarf2cfi: Allocate reg_saved_in_data in the heap.
Richard Henderson [Sat, 23 Jul 2011 20:27:32 +0000 (13:27 -0700)]
dwarf2cfi: Allocate reg_saved_in_data in the heap.

        * dwarf2cfi.c (regs_saved_in_regs): Allocate from heap, not gc.
        Update all users to match.
        (execute_dwarf2_frame): Free reg_saved_in_data.

From-SVN: r176703

13 years agodwarf2cfi: Convert queued_reg_save to a VEC.
Richard Henderson [Sat, 23 Jul 2011 20:25:47 +0000 (13:25 -0700)]
dwarf2cfi: Convert queued_reg_save to a VEC.

Also, allocate it in the heap instead of garbage collected.

        * dwarf2cfi.c (queued_reg_save): Reorder for packing.  Don't GTY.
        (queued_reg_saves): Don't GTY.  Change to a VEC.
        (queue_reg_save): Update to match.
        (dwarf2out_flush_queued_reg_saves): Likewise.
        (clobbers_queued_reg_save): Likewise.
        (reg_saved_in): Likewise.
        (execute_dwarf2_frame): Free queued_reg_saves.

From-SVN: r176702

13 years agodwarf2cfi: Remove dw_cfi_row_ref typedef.
Richard Henderson [Sat, 23 Jul 2011 20:19:22 +0000 (13:19 -0700)]
dwarf2cfi: Remove dw_cfi_row_ref typedef.

        * dwarf2cfi.c (dw_cfi_row_ref): Remove.  Update all users.

From-SVN: r176701

13 years agodwarf2cfi: Implement change_cfi_row.
Richard Henderson [Sat, 23 Jul 2011 20:17:54 +0000 (13:17 -0700)]
dwarf2cfi: Implement change_cfi_row.

Add a generic function to adjust cfi state from one row to another.
Use this to implement text section switching.  This will also be
usable for arbitrary changes around a cfg for shrink-wrapping.

        * dwarf2cfi.c (add_cfi_args_size): Split out from...
        (dwarf2out_args_size): ... here.
        (add_cfi_restore): Split out from ...
        (dwarf2out_frame_debug_cfa_restore): ... here.
        (def_cfa_0): Split out from ...
        (def_cfa_1): ... here.
        (cfi_oprnd_equal_p, cfi_equal_p): New.
        (change_cfi_row): New.
        (add_cfis_to_fde): Set fde->dw_fde_switch_cfi_index.
        (create_cfi_notes): Use change_cfi_row at SWITCH_TEXT note.
        (output_cfis): Remove.
        * dwarf2out.c (output_fde): Simplify output_cfi loop.
        (dwarf2out_switch_text_section): Don't call output_cfis.
        (dw_val_equal_p, loc_descr_equal_p_1, loc_descr_equal_p): New.
        * dwarf2out.h: Update decls.
        (enum dw_val_class): Add dw_val_class_none.

From-SVN: r176700

13 years agodwarf2cfi: Populate CUR_ROW->REG_SAVE.
Richard Henderson [Sat, 23 Jul 2011 20:06:42 +0000 (13:06 -0700)]
dwarf2cfi: Populate CUR_ROW->REG_SAVE.

To be actually used by a subsequent patch.

        * dwarf2cfi.c (update_row_reg_save): New.
        (dwarf2out_frame_debug_cfa_expression): Use it.
        (dwarf2out_frame_debug_cfa_restore): Likewise.
        (reg_save): Likewise.  Do not emit DW_CFA_same_value.

From-SVN: r176699

13 years agodwarf2cfi: Rename cfi_insn to add_cfi_insn.
Richard Henderson [Sat, 23 Jul 2011 20:00:43 +0000 (13:00 -0700)]
dwarf2cfi: Rename cfi_insn to add_cfi_insn.

Make it consistent with add_cfi_vec.

        * dwarf2cfi.c (add_cfi_insn): Rename from cfi_insn.  Update all users.

From-SVN: r176698

13 years agodwarf2cfi: Introduce a dw_cfi_row state.
Richard Henderson [Sat, 23 Jul 2011 19:58:46 +0000 (12:58 -0700)]
dwarf2cfi: Introduce a dw_cfi_row state.

Use it instead of old_cfa, old_args_size, and cfa_remember variables.

Remove the global cfa variable, as it was usually a duplicate of
old_cfa and otherwise confusing.  Always make a local copy of the
cur_row->cfa variable before modification instead.

        * dwarf2cfi.c (dw_cfi_row, dw_cfi_row_ref): New.
        (cie_cfi_row): New.
        (new_cfi_row, copy_cfi_row, free_cfi_row): New.
        (cfa, old_cfa, cfa_remember, old_cfa_remember, old_args_size): Remove.
        (cur_row, remember_row): New.
        (def_cfa_1): Use cur_row instead of the old_* variables.
        (dwarf2out_frame_debug_restore_state): Similarly.
        (dwarf2out_args_size, dwarf2out_notice_stack_adjust): Likewise.
        (dwarf2out_frame_debug_def_cfa): Use a local variable instead of cfa.
        (dwarf2out_frame_debug_adjust_cfa): Likewise.
        (dwarf2out_frame_debug_cfa_offset): Likewise.
        (dwarf2out_frame_debug_expr): Likewise.
        (execute_dwarf2_frame): Set up cur_row.
        * dwarf2out.h (struct cfa_loc): Mark for GTY.

From-SVN: r176697

13 years agobb-reorder: Split EH edges crossing partitions.
Richard Henderson [Sat, 23 Jul 2011 19:44:19 +0000 (12:44 -0700)]
bb-reorder: Split EH edges crossing partitions.

From-SVN: r176696

13 years agore PR target/49816 (arm.c:3999:12: error: converting 'false' to pointer type 'rtx')
Richard Earnshaw [Sat, 23 Jul 2011 14:43:33 +0000 (14:43 +0000)]
re PR target/49816 (arm.c:3999:12: error: converting 'false' to pointer type 'rtx')

PR target/49816
* arm.c (aapcs_vfp_allocate_return_reg): Return NULL on failure.

From-SVN: r176687

13 years agoctime.c: Include <stdlib.h>.
Andreas Schwab [Sat, 23 Jul 2011 11:06:04 +0000 (11:06 +0000)]
ctime.c: Include <stdlib.h>.

* libgfortran/intrinsics/ctime.c: Include <stdlib.h>.
* libgfortran/intrinsics/getlog.c: Likewise.
* libgfortran/runtime/stop.c: Likewise.

From-SVN: r176675

13 years agore PR ada/49819 (bogus reference to g-trasym-dwarf.adb in Makefile)
Arnaud Charlet [Sat, 23 Jul 2011 09:19:44 +0000 (09:19 +0000)]
re PR ada/49819 (bogus reference to g-trasym-dwarf.adb in Makefile)

2011-07-23  Arnaud Charlet  <charlet@adacore.com>

PR ada/49819
* gcc-interface/Makefile.in (powerpc-linux): Remove reference to
g-trasym-dwarf.adb.

From-SVN: r176673

13 years agomove.h (move, forward): Mark constexpr.
Benjamin Kosnik [Sat, 23 Jul 2011 03:17:11 +0000 (03:17 +0000)]
move.h (move, forward): Mark constexpr.

2011-07-22  Benjamin Kosnik  <bkoz@redhat.com>
    Daniel Krugler  <daniel.kruegler@googlemail.com>

* include/bits/move.h (move, forward): Mark constexpr.
* include/bits/stl_pair.h (pair): Mark move ctors constexpr.
* testsuite/20_util/pair/make_pair/constexpr.cc: New.
* testsuite/20_util/pair/cons/constexpr.cc: Add tests.

Co-Authored-By: Daniel Krugler <daniel.kruegler@googlemail.com>
From-SVN: r176672

13 years ago* doc/invoke.texi (C++ Dialect Options): Document -Wno-narrowing.
Jason Merrill [Sat, 23 Jul 2011 00:30:13 +0000 (20:30 -0400)]
* doc/invoke.texi (C++ Dialect Options): Document -Wno-narrowing.

From-SVN: r176670

13 years agoDaily bump.
GCC Administrator [Sat, 23 Jul 2011 00:18:28 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r176669

13 years agore PR c++/49793 ([C++0x] Narrowing conversion from int/short/char to double)
Jason Merrill [Sat, 23 Jul 2011 00:14:46 +0000 (20:14 -0400)]
re PR c++/49793 ([C++0x] Narrowing conversion from int/short/char to double)

PR c++/49793
* typeck2.c (check_narrowing): Downgrade permerror to pedwarn.
Make conditional on -Wnarrowing.

From-SVN: r176665

13 years ago* bb-reorder.c (gate_handle_partition_blocks): Honor optimize.
Richard Henderson [Fri, 22 Jul 2011 23:54:29 +0000 (16:54 -0700)]
* bb-reorder.c (gate_handle_partition_blocks): Honor optimize.

From-SVN: r176664

13 years agoFix mark_all_labels vs cfglayout mode.
Richard Henderson [Fri, 22 Jul 2011 23:19:25 +0000 (16:19 -0700)]
Fix mark_all_labels vs cfglayout mode.

        * jump.c (maybe_propagate_label_ref): Split out of...
        (mark_all_labels): ... here.  Do not attempt label_ref
        propagation while in cfglayout mode.

From-SVN: r176663

13 years agore PR target/49817 (libiberty/stack-limit.c causes a bootstrap failure on all FreeBSD...
Gerald Pfeifer [Fri, 22 Jul 2011 22:52:55 +0000 (22:52 +0000)]
re PR target/49817 (libiberty/stack-limit.c causes a bootstrap failure on all FreeBSD targets)

PR target/49817
* stack-limit.c: Include <stdint.h>.

From-SVN: r176662

13 years agore PR libfortran/49791 (Formatted namelist reads fails with: Cannot match namelist...
Tobias Burnus [Fri, 22 Jul 2011 22:44:20 +0000 (00:44 +0200)]
re PR libfortran/49791 (Formatted namelist reads fails with: Cannot match namelist object)

2011-07-23  Tobias Burnus  <burnus@net-b.de>

        PR fortran/49791
        * io/list_read.c (nml_parse_qualifier): Remove check to
        enabled extended read for another case.

2011-07-23  Tobias Burnus  <burnus@net-b.de>

        PR fortran/49791
        * gfortran.dg/namelist_72.f: New.

From-SVN: r176661

13 years agoresolve.c (resolve_symbol): Fix coarray var decl check.
Tobias Burnus [Fri, 22 Jul 2011 22:39:10 +0000 (00:39 +0200)]
resolve.c (resolve_symbol): Fix coarray var decl check.

2011-07-23  Tobias Burnus  <burnus@net-b.de>

        * resolve.c (resolve_symbol): Fix coarray var decl check.

2011-07-23  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/coarray_25.f90: New.

From-SVN: r176660

13 years agoWarn about the use of final/override in non-c++0x mode, and add __final for non-c...
Ville Voutilainen [Fri, 22 Jul 2011 21:05:58 +0000 (00:05 +0300)]
Warn about the use of final/override in non-c++0x mode, and add __final for non-c++0x mode.

Warn about the use of final/override in non-c++0x mode, and
add __final for non-c++0x mode.
* cp-tree.h (cpp0x_warn_str): Add CPP0X_OVERRIDE_CONTROLS.
* error.c (maybe_warn_cpp0x): Adjust.
* parser.c (cp_parser_virt_specifier_seq_opt): Use it. Add
'__final' as a non-c++0x alternative for 'final'.

From-SVN: r176655

13 years agodwarf2.h (DW_AT_GNU_macros): New.
Jakub Jelinek [Fri, 22 Jul 2011 20:06:09 +0000 (22:06 +0200)]
dwarf2.h (DW_AT_GNU_macros): New.

* dwarf2.h (DW_AT_GNU_macros): New.
(enum dwarf_macro_record_type): New enum.  Add DW_MACRO_GNU_*.

* dwarf2out.c (struct macinfo_struct): Change code to unsigned char.
(DEBUG_MACRO_SECTION, DEBUG_MACRO_SECTION_LABEL): Define.
(dwarf_attr_name): Handle DW_AT_GNU_macros.
(dwarf2out_define): If the vector is empty and
lineno is 0, emit a dummy entry first.
(dwarf2out_undef): Likewise.  Remove redundant semicolon.
(htab_macinfo_hash, htab_macinfo_eq, output_macinfo_op,
optimize_macinfo_range): New functions.
(output_macinfo): Use them.  If !dwarf_strict and .debug_str is
mergeable, optimize longer strings using
DW_MACRO_GNU_{define,undef}_indirect and if HAVE_COMDAT_GROUP,
optimize longer sequences of define/undef ops from headers
using DW_MACRO_GNU_transparent_include.  For !dwarf_strict
emit a section headers.
(dwarf2out_init): For !dwarf_strict set debug_macinfo_section
and macinfo_section_label to DEBUG_MACRO_SECTION
resp. DEBUG_MACRO_SECTION_LABEL.
(dwarf2out_finish): For !dwarf_strict emit DW_AT_GNU_macros
instead of DW_AT_macro_info.

From-SVN: r176653

13 years agore PR other/32998 (-frecord-gcc-switches issues)
Jakub Jelinek [Fri, 22 Jul 2011 20:03:33 +0000 (22:03 +0200)]
re PR other/32998 (-frecord-gcc-switches issues)

PR other/32998
* common.opt (grecord-gcc-switches, gno-record-gcc-switches): New
options.
* dwarf2out.c: Include opts.h.
(dchar_p): New typedef.  Define heap VEC for it.
(producer_string): New variable.
(gen_producer_string): New function.
(gen_compile_unit_die): Use it.
(dwarf2out_finish): Fix up comp_unit_die () DW_AT_producer
if needed.
* Makefile.in (dwarf2out.o): Depend on $(OPTS_H).
* doc/invoke.texi: Document -grecord-gcc-switches and
-gno-record-gcc-switches, add a -grecord-gcc-switches reference
to -frecord-gcc-switches description.

From-SVN: r176652

13 years agore PR c++/30112 (pragma redefine_extname fails when namespaces are involved)
Jason Merrill [Fri, 22 Jul 2011 19:59:49 +0000 (15:59 -0400)]
re PR c++/30112 (pragma redefine_extname fails when namespaces are involved)

PR c++/30112
gcc/c-family/
* c-common.h: Declare c_linkage_bindings.
* c-pragma.c (handle_pragma_redefine_extname): Use it.
gcc/
* c-decl.c (c_linkage_bindings): Define.
gcc/cp/
* decl.c (cp_finish_decl): Apply pragma redefine_extname in
other namespaces as well.
* name-lookup.c (c_linkage_bindings): Define.
(lookup_extern_c_fun_in_all_ns): Rename from
lookup_extern_c_fun_binding_in_all_ns.  Return tree.
(pushdecl_maybe_friend_1): Adjust.  Copy DECL_ASSEMBLER_NAME.

Co-Authored-By: Mark Glisse <marc.glisse@normalesup.org>
From-SVN: r176650

13 years agore PR debug/49815 (ICE in cselib_record_set, at cselib.c:2241 compiling 64-bit libjav...
Eric Botcazou [Fri, 22 Jul 2011 18:47:17 +0000 (18:47 +0000)]
re PR debug/49815 (ICE in cselib_record_set, at cselib.c:2241 compiling 64-bit libjava on SPARC)

PR debug/49815
* var-tracking.c (vt_finalize): Always free windowed_parm_regs.

From-SVN: r176647

13 years agore PR c++/49813 ([C++0x] sinh vs asinh vs constexpr)
Jason Merrill [Fri, 22 Jul 2011 16:06:08 +0000 (12:06 -0400)]
re PR c++/49813 ([C++0x] sinh vs asinh vs constexpr)

PR c++/49813
* c-opts.c (set_std_cxx0x): Set flag_isoc94 and flag_isoc99.
* c-pretty-print.c (pp_c_cv_qualifiers): Check c_dialect_cxx as well
as flag_isoc99 for 'restrict'.
(pp_c_specifier_qualifier_list): Likewise for _Complex.

From-SVN: r176635

13 years agoDisallow MS ABI in x32 mode.
H.J. Lu [Fri, 22 Jul 2011 16:04:02 +0000 (16:04 +0000)]
Disallow MS ABI in x32 mode.

gcc/

2011-07-22  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.c (ix86_option_override_internal): Disallow
MS ABI in x32 mode.
(ix86_init_builtins): Call ix86_init_builtins_va_builtins_abi
only for TARGET_LP64.
(ix86_handle_abi_attribute): Check TARGET_LP64 instead of
TARGET_64BIT.

gcc/testsuite/

2011-07-22  H.J. Lu  <hongjiu.lu@intel.com>

* gcc/testsuite/gcc.target/i386/avx-vzeroupper-16.c: Only run
on lp64 targets.
* gcc/testsuite/gcc.target/i386/avx-vzeroupper-17.c: Likewise.
* gcc/testsuite/gcc.target/i386/avx-vzeroupper-18.c: Likewise.
* gcc/testsuite/gcc.target/i386/pr43662.c: Likewise.
* gcc/testsuite/gcc.target/i386/pr43869.c: Likewise.

* gcc.target/x86_64/abi/callabi/callabi.exp: Check ilp32
instead of ia32.

From-SVN: r176634

13 years agoFix up ChangeLog date
Michael Meissner [Fri, 22 Jul 2011 15:50:07 +0000 (15:50 +0000)]
Fix up ChangeLog date

From-SVN: r176632

13 years agoAllow linux ppc to bootstrap again
Michael Meissner [Fri, 22 Jul 2011 15:49:08 +0000 (15:49 +0000)]
Allow linux ppc to bootstrap again

From-SVN: r176631

13 years agore PR lto/49796 (483.xalancbmk/447.dealII in SPEC CPU 2006 failed to build)
Martin Jambor [Fri, 22 Jul 2011 15:35:48 +0000 (17:35 +0200)]
re PR lto/49796 (483.xalancbmk/447.dealII in SPEC CPU 2006 failed to build)

2011-07-22  Martin Jambor  <mjambor@suse.cz>

PR lto/49796
* cgraphunit.c (verify_edge_corresponds_to_fndecl): Return false
if decl node is in another partition, call cgraph_get_node only
once.

From-SVN: r176630

13 years ago* ChangeLog: Fix my last entry.
Uros Bizjak [Fri, 22 Jul 2011 15:28:57 +0000 (17:28 +0200)]
* ChangeLog: Fix my last entry.

From-SVN: r176629

13 years agoconfig.gcc (i[34567]86-*-linux*): Set default_gnu_indirect_function to yes.
Uros Bizjak [Fri, 22 Jul 2011 15:21:57 +0000 (17:21 +0200)]
config.gcc (i[34567]86-*-linux*): Set default_gnu_indirect_function to yes.

* config.gcc (i[34567]86-*-linux*): Set
default_gnu_indirect_function to yes.

From-SVN: r176628

13 years agofragment.am (CONFIG_CXXFLAGS): Add -frandom-seed.
Ian Lance Taylor [Fri, 22 Jul 2011 13:52:51 +0000 (13:52 +0000)]
fragment.am (CONFIG_CXXFLAGS): Add -frandom-seed.

* fragment.am (CONFIG_CXXFLAGS): Add -frandom-seed.
* Makefile.in: Rebuild.
* doc/Makefile.in: Rebuild.
* include/Makefile.in: Rebuild.
* libsupc++/Makefile.in: Rebuild.
* po/Makefile.in: Rebuild.
* python/Makefile.in: Rebuild.
* src/Makefile.in: Rebuild.
* testsuite/Makefile.in: Rebuild.

From-SVN: r176626

13 years agore PR middle-end/45819 (unexpected unaligned access to volatile int)
Richard Guenther [Fri, 22 Jul 2011 11:55:30 +0000 (11:55 +0000)]
re PR middle-end/45819 (unexpected unaligned access to volatile int)

2011-07-22  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/45819
* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Properly
preserve volatile and notrap flags.

* gcc.dg/pr45819.c: New testcase.

From-SVN: r176623

13 years agore PR c++/49756 (g++ ICE)
Jakub Jelinek [Fri, 22 Jul 2011 09:21:49 +0000 (11:21 +0200)]
re PR c++/49756 (g++ ICE)

PR c++/49756
* libiberty.h (stack_limit_increase): New prototype.

* stack-limit.c: New file.
* Makefile.in: Regenerate deps.
(CFILES): Add stack-limit.c.
(REQUIRED_OFILES): Add ./stack-limit.$(objext).
* configure.ac (checkfuncs): Add getrlimit and setrlimit.
(AC_CHECK_FUNCS): Likewise.
* configure: Regenerated.
* config.in: Regenerated.

* gcc.c (main): Call stack_limit_increase (64MB).
* toplev.c (toplev_main): Likewise.

From-SVN: r176622

13 years ago* lib/target-supports.exp (check_ifunc_available): Improve comment.
Uros Bizjak [Fri, 22 Jul 2011 09:19:44 +0000 (11:19 +0200)]
* lib/target-supports.exp (check_ifunc_available): Improve comment.

From-SVN: r176621

13 years agore PR bootstrap/49794 (Solaris 10/x86 bootstrap broken by C++ build)
Rainer Orth [Fri, 22 Jul 2011 08:58:25 +0000 (08:58 +0000)]
re PR bootstrap/49794 (Solaris 10/x86 bootstrap broken by C++ build)

2011-07-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
    Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

gcc:
PR bootstrap/49794
* configure.ac: Test AM_ICONV with CXX.
* configure: Regenerate.
* config/sol2-c.c (solaris_format_types): Use EXPORTED_CONST.

gcc/ada:
PR bootstrap/49794
* init.c [sun && __SVR4 && !__vxworks] (__gnat_install_handler):
Assign to act.sa_sigaction.
* tracebak.c [USE_GENERIC_UNWINDER] (__gnat_backtrace): Cast
current->return_address to char * before arithmetic.

libcpp:
PR bootstrap/49794
* configure.ac: Test AM_ICONV with CXX.
* configure: Regenerate.
* system.h (HAVE_DESIGNATED_INITIALIZERS): Never define for C++.

Co-Authored-By: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
From-SVN: r176620

13 years agoinit.c [sgi] (__gnat_error_handler): Update sigaction(2) citation.
Rainer Orth [Fri, 22 Jul 2011 08:53:01 +0000 (08:53 +0000)]
init.c [sgi] (__gnat_error_handler): Update sigaction(2) citation.

* init.c [sgi] (__gnat_error_handler): Update sigaction(2) citation.
Correct argument types.
Extract code from reason.
(__gnat_install_handler): Assign to act.sa_sigaction.

From-SVN: r176619

13 years agore PR bootstrap/49797 (CLooG use of LANGUAGE_C conflicts with MIPS compilers)
Rainer Orth [Fri, 22 Jul 2011 08:49:23 +0000 (08:49 +0000)]
re PR bootstrap/49797 (CLooG use of LANGUAGE_C conflicts with MIPS compilers)

PR bootstrap/49797
* graphite-clast-to-gimple.c (CLOOG_LANGUAGE_C): Provide if missing.
(set_cloog_options): Use it.

From-SVN: r176618

13 years agore PR c++/49756 (g++ ICE)
Jakub Jelinek [Fri, 22 Jul 2011 08:33:37 +0000 (10:33 +0200)]
re PR c++/49756 (g++ ICE)

PR c++/49756
* libiberty.h (stack_limit_increase): New prototype.

* stack-limit.c: New file.
* Makefile.in: Regenerate deps.
(CFILES): Add stack-limit.c.
(REQUIRED_OFILES): Add ./stack-limit.$(objext).
* configure.ac (checkfuncs): Add getrlimit and setrlimit.
(AC_CHECK_FUNCS): Likewise.
* configure: Regenerated.
* config.in: Regenerated.

* gcc.c (main): Call stack_limit_increase (64MB).
* toplev.c (toplev_main): Likewise.

From-SVN: r176617

13 years agotarget-supports.exp (check_ifunc_available): Rewrite.
Uros Bizjak [Fri, 22 Jul 2011 06:29:35 +0000 (08:29 +0200)]
target-supports.exp (check_ifunc_available): Rewrite.

* lib/target-supports.exp (check_ifunc_available): Rewrite.

From-SVN: r176616

13 years agoCall copy_to_mode_reg instead of force_reg.
H.J. Lu [Fri, 22 Jul 2011 05:23:22 +0000 (05:23 +0000)]
Call copy_to_mode_reg instead of force_reg.

2011-07-21  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.c (ix86_expand_call): Call copy_to_mode_reg
instead of force_reg.

From-SVN: r176614

13 years agotree_no_data_map_rand.cc: Move...
Benjamin Kosnik [Fri, 22 Jul 2011 04:17:17 +0000 (04:17 +0000)]
tree_no_data_map_rand.cc: Move...

2011-07-21  Benjamin Kosnik  <bkoz@redhat.com>

* testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Move...
* testsuite/ext/pb_ds/regression/tree_set_rand.cc: ... here.
* testsuite/ext/pb_ds/regression/tree_no_data_map_rand_debug.cc: Move...
* testsuite/ext/pb_ds/regression/tree_set_rand_debug.cc: ... here.
* testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Move...
* testsuite/ext/pb_ds/regression/tree_map_rand.cc: ... here.
* testsuite/ext/pb_ds/regression/tree_data_map_rand_debug.cc: Move...
* testsuite/ext/pb_ds/regression/tree_map_rand_debug.cc: ... here.

* testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc: Move...
* testsuite/ext/pb_ds/regression/trie_set_rand.cc: ... here.
* testsuite/ext/pb_ds/regression/trie_no_data_map_rand_debug.cc: Move...
* testsuite/ext/pb_ds/regression/trie_set_rand_debug.cc: ... here.
* testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Move...
* testsuite/ext/pb_ds/regression/trie_map_rand.cc: ... here.
* testsuite/ext/pb_ds/regression/trie_data_map_rand_debug.cc: Move...
* testsuite/ext/pb_ds/regression/trie_map_rand_debug.cc: ... here.

* testsuite/ext/pb_ds/regression/list_update_no_data_map_rand.cc: Move.
* testsuite/ext/pb_ds/regression/list_update_set_rand.cc: ...here.
* testsuite/ext/pb_ds/regression/list_update_no_data_map_rand_debug.cc:
Move...
* testsuite/ext/pb_ds/regression/list_update_set_rand_debug.cc: ...here.
* testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc: Move...
* testsuite/ext/pb_ds/regression/list_update_map_rand.cc: ...here.
* testsuite/ext/pb_ds/regression/list_update_data_map_rand_debug.cc:
Move...
* testsuite/ext/pb_ds/regression/list_update_map_rand_debug.cc: ...here.

* testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Move...
* testsuite/ext/pb_ds/regression/hash_set_rand.cc: ...here.
* testsuite/ext/pb_ds/regression/hash_no_data_map_rand_debug.cc: Move...
* testsuite/ext/pb_ds/regression/hash_set_rand_debug.cc: ...here.

* testsuite/ext/pb_ds/regression/hash_data_map_rand.cc: Move...
* testsuite/ext/pb_ds/regression/hash_map_rand.cc: ...here.
* testsuite/ext/pb_ds/regression/hash_data_map_rand_debug.cc: Move...
* testsuite/ext/pb_ds/regression/hash_map_rand_debug.cc: ...here.

From-SVN: r176613

13 years agoConvert to Pmode if needed and use force_reg after convert.
H.J. Lu [Fri, 22 Jul 2011 00:56:10 +0000 (00:56 +0000)]
Convert to Pmode if needed and use force_reg after convert.

2011-07-21  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.c (ix86_expand_move): Convert to Pmode if
needed and use force_reg after convert.
(ix86_expand_call): Likewise.
(ix86_expand_special_args_builtin): Likewise.
(ix86_expand_builtin): Likewise.

From-SVN: r176612

13 years agoDaily bump.
GCC Administrator [Fri, 22 Jul 2011 00:18:57 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r176610

13 years agotrans.c (gfc_allocate_with_status): Split into two functions gfc_allocate_using_mallo...
Daniel Carrera [Thu, 21 Jul 2011 23:18:24 +0000 (23:18 +0000)]
trans.c (gfc_allocate_with_status): Split into two functions gfc_allocate_using_malloc and gfc_allocate_usig_lib.

2011-07-21  Daniel Carrera  <dcarrera@gmail.com>

* trans.c (gfc_allocate_with_status): Split into two functions
gfc_allocate_using_malloc and gfc_allocate_usig_lib.
(gfc_allocate_using_malloc): The status parameter is now the
actual status rather than a pointer. Code cleanup.
(gfc_allocate_using_lib): Ditto. Add new parametrs errmsg and
errlen. Pass these to the coarray lib.
* trans-openmp.c (gfc_omp_clause_default_ctor): Update calls to
gfc_allocate_allocatable.
(gfc_omp_clause_copy_ctor): Ditto.
(gfc_trans_omp_array_reduction): Ditto.
* trans-stmt.c (gfc_trans_allocate): Ditto. Update call to
gfc_allocate_using_malloc. Pass stat rather than pstat to the allocate
fuctions. If using coarray lib, pass errmsg and errlen to the allocate
functions. Move error checking outside the if (!gfc_array_allocate)
block so that it also affects trees produced by gfc_array_allocate.
* trans-array.c (gfc_array_allocate): Add new parameters errmsg
and errlen. Replace parameter pstat by status. Code cleanup. Update
calls to gfc_allocate_allocatable and gfc_allocate_using_malloc.
* trans-array.h (gfc_array_allocate): Update signature of
gfc_array_allocate.

From-SVN: r176606

13 years agoInfer types based on lb and ub.
Sebastian Pop [Thu, 21 Jul 2011 22:57:59 +0000 (22:57 +0000)]
Infer types based on lb and ub.

2011-07-21  Sebastian Pop  <sebastian.pop@amd.com>

PR middle-end/47654
PR middle-end/49649
* graphite-clast-to-gimple.c (type_for_clast_term): Pass v1 and v2
in parameter.  Initialize v1 and v2 based on the values returned
by clast_name_to_lb_ub.
(type_for_clast_red): Pass v1 and v2 in parameter, and set their
values.
(type_for_clast_bin): Same.
(type_for_clast_expr): Same.
(type_for_clast_eq): Update calls to type_for_clast_expr.
(type_for_clast_for): Same.
(build_iv_mapping): Same.
* graphite-ppl.h (value_min): New.

* gcc.dg/graphite/run-id-pr47654.c: New.

From-SVN: r176605

13 years agoGenerate signed types whenever possible.
Sebastian Pop [Thu, 21 Jul 2011 22:57:49 +0000 (22:57 +0000)]
Generate signed types whenever possible.

2011-07-21  Sebastian Pop  <sebastian.pop@amd.com>

* graphite-clast-to-gimple.c (type_for_interval): Generate signed
types whenever possible.

From-SVN: r176604

13 years agoCompute once and cache the LB and UB for each clast_name.
Sebastian Pop [Thu, 21 Jul 2011 22:57:40 +0000 (22:57 +0000)]
Compute once and cache the LB and UB for each clast_name.

2011-07-21  Sebastian Pop  <sebastian.pop@amd.com>

* graphite-clast-to-gimple.c (struct clast_name_index): Add lb
and ub fields.
(new_clast_name_index): Add lb and ub parameters.
(free_clast_name_index): New.
(clast_name_to_lb_ub): New.
(save_clast_name_index): Add lb and ub parameters.
(compute_bounds_for_param): New.
(type_for_level): Removed.
(type_for_clast_for): Removed level parameter.  Do not call
type_for_level.
(graphite_create_new_loop): Store the lb and ub for the clast_name
of the iterator of the loop that has been generated.
(graphite_create_new_loop_guard): Remove parameter level.
(create_params_index): Store the lb and ub of each parameter.
(gloog): Use free_clast_name_index.  Pass to create_params_index
the current scop.

From-SVN: r176603

13 years agoRemove max_signed_precision_type.
Sebastian Pop [Thu, 21 Jul 2011 22:57:30 +0000 (22:57 +0000)]
Remove max_signed_precision_type.

2011-07-21  Sebastian Pop  <sebastian.pop@amd.com>

* graphite-clast-to-gimple.c (max_signed_precision_type): Removed.
(max_precision_type): Inline max_signed_precision_type.
(type_for_clast_red): Use max_precision_type.
(type_for_clast_bin): Same.
(type_for_clast_for): Same.

From-SVN: r176602

13 years agoRename gcc_type_for_clast_* into type_for_clast_*
Sebastian Pop [Thu, 21 Jul 2011 22:57:19 +0000 (22:57 +0000)]
Rename gcc_type_for_clast_* into type_for_clast_*

2011-07-21  Sebastian Pop  <sebastian.pop@amd.com>

* graphite-clast-to-gimple.c (gcc_type_for_interval): Renamed
type_for_interval.
(gcc_type_for_value): Renamed type_for_value.
(gcc_type_for_clast_term): Renamed type_for_clast_term.
(gcc_type_for_clast_expr): Renamed type_for_clast_expr.
(gcc_type_for_clast_red): Renamed type_for_clast_red.
(gcc_type_for_clast_bin): Renamed type_for_clast_bin.
(gcc_type_for_clast_eq): Renamed type_for_clast_eq.
(graphite_translate_clast_equation): Update calls.
(compute_type_for_level): Renamed type_for_level.
(gcc_type_for_iv_of_clast_loop): Renamed type_for_clast_for.
(build_iv_mapping): Update calls.
(graphite_create_new_loop_guard): Same.

From-SVN: r176601

13 years agoAdd fixme comment.
Sebastian Pop [Thu, 21 Jul 2011 22:57:10 +0000 (22:57 +0000)]
Add fixme comment.

2011-07-21  Sebastian Pop  <sebastian.pop@amd.com>

* graphite-clast-to-gimple.c (clast_get_body_of_loop): Add fixme
comment.

From-SVN: r176600

13 years agoCleanup function params using a struct.
Sebastian Pop [Thu, 21 Jul 2011 22:57:00 +0000 (22:57 +0000)]
Cleanup function params using a struct.

2011-07-21  Sebastian Pop  <sebastian.pop@amd.com>

* graphite-clast-to-gimple.c (struct ivs_params): New.
(clast_name_to_gcc): Use ivs_params to pass around parameters.
(clast_to_gcc_expression): Same.
(clast_to_gcc_expression_red): Same.
(gcc_type_for_clast_term): Same.
(gcc_type_for_clast_expr): Same.
(gcc_type_for_clast_red): Same.
(gcc_type_for_clast_bin): Same.
(gcc_type_for_clast_eq): Same.
(graphite_translate_clast_equation): Same.
(graphite_create_guard_cond_expr): Same.
(graphite_create_new_guard): Same.
(graphite_create_new_loop): Same.
(build_iv_mapping): Same.
(translate_clast_user): Same.
(graphite_create_new_loop_guard): Same.
(translate_clast): Same.
(translate_clast_for_loop): Same.
(translate_clast_for): Same.
(translate_clast_guard): Same.
(initialize_cloog_names): Fix typo.
(gloog): Initialize an ivs_params struct, pass it to translate_clast.

From-SVN: r176599

13 years agoRecord the loop level that defines a clast_name.
Sebastian Pop [Thu, 21 Jul 2011 22:56:50 +0000 (22:56 +0000)]
Record the loop level that defines a clast_name.

2011-07-21  Sebastian Pop  <sebastian.pop@amd.com>

* graphite-clast-to-gimple.c (struct clast_name_index): Add level.
(new_clast_name_index): Add level parameter.
(clast_name_to_level): New.
(save_clast_name_index): Add level parameter.
(newivs_to_depth_to_newiv): Removed.
(clast_name_to_gcc): Inlined newivs_to_depth_to_newiv.
(graphite_create_new_loop): Add level parameter.  Pass level to
save_clast_name_index.
(translate_clast_for_loop): Pass level to graphite_create_new_loop.
(create_params_index): Pass level to save_clast_name_index.

From-SVN: r176598

13 years agoDo not compute twice type, lb, and ub.
Sebastian Pop [Thu, 21 Jul 2011 22:56:40 +0000 (22:56 +0000)]
Do not compute twice type, lb, and ub.

2011-07-21  Sebastian Pop  <sebastian.pop@amd.com>

* graphite-clast-to-gimple.c (graphite_create_new_loop): Do not
recompute type, lb, and ub.  Get them from...
(graphite_create_new_loop_guard): ...here.  Pass in parameter
pointers to type, lb, and ub.
(translate_clast_for_loop): Update function calls.
(translate_clast_for): Same.

From-SVN: r176597

13 years agoStart counting nesting level from 0 and use the standard "Polyhedral SCattering Trans...
Sebastian Pop [Thu, 21 Jul 2011 22:56:29 +0000 (22:56 +0000)]
Start counting nesting level from 0 and use the standard "Polyhedral SCattering Transformed" psct_* interface.

2011-07-21  Sebastian Pop  <sebastian.pop@amd.com>

* graphite-clast-to-gimple.c (compute_bounds_for_level): Call
psct_dynamic_dim.
(translate_clast_for_loop): Pass loop level to dependency_in_loop_p.
(gcc_type_for_iv_of_clast_loop): Update use of level.
(gloog): Start counting nesting level from 0.
* graphite-clast-to-gimple.h (get_scattering_level): Removed.
* graphite-dependences.c (graphite_carried_dependence_level_k): Call
psct_dynamic_dim on level.

From-SVN: r176596

13 years agoConvert to Pmode if needed in ix86_legitimize_address.
H.J. Lu [Thu, 21 Jul 2011 22:36:11 +0000 (22:36 +0000)]
Convert to Pmode if needed in ix86_legitimize_address.

2011-07-21  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.c (ix86_legitimize_address): Convert to
Pmode if needed.

From-SVN: r176595

13 years agoPromote pointer function arguments and return values to Pmode.
H.J. Lu [Thu, 21 Jul 2011 22:22:00 +0000 (22:22 +0000)]
Promote pointer function arguments and return values to Pmode.

2011-07-21  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.c (function_value_64): Always return pointers
in Pmode.
(ix86_promote_function_mode): New.
(TARGET_PROMOTE_FUNCTION_MODE): Likewise.

From-SVN: r176593

13 years agore PR middle-end/49705 (-Wstrict-overflow should not diagnose unevaluated expressions)
Ian Lance Taylor [Thu, 21 Jul 2011 21:30:24 +0000 (21:30 +0000)]
re PR middle-end/49705 (-Wstrict-overflow should not diagnose unevaluated expressions)

gcc/c-family:
PR middle-end/49705
* c-common.c (c_disable_warnings): New static function.
(c_enable_warnings): New static function.
(c_fully_fold_internal): Change local unused_p to bool.  Call
c_disable_warnings and c_enable_warnings rather than change
c_inhibit_evaluation_warnings.
gcc/testsuite:
PR middle-end/49705
* gcc.dg/pr49705.c: New test.

From-SVN: r176591

13 years agoSteven G. Kargl <kargl@gcc.gnu.org>
Steven G. Kargl [Thu, 21 Jul 2011 21:09:46 +0000 (21:09 +0000)]
Steven G. Kargl  <kargl@gcc.gnu.org>

* gfortran.texi: Remove a duplicate word.

From-SVN: r176587

13 years agoAdd missing ChangeLog entry
François Dumont [Thu, 21 Jul 2011 20:34:40 +0000 (20:34 +0000)]
Add missing ChangeLog entry

From-SVN: r176586

13 years agosafe_unordered_sequence.h, [...]: Rename respectively in...
François Dumont [Thu, 21 Jul 2011 19:56:36 +0000 (19:56 +0000)]
safe_unordered_sequence.h, [...]: Rename respectively in...

2011-07-21  François Dumont  <francois.cppdevs@free.fr>

        * include/debug/safe_unordered_sequence.h,
        safe_unordered_sequence.tcc: Rename respectively in...
        * include/debug/safe_unordered_container.h,
        safe_unordered_container.tcc: ...those. _Safe_unordered_sequence
        rename _Safe_unordered_container.
        * include/debug/safe_unordered_base.h: _Safe_unordered_sequence_base
        rename _Safe_unordered_container_base.
        * include/debug/unordered_map, unordered_set: Adapt to previous
        modifications.
        * config/abi/pre/gnu.ver: Likewise.
        * src/debug.cc: Likewise.
        * include/Makefile.am: Likewise.
        * include/Makefile.in: Regenerate.

From-SVN: r176584

13 years agore PR tree-optimization/49749 (Reassociation rank algorithm does not include all...
Bill Schmidt [Thu, 21 Jul 2011 18:07:39 +0000 (18:07 +0000)]
re PR tree-optimization/49749 (Reassociation rank algorithm does not include all non-NULL operands)

2011-07-21  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

PR tree-optimization/49749
* tree-ssa-reassoc.c (get_rank): Fix operand scan conditions and
remove no-longer-used maxrank variable.

From-SVN: r176581

13 years agotarget-supports.exp (check_avx_os_support_available): New.
Uros Bizjak [Thu, 21 Jul 2011 15:53:11 +0000 (17:53 +0200)]
target-supports.exp (check_avx_os_support_available): New.

* lib/target-supports.exp (check_avx_os_support_available): New.
(check_effective_target_avx_runtime): Use it.

From-SVN: r176576

13 years agoavr.c (final_prescan_insn): Fix printing of rtx_costs.
Georg-Johann Lay [Thu, 21 Jul 2011 15:46:28 +0000 (15:46 +0000)]
avr.c (final_prescan_insn): Fix printing of rtx_costs.

* config/avr/avr.c (final_prescan_insn): Fix printing of rtx_costs.

From-SVN: r176575

13 years ago* de.po, sv.po: Update.
Joseph Myers [Thu, 21 Jul 2011 15:29:35 +0000 (16:29 +0100)]
* de.po, sv.po: Update.

From-SVN: r176573

13 years agosystem.h (HAVE_DESIGNATED_UNION_INITIALIZERS): New.
Jason Merrill [Thu, 21 Jul 2011 14:48:03 +0000 (10:48 -0400)]
system.h (HAVE_DESIGNATED_UNION_INITIALIZERS): New.

* system.h (HAVE_DESIGNATED_UNION_INITIALIZERS): New.
* recog.h (struct insn_data_d): Check it instead of
HAVE_DESIGNATED_INITIALIZERS.
* genoutput.c (output_insn_data): Likewise.

From-SVN: r176572