]> git.ipfire.org Git - thirdparty/gcc.git/log
thirdparty/gcc.git
11 years agoMAINTAINERS (Write After Approval): Add myself.
Christophe Lyon [Tue, 4 Sep 2012 13:22:55 +0000 (15:22 +0200)] 
MAINTAINERS (Write After Approval): Add myself.

2012-09-04  Christophe Lyon  <christophe.lyon@st.com>

* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r190928

11 years agoMake all VEC_* functions, member functions of vec_t.
Diego Novillo [Tue, 4 Sep 2012 13:22:54 +0000 (09:22 -0400)] 
Make all VEC_* functions, member functions of vec_t.

This patch is the first step towards making the API for VEC use
member functions.

There are no user code modifications in this patch.  Everything
is still using the VEC_* macros, but this time they expand into
member function calls.

Because of the way VECs are used, this required some trickery.
The API allows VECs to be NULL.  This means that services like
VEC_length(V) will return 0 when V is a NULL pointer.  This is,
of course, not possible to do if we call V->length().

For functions that either need to allocate/re-allocate the
vector, or they need to handle NULL vectors, I implemented them
as static member functions or free functions.

Another wart that I did not address in this patch is the fact
that vectors of pointers and vectors of objects have slightly
different semantics when handling elements in the vector.  In
vector of pointers, we pass them around by value, but in vectors
of objects, they are passed around via pointers.  That's why we
need TYPE * and TYPE ** overloads for some functions (e.g.,
vec_t::iterate).

I will fix these two warts in a subsequent patch.  The idea is to
make vec_t a single-word structure, which acts as a handler for
the structure containing the actual vector.  Something like this:

template<typename T>
struct vec_t
{
  struct vec_internal<T> *vec_;
};

This has the advantage that we can now declare the actual vector
instances as regular variables, instead of pointers.  They will
use the same amount of memory when embedded in other structures,
and we will be able to allocate and reallocate the actual data
without having to mutate the vector instance.

All the functions that are now static members in vec_t, will
become instance members in the new vec_t.  This will mean that
all the callers will need to be changed, of course.

Tested on x86_64 and ppc64 with all languages plus ada, go and obj-c++.

Rewrite VEC_* functions as member functions of vec_t.

* vec.h: Update documentation.
(ALONE_VEC_CHECK_INFO): Define.
(ALONE_VEC_CHECK_DECL): Define.
(ALONE_VEC_CHECK_PASS): Define.
(struct vec_prefix): Rename field NUM to NUM_.
Rename field ALLOC to ALLOC_.
Update all users.
(struct vec_t): Rename field PREFIX to PREFIX_.
Rename field VEC to VEC_.
Update all users.
(vec_t::length): Rename from VEC_length_1.  Update all users.
(vec_t::empty): Rename from VEC_empty_1.  Update all users.
(vec_t::address): Rename from VEC_address_1.  Update all users.
(vec_address): New.
(vec_t::last): Rename from VEC_last_1.  Update all users.
(vec_t::operator[]): Rename from VEC_index_1.  Update all users.
(vec_t::iterate): Rename from VEC_iterate_1.  Update all users.
(vec_t::embedded_size): Rename from VEC_embedded_size_1.
Update all users.
(vec_t::embedded_init): Rename from VEC_embedded_init_1.
Update all users.
(vec_t::alloc): Rename from VEC_alloc_1.  Update all users.
(vec_t::free): Rename from VEC_free_1.  Update all users.
(vec_t::copy): Rename from VEC_copy_1.  Update all users.
(vec_t::space): Rename from VEC_space_1.  Update all users.
(vec_t::reserve): Rename from VEC_reserve_1.  Update all users.
(vec_t::reserve_exact): Rename from VEC_reserve_exact_1.
Update all users.
(vec_t::splice): Rename from VEC_splice_1.  Update all users.
(vec_t::safe_splice): Rename from VEC_safe_splice_1.  Update all users.
(vec_t::quick_push): Rename from VEC_quick_push_1.  Update all users.
(vec_t::safe_push): Rename from VEC_safe_push_1.  Update all users.
(vec_t::pop): Rename from VEC_pop_1.  Update all users.
(vec_t::truncate): Rename from VEC_truncate_1.  Update all users.
(vec_t::safe_grow): Rename from VEC_safe_grow_1.  Update all users.
(vec_t::safe_grow_cleared): Rename from VEC_safe_grow_cleared_1.
Update all users.
(vec_t::replace): Rename from VEC_replace_1.  Update all users.
(vec_t::quick_insert): Rename from VEC_quick_insert_1.
Update all users.
(vec_t::safe_insert): Rename from VEC_safe_insert_1.  Update all users.
(vec_t::ordered_remove): Rename from VEC_ordered_remove_1.
Update all users.
(vec_t::unordered_remove): Rename from VEC_unordered_remove_1.
Update all users.
(vec_t::block_remove): Rename from VEC_block_remove_1. Update all users.
(vec_t::lower_bound): Rename from VEC_lower_bound_1. Update all users.

From-SVN: r190927

11 years agogimple.h (gimple_build_switch): Remove.
Steven Bosscher [Tue, 4 Sep 2012 13:03:02 +0000 (13:03 +0000)] 
gimple.h (gimple_build_switch): Remove.

* gimple.h (gimple_build_switch): Remove.
(gimple_build_switch_vec): Promote to the new gimple_build_switch.
(gimple_switch_default_label): Assert the default case label is
really a default case label.
(gimple_switch_set_default_label): Likewise.
* gimple.c (gimple_build_switch_nlabels): Make sure a default label
is passed in, and simplify accordingly.
(gimple_build_switch): Removed.
(gimple_build_switch_vec): Rename to gimple_build_switch.
* gimplify.c (gimplify_switch_expr): Update gimple_build_switch use.
* gimple-pretty-print.c (dump_gimple_switch): Do not accept a NULL
case label.
* stmt.c (expand_case): Simplify using the fact that every GIMPLE
switch must have a default case.
* tree-cfg.c (group_case_labels_stmt): Likewise.
(verify_gimple_switch): Use gimple_switch_label in verifier to get
the label at index 0, and verify that it is a valid default case.
* except.c (sjlj_emit_dispatch_table): Rewrite construction of the
switch for dispatching.
* tree-eh.c (lower_try_finally_switch): Update gimple_build_switch use.
(lower_eh_dispatch): Likewise.
* tree-vrp.c (execute_vrp): Use gimple_switch_label to get the case
label at index 0 before turning it into a default case label.
* omp-low.c (expand_omp_sections): Update gimple_build_switch use.
* tree-switch-conversion.c (emit_case_bit_tests): Get the default case
label using gimple_switch_default_label.
(collect_switch_conv_info): Likewise.
(process_switch): Likewise.
* doc/gimple.texi: Update documentation of gimple_build_switch.

From-SVN: r190925

11 years agore PR target/54476 ([avr] __builtin_avr_delay_cycles (-1ul) causes memory usage to...
Georg-Johann Lay [Tue, 4 Sep 2012 09:37:08 +0000 (09:37 +0000)] 
re PR target/54476 ([avr] __builtin_avr_delay_cycles (-1ul) causes memory usage to explode on x86_64 host)

PR target/54476
* config/avr/avr.c (avr_expand_delay_cycles): Mask operand with
SImode.

From-SVN: r190920

11 years agore PR target/45070 (Miscompiled c++ class with packed attribute on ARM with -Os optim...
Bin Cheng [Tue, 4 Sep 2012 09:36:44 +0000 (09:36 +0000)] 
re PR target/45070 (Miscompiled c++ class with packed attribute on ARM with -Os optimizations (Qt 4.6.2))

PR target/45070
* config/arm/arm.c (thumb1_extra_regs_pushed): Handle return value of size
less than 4 bytes by using macro ARM_NUM_INTS.
(thumb1_unexpanded_epilogue): Use macro ARM_NUM_INTS.

From-SVN: r190919

11 years agore PR tree-optimization/54458 (ICE get_loop_body, at cfgloop.c:830)
Richard Guenther [Tue, 4 Sep 2012 09:28:58 +0000 (09:28 +0000)] 
re PR tree-optimization/54458 (ICE get_loop_body, at cfgloop.c:830)

2012-09-04  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/54458
* tree-ssa-threadupdate.c (thread_through_loop_header): If we
turn the loop into one with multiple latches mark it so.

* gcc.dg/torture/pr54458.c: New testcase.

From-SVN: r190918

11 years agore PR target/54220 ([avr] Potential stack corruption in naked functions at -O0)
Senthil Kumar Selvaraj [Tue, 4 Sep 2012 09:08:50 +0000 (09:08 +0000)] 
re PR target/54220 ([avr] Potential stack corruption in naked functions at -O0)

PR target/54220
* config/avr/avr.c (TARGET_ALLOCATE_STACK_SLOTS_FOR_ARGS): New
define to...
(avr_allocate_stack_slots_for_args): ...this new static function.

From-SVN: r190914

11 years agoarm.c (arm_expand_builtin): Replace gen_rtx_CONST_INT by GEN_INT.
Christophe Lyon [Tue, 4 Sep 2012 08:35:19 +0000 (08:35 +0000)] 
arm.c (arm_expand_builtin): Replace gen_rtx_CONST_INT by GEN_INT.

2012-09-04  Christophe Lyon  <christophe.lyon@linaro.org>

* config/arm/arm.c (arm_expand_builtin): Replace gen_rtx_CONST_INT
by GEN_INT.
(arm_emit_coreregs_64bit_shift): Likewise.

From-SVN: r190912

11 years agoarm.c (arm_evpc_neon_vext): New function.
Christophe Lyon [Tue, 4 Sep 2012 08:32:39 +0000 (08:32 +0000)] 
arm.c (arm_evpc_neon_vext): New function.

2012-09-04  Christophe Lyon  <christophe.lyon@linaro.org>

gcc/
* config/arm/arm.c (arm_evpc_neon_vext): New
function.
(arm_expand_vec_perm_const_1): Add call to
arm_evpc_neon_vext.

gcc/testsuite/
* gcc.target/arm/neon-vext.c: New test.
* gcc.target/arm/neon-vext-execute.c: Ditto.

From-SVN: r190911

11 years agore PR fortran/54435 (ICE with SELECT TYPE on a non-CLASS object)
Janus Weil [Tue, 4 Sep 2012 08:03:09 +0000 (10:03 +0200)] 
re PR fortran/54435 (ICE with SELECT TYPE on a non-CLASS object)

2012-09-04  Janus Weil  <janus@gcc.gnu.org>

PR fortran/54435
PR fortran/54443
* match.c (gfc_match_select_type): Make sure to only access CLASS_DATA
for BT_CLASS.

2012-09-04  Janus Weil  <janus@gcc.gnu.org>

PR fortran/54243
PR fortran/54244
* gfortran.dg/select_type_29.f03: New.

From-SVN: r190910

11 years agore PR target/51244 ([SH] Inefficient conditional branch and code around T bit)
Oleg Endo [Tue, 4 Sep 2012 08:03:01 +0000 (08:03 +0000)] 
re PR target/51244 ([SH] Inefficient conditional branch and code around T bit)

PR target/51244
* config/sh/sh.c (prepare_cbranch_operands): Pull out comparison
canonicalization code into...
* (sh_canonicalize_comparison): This new function.
* config/sh/sh-protos.h: Declare it.
* config/sh/sh.h: Use it in new macro CANONICALIZE_COMPARISON.
* config/sh/sh.md (cbranchsi4): Remove TARGET_CBRANCHDI4 check and
always invoke expand_cbranchsi4.

From-SVN: r190909

11 years agoDaily bump.
GCC Administrator [Tue, 4 Sep 2012 00:18:16 +0000 (00:18 +0000)] 
Daily bump.

From-SVN: r190908

11 years agoFix bootstrap-lto
Andi Kleen [Mon, 3 Sep 2012 22:00:13 +0000 (22:00 +0000)] 
Fix bootstrap-lto

gcc/

2012-09-03  Andi Kleen <ak@linux.intel.com>

* tree-ssa-sccvn.c (vn_reference_fold_indirect): Initialize
addr_offset always.

From-SVN: r190905

11 years agore PR tree-optimization/53395 (The LAPACK functions i(d|s)amax are more than two...
Andrew Pinski [Mon, 3 Sep 2012 20:31:52 +0000 (20:31 +0000)] 
re PR tree-optimization/53395 (The LAPACK functions i(d|s)amax are more than two times slower after revision 187183)

2012-09-03  Andrew Pinski  <apinski@cavium.com>

PR tree-opt/53395
* tree-if-conv.c (constant_or_ssa_name): New function.
(fold_build_cond_expr): New function.
(predicate_scalar_phi): Use fold_build_cond_expr instead of build3.
(predicate_mem_writes): Likewise.

From-SVN: r190904

11 years agofold-const.c (fold_ternary_loc): Constant-propagate after removing dead operands.
Marc Glisse [Mon, 3 Sep 2012 17:31:38 +0000 (19:31 +0200)] 
fold-const.c (fold_ternary_loc): Constant-propagate after removing dead operands.

2012-09-03  Marc Glisse  <marc.glisse@inria.fr>

gcc/
* fold-const.c (fold_ternary_loc): Constant-propagate after
removing dead operands.

gcc/testsuite/
* gcc.dg/fold-perm.c: Improve test.

From-SVN: r190901

11 years agore PR tree-optimization/46590 (long compile time with -O2 and many loops)
Michael Matz [Mon, 3 Sep 2012 15:39:15 +0000 (15:39 +0000)] 
re PR tree-optimization/46590 (long compile time with -O2 and many loops)

PR tree-optimization/46590
* tree-cfg.c (gimple_duplicate_sese_region): Don't update
SSA web here ...
* tree-ssa-loop-ch.c (copy_loop_headers): ... but here.

From-SVN: r190897

11 years agoinvoke.texi: Fix numerous typos and punctuation/grammatical errors throughout the...
Sandra Loosemore [Mon, 3 Sep 2012 15:29:22 +0000 (11:29 -0400)] 
invoke.texi: Fix numerous typos and punctuation/grammatical errors throughout the file.

2012-09-03  Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* doc/invoke.texi: Fix numerous typos and punctuation/grammatical
errors throughout the file.  Re-word some awkward sentences and
paragraphs.

From-SVN: r190896

11 years agore PR bootstrap/54138 (configuring --without-cloog but executable links against syste...
Richard Guenther [Mon, 3 Sep 2012 14:40:17 +0000 (14:40 +0000)] 
re PR bootstrap/54138 (configuring --without-cloog but executable links against system cloog)

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

PR bootstrap/54138
* configure.ac: Re-organize ISL / CLOOG checks to allow
disabling with either --without-isl or --without-cloog.
* configure: Regenerated.
* config/cloog.m4: Adjust.
* config/isl.m4: Adjust.

From-SVN: r190895

11 years agore PR fortran/54467 (f951: internal compiler error: in gfc_add_component_ref, at...
Tobias Burnus [Mon, 3 Sep 2012 14:06:27 +0000 (16:06 +0200)] 
re PR fortran/54467 (f951: internal compiler error: in gfc_add_component_ref, at fortran/class.c:213)

2012-09-03  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54467
        * class.c (gfc_find_derived_vtab): Fix disabling of _final
        by continuing to generate normal type-bound procedures.

From-SVN: r190892

11 years agore PR middle-end/54362 (COND_EXPR not understood by either alias or ITM)
Richard Biener [Mon, 3 Sep 2012 13:24:07 +0000 (13:24 +0000)] 
re PR middle-end/54362 (COND_EXPR not understood by either alias or ITM)

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

PR tree-optimization/54362
* tree-ssa-structalias.c (find_func_aliases): Handle COND_EXPR.

From-SVN: r190889

11 years agoconfigure.ac (noconfigdirs,target=avr): Add target-libquadmath.
Georg-Johann Lay [Mon, 3 Sep 2012 12:10:40 +0000 (12:10 +0000)] 
configure.ac (noconfigdirs,target=avr): Add target-libquadmath.

* configure.ac (noconfigdirs,target=avr): Add target-libquadmath.
* configure: Regenerate.

From-SVN: r190887

11 years agos390.c (s390_loadrelative_operand_p): New function.
Andreas Krebbel [Mon, 3 Sep 2012 11:46:56 +0000 (11:46 +0000)] 
s390.c (s390_loadrelative_operand_p): New function.

2012-09-03  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* config/s390/s390.c (s390_loadrelative_operand_p): New function.
(s390_check_qrst_address, print_operand_address): Use
s390_loadrelative_operand_p instead of s390_symref_operand_p.
(s390_check_symref_alignment): Accept pointer size alignment for GOT slots.
(legitimize_pic_address): Use load relative on z10 or later.

From-SVN: r190884

11 years agore PR debug/53923 (ICE: RTL check: expected code 'reg', have 'debug_expr' in rhs_regn...
Jakub Jelinek [Mon, 3 Sep 2012 11:42:31 +0000 (13:42 +0200)] 
re PR debug/53923 (ICE: RTL check: expected code 'reg', have 'debug_expr' in rhs_regno, at rtl.h:1091)

PR debug/53923
* valtrack.c (dead_debug_insert_temp): Drop non-reg uses
from the chain.

From-SVN: r190883

11 years agocommon.opt (--no-sysroot-suffix): New driver option.
Joseph Myers [Mon, 3 Sep 2012 11:34:22 +0000 (12:34 +0100)] 
common.opt (--no-sysroot-suffix): New driver option.

* common.opt (--no-sysroot-suffix): New driver option.
* doc/invoke.texi (--no-sysroot-suffix): Document.
* gcc.c (driver_handle_option): Handle --no-sysroot-suffix as not
needing spec processing.
(main): Do not process sysroot suffixes if no_sysroot_suffix.

From-SVN: r190882

11 years agoclass.c (gfc_find_derived_vtab): Disable ABI-breaking generation of the "_final"...
Tobias Burnus [Mon, 3 Sep 2012 07:51:05 +0000 (09:51 +0200)] 
class.c (gfc_find_derived_vtab): Disable ABI-breaking generation of the "_final" subroutine for now.

2012-09-03  Tobias Burnus  <burnus@net-b.de>

        * class.c (gfc_find_derived_vtab): Disable ABI-breaking
        generation of the "_final" subroutine for now.

From-SVN: r190872

11 years agoclass.c (finalize_component): Fixes to the comment.
Tobias Burnus [Mon, 3 Sep 2012 06:45:35 +0000 (08:45 +0200)] 
class.c (finalize_component): Fixes to the comment.

2012-09-03  Tobias Burnus  <burnus@net-b.de>

        * class.c (finalize_component): Fixes to the comment.

From-SVN: r190870

11 years ago[multiple changes]
Tobias Burnus [Mon, 3 Sep 2012 06:35:59 +0000 (08:35 +0200)] 
[multiple changes]

2012-09-03  Alessandro Fanfarillo  <fanfarillo.gcc@gmail.com>
            Tobias Burnus  <burnus@net-b.de>

        PR fortran/37336
        * gfortran.h (symbol_attribute): Add artificial.
        * module.c (mio_symbol_attribute): Handle attr.artificial
        * class.c (gfc_build_class_symbol): Defer creation of the vtab
        if the DT has finalizers, mark generated symbols as
        attr.artificial.
        (has_finalizer_component, finalize_component,
        finalization_scalarizer, generate_finalization_wrapper):
        New static functions.
        (gfc_find_derived_vtab): Add _final component and call
        generate_finalization_wrapper.
        * dump-parse-tree.c (show_f2k_derived): Use resolved
        proc_tree->n.sym rather than unresolved proc_sym.
        (show_attr): Handle attr.artificial.
        * resolve.c (gfc_resolve_finalizers): Ensure that the vtab
        * exists.
        (resolve_fl_derived): Resolve finalizers before
        generating the vtab.
        (resolve_symbol): Also allow assumed-rank arrays with CONTIGUOUS;
        skip artificial symbols.
        (resolve_fl_derived0): Skip artificial symbols.

2012-09-03  Tobias Burnus  <burnus@net-b.de>

        PR fortran/51632
        * gfortran.dg/coarray_class_1.f90: New.

From-SVN: r190869

11 years agoDaily bump.
GCC Administrator [Mon, 3 Sep 2012 00:17:29 +0000 (00:17 +0000)] 
Daily bump.

From-SVN: r190868

11 years agore PR target/33135 ([SH] -ffinite-math-only should not be on by default)
Oleg Endo [Sun, 2 Sep 2012 23:18:08 +0000 (23:18 +0000)] 
re PR target/33135 ([SH] -ffinite-math-only should not be on by default)

PR target/33135
* common/config/sh/sh-common.c: Update copyright years.
(sh_option_init_struct): Delete.
(TARGET_OPTION_INIT_STRUCT): Likewise.

From-SVN: r190865

11 years agore PR target/54418 ([SH] Invalid operands for opcode)
Oleg Endo [Sun, 2 Sep 2012 23:15:25 +0000 (23:15 +0000)] 
re PR target/54418 ([SH] Invalid operands for opcode)

PR target/54418
* config/sh/sh.md (cmpgeusi_t): Remove N alternative.
Check operands[1] in split condition instead of operands[0].
Add comments.

From-SVN: r190864

11 years agoconfig.host (x86_64-*-openbsd*): New target.
Mark Kettenis [Sun, 2 Sep 2012 14:13:21 +0000 (14:13 +0000)] 
config.host (x86_64-*-openbsd*): New target.

libgcc/

* config.host (x86_64-*-openbsd*): New target.

gcc/

* config.gcc (x86_64-*-openbsd*): New target.
* config.host (*-*-openbsd*): New target.
* config/openbsd.h (TARGET_C99_FUNCTIONS): Define.
* config/i386/openbsdelf.h: Remove some superfluous defines and
group things together in a more logical fashion.
(DBX_REGISTER_NUMBER): Provide a
definition that works on both 32-bit and 64-bit targets.
(WCHAR_TYPE_SIZE): Hardcode as 32.
(NO_DOLLAR_IN_LABEL): Remove undef.
(TARGET_DEFAULT): Remove.
(SET_ASM_OP): Remove.
(DEFAULT_PCC_STRUCT_RETURN): Undef first to prevent warning.
(ASM_OUTPUT_MAX_SKIP_ALIGN): Synch with x86-64.h
(DWARF2_UNWIND_INFO): Remove define.
(HAVE_ENABLE_EXECUTE_STACK): Define.
* config/host-openbsd.c: New file.
* config/t-openbsd (USER_H): Add EXTRA_HEADERS.
* config/x-openbsd: New file.

From-SVN: r190863

11 years agosh.md (*extend<mode>si2_compact_mem_disp): Pass iterated mode to sh_legitimate_index_...
Oleg Endo [Sun, 2 Sep 2012 13:05:10 +0000 (13:05 +0000)] 
sh.md (*extend<mode>si2_compact_mem_disp): Pass iterated mode to sh_legitimate_index_p instead of QImode.

* config/sh/sh.md (*extend<mode>si2_compact_mem_disp): Pass iterated
mode to sh_legitimate_index_p instead of QImode.

From-SVN: r190862

11 years agosync.md (atomic_compare_and_swap<dwi>_doubleword): Improve insn output code.
Uros Bizjak [Sun, 2 Sep 2012 11:08:33 +0000 (13:08 +0200)] 
sync.md (atomic_compare_and_swap<dwi>_doubleword): Improve insn output code.

* config/i386/sync.md (atomic_compare_and_swap<dwi>_doubleword):
Improve insn output code.

From-SVN: r190861

11 years agore PR rtl-optimization/54369 (delayed-branch pass removes too many instructions)
Eric Botcazou [Sun, 2 Sep 2012 10:36:27 +0000 (10:36 +0000)] 
re PR rtl-optimization/54369 (delayed-branch pass removes too many instructions)

PR rtl-optimization/54369
* config/mips/mips.c (mips_reorg): Invoke cleanup_barriers before
calling dbr_schedule.
* config/sparc/sparc.c (sparc_reorg): Likewise.

From-SVN: r190858

11 years agore PR target/49206 (RA failure in spill_failure, at reload1.c:2113)
Uros Bizjak [Sun, 2 Sep 2012 08:49:31 +0000 (10:49 +0200)] 
re PR target/49206 (RA failure in spill_failure, at reload1.c:2113)

PR target/49206
* gcc.c-torture/compile/pr49206.c: New test.

From-SVN: r190857

11 years ago* gcc.c-torture/compile/pr44687.c: Fix whitespace.
Uros Bizjak [Sun, 2 Sep 2012 08:42:45 +0000 (10:42 +0200)] 
* gcc.c-torture/compile/pr44687.c: Fix whitespace.

From-SVN: r190856

11 years agore PR target/36680 (ICE in spill_failure, reload1.c:1995)
Dominique d'Humieres [Sun, 2 Sep 2012 08:10:21 +0000 (10:10 +0200)] 
re PR target/36680 (ICE in spill_failure, reload1.c:1995)

PR target/36680
* gfortran.dg/pr36680.f90: New test.

Co-Authored-By: Uros Bizjak <ubizjak@gmail.com>
From-SVN: r190855

11 years agore PR target/42295 (ICE: 'error: unable to find a register to spill in class "AREG...
Uros Bizjak [Sun, 2 Sep 2012 07:07:45 +0000 (09:07 +0200)] 
re PR target/42295 (ICE: 'error: unable to find a register to spill in class "AREG"' with -fschedule-insns)

PR target/42295
* g++.dg/opt/pr42295.C: New test.

From-SVN: r190854

11 years agore PR fortran/54426 (FAIL: gfortran.dg/common_6.f90 -O (internal compiler error...
Tobias Burnus [Sun, 2 Sep 2012 06:40:27 +0000 (08:40 +0200)] 
re PR fortran/54426 (FAIL: gfortran.dg/common_6.f90  -O  (internal compiler error) on powerpc-apple-darwin9)

2012-09-02  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54426
        * symbol.c (find_common_symtree): New function.
        (gfc_undo_symbols): Use it; free common_head if needed.

From-SVN: r190853

11 years agoDaily bump.
GCC Administrator [Sun, 2 Sep 2012 00:17:49 +0000 (00:17 +0000)] 
Daily bump.

From-SVN: r190852

11 years agore PR target/54436 (Compiling some regular C++ code gives assembler '700415 shortened...
Jakub Jelinek [Sat, 1 Sep 2012 19:09:02 +0000 (21:09 +0200)] 
re PR target/54436 (Compiling some regular C++ code gives assembler '700415 shortened to 255' warning)

PR target/54436
* config/i386/i386.md (*mov<mode>_insv_1_rex64, *movsi_insv_1): If
operands[1] is CONST_INT_P, convert it to QImode before printing.

* gcc.dg/torture/pr54436.c: New test.

From-SVN: r190849

11 years agosimplify-rtx.c (simplify_unary_operation_1 <case TRUNCATE>): A truncate of a memory...
Andrew Pinski [Sat, 1 Sep 2012 18:52:19 +0000 (18:52 +0000)] 
simplify-rtx.c (simplify_unary_operation_1 <case TRUNCATE>): A truncate of a memory is just loading the low part of the memory.

2012-09-01  Andrew Pinski  <apinski@cavium.com>

* simplify-rtx.c (simplify_unary_operation_1 <case TRUNCATE>):
A truncate of a memory is just loading the low part of the memory.

2012-09-01  Andrew Pinski  <apinski@cavium.com>

        * gcc.target/mips/truncate-8.c: New testcase.

From-SVN: r190848

11 years agore PR target/46829 (ICE: in spill_failure, at reload1.c:2105 with -fschedule-insns...
Uros Bizjak [Sat, 1 Sep 2012 14:29:45 +0000 (16:29 +0200)] 
re PR target/46829 (ICE: in spill_failure, at reload1.c:2105 with -fschedule-insns -fsched-pressure and variadic function)

PR target/46829
PR target/46843
* config/i386/i386.c (ix86_legitimate_combined_insn): New function.
(TARGET_LEGITIMATE_COMBINED_INSN): New macro.

testsuite/ChangeLog:

PR target/46829
PR target/46843
* gcc.target/i386/pr46829.c: New test.
* gcc.target/i386/pr46843.c: Ditto.

From-SVN: r190847

11 years agotarget.def (legitimate_combined_insn): New target hook.
Uros Bizjak [Sat, 1 Sep 2012 14:26:28 +0000 (16:26 +0200)] 
target.def (legitimate_combined_insn): New target hook.

* target.def (legitimate_combined_insn): New target hook.
* doc/tm.texi.in (TARGET_LEGITIMATE_COMBINED_INSN): New hook.
* doc/tm.texi: Regenerated.
* combine.c (recog_for_combine): Call targetm.legitimate_combined_insn
to allow targets to reject combined insn.
* hooks.h (hook_bool_rtx_true): New.
* hooks.c (hook_bool_rtx_true): Ditto.

From-SVN: r190846

11 years agoDaily bump.
GCC Administrator [Sat, 1 Sep 2012 00:17:53 +0000 (00:17 +0000)] 
Daily bump.

From-SVN: r190845

11 years agore PR c++/18747 ("template<> int i;" accepted)
Paolo Carlini [Fri, 31 Aug 2012 21:35:33 +0000 (21:35 +0000)] 
re PR c++/18747 ("template<> int i;" accepted)

PR c++/18747
* pt.c (check_template_variable): New.
(num_template_headers_for_class): Split out...
* decl.c (grokdeclarator): ...from here.
(start_decl): Remove redundant diagnostic.
* cp-tree.h: Declare them
* parser.c (cp_parser_single_declaration): Call check_template_variable.
.
Co-Authored-By: Jason Merrill <jason@redhat.com>
From-SVN: r190842

11 years agoipa-inline-analysis.c (estimate_function_body_sizes): Allocate nonconstant_names...
Martin Jambor [Fri, 31 Aug 2012 19:16:21 +0000 (21:16 +0200)] 
ipa-inline-analysis.c (estimate_function_body_sizes): Allocate nonconstant_names after calculate_dominance_info and loop_optimizer_init.

2012-08-31  Martin Jambor  <mjambor@suse.cz>

* ipa-inline-analysis.c (estimate_function_body_sizes): Allocate
nonconstant_names after calculate_dominance_info and
loop_optimizer_init.

From-SVN: r190841

11 years agore PR c/54428 (ICE in gimplify_expr, at gimplify.c:7591)
Jakub Jelinek [Fri, 31 Aug 2012 19:00:59 +0000 (21:00 +0200)] 
re PR c/54428 (ICE in gimplify_expr, at gimplify.c:7591)

PR c/54428
* c-convert.c (convert): Don't call fold_convert_loc if
TYPE_MAIN_VARIANT of a COMPLEX_TYPE is the same, unless e
is a COMPLEX_EXPR.  Remove TYPE_MAIN_VARIANT check from
COMPLEX_TYPE -> COMPLEX_TYPE conversion.

* gcc.c-torture/compile/pr54428.c: New test.

From-SVN: r190840

11 years agoarm.c (arm_expand_epilogue): Remove unused variable floats_from_frame.
Greta Yorsh [Fri, 31 Aug 2012 16:42:21 +0000 (17:42 +0100)] 
arm.c (arm_expand_epilogue): Remove unused variable floats_from_frame.

gcc/

2012-08-31  Greta Yorsh  <Greta.Yorsh@arm.com>

        * config/arm/arm.c (arm_expand_epilogue): Remove unused variable
        floats_from_frame.

From-SVN: r190838

11 years agore PR c++/54197 (Lifetime of reference not properly extended)
Ollie Wild [Fri, 31 Aug 2012 15:47:29 +0000 (15:47 +0000)] 
re PR c++/54197 (Lifetime of reference not properly extended)

2012-08-31  Ollie Wild  <aaw@google.com>

PR c++/54197
* gcc/cp/call.c (extend_ref_init_temps_1): Handle COMPOUND_EXPR trees.
* gcc/testsuite/g++.dg/init/lifetime3.C: New test.

From-SVN: r190834

11 years agore PR middle-end/54409 (internal compiler error: in remap_predicate, at ipa-inline...
Martin Jambor [Fri, 31 Aug 2012 14:05:45 +0000 (16:05 +0200)] 
re PR middle-end/54409 (internal compiler error: in remap_predicate, at ipa-inline-analysis.c:2710)

2012-08-31  Martin Jambor  <mjambor@suse.cz>

PR middle-end/54409
* ipa-inline-analysis.c (remap_predicate): Fix the offset_map
checking condition.

* gcc/testsuite/gcc.dg/torture/pr54409.c: New test.

From-SVN: r190833

11 years agoipa-inline-analysis.c (phi_result_unknown_predicate): New function.
Martin Jambor [Fri, 31 Aug 2012 13:48:37 +0000 (15:48 +0200)] 
ipa-inline-analysis.c (phi_result_unknown_predicate): New function.

2012-08-31  Martin Jambor  <mjambor@suse.cz>

* ipa-inline-analysis.c (phi_result_unknown_predicate): New function.
(predicate_for_phi_result): Likewise.
(estimate_function_body_sizes): Use the above two functions.

* testsuite/gfortran.dg/pr48636.f90: Add dump scan checks.

From-SVN: r190832

11 years agore PR middle-end/54394 (fatigue2 -flto run time regression)
Martin Jambor [Fri, 31 Aug 2012 13:13:03 +0000 (15:13 +0200)] 
re PR middle-end/54394 (fatigue2 -flto run time regression)

2012-08-31  Martin Jambor  <mjambor@suse.cz>

PR middle-end/54394
* ipa-inline-analysis.c (estimate_function_body_sizes): Compute
dominance info and loops whenever optimizing.

From-SVN: r190831

11 years agore PR c++/50545 ([C++0x][DR 1172] SFINAE does not handle an explicit type conversion...
Jason Merrill [Fri, 31 Aug 2012 02:50:28 +0000 (22:50 -0400)] 
re PR c++/50545 ([C++0x][DR 1172] SFINAE does not handle an explicit type conversion (functional notation) with a braced-init-list well if target type is not dependent)

PR c++/50545
PR c++/51222
* pt.c (instantiation_dependent_r): New.
(instantiation_dependent_expression_p): New.
(value_dependent_expression_p): Use it.  SCOPE_REF is always dependent.
* semantics.c (finish_decltype_type): Use it.
* cp-tree.h: Declare it.

From-SVN: r190830

11 years agosemantics.c (finish_qualified_id_expr): Handle building up a non-dependent SCOPE_REF...
Jason Merrill [Fri, 31 Aug 2012 02:50:18 +0000 (22:50 -0400)] 
semantics.c (finish_qualified_id_expr): Handle building up a non-dependent SCOPE_REF here.

* semantics.c (finish_qualified_id_expr): Handle building up a
non-dependent SCOPE_REF here.
(finish_id_expression): Not here.
* error.c (dump_decl) [SCOPE_REF]: Only pass TFF_UNQUALIFIED_NAME.

From-SVN: r190829

11 years agofriend.c (make_friend_class): Handle template template parameters.
Jason Merrill [Fri, 31 Aug 2012 02:50:08 +0000 (22:50 -0400)] 
friend.c (make_friend_class): Handle template template parameters.

* friend.c (make_friend_class): Handle template template parameters.
* parser.c (cp_parser_template_declaration_after_export): Likewise.
* pt.c (tsubst_friend_class): Likewise.
(instantiate_class_template_1): Likewise
* decl.c (check_elaborated_type_specifier): Likewise.
(lookup_and_check_tag): Likewise.

From-SVN: r190828

11 years agopt.c (get_class_bindings): Call coerce_template_parms.
Jason Merrill [Fri, 31 Aug 2012 02:49:52 +0000 (22:49 -0400)] 
pt.c (get_class_bindings): Call coerce_template_parms.

* pt.c (get_class_bindings): Call coerce_template_parms.  Add
main_tmpl parameter.
(more_specialized_class): Add main_tmpl parameter.
(most_specialized_class): Adjust calls.

From-SVN: r190827

11 years agodecl.c (cp_finish_decl): Check for invalid multiple initializers even if the initiali...
Jason Merrill [Fri, 31 Aug 2012 02:49:42 +0000 (22:49 -0400)] 
decl.c (cp_finish_decl): Check for invalid multiple initializers even if the initializer is dependent.

* decl.c (cp_finish_decl): Check for invalid multiple initializers
even if the initializer is dependent.

From-SVN: r190826

11 years agopt.c (instantiate_template_1): Keep processing_template_decl set if there are depende...
Jason Merrill [Fri, 31 Aug 2012 02:49:33 +0000 (22:49 -0400)] 
pt.c (instantiate_template_1): Keep processing_template_decl set if there are dependent args.

* pt.c (instantiate_template_1): Keep processing_template_decl set
if there are dependent args.

From-SVN: r190825

11 years agoDaily bump.
GCC Administrator [Fri, 31 Aug 2012 00:18:02 +0000 (00:18 +0000)] 
Daily bump.

From-SVN: r190822

11 years agoChangeLog fixup
Benjamin Kosnik [Thu, 30 Aug 2012 19:25:04 +0000 (19:25 +0000)] 
ChangeLog fixup

From-SVN: r190811

11 years agoPR libstdc++/54005 continued
Benjamin Kosnik [Thu, 30 Aug 2012 19:24:58 +0000 (19:24 +0000)] 
PR libstdc++/54005 continued

2012-08-30  Benjamin Kosnik  <bkoz@redhat.com>

PR libstdc++/54005 continued
* include/std/atomic: Use __atomic_lock_free with
* include/bits/atomic_base.h: Same.

From-SVN: r190810

11 years agorandom.h (random_device): Remove 'return' from constructor.
Ulrich Drepper [Thu, 30 Aug 2012 16:33:09 +0000 (16:33 +0000)] 
random.h (random_device): Remove 'return' from constructor.

* include/bits/random.h (random_device) [GLIBCXX_USE_RANDOM_TR1]:
Remove 'return' from constructor.

From-SVN: r190806

11 years agotestsuite_abi.cc (check_version): Add GLIBCXX_3.4.18.
Benjamin Kosnik [Thu, 30 Aug 2012 15:58:52 +0000 (15:58 +0000)] 
testsuite_abi.cc (check_version): Add GLIBCXX_3.4.18.

2012-08-30  Benjamin Kosnik  <bkoz@redhat.com>

* testsuite/util/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.18.

From-SVN: r190805

11 years agore PR target/54252 (Bad alignment code generated for Neon loads)
Ramana Radhakrishnan [Thu, 30 Aug 2012 10:17:04 +0000 (10:17 +0000)] 
re PR target/54252 (Bad alignment code generated for Neon loads)

Fix PR target/54252

2012-08-29  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
    Richard Earnshaw  <richard.earnshaw@arm.com>

PR target/54252
* config/arm/arm.c (neon_dereference_pointer): Adjust nelems by
element size. Use elem_type from the formal parameter. New parameter
fcode.
(neon_expand_args): Adjust call to neon_dereference_pointer.

Co-Authored-By: Richard Earnshaw <rearnsha@arm.com>
From-SVN: r190800

11 years agoMissing CL entry
Ulrich Drepper [Thu, 30 Aug 2012 02:21:12 +0000 (02:21 +0000)] 
Missing CL entry

From-SVN: r190796

11 years agoDaily bump.
GCC Administrator [Thu, 30 Aug 2012 00:18:21 +0000 (00:18 +0000)] 
Daily bump.

From-SVN: r190793

11 years agorandom.h (random_device): Move implementation to...
Ulrich Drepper [Wed, 29 Aug 2012 22:05:41 +0000 (22:05 +0000)] 
random.h (random_device): Move implementation to...

* include/bits/random.h (random_device): Move implementation to...
* src/c++11/random.cc: ...here.  New file.
* config/abi/pre/gnu.ver: Add new version GLIBCXX_3.4.18.  Export
std::random_device::* symbols.
* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Generated.
* src/c++11/Makefile.am (sources): Add random.cc.
* src/c++11/Makefile.in: Regenerated.

From-SVN: r190787

11 years ago* cfg.c (dump_bb_info): Print a newline if there were no edges to dump.
Steven Bosscher [Wed, 29 Aug 2012 20:40:53 +0000 (20:40 +0000)] 
* cfg.c (dump_bb_info): Print a newline if there were no edges to dump.

From-SVN: r190786

11 years agorevert: t-linux64 (MULTILIB_OSDIRNAMES): Change to use mapping style, add ../lib...
Chung-Lin Tang [Wed, 29 Aug 2012 19:12:12 +0000 (19:12 +0000)] 
revert: t-linux64 (MULTILIB_OSDIRNAMES): Change to use mapping style, add ../lib/mips16.

2012-08-29  Chung-Lin Tang  <cltang@codesourcery.com>

Revert:
* config/mips/t-linux64 (MULTILIB_OSDIRNAMES): Change to use
mapping style, add ../lib/mips16.
(MULTILIB_OPTIONS,MULTILIB_DIRNAMES): Add mips16.
(MULTILIB_EXCLUSIONS): Exclude mips16 when not -mabi=32.

From-SVN: r190785

11 years agomips.h (TARGET_CPU_CPP_BUILTINS): Define __mips_synci if TARGET_SYNCI.
Richard Sandiford [Wed, 29 Aug 2012 18:57:49 +0000 (18:57 +0000)] 
mips.h (TARGET_CPU_CPP_BUILTINS): Define __mips_synci if TARGET_SYNCI.

gcc/
* config/mips/mips.h (TARGET_CPU_CPP_BUILTINS): Define __mips_synci
if TARGET_SYNCI.

gcc/testsuite/
* gcc.target/mips/mips.exp: Work out default -msynci setting.

From-SVN: r190784

11 years agoAdd simd_fast_mersenne_twister_engine class.
Ulrich Drepper [Wed, 29 Aug 2012 18:43:08 +0000 (18:43 +0000)] 
Add simd_fast_mersenne_twister_engine class.

* include/ext/random: New file.
* include/ext/random.tcc: New file.
* include/Makefile.am (ext_headers): Add random and random.tcc.
* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
operators/inequal.cc: New file.
* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
operators/equal.cc: New file.
* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
operators/serialize.cc: New file.
* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
cons/seed2.cc: New file.
* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
cons/default.cc: New file.
* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
cons/seed_seq.cc: New file.
* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
cons/copy.cc: New file.
* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
cons/seed1.cc: New file.

From-SVN: r190783

11 years agosh.opt (menable-tas): Rename to mtas.
Oleg Endo [Wed, 29 Aug 2012 18:41:52 +0000 (18:41 +0000)] 
sh.opt (menable-tas): Rename to mtas.

* config/sh/sh.opt (menable-tas): Rename to mtas.
* doc/invoke.texi (SH options): Likewise.
* config/sh/sync.md: Update comments.

From-SVN: r190782

11 years agoiterators.md: New file.
Oleg Endo [Wed, 29 Aug 2012 18:40:09 +0000 (18:40 +0000)] 
iterators.md: New file.

* config/sh/iterators.md: New file.
* config/sh/sync.md (I124, I12, i124suffix): Delete.  Replace usage with
new iterators QIHISI, QIHI, bw, bwl respectively throughout the file.
* config/sh/sh.md: Include new file iterators.md.
(zero_extendhisi2, zero_extendqisi2): Fold into zero_extend<mode>si2.
(*zero_extendhisi2_compact, *zero_extendqisi2_compact): Fold into
*zero_extend<mode>si2_compact.
(*zero_extendqisi2_disp_mem, zero_extendhisi2_disp_mem): Fold into
*zero_extend<mode>si2_disp_mem.
(extendhisi2, extendqisi2): Fold into extend<mode>si2.
(*extendqisi2_compact_reg, *extendhisi2_compact_reg): Fold into
*extend<mode>si2_compact_reg.
(*extendqisi2_compact_mem_disp, *extendhisi2_compact_mem_disp): Fold
into *extend<mode>si2_compact_mem_disp.
(*extendqisi2_compact_snd, *extendhisi2_compact_snd): Fold into
*extend<mode>si2_compact_snd.
(*movsi_index_disp, *movhi_index_disp): Fold with iterators and rename
to *movsi_index_disp_load, *movhi_index_disp_load,
*mov<mode>_index_disp_store.
(*movqi_reg_reg, *movhi_reg_reg): Fold into *mov<mode>_reg_reg.
(*movqi_store_mem_disp04, *movhi_store_mem_disp05): Fold into
*mov<mode>_store_mem_disp04.
(*movqi_store_mem_disp12, *movhi_store_mem_disp13): Fold into
*mov<mode>_store_mem_disp12.
(*movqi_load_mem_disp, *movhi_load_mem_disp): Fold into
*mov<mode>_load_mem_disp04 and *mov<mode>_load_mem_disp12.

From-SVN: r190781

11 years agoipa-inline.h (estimate_edge_hints): Call do_estimate_edge_hints, not do_estimate_edge...
Martin Jambor [Wed, 29 Aug 2012 12:16:11 +0000 (14:16 +0200)] 
ipa-inline.h (estimate_edge_hints): Call do_estimate_edge_hints, not do_estimate_edge_time.

2012-08-29  Martin Jambor  <mjambor@suse.cz>

* ipa-inline.h (estimate_edge_hints): Call do_estimate_edge_hints, not
do_estimate_edge_time.

From-SVN: r190777

11 years agomips.h (CRT_CALL_STATIC_FUNCTION): Add nomips16 asm directives, remove #ifndef __mips...
Chung-Lin Tang [Wed, 29 Aug 2012 09:33:49 +0000 (09:33 +0000)] 
mips.h (CRT_CALL_STATIC_FUNCTION): Add nomips16 asm directives, remove #ifndef __mips16 guards.

2012-08-29  Chung-Lin Tang  <cltang@codesourcery.com>

* config/mips/mips.h (CRT_CALL_STATIC_FUNCTION): Add nomips16 asm
directives, remove #ifndef __mips16 guards.
* config/mips/t-linux64 (MULTILIB_OSDIRNAMES): Change to use
mapping style, add ../lib/mips16.
(MULTILIB_OPTIONS,MULTILIB_DIRNAMES): Add mips16.
(MULTILIB_EXCLUSIONS): Exclude mips16 when not -mabi=32.

From-SVN: r190774

11 years agocrtfastmath.c (set_fast_math): Add 'nomips16' attribute.
Chung-Lin Tang [Wed, 29 Aug 2012 09:31:52 +0000 (09:31 +0000)] 
crtfastmath.c (set_fast_math): Add 'nomips16' attribute.

2012-08-29  Chung-Lin Tang  <cltang@codesourcery.com>

libgcc/
* config/mips/crtfastmath.c (set_fast_math): Add 'nomips16'
attribute.

From-SVN: r190773

11 years agofutex.h (sys_futex0): Change to static function with noinline, nomips16 attributes...
Chung-Lin Tang [Wed, 29 Aug 2012 09:29:55 +0000 (09:29 +0000)] 
futex.h (sys_futex0): Change to static function with noinline, nomips16 attributes under MIPS16.

2012-08-29  Chung-Lin Tang  <cltang@codesourcery.com>

libgomp/
* config/linux/mips/futex.h (sys_futex0): Change to static
function with noinline, nomips16 attributes under MIPS16. Adjust
asm statement to place 'li v0,SYS_futex' immediately before
syscall insn.

From-SVN: r190772

11 years agoPR libstdc++/54102, part 2
Benjamin Kosnik [Wed, 29 Aug 2012 04:44:10 +0000 (04:44 +0000)] 
PR libstdc++/54102, part 2

2012-08-28  Benjamin Kosnik  <bkoz@redhat.com>

PR libstdc++/54102, part 2
* doc/Makefile.am (XSL_HTML_STYLE): use xhtml, not html.
* doc/Makefile.in: Regenerate.
* doc/html/*: Same.

From-SVN: r190771

11 years ago*: Regenerate.
Benjamin Kosnik [Wed, 29 Aug 2012 02:09:55 +0000 (02:09 +0000)] 
*: Regenerate.

2012-08-28  Benjamin Kosnik  <bkoz@redhat.com>

* doc/html/*: Regenerate.

From-SVN: r190770

11 years agore PR libstdc++/54102 (generated html vs. utf8)
Benjamin Kosnik [Wed, 29 Aug 2012 01:37:16 +0000 (01:37 +0000)] 
re PR libstdc++/54102 (generated html vs. utf8)

2012-08-28  Benjamin Kosnik  <bkoz@redhat.com>

PR libstdc++/54102
* doc/xsl/customization.xsl.in: New.
* configure.ac: Output local copy of customization xsl.
* doc/Makefile.am (stamp-html-single-docbook): Use XSL_LOCAL_STYLE.
(stamp-html-docbook): Set stringparam to UTF-8.
* Makefile.in: Regenerated.
* configure: Same.
* doc/Makefile.in: Same.

From-SVN: r190768

11 years agoReplace malloc with xmalloc
H.J. Lu [Wed, 29 Aug 2012 01:03:21 +0000 (01:03 +0000)] 
Replace malloc with xmalloc

* argv.c (dupargv): Replace malloc with xmalloc.  Don't check
xmalloc return.
(buildargv): Likewise.  Also replace strdup with xstrdup.
(expandargv): Don't check dupargv return.

From-SVN: r190767

11 years agoReplace alloca with xmalloc/free
H.J. Lu [Wed, 29 Aug 2012 00:46:36 +0000 (00:46 +0000)] 
Replace alloca with xmalloc/free

PR binutils/14526
* argv.c (buildargv): Replace alloca with xmalloc/free.

From-SVN: r190766

11 years agoDaily bump.
GCC Administrator [Wed, 29 Aug 2012 00:18:57 +0000 (00:18 +0000)] 
Daily bump.

From-SVN: r190765

11 years agore PR fortran/54389 ([F2003/F2008 difference] PURE functions and pointer dummy argume...
Tobias Burnus [Tue, 28 Aug 2012 18:18:11 +0000 (20:18 +0200)] 
re PR fortran/54389 ([F2003/F2008 difference] PURE functions and pointer dummy arguments / DECL_PURE_P issue)

2012-08-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54389
        * trans-decl.c (gfc_get_extern_function_decl,
        build_function_decl): Don't mark impure elemental
        functions as DECL_PURE_P and honour implicit_pure.

From-SVN: r190757

11 years agore PR fortran/54382 (gfortran show_locus: Invalid read of size 4)
Tobias Burnus [Tue, 28 Aug 2012 14:49:55 +0000 (16:49 +0200)] 
re PR fortran/54382 (gfortran show_locus: Invalid read of size 4)

2012-08-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54382
        * error.c (show_locus): Avoid out of bound access.

From-SVN: r190752

11 years agore PR fortran/54384 (gfortran memory leaks)
Tobias Burnus [Tue, 28 Aug 2012 14:49:15 +0000 (16:49 +0200)] 
re PR fortran/54384 (gfortran memory leaks)

2012-08-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54384
        * decl.c (match_data_constant): Add missing gfc_free_expr.
        (top_val_list): Remove always-true condition.
        * data.c (get_array_index, create_character_initializer):
        Free temporary expressions.
        (gfc_assign_data_value): Free expression when aborting.

From-SVN: r190751

11 years agossa-dom-thread-3.c: Add -fno-short-enums.
Joey Ye [Tue, 28 Aug 2012 09:51:11 +0000 (09:51 +0000)] 
ssa-dom-thread-3.c: Add -fno-short-enums.

* gcc.dg/tree-ssa/ssa-dom-thread-3.c: Add -fno-short-enums.

From-SVN: r190745

11 years agoFix ChangeLog formatting.
Walter Lee [Tue, 28 Aug 2012 07:00:10 +0000 (07:00 +0000)] 
Fix ChangeLog formatting.

From-SVN: r190741

11 years agoFix some typos and coding style violations.
Walter Lee [Tue, 28 Aug 2012 06:09:45 +0000 (06:09 +0000)] 
Fix some typos and coding style violations.

* confg/tilegx/tilegx.md: Fix code style.
(*zero_extendsidi_truncdisi): Fix typo.
* config/tilegx/tilegx.c: Fix code style.
(tilegx_function_profiler): Fix typo.

From-SVN: r190739

11 years agore PR fortran/54384 (gfortran memory leaks)
Tobias Burnus [Tue, 28 Aug 2012 05:35:15 +0000 (07:35 +0200)] 
re PR fortran/54384 (gfortran memory leaks)

2012-08-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54384
        * symbol.c (gfc_copy_formal_args): Set also sym->formal_ns.

From-SVN: r190738

11 years agoAdd support for the -mcmodel=MODEL flag on TILE-Gx.
Walter Lee [Tue, 28 Aug 2012 05:25:35 +0000 (05:25 +0000)] 
Add support for the -mcmodel=MODEL flag on TILE-Gx.

Add support for the -mcmodel=MODEL flag on TILE-Gx.  The models
supported are small and large.  In the small model (default), distance
for direct calls is limited to 500M in either direction.  PC-relative
addresses are 32 bits.  Absolute addresses support the full address
range.  In the large model, there is no limiation on call distance,
pc-relative addresses, or absolute addresses.
* doc/invoke.texi: Document -mcmodel=small, -mcmodel=large.
* config/tilegx/tilegx.h: Include config/tilegx/tilegx-opts.h.
(CRT_CALL_STATIC_FUNCTION): Define.
* config/tilegx/predicates.md (const_last_symbolic_operand):
Handle UNSPEC_HW2_LAST_PCREL, UNSPEC_HW1_LAST_PLT_PCREL, and
UNSPEC_HW2_LAST_PLT_PCREL.
(const_symbolic_operand): Handle UNSPEC_HW1_PCREL,
UNSPEC_HW0_PLT_PCREL, and UNSPEC_HW1_PLT_PCREL.
* config/tilegx/tilegx.md (UNSPEC_MOV_LARGE_PCREL_STEP4): Define,
and renumber the constants that follow.
(UNSPEC_HW1_PCREL): Define, and renumber the constants that
follow.
(UNSPEC_HW0_PLT_PCREL): Define.
(UNSPEC_HW1_PLT_PCREL): Define.
(UNSPEC_HW1_LAST_PLT_PCREL): Define.
(UNSPEC_HW2_LAST_PLT_PCREL): Define.
(mov_large_pcrel_step1): Define.
(mov_large_pcrel_step2): Define.
(mov_large_pcrel_step3): Define.
(mov_large_pcrel_step4): Define.
(mov_plt_pcrel_step1): Define.
(mov_plt_pcrel_step2): Define.
(mov_plt_pcrel_step3): Define.
(mov_plt_pcrel_step1_32bit): Define.
(mov_plt_pcrel_step2_32bit): Define.
(call): Handle tilegx_cmodel == CM_LARGE, CM_LARGE_PIC.
(call_value): Ditto.
* config/tilegx/tilegx.opt: Include config/tilegx/tilegx-opts.h.
(mcmodel): New option.
(enum cmodel): Define.
(CM_SMALL): Define.
(CM_LARGE): Define.
* config/tilegx/tilegx-protos.h (tilegx_compute_pcrel_address):
Declare.
(tilegx_compute_pcrel_plt_address): Declare.
* config/tilegx/tilegx.c (tilegx_option_override): Handle
tilegx_cmodel.
(tilegx_function_ok_for_sibcall): Ditto.
(compute_pcrel_address): Rename to tilegx_compute_pcrel_address,
and don't declare static.  Handle tilegx_cmodel.
(tilegx_compute_pcrel_plt_address): Define.
(tilegx_legitimize_pic_address): Rename calls to
compute_pcrel_address.
(tilegx_delegitimize_address): Handle UNSPEC_HW1_PCREL,
UNSPEC_HW2_LAST_PCREL, UNSPEC_HW0_PLT_PCREL, UNSPEC_HW1_PLT_PCREL,
UNSPEC_HW1_LAST_PLT_PCREL, UNSPEC_HW2_LAST_PLT_PCREL.
(load_pic_register): Rename call to compute_pcrel_address.
(tilegx_print_operand): Handle UNSPEC_HW1_PCREL,
UNSPEC_HW2_LAST_PCREL, UNSPEC_HW0_PLT_PCREL, UNSPEC_HW1_PLT_PCREL,
UNSPEC_HW1_LAST_PLT_PCREL, UNSPEC_HW2_LAST_PLT_PCREL.

From-SVN: r190737

11 years agoDaily bump.
GCC Administrator [Tue, 28 Aug 2012 00:17:15 +0000 (00:17 +0000)] 
Daily bump.

From-SVN: r190736

11 years agosched-deps.c (add_dependence_list_and_free): Simplify.
Maxim Kuvyrkov [Mon, 27 Aug 2012 22:11:48 +0000 (22:11 +0000)] 
sched-deps.c (add_dependence_list_and_free): Simplify.

* sched-deps.c (add_dependence_list_and_free): Simplify.
(flush_pending_list_and_free): Fix a hack that was fixing a hack.  Free
lists when add_dependence_list_and_free doesn't free them.

From-SVN: r190733

11 years agore PR target/46254 (ICE: in find_reloads, at reload.c:3806 (unable to generate reload...
Uros Bizjak [Mon, 27 Aug 2012 21:13:07 +0000 (23:13 +0200)] 
re PR target/46254 (ICE: in find_reloads, at reload.c:3806 (unable to generate reloads) with -fPIC -mcmodel={medium|large} and __sync_val_compare_and_swap)

PR target/46254
* config/i386/predicates.md (cmpxchg8b_pic_memory_operand): Return
true for TARGET_64BIT or !flag_pic.
* config/i386/sync.md (*atomic_compare_and_swap_doubledi_pic): Remove.
(atomic_compare_and_swap_double<mode>): Change operand 2 predicate
to cmpxchg8b_pic_memory_operand.  Use DWIH mode iterator.
Add insn constraint.  Conditionally emit xchg asm insns.
(atomic_compare_and_swap<mode>): Update calls.  Check only
cmpxchg8b_pic_memory_operand in memory address fixup.
(DCASMODE): Remove.
(CASHMODE): Rename from DCASHMODE.
(doublemodesuffix): Update modes.
(regprefix): New mode attribute.

(unspecv) <UNSPECV_CMPXCHG_{1,2,3,4}>: Remove.
<UNSPECV_CMPXCHG>: New constant.
(atomic_compare_and_swap<mode>_1): Rename from
atomic_compare_and_swap_single<mode>.  Update calls and
unspec_volatile constants.
(atomic_compare_and_swap<mode>_doubleword): Rename from
atomic_compare_and_swap_double<mode>.  Update calls and
unspec_volatile constants.

testsuite/ChangeLog:

PR target/46254
* gcc.target/i386/pr46254.c: New test.

From-SVN: r190732

11 years agore PR fortran/54384 (gfortran memory leaks)
Tobias Burnus [Mon, 27 Aug 2012 20:51:52 +0000 (22:51 +0200)] 
re PR fortran/54384 (gfortran memory leaks)

2012-08-27  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54384
        * resolve.c (gfc_resolve_character_operator): Free temporary
        variables.
        * trans-expr.c (gfc_conv_statement_function): Ditto.

From-SVN: r190731

11 years agoFix doc typo.
Walter Lee [Mon, 27 Aug 2012 18:51:07 +0000 (18:51 +0000)] 
Fix doc typo.

* doc/md.texi (TILE-Gx): Fix typo.

From-SVN: r190729

11 years agore PR fortran/54384 (gfortran memory leaks)
Tobias Burnus [Mon, 27 Aug 2012 18:47:57 +0000 (20:47 +0200)] 
re PR fortran/54384 (gfortran memory leaks)

2012-08-27  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54384
        * dependency.c (check_section_vs_section): Use gfc_free_expr
        instead of free.
        * trans-intrinsic.c (conv_generic_with_optional_char_arg): Use
        gfc_free_symbol instead of free.

From-SVN: r190728

11 years agoFix a typo in the mcount function_profiler.
Walter Lee [Mon, 27 Aug 2012 18:35:39 +0000 (18:35 +0000)] 
Fix a typo in the mcount function_profiler.

* config/tilegx/tilegx.c (tilegx_function_profiler): Fix typo.
config/tilepro/tilepro.c (tilepro_function_profiler): Ditto.

From-SVN: r190726

11 years agoStop trying to represent the bfins instruction with the insv pattern,
Walter Lee [Mon, 27 Aug 2012 18:16:34 +0000 (18:16 +0000)] 
Stop trying to represent the bfins instruction with the insv pattern,

because it causes an extra copy when bfins reuses one of its inputs.
* config/tilegx/tilegx.md (*bfins): Rename to insn_bfins.
(insn_bfins): Delete.

From-SVN: r190724