platform/upstream/linaro-gcc.git
8 years ago2016-02-08 Richard Biener <rguenther@suse.de>
rguenth [Mon, 8 Feb 2016 14:51:20 +0000 (14:51 +0000)]
2016-02-08  Richard Biener  <rguenther@suse.de>

PR tree-optimization/69719
* tree-vect-data-refs.c (vect_prune_runtime_alias_test_list):
Properly use absolute of the difference of the two offsets to
compare or adjust the segment length.

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233212 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2016-02-08 Richard Biener <rguenther@suse.de>
rguenth [Mon, 8 Feb 2016 10:04:18 +0000 (10:04 +0000)]
2016-02-08  Richard Biener  <rguenther@suse.de>
Jeff Law  <law@redhat.com>

PR target/68273
* tree-ssanames.c (make_ssa_name_fn): Always use unqualified
types for anonymous SSA names.

* gcc.target/mips/pr68273.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233211 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * gcc-interface/utils.c (create_var_decl): Set again DECL_COMMON and
ebotcazou [Mon, 8 Feb 2016 09:40:46 +0000 (09:40 +0000)]
* gcc-interface/utils.c (create_var_decl): Set again DECL_COMMON and
DECL_IGNORED_P last.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233210 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2016-02-08 Richard Biener <rguenther@suse.de>
rguenth [Mon, 8 Feb 2016 09:09:22 +0000 (09:09 +0000)]
2016-02-08   Richard Biener  <rguenther@suse.de>

PR rtl-optimization/69274
* ira.c (ira_setup_alts): Do not change recog_data.operand
order.

* gcc.target/i386/addr-sel-1.c: XFAIL.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233209 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR tree-optimization/68541
law [Mon, 8 Feb 2016 08:40:00 +0000 (08:40 +0000)]
    PR tree-optimization/68541
        * gcc.dg/tree-ssa/split-path-2.c: Make char array explicitly signed.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233208 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR tree-optimization/65917
law [Mon, 8 Feb 2016 08:17:32 +0000 (08:17 +0000)]
PR tree-optimization/65917
* tree-ssa-dom.c (record_temporary_equivalences): Record both
equivalences from if (x == y) style conditionals.
(loop_depth_of_name): Remove.
(record_equality): Remove loop depth check.
* tree-ssa-scopedtables.h (const_and_copies): Refine comments.
(const_and_copies::record_const_or_copy_raw): New member function.
* tree-ssa-scopedtables.c
(const_and_copies::record_const_or_copy_raw): New, factored out of
(const_and_copies::record_const_or_copy): Call new member function.

        PR tree-optimization/65917
* gcc.dg/tree-ssa/20030922-2.c: No longer xfailed.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233207 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoDaily bump.
gccadmin [Mon, 8 Feb 2016 00:16:15 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233206 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2016-02-07 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Sun, 7 Feb 2016 20:15:55 +0000 (20:15 +0000)]
2016-02-07  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR fortran/50555
* primary.c (match_actual_arg): If symbol has attribute flavor of
namelist, generate an error. (gfc_match_rvalue): Likewise return
MATCH_ERROR.
* resolve.c (resolve_symbol): Scan arument list of procedures and
generate an error if a namelist is found.

PR fortran/50555
* gfortran.dg/namelist_args.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233203 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * ru.po: Update.
jsm28 [Sun, 7 Feb 2016 14:37:20 +0000 (14:37 +0000)]
* ru.po: Update.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233202 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * fi.po, sv.po: Update.
jsm28 [Sun, 7 Feb 2016 14:34:42 +0000 (14:34 +0000)]
* fi.po, sv.po: Update.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233201 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoDaily bump.
gccadmin [Sun, 7 Feb 2016 00:16:11 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233199 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * mmap.c (MAP_FAILED): Define if not defined.
danglin [Sat, 6 Feb 2016 22:27:34 +0000 (22:27 +0000)]
* mmap.c (MAP_FAILED): Define if not defined.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233196 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoDaily bump.
gccadmin [Sat, 6 Feb 2016 00:16:13 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233194 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR tree-optimization/68541
law [Fri, 5 Feb 2016 23:49:08 +0000 (23:49 +0000)]
PR tree-optimization/68541
* gimple-ssa-split-paths.c: Include tree-cfg.h and params.h.
(count_stmts_in_block): New function.
(poor_ifcvt_candidate_code): Likewise.
(is_feasible_trace): Add some heuristics to determine when path
splitting is profitable.
(find_block_to_duplicate_for_splitting_paths): Make sure the graph
is a diamond with a single exit.

        PR tree-optimization/68541
* gcc.dg/tree-ssa/split-path-2.c: New test.
* gcc.dg/tree-ssa/split-path-3.c: New test.
* gcc.dg/tree-ssa/split-path-4.c: New test.
* gcc.dg/tree-ssa/split-path-5.c: New test.
* gcc.dg/tree-ssa/split-path-6.c: New test.
* gcc.dg/tree-ssa/split-path-7.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233191 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoPR c++/69662 - -Wplacement-new on allocated one element array members
msebor [Fri, 5 Feb 2016 22:27:37 +0000 (22:27 +0000)]
PR c++/69662 - -Wplacement-new on allocated one element array members

gcc/testsuite/ChangeLog:
PR c++/69662
* g++.dg/warn/Wplacement-new-size-1.C: New test.
* g++.dg/warn/Wplacement-new-size-2.C: New test.

gcc/cp/ChangeLog:
PR c++/69662
* init.c (find_field_init): New function.
(warn_placement_new_too_small): Call it.  Handle one-element arrays
        at ends of structures special.

gcc/c-family/ChangeLog:
PR c++/69662
* c.opt (Warning options): Update -Wplacement-new to take
        an optional argument.

gcc/ChangeLog:
PR c++/69662
* doc/invoke.texi: Update -Wplacement-new to take an optional
        argument.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233190 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoPR c/69643
rth [Fri, 5 Feb 2016 22:05:17 +0000 (22:05 +0000)]
PR c/69643

  * tree.c (tree_nop_conversion_p): Do not strip casts into or
  out of non-standard address spaces.
testsuite/
  * gcc.target/i386/addr-space-4.c: New.
  * gcc.target/i386/addr-space-5.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233189 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoFix fortran scalar elemental dependency mishandling
mikael [Fri, 5 Feb 2016 21:41:15 +0000 (21:41 +0000)]
Fix fortran scalar elemental dependency mishandling

PR fortran/66089
gcc/fortran/
* trans-expr.c (expr_is_variable, gfc_expr_is_variable): Rename
the former to the latter and make it non-static.  Update callers.
* gfortran.h (gfc_expr_is_variable): New declaration.
(struct gfc_ss_info): Add field needs_temporary.
* trans-array.c (gfc_scalar_elemental_arg_saved_as_argument):
Tighten the condition on aggregate expressions with a check
that the expression is a variable and doesn't need a temporary.
(gfc_conv_resolve_dependency): Add intermediary reference variable.
Set the needs_temporary field.
gcc/testsuite/
* gfortran.dg/elemental_dependency_6.f90: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233188 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR rtl-optimization/69691
jakub [Fri, 5 Feb 2016 21:13:43 +0000 (21:13 +0000)]
PR rtl-optimization/69691
* lra-eliminations.c (move_plus_up): Don't add the addend twice.

* gcc.c-torture/execute/pr69691.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233187 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR c++/69628
jakub [Fri, 5 Feb 2016 19:39:48 +0000 (19:39 +0000)]
PR c++/69628
* charset.c (cpp_interpret_charconst): Clear *PCHARS_SEEN
and *UNSIGNEDP if bailing out early due to errors.

* g++.dg/parse/pr69628.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233186 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago Make issues similar to PR c++/68948 fail loudly.
jason [Fri, 5 Feb 2016 17:52:07 +0000 (17:52 +0000)]
Make issues similar to PR c++/68948 fail loudly.

* semantics.c (finish_expr_stmt): If expr is error_mark_node,
make sure we've seen_error().

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233183 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * gcc.dg/sancov/asan.c: Move to ...
uros [Fri, 5 Feb 2016 16:41:36 +0000 (16:41 +0000)]
* gcc.dg/sancov/asan.c: Move to ...
* gcc.dg/asan/sancov-1.c: ... here.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233182 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * gcc.target/i386/pr69577.c: Require avx_runtime target.
uros [Fri, 5 Feb 2016 16:36:38 +0000 (16:36 +0000)]
* gcc.target/i386/pr69577.c: Require avx_runtime target.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233181 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoAdd a testcase for PR target/69677
hjl [Fri, 5 Feb 2016 16:24:06 +0000 (16:24 +0000)]
Add a testcase for PR target/69677

PR target/69677
* gcc.target/i386/pr69677.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233180 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * config/rs6000/crypto.md (crypto_vpermxor_<mode>): Correct insn type.
pthaugen [Fri, 5 Feb 2016 15:25:39 +0000 (15:25 +0000)]
* config/rs6000/crypto.md (crypto_vpermxor_<mode>): Correct insn type.
* config/rs6000/rs6000.md (mov<mode>_hardfloat): Likewise.
(*ieee128_mfvsrd_64bit): Likewise.
(*ieee128_mfvsrd_32bit): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233179 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agogcc/
ienkovich [Fri, 5 Feb 2016 14:41:00 +0000 (14:41 +0000)]
gcc/

2016-02-05  Ilya Enkovich  <enkovich.gnu@gmail.com>

PR target/69369
Revert r232560:
2016-01-19  Jan Hubicka  <hubicka@ucw.cz>

* cgraphunit.c (cgraph_node::reset): Clear thunk info and
instrumented_version.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233177 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoFix PR c++/68948 (wrong code generation due to invalid constructor call)
ppalka [Fri, 5 Feb 2016 14:36:44 +0000 (14:36 +0000)]
Fix PR c++/68948 (wrong code generation due to invalid constructor call)

gcc/cp/ChangeLog:

PR c++/68948
* pt.c (tsubst_baselink): Diagnose an invalid constructor call
if lookup_fnfields returns NULL_TREE and the name being looked
up has the form A::A.

gcc/testsuite/ChangeLog:

PR c++/68948
* g++.dg/template/pr68948.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233176 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2016-01-05 Jeremy Bennett <jeremy.bennett@embecosm.com>
amylaar [Fri, 5 Feb 2016 14:27:26 +0000 (14:27 +0000)]
2016-01-05  Jeremy Bennett  <jeremy.bennett@embecosm.com>

        * doc/invoke.texi (Optimize Options): In table of --param options
        rename second occurrence of tracer-min-branch-ratio to
        tracer-min-branch-probability, rename
        tracer-min-branch-ratio-feedback to
        tracer-min-branch-probability-feedback and clarify description,
        rename sched-spec-state-edge-prob-cutoff to
        sched-state-edge-prob-cutoff, rename selsched-max-insns-to-rename
        to selsched-insns-to-rename, rename lto-minpartition to
        lto-min-partition, delete reorder-blocks-duplicate and
        reorder-blocks-duplicate-feedback.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233175 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * fi.po: Update.
jsm28 [Fri, 5 Feb 2016 13:24:28 +0000 (13:24 +0000)]
* fi.po: Update.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233174 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoS/390: Remove superfluous loops.
krebbel [Fri, 5 Feb 2016 11:38:52 +0000 (11:38 +0000)]
S/390: Remove superfluous loops.

gcc/ChangeLog:

2016-02-05  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

* config/s390/s390.c (s390_register_info_set_ranges): Remove
superfluous loops.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233173 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoS/390: Correct documentation
krebbel [Fri, 5 Feb 2016 10:36:21 +0000 (10:36 +0000)]
S/390: Correct documentation

gcc/ChangeLog

* doc/extend.texi: S/390: Correct some typos.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233172 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoS/390: Do not require -march=z13 on s390 but only on s390x.
krebbel [Fri, 5 Feb 2016 10:33:21 +0000 (10:33 +0000)]
S/390: Do not require -march=z13 on s390 but only on s390x.

gcc/testsuite/ChangeLog

* gcc.dg/tree-ssa/ssa-dom-cse-2.c: Remove -march=z13 for s390
(only necessary on s390x).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233171 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agolibstdc++: S/390: Add missing baseline_symbols.txt for s390x/-m31.
krebbel [Fri, 5 Feb 2016 10:25:08 +0000 (10:25 +0000)]
libstdc++: S/390: Add missing baseline_symbols.txt for s390x/-m31.

The attached patch copies the existing
libstdc++-v3/config/abi/post/s390-linux-gnu/baseline_symbols.txt
to .../s390x-linux-gnu/32/baseline_symbols.txt.  This fixes the
abi test failure on s390x with -m31.

libstdc++-v3/ChangeLog

* config/abi/post/s390x-linux-gnu/32/baseline_symbols.txt (FUNC):
New file.  Copied over from s390-linux-gnu.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233170 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoS/390: Fix 64 bit sibcall
krebbel [Fri, 5 Feb 2016 10:10:35 +0000 (10:10 +0000)]
S/390: Fix 64 bit sibcall

This fixes a problem revealed during the split-stack work:
https://gcc.gnu.org/ml/gcc-patches/2016-02/msg00322.html

gcc/ChangeLog:

2016-02-05  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

* config/s390/s390.c (s390_emit_call): Add missing 64 bit check.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233169 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoS/390: Fix r6 vararg handling.
krebbel [Fri, 5 Feb 2016 10:08:17 +0000 (10:08 +0000)]
S/390: Fix r6 vararg handling.

This patch fixes a problem introduced with the GPR into FPR slot save
feature for leaf functions.

r6 is argument register as well as call-saved.  Currently we might
decide that it will be a candidate for being saved into an FPR.  If it
turns out later that r6 also needs to be saved due to being required
for vararg we undo the FPR save decision and put it on the stack
again.  Unfortunately the code did not adjust the GPR restore range
accordingly so that the register does not get restored in the load
multiple.

This fixes the following testcases on s390x:

< FAIL: libgomp.c/doacross-1.c execution test
< FAIL: libgomp.c/doacross-2.c execution test
< FAIL: libgomp.c/doacross-3.c execution test
< FAIL: libgomp.c++/doacross-1.C execution test

gcc/ChangeLog:

2016-02-05  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

    PR target/69625
    * config/s390/s390.c (SAVE_SLOT_NONE, SAVE_SLOT_STACK): New
    defines.
    (s390_register_info_gprtofpr): Use new macros above.
    (s390_register_info_stdarg_fpr): Adjust max_fpr to better match
    its name.
    (s390_register_info_stdarg_gpr): Adjust max_gpr to better match
    its name.  Adjust restore and save gpr ranges.
    (s390_register_info_set_ranges): New function.
    (s390_register_info): Use new macros above.  Call
    s390_register_info_set_ranges.
    (s390_optimize_register_info): Likewise.
    (s390_hard_regno_rename_ok): Use new macros.
    (s390_hard_regno_scratch_ok): Likewise.
    (s390_emit_epilogue): Likewise.
    (s390_can_use_return_insn): Likewise.
    (s390_optimize_prologue): Likewise.
    * config/s390/s390.md (GPR2_REGNUM, GPR6_REGNUM): New constants.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233168 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR bootstrap/69677
jakub [Fri, 5 Feb 2016 09:23:03 +0000 (09:23 +0000)]
PR bootstrap/69677
* config/i386/i386.c (convert_scalars_to_vector): Readd stack
alignment fixes.
(ix86_option_override_internal): Disable TARGET_STV even for
-m{incoming,preferred}-stack-boundary=3.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233167 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoCompile pr69454-2.c with -msse2 -mno-accumulate-outgoing-args
hjl [Fri, 5 Feb 2016 03:06:40 +0000 (03:06 +0000)]
Compile pr69454-2.c with -msse2 -mno-accumulate-outgoing-args

2016-02-04  H.J. Lu  <hongjiu.lu@intel.com>

* gcc.target/i386/pr69454-2.c: Compile with -msse2
-mno-accumulate-outgoing-args.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233166 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoobsolete the deprecated rtems targets
tbsaunde [Fri, 5 Feb 2016 01:40:39 +0000 (01:40 +0000)]
obsolete the deprecated rtems targets

gcc/ChangeLog:

2016-02-03  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* config.gcc: Mark deprecated rtems targets as obsolete.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233165 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoDaily bump.
gccadmin [Fri, 5 Feb 2016 00:16:12 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233164 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoTest for C99 stdlib.h functions with -std=c++98
redi [Thu, 4 Feb 2016 23:47:21 +0000 (23:47 +0000)]
Test for C99 stdlib.h functions with -std=c++98

PR libstdc++/69626
* acinclude.m4 (GLIBCXX_ENABLE_C99): Check C99 stdlib.h functions
with -std=c++98 and define _GLIBCXX98_USE_C99_STDLIB.
* config.h.in: Regenerate.
* configure: Regenerate.
* testsuite/21_strings/c_strings/char/69626.cc: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233161 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agocombine: distribute_notes again (PR69567, PR64682)
segher [Thu, 4 Feb 2016 23:09:51 +0000 (23:09 +0000)]
combine: distribute_notes again (PR69567, PR64682)

As it happens the patch I did over a year ago for PR64682 isn't quite
correct.  This is PR69567.  This fixes it.

PR rtl-optimization/64682
PR rtl-optimization/69567
* combine.c (distribute_notes) <REG_DEAD>: Place the death note
before I2 only if the register is both used and set in I2.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233159 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoFix constexpr evaluation of comparisons involving pointer-to-members
ppalka [Thu, 4 Feb 2016 22:54:52 +0000 (22:54 +0000)]
Fix constexpr evaluation of comparisons involving pointer-to-members

gcc/cp/ChangeLog:

* constexpr.c (cxx_eval_binary_expression): Fold equality
comparisons involving PTRMEM_CSTs.

gcc/testsuite/ChangeLog:

* g++.dg/cpp0x/constexpr-ptrmem5.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233158 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago* config/msp430/msp430.c (msp430_start_function): Add function type.
dj [Thu, 4 Feb 2016 22:54:30 +0000 (22:54 +0000)]
* config/msp430/msp430.c (msp430_start_function): Add function type.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233157 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago libgo: bump version number for upgrade to 1.6rc1
ian [Thu, 4 Feb 2016 22:54:20 +0000 (22:54 +0000)]
libgo: bump version number for upgrade to 1.6rc1

    Reviewed-on: https://go-review.googlesource.com/19233

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233156 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR c/69669
jakub [Thu, 4 Feb 2016 22:17:05 +0000 (22:17 +0000)]
PR c/69669
* c-decl.c (finish_enum): When honoring mode attribute,
make sure to use proper TYPE_MIN_VALUE and TYPE_MAX_VALUE.

* c-c++-common/pr69669.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233154 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR fortran/69368
jakub [Thu, 4 Feb 2016 22:15:33 +0000 (22:15 +0000)]
PR fortran/69368
* tree-dfa.c (get_ref_base_and_extent): Remove unreachable code.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233153 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR rtl-optimization/69577
uros [Thu, 4 Feb 2016 22:10:56 +0000 (22:10 +0000)]
PR rtl-optimization/69577
Revert:
2015-10-29  Richard Henderson  <rth@redhat.com>

PR target/68124
PR rtl-opt/67609
* config/i386/i386.c (ix86_cannot_change_mode_class): Tighten
sse check to the exact conditions of PR 67609.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233152 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoRegenerate front page of libstdc++ HTML docs
redi [Thu, 4 Feb 2016 21:46:19 +0000 (21:46 +0000)]
Regenerate front page of libstdc++ HTML docs

* doc/html/index.html: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233151 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoUpdate copyright years in libstdc++ manual and add link
redi [Thu, 4 Feb 2016 21:43:40 +0000 (21:43 +0000)]
Update copyright years in libstdc++ manual and add link

* doc/xml/manual/containers.xml: Add cross-reference to Dual ABI.
* doc/xml/manual/spine.xml: Update copyright years and author blurb.
* doc/html/*: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233150 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago[gcc]
meissner [Thu, 4 Feb 2016 21:05:14 +0000 (21:05 +0000)]
[gcc]
2016-02-04  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/69667
* config/rs6000/rs6000.md (mov<mode>_64bit_dm): Use 'd' constraint
instead of 'ws', and 'wh' instead of 'wm' since TFmode/IFmode are
not allowed into the traditional Altivec registers.
(movtd_64bit_nodm): Likewise.
(mov<mode>_32bit, FMOVE128_FPR iterator): Likewise.

[gcc/testsuite]
2016-02-04  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/69667
* g++.dg/pr69667.C: New file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233147 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoFix jit crash on aarch64
dmalcolm [Thu, 4 Feb 2016 19:30:28 +0000 (19:30 +0000)]
Fix jit crash on aarch64

gcc/ChangeLog:
* config/aarch64/cortex-a57-fma-steering.c
(aarch64_register_fma_steering): Remove "static" from arguments
to register_pass.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233146 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoThis patch fixes an exponential issue in ccmp.c. When deciding which ccmp
wilco [Thu, 4 Feb 2016 18:23:35 +0000 (18:23 +0000)]
This patch fixes an exponential issue in ccmp.c.  When deciding which ccmp
expansion to use, the tree nodes gs0 and gs1 are fully expanded twice.  If
they contain more CCMP opportunities, their subtrees are also expanded twice.
When the trees are complex the expansion takes exponential time and memory.
As a workaround in GCC6 compute the cost of the first expansion early, and
only try the alternative expansion if the cost is low enough.  This rarely
affects real code, eg. SPECINT2006 has identical codesize.

2016-02-04  Wilco Dijkstra  <wdijkstr@arm.com>

    gcc/
PR target/69619
* ccmp.c (expand_ccmp_expr_1): Avoid evaluating gs0/gs1
twice when complex.

    gcc/testsuite/
PR target/69619
* gcc.dg/pr69619.c: Add new test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233145 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agogcc: invoke: delete -mno-fma4 docs
vapier [Thu, 4 Feb 2016 17:32:11 +0000 (17:32 +0000)]
gcc: invoke: delete -mno-fma4 docs

We don't document the -mno-xxx variants for other flags here, and the
paragraph here specifically says "Each has a corresponding -mno- option
to disable use of these instructions".  Drop the -mno-fma4 line.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233144 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoPR 69577: Invalid RA of destination subregs
rsandifo [Thu, 4 Feb 2016 15:01:15 +0000 (15:01 +0000)]
PR 69577: Invalid RA of destination subregs

In PR 69577 we have:

      A: (set (reg:V2TI X) ...)
      B: (set (subreg:TI (reg:V2TI X) 0) ...)

X gets allocated to an AVX register, as usual for V2TI.  The problem is
that the movti for B doesn't then preserve the other half of X, even
though the subreg semantics are supposed to guarantee that.

If instead the same value had been set by:

      A': (set (subreg:TI (reg:V2TI X) 16) ...)
      B: (set (subreg:TI (reg:V2TI X) 0) ...)

the subreg in A' would have prevented the use of AVX registers for X,
since you can't directly access the high part.

IMO these are really the same thing.  An alternative way to view it
is that the original sequence is equivalent to:

      A: (set (reg:V2TI X) ...)
      B1: (set (subreg:TI (reg:V2TI X) 0) ...)
      B2: (set (subreg:TI (reg:V2TI X) 16) (subreg:TI (reg:V2TI X) 16))

in which B2 is a no-op and therefore implicit.  The handling ought
to be the same regardless of whether there is an rtl insn that
explicitly assigns to (subreg:TI (reg:V2TI X) 16).

This patch implements that idea.  Hopefully the comments explain
what's going on.

Tested on x86_64-linux-gnu, aarch64-linux-gnu and arm-linux-gnueabihf.

gcc/
PR rtl-optimization/69577
* reginfo.c (record_subregs_of_mode): Add a partial_def parameter.
(find_subregs_of_mode): Update accordingly.  Iterate over partial
definitions.

gcc/testsuite/
PR rtl-optimization/69577
* gcc.target/i386/pr69577.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233143 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago[ARM] Remove neon_reinterpret, use casts
alalaw01 [Thu, 4 Feb 2016 14:49:02 +0000 (14:49 +0000)]
[ARM] Remove neon_reinterpret, use casts

* config/arm/arm-protos.h (neon_reinterpret): Remove.
* config/arm/arm.c (neon_reinterpret): Remove.
* config/arm/arm_neon_builtins.def (vreinterpretv8qi, vreinterpretv4hi,
vreinterpretv2si, vreinterpretv2sf, vreinterpretdi, vreinterpretv16qi,
vreinterpretv8hi, vreinterpretv4si, vreinterpretv4sf, vreinterpretv2di,
vreinterpretti): Remove.
* config/arm/neon.md (neon_vreinterpretv8qi<mode>,
neon_vreinterpretv4hi<mode>, neon_vreinterpretv2si<mode>,
neon_vreinterpretv2sf<mode>, neon_vreinterpretdi<mode>,
neon_vreinterpretti<mode>, neon_vreinterpretv16qi<mode>,
neon_vreinterpretv8hi<mode>, neon_vreinterpretv4si<mode>,
neon_vreinterpretv4sf<mode>, neon_vreinterpretv2di<mode>): Remove.
* config/arm/arm_neon.h (vreinterpret_p8_p16, vreinterpret_p8_f32,
vreinterpret_p8_p64, vreinterpret_p8_s64, vreinterpret_p8_u64,
vreinterpret_p8_s8, vreinterpret_p8_s16, vreinterpret_p8_s32,
vreinterpret_p8_u8, vreinterpret_p8_u16, vreinterpret_p8_u32,
vreinterpret_p16_p8, vreinterpret_p16_f32, vreinterpret_p16_p64,
vreinterpret_p16_s64, vreinterpret_p16_u64, vreinterpret_p16_s8,
vreinterpret_p16_s16, vreinterpret_p16_s32, vreinterpret_p16_u8,
vreinterpret_p16_u16, vreinterpret_p16_u32, vreinterpret_f32_p8,
vreinterpret_f32_p16, vreinterpret_f32_p64, vreinterpret_f32_s64,
vreinterpret_f32_u64, vreinterpret_f32_s8, vreinterpret_f32_s16,
vreinterpret_f32_s32, vreinterpret_f32_u8, vreinterpret_f32_u16,
vreinterpret_f32_u32, vreinterpret_p64_p8, vreinterpret_p64_p16,
vreinterpret_p64_f32, vreinterpret_p64_s64, vreinterpret_p64_u64,
vreinterpret_p64_s8, vreinterpret_p64_s16, vreinterpret_p64_s32,
vreinterpret_p64_u8, vreinterpret_p64_u16, vreinterpret_p64_u32,
vreinterpret_s64_p8, vreinterpret_s64_p16, vreinterpret_s64_f32,
vreinterpret_s64_p64, vreinterpret_s64_u64, vreinterpret_s64_s8,
vreinterpret_s64_s16, vreinterpret_s64_s32, vreinterpret_s64_u8,
vreinterpret_s64_u16, vreinterpret_s64_u32, vreinterpret_u64_p8,
vreinterpret_u64_p16, vreinterpret_u64_f32, vreinterpret_u64_p64,
vreinterpret_u64_s64, vreinterpret_u64_s8, vreinterpret_u64_s16,
vreinterpret_u64_s32, vreinterpret_u64_u8, vreinterpret_u64_u16,
vreinterpret_u64_u32, vreinterpret_s8_p8, vreinterpret_s8_p16,
vreinterpret_s8_f32, vreinterpret_s8_p64, vreinterpret_s8_s64,
vreinterpret_s8_u64, vreinterpret_s8_s16, vreinterpret_s8_s32,
vreinterpret_s8_u8, vreinterpret_s8_u16, vreinterpret_s8_u32,
vreinterpret_s16_p8, vreinterpret_s16_p16, vreinterpret_s16_f32,
vreinterpret_s16_p64, vreinterpret_s16_s64, vreinterpret_s16_u64,
vreinterpret_s16_s8, vreinterpret_s16_s32, vreinterpret_s16_u8,
vreinterpret_s16_u16, vreinterpret_s16_u32, vreinterpret_s32_p8,
vreinterpret_s32_p16, vreinterpret_s32_f32, vreinterpret_s32_p64,
vreinterpret_s32_s64, vreinterpret_s32_u64, vreinterpret_s32_s8,
vreinterpret_s32_s16, vreinterpret_s32_u8, vreinterpret_s32_u16,
vreinterpret_s32_u32, vreinterpret_u8_p8, vreinterpret_u8_p16,
vreinterpret_u8_f32, vreinterpret_u8_p64, vreinterpret_u8_s64,
vreinterpret_u8_u64, vreinterpret_u8_s8, vreinterpret_u8_s16,
vreinterpret_u8_s32, vreinterpret_u8_u16, vreinterpret_u8_u32,
vreinterpret_u16_p8, vreinterpret_u16_p16, vreinterpret_u16_f32,
vreinterpret_u16_p64, vreinterpret_u16_s64, vreinterpret_u16_u64,
vreinterpret_u16_s8, vreinterpret_u16_s16, vreinterpret_u16_s32,
vreinterpret_u16_u8, vreinterpret_u16_u32, vreinterpret_u32_p8,
vreinterpret_u32_p16, vreinterpret_u32_f32, vreinterpret_u32_p64,
vreinterpret_u32_s64, vreinterpret_u32_u64, vreinterpret_u32_s8,
vreinterpret_u32_s16, vreinterpret_u32_s32, vreinterpret_u32_u8,
vreinterpret_u32_u16, vreinterpretq_p8_p16, vreinterpretq_p8_f32,
vreinterpretq_p8_p64, vreinterpretq_p8_p128, vreinterpretq_p8_s64,
vreinterpretq_p8_u64, vreinterpretq_p8_s8, vreinterpretq_p8_s16,
vreinterpretq_p8_s32, vreinterpretq_p8_u8, vreinterpretq_p8_u16,
vreinterpretq_p8_u32, vreinterpretq_p16_p8, vreinterpretq_p16_f32,
vreinterpretq_p16_p64, vreinterpretq_p16_p128, vreinterpretq_p16_s64,
vreinterpretq_p16_u64, vreinterpretq_p16_s8, vreinterpretq_p16_s16,
vreinterpretq_p16_s32, vreinterpretq_p16_u8, vreinterpretq_p16_u16,
vreinterpretq_p16_u32, vreinterpretq_f32_p8, vreinterpretq_f32_p16,
vreinterpretq_f32_p64, vreinterpretq_f32_p128, vreinterpretq_f32_s64,
vreinterpretq_f32_u64, vreinterpretq_f32_s8, vreinterpretq_f32_s16,
vreinterpretq_f32_s32, vreinterpretq_f32_u8, vreinterpretq_f32_u16,
vreinterpretq_f32_u32, vreinterpretq_p64_p8, vreinterpretq_p64_p16,
vreinterpretq_p64_f32, vreinterpretq_p64_p128, vreinterpretq_p64_s64,
vreinterpretq_p64_u64, vreinterpretq_p64_s8, vreinterpretq_p64_s16,
vreinterpretq_p64_s32, vreinterpretq_p64_u8, vreinterpretq_p64_u16,
vreinterpretq_p64_u32, vreinterpretq_p128_p8, vreinterpretq_p128_p16,
vreinterpretq_p128_f32, vreinterpretq_p128_p64, vreinterpretq_p128_s64,
vreinterpretq_p128_u64, vreinterpretq_p128_s8, vreinterpretq_p128_s16,
vreinterpretq_p128_s32, vreinterpretq_p128_u8, vreinterpretq_p128_u16,
vreinterpretq_p128_u32, vreinterpretq_s64_p8, vreinterpretq_s64_p16,
vreinterpretq_s64_f32, vreinterpretq_s64_p64, vreinterpretq_s64_p128,
vreinterpretq_s64_u64, vreinterpretq_s64_s8, vreinterpretq_s64_s16,
vreinterpretq_s64_s32, vreinterpretq_s64_u8, vreinterpretq_s64_u16,
vreinterpretq_s64_u32, vreinterpretq_u64_p8, vreinterpretq_u64_p16,
vreinterpretq_u64_f32, vreinterpretq_u64_p64, vreinterpretq_u64_p128,
vreinterpretq_u64_s64, vreinterpretq_u64_s8, vreinterpretq_u64_s16,
vreinterpretq_u64_s32, vreinterpretq_u64_u8, vreinterpretq_u64_u16,
vreinterpretq_u64_u32, vreinterpretq_s8_p8, vreinterpretq_s8_p16,
vreinterpretq_s8_f32, vreinterpretq_s8_p64, vreinterpretq_s8_p128,
vreinterpretq_s8_s64, vreinterpretq_s8_u64, vreinterpretq_s8_s16,
vreinterpretq_s8_s32, vreinterpretq_s8_u8, vreinterpretq_s8_u16,
vreinterpretq_s8_u32, vreinterpretq_s16_p8, vreinterpretq_s16_p16,
vreinterpretq_s16_f32, vreinterpretq_s16_p64, vreinterpretq_s16_p128,
vreinterpretq_s16_s64, vreinterpretq_s16_u64, vreinterpretq_s16_s8,
vreinterpretq_s16_s32, vreinterpretq_s16_u8, vreinterpretq_s16_u16,
vreinterpretq_s16_u32, vreinterpretq_s32_p8, vreinterpretq_s32_p16,
vreinterpretq_s32_f16, vreinterpretq_s32_f32, vreinterpretq_s32_p64,
vreinterpretq_s32_p128, vreinterpretq_s32_s64, vreinterpretq_s32_u64,
vreinterpretq_s32_s8, vreinterpretq_s32_s16, vreinterpretq_s32_u8,
vreinterpretq_s32_u16, vreinterpretq_s32_u32, vreinterpretq_u8_p8,
vreinterpretq_u8_p16, vreinterpretq_u8_f32, vreinterpretq_u8_p64,
vreinterpretq_u8_p128, vreinterpretq_u8_s64, vreinterpretq_u8_u64,
vreinterpretq_u8_s8, vreinterpretq_u8_s16, vreinterpretq_u8_s32,
vreinterpretq_u8_u16, vreinterpretq_u8_u32, vreinterpretq_u16_p8,
vreinterpretq_u16_p16, vreinterpretq_u16_f32, vreinterpretq_u16_p64,
vreinterpretq_u16_p128, vreinterpretq_u16_s64, vreinterpretq_u16_u64,
vreinterpretq_u16_s8, vreinterpretq_u16_s16, vreinterpretq_u16_s32,
vreinterpretq_u16_u8, vreinterpretq_u16_u32, vreinterpretq_u32_p8,
vreinterpretq_u32_p16, vreinterpretq_u32_f32, vreinterpretq_u32_p64,
vreinterpretq_u32_p128, vreinterpretq_u32_s64, vreinterpretq_u32_u64,
vreinterpretq_u32_s8, vreinterpretq_u32_s16, vreinterpretq_u32_s32,
vreinterpretq_u32_u8, vreinterpretq_u32_u16): Rewrite using casts.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233142 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoUpdate gcc .po files.
jsm28 [Thu, 4 Feb 2016 14:17:21 +0000 (14:17 +0000)]
Update gcc .po files.

* be.po, da.po, de.po, el.po, es.po, fi.po, fr.po, hr.po, id.po,
ja.po, nl.po, ru.po, sr.po, sv.po, tr.po, uk.po, vi.po, zh_CN.po,
zh_TW.po: Update.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233141 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoUpdate cpplib .po files.
jsm28 [Thu, 4 Feb 2016 14:15:08 +0000 (14:15 +0000)]
Update cpplib .po files.

* be.po, ca.po, da.po, de.po, el.po, eo.po, es.po, fi.po, fr.po,
id.po, ja.po, nl.po, pr_BR.po, ru.po, sr.po, sv.po, tr.po, uk.po,
vi.po, zh_CN.po, zh_TW.po: Update.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233140 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoFix PR sanitizer/69276
marxin [Thu, 4 Feb 2016 11:50:40 +0000 (11:50 +0000)]
Fix PR sanitizer/69276

* g++.dg/asan/pr69276.C: New test.
PR sanitizer/PR69276
* asan.c (has_stmt_been_instrumented_p): Instrument gimple calls
that are gimple_store_p.
(maybe_instrument_call): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233137 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * config/aarch64/aarch64.c (aarch64_legitimize_address): Force
amker [Thu, 4 Feb 2016 11:05:46 +0000 (11:05 +0000)]
* config/aarch64/aarch64.c (aarch64_legitimize_address): Force
register scaling out of memory reference and comment why.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233136 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * class.c (find_flexarrays): Don't declare dom variable.
jakub [Thu, 4 Feb 2016 11:04:07 +0000 (11:04 +0000)]
* class.c (find_flexarrays): Don't declare dom variable.
(diagnose_flexarray): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233135 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago[ARM][4/4] Adjust gcc.target/arm/wmul-[123].c tests
ktkachov [Thu, 4 Feb 2016 09:57:36 +0000 (09:57 +0000)]
[ARM][4/4] Adjust gcc.target/arm/wmul-[123].c tests

PR target/65932
PR target/67714
* gcc.target/arm/wmul-3.c: Simplify test to generate just
a single smulbb instruction.
* gcc.target/amr/wmul-1.c: Add -mtune=cortex-a9 to dg-options.
* gcc.target/amr/wmul-2.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233134 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago[cse][3/4] Don't overwrite original rtx when folding source of set
ktkachov [Thu, 4 Feb 2016 09:56:13 +0000 (09:56 +0000)]
[cse][3/4] Don't overwrite original rtx when folding source of set

PR target/65932
PR target/67714
* cse.c (cse_insn): Pass NULL to fold_rtx when initially
folding the source of a SET.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233133 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago[ARM][2/4] Fix operand costing logic for SMUL[TB][TB]
ktkachov [Thu, 4 Feb 2016 09:54:37 +0000 (09:54 +0000)]
[ARM][2/4] Fix operand costing logic for SMUL[TB][TB]

PR target/65932
PR target/67714
* config/arm/arm.c (arm_new_rtx_costs, MULT case): Properly extract
the operands of the SIGN_EXTENDs from a SMUL[TB][TB] rtx.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233132 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago[ARM][1/4] PR target/65932: Add testcase
ktkachov [Thu, 4 Feb 2016 09:51:35 +0000 (09:51 +0000)]
[ARM][1/4] PR target/65932: Add testcase

PR target/65932
PR target/67714
* gcc.c-torture/execute/pr67714.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233131 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago[ARM] PR target/65932: stop changing signedness in PROMOTE_MODE
ktkachov [Thu, 4 Feb 2016 09:50:12 +0000 (09:50 +0000)]
[ARM] PR target/65932: stop changing signedness in PROMOTE_MODE

2016-02-04  Jim Wilson  <jim.wilson@linaro.org>

PR target/65932
PR target/67714
* config/arm/arm.h (PROMOTE_MODE): Don't set UNSIGNEDP for QImode and
HImode.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233130 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2016-02-04 Christian Bruel <christian.bruel@st.com>
chrbr [Thu, 4 Feb 2016 09:06:32 +0000 (09:06 +0000)]
2016-02-04  Christian Bruel  <christian.bruel@st.com>

* config/arm/arm-c.c (arm_reset_previous_fndecl): Style fix and typo.
* config/arm/arm.c (arm_set_current_function): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233129 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR target/69454
jakub [Thu, 4 Feb 2016 09:02:01 +0000 (09:02 +0000)]
PR target/69454
* config/i386/i386.c (convert_scalars_to_vector): Remove
stack alignment fixes.
(ix86_option_override_internal): Disable TARGET_STV if stack
might not be aligned enough.
(ix86_minimum_alignment): Assert that TARGET_STV is false.

* gcc.target/i386/pr69454-1.c: New test.
* gcc.target/i386/pr69454-2.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233128 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoDisable auto prefetcher for -march=znver1.
vekumar [Thu, 4 Feb 2016 07:52:08 +0000 (07:52 +0000)]
Disable auto prefetcher for -march=znver1.

2016-02-04  Victoria Stepanyan  <victoria.stepanyan@amd.com>

        * gcc/config/i386/x86-tune.def: Disable default prefetching
        for -march=znver1.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233127 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoPR c++/69251 - [6 Regression] ICE in unify_array_domain on a flexible array
msebor [Thu, 4 Feb 2016 04:50:42 +0000 (04:50 +0000)]
PR c++/69251 - [6 Regression] ICE in unify_array_domain on a flexible array
               member
PR c++/69253 - [6 Regression] ICE in cxx_incomplete_type_diagnostic initializing
               a flexible array member with empty string
PR c++/69290 - [6 Regression] ICE on invalid initialization of a flexible array
               member
PR c++/69277 - [6 Regression] ICE mangling a flexible array member
PR c++/69349 - template substitution error for flexible array members

gcc/testsuite/ChangeLog:
2016-02-03  Martin Sebor  <msebor@redhat.com>

PR c++/69251
PR c++/69253
PR c++/69290
PR c++/69277
PR c++/69349
* g++.dg/ext/flexarray-mangle-2.C: New test.
* g++.dg/ext/flexarray-mangle.C: New test.
* g++.dg/ext/flexarray-subst.C: New test.
* g++.dg/ext/flexary11.C: New test.
* g++.dg/ext/flexary12.C: New test.
* g++.dg/ext/flexary13.C: New test.
* g++.dg/ext/flexary14.C: New test.
* g++.dg/other/dump-ada-spec-2.C: Adjust.

gcc/cp/ChangeLog:
2016-02-03  Martain Sebor  <msebor@redhat.com>

PR c++/69251
PR c++/69253
PR c++/69290
PR c++/69277
PR c++/69349
* class.c (walk_subobject_offsets): Avoid testing the upper bound
of a flexible array member for equality to null.
(find_flexarrays): Remove spurious whitespace introduced in r231665.
(diagnose_flexarrays): Avoid checking the upper bound of arrays.
(check_flexarrays): Same.
* decl.c (compute_array_index_type): Avoid special case for flexible
array members.
(grokdeclarator): Avoid calling compute_array_index_type for flexible
array members.
* error.c (dump_type_suffix): Revert changes introduced in r231665
and rendered unnecessary by the changes above.
* pt.c (tsubst):  Same.
* tree.c (build_ctor_subob_ref): Handle flexible array members.
* typeck2.c (digest_init_r): Revert changes introduced in r231665.
(process_init_constructor_array): Same.
(process_init_constructor_record): Same.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233126 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoDefine check_union_passing6 only for CHECK_FLOAT128
hjl [Thu, 4 Feb 2016 01:46:17 +0000 (01:46 +0000)]
Define check_union_passing6 only for CHECK_FLOAT128

* gcc.target/i386/iamcu/test_passing_unions.c (check_union_passing6):
Define only if CHECK_FLOAT128 is defined.
(main): Properly initialize u5.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233124 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2016-02-03 Michael Meissner <meissner@linux.vnet.ibm.com>
meissner [Thu, 4 Feb 2016 00:39:34 +0000 (00:39 +0000)]
2016-02-03  Michael Meissner  <meissner@linux.vnet.ibm.com>
    Vladimir Makarov  <vmakarov@redhat.com>

PR target/69461
* config/rs6000/rs6000.c (rs6000_legitimate_address_p): Fix thinko
in validating fused toc addresses.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233120 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoDaily bump.
gccadmin [Thu, 4 Feb 2016 00:16:12 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233119 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR c/69627
jakub [Wed, 3 Feb 2016 22:40:22 +0000 (22:40 +0000)]
PR c/69627
* diagnostic-show-locus.c (layout::get_state_at_point): Don't read
range->m_caret fields if range->m_show_caret_p is false.

* gcc.dg/pr69627.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233114 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR target/69644
jakub [Wed, 3 Feb 2016 22:38:56 +0000 (22:38 +0000)]
PR target/69644
* config/rs6000/rs6000.c (rs6000_expand_atomic_compare_and_swap):
Force oldval into register if it does not satisfy reg_or_short_operand
predicate.  Fix up formatting.

* gcc.dg/pr69644.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233113 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * lib/compat.exp (compat-get-options-main): Add dg-timeout-factor
mrs [Wed, 3 Feb 2016 22:23:57 +0000 (22:23 +0000)]
* lib/compat.exp (compat-get-options-main): Add dg-timeout-factor
support for struct-layout-1.exp.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233112 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2016-02-03 Andreas Tobler <andreast@gcc.gnu.org>
andreast [Wed, 3 Feb 2016 22:15:21 +0000 (22:15 +0000)]
2016-02-03  Andreas Tobler  <andreast@gcc.gnu.org>

    PR bootstrap/69611
    * config/rs6000/sfp-machine.h: Guard __sfp_exceptions with
    __FLOAT128__ to compile only for __float128 capable targets.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233111 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago libgo: Update to go1.6rc1.
ian [Wed, 3 Feb 2016 21:58:02 +0000 (21:58 +0000)]
libgo: Update to go1.6rc1.

    Reviewed-on: https://go-review.googlesource.com/19200

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233110 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoAdd the new IA MCU test
hjl [Wed, 3 Feb 2016 20:17:24 +0000 (20:17 +0000)]
Add the new IA MCU test

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233109 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoFix PR c++/69056 (argument pack deduction failure during overload resolution)
ppalka [Wed, 3 Feb 2016 20:14:43 +0000 (20:14 +0000)]
Fix PR c++/69056 (argument pack deduction failure during overload resolution)

gcc/cp/ChangeLog:

PR c++/69056
* pt.c (try_one_overload): Handle comparing argument packs so
that there is no conflict if we deduced more arguments of an
argument pack than were explicitly specified.

gcc/testsuite/ChangeLog:

PR c++/69056
g++.dg/cpp0x/pr69056.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233108 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago2016-02-03 Vladimir Makarov <vmakarov@redhat.com>
vmakarov [Wed, 3 Feb 2016 17:58:34 +0000 (17:58 +0000)]
2016-02-03  Vladimir Makarov  <vmakarov@redhat.com>
    Alexandre Oliva  <aoliva@redhat.com>

PR target/69461
* lra-constraints.c (simplify_operand_subreg): Check additionally
address validity after potential reloading.
(process_address_1): Check insns validity.  In case of failure do
nothing.

2016-02-03  Vladimir Makarov  <vmakarov@redhat.com>
    Alexandre Oliva  <aoliva@redhat.com>

PR target/69461
* gcc.target/powerpc/pr69461.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233107 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * lib/tsan-dg.exp (tsan_init): Move check if tsan executable
uros [Wed, 3 Feb 2016 17:01:01 +0000 (17:01 +0000)]
* lib/tsan-dg.exp (tsan_init): Move check if tsan executable
works from here ...
(check_effective_target_fsanitize_thread): ... to here.  Do not
specify additional compile flags for the test source.
* lib/asan-dg.exp (check_effective_target_fsanitize_address): Do not
specify additional compile flags for the test source.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233106 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoPR target/69118
kyukhin [Wed, 3 Feb 2016 13:44:50 +0000 (13:44 +0000)]
PR target/69118

gcc/
* config/i386/sse.md (define_insn "avx512f_maskcmp<mode>3"):
Fix target.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233103 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoFix the ccmp_1.c test back to use '0' as regular expressions don't work
wilco [Wed, 3 Feb 2016 12:18:19 +0000 (12:18 +0000)]
Fix the ccmp_1.c test back to use '0' as regular expressions don't work
correctly. '0' is right due to compare with zero now printing as
'CMP w0, 0' rather than 'CMP w0, wzr'.

2016-02-03  Wilco Dijkstra  <wdijkstr@arm.com>

gcc/testsuite/
* gcc.target/aarch64/ccmp_1.c: Fix test issue.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233102 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agogcc/testsuite/ChangeLog:
vehre [Wed, 3 Feb 2016 10:39:09 +0000 (10:39 +0000)]
gcc/testsuite/ChangeLog:

2016-02-03  Andre Vehreschild  <vehre@gcc.gnu.org>

PR fortran/67451
PR fortran/69418
* gfortran.dg/coarray_allocate_2.f08: New test.
* gfortran.dg/coarray_allocate_3.f08: New test.
* gfortran.dg/coarray_allocate_4.f08: New test.

gcc/fortran/ChangeLog:

2016-02-03  Andre Vehreschild  <vehre@gcc.gnu.org>

PR fortran/67451
PR fortran/69418
* trans-expr.c (gfc_copy_class_to_class): For coarrays just the
pointer is passed.  Take it as is without trying to deref the
_data component.
* trans-stmt.c (gfc_trans_allocate): Take care of coarrays as
argument to source=-expression.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233101 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago[Testsuite] Fix scan-tree-dump failures with vect_multiple_sizes
alalaw01 [Wed, 3 Feb 2016 10:33:03 +0000 (10:33 +0000)]
[Testsuite] Fix scan-tree-dump failures with vect_multiple_sizes

* gcc.dg/vect/vect-outer-1-big-array.c: Drop vect_multiple_sizes;
use same scan-tree-dump-times on all platforms.
* gcc.dg/vect/vect-outer-1.c: Likewise.
* gcc.dg/vect/vect-outer-1a-big-array.c: Likewise.
* gcc.dg/vect/vect-outer-1a.c: Likewise.
* gcc.dg/vect/vect-outer-1b-big-array.c: Likewise.
* gcc.dg/vect/vect-outer-1b.c: Likewise.
* gcc.dg/vect/vect-outer-2b.c: Likewise.
* gcc.dg/vect/vect-outer-3b.c: Likewise.
* gcc.dg/vect/vect-reduc-dot-s8b.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233100 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago compiler, runtime: mark stub methods, ignore them in runtime.Caller.
ian [Wed, 3 Feb 2016 06:54:41 +0000 (06:54 +0000)]
compiler, runtime: mark stub methods, ignore them in runtime.Caller.

    This fixes the long-standing bug in which the testing package misreports
    the file/line of an error.

    Reviewed-on: https://go-review.googlesource.com/19179

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233098 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago compiler: Unpack method names when sorting them.
ian [Wed, 3 Feb 2016 05:27:16 +0000 (05:27 +0000)]
compiler: Unpack method names when sorting them.

    Reviewed-on: https://go-review.googlesource.com/19177

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233097 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoDaily bump.
gccadmin [Wed, 3 Feb 2016 00:16:12 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233096 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agovector-compare-4.c
segher [Tue, 2 Feb 2016 20:38:06 +0000 (20:38 +0000)]
vector-compare-4.c

This testcase fails on 32-bit powerpc-linux with

Excess errors:
/home/segher/src/gcc/gcc/testsuite/c-c++-common/vector-compare-4.c:31:1: warning: GCC vector returned by reference: non-standard ABI extension with no compatibility guarantee

Fix this as in vector-compare-2.c .

testsuite/
* c-c++-common/vector-compare-4.c: Prune "non-standard ABI extension"
warning.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233093 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * wide-int.cc (canonize_uhwi): New function.
jakub [Tue, 2 Feb 2016 19:44:16 +0000 (19:44 +0000)]
* wide-int.cc (canonize_uhwi): New function.
(wi::divmod_internal): Use it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233092 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoAdd IA MCU tests for passing/returning of empty structures/unions
hjl [Tue, 2 Feb 2016 19:22:04 +0000 (19:22 +0000)]
Add IA MCU tests for passing/returning of empty structures/unions

* gcc.target/i386/iamcu/test_empty_structs_and_unions.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233090 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago gcc/
jnorris [Tue, 2 Feb 2016 19:17:37 +0000 (19:17 +0000)]
gcc/
* gimplify.c (omp_notice_variable): Add usage check.

gcc/testsuite/
* c-c++-common/goacc/routine-5.c: Add tests.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233089 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agonvptx: do not use alternative spelling of unsigned comparisons
amonakov [Tue, 2 Feb 2016 18:24:25 +0000 (18:24 +0000)]
nvptx: do not use alternative spelling of unsigned comparisons

gcc/ChangeLog:
* config/nvptx/nvptx.c (nvptx_print_operand): Treat LEU, GEU, LTU, GTU
        like LE, GE, LT, GT when emitting relational operator.

gcc/testsuite/ChangeLog:
* gcc.target/nvptx/unsigned-cmp.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233088 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agolibgomp: fix target-31.c testcase
amonakov [Tue, 2 Feb 2016 18:18:43 +0000 (18:18 +0000)]
libgomp: fix target-31.c testcase

* testsuite/libgomp.c/target-31.c: Fix testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233087 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agolibgomp: fix teams-3/4 testcases
amonakov [Tue, 2 Feb 2016 18:15:58 +0000 (18:15 +0000)]
libgomp: fix teams-3/4 testcases

* testsuite/libgomp.c/examples-4/teams-3.c: Add missing reduction
clause.
* testsuite/libgomp.c/examples-4/teams-4.c: Likewise.
* testsuite/libgomp.fortran/examples-4/teams-3.f90: Add missing
reduction and map clauses.
* testsuite/libgomp.fortran/examples-4/teams-4.f90: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233086 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoImprove TARGET_IRA_CHANGE_PSEUDO_ALLOCNO_CLASS target hook. It turns out there
wilco [Tue, 2 Feb 2016 17:12:56 +0000 (17:12 +0000)]
Improve TARGET_IRA_CHANGE_PSEUDO_ALLOCNO_CLASS target hook.  It turns out there
is another case where the register allocator uses the union of register classes
without checking that the cost of the resulting register class is lower than
both (see https://gcc.gnu.org/ml/gcc-patches/2015-12/msg01765.html ).  This
happens when the cost of the best and alternative class are both lower than the
memory cost.  In this case we typically end up with ALL_REGS as the allocno
class, which almost invariably results in bad allocations with many redundant
int<->FP moves (which are expensive on various cores).  AArch64 is affected by
this significantly due to supporting many scalar integer operations in SIMD.

Currently the TARGET_IRA_CHANGE_PSEUDO_ALLOCNO_CLASS hook forces the class to
GENERAL_REGS if the allocno class is ALL_REGS and the register has an integer
mode.  This is bad if the best class happens to be FP_REGS.  To handle this
case as well, an extra argument is needed in the hook to pass the best class.
If the allocno class is ALL_REGS, but the best class isn't, we use the best
class instead (rather than using the mode to force to GENERAL_REGS or FP_REGS).

Previously this might happen:

r79: preferred FP_REGS, alternative GENERAL_REGS, allocno GENERAL_REGS
     a1 (r79,l0) best GENERAL_REGS, allocno GENERAL_REGS

a1(r79,l0) costs: CALLER_SAVE_REGS:5000,5000 GENERAL_REGS:5000,5000
                  FP_LO_REGS:0,0 FP_REGS:0,0 ALL_REGS:10000,10000 MEM:9000,9000

The proposed allocno is ALL_REGS (despite having the highest cost!) and is then
forced by the hook to GENERAL_REGS because r79 has integer mode.  However
FP_REGS has the lowest cost.  After this patch the choice is as follows:

r79: preferred FP_REGS, alternative GENERAL_REGS, allocno FP_REGS
     a1 (r79,l0) best FP_REGS, allocno FP_REGS

As a result it is now no longer a requirement to use register move costs that
are larger than the memory move cost.  So it will be feasible to use realistic
costs for both without a huge penalty.

2016-02-02  Wilco Dijkstra  <wdijkstr@arm.com>

    gcc/
        * ira-costs.c (find_costs_and_classes): Add extra argument.
        * target.def (ira_change_pseudo_allocno_class): Add parameter.
        * targhooks.h (ira_change_pseudo_allocno_class): Likewise.
        * targhooks.c (ira_change_pseudo_allocno_class): Likewise.
        * config/aarch64/aarch64.c (aarch64_ira_change_pseudo_allocno_class)
        Add best_class parameter, and return it if not ALL_REGS.
        * config/mips/mips.c (mips_ira_change_pseudo_allocno_class):
        Add parameter.
        * doc/tm.texi (TARGET_IRA_CHANGE_PSEUDO_ALLOCNO_CLASS):
        Update target hook.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233084 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoThis patch adds support for the TARGET_IRA_CHANGE_PSEUDO_ALLOCNO_CLASS hook.
wilco [Tue, 2 Feb 2016 17:03:05 +0000 (17:03 +0000)]
This patch adds support for the TARGET_IRA_CHANGE_PSEUDO_ALLOCNO_CLASS hook.
When the cost of GENERAL_REGS and FP_REGS is identical, the register allocator
always uses ALL_REGS even when it has a much higher cost. The hook changes the
class to either FP_REGS or GENERAL_REGS depending on the mode of the register.
This results in better register allocation overall, fewer spills and reduced
codesize - particularly in SPEC2006 gamess.

2016-02-02  Wilco Dijkstra  <wdijkstr@arm.com>

    gcc/
* config/aarch64/aarch64.c
(TARGET_IRA_CHANGE_PSEUDO_ALLOCNO_CLASS): New define.
(aarch64_ira_change_pseudo_allocno_class): New function.

    gcc/testsuite/
* gcc.target/aarch64/scalar_shift_1.c
(test_corners_sisd_di): Improve force to SIMD register.
(test_corners_sisd_si): Likewise.
* gcc.target/aarch64/vect-ld1r-compile-fp.c:
Remove scan-assembler check for ldr.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233083 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * testsuite/libgomp.oacc-c-c++-common/declare-4.c: Fix clause.
jnorris [Tue, 2 Feb 2016 16:22:26 +0000 (16:22 +0000)]
* testsuite/libgomp.oacc-c-c++-common/declare-4.c: Fix clause.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233082 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago PR target/67032
uros [Tue, 2 Feb 2016 16:07:24 +0000 (16:07 +0000)]
PR target/67032
* config/i386/i386.c (geode_cost): Increase cost of MMX and SSE moves.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233079 138bc75d-0d04-0410-961f-82ee72b054a4

8 years ago * config/avr/avr.c (avr_option_override): Set
denisc [Tue, 2 Feb 2016 16:01:45 +0000 (16:01 +0000)]
* config/avr/avr.c (avr_option_override): Set
PARAM_ALLOW_STORE_DATA_RACES to 1.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233078 138bc75d-0d04-0410-961f-82ee72b054a4

8 years agoMAINTAINERS (Write After Approval): Add myself
claziss [Tue, 2 Feb 2016 15:24:22 +0000 (15:24 +0000)]
MAINTAINERS (Write After Approval): Add myself

2016-02-02  Claudiu Zissulescu  <claziss@synopsys.com>

* MAINTAINERS (Write After Approval): Add myself.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233077 138bc75d-0d04-0410-961f-82ee72b054a4