platform/upstream/gcc.git
9 years agoAVX-512. Add widening pmov.
Alexander Ivchenko [Wed, 24 Sep 2014 08:00:35 +0000 (08:00 +0000)]
AVX-512. Add widening pmov.

gcc/
* config/i386/sse.md
(define_insn "avx2_<code>v16qiv16hi2<mask_name>"): Add masking.
(define_insn "avx512bw_<code>v32qiv32hi2<mask_name>"): New.
(define_insn "sse4_1_<code>v8qiv8hi2<mask_name>"): Add masking.
(define_insn "avx2_<code>v8qiv8si2<mask_name>"): Ditto.
(define_insn "sse4_1_<code>v4qiv4si2<mask_name>"): Ditto.
(define_insn "avx2_<code>v8hiv8si2<mask_name>"): Ditto.
(define_insn "sse4_1_<code>v4hiv4si2<mask_name>"): Ditto.
(define_insn "avx2_<code>v4qiv4di2<mask_name>"): Ditto.
(define_insn "sse4_1_<code>v2qiv2di2<mask_name>"): Ditto.
(define_insn "avx2_<code>v4hiv4di2<mask_name>"): Ditto.
(define_insn "sse4_1_<code>v2hiv2di2<mask_name>"): Ditto.
(define_insn "avx2_<code>v4siv4di2<mask_name>"): Ditto.
(define_insn "sse4_1_<code>v2siv2di2<mask_name>"): Ditto.

Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
From-SVN: r215541

9 years agore PR rtl-optimization/63210 (ira does not select the best register compared with...
Zhenqiang Chen [Wed, 24 Sep 2014 07:00:55 +0000 (07:00 +0000)]
re PR rtl-optimization/63210 (ira does not select the best register compared with gcc 4.8 for ARM THUMB1)

ChangeLog:
2014-09-24  Zhenqiang Chen  <zhenqiang.chen@arm.com>

PR rtl-optimization/63210
* ira-color.c (assign_hard_reg): Ignore conflict cost if the
HARD_REGNO is not availabe for CONFLICT_A.

testsuite/ChangeLog:
2014-09-24  Zhenqiang Chen  <zhenqiang.chen@arm.com>

* gcc.target/arm/pr63210.c: New test.

From-SVN: r215540

9 years agoAdd test cases for noreorder
Andi Kleen [Wed, 24 Sep 2014 03:29:37 +0000 (03:29 +0000)]
Add test cases for noreorder

Add some simple test cases for noreorder behaving like
-fno-toplevel-reorder and -fno-toplevel-reorder still working.

gcc/testsuite/:

2014-09-23  Andi Kleen  <ak@linux.intel.com>

* gcc.dg/noreorder.c: New test.
* gcc.dg/noreorder2.c: New test.
* gcc.dg/noreorder3.c: New test.
* gcc.dg/noreorder4.c: New test.

From-SVN: r215538

9 years agoAdd an no_reorder attribute for LTO
Andi Kleen [Wed, 24 Sep 2014 03:29:24 +0000 (03:29 +0000)]
Add an no_reorder attribute for LTO

Some projects need to prevent reordering of specific top level
declarations with LTO, in particular declarations defining init calls.

The only way to do that with LTO was to use -fno-toplevel-reorder,
which stops reordering for all declarations and makes LTO partitioning
less efficient.

This patch adds a new no_reorder attribute that stops reordering only
for the marked declaration. The program can then only mark e.g. the
initcalls and leave all the other declarations alone.

The patch does:

- Adds the new no_reorder attribute for the C family.
- Initializes a new no_reorder flag in the symtab_nodes in the
function visibility flag.
- Maintains the no_reorder flag when creating new nodes.
- Changes the partition code to always keep a separate
sorted queue of ordered nodes and flush them in order with the other
nodes. This is used by all nodes with -fno-toplevel-reorder,
and only the marked ones without it.
Parts of the old -fno-toplevel-reorder code paths are reused.
- Adds various checks throughout the tree to make no_reorder
marked functions behave the same as with -fno-toplevel-reorder
- Changes the LTO streamer to serialize the no_reorder attribute.

gcc/c-family/:

2014-09-23  Andi Kleen  <ak@linux.intel.com>

* c-common.c (handle_no_reorder_attribute): New function.
(c_common_attribute_table): Add no_reorder attribute.

gcc/:

2014-09-23  Andi Kleen  <ak@linux.intel.com>

* cgraph.h (symtab_node): Add no_reorder attribute.
(symbol_table::output_asm_statements): Remove.
* cgraphclones.c (cgraph_node::create_clone): Copy no_reorder.
(cgraph_node::create_version_clone): Dito.
(symbol_table::output_asm_statements): Remove.
* trans-mem.c (ipa_tm_create_version_alias): Dito.
* cgraphunit.c (varpool_node::finalize_decl): Check no_reorder.
(output_in_order): Add no_reorder flag. Only handle no_reorder
nodes when set.
(symbol_table::compile): Add separate pass for no_reorder nodes.
(process_common_attributes): Set no_reorder flag in symtab node.
Add node argument.
(process_function_and_variable_attributes): Pass symtab nodes to
process_common_attributes.
* doc/extend.texi (no_reorder): Document no_reorder attribute.
* lto-cgraph.c (lto_output_node): Serialize no_reorder.
(lto_output_varpool_node): Dito.
(input_overwrite_node): Dito.
(input_varpool_node): Dito.
* varpool.c (varpool_node::add): Set no_reorder attribute.
(symbol_table::remove_unreferenced_decls): Handle no_reorder.
(symbol_table::output_variables): Dito.
* symtab.c (symtab_node::dump_base): Print no_reorder.

gcc/lto/:

2014-09-23  Andi Kleen  <ak@linux.intel.com>

* lto-partition.c (node_cmp): Update comment.
(varpool_node_cmp): Use symtab_node for comparison.
(add_sorted_nodes): New function.
(lto_balanced_map): Change to keep ordered queue
of ordered node. Handle no_reorder attribute.

From-SVN: r215537

9 years agoDaily bump.
GCC Administrator [Wed, 24 Sep 2014 00:16:50 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r215536

9 years agoFix compile time warning caused by PIC_OFFSET_TABLE_REGNUM be INVALID_REGNUM
Jiong Wang [Tue, 23 Sep 2014 21:19:28 +0000 (21:19 +0000)]
Fix compile time warning caused by PIC_OFFSET_TABLE_REGNUM be INVALID_REGNUM

2014-09-23  Jiong Wang  <jiong.wang@arm.com>

gcc/
  * shrink-wrap.c (try_shrink_wrapping): Check PIC_OFFSET_TABLE_REGNUM not
    be INVALID_REGNUM.

From-SVN: r215533

9 years agoProperly regenerate gcc/configure.
Thomas Schwinge [Tue, 23 Sep 2014 21:15:36 +0000 (23:15 +0200)]
Properly regenerate gcc/configure.

gcc/
* configure: Regenerate.

From-SVN: r215532

9 years agoRelax check against commuting XOR and ASHIFTRT in combine.c
Alan Lawrence [Tue, 23 Sep 2014 18:48:50 +0000 (18:48 +0000)]
Relax check against commuting XOR and ASHIFTRT in combine.c

gcc/:
* combine.c (simplify_shift_const_1): Allow commuting (ashiftrt (xor))
when result_mode == shift_mode.

gcc/testsuite/:
* gcc.dg/combine_ashiftrt_1.c: New test.
* gcc.dg/combine_ashiftrt_2.c: Likewise.
* gcc.target/aarch64/singleton_intrinsics_1.c: Remove scan-assembler
workarounds for cmge.
* gcc.target/aarch64/simd/int_comparisons_1.c: Likewise; also check for
absence of mvn.

From-SVN: r215531

9 years agodemangle.h (DMGL_DLANG): New macro.
Iain Buclaw [Tue, 23 Sep 2014 18:36:14 +0000 (18:36 +0000)]
demangle.h (DMGL_DLANG): New macro.

include/:
* demangle.h (DMGL_DLANG): New macro.
(DMGL_STYLE_MASK): Add DMGL_DLANG.
(demangling_styles): Add dlang_demangling.
(DLANG_DEMANGLING_STYLE_STRING): New macro.
(DLANG_DEMANGLING): New macro.
(dlang_demangle): New prototype.
libiberty/:
* Makefile.in (CFILES): Add d-demangle.c.
(REQUIRED_OFILES): Add d-demangle.o.
* cplus-dem.c (libiberty_demanglers): Add dlang_demangling case.
(cplus_demangle): Likewise.
* d-demangle.c: New file.
* testsuite/Makefile.in (really-check): Add check-d-demangle.
* testsuite/d-demangle-expected: New file.

From-SVN: r215530

9 years agore PR c++/61857 (An init-capturing lambda is parsed incorrectly when used in a braced...
Paolo Carlini [Tue, 23 Sep 2014 18:07:59 +0000 (18:07 +0000)]
re PR c++/61857 (An init-capturing lambda is parsed incorrectly when used in a braced-init-list)

/cp
2014-09-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/61857
* parser.c (cp_parser_skip_to_closing_square_bracket,
cp_parser_array_designator_p): New.
(cp_parser_initializer_list): Use the latter.

/testsuite
2014-09-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/61857
* g++.dg/cpp1y/lambda-init10.C: New.

From-SVN: r215528

9 years ago[libsanitizer merge from upstream r218156]
Kostya Serebryany [Tue, 23 Sep 2014 17:59:53 +0000 (17:59 +0000)]
[libsanitizer merge from upstream r218156]

From-SVN: r215527

9 years agors6000.md (f32_vsx): New mode attributes to refine the constraints used on 32/64...
Michael Meissner [Tue, 23 Sep 2014 17:11:07 +0000 (17:11 +0000)]
rs6000.md (f32_vsx): New mode attributes to refine the constraints used on 32/64-bit floating point...

2014-09-23  Michael Meissner  <meissner@linux.vnet.ibm.com>

* config/rs6000/rs6000.md (f32_vsx): New mode attributes to
refine the constraints used on 32/64-bit floating point moves.
(f32_av): Likewise.
(f64_vsx): Likewise.
(f64_dm): Likewise.
(f64_av): Likewise.
(BOOL_REGS_OUTPUT): Use wt constraint for TImode instead of wa.
(BOOL_REGS_OP1): Likewise.
(BOOL_REGS_OP2): Likewise.
(BOOL_REGS_UNARY): Likewise.
(mov<mode>_hardfloat, SFmode/SDmode): Tighten down constraints for
32/64-bit floating point moves.  Do not use wa, instead use ww/ws
for moves involving VSX registers.  Do not use constraints that
target VSX registers for decimal types.
(mov<mode>_hardfloat32, DFmode/DDmode): Likewise.
(mov<mode>_hardfloat64, DFmode/DDmode): Likewise.

From-SVN: r215521

9 years agotree.h (int_bit_position): Turn into inline function; implement using wide int.
Jan Hubicka [Tue, 23 Sep 2014 16:08:16 +0000 (18:08 +0200)]
tree.h (int_bit_position): Turn into inline function; implement using wide int.

* tree.h (int_bit_position): Turn into inline function;
implement using wide int.
* tree.c (int_bit_position): Remove.

From-SVN: r215518

9 years agore PR fortran/63331 (Fortran -fcompare-debug issues)
Jakub Jelinek [Tue, 23 Sep 2014 15:25:55 +0000 (17:25 +0200)]
re PR fortran/63331 (Fortran -fcompare-debug issues)

PR fortran/63331
* trans-types.c (gfc_get_array_descr_info): Build DEBUG_EXPR_DECL
instead of VAR_DECL for base_decl.

* gfortran.dg/pr63331.f90: New test.

From-SVN: r215516

9 years agore PR bootstrap/63280 (Double free in GCC compiled with LTO and -O3.)
Richard Sandiford [Tue, 23 Sep 2014 14:47:45 +0000 (14:47 +0000)]
re PR bootstrap/63280 (Double free in GCC compiled with LTO and -O3.)

gcc/
PR bootstrap/63280
* target-globals.c (target_globals::~target_globals): Fix location
of ira_int destruction.

From-SVN: r215515

9 years agognu.ver: Adjust basic_ostream exports.
Jonathan Wakely [Tue, 23 Sep 2014 13:17:42 +0000 (14:17 +0100)]
gnu.ver: Adjust basic_ostream exports.

* config/abi/pre/gnu.ver: Adjust basic_ostream exports.
* include/std/istream (basic_iostream(basic_iostream&&)): Pass *this
to ostream constructor.
* include/std/ostream (basic_ostream(basic_iostream*)): Change to take
parameter by reference, to avoid ambiguity.
* testsuite/27_io/basic_ostream/cons/char/null.cc: New.

From-SVN: r215510

9 years ago[AArch64] Enable shrink wrapping.
Renlin Li [Tue, 23 Sep 2014 12:38:37 +0000 (12:38 +0000)]
[AArch64] Enable shrink wrapping.

From-SVN: r215508

9 years ago[AArch64] Default to -fsched-pressure
Wilco Dijkstra [Tue, 23 Sep 2014 11:14:42 +0000 (11:14 +0000)]
[AArch64] Default to -fsched-pressure

From-SVN: r215503

9 years agoMake all gcc.dg/guality/const-volatile.c subtests PASS under LTO.
Mark Wielaard [Tue, 23 Sep 2014 11:07:08 +0000 (11:07 +0000)]
Make all gcc.dg/guality/const-volatile.c subtests PASS under LTO.

Some subtests were reported as UNSUPPORTED when running under LTO.
That was just because the relevant variables were optimized out.
Mark those variables as used. Now const-volatile reports 192 PASS.

gcc/testsuite/ChangeLog

* gcc.dg/guality/const-volatile.c (i): Mark as used.
(ci): Likewise.
(pci): Likewise.
(pvi): Likewise.
(pcvi): Likewise.
(cip): Likewise.
(foo): Likewise.
(cfoo): Likewise.

From-SVN: r215502

9 years agogcc-gdb-test.exp: Handle old GDB "short int" and "long int" types.
Mark Wielaard [Tue, 23 Sep 2014 11:06:57 +0000 (11:06 +0000)]
gcc-gdb-test.exp: Handle old GDB "short int" and "long int" types.

Old GDB might show short and long as short int and long int. This made
gcc.dg/guality/const-volatile.c ans restrict.c fail on older GDBs.
According to the patch that changed this in newer versions of GDB
this was a bug: https://sourceware.org/ml/gdb-patches/2012-09/msg00455.html

The patch transforms the types "short int" and "long int" coming from
GDB to plain "short" and "long". And a variant has been added to the
const-volatile.c testcase to make sure short and long long are handled
correctly now with older GDB.

gcc/testsuite/ChangeLog

* lib/gcc-gdb-test.exp (gdb-test): Transform gdb types "short int"
and "long int" to plain "short" and "long".
* gcc.dg/guality/const-volatile.c (struct bar): New struct
containing short and long long fields.
(bar): New variable to test the type.

From-SVN: r215501

9 years agocfgcleanup.c (try_optimize_cfg): Do not remove label with LABEL_PRESERVE_P flag set.
Ilya Enkovich [Tue, 23 Sep 2014 08:26:34 +0000 (08:26 +0000)]
cfgcleanup.c (try_optimize_cfg): Do not remove label with LABEL_PRESERVE_P flag set.

gcc/
* cfgcleanup.c (try_optimize_cfg): Do not remove label
with LABEL_PRESERVE_P flag set.

From-SVN: r215498

9 years agore PR c++/62155 (ICE in tsubst_copy, at cp/pt.c:12544)
Paolo Carlini [Tue, 23 Sep 2014 08:09:14 +0000 (08:09 +0000)]
re PR c++/62155 (ICE in tsubst_copy, at cp/pt.c:12544)

2014-09-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/62155
* g++.dg/cpp0x/lambda/lambda-62155.C: New.

From-SVN: r215497

9 years agoAVX-512. Add vshufpd insn patterns.
Alexander Ivchenko [Tue, 23 Sep 2014 07:21:32 +0000 (07:21 +0000)]
AVX-512. Add vshufpd insn patterns.

gcc/
* config/i386/sse.md
(define_expand "avx_shufpd256<mask_expand4_name>"): Add masking.
(define_insn "avx_shufpd256_1<mask_name>"): Ditto.
(define_expand "sse2_shufpd<mask_expand4_name>"): Ditto.
(define_insn "sse2_shufpd_v2df_mask"): New.

Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
From-SVN: r215496

9 years agoAVX-512. Add vshufps insn patterns.
Alexander Ivchenko [Tue, 23 Sep 2014 07:20:37 +0000 (07:20 +0000)]
AVX-512. Add vshufps insn patterns.

gcc/
* config/i386/sse.md
(define_expand "avx_shufps256<mask_expand4_name>"): Add masking.
(define_insn "avx_shufps256_1<mask_name>"): Ditto.
(define_expand "sse_shufps<mask_expand4_name>"): Ditto.
(define_insn "sse_shufps_v4sf_mask"): New.

Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
From-SVN: r215495

9 years agoAVX-512. Add rest of vunpck[lh]ps.
Alexander Ivchenko [Tue, 23 Sep 2014 07:19:00 +0000 (07:19 +0000)]
AVX-512. Add rest of vunpck[lh]ps.

gcc/
* config/i386/sse.md
(define_insn "avx_unpckhps256<mask_name>"): Add masking.
(define_insn "vec_interleave_highv4sf<mask_name>"): Ditto.
(define_insn "avx_unpcklps256<mask_name>"): Ditto.
(define_insn "unpcklps128_mask"): New.

Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
From-SVN: r215494

9 years agoAVX-512. Add masked vunpck[lh]pd.
Alexander Ivchenko [Tue, 23 Sep 2014 07:17:19 +0000 (07:17 +0000)]
AVX-512. Add masked vunpck[lh]pd.

gcc/
* config/i386/sse.md
(define_insn "avx_unpckhpd256<mask_name>"): Add masking.
(define_insn "avx512vl_unpckhpd128_mask"): New.
(define_expand "avx_movddup256<mask_name>"): Add masking.
(define_expand "avx_unpcklpd256<mask_name>"): Ditto.
(define_insn "*avx_unpcklpd256<mask_name>"): Ditto.
(define_insn "avx512vl_unpcklpd128_mask"): New.

Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
From-SVN: r215493

9 years agoRemove LIBGCC2_LONG_DOUBLE_TYPE_SIZE target macro.
Joseph Myers [Tue, 23 Sep 2014 00:48:46 +0000 (01:48 +0100)]
Remove LIBGCC2_LONG_DOUBLE_TYPE_SIZE target macro.

This patch removes the target macro LIBGCC2_LONG_DOUBLE_TYPE_SIZE.

After recent changes, this macro was used in two ways in libgcc: to
determine the mode of long double in dfp-bit.h, and to determine
whether a particular mode has excess precision for use in complex
multiplication.

The former is concerned specifically with long double: it relates to
use of strtold for converting between decimal and binary floating
point.  This is replaced by comparing __LDBL_MANT_DIG__ with the
appropriate __LIBGCC_*_MANT_DIG__ macro.  The latter is replaced
__LIBGCC_*_EXCESS_PRECISION__ predefined macros.

Remarks:

* Comparing (__LDBL_MANT_DIG__ == __LIBGCC_XF_MANT_DIG__) is more
  fragile than it looks; it's possible for XFmode to have 53-bit
  mantissa (TARGET_96_ROUND_53_LONG_DOUBLE, on FreeBSD and
  DragonFlyBSD 32-bit), in which case such a comparison would not
  distinguish XFmode and DFmode as possible modes for long double.
  Fortunately, no target supporting that form of XFmode also supports
  long double = double (but if some target did, we'd need e.g. an
  additional macro giving the exponent range of each mode).

  Furthermore, this code doesn't actually get used for x86 (or any
  other target with XFmode support), because x86 uses BID not DPD and
  BID has its own conversion code (which handles conversions for both
  XFmode and TFmode without needing to go via strtold).  And FreeBSD
  and DragonFlyBSD aren't among the targets with DFP support.  So
  while in principle this code is fragile and it's a deficiency that
  it can't support both XFmode and TFmode at once (something that
  can't be solved with the string conversion approach without libc
  having TS 18661 functions such as strtof128), all these issues
  should not be a problem in practice.

* If other cases of excess precision are supported in future, the code
  for defining __LIBGCC_*_EXCESS_PRECISION__ may need updating.
  Although the most likely such cases might not actually involve
  excess precision for any mode used in libgcc - FLT_EVAL_METHOD being
  32 to do _Float16 arithmetic on _Float32 should have the effect of
  _Complex _Float16 arithmetic using __mulsc3 and __divsc3, rather
  than currently nonexistent __mulhc3 and __divhc3 as in bug 63250 for
  ARM.

* As has been noted in the context of simultaneous support for
  __float128 and __ibm128 on Power, the semantics of macros such as
  LONG_DOUBLE_TYPE_SIZE are problematic because they rely on a
  poorly-defined precision value for floating-point modes (which seems
  to be intended as the number of significant bits in the
  representation, e.g. 80 for XFmode which may be either 12 or 16
  bytes) uniquely identifying a mode (although defining an arbitrarily
  different value for one of the modes you wish to distinguish may
  work as a hack).  It would be cleaner to have a target hook that
  gives a machine mode directly for float, double and long double,
  rather than going via these precision values.  By eliminating all
  use of these macros (FLOAT_TYPE_SIZE, DOUBLE_TYPE_SIZE,
  LONG_DOUBLE_TYPE_SIZE) from code built for the target, this patch
  facilitates such a conversion to a hook (which I suppose would take
  some suitable enum as an argument to identify which of the three
  types to return a mode for).

  (The issue of multiple type support for DFP conversions would apply
  in that Power case.
  <https://gcc.gnu.org/ml/gcc-patches/2014-07/msg01084.html> doesn't
  seem to touch on it, but it would seem reasonable to punt on it
  initially as hard to fix.  There would also be the issue of getting
  functions such as __powikf2, __mulkc3, __divkc3 defined, but that's
  rather easier to address.)

Bootstrapped with no regressions on x86_64-unknown-linux-gnu.

gcc:
* doc/tm.texi.in (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Remove.
* doc/tm.texi: Regenerate.
* system.h (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Poison.
* config/alpha/alpha.h (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Remove.
* config/i386/i386-interix.h (LIBGCC2_LONG_DOUBLE_TYPE_SIZE):
Remove.
* config/i386/i386.h (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Remove.
* config/i386/rtemself.h (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Remove.
* config/ia64/ia64.h (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Remove.
* config/m68k/m68k.h (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Remove.
* config/m68k/netbsd-elf.h (LIBGCC2_LONG_DOUBLE_TYPE_SIZE):
Remove.
* config/mips/mips.h (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Remove.
* config/mips/n32-elf.h (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Remove.
* config/msp430/msp430.h (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Remove.
* config/rl78/rl78.h (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Remove.
* config/rs6000/rs6000.h (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Remove.
* config/rx/rx.h (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Remove.
* config/s390/s390.h (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Remove.
* config/sparc/freebsd.h (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Remove.
* config/sparc/linux.h (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Remove.
* config/sparc/linux64.h (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Remove.
* config/sparc/netbsd-elf.h (LIBGCC2_LONG_DOUBLE_TYPE_SIZE):
Remove.

gcc/c-family:
* c-cppbuiltin.c (c_cpp_builtins): Define
__LIBGCC_*_EXCESS_PRECISION__ macros for supported floating-point
modes.

libgcc:
* dfp-bit.h (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Remove.
(__LIBGCC_XF_MANT_DIG__): Define if not already defined.
(LONG_DOUBLE_HAS_XF_MODE): Define in terms of
__LIBGCC_XF_MANT_DIG__.
(__LIBGCC_TF_MANT_DIG__): Define if not already defined.
(LONG_DOUBLE_HAS_TF_MODE): Define in terms of
__LIBGCC_TF_MANT_DIG__.
* libgcc2.c (NOTRUNC): Define in terms of
__LIBGCC_*_EXCESS_PRECISION__, not LIBGCC2_LONG_DOUBLE_TYPE_SIZE.
* libgcc2.h (LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Remove.

From-SVN: r215491

9 years agoDaily bump.
GCC Administrator [Tue, 23 Sep 2014 00:16:30 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r215489

9 years agoruntime: Mark runtime_goexit function as noinline.
Ian Lance Taylor [Mon, 22 Sep 2014 21:14:43 +0000 (21:14 +0000)]
runtime: Mark runtime_goexit function as noinline.

If the compiler inlines this function into kickoff, it may reuse
the TLS block address to load g. However, this is not necessarily
correct, as the call to g->entry in kickoff may cause the TLS
address to change. If the wrong value is loaded for g->status in
runtime_goexit, it may cause a runtime panic.

By marking the function as noinline we prevent the compiler from
reusing the TLS address.

From-SVN: r215484

9 years agocharset.c (conversion): Rename to ...
Jan Hubicka [Mon, 22 Sep 2014 19:43:02 +0000 (21:43 +0200)]
charset.c (conversion): Rename to ...

* charset.c (conversion): Rename to ...
(cpp_conversion): ... this one; update.
* files.c (file_hash_entry): Rename to ...
(cpp_file_hash_entry): ... this one ; update.

From-SVN: r215482

9 years agotree-ssa-ccp.c (prop_value_d): Rename to ...
Jan Hubicka [Mon, 22 Sep 2014 19:41:02 +0000 (21:41 +0200)]
tree-ssa-ccp.c (prop_value_d): Rename to ...

* tree-ssa-ccp.c (prop_value_d): Rename to ...
(ccp_prop_value_t): ... this one to avoid ODR violation; update uses.
* ipa-prop.c (struct type_change_info): Rename to ...
(prop_type_change_info): ... this; update uses.
* ggc-page.c (globals): Rename to ...
(static struct ggc_globals): ... this; update uses.
* tree-ssa-loop-im.c (mem_ref): Rename to ...
(im_mem_ref): ... this; update uses.
* ggc-common.c (loc_descriptor): Rename to ...
(ggc_loc_descriptor): ... this; update uses.
* lra-eliminations.c (elim_table): Rename to ...
(lra_elim_table): ... this; update uses.
* bitmap.c (output_info): Rename to ...
(bitmap_output_info): ... this; update uses.
* gcse.c (expr): Rename to ...
(gcse_expr) ... this; update uses.
(occr): Rename to ...
(gcse_occr): .. this; update uses.
* tree-ssa-copy.c (prop_value_d): Rename to ...
(prop_value_t): ... this.
* predict.c (block_info_def): Rename to ...
(block_info): ... this; update uses.
(edge_info_def): Rename to ...
(edge_info): ... this; update uses.
* profile.c (bb_info): Rename to ...
(bb_profile_info): ... this; update uses.
* alloc-pool.c (output_info): Rename to ...
(pool_output_info): ... this; update uses.
* ipa-cp.c (topo_info): Rename to ..
(ipa_topo_info): ... this; update uses.
* tree-nrv.c (nrv_data): Rename to ...
(nrv_data_t): ... this; update uses.
* ipa-split.c (bb_info): Rename to ...
(split_bb_info): ... this one.
* profile.h (edge_info): Rename to ...
(edge_profile_info): ... this one; update uses.
* dse.c (bb_info): Rename to ...
(dse_bb_info): ... this one; update uses.
* cprop.c (occr): Rename to ...
(cprop_occr): ... this one; update uses.
(expr): Rename to ...
(cprop_expr): ... this one; update uses.

From-SVN: r215481

9 years agotree-ssa-ccp.c (prop_value_d): Rename to ...
Jan Hubicka [Mon, 22 Sep 2014 19:39:44 +0000 (21:39 +0200)]
tree-ssa-ccp.c (prop_value_d): Rename to ...

* tree-ssa-ccp.c (prop_value_d): Rename to ...
(ccp_prop_value_t): ... this one to avoid ODR violation; update uses.
* ipa-prop.c (struct type_change_info): Rename to ...
(prop_type_change_info): ... this; update uses.
* ggc-page.c (globals): Rename to ...
(static struct ggc_globals): ... this; update uses.
* tree-ssa-loop-im.c (mem_ref): Rename to ...
(im_mem_ref): ... this; update uses.
* ggc-common.c (loc_descriptor): Rename to ...
(ggc_loc_descriptor): ... this; update uses.
* lra-eliminations.c (elim_table): Rename to ...
(lra_elim_table): ... this; update uses.
* bitmap.c (output_info): Rename to ...
(bitmap_output_info): ... this; update uses.
* gcse.c (expr): Rename to ...
(gcse_expr) ... this; update uses.
(occr): Rename to ...
(gcse_occr): .. this; update uses.
* tree-ssa-copy.c (prop_value_d): Rename to ...
(prop_value_t): ... this.
* predict.c (block_info_def): Rename to ...
(block_info): ... this; update uses.
(edge_info_def): Rename to ...
(edge_info): ... this; update uses.
* profile.c (bb_info): Rename to ...
(bb_profile_info): ... this; update uses.
* alloc-pool.c (output_info): Rename to ...
(pool_output_info): ... this; update uses.
* ipa-cp.c (topo_info): Rename to ..
(ipa_topo_info): ... this; update uses.
* tree-nrv.c (nrv_data): Rename to ...
(nrv_data_t): ... this; update uses.
* ipa-split.c (bb_info): Rename to ...
(split_bb_info): ... this one.
* profile.h (edge_info): Rename to ...
(edge_profile_info): ... this one; update uses.
* dse.c (bb_info): Rename to ...
(dse_bb_info): ... this one; update uses.
* cprop.c (occr): Rename to ...
(cprop_occr): ... this one; update uses.
(expr): Rename to ...
(cprop_expr): ... this one; update uses.

From-SVN: r215480

9 years agosemantics.c (finish_non_static_data_member): In diagnostic, give error at point of...
Jason Merrill [Mon, 22 Sep 2014 19:22:37 +0000 (15:22 -0400)]
semantics.c (finish_non_static_data_member): In diagnostic, give error at point of use and note at point of declaration.

* semantics.c (finish_non_static_data_member): In diagnostic, give
error at point of use and note at point of declaration.

From-SVN: r215479

9 years agore PR c++/63320 (bogus ‘this’ was not captured for this lambda function error)
Jason Merrill [Mon, 22 Sep 2014 19:22:11 +0000 (15:22 -0400)]
re PR c++/63320 (bogus â€˜this’ was not captured for this lambda function error)

PR c++/63320
PR c++/60463
PR c++/60755
* lambda.c (maybe_resolve_dummy, lambda_expr_this_capture): Handle
not finding 'this'.

From-SVN: r215478

9 years agore PR c++/62219 ([c++11] Spurious error for lambda in a friend function of a class...
Paolo Carlini [Mon, 22 Sep 2014 19:21:20 +0000 (19:21 +0000)]
re PR c++/62219 ([c++11] Spurious error for lambda in a friend function of a class template with a default template parameters)

/cp
2014-09-22  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/62219
* pt.c (check_default_tmpl_args): Check LAMBDA_FUNCTION_P.

/testsuite
2014-09-22  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/62219
* g++.dg/cpp0x/lambda/lambda-template14.C: New.

From-SVN: r215477

9 years ago[Testsuite] Add tests of reductions using whole-vector-shifts (ior)
Alan Lawrence [Mon, 22 Sep 2014 16:36:06 +0000 (16:36 +0000)]
[Testsuite] Add tests of reductions using whole-vector-shifts (ior)

* gcc.dg/vect/vect-reduc-or_1.c: New test.
* gcc.dg/vect/vect-reduc-or_2.c: New test.

From-SVN: r215475

9 years agoMakefile.in (check-parallel-%): Add @.
Jason Merrill [Mon, 22 Sep 2014 16:33:35 +0000 (12:33 -0400)]
Makefile.in (check-parallel-%): Add @.

gcc/
* Makefile.in (check-parallel-%): Add @.
libstdc++-v3/
* testsuite/Makefile.am (%/site.exp): Add @.
(check-DEJAGNU): Likewise.
* testsuite/Makefile.in: Regenerate.

From-SVN: r215474

9 years ago[Testsuite] Add tests of reductions using whole-vector-shifts (multiplication)
Alan Lawrence [Mon, 22 Sep 2014 16:33:05 +0000 (16:33 +0000)]
[Testsuite] Add tests of reductions using whole-vector-shifts (multiplication)

* lib/target-supports.exp (check_effective_target_whole_vector_shift):
New.

* gcc.dg/vect/vect-reduc-mul_1.c: New test.
* gcc.dg/vect/vect-reduc-mul_2.c: New test.

From-SVN: r215473

9 years agodecl.c (poplevel): Don't warn about unused vars in template scope.
Jason Merrill [Mon, 22 Sep 2014 16:31:09 +0000 (12:31 -0400)]
decl.c (poplevel): Don't warn about unused vars in template scope.

* decl.c (poplevel): Don't warn about unused vars in template scope.
* error.c (dump_decl): Handle variable templates.

From-SVN: r215472

9 years ago[AArch64] Auto-generate the "BUILTIN_" macros for aarch64-builtins.c
James Greenhalgh [Mon, 22 Sep 2014 16:24:57 +0000 (16:24 +0000)]
[AArch64] Auto-generate the "BUILTIN_" macros for aarch64-builtins.c

gcc/

* config/aarch64/geniterators.sh: New.
* config/aarch64/iterators.md (VDQF_DF): New.
* config/aarch64/t-aarch64: Generate aarch64-builtin-iterators.h.
* config/aarch64/aarch64-builtins.c (BUILTIN_*) Remove.

From-SVN: r215471

9 years agoInclude <bits/uses_allocator.h> in <stack> and <queue>.
Jonathan Wakely [Mon, 22 Sep 2014 16:01:53 +0000 (17:01 +0100)]
Include <bits/uses_allocator.h> in <stack> and <queue>.

* include/bits/stl_queue.h: Include missing header.
* include/bits/stl_stack.h: Likewise.
* testsuite/23_containers/priority_queue/requirements/
uses_allocator.cc: New.
* testsuite/23_containers/queue/requirements/uses_allocator.cc: New.
* testsuite/23_containers/stack/requirements/uses_allocator.cc: New.

From-SVN: r215470

9 years agomsp430.h (LIB_SPEC): Remove automatic addition of -lnosys when -msim absent.
Peter A. Bigot [Mon, 22 Sep 2014 15:47:31 +0000 (15:47 +0000)]
msp430.h (LIB_SPEC): Remove automatic addition of -lnosys when -msim absent.

* config/msp430/msp430.h (LIB_SPEC): Remove automatic addition of
-lnosys when -msim absent.

From-SVN: r215469

9 years agostatus_cxx2011.xml: Update C++11 status.
Jonathan Wakely [Mon, 22 Sep 2014 15:25:37 +0000 (16:25 +0100)]
status_cxx2011.xml: Update C++11 status.

* doc/xml/manual/status_cxx2011.xml: Update C++11 status.
* doc/xml/manual/status_cxx2014.xml: Update TS status.
* doc/html/manual/status.html: Regenerate.

From-SVN: r215468

9 years agomutex (try_lock): Do not swallow exceptions.
Jonathan Wakely [Mon, 22 Sep 2014 14:54:35 +0000 (15:54 +0100)]
mutex (try_lock): Do not swallow exceptions.

* include/std/mutex (try_lock): Do not swallow exceptions.
* testsuite/30_threads/try_lock/4.cc: Fix test.

From-SVN: r215467

9 years agoFix ChangeLog date in my last commit.
Jonathan Wakely [Mon, 22 Sep 2014 14:21:43 +0000 (15:21 +0100)]
Fix ChangeLog date in my last commit.

From-SVN: r215466

9 years agoWorkaround following [PATCH] Pul all constants last in tree_swap_operands_p
Alan Lawrence [Mon, 22 Sep 2014 14:20:16 +0000 (14:20 +0000)]
Workaround following [PATCH] Pul all constants last in tree_swap_operands_p

https://gcc.gnu.org/ml/gcc-patches/2014-09/msg01509.html
gcc/:
        * fold-const.c (tree_swap_operands_p): Strip only sign-preserving NOPs.

From-SVN: r215465

9 years agoMake streams movable and swappable.
Jonathan Wakely [Mon, 22 Sep 2014 13:34:09 +0000 (14:34 +0100)]
Make streams movable and swappable.

PR libstdc++/54316
PR libstdc++/53626
* config/abi/pre/gnu.ver: Add new exports.
* config/io/basic_file_stdio.h (__basic_file): Support moving and
swapping.
* include/bits/basic_ios.h (basic_ios::move, basic_ios::swap):
Likewise.
* include/bits/ios_base.h (ios_base::_M_move, ios_base::_M_swap):
Likewise.
* include/bits/fstream.tcc (basic_filebuf): Likewise.
* include/bits/move.h (__exchange): Define for C++11 mode.
* include/ext/stdio_filebuf.h (stdio_filebuf): Support moving and
swapping.
* include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf): Likewise.
* include/std/fstream (basic_filebuf, basic_ifstream, basic_ofstream,
basic_fstream): Likewise.
* include/std/ios: Remove whitespace.
* include/std/istream (basic_istream, basic_iostream): Support moving
and swapping.
* include/std/ostream (basic_ostream): Likewise.
* include/std/sstream (basic_stringbuf, basic_istringstream,
basic_ostringstream, basic_stringstream): Likewise.
* include/std/streambuf (basic_streambuf): Do not default copy
constructor and assignment on first declaration.
* include/std/utility (exchange): Forward to __exchange.
* testsuite/27_io/basic_filebuf/cons/char/copy_neg.cc: New.
* src/c++11/Makefile.am: Add stream-related files.
* src/c++11/Makefile.in: Regenerate.
* src/c++11/ext11-inst.cc (stdio_filebuf, stdio_sync_filebuf):
New file for explicit instantiation definitions.
* src/c++11/ios.cc: Move from src/c++98 to here.
(ios_base::_M_move, ios_base::_M_swap): Define.
* src/c++11/ios-inst.cc: Move from src/c++98 to here.
* src/c++11/iostream-inst.cc: Likewise.
* src/c++11/istream-inst.cc: Likewise.
* src/c++11/ostream-inst.cc: Likewise.
* src/c++11/sstream-inst.cc: Likewise.
* src/c++11/streambuf-inst.cc: Likewise.
* src/c++98/Makefile.am: Remove stream-related files.
* src/c++98/Makefile.in: Regenerate.
* src/c++98/ext-inst.cc (stdio_filebuf): Remove explicit
instantiations.
* src/c++98/misc-inst.cc (stdio_sync_filebuf): Likewise.
* src/c++98/ios-inst.cc: Move to src/c++11/.
* src/c++98/ios.cc: Move to src/c++11/.
* src/c++98/iostream-inst.cc: Likewise.
* src/c++98/istream-inst.cc: Likewise.
* src/c++98/ostream-inst.cc: Likewise.
* src/c++98/sstream-inst.cc: Likewise.
* src/c++98/streambuf-inst.cc: Likewise.
* testsuite/27_io/basic_filebuf/cons/char/copy_neg.cc: New.
* testsuite/27_io/basic_fstream/cons/move.cc: New.
* testsuite/27_io/basic_fstream/assign/1.cc: New.
* testsuite/27_io/basic_ifstream/cons/move.cc: New.
* testsuite/27_io/basic_ifstream/assign/1.cc: New.
* testsuite/27_io/basic_istringstream/assign/1.cc: New.
* testsuite/27_io/basic_istringstream/cons/move.cc: New.
* testsuite/27_io/basic_ofstream/cons/move.cc: New.
* testsuite/27_io/basic_ofstream/assign/1.cc: New.
* testsuite/27_io/basic_ostringstream/assign/1.cc: New.
* testsuite/27_io/basic_ostringstream/cons/move.cc: New.
* testsuite/27_io/basic_stringstream/assign/1.cc: New.
* testsuite/27_io/basic_stringstream/cons/move.cc: New.

From-SVN: r215463

9 years agoAdd --inline option to contrib/mklog
Tom de Vries [Mon, 22 Sep 2014 12:53:12 +0000 (12:53 +0000)]
Add --inline option to contrib/mklog

2014-09-22  Tom de Vries  <tom@codesourcery.com>

* mklog: Add --inline option.

From-SVN: r215462

9 years agogimplify.c (gimplify_init_constructor): Do not leave non-GIMPLE vector constructors...
Richard Biener [Mon, 22 Sep 2014 12:49:16 +0000 (12:49 +0000)]
gimplify.c (gimplify_init_constructor): Do not leave non-GIMPLE vector constructors around.

2014-09-22  Richard Biener  <rguenther@suse.de>

* gimplify.c (gimplify_init_constructor): Do not leave
non-GIMPLE vector constructors around.
* tree-cfg.c (verify_gimple_assign_single): Verify that
CONSTRUCTORs have gimple elements.

From-SVN: r215461

9 years agore PR target/63312 (FAIL: gcc.dg/torture/float128-exact-underflow.c -O0 execution...
Joseph Myers [Mon, 22 Sep 2014 11:08:03 +0000 (12:08 +0100)]
re PR target/63312 (FAIL: gcc.dg/torture/float128-exact-underflow.c   -O0  execution test)

PR target/63312
* config/ia64/sfp-machine.h (FE_EX_ALL, FP_TRAPPING_EXCEPTIONS):
New macros.

From-SVN: r215458

9 years agore PR debug/63328 (c-c++-common/gomp/pr60823-3.c test fails with -fcompare-debug)
Jakub Jelinek [Mon, 22 Sep 2014 10:32:09 +0000 (12:32 +0200)]
re PR debug/63328 (c-c++-common/gomp/pr60823-3.c test fails with -fcompare-debug)

PR debug/63328
* omp-low.c (ipa_simd_modify_stmt_ops): For debug stmts
insert a debug source bind stmt setting DEBUG_EXPR_DECL
instead of a normal gimple assignment stmt.

* c-c++-common/gomp/pr63328.c: New test.

From-SVN: r215454

9 years ago[Patch bfin] Fixup use of constraints in define_split
James Greenhalgh [Mon, 22 Sep 2014 10:23:42 +0000 (10:23 +0000)]
[Patch bfin] Fixup use of constraints in define_split

gcc/

* config/bfin/bfin.md: Fix use of constraints in define_split.

From-SVN: r215453

9 years agoresolve.c (resolve_fl_procedure): Remove duplicated lines.
Dominique d'Humieres [Mon, 22 Sep 2014 10:05:37 +0000 (12:05 +0200)]
resolve.c (resolve_fl_procedure): Remove duplicated lines.

2014-09-21  Dominique d'Humieres <dominiq@lps.ens.fr>

* resolve.c (resolve_fl_procedure): Remove duplicated lines.

From-SVN: r215452

9 years agoPR lto/63270 - new test
Martin Liska [Mon, 22 Sep 2014 09:39:20 +0000 (11:39 +0200)]
PR lto/63270 - new test

* g++.dg/lto/pr63270_0.C: New test.
* g++.dg/lto/pr63270_1.C: New test.

From-SVN: r215451

9 years agoi386.c (ix86_cannot_change_mode_class): Remove GET_MODE_SIZE (to) < GET_MODE_SIZE...
Richard Sandiford [Mon, 22 Sep 2014 07:38:46 +0000 (07:38 +0000)]
i386.c (ix86_cannot_change_mode_class): Remove GET_MODE_SIZE (to) < GET_MODE_SIZE (from) test.

gcc/
* config/i386/i386.c (ix86_cannot_change_mode_class): Remove
GET_MODE_SIZE (to) < GET_MODE_SIZE (from) test.

From-SVN: r215450

9 years agohard-reg-set.h: Include hash-table.h.
Richard Sandiford [Mon, 22 Sep 2014 07:38:12 +0000 (07:38 +0000)]
hard-reg-set.h: Include hash-table.h.

gcc/
* hard-reg-set.h: Include hash-table.h.
(target_hard_regs): Add a finalize method and a x_simplifiable_subregs
field.
* target-globals.c (target_globals::~target_globals): Call
hard_regs->finalize.
* rtl.h (subreg_shape): New structure.
(shape_of_subreg): New function.
(simplifiable_subregs): Declare.
* reginfo.c (simplifiable_subreg): New structure.
(simplifiable_subregs_hasher): Likewise.
(simplifiable_subregs): New function.
(invalid_mode_changes): Delete.
(alid_mode_changes, valid_mode_changes_obstack): New variables.
(record_subregs_of_mode): Remove subregs_of_mode parameter.
Record valid mode changes in valid_mode_changes.
(find_subregs_of_mode): Remove subregs_of_mode parameter.
Update calls to record_subregs_of_mode.
(init_subregs_of_mode): Remove invalid_mode_changes and bitmap
handling.  Initialize new variables.  Update call to
find_subregs_of_mode.
(invalid_mode_change_p): Check new variables instead of
invalid_mode_changes.
(finish_subregs_of_mode): Finalize new variables instead of
invalid_mode_changes.
(target_hard_regs::finalize): New function.
* ira-costs.c (print_allocno_costs): Call invalid_mode_change_p
even when CLASS_CANNOT_CHANGE_MODE is undefined.

From-SVN: r215449

9 years agocombine.c (subst): Use simplify_subreg_regno rather than REG_CANNOT_CHANGE_MODE_P...
Richard Sandiford [Mon, 22 Sep 2014 07:36:59 +0000 (07:36 +0000)]
combine.c (subst): Use simplify_subreg_regno rather than REG_CANNOT_CHANGE_MODE_P to detect...

gcc/
* combine.c (subst): Use simplify_subreg_regno rather than
REG_CANNOT_CHANGE_MODE_P to detect invalid mode changes.

From-SVN: r215448

9 years agortl.h (subreg_info): Expand commentary
Richard Sandiford [Mon, 22 Sep 2014 07:36:51 +0000 (07:36 +0000)]
rtl.h (subreg_info): Expand commentary

gcc/
* rtl.h (subreg_info): Expand commentary
* rtlanal.c (subreg_get_info): Likewise.

From-SVN: r215447

9 years agogcc/
Richard Sandiford [Mon, 22 Sep 2014 07:36:42 +0000 (07:36 +0000)]
gcc/
* hard-reg-set.h (COPY_HARD_REG_SET, COMPL_HARD_REG_SET)
(AND_HARD_REG_SET, AND_COMPL_HARD_REG_SET, IOR_HARD_REG_SET)
(IOR_COMPL_HARD_REG_SET): Allow the "from" set to be constant.

From-SVN: r215446

9 years agodecl.c (gnat_to_gnu_entity): Adjust comment.
Eric Botcazou [Mon, 22 Sep 2014 07:02:24 +0000 (07:02 +0000)]
decl.c (gnat_to_gnu_entity): Adjust comment.

* gcc-interface/decl.c (gnat_to_gnu_entity): Adjust comment.
* gcc-interface/utils.c (gnat_write_global_declarations): Fix typo.

From-SVN: r215445

9 years agoarm.c: #include "tm-constrs.h"
Zhenqiang Chen [Mon, 22 Sep 2014 02:54:45 +0000 (02:54 +0000)]
arm.c: #include "tm-constrs.h"

2014-09-22  Zhenqiang Chen  <zhenqiang.chen@arm.com>

* config/arm/arm.c: #include "tm-constrs.h"
(thumb1_size_rtx_costs): Adjust rtx costs.

From-SVN: r215444

9 years agocrtstuff.c (USE_EH_FRAME_REGISTRY): Let USE_EH_FRAME_REGISTRY_ALWAYS override USE_PT_...
Hans-Peter Nilsson [Mon, 22 Sep 2014 00:49:01 +0000 (00:49 +0000)]
crtstuff.c (USE_EH_FRAME_REGISTRY): Let USE_EH_FRAME_REGISTRY_ALWAYS override USE_PT_GNU_EH_FRAME.

* crtstuff.c (USE_EH_FRAME_REGISTRY): Let USE_EH_FRAME_REGISTRY_ALWAYS
override USE_PT_GNU_EH_FRAME.
[__LIBGCC_EH_FRAME_SECTION_NAME__ && !USE_PT_GNU_EH_FRAME]: Sanity-
check USE_EH_FRAME_REGISTRY_ALWAYS against
__LIBGCC_EH_FRAME_SECTION_NAME__, emit error if unsane.
* Makefile.in (FORCE_EXPLICIT_EH_REGISTRY): New
variable for substituted force_explicit_eh_registry.
(CRTSTUFF_CFLAGS): Add FORCE_EXPLICIT_EH_REGISTRY.
* configure.ac (explicit-exception-frame-registration):
New AC_ARG_ENABLE.
* configure: Regenerate.

From-SVN: r215443

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

From-SVN: r215442

9 years agoconfigure.ac (target_header_dir): Move block defining this to before the block settin...
Hans-Peter Nilsson [Sun, 21 Sep 2014 23:38:05 +0000 (23:38 +0000)]
configure.ac (target_header_dir): Move block defining this to before the block setting inhibit_libc.

* configure.ac (target_header_dir): Move block defining
this to before the block setting inhibit_libc.
(inhibit_libc): When considering $with_headers, just
check it it's explicitly "no".  If not, also check if
$target_header_dir/stdio.h is present.  If not, set
inhibit_libc=true.
* configure: Regenerate.

From-SVN: r215439

9 years ago* config/rs6000/t-spe (MULTILIB_EXCEPTIONS): Allow isel without SPE.
Patrick Oppenlander [Sun, 21 Sep 2014 22:29:00 +0000 (22:29 +0000)]
* config/rs6000/t-spe (MULTILIB_EXCEPTIONS): Allow isel without SPE.

From-SVN: r215438

9 years agors6000.md (div<mode>3): Fix comment.
Segher Boessenkool [Sun, 21 Sep 2014 18:04:53 +0000 (20:04 +0200)]
rs6000.md (div<mode>3): Fix comment.

2014-09-21  Segher Boessenkool  <segher@kernel.crashing.org>

* config/rs6000/rs6000.md (div<mode>3): Fix comment.  Use a different
insn for divides by integer powers of two.
(div<mode>3_sra, *div<mode>3_sra_dot, *div<mode>3_sra_dot2): New.
(mod<mode>3): Fix formatting.
(three anonymous define_insn and two define_split): Delete.

From-SVN: r215437

9 years ago2014-09-21 Segher Boessenkool <segher@kernel.crashing.org>
Segher Boessenkool [Sun, 21 Sep 2014 18:03:52 +0000 (20:03 +0200)]
2014-09-21  Segher Boessenkool  <segher@kernel.crashing.org>

* config/rs6000/rs6000.md (ashr<mode>3, *ashr<mode>3, *ashrsi3_64,
*ashr<mode>3_dot, *ashr<mode>3_dot2): Clobber CA_REGNO.
(floatdisf2_internal2): Ditto.
(ashrdi3_no_power): Ditto.  Fix formatting.

From-SVN: r215436

9 years agors6000.md (ctz<mode>2, [...]): Tidy.
Segher Boessenkool [Sun, 21 Sep 2014 18:02:54 +0000 (20:02 +0200)]
rs6000.md (ctz<mode>2, [...]): Tidy.

2014-09-21  Segher Boessenkool  <segher@kernel.crashing.org>

* config/rs6000/rs6000.md (ctz<mode>2, ffs<mode>2, popcount<mode>2,
popcntb<mode>2, popcntd<mode>2, parity<mode>2, parity<mode>2_cmpb):
Tidy.

From-SVN: r215435

9 years agors6000.md (strlensi): Don't use subsi3 with a constant, use addsi3 directly.
Segher Boessenkool [Sun, 21 Sep 2014 18:01:59 +0000 (20:01 +0200)]
rs6000.md (strlensi): Don't use subsi3 with a constant, use addsi3 directly.

2014-09-21  Segher Boessenkool  <segher@kernel.crashing.org>

* config/rs6000/rs6000.md (strlensi): Don't use subsi3 with a
constant, use addsi3 directly.
(three anonymous define_insn, two define_split): Delete.
(sub<mode>3): Move.  Do not allow constant second operand.
Generate different insn for constant first operand.
(*subf<mode>3, *subf<mode>3_dot, *subf<mode>3_dot2): New.
(subf<mode>3_imm): New.
(ctz<mode>2, ffs<mode>2): Clobber CA_REGNO where required.
(*plus_ltu<mode>): Only handle registers.
(*plus_ltu<mode>_1): New.  Handle integer third operand.
(*plus_gtu<mode>): Only handle registers.
(*plus_gtu<mode>_1): New.  Handle integer third operand.

From-SVN: r215434

9 years agors6000.md (iorxor): New code_iterator.
Segher Boessenkool [Sun, 21 Sep 2014 18:01:01 +0000 (20:01 +0200)]
rs6000.md (iorxor): New code_iterator.

2014-09-21  Segher Boessenkool  <segher@kernel.crashing.org>

* config/rs6000/rs6000.md (iorxor): New code_iterator.
(iorxor): New code_attr.
(IORXOR): New code_attr.
(*and<mode>3, *and<mode>3_dot, *and<mode>3_dot2): Delete.
(ior<mode>3, xor<mode>3): Delete.
(<iorxor><mode>3): New.
(splitter for "big" integer ior, xor): New.
(*bool<mode>3): Move.  Also handle AND.
(*bool<mode>3_dot, *bool<mode>3_dot2): Also handle AND.
(splitter for "big" integer ior, xor): Delete.

From-SVN: r215433

9 years agors6000.md (*neg<mode>2_internal): Delete.
Segher Boessenkool [Sun, 21 Sep 2014 17:59:40 +0000 (19:59 +0200)]
rs6000.md (*neg<mode>2_internal): Delete.

2014-09-21  Segher Boessenkool  <segher@kernel.crashing.org>

* config/rs6000/rs6000.md (*neg<mode>2_internal): Delete.
(two anonymous define_insn and two define_split): Delete.
(*neg<mode>2, *neg<mode>2_dot, *neg<mode>2_dot2): New.

From-SVN: r215432

9 years agors6000.md (*one_cmpl<mode>2): Generate "not" insn.
Segher Boessenkool [Sun, 21 Sep 2014 17:58:41 +0000 (19:58 +0200)]
rs6000.md (*one_cmpl<mode>2): Generate "not" insn.

2014-09-21  Segher Boessenkool  <segher@kernel.crashing.org>

* config/rs6000/rs6000.md (*one_cmpl<mode>2): Generate "not" insn.
(two anonymous define_insn and two define_split): Delete.
(*one_cmpl<mode>2_dot, *one_cmpl<mode>2_dot2): New.

From-SVN: r215431

9 years agors6000.c (rs6000_rtx_costs): New.
Segher Boessenkool [Sun, 21 Sep 2014 17:57:28 +0000 (19:57 +0200)]
rs6000.c (rs6000_rtx_costs): New.

2014-09-21  Segher Boessenkool  <segher@kernel.crashing.org>

* config/rs6000/rs6000.c (rs6000_rtx_costs) <NE>: New.

From-SVN: r215430

9 years agopredicates.md (ca_operand): Allow subregs.
Segher Boessenkool [Sun, 21 Sep 2014 17:56:25 +0000 (19:56 +0200)]
predicates.md (ca_operand): Allow subregs.

2014-09-21  Segher Boessenkool  <segher@kernel.crashing.org>

* config/rs6000/predicates.md (ca_operand): Allow subregs.
(input_operand): Do not allow ca_operand.
* config/rs6000/rs6000.c (rs6000_hard_regno_mode_ok): For the
carry bit, allow SImode and Pmode.
(rs6000_init_hard_regno_mode_ok): Make the carry bit class NO_REGS.

From-SVN: r215429

9 years agoi386.c (ix86_expand_call): Generate MS->SYSV extra clobbered registers using clobber_reg.
Uros Bizjak [Sun, 21 Sep 2014 15:13:14 +0000 (17:13 +0200)]
i386.c (ix86_expand_call): Generate MS->SYSV extra clobbered registers using clobber_reg.

* config/i386/i386.c (ix86_expand_call): Generate MS->SYSV extra
clobbered registers using clobber_reg.  Remove UNSPEC decoration.
* config/i386/i386.md (unspec) <UNSPEC_MS_TO_SYSV_CALL>: Remove.
(*call_rex64_ms_sysv): Remove.
(*call_value_rex64_ms_sysv): Ditto.
* config/i386/predicates.md (call_rex64_ms_sysv_operation): Remove.

testsuite/ChangeLog:

* gcc.target/i386/avx-vzeroupper-16.c (dg-final): Remove check
for call_value_rex64_ms_sysv.
* gcc.target/i386/avx-vzeroupper-17.c (dg-final): Ditto.
* gcc.target/i386/avx-vzeroupper-18.c (dg-final): Remove check
for call_rex64_ms_sysv.

From-SVN: r215428

9 years agore PR c++/62017 (AddressSanitizer reports *-buffer-overflow in destructor when multip...
Jason Merrill [Sun, 21 Sep 2014 02:42:40 +0000 (22:42 -0400)]
re PR c++/62017 (AddressSanitizer reports *-buffer-overflow in destructor when multiple virtual inheritance is used)

PR c++/62017
* decl.c (begin_destructor_body): Only clobber the as-base part of
*this.

From-SVN: r215427

9 years agoDaily bump.
GCC Administrator [Sun, 21 Sep 2014 00:16:33 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r215426

9 years agoruntime: Restore copyright notice accidentally removed from mgc0.c.
Ian Lance Taylor [Sat, 20 Sep 2014 20:42:59 +0000 (20:42 +0000)]
runtime: Restore copyright notice accidentally removed from mgc0.c.

From-SVN: r215423

9 years agoepiphany.md (sub_f_add_imm): Change constraint of operand 3 to "CnL".
Joern Rennecke [Sat, 20 Sep 2014 19:37:10 +0000 (19:37 +0000)]
epiphany.md (sub_f_add_imm): Change constraint of operand 3 to "CnL".

        * config/epiphany/epiphany.md (sub_f_add_imm): Change constraint of
        operand 3 to "CnL".

From-SVN: r215422

9 years agotrans-intrinsic.c (conv_intrinsic_atomic_op): Fix issue with generating temporary...
Alessandro Fanfarillo [Sat, 20 Sep 2014 14:14:08 +0000 (08:14 -0600)]
trans-intrinsic.c (conv_intrinsic_atomic_op): Fix issue with generating temporary for value argument.

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

gcc/fortran
        * trans-intrinsic.c (conv_intrinsic_atomic_op): Fix issue with
        generating temporary for value argument.

gcc/testsuite/
        * gfortran.dg/coarray_atomic_5.f90: New

Co-Authored-By: Tobias Burnus <burnus@net-b.de>
From-SVN: r215421

9 years agotrans-expr.c (gfc_reset_vptr): Fix comment whitespace.
Joost VandeVondele [Sat, 20 Sep 2014 11:48:00 +0000 (11:48 +0000)]
trans-expr.c (gfc_reset_vptr): Fix comment whitespace.

2014-09-20  Joost VandeVondele  <vondele@gcc.gnu.org>

* trans-expr.c (gfc_reset_vptr): Fix comment whitespace.
(gfc_conv_class_to_class): Likewise.
(gfc_conv_procedure_call): Likewise.
(arrayfunc_assign_needs_temporary): Likewise.
(realloc_lhs_loop_for_fcn_call): Likewise.
(gfc_trans_assignment_1): Likewise.
* trans-array.c (gfc_conv_array_ref): Likewise.
(gfc_array_allocate): Likewise.
(gfc_alloc_allocatable_for_assignment): Likewise.
* symbol.c (generate_isocbinding_symbol): Likewise.
* class.c (finalization_scalarizer): Likewise.
(finalizer_insert_packed_call): Likewise.
(generate_finalization_wrapper): Likewise.
(find_intrinsic_vtab): Likewise.
* decl.c (gfc_match_import): Likewise.
(match_procedure_decl): Likewise.
(gfc_match_subroutine): Likewise.
(gfc_match_bind_c): Likewise.
(gfc_match_volatile): Likewise.
* trans-common.c (create_common): Likewise.
* error.c (gfc_diagnostic_starter): Likewise.
* trans-stmt.c (gfc_trans_sync): Likewise.
(gfc_trans_critical): Likewise.
(gfc_trans_simple_do): Likewise.
(gfc_trans_do): Likewise.
(gfc_trans_where_assign): Likewise.
* expr.c (gfc_is_simply_contiguous): Likewise.
* module.c (unquote_string): Likewise.
* trans.c (gfc_add_finalizer_call): Likewise.
* trans-types.c (gfc_init_kinds): Likewise.
* scanner.c (preprocessor_line): Likewise.
* gfortranspec.c (lang_specific_driver): Likewise.
* frontend-passes.c (create_var): Likewise.
(cfe_expr_0): Likewise.
* resolve.c (check_host_association): Likewise.
(gfc_resolve_code): Likewise.
(resolve_fl_derived0): Likewise.
(resolve_symbol): Likewise.
* f95-lang.c (poplevel): Likewise.
* trans-decl.c (create_main_function): Likewise.
* trans-io.c (transfer_expr): Likewise.
* arith.c (gfc_arith_divide): Likewise.
* parse.c (resolve_all_program_units): Likewise.
* check.c (gfc_check_rank): Likewise.
(gfc_check_sizeof): Likewise.
(is_c_interoperable): Likewise.
* dependency.c (gfc_dep_difference): Likewise.
* primary.c (gfc_match_rvalue): Likewise.
* trans-intrinsic.c (conv_intrinsic_system_clock): Likewise.
(conv_isocbinding_subroutine): Likewise.
* options.c (gfc_post_options): Likewise.
(gfc_handle_fpe_option): Likewise.
(gfc_get_option_string): Likewise.
* simplify.c (simplify_transformation_to_scalar): Likewise.
(gfc_simplify_spread): Likewise.

From-SVN: r215420

9 years agoia64.md: Remove constraints from define_split patterns.
Andreas Schwab [Sat, 20 Sep 2014 06:52:45 +0000 (06:52 +0000)]
ia64.md: Remove constraints from define_split patterns.

* config/ia64/ia64.md: Remove constraints from define_split
patterns.

From-SVN: r215419

9 years agoipa-utils.h (ipa_polymorphic_call_context): Turn into class; add ctors.
Jan Hubicka [Sat, 20 Sep 2014 06:22:58 +0000 (08:22 +0200)]
ipa-utils.h (ipa_polymorphic_call_context): Turn into class; add ctors.

* ipa-utils.h (ipa_polymorphic_call_context): Turn into class; add ctors.
(possible_polymorphic_call_targets, dump_possible_polymorphic_call_targets,
possible_polymorphic_call_target_p, possible_polymorphic_call_target_p): Simplify.
(get_dynamic_type): Remove.
* ipa-devirt.c (ipa_dummy_polymorphic_call_context): Remove.
(clear_speculation): Bring to ipa-deivrt.h
(get_class_context): Rename to ...
(ipa_polymorphic_call_context::restrict_to_inner_class): ... this one.
(contains_type_p): Update.
(get_dynamic_type): Rename to ...
ipa_polymorphic_call_context::get_dynamic_type(): ... this one.
(possible_polymorphic_call_targets): UPdate.
* tree-ssa-pre.c (eliminate_dom_walker::before_dom_children): Update.
* ipa-prop.c (ipa_analyze_call_uses): Update.

From-SVN: r215418

9 years agoipa-visibility.c (varpool_node::externally_visible_p): Do not privatize dynamic TLS...
Jan Hubicka [Sat, 20 Sep 2014 03:11:04 +0000 (05:11 +0200)]
ipa-visibility.c (varpool_node::externally_visible_p): Do not privatize dynamic TLS variables.

* ipa-visibility.c (varpool_node::externally_visible_p): Do not
privatize dynamic TLS variables.

From-SVN: r215417

9 years agodiagnostic.c (warning_n): New function.
Jan Hubicka [Sat, 20 Sep 2014 03:06:26 +0000 (05:06 +0200)]
diagnostic.c (warning_n): New function.

* diagnostic.c (warning_n): New function.
* diagnostic-core.h (warning_n): Declare.
* ipa-devirt.c (ipa_devirt): Handle singulars correctly;
output dynamic counts when available.

From-SVN: r215416

9 years agore PR tree-optimization/63255 (FAIL: gcc.dg/lto/ipareference2 c_lto_ipareference2_0...
Jan Hubicka [Sat, 20 Sep 2014 02:58:42 +0000 (04:58 +0200)]
re PR tree-optimization/63255 (FAIL: gcc.dg/lto/ipareference2 c_lto_ipareference2_0.o-c_lto_ipareference2_1.o execute  -O1 -flto -flto-partition=1to1 -fwhole-program)

PR tree-optimization/63255
* ipa.c (symbol_table::remove_unreachable_nodes): Fix ordering
issue in setting body_removed flag.

From-SVN: r215415

9 years agore PR c++/61392 (internal compiler error: in write_template_arg_literal, at cp/mangle...
Jason Merrill [Sat, 20 Sep 2014 00:55:14 +0000 (20:55 -0400)]
re PR c++/61392 (internal compiler error: in write_template_arg_literal, at cp/mangle.c:3072)

PR c++/61392
* mangle.c (write_expression): Use unresolved-name mangling for
DR850 case.

From-SVN: r215414

9 years agore PR c++/61465 (Bogus parameter set but not used warning in constructor initializati...
Jason Merrill [Sat, 20 Sep 2014 00:54:55 +0000 (20:54 -0400)]
re PR c++/61465 (Bogus parameter set but not used warning in constructor initialization list)

PR c++/61465
* call.c (convert_like_real) [ck_identity]: Call mark_rvalue_use
after pulling out an element from a CONSTRUCTOR.

From-SVN: r215413

9 years agoDaily bump.
GCC Administrator [Sat, 20 Sep 2014 00:16:42 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r215412

9 years agore PR c++/61825 (g++.dg/cpp0x/static_assert9.C FAILs)
Jan Hubicka [Fri, 19 Sep 2014 23:56:52 +0000 (01:56 +0200)]
re PR c++/61825 (g++.dg/cpp0x/static_assert9.C FAILs)

PR c++/61825
* c-family/c-common.c (handle_alias_ifunc_attribute): Check
that visibility change is possible
(handle_weakref_attribute): Likewise.
* cgraph.h (symtab_node): Add method get_create and
field refuse_visibility_changes.
(symtab_node::get_create): New method.
* fold-const.c (tree_single_nonzero_warnv_p): Use get_create.
* varasm.c (mark_weak): Verify that visibility change is
possible.

* gcc.dg/tree-ssa/nonzero-1.c: Require error to be output.

From-SVN: r215409

9 years agopredicates.md (fusion_gpr_mem_load): Move testing for base_reg_operand to be common...
Michael Meissner [Fri, 19 Sep 2014 19:36:57 +0000 (19:36 +0000)]
predicates.md (fusion_gpr_mem_load): Move testing for base_reg_operand to be common between LO_SUM and PLUS.

2014-09-19  Michael Meissner  <meissner@linux.vnet.ibm.com>

* config/rs6000/predicates.md (fusion_gpr_mem_load): Move testing
for base_reg_operand to be common between LO_SUM and PLUS.
(fusion_gpr_mem_combo): New predicate to match a fused address
that combines the addis and memory offset address.

* config/rs6000/rs6000-protos.h (fusion_gpr_load_p): Change
calling signature.
(emit_fusion_gpr_load): Likewise.

* config/rs6000/rs6000.c (fusion_gpr_load_p): Change calling
signature to pass each argument separately, rather than
using an operands array.  Rewrite the insns found by peephole2 to
be a single insn, rather than hoping the insns will still be
together when the peephole pass is done.  Drop being called via a
normal peephole.
(emit_fusion_gpr_load): Change calling signature to be called from
the fusion_gpr_load_<mode> insns with a combined memory address
instead of the peephole pass passing the addis and offset
separately.

* config/rs6000/rs6000.md (UNSPEC_FUSION_GPR): New unspec for GPR
fusion.
(power8 fusion peephole): Drop support for doing power8 via a
normal peephole that was created by the peephole2 pass.
(power8 fusion peephole2): Create a new insn with the fused
address, so that the fused operation is kept together after
register allocation is done.
(fusion_gpr_load_<mode>): Likewise.

From-SVN: r215404

9 years agore PR lto/63286 (FAIL: g++.dg/lto/20101014-2 cp_lto_20101014-2_0.o assemble, * after...
Jan Hubicka [Fri, 19 Sep 2014 18:54:23 +0000 (20:54 +0200)]
re PR lto/63286 (FAIL: g++.dg/lto/20101014-2 cp_lto_20101014-2_0.o assemble, * after r215196)

PR lto/63286
* tree.c (need_assembler_name_p): Do not mangle variadic types.

From-SVN: r215403

9 years agocompiler: Pass constant arguments directly to thunk functions.
Ian Lance Taylor [Fri, 19 Sep 2014 18:53:50 +0000 (18:53 +0000)]
compiler: Pass constant arguments directly to thunk functions.

From-SVN: r215402

9 years agoFix mcount test cases to only run on supported targets
Andi Kleen [Fri, 19 Sep 2014 17:09:10 +0000 (17:09 +0000)]
Fix mcount test cases to only run on supported targets

       * gcc.dg/pg-override.c: Only run on x86 Linux.
       * gcc.dg/pg.c: Dito.
       * gcc.target/i386/fentry-override.c: Exclude for PIC.
       * gcc.target/i386/fentry.c: Dito.

From-SVN: r215401

9 years agodg-extract-results.py (Prog.result_re): Include options in test name.
Segher Boessenkool [Fri, 19 Sep 2014 16:57:04 +0000 (18:57 +0200)]
dg-extract-results.py (Prog.result_re): Include options in test name.

2014-09-19  Segher Boessenkool  <segher@kernel.crashing.org>

* dg-extract-results.py (Prog.result_re): Include options in test name.

From-SVN: r215400

9 years agorecog.c (scratch_operand): Do not simply allow all hard registers: only allow those...
Segher Boessenkool [Fri, 19 Sep 2014 16:42:26 +0000 (18:42 +0200)]
recog.c (scratch_operand): Do not simply allow all hard registers: only allow those that are allocatable.

2014-09-19  Segher Boessenkool  <segher@kernel.crashing.org>

* recog.c (scratch_operand): Do not simply allow all hard registers:
only allow those that are allocatable.

From-SVN: r215399

9 years agocfgrtl.c [...]: Update comments and fix spacing to conform to coding style.
Felix Yang [Fri, 19 Sep 2014 16:28:42 +0000 (16:28 +0000)]
cfgrtl.c [...]: Update comments and fix spacing to conform to coding style.

        * cfgrtl.c ira.c ira-color.c ira-conflicts ira-lives.c: Update
        comments and fix spacing to conform to coding style.

From-SVN: r215398

9 years agoRe: [Patch] Teach genrecog/genoutput that scratch registers require write constraint...
James Greenhalgh [Fri, 19 Sep 2014 16:23:44 +0000 (16:23 +0000)]
Re: [Patch] Teach genrecog/genoutput that scratch registers require write constraint modifiers

gcc/

* genrecog.c (validate_pattern): Allow empty constraints in
a match_scratch.

From-SVN: r215397

9 years agodwarf2out.c (decl_ultimate_origin): Update comment.
Aldy Hernandez [Fri, 19 Sep 2014 16:02:21 +0000 (16:02 +0000)]
dwarf2out.c (decl_ultimate_origin): Update comment.

* dwarf2out.c (decl_ultimate_origin): Update comment.
* tree.c (block_ultimate_origin): Same.

From-SVN: r215396

9 years agors6000.c (rs6000_special_adjust_field_align_p): Update GCC version name to GCC 5.
Ulrich Weigand [Fri, 19 Sep 2014 15:49:21 +0000 (15:49 +0000)]
rs6000.c (rs6000_special_adjust_field_align_p): Update GCC version name to GCC 5.

* config/rs6000/rs6000.c (rs6000_special_adjust_field_align_p):
Update GCC version name to GCC 5.
(rs6000_function_arg_boundary): Likewise.
(rs6000_function_arg): Likewise.

From-SVN: r215395