platform/upstream/gcc.git
9 years agogo/build: cgo works on linux/arm64.
Ian Lance Taylor [Thu, 12 Mar 2015 17:05:22 +0000 (17:05 +0000)]
go/build: cgo works on linux/arm64.

From-SVN: r221398

9 years agoMakefile.am (GOLINK): Add GOCFLAGS.
Ian Lance Taylor [Thu, 12 Mar 2015 16:44:36 +0000 (16:44 +0000)]
Makefile.am (GOLINK): Add GOCFLAGS.

* Makefile.am (GOLINK): Add GOCFLAGS.
* Makefile.in: Rebuild.

From-SVN: r221397

9 years agore PR go/65404 (cgo tool on powerpc-linux-gnu maybe incomplete)
Ian Lance Taylor [Thu, 12 Mar 2015 16:41:28 +0000 (16:41 +0000)]
re PR go/65404 (cgo tool on powerpc-linux-gnu maybe incomplete)

PR go/65404
go/build: cgo works on linux/pcc.

From-SVN: r221396

9 years ago[PATCH]Remove xfail for wrapped target
Renlin Li [Thu, 12 Mar 2015 15:00:28 +0000 (15:00 +0000)]
[PATCH]Remove xfail for wrapped target

libstdc++-v3/

2015-03-12  Renlin Li  <renlin.li@arm.com>

* testsuite/27_io/ios_base/sync_with_stdio/1.cc: Remove xfail for
wrapped target.

From-SVN: r221393

9 years agoAdd missing bit to ChangeLog entry for the latest update
Olivier Hainque [Thu, 12 Mar 2015 14:34:25 +0000 (14:34 +0000)]
Add missing bit to ChangeLog entry for the latest update
in gcc/ada/gcc-interface/trans.c.

From-SVN: r221392

9 years agotrans.c (Attribute_to_gnu): On targets where a function symbol designates a function...
Olivier Hainque [Thu, 12 Mar 2015 14:24:48 +0000 (14:24 +0000)]
trans.c (Attribute_to_gnu): On targets where a function symbol designates a function descriptor...

2015-03-12  Olivier Hainque  <hainque@adacore.com>

* gcc-interface/trans.c (Attribute_to_gnu) <Code_Address case>:
On targets where a function symbol designates a function descriptor,
fetch the function code address from the descriptor.

From-SVN: r221391

9 years agoFix ChangeLog entries from previous commit
Kyrylo Tkachov [Thu, 12 Mar 2015 13:41:50 +0000 (13:41 +0000)]
Fix ChangeLog entries from previous commit

From-SVN: r221388

9 years ago[simplify-rtx] PR 65235: Calculate element size correctly when simplifying (vec_selec...
Kyrylo Tkachov [Thu, 12 Mar 2015 13:40:50 +0000 (13:40 +0000)]
[simplify-rtx] PR 65235: Calculate element size correctly when simplifying (vec_select (vec_concat (const_int) (...)) [...])

PR rtl-optimization 65235
* simplify-rtx.c (simplify_binary_operation_1, VEC_SELECT case):
When first element of vec_concat is const_int, calculate its size
using second element.

PR rtl-optimization 65235
* gcc.target/aarch64/pr65235_1.c: New test.

From-SVN: r221387

9 years agore PR ipa/65270 (issues with merging memory accesses from different code paths)
Richard Biener [Thu, 12 Mar 2015 13:02:42 +0000 (13:02 +0000)]
re PR ipa/65270 (issues with merging memory accesses from different code paths)

2015-03-12  Richard Biener  <rguenther@suse.de>

PR middle-end/65270
* fold-const.c (operand_equal_p): Fix ordering of resetting
OEP_ADDRESS_OF and checking for it in the [TARGET_]MEM_REF case.

From-SVN: r221386

9 years agoS/390: Hotpatching fixes.
Dominik Vogt [Thu, 12 Mar 2015 11:13:40 +0000 (11:13 +0000)]
S/390: Hotpatching fixes.

2015-03-02  Dominik Vogt  <vogt@linux.vnet.ibm.com>

    * config/s390/s390.c (s390_reorg): Move code to output nops after label
    to s390_reorg ().
    (s390_asm_output_function_label): Likewise.
    * config/s390/s390.c (s390_asm_output_function_label):
    Fix function label alignment with -mhtopatch.
    * config/s390/s390.md ("unspecv"): New values UNSPECV_NOP_2_BYTE,
    UNSPECV_NOP_4_BYTE and UNSPECV_NOP_6_BYTE
    ("nop_2_byte"): New define_insn.
    ("nop_4_byte"): Likewise.
    ("nop_6_byte"): Likewise.
    * doc/extend.texi (hotpatch): hotpatch attribute doc fixes.
    * doc/invoke.texi (-mhotpatch): -mhotpatch doc fixes.

2015-03-02  Dominik Vogt  <vogt@linux.vnet.ibm.com>

    * gcc.target/s390/hotpatch-21.c: New test for hotpatch alignment.
    * gcc.target/s390/hotpatch-22.c: Likewise.
    * gcc.target/s390/hotpatch-23.c: Likewise.
    * gcc.target/s390/hotpatch-24.c: Likewise.
    * gcc.target/s390/hotpatch-2.c: Also check hotpatch alignment.
    * gcc.target/s390/hotpatch-1.c: Update expected output.
    * gcc.target/s390/hotpatch-2.c: Likewise.
    * gcc.target/s390/hotpatch-3.c: Likewise.
    * gcc.target/s390/hotpatch-4.c: Likewise.
    * gcc.target/s390/hotpatch-5.c: Likewise.
    * gcc.target/s390/hotpatch-6.c: Likewise.
    * gcc.target/s390/hotpatch-7.c: Likewise.
    * gcc.target/s390/hotpatch-8.c: Likewise.
    * gcc.target/s390/hotpatch-9.c: Likewise.
    * gcc.target/s390/hotpatch-10.c: Likewise.
    * gcc.target/s390/hotpatch-11.c: Likewise.
    * gcc.target/s390/hotpatch-12.c: Likewise.
    * gcc.target/s390/hotpatch-13.c: Likewise.
    * gcc.target/s390/hotpatch-14.c: Likewise.
    * gcc.target/s390/hotpatch-15.c: Likewise.
    * gcc.target/s390/hotpatch-16.c: Likewise.
    * gcc.target/s390/hotpatch-17.c: Likewise.
    * gcc.target/s390/hotpatch-18.c: Likewise.
    * gcc.target/s390/hotpatch-19.c: Likewise.

From-SVN: r221381

9 years agore PR target/65103 ([i386] GOTOFF relocation is not propagated into address expression)
Ilya Enkovich [Thu, 12 Mar 2015 09:53:36 +0000 (09:53 +0000)]
re PR target/65103 ([i386] GOTOFF relocation is not propagated into address expression)

gcc/

PR target/65103
* config/i386/i386.c (ix86_address_cost): Fix cost of a PIC
register.

gcc/testsuite/

PR target/65103
* gcc.target/i386/pr65103-1.c: New.

From-SVN: r221380

9 years agore PR target/65044 (ICE: SIGSEGV in contains_struct_check with -fsanitize=address...
Ilya Enkovich [Thu, 12 Mar 2015 09:23:06 +0000 (09:23 +0000)]
re PR target/65044 (ICE: SIGSEGV in contains_struct_check with -fsanitize=address -fcheck-pointer-bounds)

gcc/

PR target/65044
* toplev.c (process_options): Restrict Pointer Bounds Checker
usage with Address Sanitizer.

gcc/testsuite/

PR target/65044
* gcc.target/i386/pr65044.c: New.

From-SVN: r221379

9 years agore PR other/65384 (Intel MPX does not support x32)
Ilya Enkovich [Thu, 12 Mar 2015 08:58:08 +0000 (08:58 +0000)]
re PR other/65384 (Intel MPX does not support x32)

libmpx/

       PR other/65384
       * configure.ac: Fix x32 test.
       * configure: Regenerate.

From-SVN: r221378

9 years agotree-cfg.c (gimple_split_block): Remove loop finding stmt to split on.
Richard Biener [Thu, 12 Mar 2015 08:48:32 +0000 (08:48 +0000)]
tree-cfg.c (gimple_split_block): Remove loop finding stmt to split on.

2015-03-12  Richard Biener  <rguenther@suse.de>

* tree-cfg.c (gimple_split_block): Remove loop finding stmt
to split on.
* omp-low.c (expand_omp_taskreg): Split block before removing
the stmt.
(expand_omp_target): Likewise.
* ubsan.c (ubsan_expand_null_ifn): Adjust stmt if we replaced it.
* tree-parloops.c (create_call_for_reduction_1): Pass a proper
stmt to split_block.

From-SVN: r221377

9 years agoRevert 'require nonpic target' for fuse-caller-save*.c
Tom de Vries [Thu, 12 Mar 2015 08:01:24 +0000 (08:01 +0000)]
Revert 'require nonpic target' for fuse-caller-save*.c

2015-03-12  Tom de Vries  <tom@codesourcery.com>

PR rtl-optimization/64895
* gcc.target/i386/fuse-caller-save-rec.c: Revert require nonpic target.
* gcc.target/i386/fuse-caller-save-xmm.c: Ditto.
* gcc.target/i386/fuse-caller-save.c: Ditto.

From-SVN: r221374

9 years agoAdd missing PR number
Tom de Vries [Thu, 12 Mar 2015 07:08:12 +0000 (07:08 +0000)]
Add missing PR number

From-SVN: r221373

9 years agoUse actual_call_used_reg_set to find conflicting regs
Tom de Vries [Thu, 12 Mar 2015 06:59:34 +0000 (06:59 +0000)]
Use actual_call_used_reg_set to find conflicting regs

2015-03-12  Tom de Vries  <tom@codesourcery.com>

* lra-lives.c (check_pseudos_live_through_calls): Use
actual_call_used_reg_set instead of call_used_reg_set, if available.

From-SVN: r221372

9 years ago* gcc.dg/ipa/pr63569.c: Fix template.
Jan Hubicka [Thu, 12 Mar 2015 03:48:59 +0000 (04:48 +0100)]
* gcc.dg/ipa/pr63569.c: Fix template.

From-SVN: r221371

9 years agopr64146.C: Require fpic support.
Sandra Loosemore [Thu, 12 Mar 2015 01:42:52 +0000 (21:42 -0400)]
pr64146.C: Require fpic support.

2015-03-11  Sandra Loosemore  <sandra@codesourcery.com>

gcc/testsuite/
* g++.dg/ipa/pr64146.C: Require fpic support.

From-SVN: r221370

9 years agoDaily bump.
GCC Administrator [Thu, 12 Mar 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r221369

9 years agocgraph.c (cgraph_node::release_body): Free function_in_decl_state.
Jan Hubicka [Thu, 12 Mar 2015 00:14:19 +0000 (01:14 +0100)]
cgraph.c (cgraph_node::release_body): Free function_in_decl_state.

* cgraph.c (cgraph_node::release_body): Free function_in_decl_state.
(cgraph_node::remove): Likewise.
(cgraph_node::get_untransformed_body): Likewise.
* varpool.c (varpool_node::remove): Likewise.
(varpool_node::get_constructor): Add sanity check.
* lto.c (read_cgraph_and_symbols): Do not do merging
at ltrans stage.

From-SVN: r221366

9 years agoinvoke.texi (-fgnu89-inline): Remove discussion about old GCC versions.
Sandra Loosemore [Wed, 11 Mar 2015 23:11:19 +0000 (19:11 -0400)]
invoke.texi (-fgnu89-inline): Remove discussion about old GCC versions.

2015-03-11  Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* doc/invoke.texi (-fgnu89-inline): Remove discussion about
old GCC versions.
(-fabi-compat-version): Likewise.
(-ffriend-injection): Likewise.
(-Wdeclaration-after-statement): Likewise.
(-fomit-frame-pointer): Likewise.
(-ftree-coalesce-inlined-vars): Likewise.
(-fvisibility=): Likewise.
* doc/extend.texi (Typeof): Likewise.
(Zero Length): Likewise.
(Escaped Newlines): Likewise.
(Compound Literals): Likewise.
(Function Attributes): Likewise.
(Label Attributes): Likewise.
(Type Attributes): Likewise.
(Function Names): Likewise.
(Other Builtins): Likewise.
(Function Specific Option Pragmas): Likewise.
(C++ Interface): Likewise.

From-SVN: r221364

9 years agolibgfortran LIBGFOR_MINIMAL enhancements.
Thomas Schwinge [Wed, 11 Mar 2015 21:42:56 +0000 (22:42 +0100)]
libgfortran LIBGFOR_MINIMAL enhancements.

Based on GCC trunk r220892, for nvptx-none:

                    === gfortran Summary ===

    # of expected passes            [-31320-]{+32117+}
    # of unexpected failures        [-7222-]{+6821+}
    # of expected failures          78
    # of unresolved testcases       [-6441-]{+6158+}
    # of untested testcases         [-432-]{+391+}
    # of unsupported tests          639

libgfortran/
* caf/single.c (caf_runtime_error): Revert 2014-11-28 changes.
* runtime/minimal.c (STRERR_MAXSZ): Don't define.
(runtime_error_at, sys_abort): Bring more in line with the
non-LIBGFOR_MINIMAL code.
(runtime_warning_at, internal_error): New functions.

From-SVN: r221363

9 years agoNo libstdc++ for nvptx.
Thomas Schwinge [Wed, 11 Mar 2015 21:42:50 +0000 (22:42 +0100)]
No libstdc++ for nvptx.

The C++ front end insists to link against libstdc++ -- which we don't build:

    $ < build-gcc/gcc/testsuite/g++/g++.log grep -o 'error opening [^[:cntrl:]]*' | sort | uniq -c
          2 error opening libasan.a
          2 error opening libssp.a
      12075 error opening libstdc++.a

Based on GCC trunk r220892:

                    === g++ Summary ===

    # of expected passes            [-63221-]{+68841+}
    # of unexpected failures        [-11751-]{+8764+}
    # of unexpected successes       6
    # of expected failures          [-246-]{+249+}
    # of unresolved testcases       [-5950-]{+3353+}
    # of unsupported tests          [-4160-]{+4143+}

gcc/
* config/nvptx/nvptx.h (LIBSTDCXX): Define to "gcc".

From-SVN: r221362

9 years agoPR 65200 Handle EPERM in addition to EACCES.
Janne Blomqvist [Wed, 11 Mar 2015 21:34:22 +0000 (23:34 +0200)]
PR 65200 Handle EPERM in addition to EACCES.

gcc/fortran ChangeLog:

2015-03-11  Janne Blomqvist  <jb@gcc.gnu.org>

PR libfortran/65200
* gfortran.texi: Document behavior when opening files without
explicit ACTION= specifier.

libgfortran ChangeLog:

2015-03-11  Janne Blomqvist  <jb@gcc.gnu.org>

PR libfortran/65200
* io/open.c (new_unit): Use gf_strerror rather than hardcoding
error messages for different errno values.
* io/unix.c (regular_file2): Handle EPERM in addition to EACCES.

gcc/testsuite ChangeLog:

2015-03-11  Janne Blomqvist  <jb@gcc.gnu.org>

PR libfortran/65200
* gfortran.dg/open_errors.f90: Update checks for iomsg string.
* gfortran.dg/open_new_segv.f90: Fix error message pattern.

From-SVN: r221361

9 years agore PR tree-optimization/65388 (Wrong comparison in same_succ_def::equal() tree-ssa...
Marek Polacek [Wed, 11 Mar 2015 20:36:56 +0000 (20:36 +0000)]
re PR tree-optimization/65388 (Wrong comparison in same_succ_def::equal() tree-ssa-tail-merge.c:590)

PR tree-optimization/65388
* tree-ssa-tail-merge.c (same_succ_def::equal): Fix typo in comparison.

From-SVN: r221359

9 years agoc-parser.c (c_parse_init): Don't call xstrdup on get_identifier argument.
Jakub Jelinek [Wed, 11 Mar 2015 19:51:55 +0000 (20:51 +0100)]
c-parser.c (c_parse_init): Don't call xstrdup on get_identifier argument.

* c-parser.c (c_parse_init): Don't call xstrdup on get_identifier
argument.

* c-common.c (c_common_nodes_and_builtins): Don't call xstrdup
on record_builtin_type argument.

From-SVN: r221358

9 years agono-asan-check-glob.c: Add -ffat-lto-objects to dg-options, fix up dg-skip-if.
Jakub Jelinek [Wed, 11 Mar 2015 19:49:56 +0000 (20:49 +0100)]
no-asan-check-glob.c: Add -ffat-lto-objects to dg-options, fix up dg-skip-if.

* c-c++-common/asan/no-asan-check-glob.c: Add -ffat-lto-objects
to dg-options, fix up dg-skip-if.

From-SVN: r221357

9 years agotsan_rtl_report.cc (ScopedReport::AddThread): Cherry pick upstream 224508 and 224755.
Bernd Edlinger [Wed, 11 Mar 2015 19:20:03 +0000 (19:20 +0000)]
tsan_rtl_report.cc (ScopedReport::AddThread): Cherry pick upstream 224508 and 224755.

2015-03-11  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        * tsan/tsan_rtl_report.cc (ScopedReport::AddThread): Cherry pick
        upstream 224508 and 224755.

From-SVN: r221356

9 years agore PR target/65296 ([avr] fix various issues with specs file generation)
Georg-Johann Lay [Wed, 11 Mar 2015 18:51:09 +0000 (18:51 +0000)]
re PR target/65296 ([avr] fix various issues with specs file generation)

gcc/
PR target/65296
* configure.ac [avr]: Check as for options -mrmw, --mlink-relax.
* configure: Regenerate.
* config.in: Regenerate.
* doc/invoke.texi (AVR Options) [-mrmw]: Document it.
[-mn-flash]: Document it.
[__AVR_ARCH__]: Document avrtiny.
* config/avr/gen-avr-mmcu-specs.c (config.h): Include it.
(*asm_relax): Only define spec if HAVE_AS_AVR_MLINK_RELAX_OPTION.
(*asm_rmw): Only define spec if HAVE_AS_AVR_MRMW_OPTION.
gcc/testsuite/
PR target/65296
* gcc.target/avr/tiny-memx: Use -mmcu instead of -march.
* gcc.target/avr/tiny-caller-save.c: Same.

From-SVN: r221355

9 years agoS/390: Doc: Add missing cpu values z196, zEC12.
Andreas Krebbel [Wed, 11 Mar 2015 18:35:44 +0000 (18:35 +0000)]
S/390: Doc: Add missing cpu values z196, zEC12.

* doc/invoke.texi: Add missing cpu values (z196, zEC12).

From-SVN: r221353

9 years agore PR target/65242 (ICE (in gen_add2_insn, at optabs.c:4761) on powerpc64le-linux...
Michael Meissner [Wed, 11 Mar 2015 16:57:41 +0000 (16:57 +0000)]
re PR target/65242 (ICE (in gen_add2_insn, at optabs.c:4761) on powerpc64le-linux-gnu)

[gcc]
2015-03-09  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/65242
* config/rs6000/rs6000.c (rs6000_preferred_reload_class): Do not
allow reloads of PLUS in floating point/VSX registers.

[gcc/testsuite]
2015-03-09  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/65242
* g++.dg/pr65242.C: New test.

From-SVN: r221350

9 years agoAdd missing definition crypto_sha256_fast, crypto_sha256_slow
Junmo Park [Wed, 11 Mar 2015 16:53:07 +0000 (16:53 +0000)]
Add missing definition crypto_sha256_fast, crypto_sha256_slow

2015-03-11  Junmo Park  <junmoz.park@samsung.com>

* config/arm/cortex-a57.md (cortex_a57_crypto_simple): Add crypto_sha256_fast.
(cortex_a57_crypto_complex): Add crypto_sha256_slow.

From-SVN: r221349

9 years agore PR tree-optimization/65310 (vectorizer uses wrong alignment)
Richard Biener [Wed, 11 Mar 2015 15:09:51 +0000 (15:09 +0000)]
re PR tree-optimization/65310 (vectorizer uses wrong alignment)

2015-03-11  Richard Biener  <rguenther@suse.de>

PR tree-optimization/65310
* tree-sra.c (build_ref_for_offset): Also preserve larger
alignment.

From-SVN: r221348

9 years agocp-gimplify.c (simple_empty_class_p): New.
Aldy Hernandez [Wed, 11 Mar 2015 15:01:37 +0000 (15:01 +0000)]
cp-gimplify.c (simple_empty_class_p): New.

* cp-gimplify.c (simple_empty_class_p): New.
* cp-gimplify.c (cp_gimplify_expr): Handle RETURN_EXPR.  Abstract
the code for empty class copies into simple_empty_class_p, and
adapt it to handle COMPOUND_EXPRs.

From-SVN: r221347

9 years agoasan.c (instrument_derefs): Disable instrumentation on asan-globals=0.
Marat Zakirov [Wed, 11 Mar 2015 07:39:20 +0000 (07:39 +0000)]
asan.c (instrument_derefs): Disable instrumentation on asan-globals=0.

2015-03-11  Marat Zakirov  <m.zakirov@samsung.com>

* asan.c (instrument_derefs): Disable instrumentation on asan-globals=0.
* c-c++-common/asan/no-asan-check-glob.c: New test.

From-SVN: r221345

9 years agoDaily bump.
GCC Administrator [Wed, 11 Mar 2015 00:16:13 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r221342

9 years agore PR c++/65370 (r213519 causes: error: redeclaration of 'template... may not have...
Paolo Carlini [Tue, 10 Mar 2015 22:20:41 +0000 (22:20 +0000)]
re PR c++/65370 (r213519  causes: error: redeclaration of 'template... may not have default arguments [-fpermissive])

/cp
2015-03-10  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/65370
* decl.c (duplicate_decls): Call check_redeclaration_no_default_args
only if the location of newdecl doesn't match the location of olddecl.

/testsuite
2015-03-10  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/65370
* g++.dg/other/default11.C: New.
* g++.dg/other/default12.C: Likewise.

From-SVN: r221337

9 years agore PR target/65368 (_bzhi_u32 intrinsic generates incorrect code when -O1 or above...
Jakub Jelinek [Tue, 10 Mar 2015 21:03:21 +0000 (22:03 +0100)]
re PR target/65368 (_bzhi_u32 intrinsic generates incorrect code when -O1 or above is specified and index is an immediate)

PR target/65368
* config/i386/i386.md (bmi2_bzhi_<mode>3): Removed define_insn,
new define_expand.
(*bmi2_bzhi_<mode>3, *bmi2_bzhi_<mode>3_1): New define_insns.

* gcc.target/i386/bmi2-bzhi-2.c: New test.

From-SVN: r221335

9 years agore PR fortran/65024 ([OOP] unlimited polymorphic pointer structure not built when...
Paul Thomas [Tue, 10 Mar 2015 19:39:05 +0000 (19:39 +0000)]
re PR fortran/65024 ([OOP] unlimited polymorphic pointer structure not built when it should be)

2015-03-10  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/65024
* trans-expr.c (gfc_conv_component_ref): If the component
backend declaration is missing and the derived type symbol is
available in the reference, call gfc_build_derived_type.

2015-03-10  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/65024
* gfortran.dg/unlimited_polymorphic_23.f90: New test

From-SVN: r221334

9 years agore PR c++/65127 (internal compiler error: tree check: expected tree that contains...
Jakub Jelinek [Tue, 10 Mar 2015 19:10:43 +0000 (20:10 +0100)]
re PR c++/65127 (internal compiler error: tree check: expected tree that contains 'decl minimal' structure, have 'addr_expr' in parsing_nsdmi, at cp/parser.c:18311)

PR c++/65127
* parser.c (parsing_nsdmi): Don't return true if current_class_ptr
is not a PARM_DECL.

* g++.dg/cpp0x/pr65127.C: New test.

From-SVN: r221332

9 years ago* gcc.dg/ipa/PR64550.c: Update template.
Jan Hubicka [Tue, 10 Mar 2015 18:43:44 +0000 (19:43 +0100)]
* gcc.dg/ipa/PR64550.c: Update template.

From-SVN: r221331

9 years agore PR libstdc++/64441 (A match_results returns an incorrect sub_match if the sub_matc...
Tim Shen [Tue, 10 Mar 2015 18:41:46 +0000 (18:41 +0000)]
re PR libstdc++/64441 (A match_results returns an incorrect sub_match if the sub_match::matched is false)

PR libstdc++/64441
* include/bits/regex.h (match_results<>::size,
match_results<>::position, match_results<>::str,
match_results<>::operator[], match_results<>::prefix,
match_results<>::suffix, match_results<>::end,
match_results<>::_M_resize, match_results<>::_M_unmatched_sub,
match_results<>::_M_prefix, match_results<>::_M_suffix): Remove
global __unmatched_sub. Add unmatched submatch as part of
match_results.
* include/bits/regex.tcc (__regex_algo_impl<>, regex_replace<>,
regex_iterator<>::operator++): Adjust to use match_results::_M_prefix.
* testsuite/28_regex/match_results/out_of_range_submatches.cc:
New testcases.

From-SVN: r221330

9 years agotrans.h (caf_sync_memory): New function decl tree.
Alessandro Fanfarillo [Tue, 10 Mar 2015 17:58:01 +0000 (11:58 -0600)]
trans.h (caf_sync_memory): New function decl tree.

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

        * trans.h (caf_sync_memory): New function decl tree.
        * trans-decl.c (gfc_build_builtin_function_decls): Define it.
        (create_main_function): Don't call sync_synchronize and leave
        it to the CAF library.
        * trans-stmt.c (gfc_trans_stop): Ditto.
        (gfc_trans_sync): Ditto; add call library call for sync memory.

        * gfortran.dg/coarray_sync_memory.f90: New.

        * caf/libcaf.h (_gfortran_caf_sync_memory): New prototype.
        * caf/single.c (_gfortran_caf_sync_memory): Implement.
        (_gfortran_caf_sync_all, _gfortran_caf_sync_image): Add
        __asm__ __volatile___ ("":::"memory").

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

9 years agore PR c++/65333 (error: incomplete type used in nested name specifier)
Jason Merrill [Tue, 10 Mar 2015 17:44:48 +0000 (13:44 -0400)]
re PR c++/65333 (error: incomplete type used in nested name specifier)

PR c++/65333
DR 1558
* pt.c (dependent_type_p_r): Check both class and alias template args.

From-SVN: r221328

9 years agoipa-icf.c (sem_function::equals_wpa): Move here some checks from ...
Jan Hubicka [Tue, 10 Mar 2015 17:21:34 +0000 (18:21 +0100)]
ipa-icf.c (sem_function::equals_wpa): Move here some checks from ...

* ipa-icf.c (sem_function::equals_wpa): Move here some checks
from ...
(sem_function::equals_wpa): ... here.

From-SVN: r221327

9 years agore PR bootstrap/25672 (cross build's libgcc picks up CFLAGS)
Aldy Hernandez [Tue, 10 Mar 2015 16:37:53 +0000 (16:37 +0000)]
re PR bootstrap/25672 (cross build's libgcc picks up CFLAGS)

PR bootstrap/25672
* configure.ac: Do not initialize CFLAGS_FOR_TARGET from CFLAGS if
cross-compiling.  Similarly for CXX_FOR_TARGET.
* configure: Regenerate.

From-SVN: r221326

9 years agore PR sanitizer/65367 (indefinite loop occurs with sanitize enabled and certain optim...
Marek Polacek [Tue, 10 Mar 2015 15:57:45 +0000 (15:57 +0000)]
re PR sanitizer/65367 (indefinite loop occurs with sanitize enabled and certain optimization options)

PR sanitizer/65367
* ubsan.c (ubsan_expand_objsize_ifn): Update GSI instead of GSI_ORIG
when only removing the statement.  Handle expanding UBSAN_OBJECT_SIZE
separately.

* c-c++-common/ubsan/pr65367.c: New test.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r221325

9 years agore PR target/65286 (When building on powerpc64le-unknown-linux-gnu, --disable-multili...
Jakub Jelinek [Tue, 10 Mar 2015 13:43:44 +0000 (14:43 +0100)]
re PR target/65286 (When building on powerpc64le-unknown-linux-gnu, --disable-multilib must be used)

PR target/65286
* config/rs6000/t-linux: For powerpc64* target set
MULTILIB_OSDIRNAMES instead of MULTIARCH_DIRNAME.

From-SVN: r221322

9 years agore PR ipa/44563 (GCC uses a lot of RAM when compiling a large numbers of functions)
Richard Biener [Tue, 10 Mar 2015 12:44:01 +0000 (12:44 +0000)]
re PR ipa/44563 (GCC uses a lot of RAM when compiling a large numbers of functions)

2015-03-09  Richard Biener  <rguenther@suse.de>

PR middle-end/44563
* tree-inline.c (copy_cfg_body): Skip block mapped to entry/exit
for redirect_all_calls.

From-SVN: r221321

9 years ago* gdbinit.in (pcfun): Define and document.
Marek Polacek [Tue, 10 Mar 2015 12:32:09 +0000 (12:32 +0000)]
* gdbinit.in (pcfun): Define and document.

From-SVN: r221320

9 years agoFix search path in intelmic-mkoffload for empty COLLECT_GCC.
Ilya Verbin [Tue, 10 Mar 2015 12:23:27 +0000 (12:23 +0000)]
Fix search path in intelmic-mkoffload for empty COLLECT_GCC.

gcc/
* config/i386/intelmic-mkoffload.c: Include intelmic-offload.h instead
of libgomp-plugin.h.
(find_target_compiler): Support a case when the path to gcc is specified
in the PATH env var, so COLLECT_GCC doesn't contain a path.
(generate_host_descr_file): Use GOMP_DEVICE_INTEL_MIC from
intelmic-offload.h instead of OFFLOAD_TARGET_TYPE_INTEL_MIC from
libgomp-plugin.h.
(main): Use GCC_INSTALL_NAME as target_driver_name.
* config/i386/t-intelmic (CFLAGS-mkoffload.o): Add GCC_INSTALL_NAME
define.
(mkoffload.o): Remove obsolete include path and defines.
(mkoffload$(exeext)): Use $(LINKER) instead of $(COMPILER).

From-SVN: r221319

9 years agore PR middle-end/63155 (memory hog)
Richard Biener [Tue, 10 Mar 2015 11:16:33 +0000 (11:16 +0000)]
re PR middle-end/63155 (memory hog)

2015-03-10  Richard Biener  <rguenther@suse.de>

PR middle-end/63155
* tree-ssa-coalesce.h (verify_ssa_coalescing): Declare.
* tree-ssa-coalesce.c: Include timevar.h.
(attempt_coalesce): Handle graph being NULL.
(coalesce_partitions): Call verify_ssa_coalescing if ENABLE_CHECKING.
Split out abnormal coalescing to ...
(perform_abnormal_coalescing): ... this function.
(coalesce_ssa_name): Perform abnormal coalescing without computing
live/conflict.
(verify_ssa_coalescing_worker): New function.
(verify_ssa_coalescing): Likewise.

From-SVN: r221318

9 years agoTypo
Georg-Johann Lay [Tue, 10 Mar 2015 09:56:07 +0000 (09:56 +0000)]
Typo

From-SVN: r221317

9 years agore PR target/65296 ([avr] fix various issues with specs file generation)
Georg-Johann Lay [Tue, 10 Mar 2015 09:50:41 +0000 (09:50 +0000)]
re PR target/65296 ([avr] fix various issues with specs file generation)

PR target/65296
* config.gcc (extra_options) [avr]: Remove.
(extra_gcc_objs) [avr]: Use driver-avr.o, avr-devices.o.
(tm_file) [avr]: Add avr/specs.h after avr/avr.h.
(tm_defines) [avr-*-rtems*]: Add WITH_RTEMS.
* config/avr/avr.opt (config/avr/avr-arch.h): Remove include.
(-mmcu=): Add Var and MissingArgError properties.
(-march=): Remove.
* config/avr/genmultilib.awk: Use -mmcu= instead of -march=.
* config/avr/t-multilib: Regenerate.
* config/avr/specs.h: New file.
* config/avr/driver-avr.c: New file.
* config/avr/genopt.sh: Remove file.
* config/avr/avr-tables.opt: Remove file.
* config/avr/predicates.md (avr_current_arch): Rename to avr_arch.
* config/avr/avr-c.c: Same.
* avr-arch.h: Same.
(avr_current_device): Remove proto.
* config/avr/avr.h (avr_current_arch): Rename to avr_arch.
(AVR_HAVE_8BIT_SP): Don't depend on avr_current_device.
(EXTRA_SPEC_FUNCTIONS): Define.
(avr_devicespecs_file): New specs function proto.
(DRIVER_SELF_SPECS): Use device-specs-file spec function.
* config/avr/avr.c (avr_current_arch): Rename to avr_arch.
(avr_current_device): Remove definition and usage.\a
(avr_set_core_architecture): New static function.
(avr_option_override): Use it.
* config/avr/avr-devices.c (diagnostic.h, avr-arch.h): Include them.
(mcu_name): New static array.
(comparator, avr_archs_str, avr_mcus_str): New static functions.
(avr_inform_devices, avr_inform_core_architectures): New functions.
* config/avr/gen-avr-mmcu-specs.c (avr-arch.h, specs.h): Include.
(avrlibc.h) [WITH_AVRLIBC]: Include.
(../rtems.h, rtems.h) [WITH_RTEMS]: Include.
(print_mcu): Rewrite from scratch.
* config/avr/avrlibc.h (LIB_SPEC, LIBGCC_SPEC, STARTFILE_SPEC):
Forward to avr-specific specs defined in device-specs file.
* config/avr/t-avr (driver-avr.o): New rule.
(avr-devices.o): Depend on avr-arch.h.
(avr-mcus): No more depend on avr-tables.opt.
(avr-tables.opt): Remove rule.
(install-device-specs): Use INSTALL_DATA, not INSTALL_PROGRAM.

From-SVN: r221316

9 years agompx-dg.exp (mpx_link_flags): Set path to wrappers library.
Ilya Enkovich [Tue, 10 Mar 2015 09:48:51 +0000 (09:48 +0000)]
mpx-dg.exp (mpx_link_flags): Set path to wrappers library.

* lib/mpx-dg.exp (mpx_link_flags): Set path to wrappers library.
* gcc.target/i386/mpx/calloc-1-lbv.c: New.
* gcc.target/i386/mpx/calloc-1-ubv.c: New.
* gcc.target/i386/mpx/calloc-1-nov.c: New.
* gcc.target/i386/mpx/malloc-1-lbv.c: New.
* gcc.target/i386/mpx/malloc-1-nov.c: New.
* gcc.target/i386/mpx/malloc-1-ubv.c: New.
* gcc.target/i386/mpx/realloc-1-lbv.c: New.
* gcc.target/i386/mpx/realloc-1-nov.c: New.
* gcc.target/i386/mpx/realloc-1-ubv.c: New.
* gcc.target/i386/mpx/realloc-2-lbv.c: New.
* gcc.target/i386/mpx/realloc-2-nov.c: New.
* gcc.target/i386/mpx/realloc-2-ubv.c: New.

From-SVN: r221315

9 years agoc.opt (fchkp-use-wrappers): New.
Ilya Enkovich [Tue, 10 Mar 2015 09:46:11 +0000 (09:46 +0000)]
c.opt (fchkp-use-wrappers): New.

* c-family/c.opt (fchkp-use-wrappers): New.
* ipa-chkp.c (CHKP_WRAPPER_SYMBOL_PREFIX): New.
(chkp_wrap_function): New.
(chkp_build_instrumented_fndecl): Support wrapped
functions.
* doc/invoke.texi (-fcheck-pointer-bounds): New.
(-fchkp-check-incomplete-type): New.
(-fchkp-first-field-has-own-bounds): New.
(-fchkp-narrow-bounds): New.
(-fchkp-narrow-to-innermost-array): New.
(-fchkp-optimize): New.
(-fchkp-use-fast-string-functions): New.
(-fchkp-use-nochk-string-functions): New.
(-fchkp-use-static-bounds): New.
(-fchkp-use-static-const-bounds): New.
(-fchkp-treat-zero-dynamic-size-as-infinite): New.
(-fchkp-check-read): New.
(-fchkp-check-write): New.
(-fchkp-store-bounds): New.
(-fchkp-instrument-calls): New.
(-fchkp-instrument-marked-only): New.
(-fchkp-use-wrappers): New.
(-static-libmpx): New.
(-static-libmpxwrappers): New.

From-SVN: r221314

9 years agolinux-common.h (LIBMPX_WRAPPERSSPEC): New.
Ilya Enkovich [Tue, 10 Mar 2015 09:43:24 +0000 (09:43 +0000)]
linux-common.h (LIBMPX_WRAPPERSSPEC): New.

gcc/

* config/i386/linux-common.h (LIBMPX_WRAPPERSSPEC): New.
(CHKP_SPEC): Add wrappers library.
* c-family/c.opt (static-libmpxwrappers): New.

libmpx/

* Makefile.am (SUBDIRS): Add mpxwrap when used
AS supports MPX.
(MAKEOVERRIDES): New.
* Makefile.in: Regenerate.
* configure.ac: Check AS supports MPX.  Add
mpxintr/Makefile to config files.
* configure: Regenerate.
* mpxwrap/Makefile.am: New.
* mpxwrap/Makefile.in: New.
* mpxwrap/libtool-version: New.
* mpxwrap/mpx_wrappers.cc: New.
* mpxwrap/libmpxwrappers.map: New.

From-SVN: r221313

9 years agompx-dg.exp (mpx_link_flags): New.
Ilya Enkovich [Tue, 10 Mar 2015 09:39:59 +0000 (09:39 +0000)]
mpx-dg.exp (mpx_link_flags): New.

gcc/testsuites/

* gcc/testsuite/lib/mpx-dg.exp (mpx_link_flags): New.
(mpx_init): New.
(mpx_finish): New.
* gcc.target/i386/mpx/alloca-1-lbv.c: New.
* gcc.target/i386/mpx/alloca-1-nov.c: New.
* gcc.target/i386/mpx/alloca-1-ubv.c: New.
* gcc.target/i386/mpx/arg-addr-1-lbv.c: New.
* gcc.target/i386/mpx/arg-addr-1-nov.c: New.
* gcc.target/i386/mpx/arg-addr-1-ubv.c: New.
* gcc.target/i386/mpx/bitfields-1-lbv.c: New.
* gcc.target/i386/mpx/bitfields-1-nov.c: New.
* gcc.target/i386/mpx/bitfields-1-ubv.c: New.
* gcc.target/i386/mpx/builtin-bnd-chk-ptr-bounds-1-lbv.c: New.
* gcc.target/i386/mpx/builtin-bnd-chk-ptr-bounds-1-nov.c: New.
* gcc.target/i386/mpx/builtin-bnd-chk-ptr-bounds-1-ubv.c: New.
* gcc.target/i386/mpx/builtin-bnd-chk-ptr-bounds-2.c: New.
* gcc.target/i386/mpx/builtin-bnd-chk-ptr-lbounds-1-lbv.c: New.
* gcc.target/i386/mpx/builtin-bnd-chk-ptr-lbounds-1-nov.c: New.
* gcc.target/i386/mpx/builtin-bnd-chk-ptr-lbounds-2.c: New.
* gcc.target/i386/mpx/builtin-bnd-chk-ptr-ubounds-1-nov.c: New.
* gcc.target/i386/mpx/builtin-bnd-chk-ptr-ubounds-1-ubv.c: New.
* gcc.target/i386/mpx/builtin-bnd-chk-ptr-ubounds-2.c: New.
* gcc.target/i386/mpx/builtin-bnd-copy-ptr-bounds-1.c: New.
* gcc.target/i386/mpx/builtin-bnd-copy-ptr-bounds-2-lbv.c: New.
* gcc.target/i386/mpx/builtin-bnd-copy-ptr-bounds-2-nov.c: New.
* gcc.target/i386/mpx/builtin-bnd-copy-ptr-bounds-2-ubv.c: New.
* gcc.target/i386/mpx/builtin-bnd-copy-ptr-bounds-3.c: New.
* gcc.target/i386/mpx/builtin-bnd-get-ptr-lbound-1.c: New.
* gcc.target/i386/mpx/builtin-bnd-get-ptr-lbound-2.c: New.
* gcc.target/i386/mpx/builtin-bnd-get-ptr-ubound-1.c: New.
* gcc.target/i386/mpx/builtin-bnd-get-ptr-ubound-2.c: New.
* gcc.target/i386/mpx/builtin-bnd-init-ptr-bounds-1.c: New.
* gcc.target/i386/mpx/builtin-bnd-init-ptr-bounds-2-nov.c: New.
* gcc.target/i386/mpx/builtin-bnd-init-ptr-bounds-3.c: New.
* gcc.target/i386/mpx/builtin-bnd-narrow-ptr-bounds-1.c: New.
* gcc.target/i386/mpx/builtin-bnd-narrow-ptr-bounds-2-lbv.c: New.
* gcc.target/i386/mpx/builtin-bnd-narrow-ptr-bounds-2-nov.c: New.
* gcc.target/i386/mpx/builtin-bnd-narrow-ptr-bounds-2-ubv.c: New.
* gcc.target/i386/mpx/builtin-bnd-narrow-ptr-bounds-3-lbv.c: New.
* gcc.target/i386/mpx/builtin-bnd-narrow-ptr-bounds-3-nov.c: New.
* gcc.target/i386/mpx/builtin-bnd-narrow-ptr-bounds-3-ubv.c: New.
* gcc.target/i386/mpx/builtin-bnd-narrow-ptr-bounds-4.c: New.
* gcc.target/i386/mpx/builtin-bnd-null-ptr-bounds-1-bbv.c: New.
* gcc.target/i386/mpx/builtin-bnd-set-ptr-bounds-1.c: New.
* gcc.target/i386/mpx/builtin-bnd-set-ptr-bounds-2-lbv.c: New.
* gcc.target/i386/mpx/builtin-bnd-set-ptr-bounds-2-nov.c: New.
* gcc.target/i386/mpx/builtin-bnd-set-ptr-bounds-2-ubv.c: New.
* gcc.target/i386/mpx/builtin-bnd-set-ptr-bounds-3.c: New.
* gcc.target/i386/mpx/builtin-bnd-store-ptr-bounds-1-lbv.c: New.
* gcc.target/i386/mpx/builtin-bnd-store-ptr-bounds-1-nov.c: New.
* gcc.target/i386/mpx/builtin-bnd-store-ptr-bounds-1-ubv.c: New.
* gcc.target/i386/mpx/builtin-bnd-store-ptr-bounds-2.c: New.
* gcc.target/i386/mpx/fastcall-1-lbv.c: New.
* gcc.target/i386/mpx/fastcall-1-nov.c: New.
* gcc.target/i386/mpx/fastcall-1-ubv.c: New.
* gcc.target/i386/mpx/fastcall-2-lbv.c: New.
* gcc.target/i386/mpx/fastcall-2-nov.c: New.
* gcc.target/i386/mpx/fastcall-2-ubv.c: New.
* gcc.target/i386/mpx/field-addr-1-lbv.c: New.
* gcc.target/i386/mpx/field-addr-1-nov.c: New.
* gcc.target/i386/mpx/field-addr-1-ubv.c: New.
* gcc.target/i386/mpx/field-addr-10-lbv.c: New.
* gcc.target/i386/mpx/field-addr-10-nov.c: New.
* gcc.target/i386/mpx/field-addr-10-ubv.c: New.
* gcc.target/i386/mpx/field-addr-2-lbv.c: New.
* gcc.target/i386/mpx/field-addr-2-nov.c: New.
* gcc.target/i386/mpx/field-addr-2-ubv.c: New.
* gcc.target/i386/mpx/field-addr-3-lbv.c: New.
* gcc.target/i386/mpx/field-addr-3-nov.c: New.
* gcc.target/i386/mpx/field-addr-3-ubv.c: New.
* gcc.target/i386/mpx/field-addr-4-lbv.c: New.
* gcc.target/i386/mpx/field-addr-4-nov.c: New.
* gcc.target/i386/mpx/field-addr-4-ubv.c: New.
* gcc.target/i386/mpx/field-addr-5-lbv.c: New.
* gcc.target/i386/mpx/field-addr-5-nov.c: New.
* gcc.target/i386/mpx/field-addr-5-ubv.c: New.
* gcc.target/i386/mpx/field-addr-6-lbv.c: New.
* gcc.target/i386/mpx/field-addr-6-nov.c: New.
* gcc.target/i386/mpx/field-addr-6-ubv.c: New.
* gcc.target/i386/mpx/field-addr-7-lbv.c: New.
* gcc.target/i386/mpx/field-addr-7-nov.c: New.
* gcc.target/i386/mpx/field-addr-7-ubv.c: New.
* gcc.target/i386/mpx/field-addr-8-lbv.c: New.
* gcc.target/i386/mpx/field-addr-8-nov.c: New.
* gcc.target/i386/mpx/field-addr-8-ubv.c: New.
* gcc.target/i386/mpx/field-addr-9-lbv.c: New.
* gcc.target/i386/mpx/field-addr-9-nov.c: New.
* gcc.target/i386/mpx/field-addr-9-ubv.c: New.
* gcc.target/i386/mpx/frame-address-1-nov.c: New.
* gcc.target/i386/mpx/hard-reg-1-nov.c: New.
* gcc.target/i386/mpx/if-stmt-1-lbv.c: New.
* gcc.target/i386/mpx/if-stmt-1-nov.c: New.
* gcc.target/i386/mpx/if-stmt-1-ubv.c: New.
* gcc.target/i386/mpx/if-stmt-2-lbv.c: New.
* gcc.target/i386/mpx/if-stmt-2-nov.c: New.
* gcc.target/i386/mpx/if-stmt-2-ubv.c: New.
* gcc.target/i386/mpx/label-address-1.c: New.
* gcc.target/i386/mpx/legacy-1-nov.c: New.
* gcc.target/i386/mpx/macro.c: New.
* gcc.target/i386/mpx/mpx-check.h: New.
* gcc.target/i386/mpx/mpx.exp: New.
* gcc.target/i386/mpx/nested-function-1-lbv.c: New.
* gcc.target/i386/mpx/nested-function-1-nov.c: New.
* gcc.target/i386/mpx/nested-function-1-ubv.c: New.
* gcc.target/i386/mpx/pointer-arg-1-lbv.c: New.
* gcc.target/i386/mpx/pointer-arg-1-nov.c: New.
* gcc.target/i386/mpx/pointer-arg-1-ubv.c: New.
* gcc.target/i386/mpx/pointer-arg-2-lbv.c: New.
* gcc.target/i386/mpx/pointer-arg-2-nov.c: New.
* gcc.target/i386/mpx/pointer-arg-2-ubv.c: New.
* gcc.target/i386/mpx/pointer-arg-3-lbv.c: New.
* gcc.target/i386/mpx/pointer-arg-3-nov.c: New.
* gcc.target/i386/mpx/pointer-arg-3-ubv.c: New.
* gcc.target/i386/mpx/pointer-arg-4-lbv.c: New.
* gcc.target/i386/mpx/pointer-arg-4-nov.c: New.
* gcc.target/i386/mpx/pointer-arg-4-ubv.c: New.
* gcc.target/i386/mpx/pointer-arg-5-lbv.c: New.
* gcc.target/i386/mpx/pointer-arg-5-nov.c: New.
* gcc.target/i386/mpx/pointer-arg-5-ubv.c: New.
* gcc.target/i386/mpx/pointer-store-1-lbv.c: New.
* gcc.target/i386/mpx/pointer-store-1-nov.c: New.
* gcc.target/i386/mpx/pointer-store-1-ubv.c: New.
* gcc.target/i386/mpx/reference-1-lbv.c: New.
* gcc.target/i386/mpx/reference-1-nov.c: New.
* gcc.target/i386/mpx/reference-1-ubv.c: New.
* gcc.target/i386/mpx/reference-2-lbv.c: New.
* gcc.target/i386/mpx/reference-2-nov.c: New.
* gcc.target/i386/mpx/reference-2-ubv.c: New.
* gcc.target/i386/mpx/reference-3-lbv.c: New.
* gcc.target/i386/mpx/reference-3-nov.c: New.
* gcc.target/i386/mpx/reference-3-ubv.c: New.
* gcc.target/i386/mpx/reference-4-lbv.c: New.
* gcc.target/i386/mpx/reference-4-nov.c: New.
* gcc.target/i386/mpx/reference-4-ubv.c: New.
* gcc.target/i386/mpx/return-pointer-1-lbv.c: New.
* gcc.target/i386/mpx/return-pointer-1-nov.c: New.
* gcc.target/i386/mpx/return-pointer-1-ubv.c: New.
* gcc.target/i386/mpx/return-struct-1-lbv.c: New.
* gcc.target/i386/mpx/return-struct-1-nov.c: New.
* gcc.target/i386/mpx/return-struct-1-ubv.c: New.
* gcc.target/i386/mpx/return-struct-2-lbv.c: New.
* gcc.target/i386/mpx/return-struct-2-nov.c: New.
* gcc.target/i386/mpx/return-struct-2-ubv.c: New.
* gcc.target/i386/mpx/return-struct-3-lbv.c: New.
* gcc.target/i386/mpx/return-struct-3-nov.c: New.
* gcc.target/i386/mpx/return-struct-3-ubv.c: New.
* gcc.target/i386/mpx/return-struct-4-lbv.c: New.
* gcc.target/i386/mpx/return-struct-4-nov.c: New.
* gcc.target/i386/mpx/return-struct-4-ubv.c: New.
* gcc.target/i386/mpx/return-struct-5-lbv.c: New.
* gcc.target/i386/mpx/return-struct-5-nov.c: New.
* gcc.target/i386/mpx/return-struct-5-ubv.c: New.
* gcc.target/i386/mpx/return-struct-6-lbv.c: New.
* gcc.target/i386/mpx/return-struct-6-nov.c: New.
* gcc.target/i386/mpx/return-struct-6-ubv.c: New.
* gcc.target/i386/mpx/sincos-1-nov.c: New.
* gcc.target/i386/mpx/static-array-1-lbv.c: New.
* gcc.target/i386/mpx/static-array-1-nov.c: New.
* gcc.target/i386/mpx/static-array-1-ubv.c: New.
* gcc.target/i386/mpx/static-init-1-lbv.c: New.
* gcc.target/i386/mpx/static-init-1-nov.c: New.
* gcc.target/i386/mpx/static-init-1-ubv.c: New.
* gcc.target/i386/mpx/static-init-2-lbv.c: New.
* gcc.target/i386/mpx/static-init-2-nov.c: New.
* gcc.target/i386/mpx/static-init-2-ubv.c: New.
* gcc.target/i386/mpx/static-init-3-lbv.c: New.
* gcc.target/i386/mpx/static-init-3-nov.c: New.
* gcc.target/i386/mpx/static-init-3-ubv.c: New.
* gcc.target/i386/mpx/static-init-4-lbv.c: New.
* gcc.target/i386/mpx/static-init-4-nov.c: New.
* gcc.target/i386/mpx/static-init-4-ubv.c: New.
* gcc.target/i386/mpx/static-init-5-lbv.c: New.
* gcc.target/i386/mpx/static-init-5-nov.c: New.
* gcc.target/i386/mpx/static-init-5-ubv.c: New.
* gcc.target/i386/mpx/static-init-6-lbv.c: New.
* gcc.target/i386/mpx/static-init-6-nov.c: New.
* gcc.target/i386/mpx/static-init-6-ubv.c: New.
* gcc.target/i386/mpx/static-string-1-lbv.c: New.
* gcc.target/i386/mpx/static-string-1-nov.c: New.
* gcc.target/i386/mpx/static-string-1-ubv.c: New.
* gcc.target/i386/mpx/struct-arg-1-lbv.c: New.
* gcc.target/i386/mpx/struct-arg-1-nov.c: New.
* gcc.target/i386/mpx/struct-arg-1-ubv.c: New.
* gcc.target/i386/mpx/struct-arg-10-lbv.c: New.
* gcc.target/i386/mpx/struct-arg-10-nov.c: New.
* gcc.target/i386/mpx/struct-arg-10-ubv.c: New.
* gcc.target/i386/mpx/struct-arg-2-lbv.c: New.
* gcc.target/i386/mpx/struct-arg-2-nov.c: New.
* gcc.target/i386/mpx/struct-arg-2-ubv.c: New.
* gcc.target/i386/mpx/struct-arg-3-lbv.c: New.
* gcc.target/i386/mpx/struct-arg-3-nov.c: New.
* gcc.target/i386/mpx/struct-arg-3-ubv.c: New.
* gcc.target/i386/mpx/struct-arg-4-lbv.c: New.
* gcc.target/i386/mpx/struct-arg-4-nov.c: New.
* gcc.target/i386/mpx/struct-arg-4-ubv.c: New.
* gcc.target/i386/mpx/struct-arg-5-lbv.c: New.
* gcc.target/i386/mpx/struct-arg-5-nov.c: New.
* gcc.target/i386/mpx/struct-arg-5-ubv.c: New.
* gcc.target/i386/mpx/struct-arg-6-lbv.c: New.
* gcc.target/i386/mpx/struct-arg-6-nov.c: New.
* gcc.target/i386/mpx/struct-arg-6-ubv.c: New.
* gcc.target/i386/mpx/struct-arg-7-lbv.c: New.
* gcc.target/i386/mpx/struct-arg-7-nov.c: New.
* gcc.target/i386/mpx/struct-arg-7-ubv.c: New.
* gcc.target/i386/mpx/struct-arg-8-lbv.c: New.
* gcc.target/i386/mpx/struct-arg-8-nov.c: New.
* gcc.target/i386/mpx/struct-arg-8-ubv.c: New.
* gcc.target/i386/mpx/struct-arg-9-lbv.c: New.
* gcc.target/i386/mpx/struct-arg-9-nov.c: New.
* gcc.target/i386/mpx/struct-arg-9-ubv.c: New.
* gcc.target/i386/mpx/struct-copy-1-lbv.c: New.
* gcc.target/i386/mpx/struct-copy-1-nov.c: New.
* gcc.target/i386/mpx/struct-copy-1-ubv.c: New.
* gcc.target/i386/mpx/struct-copy-2-lbv.c: New.
* gcc.target/i386/mpx/struct-copy-2-nov.c: New.
* gcc.target/i386/mpx/struct-copy-2-ubv.c: New.
* gcc.target/i386/mpx/thread-local-var-1-lbv.c: New.
* gcc.target/i386/mpx/thread-local-var-1-nov.c: New.
* gcc.target/i386/mpx/thread-local-var-1-ubv.c: New.
* gcc.target/i386/mpx/union-arg-1-lbv.c: New.
* gcc.target/i386/mpx/union-arg-1-nov.c: New.
* gcc.target/i386/mpx/union-arg-1-ubv.c: New.
* gcc.target/i386/mpx/va-arg-pack-1-lbv.c: New.
* gcc.target/i386/mpx/va-arg-pack-1-nov.c: New.
* gcc.target/i386/mpx/va-arg-pack-1-ubv.c: New.
* gcc.target/i386/mpx/va-arg-pack-2-lbv.c: New.
* gcc.target/i386/mpx/va-arg-pack-2-nov.c: New.
* gcc.target/i386/mpx/va-arg-pack-2-ubv.c: New.
* gcc.target/i386/mpx/vararg-1-lbv.c: New.
* gcc.target/i386/mpx/vararg-1-nov.c: New.
* gcc.target/i386/mpx/vararg-1-ubv.c: New.
* gcc.target/i386/mpx/vararg-2-lbv.c: New.
* gcc.target/i386/mpx/vararg-2-nov.c: New.
* gcc.target/i386/mpx/vararg-2-ubv.c: New.
* gcc.target/i386/mpx/vararg-3-lbv.c: New.
* gcc.target/i386/mpx/vararg-3-nov.c: New.
* gcc.target/i386/mpx/vararg-3-ubv.c: New.
* gcc.target/i386/mpx/vararg-4-lbv.c: New.
* gcc.target/i386/mpx/vararg-4-nov.c: New.
* gcc.target/i386/mpx/vararg-4-ubv.c: New.
* gcc.target/i386/mpx/vararg-5-lbv.c: New.
* gcc.target/i386/mpx/vararg-5-nov.c: New.
* gcc.target/i386/mpx/vararg-5-ubv.c: New.
* gcc.target/i386/mpx/vararg-6-lbv.c: New.
* gcc.target/i386/mpx/vararg-6-nov.c: New.
* gcc.target/i386/mpx/vararg-6-ubv.c: New.
* gcc.target/i386/mpx/vararg-7-lbv.c: New.
* gcc.target/i386/mpx/vararg-7-nov.c: New.
* gcc.target/i386/mpx/vararg-7-ubv.c: New.
* gcc.target/i386/mpx/vararg-8-lbv.c: New.
* gcc.target/i386/mpx/vararg-8-nov.c: New.
* gcc.target/i386/mpx/vararg-8-ubv.c: New.
* gcc.target/i386/mpx/vla-1-lbv.c: New.
* gcc.target/i386/mpx/vla-1-nov.c: New.
* gcc.target/i386/mpx/vla-1-ubv.c: New.
* gcc.target/i386/mpx/vla-2-lbv.c: New.
* gcc.target/i386/mpx/vla-2-nov.c: New.
* gcc.target/i386/mpx/vla-2-ubv.c: New.

From-SVN: r221312

9 years agoMakefile.def: Add libmpx.
Ilya Enkovich [Tue, 10 Mar 2015 09:37:41 +0000 (09:37 +0000)]
Makefile.def: Add libmpx.

* Makefile.def: Add libmpx.
* configure.ac: Add libmpx.
* Makefile.in: Regenerate.
* configure: Regenerate.

gcc/

* config/i386/linux-common.h (LIBMPX_LIBS): New.
(LIBMPX_SPEC): New.
(CHKP_SPEC): New.
* gcc.c (CHKP_SPEC): New.
(LINK_COMMAND_SPEC): Add CHKP_SPEC.
* c-family/c.opt (static-libmpx): New.

libmpx/

Initial commit.

From-SVN: r221311

9 years ago[Patch testsuite] Further reduce the alignment in gcc.dg/vect/pr65310.c
James Greenhalgh [Tue, 10 Mar 2015 09:29:04 +0000 (09:29 +0000)]
[Patch testsuite] Further reduce the alignment in gcc.dg/vect/pr65310.c

gcc/testsuite/

* gcc.dg/vect/pr65310.c (c): Reduce alignment to 4-bytes.

From-SVN: r221310

9 years agopr54680.c: Add -fno-ipa-icf option.
Oleg Endo [Tue, 10 Mar 2015 08:53:05 +0000 (08:53 +0000)]
pr54680.c: Add -fno-ipa-icf option.

gcc/testsuite:
* gcc.target/sh/pr54680.c: Add -fno-ipa-icf option.

From-SVN: r221309

9 years agore PR ipa/44563 (GCC uses a lot of RAM when compiling a large numbers of functions)
Richard Biener [Tue, 10 Mar 2015 08:25:31 +0000 (08:25 +0000)]
re PR ipa/44563 (GCC uses a lot of RAM when compiling a large numbers of functions)

2015-03-10  Richard Biener  <rguenther@suse.de>

PR middle-end/44563
* cgraph.h (struct cgraph_edge_hasher): Add hash overload
for compare_type.
* cgraph.c (cgraph_edge_hasher::hash): Inline htab_hash_pointer.
(cgraph_update_edge_in_call_site_hash): Use cgraph_edge_hasher::hash.
(cgraph_add_edge_to_call_site_hash): Likewise.
(cgraph_node::get_edge): Likewise.
(cgraph_edge::set_call_stmt): Likewise.
(cgraph_edge::remove_caller): Likewise.

From-SVN: r221308

9 years ago[NDS32] Rename some variables so that we can clearly identify they represent general...
Chung-Ju Wu [Tue, 10 Mar 2015 08:16:57 +0000 (08:16 +0000)]
[NDS32] Rename some variables so that we can clearly identify they represent general purpose registers.

gcc/
* config/nds32/nds32.h (callee_saved_regs_size): Rename to ...
(callee_saved_gpr_regs_size): ... this.
(callee_saved_regs_first_regno): Rename to ...
(callee_saved_first_gpr_regno): ... this.
(callee_saved_regs_last_regno) Rename to ...
(callee_saved_last_gpr_regno): ... this.
* config/nds32/nds32.c (nds32_compute_stack_frame): Adjust renamed
variables.
(nds32_initial_elimination_offset): Likewise.
(nds32_expand_prologue): Likewise.
(nds32_expand_epilogue): Likewise.
(nds32_expand_prologue_v3push): Likewise.
(nds32_expand_epilogue_v3pop): Likewise.
* config/nds32/nds32-md-auxiliary.c (nds32_output_stack_push):
Adjust renamed variables.
(nds32_output_stack_pop): Likewise.

From-SVN: r221306

9 years agoipa-icf-36.c (dg-final): Cleanup icf ipa dump.
Uros Bizjak [Tue, 10 Mar 2015 07:47:43 +0000 (08:47 +0100)]
ipa-icf-36.c (dg-final): Cleanup icf ipa dump.

* gcc.dg/ipa/ipa-icf-36.c (dg-final): Cleanup icf ipa dump.
* gcc.dg/ipa/ipa-icf-37.c (dg-final): Ditto.

From-SVN: r221304

9 years agodominance.c (nearest_common_dominator_for_set): Fix A_Dominated_by_B code in comment.
Thomas Preud'homme [Tue, 10 Mar 2015 07:35:09 +0000 (07:35 +0000)]
dominance.c (nearest_common_dominator_for_set): Fix A_Dominated_by_B code in comment.

2015-03-10  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    * dominance.c (nearest_common_dominator_for_set): Fix A_Dominated_by_B
    code in comment.

From-SVN: r221303

9 years agore PR c/65120 (Wlogical-not-parentheses should not warn about double exclamation !!)
Jakub Jelinek [Tue, 10 Mar 2015 06:38:57 +0000 (07:38 +0100)]
re PR c/65120 (Wlogical-not-parentheses should not warn about double exclamation !!)

PR c/65120
* c-common.c (warn_logical_not_parentheses): Don't warn for
!x == 0 or !x != 0.

* c-typeck.c (parser_build_binary_op): Check for tcc_comparison
before preparing arguments to warn_logical_not_parentheses.

* parser.c (cp_parser_binary_expression): Check for tcc_comparison
before preparing arguments to warn_logical_not_parentheses.
Use maybe_constant_value on rhs.

* c-c++-common/pr49706.c (fn2): Don't expect warning if enumerator
on rhs is 0.
(fn4): New test.
* c-c++-common/pr65120.c: New test.

From-SVN: r221299

9 years agore PR rtl-optimization/65321 (ICE on valid code at -O2 and -O3 with -g enabled in...
Jakub Jelinek [Tue, 10 Mar 2015 06:36:50 +0000 (07:36 +0100)]
re PR rtl-optimization/65321 (ICE on valid code at -O2 and -O3 with -g enabled in decompose, at rtl.h:2007)

PR rtl-optimization/65321
* cfgexpand.c (expand_debug_expr): Ensure shift amount isn't wider
than shift mode.
* var-tracking.c (use_narrower_mode): Likewise.

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

From-SVN: r221298

9 years agore PR tree-optimization/65355 (vectorizer increase alignment of symbols already place...
Jan Hubicka [Tue, 10 Mar 2015 04:24:21 +0000 (05:24 +0100)]
re PR tree-optimization/65355 (vectorizer increase alignment of symbols already placed in anchors)

PR tree-optimization/65355
* varasm.c (notice_global_symbol): Do not produce RTL.
* symtab.c (symtab_node::can_increase_alignment_p): Check for section
anchor.
* tree-vect-data-refs.c (vect_compute_data_ref_alignment): Do not
check for section anchors.
* gcc.dg/vect/section-anchors-vect-69.c: Update template.

From-SVN: r221297

9 years agoDaily bump.
GCC Administrator [Tue, 10 Mar 2015 00:16:11 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r221296

9 years agore PR go/65353 (unknown ptrSize for $GOARCH "arm64" on aarch64-linux-gnu)
Ian Lance Taylor [Tue, 10 Mar 2015 00:14:58 +0000 (00:14 +0000)]
re PR go/65353 (unknown ptrSize for $GOARCH "arm64" on aarch64-linux-gnu)

PR go/65353.
cmd/cgo: Add all gccgo GOARCH values to size maps.

From-SVN: r221293

9 years agore PR go/65349 (go tool crashes, can't compile go code on 32bit linux systems)
Ian Lance Taylor [Mon, 9 Mar 2015 23:43:16 +0000 (23:43 +0000)]
re PR go/65349 (go tool crashes, can't compile go code on 32bit linux systems)

PR go/65349
runtime: Don't crash if explicitly freeing small map.

From-SVN: r221292

9 years agore PR go/65349 (go tool crashes, can't compile go code on 32bit linux systems)
Ian Lance Taylor [Mon, 9 Mar 2015 23:40:58 +0000 (23:40 +0000)]
re PR go/65349 (go tool crashes, can't compile go code on 32bit linux systems)

PR go/65349
runtime: Don't call malloc from __go_file_line callback.

When crashing, we call runtime_printcreatedby which calls
__go_file_line which used to call the Go malloc.  If we are
crashing due to a signal due to heap corruption of some sort,
the GO malloc lock might already be held, leading to a crash
within a crash.  Avoid that by assuming that the libbacktrace
strings will stick around, as we already do in go-callers.c.

From-SVN: r221291

9 years agore PR target/65286 (When building on powerpc64le-unknown-linux-gnu, --disable-multili...
Alan Modra [Mon, 9 Mar 2015 23:18:57 +0000 (09:48 +1030)]
re PR target/65286 (When building on powerpc64le-unknown-linux-gnu, --disable-multilib must be used)

PR target/65286
* config.gcc (powerpc*-*-linux*): Arrange for powerpc64le-linux
to be single-arch by default.  Set cpu_is_64bit for powerpc64
given --with-cpu=native.
* config/rs6000/t-fprules: Do not set default MULTILIB vars.
* config/rs6000/t-linux (MULTIARCH_DIRNAME): Support powerpc64
and powerpc64le.
* config/rs6000/linux64.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Test
rs6000_isa_flags rather than TARGET_64BIT.

From-SVN: r221288

9 years agot-linux (MULTILIB_EXCEPTIONS): Define for m2a cases.
Yoshinori Sato [Mon, 9 Mar 2015 23:14:19 +0000 (08:14 +0900)]
t-linux (MULTILIB_EXCEPTIONS): Define for m2a cases.

* config/sh/t-linux (MULTILIB_EXCEPTIONS): Define for m2a cases.

Co-Authored-By: Kaz Kojima <kkojima@gcc.gnu.org>
From-SVN: r221287

9 years agore PR lto/65361 (LTO: tree check: expected tree that contains ‘decl minimal’ structur...
Jakub Jelinek [Mon, 9 Mar 2015 20:19:34 +0000 (21:19 +0100)]
re PR lto/65361 (LTO: tree check: expected tree that contains ‘decl minimal’ structure, have ‘tree_binfo’ in add_type_duplicate, at ipa-devirt.c:1509)

PR lto/65361
* ipa-devirt.c (add_type_duplicate): Don't use DECL_CONTEXT
on a TREE_BINFO, instead use BINFO_TYPE.

From-SVN: r221286

9 years agore PR c++/65339 (C++ ICE with lambda and no capture list)
Jason Merrill [Mon, 9 Mar 2015 19:59:54 +0000 (15:59 -0400)]
re PR c++/65339 (C++ ICE with lambda and no capture list)

PR c++/65339
* call.c: Don't call maybe_resolve_dummy when calling a constructor.

From-SVN: r221285

9 years agore PR c/65120 (Wlogical-not-parentheses should not warn about double exclamation !!)
Jakub Jelinek [Mon, 9 Mar 2015 18:26:52 +0000 (19:26 +0100)]
re PR c/65120 (Wlogical-not-parentheses should not warn about double exclamation !!)

PR c/65120
* c-typeck.c (parser_build_binary_op): Don't warn for
!!x == y or !b == y where b is _Bool.

* parser.c (cp_parser_binary_expression): Don't warn for
!!x == y or !b == y where b is bool.

* c-c++-common/pr49706.c: Adjust tests for not warning
about !!x == y or !b == y where b is boolean, and add
some further tests.
* c-c++-common/pr62199-2.c: Likewise.

From-SVN: r221284

9 years agore PR sanitizer/63958 (bootstrap failure in the sanitizer libs on sparc-linux-gnu)
Jakub Jelinek [Mon, 9 Mar 2015 18:25:28 +0000 (19:25 +0100)]
re PR sanitizer/63958 (bootstrap failure in the sanitizer libs on sparc-linux-gnu)

PR sanitizer/63958
Reapply:
2014-10-14  David S. Miller  <davem@davemloft.net>

* sanitizer_common/sanitizer_platform_limits_linux.cc (time_t):
Define at __kernel_time_t, as needed for sparc.
(struct __old_kernel_stat): Don't check if __sparc__ is defined.
* libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h
(__sanitizer): Define struct___old_kernel_stat_sz,
struct_kernel_stat_sz, and struct_kernel_stat64_sz for sparc.
(__sanitizer_ipc_perm): Adjust for sparc targets.
(__sanitizer_shmid_ds): Likewsie.
(__sanitizer_sigaction): Likewise.
(IOC_SIZE): Likewsie.

From-SVN: r221283

9 years agoFix PR number for 65121 in Changelog.
Ramana Radhakrishnan [Mon, 9 Mar 2015 15:19:20 +0000 (15:19 +0000)]
Fix PR number for 65121 in Changelog.

PR target/65121

The commit that fixed this was

https://gcc.gnu.org/ml/gcc-cvs/2015-03/msg00140.html

From-SVN: r221282

9 years agore PR ipa/65270 (issues with merging memory accesses from different code paths)
Richard Biener [Mon, 9 Mar 2015 13:54:28 +0000 (13:54 +0000)]
re PR ipa/65270 (issues with merging memory accesses from different code paths)

2015-03-09  Richard Biener  <rguenther@suse.de>

PR middle-end/65270
* tree-core.h (enum operand_equal_flag): Add OEP_ADDRESS_OF.
* fold-const.c (operand_equal_p): When recursing for ADDR_EXPRs
operand set OEP_ADDRESS_OF.  Clear it when recursing to non-bases
of that.  When comparing dereferences compare alignment.
When comparing MEM_REFs or TARGET_MEM_REFs compare dependence info.

* gcc.dg/torture/pr65270-1.c: New testcase.
* gcc.dg/torture/pr65270-2.c: Likewise.

From-SVN: r221281

9 years agore PR libstdc++/64467 (28_regex/traits/char/isctype.cc and wchar_t/isctype.cc)
Jonathan Wakely [Mon, 9 Mar 2015 12:47:51 +0000 (12:47 +0000)]
re PR libstdc++/64467 (28_regex/traits/char/isctype.cc and wchar_t/isctype.cc)

PR libstdc++/64467
* testsuite/28_regex/traits/char/isctype.cc: Don't test newline
for newlib targets. Really fix mixed line-endings this time.

From-SVN: r221279

9 years agoc-convert.c (convert): Make use of do_ubsan_in_current_function.
Marek Polacek [Mon, 9 Mar 2015 11:57:33 +0000 (11:57 +0000)]
c-convert.c (convert): Make use of do_ubsan_in_current_function.

* c-convert.c (convert): Make use of do_ubsan_in_current_function.
* c-decl.c (grokdeclarator): Likewise.
* c-typeck.c (build_binary_op): Likewise.

From-SVN: r221278

9 years agoipa-inline-analysis.c (check_callers): Check node->can_remove_if_no_direct_calls_and_...
Jan Hubicka [Mon, 9 Mar 2015 04:53:54 +0000 (05:53 +0100)]
ipa-inline-analysis.c (check_callers): Check node->can_remove_if_no_direct_calls_and_refs_p.

* ipa-inline-analysis.c (check_callers): Check
node->can_remove_if_no_direct_calls_and_refs_p.
(growth_likely_positive): Reorganize to call
can_remove_if_no_direct_calls_p later.
* cgraph.h (will_be_removed_from_program_if_no_direct_calls_p,
will_be_removed_from_program_if_no_direct_calls_p): Add
will_inline parameter.
* cgraph.c (cgraph_node::can_remove_if_no_direct_calls_p,
cgraph_node::will_be_removed_from_program_if_no_direct_calls_p):
Handle inliner case correctly.

From-SVN: r221277

9 years agore PR middle-end/63743 (Thumb1: big regression for float operators by r216728)
Thomas Preud'homme [Mon, 9 Mar 2015 01:31:42 +0000 (01:31 +0000)]
re PR middle-end/63743 (Thumb1: big regression for float operators by r216728)

2015-03-09  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    gcc/
    PR tree-optimization/63743
    * cfgexpand.c (reorder_operands): Also reorder if only second operand
    had its definition forwarded by TER.

    gcc/testsuite/
    PR tree-optimization/63743
    * gcc.dg/pr63743.c: New test.

From-SVN: r221276

9 years agore PR lto/65316 (LTO: Uninitialized memory / ICE with -g -fno-lto-odr-type-merging...
Jan Hubicka [Mon, 9 Mar 2015 00:29:14 +0000 (01:29 +0100)]
re PR lto/65316 (LTO: Uninitialized memory / ICE with -g -fno-lto-odr-type-merging: in types_same_for_odr, at ipa-devirt.c:465)

PR lto/65316
* ipa-utils.h (types_odr_comparable): Add strict argument.
* ipa-devirt.c: Fix whitespace;
(odr_hasher): Remove.
(odr_name_hasher, odr_vtable_hasher): New hashers.
(can_be_name_hashed_p): New predicate.
(hash_type_name): remove.
(hash_odr_name): New.
(odr_name_hasher::hash): new.
(can_be_vtable_hashed_p): New.
(hash_odr_vtable): New.
(odr_vtable_hasher::hash): New.
(types_same_for_odr): Add strict parameter.
(types_odr_comparable): Likewise.
(odr_name_hasher::equal): New.
(odr_vtable_hasher::equal): New.
(odr_name_hasher::remove): New.
(odr_hash_type): Change to hash_table<odr_name_hasher>.
(odr_vtable_hash_type): New.
(odr_vtable_hash): New.
(odr_subtypes_equivalent_p): Do strict comparsion.
(add_type_duplicate): Merge type names; cleanup; avoid type
duplicates.
(register_odr_type): Initialize vtable hash.
(build_type_inheritance_graph): Likewise
(get_odr_type): Reorg to use two hashes.
(dump_possible_polymorphic_call_targets): Move sanity check after debug
output.
(ipa_devirt): Dump type_inheritance_graph.
(types_same_for_odr): Add strict mode.
* g++.dg/lto/pr65316_0.C: New testcase.
* g++.dg/lto/pr65316_1.C: New testcase.

From-SVN: r221275

9 years agoDaily bump.
GCC Administrator [Mon, 9 Mar 2015 00:16:14 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r221274

9 years agore PR target/62247 (FAIL: g++.dg/abi/anon3.C -std=c++98/9 scan-assembler .weak...
John David Anglin [Sun, 8 Mar 2015 23:46:34 +0000 (23:46 +0000)]
re PR target/62247 (FAIL: g++.dg/abi/anon3.C  -std=c++98/9  scan-assembler .weak(_definition))

PR target/62247
* g++.dg/abi/anon3.C: Skip failing scan-assembler checks on
hppa*-*-hpux*.
* g++.dg/abi/rtti3.C: Likewise.

From-SVN: r221271

9 years agopr63621.C: Add dg-require-effective-target named_sections.
John David Anglin [Sun, 8 Mar 2015 23:30:47 +0000 (23:30 +0000)]
pr63621.C: Add dg-require-effective-target named_sections.

* g++.dg/ipa/pr63621.C: Add dg-require-effective-target named_sections.

From-SVN: r221270

9 years agovarasm.c (function_section_1): Use definition_alignment.
Jan Hubicka [Sun, 8 Mar 2015 23:27:13 +0000 (00:27 +0100)]
varasm.c (function_section_1): Use definition_alignment.

* varasm.c (function_section_1): Use definition_alignment.
(assemble_start_function): Likewise.
(emit_local): likewise.
(build_constant_desc): Likewsie.
(output_constant_def_contents): Likewise.
(place_block_symbol): Likewise.
(output_object_block): Likewise.

From-SVN: r221269

9 years agore PR ipa/65334 (r221099 caused: FAIL: gfortran.fortran-torture/execute/in-pack.f90...
Jan Hubicka [Sun, 8 Mar 2015 23:12:25 +0000 (00:12 +0100)]
re PR ipa/65334 (r221099 caused: FAIL: gfortran.fortran-torture/execute/in-pack.f90 execution, -O2 -ftree-vectorize -msse2)

PR ipa/65334
* cgraph.h (symtab_node): Add definition_alignment,
can_increase_alignment_p and increase_alignment.
* symtab.c (symtab_node::can_increase_alignment_p,
increase_alignment_1, symtab_node::increase_alignment,
symtab_node::definition_alignment): New.
* tree-vect-data-refs.c (vect_can_force_dr_alignment_p): Use
can_increase_alignment_p.
* tree-vectorizer.c (increase_alignment): Use increase_alignment.
* tree-vect-stmts.c (ensure_base_align): Likewise.

From-SVN: r221268

9 years agore PR target/62251 (FAIL: gfortran.dg/quad_2.f90 execution test)
John David Anglin [Sun, 8 Mar 2015 22:58:52 +0000 (22:58 +0000)]
re PR target/62251 (FAIL: gfortran.dg/quad_2.f90 execution test)

PR target/62251
* gfortran.dg/quad_2.f90: xfail hppa*-*-hpux*.

From-SVN: r221267

9 years agosignbit-sa.c: Add dg-require-effective-target c99_runtime
John David Anglin [Sun, 8 Mar 2015 22:45:32 +0000 (22:45 +0000)]
signbit-sa.c: Add dg-require-effective-target c99_runtime

* gcc.dg/signbit-sa.c: Add dg-require-effective-target c99_runtime

From-SVN: r221266

9 years agopr64307.c: Add target c99_runtime.
John David Anglin [Sun, 8 Mar 2015 22:32:57 +0000 (22:32 +0000)]
pr64307.c: Add target c99_runtime.

* gcc.dg/ipa/pr64307.c: Add target c99_runtime.

From-SVN: r221265

9 years agoipa-icf-34.c: Add dg-require-alias.
John David Anglin [Sun, 8 Mar 2015 22:21:16 +0000 (22:21 +0000)]
ipa-icf-34.c: Add dg-require-alias.

* gcc.dg/ipa/ipa-icf-34.c: Add dg-require-alias.

From-SVN: r221264

9 years agoAdd missing PR target/59828 to ChangeLog entry.
David Edelsohn [Sun, 8 Mar 2015 13:40:42 +0000 (09:40 -0400)]
Add missing PR target/59828 to ChangeLog entry.

From-SVN: r221263

9 years agore PR fortran/60898 (model compile error with gfortran 4.7 and gcc 4.9)
Mikael Morin [Sun, 8 Mar 2015 11:52:51 +0000 (11:52 +0000)]
re PR fortran/60898 (model compile error with gfortran 4.7 and gcc 4.9)

        PR fortran/60898
fortran/
        * resolve.c (resolve_symbol): Check that the symbol found by
        name lookup really is the current symbol being resolved.
testsuite/
        * gfortran.dg/entry_20.f90: New.

From-SVN: r221262

9 years agoDaily bump.
GCC Administrator [Sun, 8 Mar 2015 00:16:18 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r221261

9 years agore PR lto/65316 (LTO: Uninitialized memory / ICE with -g -fno-lto-odr-type-merging...
Jan Hubicka [Sat, 7 Mar 2015 20:33:58 +0000 (21:33 +0100)]
re PR lto/65316 (LTO: Uninitialized memory / ICE with -g -fno-lto-odr-type-merging: in types_same_for_odr, at ipa-devirt.c:465)

PR ipa/65316
* tree.c (free_lang_data_in_type): Be sure to keep BINFO_VTABLE
when outputting debug.

From-SVN: r221258

9 years agore PR target/65153 ([SH][4.9 Regression] "insn does not satisfy its constraints"...
Oleg Endo [Sat, 7 Mar 2015 19:35:22 +0000 (19:35 +0000)]
re PR target/65153 ([SH][4.9 Regression] "insn does not satisfy its constraints" when compiling libmcrypt)

gcc/testsuite/
PR target/65153
* gcc.c-torture/compile/pr65153.c: New.

From-SVN: r221257