gcc.git
10 years agopt.c (lookup_template_variable): Make dependent variable templates have unknown type.
Andrew Sutton [Wed, 13 Aug 2014 14:16:48 +0000 (14:16 +0000)]
pt.c (lookup_template_variable): Make dependent variable templates have unknown type.

2014-08-13  Andrew Sutton  <andrew.n.sutton@gmail.com>

        * pt.c (lookup_template_variable): Make dependent variable templates
        have unknown type.

From-SVN: r213910

10 years ago2014-08-13 Paolo Carlini <paolo.carlini@oracle.com>
Paolo Carlini [Wed, 13 Aug 2014 11:56:45 +0000 (11:56 +0000)]
2014-08-13  Paolo Carlini  <paolo.carlini@oracle.com>

* Fix thinko in the last commit.

From-SVN: r213908

10 years agore PR libstdc++/62118 (cases under libstdc++-v3/testsuite/ext/ failed on aarch64...
Paolo Carlini [Wed, 13 Aug 2014 11:24:35 +0000 (11:24 +0000)]
re PR libstdc++/62118 (cases under libstdc++-v3/testsuite/ext/ failed on aarch64/arm)

2014-08-13  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/62118
* include/ext/random.tcc (uniform_on_sphere_helper<2, _RealType>::
operator()): Use std::hypot only when _GLIBCXX_USE_C99_MATH_TR1.

From-SVN: r213906

10 years agopr35356-2.c: Update according to the ISL code generator.
Roman Gareev [Wed, 13 Aug 2014 11:10:25 +0000 (11:10 +0000)]
pr35356-2.c: Update according to the ISL code generator.

[gcc/testsuite]

* gcc.dg/graphite/pr35356-2.c: Update according to the ISL code
generator.

From-SVN: r213905

10 years agoparser.c (cp_parser_elaborated_type_specifier): Handle specially cp_parser_template_i...
Paolo Carlini [Wed, 13 Aug 2014 08:47:40 +0000 (08:47 +0000)]
parser.c (cp_parser_elaborated_type_specifier): Handle specially cp_parser_template_id returning a BASELINK.

2014-08-13  Paolo Carlini  <paolo.carlini@oracle.com>

* parser.c (cp_parser_elaborated_type_specifier): Handle
specially cp_parser_template_id returning a BASELINK.

2014-08-13  Paolo Carlini  <paolo.carlini@oracle.com>

* parser.c (cp_parser_diagnose_invalid_type_name,
cp_parser_make_typename_type): Remove scope parameter.
(cp_parser_parse_and_diagnose_invalid_type_name,
cp_parser_elaborated_type_specifier): Adjust calls.

From-SVN: r213897

10 years agoDaily bump.
GCC Administrator [Wed, 13 Aug 2014 00:16:52 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r213896

10 years agore PR target/62025 (Miscompilation of openssl sha512.c)
Jakub Jelinek [Tue, 12 Aug 2014 21:24:40 +0000 (23:24 +0200)]
re PR target/62025 (Miscompilation of openssl sha512.c)

PR target/62025
* sched-deps.c (find_inc): Check if inc_insn doesn't clobber
any registers that are used in mem_insn.

From-SVN: r213887

10 years agosocket.c: For RTEMS, use correct prototype of gethostbyname_r().
Joel Sherrill [Tue, 12 Aug 2014 19:49:26 +0000 (19:49 +0000)]
socket.c: For RTEMS, use correct prototype of gethostbyname_r().

2014-08-12  Joel Sherrill <joel.sherrill@oarcorp.com>

* socket.c: For RTEMS, use correct prototype of gethostbyname_r().
* gsocket.h Add include of <unistd.h> on RTEMS.

From-SVN: r213884

10 years agoMakefile.in: Add CFLAGS_FOR_TARGET to GNATLIBCFLAGS_FOR_C.
Joel Sherrill [Tue, 12 Aug 2014 19:47:09 +0000 (19:47 +0000)]
Makefile.in: Add CFLAGS_FOR_TARGET to GNATLIBCFLAGS_FOR_C.

2014-08-12  Joel Sherrill <joel.sherrill@oarcorp.com>

* Makefile.in: Add CFLAGS_FOR_TARGET to GNATLIBCFLAGS_FOR_C.

From-SVN: r213880

10 years agoc-parser.c (c_parser_postfix_expression): Add pedwarn.
Marek Polacek [Tue, 12 Aug 2014 18:53:33 +0000 (18:53 +0000)]
c-parser.c (c_parser_postfix_expression): Add pedwarn.

* c-parser.c (c_parser_postfix_expression) <case RID_FUNCTION_NAME>:
Add pedwarn.
(c_parser_postfix_expression) <case RID_PRETTY_FUNCTION_NAME>:
Likewise.
(c_parser_postfix_expression) <case RID_C99_FUNCTION_NAME>: Likewise.

* gcc.dg/concat.c: Add dg-options.
* gcc.dg/func-outside-2.c: Add __extension__.
* gcc.dg/pr19967.c: Use -std=c99.
* gcc.dg/pr22458-1.c: Add dg-options.
* gcc.dg/pr33676.c: Add dg-options.
* gcc.dg/gnu-predef-1.c: New test.
* gcc.dg/c90-func-1.c: New test.
* gcc.dg/c90-func-2.c: New test.
* gcc.dg/c90-func-2.h: New test.

From-SVN: r213875

10 years agoReject virt-specifiers on friends and member templates
Ville Voutilainen [Tue, 12 Aug 2014 17:06:11 +0000 (20:06 +0300)]
Reject virt-specifiers on friends and member templates

Reject virt-specifiers on friends and member templates
* friend.c (do_friend): Diagnose virt-specifiers.
* pt.c (push_template_decl_real): Diagnose virt-specifiers.

From-SVN: r213874

10 years ago* include/bits/basic_string.h (getline): Declare inline.
Jonathan Wakely [Tue, 12 Aug 2014 15:48:23 +0000 (16:48 +0100)]
* include/bits/basic_string.h (getline): Declare inline.

From-SVN: r213873

10 years agomips.h (ASM_SPEC): Pass float options to assembler.
Steve Ellcey [Tue, 12 Aug 2014 15:39:04 +0000 (15:39 +0000)]
mips.h (ASM_SPEC): Pass float options to assembler.

2014-08-12  Steve Ellcey  <sellcey@mips.com>

* config/mips/mips.h (ASM_SPEC): Pass float options to assembler.

From-SVN: r213872

10 years agomips16.S: Skip when __mips_soft_float is defined.
Steve Ellcey [Tue, 12 Aug 2014 15:28:41 +0000 (15:28 +0000)]
mips16.S: Skip when __mips_soft_float is defined.

2014-08-12  Steve Ellcey  <sellcey@mips.com>

* config/mips/mips16.S:  Skip when __mips_soft_float is defined.

From-SVN: r213870

10 years agobasic_string.h (getline): Qualify call to prevent ADL and add overloads for rvalue...
Jonathan Wakely [Tue, 12 Aug 2014 15:19:53 +0000 (16:19 +0100)]
basic_string.h (getline): Qualify call to prevent ADL and add overloads for rvalue streams.

* include/bits/basic_string.h (getline): Qualify call to prevent ADL
and add overloads for rvalue streams.
* testsuite/21_strings/basic_string/inserters_extractors/char/12.cc:
New.
* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/12.cc:
New.

From-SVN: r213869

10 years agot-mti-elf (MULTILIB_OPTIONS): Remove fp64 multilib.
Steve Ellcey [Tue, 12 Aug 2014 15:10:42 +0000 (15:10 +0000)]
t-mti-elf (MULTILIB_OPTIONS): Remove fp64 multilib.

2014-08-12  Steve Ellcey  <sellcey@mips.com>

* config/mips/t-mti-elf (MULTILIB_OPTIONS): Remove fp64 multilib.
(MULTILIB_DIRNAMES): Ditto.
* config/mips/t-mti-elf (MULTILIB_OPTIONS): Ditto.
* config/mips/t-mti-elf (MULTILIB_EXCEPTIONS): Ditto.
* config/mips/t-mti-linux (MULTILIB_OPTIONS): Ditto.
* config/mips/t-mti-linux (MULTILIB_DIRNAMES): Ditto.
* config/mips/t-mti-linux (MULTILIB_EXCEPTIONS): Ditto.
* config/mips/mti-linux.h (SYSROOT_SUFFIX_SPEC): Ditto.

From-SVN: r213868

10 years ago* lib/target/supports.exp
Janis Johnson [Tue, 12 Aug 2014 15:00:26 +0000 (15:00 +0000)]
* lib/target/supports.exp
(check_effective_target_arm_v8_neon_ok_nocache): Check for armv8
or later.

From-SVN: r213866

10 years ago* gcc.dg/pr59418.c: Don't add ARM options for a Thumb1 multilib.
Janis Johnson [Tue, 12 Aug 2014 14:59:31 +0000 (14:59 +0000)]
* gcc.dg/pr59418.c: Don't add ARM options for a Thumb1 multilib.

From-SVN: r213865

10 years agore PR target/61413 (__ARM_SIZEOF_WCHAR_T is constant 32 -- should be 4 or 2)
Ramana Radhakrishnan [Tue, 12 Aug 2014 14:59:23 +0000 (14:59 +0000)]
re PR target/61413 (__ARM_SIZEOF_WCHAR_T is constant 32 -- should be 4 or 2)

Fix PR target/61413

2014-08-12  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

PR target/61413
* config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Fix definition
of __ARM_SIZEOF_WCHAR_T.

From-SVN: r213864

10 years agoneon-vext-execute.c: Skip if the test won't run on Neon hardware.
Janis Johnson [Tue, 12 Aug 2014 14:58:19 +0000 (14:58 +0000)]
neon-vext-execute.c: Skip if the test won't run on Neon hardware.

* gcc.target/arm/neon-vext-execute.c: Skip if the test won't run
on Neon hardware.

From-SVN: r213863

10 years agopr48784.c: Skip for thumb1 multilib.
Janis Johnson [Tue, 12 Aug 2014 14:57:13 +0000 (14:57 +0000)]
pr48784.c: Skip for thumb1 multilib.

* gcc.target/arm/pr48784.c: Skip for thumb1 multilib.
* gcc.target/arm/pr59985.c: Likewise.

From-SVN: r213862

10 years agore PR target/62098 (incorrect code generated by arm gcc)
Ramana Radhakrishnan [Tue, 12 Aug 2014 14:32:07 +0000 (14:32 +0000)]
re PR target/62098 (incorrect code generated by arm  gcc)

Fix PR target/62098

2014-08-12  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

PR target/62098
* config/arm/vfp.md (*combine_vcvtf2i): Fix constraint.
Remove unnecessary attributes.

From-SVN: r213861

10 years agore PR other/61962 (GCC seems to enter an infinite loop when compiling the above cilk...
Igor Zamyatin [Tue, 12 Aug 2014 12:27:41 +0000 (12:27 +0000)]
re PR other/61962 (GCC seems to enter an infinite loop when compiling the above cilk+ code.)

PR other/61962

gcc/c-family/
        * array-notation-common.c (find_rank): Added handling for other
        types of references.

testsuite/
        * c-c++-common/cilk-plus/AN/pr61962.c: New test.

From-SVN: r213858

10 years agoconfigure.ac: Move pthread affinity test to the place where '-pthread' passed to...
Alexander Ivchenko [Tue, 12 Aug 2014 11:06:44 +0000 (11:06 +0000)]
configure.ac: Move pthread affinity test to the place where '-pthread' passed to CFLAGS.

libcilkrts/
* configure.ac: Move pthread affinity test to the place where
'-pthread' passed to CFLAGS. Otherwise the test always fails.
(XCFLAGS): New variable for correctly passing
'-pthread'.
(XLDFLAGS): New variable for passing the correct pthread lib.
* configure: Regenerate.
* Makefile.am (AM_CFLAGS): Add $XCFLAGS.
(AM_LDFLAGS): Add $XLDFLAGS.
* Makefile.in: Regenerate.

From-SVN: r213854

10 years agoinclhack.def (complier_h_tradcpp): Remove.
Alexander Ivchenko [Tue, 12 Aug 2014 11:05:24 +0000 (11:05 +0000)]
inclhack.def (complier_h_tradcpp): Remove.

fixincludes/
* inclhack.def (complier_h_tradcpp): Remove.
* fixincl.x: Regenerate.
* tests/base/linux/compiler.h: Remove.

From-SVN: r213853

10 years agointernal-fn.c (init_internal_fns): Fix off-by-one.
Yury Gribov [Tue, 12 Aug 2014 07:34:33 +0000 (07:34 +0000)]
internal-fn.c (init_internal_fns): Fix off-by-one.

2014-08-12  Yury Gribov  <y.gribov@samsung.com>

gcc/
* internal-fn.c (init_internal_fns): Fix off-by-one.

From-SVN: r213848

10 years agoi386.c (standard_sse_constant_opcode): Use vpxord/vpternlog if avx512 is availible.
Alexander Ivchenko [Tue, 12 Aug 2014 07:28:15 +0000 (07:28 +0000)]
i386.c (standard_sse_constant_opcode): Use vpxord/vpternlog if avx512 is availible.

gcc/
* config/i386/i386.c (standard_sse_constant_opcode): Use
vpxord/vpternlog if avx512 is availible.

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: r213847

10 years agore PR middle-end/62103 (Incorrect folding of bitfield in a union on big endian targets)
Thomas Preud'homme [Tue, 12 Aug 2014 02:36:37 +0000 (02:36 +0000)]
re PR middle-end/62103 (Incorrect folding of bitfield in a union on big endian targets)

2014-08-12  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    gcc/
    PR middle-end/62103
    * gimple-fold.c (fold_ctor_reference): Don't fold in presence of
    bitfields, that is when size doesn't match the size of type or the
    size of the constructor.

    gcc/testsuite/
    PR middle-end/62103
    * gcc.c-torture/execute/bitfld-6.c: New test.

From-SVN: r213846

10 years agoDaily bump.
GCC Administrator [Tue, 12 Aug 2014 00:17:19 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r213845

10 years agos-osinte-rtems.adb: Correct formatting of line in license block.
Joel Sherrill [Mon, 11 Aug 2014 21:32:05 +0000 (21:32 +0000)]
s-osinte-rtems.adb: Correct formatting of line in license block.

2014-08-11  Joel Sherrill <joel.sherrill@oarcorp.com>

* s-osinte-rtems.adb: Correct formatting of line in license block.

From-SVN: r213840

10 years agoRevert last change.
John David Anglin [Mon, 11 Aug 2014 19:51:38 +0000 (19:51 +0000)]
Revert last change.

From-SVN: r213835

10 years agoconstraints.md (wh constraint): New constraint, for FP registers if direct move is...
Michael Meissner [Mon, 11 Aug 2014 19:48:17 +0000 (19:48 +0000)]
constraints.md (wh constraint): New constraint, for FP registers if direct move is available.

2014-08-11  Michael Meissner  <meissner@linux.vnet.ibm.com>

* config/rs6000/constraints.md (wh constraint): New constraint,
for FP registers if direct move is available.
(wi constraint): New constraint, for VSX/FP registers that can
handle 64-bit integers.
(wj constraint): New constraint for VSX/FP registers that can
handle 64-bit integers for direct moves.
(wk constraint): New constraint for VSX/FP registers that can
handle 64-bit doubles for direct moves.
(wy constraint): Make documentation match implementation.

* config/rs6000/rs6000.c (struct rs6000_reg_addr): Add
scalar_in_vmx_p field to simplify tests of whether SFmode or
DFmode can go in the Altivec registers.
(rs6000_hard_regno_mode_ok): Use scalar_in_vmx_p field.
(rs6000_setup_reg_addr_masks): Likewise.
(rs6000_debug_print_mode): Add debug support for scalar_in_vmx_p
field, and wh/wi/wj/wk constraints.
(rs6000_init_hard_regno_mode_ok): Setup scalar_in_vmx_p field, and
the wh/wi/wj/wk constraints.
(rs6000_preferred_reload_class): If SFmode/DFmode can go in the
upper registers, prefer VSX registers unless the operation is a
memory operation with REG+OFFSET addressing.

* config/rs6000/vsx.md (VSr mode attribute): Add support for
DImode.  Change SFmode to use ww constraint instead of d to allow
SF registers in the upper registers.
(VSr2): Likewise.
(VSr3): Likewise.
(VSr5): Fix thinko in comment.
(VSa): New mode attribute that is an alternative to wa, that
returns the VSX register class that a mode can go in, but may not
be the preferred register class.
(VS_64dm): New mode attribute for appropriate register classes for
referencing 64-bit elements of vectors for direct moves and normal
moves.
(VS_64reg): Likewise.
(vsx_mov<mode>): Change wa constraint to <VSa> to limit the
register allocator to only registers the data type can handle.
(vsx_le_perm_load_<mode>): Likewise.
(vsx_le_perm_store_<mode>): Likewise.
(vsx_xxpermdi2_le_<mode>): Likewise.
(vsx_xxpermdi4_le_<mode>): Likewise.
(vsx_lxvd2x2_le_<mode>): Likewise.
(vsx_lxvd2x4_le_<mode>): Likewise.
(vsx_stxvd2x2_le_<mode>): Likewise.
(vsx_add<mode>3): Likewise.
(vsx_sub<mode>3): Likewise.
(vsx_mul<mode>3): Likewise.
(vsx_div<mode>3): Likewise.
(vsx_tdiv<mode>3_internal): Likewise.
(vsx_fre<mode>2): Likewise.
(vsx_neg<mode>2): Likewise.
(vsx_abs<mode>2): Likewise.
(vsx_nabs<mode>2): Likewise.
(vsx_smax<mode>3): Likewise.
(vsx_smin<mode>3): Likewise.
(vsx_sqrt<mode>2): Likewise.
(vsx_rsqrte<mode>2): Likewise.
(vsx_tsqrt<mode>2_internal): Likewise.
(vsx_fms<mode>4): Likewise.
(vsx_nfma<mode>4): Likewise.
(vsx_eq<mode>): Likewise.
(vsx_gt<mode>): Likewise.
(vsx_ge<mode>): Likewise.
(vsx_eq<mode>_p): Likewise.
(vsx_gt<mode>_p): Likewise.
(vsx_ge<mode>_p): Likewise.
(vsx_xxsel<mode>): Likewise.
(vsx_xxsel<mode>_uns): Likewise.
(vsx_copysign<mode>3): Likewise.
(vsx_float<VSi><mode>2): Likewise.
(vsx_floatuns<VSi><mode>2): Likewise.
(vsx_fix_trunc<mode><VSi>2): Likewise.
(vsx_fixuns_trunc<mode><VSi>2): Likewise.
(vsx_x<VSv>r<VSs>i): Likewise.
(vsx_x<VSv>r<VSs>ic): Likewise.
(vsx_btrunc<mode>2): Likewise.
(vsx_b2trunc<mode>2): Likewise.
(vsx_floor<mode>2): Likewise.
(vsx_ceil<mode>2): Likewise.
(vsx_<VS_spdp_insn>): Likewise.
(vsx_xscvspdp): Likewise.
(vsx_xvcvspuxds): Likewise.
(vsx_float_fix_<mode>2): Likewise.
(vsx_set_<mode>): Likewise.
(vsx_extract_<mode>_internal1): Likewise.
(vsx_extract_<mode>_internal2): Likewise.
(vsx_extract_<mode>_load): Likewise.
(vsx_extract_<mode>_store): Likewise.
(vsx_splat_<mode>): Likewise.
(vsx_xxspltw_<mode>): Likewise.
(vsx_xxspltw_<mode>_direct): Likewise.
(vsx_xxmrghw_<mode>): Likewise.
(vsx_xxmrglw_<mode>): Likewise.
(vsx_xxsldwi_<mode>): Likewise.
(vsx_xscvdpspn): Tighten constraints to only use register classes
the types use.
(vsx_xscvspdpn): Likewise.
(vsx_xscvdpspn_scalar): Likewise.

* config/rs6000/rs6000.h (enum rs6000_reg_class_enum): Add wh, wi,
wj, and wk constraints.
(GPR_REG_CLASS_P): New helper macro for register classes targeting
general purpose registers.

* config/rs6000/rs6000.md (f32_dm): Use wh constraint for SDmode
direct moves.
(zero_extendsidi2_lfiwz): Use wj constraint for direct move of
DImode instead of wm.  Use wk constraint for direct move of DFmode
instead of wm.
(extendsidi2_lfiwax): Likewise.
(lfiwax): Likewise.
(lfiwzx): Likewise.
(movdi_internal64): Likewise.

* doc/md.texi (PowerPC and IBM RS6000): Document wh, wi, wj, and
wk constraints. Make the wy constraint documentation match them
implementation.

From-SVN: r213834

10 years agocompiler: Change return type comma-ok assignments to untyped bools.
Ian Lance Taylor [Mon, 11 Aug 2014 19:27:21 +0000 (19:27 +0000)]
compiler: Change return type comma-ok assignments to untyped bools.

Fixes https://code.google.com/p/go/issues/detail?id=8476. The test will be submitted once this is fixed in gc and go/types.

From-SVN: r213833

10 years agocompiler: Change return type comma-ok assignments to untyped bools.
Ian Lance Taylor [Mon, 11 Aug 2014 19:26:26 +0000 (19:26 +0000)]
compiler: Change return type comma-ok assignments to untyped bools.

Fixes https://code.google.com/p/go/issues/detail?id=8476. The test will be submitted once this is fixed in gc and go/types.

From-SVN: r213832

10 years agore PR target/62038 (Out of range branch target in thunk)
John David Anglin [Mon, 11 Aug 2014 19:07:16 +0000 (19:07 +0000)]
re PR target/62038 (Out of range branch target in thunk)

PR target/62038
* config/pa/pa.c (pa_asm_output_mi_thunk): Use a branch with %r31 link
register.

From-SVN: r213829

10 years agoframe-pointer-1.c: Skip if Thumb is not supported.
Janis Johnson [Mon, 11 Aug 2014 15:29:59 +0000 (15:29 +0000)]
frame-pointer-1.c: Skip if Thumb is not supported.

* gcc.target/arm/frame-pointer-1.c: Skip if Thumb is not supported.
* gcc.target/arm/pr56184.C: Likewise.
* gcc.target/arm/pr59896.c: Likewise.
* gcc.target/arm/stack-red-zone.c: Likewise.
* gcc.target/arm/thumb-find-work-register.c: Likewise.

From-SVN: r213819

10 years agotarget-supports.exp (check_effective_target_arm_thumb1_ok, [...]): Test with code...
Janis Johnson [Mon, 11 Aug 2014 15:28:04 +0000 (15:28 +0000)]
target-supports.exp (check_effective_target_arm_thumb1_ok, [...]): Test with code that passes an argument and returns a result.

* lib/target-supports.exp (check_effective_target_arm_thumb1_ok,
check_effective_target_arm_thumb2_ok): Test with code that passes
an argument and returns a result.

From-SVN: r213818

10 years agoReplacement of isl_int by isl_val
Mircea Namolaru [Mon, 11 Aug 2014 15:05:48 +0000 (17:05 +0200)]
Replacement of isl_int by isl_val

From-SVN: r213816

10 years agore PR tree-optimization/62075 (Vectorizer ICE on dolphin)
Richard Biener [Mon, 11 Aug 2014 14:48:24 +0000 (14:48 +0000)]
re PR tree-optimization/62075 (Vectorizer ICE on dolphin)

2014-08-11  Richard Biener  <rguenther@suse.de>

PR tree-optimization/62075
* tree-vect-slp.c (vect_detect_hybrid_slp_stmts): Properly
handle uses in patterns.

* gcc.dg/vect/pr62075.c: New testcase.

From-SVN: r213815

10 years agogcc/
Alexander Ivchenko [Mon, 11 Aug 2014 11:39:14 +0000 (11:39 +0000)]
gcc/
        * common/config/i386/i386-common.c
(OPTION_MASK_ISA_AVX512VL_SET): Define.
(OPTION_MASK_ISA_AVX512F_UNSET): Update.
(ix86_handle_option): Handle OPT_mavx512vl.
* config/i386/cpuid.h (bit_AVX512VL): Define.
* config/i386/driver-i386.c (host_detect_local_cpu): Detect avx512vl,
set -mavx512vl accordingly.
* config/i386/i386-c.c (ix86_target_macros_internal): Handle
OPTION_MASK_ISA_AVX512VL.
* config/i386/i386.c (ix86_target_string): Handle -mavx512vl.
(ix86_option_override_internal): Define PTA_AVX512VL, handle
PTA_AVX512VL and OPTION_MASK_ISA_AVX512VL.
(ix86_valid_target_attribute_inner_p): Handle OPT_mavx512vl.
* config/i386/i386.h (TARGET_AVX512VL): Define.
(TARGET_AVX512VL_P(x)): Ditto.
* config/i386/i386.opt: Add mavx512vl.

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: r213813

10 years agore PR c/62073 (Segmentation fault with tree vectorize)
Felix Yang [Mon, 11 Aug 2014 11:24:35 +0000 (11:24 +0000)]
re PR c/62073 (Segmentation fault with tree vectorize)

2014-08-11  Felix Yang  <fei.yang0953@gmail.com>

PR tree-optimization/62073
* tree-vect-loop.c (vect_is_simple_reduction_1): Check that DEF1 has
a basic block.

* gcc.dg/vect/pr62073.c: New test.

From-SVN: r213812

10 years agoi386-common.c (OPTION_MASK_ISA_AVX512BW_SET): Define.
Alexander Ivchenko [Mon, 11 Aug 2014 11:22:26 +0000 (11:22 +0000)]
i386-common.c (OPTION_MASK_ISA_AVX512BW_SET): Define.

gcc/
        * common/config/i386/i386-common.c
(OPTION_MASK_ISA_AVX512BW_SET) : Define.
(OPTION_MASK_ISA_AVX512BW_UNSET): Ditto.
(OPTION_MASK_ISA_AVX512VL_UNSET) : Ditto.
(ix86_handle_option): Handle OPT_mavx512bw.
* config/i386/cpuid.h (bit_AVX512BW): Define.
* config/i386/driver-i386.c (host_detect_local_cpu): Detect avx512bw,
set -mavx512bw accordingly.
* config/i386/i386-c.c (ix86_target_macros_internal): Handle
OPTION_MASK_ISA_AVX512BW.
* config/i386/i386.c (ix86_target_string): Handle -mavx512bw.
(ix86_option_override_internal): Define PTA_AVX512BW, handle
PTA_AVX512BW and OPTION_MASK_ISA_AVX512BW.
(ix86_valid_target_attribute_inner_p): Handle OPT_mavx512bw.
* config/i386/i386.h (TARGET_AVX512BW): Define.
(TARGET_AVX512BW_P(x)): Ditto.
* config/i386/i386.opt: Add mavx512bw.

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: r213811

10 years agore PR tree-optimization/62070 (ICE: verify_ssa failed)
Richard Biener [Mon, 11 Aug 2014 10:55:10 +0000 (10:55 +0000)]
re PR tree-optimization/62070 (ICE: verify_ssa failed)

2014-08-11  Richard Biener  <rguenther@suse.de>

PR tree-optimization/62070
* tree-ssa-loop-manip.c (gimple_duplicate_loop_to_header_edge):
Remove SSA checking.

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

From-SVN: r213810

10 years agore PR fortran/61950 (Many 64-bit fortran allocate tests FAIL)
Richard Biener [Mon, 11 Aug 2014 07:49:30 +0000 (07:49 +0000)]
re PR fortran/61950 (Many 64-bit fortran allocate tests FAIL)

2014-08-11  Richard Biener  <rguenther@suse.de>

        PR fortran/61950
* trans-expr.c (gfc_conv_structure): Initialize _size with
a value of proper type.

From-SVN: r213809

10 years agotexi2pod.pl (postprocess): Move command process for '@sc' to the front of '@dfn'.
Mingjie Xing [Mon, 11 Aug 2014 07:29:41 +0000 (07:29 +0000)]
texi2pod.pl (postprocess): Move command process for '@sc' to the front of '@dfn'.

* texi2pod.pl (postprocess): Move command process for '@sc' to the
front of '@dfn'.  Add a new command process for '@t{...}', just print
the content.

From-SVN: r213808

10 years agoMove inlining of Asan memory checks to sanopt pass.
Yury Gribov [Mon, 11 Aug 2014 06:12:12 +0000 (06:12 +0000)]
Move inlining of Asan memory checks to sanopt pass.

Change asan-instrumentation-with-call-threshold to more closely match LLVM.

2014-08-11  Yury Gribov  <y.gribov@samsung.com>

gcc/
* asan.c (asan_check_flags): New enum.
(build_check_stmt_with_calls): Removed function.
(build_check_stmt): Split inlining logic to
asan_expand_check_ifn.
(instrument_derefs): Rename parameter.
(instrument_mem_region_access): Rename parameter.
(instrument_strlen_call): Likewise.
(asan_expand_check_ifn): New function.
(asan_instrument): Remove old code.
(pass_sanopt::execute): Change handling of
asan-instrumentation-with-call-threshold.
(asan_clear_shadow): Fix formatting.
(asan_function_start): Likewise.
(asan_emit_stack_protection): Likewise.
* doc/invoke.texi (asan-instrumentation-with-call-threshold):
Update description.
* internal-fn.c (expand_ASAN_CHECK): New function.
* internal-fn.def (ASAN_CHECK): New internal function.
* params.def (PARAM_ASAN_INSTRUMENTATION_WITH_CALL_THRESHOLD):
Update description.
(PARAM_ASAN_USE_AFTER_RETURN): Likewise.
* tree.c: Small comment fix.

gcc/testsuite/
* c-c++-common/asan/inc.c: Update test.
* c-c++-common/asan/instrument-with-calls-2.c: Likewise.
* c-c++-common/asan/no-redundant-instrumentation-1.c: Likewise.
* c-c++-common/asan/no-redundant-instrumentation-2.c: Likewise.
* c-c++-common/asan/no-redundant-instrumentation-3.c: Likewise.
* c-c++-common/asan/no-redundant-instrumentation-4.c: Likewise.
* c-c++-common/asan/no-redundant-instrumentation-5.c: Likewise.
* c-c++-common/asan/no-redundant-instrumentation-6.c: Likewise.
* c-c++-common/asan/no-redundant-instrumentation-7.c: Likewise.
* c-c++-common/asan/no-redundant-instrumentation-8.c: Likewise.
* c-c++-common/asan/no-redundant-instrumentation-9.c: Likewise.

From-SVN: r213807

10 years agoAdded fnspec to internal functions.
Yury Gribov [Mon, 11 Aug 2014 06:06:29 +0000 (06:06 +0000)]
Added fnspec to internal functions.

2014-08-11  Yury Gribov  <y.gribov@samsung.com>

gcc/
        * gimple.c (gimple_call_fnspec): Support internal functions.
        (gimple_call_return_flags): Use const.
        * Makefile.in (GTFILES): Add internal-fn.h to list of GC files.
        * internal-fn.def: Add fnspec information.
        * internal-fn.h (internal_fn_fnspec): New function.
        (init_internal_fns): Declare new function.
        * internal-fn.c (internal_fn_fnspec_array): New global variable.
        (init_internal_fns): New function.
        * tree-core.h: Update macro call.
        * tree.c (build_common_builtin_nodes): Initialize internal fns.

From-SVN: r213806

10 years agolto-streamer.h (struct output_block::symbol): Change from struct symtab_node to plain...
Gerald Pfeifer [Mon, 11 Aug 2014 02:10:00 +0000 (02:10 +0000)]
lto-streamer.h (struct output_block::symbol): Change from struct symtab_node to plain symtab_node.

* lto-streamer.h (struct output_block::symbol): Change from
struct symtab_node to plain symtab_node.
(referenced_from_this_partition_p): Change first parameter
from struct symtab_node to plain symtab_node.

From-SVN: r213805

10 years agoDaily bump.
GCC Administrator [Mon, 11 Aug 2014 00:16:53 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r213804

10 years agore PR c/51849 (-Wc99-compat would be considered useful)
Marek Polacek [Sun, 10 Aug 2014 06:10:49 +0000 (06:10 +0000)]
re PR c/51849 (-Wc99-compat would be considered useful)

PR c/51849
gcc/
* gcc/doc/invoke.texi: Document -Wc90-c99-compat.
gcc/c-family/
* c-opts.c (sanitize_cpp_opts): Pass warn_c90_c99_compat to libcpp.
* c.opt (Wc90-c99-compat): Add option.
gcc/c/
* c-decl.c (build_array_declarator): Remove check for !flag_isoc99.
Call pedwarn_c90 instead of pedwarn.
(check_bitfield_type_and_width): Likewise.
(declspecs_add_qual): Likewise.
(declspecs_add_type): Likewise.
(warn_variable_length_array): Unify function for -pedantic and -Wvla.
Adjust to only call pedwarn_c90.
(grokdeclarator): Remove pedantic && !flag_isoc99 check.  Call
pedwarn_c90 instead of pedwarn.
* c-errors.c (pedwarn_c90): Handle -Wc90-c99-compat.
* c-parser.c (disable_extension_diagnostics): Handle
warn_c90_c99_compat.
(restore_extension_diagnostics): Likewise.
(c_parser_enum_specifier): Remove check for !flag_isoc99.  Call
pedwarn_c90 instead of pedwarn.
(c_parser_initelt): Likewise.
(c_parser_postfix_expression): Likewise.
(c_parser_postfix_expression_after_paren_type): Likewise.
(c_parser_compound_statement_nostart): Remove check for !flag_isoc99.
* c-tree.h: Fix formatting.
* c-typeck.c (build_array_ref): Remove check for !flag_isoc99.  Call
pedwarn_c90 instead of pedwarn.
gcc/testsuite/
* gcc.dg/Wc90-c99-compat-1.c: New test.
* gcc.dg/Wc90-c99-compat-2.c: New test.
* gcc.dg/Wc90-c99-compat-3.c: New test.
* gcc.dg/Wc90-c99-compat-4.c: New test.
* gcc.dg/Wc90-c99-compat-5.c: New test.
* gcc.dg/Wc90-c99-compat-6.c: New test.
* gcc.dg/wvla-1.c: Adjust dg-warning.
* gcc.dg/wvla-2.c: Adjust dg-warning.
* gcc.dg/wvla-4.c: Adjust dg-warning.
* gcc.dg/wvla-6.c: Adjust dg-warning.
libcpp/
* lex.c (_cpp_lex_direct): Warn when -Wc90-c99-compat is in effect.
* charset.c (_cpp_valid_ucn): Likewise.
* include/cpplib.h (cpp_options): Add cpp_warn_c90_c99_compat.
* macro.c (replace_args): Warn when -Wc90-c99-compat is in effect.
(parse_params): Likewise.

From-SVN: r213786

10 years agoDaily bump.
GCC Administrator [Sun, 10 Aug 2014 00:16:59 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r213785

10 years agore PR fortran/61999 (`gfc_simplify_dot_product` causes ICE for constant arguments)
Thomas Koenig [Sat, 9 Aug 2014 22:38:46 +0000 (22:38 +0000)]
re PR fortran/61999 (`gfc_simplify_dot_product` causes ICE for constant arguments)

2014-08-10  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/61999
* simplify.c (gfc_simplify_dot_product): Convert types of
vectors before calculating the result.

2014-08-10  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/61999
* gfortran.dg/dot_product_3.f90:  New test case.

From-SVN: r213782

10 years agodevirt-35.C: Fix template.
Jan Hubicka [Sat, 9 Aug 2014 22:07:55 +0000 (00:07 +0200)]
devirt-35.C: Fix template.

* g++.dg/ipa/devirt-35.C: Fix template.
* g++.dg/ipa/devirt-36.C: Likewise.
* g++.dg/ipa/devirt-37.C: New testcase.
* ipa-devirt.c (get_dynamic_type): Handle case when instance is in
DECL correctly; do not give up on types in static storage.

From-SVN: r213781

10 years agorandom.tcc (uniform_on_sphere_helper): Define.
Ulrich Drepper [Sat, 9 Aug 2014 17:56:57 +0000 (17:56 +0000)]
random.tcc (uniform_on_sphere_helper): Define.

        * include/ext/random.tcc (uniform_on_sphere_helper): Define.
        (uniform_on_sphere_distribution::operator()): Use the new helper
        class for the implementation.

        * testsuite/ext/random/uniform_on_sphere_distribution/operators/
        equal.cc: Remove bogus part of comment.
        * testsuite/ext/random/uniform_on_sphere_distribution/operators/
        inequal.cc: Likewise.
        * testsuite/ext/random/uniform_on_sphere_distribution/operators/
        serialize.cc: Add check to verify result of serialzation and
        deserialization.
        * testsuite/ext/random/uniform_on_sphere_distribution/operators/
        generate.cc: New file.

From-SVN: r213779

10 years ago2014-08-09 Paolo Carlini <paolo.carlini@oracle.com>
Paolo Carlini [Sat, 9 Aug 2014 09:00:34 +0000 (09:00 +0000)]
2014-08-09  Paolo Carlini  <paolo.carlini@oracle.com>

* Adjust date.

From-SVN: r213777

10 years agoinvoke.texi ([Wnarrowing]): Update for non-constants in C++11.
Paolo Carlini [Sat, 9 Aug 2014 08:58:33 +0000 (08:58 +0000)]
invoke.texi ([Wnarrowing]): Update for non-constants in C++11.

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

* doc/invoke.texi ([Wnarrowing]): Update for non-constants in C++11.

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

* typeck2.c (check_narrowing): Add tsubst_flags_t parameter, change
return type to bool; in C++11 for constants give errors, not pedwarns.
* cp-tree.h (check_narrowing): Adjust declaration.
* call.c (convert_like_real): Update calls.
* semantics.c (finish_compound_literal): Likewise.

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

* g++.dg/cpp0x/Wnarrowing1.C: Adjust for errors.
* g++.dg/cpp0x/enum29.C: Adjust.

/libstdc++-v3
2014-08-09  Paolo Carlini  <paolo.carlini@oracle.com>

* include/ext/pod_char_traits.h (char_traits<__gnu_cxx::
character<_Value, _Int, _St> >::eof): Fix vs narrowing conversion.

From-SVN: r213776

10 years agore PR libstdc++/61667 (setting max_load_factor of unordered_map cause buckets shrink)
François Dumont [Sat, 9 Aug 2014 08:00:59 +0000 (08:00 +0000)]
re PR libstdc++/61667 (setting max_load_factor of unordered_map cause buckets shrink)

2014-08-09  François Dumont  <fdumont@gcc.gnu.org>

PR libstdc++/61667
* include/bits/hashtable.h (_Hashtable<>::__rehash_policy): Use
_M_need_rehash to initialize the rehash policy and check if a rehash is
needed.
* testsuite/23_containers/unordered_map/modifiers/61667.cc: New.

From-SVN: r213775

10 years ago[gcc/]
Roman Gareev [Sat, 9 Aug 2014 05:57:47 +0000 (05:57 +0000)]
[gcc/]

* graphite-isl-ast-to-gimple.c:
(translate_isl_ast_node_user): Use nb_loops instead of loop->num + 1.

[gcc/testsuite]

* gcc.dg/graphite/isl-ast-gen-user-1.c: New testcase.

From-SVN: r213774

10 years agoDaily bump.
GCC Administrator [Sat, 9 Aug 2014 00:16:46 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r213772

10 years agors6000.md (*movdi_internal64): Add a new constraint.
Guozhi Wei [Fri, 8 Aug 2014 23:00:28 +0000 (23:00 +0000)]
rs6000.md (*movdi_internal64): Add a new constraint.

* config/rs6000/rs6000.md (*movdi_internal64): Add a new constraint.

From-SVN: r213767

10 years agoRemove skeleton type units that were being produced with -gsplit-dwarf.
Cary Coutant [Fri, 8 Aug 2014 20:33:26 +0000 (20:33 +0000)]
Remove skeleton type units that were being produced with -gsplit-dwarf.

These sections were originally intended as targets for .gdb_index
entries that needed to point to type units.  Because of the limitations
of the .debug_gnu_pubnames/pubtypes sections with split DWARF, we were
not able to pass along enough information to the gold linker to generate
those index entries properly, and they had to point to the CU instead.
GDB had to deal with that, and was updated a while ago to no longer
depend on the skeleton TU sections at all. This allows us to reduce
object file sizes with split DWARF by about 30%.

gcc/
* dwarf2out.c (get_skeleton_type_unit): Remove.
(output_skeleton_debug_sections): Remove skeleton type units.
(output_comdat_type_unit): Likewise.
(dwarf2out_finish): Likewise.

From-SVN: r213765

10 years ago* pt.c (lookup_template_class_1): Copy abi_tag.
Jason Merrill [Fri, 8 Aug 2014 18:17:21 +0000 (14:17 -0400)]
* pt.c (lookup_template_class_1): Copy abi_tag.

From-SVN: r213762

10 years agogo-gcc.cc (Gcc_backend::compound_statement): Don't return NULL_TREE.
Ian Lance Taylor [Fri, 8 Aug 2014 17:40:51 +0000 (17:40 +0000)]
go-gcc.cc (Gcc_backend::compound_statement): Don't return NULL_TREE.

* go-gcc.cc (Gcc_backend::compound_statement): Don't return
NULL_TREE.

From-SVN: r213761

10 years agoRemove a redundant assignment "*predictor = PRED_BUILTIN_EXPECT;", since six
Yi Yang [Fri, 8 Aug 2014 17:06:51 +0000 (12:06 -0500)]
Remove a redundant assignment "*predictor = PRED_BUILTIN_EXPECT;", since six
lines later *predictor is assigned again.

--

2014-08-08  Yi Yang  <ahyangyi@google.com>

gcc:
    * predict.c (expr_expected_value_1): Remove the redundant assignment.

From-SVN: r213760

10 years agolto-streamer.h (struct lto_input_block): Make it a class with a constructor.
Richard Biener [Fri, 8 Aug 2014 12:55:31 +0000 (12:55 +0000)]
lto-streamer.h (struct lto_input_block): Make it a class with a constructor.

2014-08-08  Richard Biener  <rguenther@suse.de>

* lto-streamer.h (struct lto_input_block): Make it a class
with a constructor.
(LTO_INIT_INPUT_BLOCK, LTO_INIT_INPUT_BLOCK_PTR): Remove.
(struct lto_function_header, struct lto_simple_header,
struct lto_simple_header_with_strings,
struct lto_decl_header, struct lto_function_header): Make
a simple inheritance hieararchy.  Remove unused fields.
(struct lto_asm_header): Remove.
* lto-streamer-out.c (produce_asm): Adjust.
(lto_output_toplevel_asms): Likewise.
(produce_asm_for_decls): Likewise.
* lto-section-out.c (lto_destroy_simple_output_block): Likewise.
* data-streamer-in.c (string_for_index): Likewise.
* ipa-inline-analysis.c (inline_read_section): Likewise.
* ipa-prop.c (ipa_prop_read_section): Likewise.
(read_replacements_section): Likewise.
* lto-cgraph.c (input_cgraph_opt_section): Likewise.
* lto-section-in.c (lto_create_simple_input_block): Likewise.
(lto_destroy_simple_input_block): Likewise.
* lto-streamer-in.c (lto_read_body_or_constructor): Likewise.
(lto_input_toplevel_asms): Likewise.

lto/
* lto.c (lto_read_decls): Adjust for lto_input_block changes.

From-SVN: r213759

10 years agogcc/
Alexander Ivchenko [Fri, 8 Aug 2014 11:31:34 +0000 (11:31 +0000)]
gcc/
        * common/config/i386/i386-common.c
(OPTION_MASK_ISA_AVX512DQ_SET): Define.
(OPTION_MASK_ISA_AVX512DQ_UNSET): Ditto.
(ix86_handle_option): Handle OPT_mavx512dq.
* config/i386/cpuid.h (bit_AVX512DQ): Define.
* config/i386/driver-i386.c (host_detect_local_cpu): Detect avx512dq,
set -mavx512dq accordingly.
* config/i386/i386-c.c (ix86_target_macros_internal): Handle
OPTION_MASK_ISA_AVX512DQ.
* config/i386/i386.c (ix86_target_string): Handle -mavx512dq.
(ix86_option_override_internal): Define PTA_AVX512DQ, handle
PTA_AVX512DQ and OPTION_MASK_ISA_AVX512DQ.
(ix86_valid_target_attribute_inner_p): Handle OPT_mavx512dq.
* config/i386/i386.h (TARGET_AVX512DQ): Define.
(TARGET_AVX512DQ_P(x)): Ditto.
* config/i386/i386.opt: Add mavx512dq.

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: r213757

10 years agore PR lto/62032 (FAIL: vsnprintf-chk.c execution, -O2 -flto -fno-use-linker-plugin...
Bin Cheng [Fri, 8 Aug 2014 10:21:12 +0000 (10:21 +0000)]
re PR lto/62032 (FAIL: vsnprintf-chk.c execution,  -O2 -flto -fno-use-linker-plugin -flto-partition=none)

PR lto/62032
* lto/lto-lang.c (lto_init): Switch mis-matched arguments.

From-SVN: r213755

10 years agobuiltins.c (c_getstr, [...]): Export.
Richard Biener [Fri, 8 Aug 2014 09:18:40 +0000 (09:18 +0000)]
builtins.c (c_getstr, [...]): Export.

2014-08-08  Richard Biener  <rguenther@suse.de>

* builtins.c (c_getstr, readonly_data_expr, init_target_chars,
target_percent, target_percent_s): Export.
(var_decl_component_p, fold_builtin_memory_op, fold_builtin_memset,
fold_builtin_bzero, fold_builtin_strcpy, fold_builtin_strncpy,
fold_builtin_strcat, fold_builtin_fputs, fold_builtin_memory_chk,
fold_builtin_stxcpy_chk, fold_builtin_stxncpy_chk,
fold_builtin_sprintf_chk_1, fold_builtin_snprintf_chk_1):
Move to gimple-fold.c.
(fold_builtin_2): Remove handling of bzero, fputs, fputs_unlocked,
strcat and strcpy.
(fold_builtin_3): Remove handling of memset, bcopy, memcpy,
mempcpy, memmove, strncpy, strcpy_chk and stpcpy_chk.
(fold_builtin_4): Remove handling of memcpy_chk, mempcpy_chk,
memmove_chk, memset_chk, strncpy_chk and stpncpy_chk.
(rewrite_call_expr_array): Remove.
(fold_builtin_sprintf_chk): Likewise.
(fold_builtin_snprintf_chk): Likewise.
(fold_builtin_varargs): Remove handling of sprintf_chk,
vsprintf_chk, snprintf_chk and vsnprintf_chk.
(gimple_fold_builtin_sprintf_chk): Remove.
(gimple_fold_builtin_snprintf_chk): Likewise.
(gimple_fold_builtin_varargs): Likewise.
(fold_call_stmt): Do not call gimple_fold_builtin_varargs.
* predict.c (optimize_bb_for_size_p): Handle NULL bb.
* gimple.c (gimple_seq_add_seq_without_update): New function.
* gimple.h (gimple_seq_add_seq_without_update): Declare.
* gimple-fold.c: Include output.h.
(gsi_replace_with_seq_vops): New function, split out from ...
(gimplify_and_update_call_from_tree): ... here.
(replace_call_with_value): New function.
(replace_call_with_call_and_fold): Likewise.
(var_decl_component_p): Moved from builtins.c.
(gimple_fold_builtin_memory_op): Moved from builtins.c
fold_builtin_memory_op and rewritten to GIMPLE.
(gimple_fold_builtin_memset): Likewise.
(gimple_fold_builtin_strcpy): Likewise.
(gimple_fold_builtin_strncpy): Likewise.
(gimple_fold_builtin_strcat): Likewise.
(gimple_fold_builtin_fputs): Likewise.
(gimple_fold_builtin_memory_chk): Likewise.
(gimple_fold_builtin_stxcpy_chk): Likewise.
(gimple_fold_builtin_stxncpy_chk): Likewise.
(gimple_fold_builtin_snprintf_chk): Likewise.
(gimple_fold_builtin_sprintf_chk): Likewise.
(gimple_fold_builtin_strlen): New function.
(gimple_fold_builtin_with_strlen): New function split out from
gimple_fold_builtin.
(gimple_fold_builtin): Change signature and handle
bzero, memset, bcopy, memcpy, mempcpy and memmove folding
here.  Call gimple_fold_builtin_with_strlen.
(gimple_fold_call): Adjust.

* gcc.dg/strlenopt-8.c: Remove XFAIL.
* gcc.dg/tree-prof/stringop-2.c: Adjust.
* gfortran.dg/array_memcpy_4.f90: Likewise.
* gfortran.dg/trim_optimize_1.f90: Likewise.
* gfortran.dg/trim_optimize_2.f90: Likewise.

From-SVN: r213753

10 years agosemantics.c (expand_or_defer_fn_1): Check for keep-inline-dllexport that we operate...
Kai Tietz [Fri, 8 Aug 2014 07:59:38 +0000 (09:59 +0200)]
semantics.c (expand_or_defer_fn_1): Check for keep-inline-dllexport that we operate on a true inline.

* semantics.c (expand_or_defer_fn_1): Check for keep-inline-dllexport
that we operate on a true inline.

From-SVN: r213751

10 years agocalls.c (precompute_arguments): Check promoted_for_signed_and_unsigned_p and set...
Kugan Vivekanandarajah [Fri, 8 Aug 2014 05:31:44 +0000 (05:31 +0000)]
calls.c (precompute_arguments): Check promoted_for_signed_and_unsigned_p and set the promoted mode.

gcc
2014-08-08  Kugan Vivekanandarajah  <kuganv@linaro.org>

* calls.c (precompute_arguments): Check
 promoted_for_signed_and_unsigned_p and set the promoted mode.
(promoted_for_signed_and_unsigned_p): New function.
(expand_expr_real_1): Check promoted_for_signed_and_unsigned_p
and set the promoted mode.
* expr.h (promoted_for_signed_and_unsigned_p): New function definition.
* cfgexpand.c (expand_gimple_stmt_1): Call emit_move_insn if
SUBREG is promoted with SRP_SIGNED_AND_UNSIGNED.

gcc/testsuite
2014-08-08  Kugan Vivekanandarajah  <kuganv@linaro.org>

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

From-SVN: r213750

10 years agocalls.c (precompute_arguments): Use new SUBREG_PROMOTED_SET instead of SUBREG_PROMOTE...
Kugan Vivekanandarajah [Fri, 8 Aug 2014 05:24:12 +0000 (05:24 +0000)]
calls.c (precompute_arguments): Use new SUBREG_PROMOTED_SET instead of SUBREG_PROMOTED_UNSIGNED_SET.

gcc/
2014-08-08  Kugan Vivekanandarajah  <kuganv@linaro.org>

* calls.c (precompute_arguments): Use new SUBREG_PROMOTED_SET
instead of SUBREG_PROMOTED_UNSIGNED_SET.
(expand_call): Likewise.
* cfgexpand.c (expand_gimple_stmt_1): Use SUBREG_PROMOTED_SIGN
to get promoted mode.
* combine.c (record_promoted_value): Skip > 0 comparison with
SUBREG_PROMOTED_UNSIGNED_P as it now returns only 0 or 1.
* expr.c (convert_move): Use SUBREG_CHECK_PROMOTED_SIGN instead
of SUBREG_PROMOTED_UNSIGNED_P.
(convert_modes): Likewise.
(store_expr): Use SUBREG_PROMOTED_SIGN to get promoted mode.
Use SUBREG_CHECK_PROMOTED_SIGN instead of SUBREG_PROMOTED_UNSIGNED_P.
(expand_expr_real_1): Use new SUBREG_PROMOTED_SET instead of
SUBREG_PROMOTED_UNSIGNED_SET.
* function.c (assign_parm_setup_reg): Use new SUBREG_PROMOTED_SET
instead of SUBREG_PROMOTED_UNSIGNED_SET.
* ifcvt.c (noce_emit_cmove): Updated to use SUBREG_PROMOTED_GET and
SUBREG_PROMOTED_SET.
* internal-fn.c (ubsan_expand_si_overflow_mul_check): Use
SUBREG_PROMOTED_SET instead of SUBREG_PROMOTED_UNSIGNED_SET.
* optabs.c (widen_operand): Use SUBREG_CHECK_PROMOTED_SIGN instead
of SUBREG_PROMOTED_UNSIGNED_P.
* rtl.h (SUBREG_PROMOTED_UNSIGNED_SET): Remove.
(SUBREG_PROMOTED_SET): New define.
(SUBREG_PROMOTED_GET): Likewise.
(SUBREG_PROMOTED_SIGN): Likewise.
(SUBREG_PROMOTED_SIGNED_P): Likewise.
(SUBREG_CHECK_PROMOTED_SIGN): Likewise.
(SUBREG_PROMOTED_UNSIGNED_P): Updated.
* rtlanal.c (unsigned_reg_p): Use new SUBREG_PROMOTED_GET
instead of SUBREG_PROMOTED_UNSIGNED_GET.
(nonzero_bits1): Skip > 0 comparison with the results as
SUBREG_PROMOTED_UNSIGNED_P now returns only 0 or 1.
(num_sign_bit_copies1): Use SUBREG_PROMOTED_SIGNED_P instead
of !SUBREG_PROMOTED_UNSIGNED_P.
* simplify-rtx.c (simplify_unary_operation_1): Use new
SUBREG_PROMOTED_SIGNED_P instead of !SUBREG_PROMOTED_UNSIGNED_P.
(simplify_subreg): Use new SUBREG_PROMOTED_SIGNED_P,
SUBREG_PROMOTED_UNSIGNED_P and SUBREG_PROMOTED_SET instead of
SUBREG_PROMOTED_UNSIGNED_P and SUBREG_PROMOTED_UNSIGNED_SET.

From-SVN: r213749

10 years agopr61772.c: Skip lto running.
Bin Cheng [Fri, 8 Aug 2014 02:45:13 +0000 (02:45 +0000)]
pr61772.c: Skip lto running.

* gcc.dg/torture/pr61772.c: Skip lto running.

From-SVN: r213748

10 years agoDaily bump.
GCC Administrator [Fri, 8 Aug 2014 00:16:52 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r213747

10 years agofuture (__location_invariant): Move specializations after preprocessor condition.
Jonathan Wakely [Thu, 7 Aug 2014 22:54:53 +0000 (23:54 +0100)]
future (__location_invariant): Move specializations after preprocessor condition.

* include/std/future (__location_invariant): Move specializations
after preprocessor condition.

From-SVN: r213744

10 years agore PR tree-optimization/60707 (FAIL: gfortran.dg/pr45636.f90 -O scan-tree-dump...
John David Anglin [Thu, 7 Aug 2014 21:44:55 +0000 (21:44 +0000)]
re PR tree-optimization/60707 (FAIL: gfortran.dg/pr45636.f90  -O   scan-tree-dump-times forwprop2 "memset" 0)

PR tree-optimization/60707
* gfortran.dg/pr45636.f90: xfail on 32-bit hppa*-*-*.

From-SVN: r213740

10 years agoipa-devirt.c: Include gimple-pretty-print.h
Jan Hubicka [Thu, 7 Aug 2014 20:58:17 +0000 (22:58 +0200)]
ipa-devirt.c: Include gimple-pretty-print.h

* ipa-devirt.c: Include gimple-pretty-print.h
(referenced_from_vtable_p): Exclude DECL_EXTERNAL from
further tests.
(decl_maybe_in_construction_p): Fix conditional on cdtor check
(get_polymorphic_call_info): Fix return value
(type_change_info): New sturcture based on ipa-prop
variant.
(noncall_stmt_may_be_vtbl_ptr_store): New predicate
based on ipa-prop variant.
(extr_type_from_vtbl_ptr_store): New function
based on ipa-prop variant.
(record_known_type): New function.
(check_stmt_for_type_change): New function.
(get_dynamic_type): New function.
* ipa-prop.c (ipa_analyze_call_uses): Use get_dynamic_type.
* tree-ssa-pre.c: ipa-utils.h
(eliminate_dom_walker::before_dom_children): Use ipa-devirt
machinery; sanity check with ipa-prop devirtualization.
* trans-mem.c (ipa_tm_insert_gettmclone_call): Clear
polymorphic flag.

* g++.dg/ipa/devirt-35.C: New testcase.
* g++.dg/ipa/devirt-36.C: New testcase.

From-SVN: r213739

10 years agoremove pointer-set.[ch]
Trevor Saunders [Thu, 7 Aug 2014 20:52:50 +0000 (20:52 +0000)]
remove pointer-set.[ch]

gcc/

* Makefile.in: Remove references to pointer-set.c and pointer-set.h.
* alias.c, cfgexpand.c, cgraphbuild.c,
config/aarch64/aarch64-builtins.c, config/aarch64/aarch64.c,
config/alpha/alpha.c, config/darwin.c, config/i386/i386.c,
config/i386/winnt.c, config/ia64/ia64.c, config/m32c/m32c.c,
config/mep/mep.c, config/mips/mips.c, config/rs6000/rs6000.c,
config/s390/s390.c, config/sh/sh.c, config/sparc/sparc.c,
config/spu/spu.c, config/stormy16/stormy16.c, config/tilegx/tilegx.c,
config/tilepro/tilepro.c, config/xtensa/xtensa.c, dominance.c,
dse.c, except.c, gengtype.c, gimple-expr.c,
gimple-ssa-strength-reduction.c, gimplify.c, ifcvt.c,
ipa-visibility.c, lto-streamer.h, omp-low.c, predict.c, stmt.c,
tree-affine.c, tree-cfg.c, tree-eh.c, tree-inline.c, tree-nested.c,
tree-scalar-evolution.c, tree-ssa-loop-im.c, tree-ssa-loop-niter.c,
tree-ssa-phiopt.c, tree-ssa-structalias.c, tree-ssa-uninit.c,
tree-ssa.c, tree.c, var-tracking.c, varpool.c: Remove includes of
pointer-set.h.
* pointer-set.c: Remove file.
* pointer-set.h: Remove file.

gcc/c-family/

* c-gimplify.c, cilk.c: Remove includes of pointer-set.h.

gcc/c/

* c-typeck.c: Remove include of pointer-set.h.

gcc/cp/

* class.c, cp-gimplify.c, decl.c, decl2.c, error.c, method.c,
optimize.c, pt.c, semantics.c: Remove includes of pointer-set.h.

From-SVN: r213738

10 years agofuture (_State_baseV2::_M_set_result): Pass pointers to _M_do_set.
Jonathan Wakely [Thu, 7 Aug 2014 20:13:52 +0000 (21:13 +0100)]
future (_State_baseV2::_M_set_result): Pass pointers to _M_do_set.

* include/std/future (_State_baseV2::_M_set_result): Pass pointers to
_M_do_set.
(_State_baseV2::_M_do_set): Change parameters to pointers.
(_State_baseV2::_Setter): Change _M_arg from reference to pointer.
(_State_baseV2::__setter): Initialize _Setter with pointers.
(_State_baseV2::__setter(promise<void>*)): Remove overload.
(promise::set_value, promise::set_exception): Pass setter directly
to _M_set_result.
(_State_baseV2::_Task_setter): Add template parameter for callable
type and replace std::function member with pointer to that type.
Change _M_result member from reference to pointer.
(_State_baseV2::_S_task_setter): Change parameter to lvalue reference
and initialize _Task_setter with pointers.
(__location_invariant): Specialize for _Setter and _Task_setter.

From-SVN: r213737

10 years agore PR c++/51312 ([C++0x] Wrong interpretation of converted constant expressions ...
Paolo Carlini [Thu, 7 Aug 2014 19:51:28 +0000 (19:51 +0000)]
re PR c++/51312 ([C++0x] Wrong interpretation of converted constant expressions (for enumerator initializers))

/cp
2014-08-07  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/51312
* decl.c (build_enumerator): Handle class types with conversion
operators via perform_implicit_conversion_flags and
build_expr_type_conversion.

* cvt.c (build_expr_type_conversion): Replace pair of errors
with error + inform.

/testsuite
2014-08-07  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/51312
* g++.dg/cpp0x/enum29.C: New.

From-SVN: r213736

10 years agore PR c++/62043 (GCC hangs / aborts / double free or corruption (!prev) on invalid...
Jason Merrill [Thu, 7 Aug 2014 19:48:36 +0000 (15:48 -0400)]
re PR c++/62043 (GCC hangs / aborts / double free or corruption (!prev) on invalid input)

PR c++/62043
* parser.c (c_parse_file): Change sorry to fatal_error.

From-SVN: r213732

10 years agore PR c++/61959 (ICE: in tree_to_uhwi, at tree.h:3657 when building Mozilla code)
Jason Merrill [Thu, 7 Aug 2014 19:48:30 +0000 (15:48 -0400)]
re PR c++/61959 (ICE: in tree_to_uhwi, at tree.h:3657 when building Mozilla code)

PR c++/61959
* semantics.c (cxx_eval_bare_aggregate): Handle POINTER_PLUS_EXPR.

From-SVN: r213731

10 years agoc11-atomic-exec-4.c: Undefine _POSIX_C_SOURCE before defining in dg-options.
John David Anglin [Thu, 7 Aug 2014 19:21:50 +0000 (19:21 +0000)]
c11-atomic-exec-4.c: Undefine _POSIX_C_SOURCE before defining in dg-options.

* gcc.dg/atomic/c11-atomic-exec-4.c: Undefine _POSIX_C_SOURCE before
defining in dg-options.
* gcc.dg/atomic/c11-atomic-exec-5.c: Likewise.

From-SVN: r213729

10 years agostdatomic-flag.c: Add xfail comment.
John David Anglin [Thu, 7 Aug 2014 18:56:59 +0000 (18:56 +0000)]
stdatomic-flag.c: Add xfail comment.

* gcc.dg/atomic/stdatomic-flag.c: Add xfail comment.

From-SVN: r213727

10 years agomemcpy-5.c: Add -fno-common option on hppa*-*-hpux*.
John David Anglin [Thu, 7 Aug 2014 18:46:13 +0000 (18:46 +0000)]
memcpy-5.c: Add -fno-common option on hppa*-*-hpux*.

* gcc.dg/memcpy-5.c: Add -fno-common option on hppa*-*-hpux*.

From-SVN: r213723

10 years agopr60655-1.c: Don't add -fdata-sections option on 32-bit hppa-hpux.
John David Anglin [Thu, 7 Aug 2014 18:22:47 +0000 (18:22 +0000)]
pr60655-1.c: Don't add -fdata-sections option on 32-bit hppa-hpux.

* gcc.c-torture/compile/pr60655-1.c: Don't add -fdata-sections option
on 32-bit hppa-hpux.

From-SVN: r213720

10 years agoMakefile.in (LIBGCOV_INTERFACE): Move _gcov_dump ...
Nathan Sidwell [Thu, 7 Aug 2014 18:02:06 +0000 (18:02 +0000)]
Makefile.in (LIBGCOV_INTERFACE): Move _gcov_dump ...

* Makefile.in (LIBGCOV_INTERFACE): Move _gcov_dump ...
(LIBGCOV_DRIVER): ... to here.
* libgcov.h (gcov_do_dump): New #define.
(struct gcov_root): New.
(__gcov_root): New declaration.
(__gcov_dump_one): Declare.
* libgcov-driver.c (gcov_list, gcov_dump_complete,
run_accounted): Delete.
(gcov_compute_histogram): Add LIST argument, adjust.
(compute_summary): Adjust gcov_compute_histogram call.
(gcov_do_dump): Not hidden, static in libgcov.
(gcov_clear): Move  to interface.c.
(__gcov_dump_one): New, broken out of ...
(gcov_exit): ... here.  Make static.
(__gcov_root): New.
(__gcov_init): Adjust.
* libgcov-interface.c (gcov_clear, gcov_exit): Remove
declarations.
(__gcov_flush): Use __gcov_dump_one and __gcov_reset.
(gcov_clear): Moved from driver.c.   Add LIST argument.
(__gcov_reset): Adjust for changed interfaces.
(__gcov_fork): Remove local declaration of __gcov_flush_mx.

From-SVN: r213719

10 years agopr57233.c: Add -fno-common option on hppa*-*-hpux*.
John David Anglin [Thu, 7 Aug 2014 17:49:08 +0000 (17:49 +0000)]
pr57233.c: Add -fno-common option on hppa*-*-hpux*.

* gcc.dg/pr57233.c: Add -fno-common option on hppa*-*-hpux*.
* c-c++-common/pr50459.c: Likewise.

From-SVN: r213717

10 years agostl_list.h (_List_base::_List_base(_List_base&&)): Optimize.
Jonathan Wakely [Thu, 7 Aug 2014 17:25:13 +0000 (18:25 +0100)]
stl_list.h (_List_base::_List_base(_List_base&&)): Optimize.

* include/bits/stl_list.h (_List_base::_List_base(_List_base&&)):
Optimize.
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
Likewise.
* testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
Likewise.
* testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
Likewise.

From-SVN: r213716

10 years ago[ARM] Delete f_sels, f_seld types, use fcsel instead.
Kyrylo Tkachov [Thu, 7 Aug 2014 14:30:01 +0000 (14:30 +0000)]
[ARM] Delete f_sels, f_seld types, use fcsel instead.

* config/arm/arm.md (*cmov<mode>): Set type attribute to fcsel.
* config/arm/types.md (f_sels, f_seld): Delete.

From-SVN: r213713

10 years ago[AArch64] Restrict usage of FP/SIMD registers for TImode reload and absdi2 patterns...
Kyrylo Tkachov [Thu, 7 Aug 2014 14:27:59 +0000 (14:27 +0000)]
[AArch64] Restrict usage of FP/SIMD registers for TImode reload and absdi2 patterns for non-float/simd targets.

* config/aarch64/aarch64.md (absdi2): Set simd attribute.
(aarch64_reload_mov<mode>): Predicate on TARGET_FLOAT.
(aarch64_movdi_<mode>high): Likewise.
(aarch64_mov<mode>high_di): Likewise.
(aarch64_movdi_<mode>low): Likewise.
(aarch64_mov<mode>low_di): Likewise.
(aarch64_movtilow_tilow): Likewise.
Add comment explaining usage of fp,simd attributes and of
TARGET_FLOAT and TARGET_SIMD.

From-SVN: r213712

10 years ago[AArch64] Use MOVN to generate 64-bit negative immediates where sensible
Ian Bolton [Thu, 7 Aug 2014 13:42:22 +0000 (13:42 +0000)]
[AArch64] Use MOVN to generate 64-bit negative immediates where sensible

* config/aarch64/aarch64.c (aarch64_expand_mov_immediate):
Use MOVN when one of the half-words is 0xffff.

Co-Authored-By: Kyrylo Tkachov <kyrylo.tkachov@arm.com>
From-SVN: r213711

10 years agothumb1.md (*thumb1_movqi_insn): Copy of thumb1_movhi_insn.
Marat Zakirov [Thu, 7 Aug 2014 13:29:07 +0000 (13:29 +0000)]
thumb1.md (*thumb1_movqi_insn): Copy of thumb1_movhi_insn.

2014-08-07  Marat Zakirov  <m.zakirov@samsung.com>

* config/arm/thumb1.md (*thumb1_movqi_insn): Copy of thumb1_movhi_insn.

From-SVN: r213710

10 years agoAdd statistical printout of rank_for_schedule decisions
Maxim Kuvyrkov [Thu, 7 Aug 2014 11:16:29 +0000 (11:16 +0000)]
Add statistical printout of rank_for_schedule decisions

* haifa-sched.c (SCHED_SORT): Delete.  Macro used exactly once.
(enum rfs_decition:RFS_*): New constants wrapped in an enum.
(rfs_str): String corresponding to RFS_* constants.
(rank_for_schedule_stats_t): New typedef.
(rank_for_schedule_stats): New static variable.
(rfs_result): New static function.
(rank_for_schedule): Track statistics for deciding heuristics.
(rank_for_schedule_stats_diff, print_rank_for_schedule_stats): New
static functions.
(ready_sort): Use them for debug printouts.
(schedule_block): Init statistics state.  Print statistics on
rank_for_schedule decisions.

From-SVN: r213709

10 years agoFix INSN_TICK heuristic for SCHED_PRESSURE
Maxim Kuvyrkov [Thu, 7 Aug 2014 11:16:16 +0000 (11:16 +0000)]
Fix INSN_TICK heuristic for SCHED_PRESSURE

* haifa-sched.c (rank_for_schedule): Fix INSN_TICK-based heuristics.

From-SVN: r213708

10 years agoavx512f-vfixupimmpd-2.c: Include float.h instead of values.h, change MAXDOUBLE for...
Petr Murzin [Thu, 7 Aug 2014 10:57:39 +0000 (10:57 +0000)]
avx512f-vfixupimmpd-2.c: Include float.h instead of values.h, change MAXDOUBLE for DBL_MAX.

gcc/testsuite
* gcc.target/i386/avx512f-vfixupimmpd-2.c: Include float.h instead of
values.h, change MAXDOUBLE for DBL_MAX.
* gcc.target/i386/avx512f-vfixupimmsd-2.c: Ditto.
* gcc.target/i386/avx512f-vfixupimmps-2.c: Include float.h instead of
values.h, change MAXFLOAT for FLT_MAX.
* gcc.target/i386/avx512f-vfixupimmss-2.c: Ditto.
* gcc.target/i386/avx512f-vpermi2d-2.c: Do not include values.h.
* gcc.target/i386/avx512f-vpermi2pd-2.c: Ditto.
* gcc.target/i386/avx512f-vpermi2ps-2.c: Ditto.
* gcc.target/i386/avx512f-vpermi2q-2.c: Ditto.
* gcc.target/i386/avx512f-vpermt2d-2.c: Ditto.
* gcc.target/i386/avx512f-vpermt2pd-2.c: Ditto.
* gcc.target/i386/avx512f-vpermt2ps-2.c: Ditto.
* gcc.target/i386/avx512f-vpermt2q-2.c: Ditto.

From-SVN: r213706

10 years agosse.md (vec_extract_lo_<mode><mask_name>): Fix constraint.
Ilya Tocar [Thu, 7 Aug 2014 10:52:13 +0000 (10:52 +0000)]
sse.md (vec_extract_lo_<mode><mask_name>): Fix constraint.

gcc/
* config/i386/sse.md (vec_extract_lo_<mode><mask_name>): Fix
constraint.

From-SVN: r213704

10 years agoconvert the rest of the users of pointer_map to hash_map
Trevor Saunders [Thu, 7 Aug 2014 10:44:14 +0000 (10:44 +0000)]
convert the rest of the users of pointer_map to hash_map

gcc/

* hash-map.h (default_hashmap_traits): Adjust overloads of hash
function to not conflict.
* alias.c, cfgexpand.c, dse.c, except.h, gimple-expr.c,
gimple-ssa-strength-reduction.c, gimple-ssa.h, ifcvt.c,
lto-streamer-out.c, lto-streamer.h, tree-affine.c, tree-affine.h,
tree-predcom.c, tree-scalar-evolution.c, tree-ssa-loop-im.c,
tree-ssa-loop-niter.c, tree-ssa.c, value-prof.c: Use hash_map instead
of pointer_map.

gcc/cp/

* cp-tree.h, pt.c: Use hash_map instead of pointer_map.

gcc/lto/

* lto-partition.c, lto.c: Use hash_map instead of pointer_map.

From-SVN: r213703

10 years agogcc/testsuite
Kirill Yukhin [Thu, 7 Aug 2014 09:59:34 +0000 (09:59 +0000)]
gcc/testsuite
* Add forgotten file.

From-SVN: r213702

10 years agoRemove arm-specific -march in test.
Kyrylo Tkachov [Thu, 7 Aug 2014 08:31:07 +0000 (08:31 +0000)]
Remove arm-specific -march in test.

* gcc.dg/pr61756.c: Remove arm-specific dg-options.

From-SVN: r213701

10 years agofold-const.c (fold_binary_loc): Add folding of (PTR0 - (PTR1 p+ A) -> (PTR0 - PTR1...
Marek Polacek [Thu, 7 Aug 2014 08:12:04 +0000 (08:12 +0000)]
fold-const.c (fold_binary_loc): Add folding of (PTR0 - (PTR1 p+ A) -> (PTR0 - PTR1) - A.

* fold-const.c (fold_binary_loc): Add folding of
(PTR0 - (PTR1 p+ A) -> (PTR0 - PTR1) - A.
c/
* c-typeck.c (pointer_diff): Remove P - (P + CST) optimization.
testsuite/
* gcc.dg/fold-reassoc-3.c: New test.

From-SVN: r213700