1. 01 Sep, 2014 5 commits
  2. 31 Aug, 2014 8 commits
    • Commit missing patch part · e0416079
      From-SVN: r214773
      Jan-Benedict Glaw committed
    • Fix build error with Debian's 4.8.1-2 due to wrong declaration · d96be87b
      This patch fixes a non-matching declaration, which lets G++ 4.8.1 (as of
      Debian's g++ package) barf:
      
      g++ -c   -g -O2 -DIN_GCC  -DCROSS_DIRECTORY_STRUCTURE  -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -fno-common  -DHAVE_CONFIG_H -I. -I. -I/home/vaxbuild/repos/gcc/gcc -I/home/vaxbuild/repos/gcc/gcc/. -I/home/vaxbuild/repos/gcc/gcc/../include -I/home/vaxbuild/repos/gcc/gcc/../libcpp/include  -I/home/vaxbuild/repos/gcc/gcc/../libdecnumber -I/home/vaxbuild/repos/gcc/gcc/../libdecnumber/dpd -I../libdecnumber -I/home/vaxbuild/repos/gcc/gcc/../libbacktrace    -o mcore.o -MT mcore.o -MMD -MP -MF ./.deps/mcore.TPo /home/vaxbuild/repos/gcc/gcc/config/mcore/mcore.c
      /home/vaxbuild/repos/gcc/gcc/config/mcore/mcore.c: In function ‘const char* output_inline_const(machine_mode, rtx_def**)’:
      /home/vaxbuild/repos/gcc/gcc/config/mcore/mcore.c:1216:82: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 5 has type ‘long long int’ [-Wformat=]
             sprintf (buf, "%s\n\tnot\t%s\t// %ld 0x%lx", load_op, dst_fmt, value, value);
                                                                                        ^
      /home/vaxbuild/repos/gcc/gcc/config/mcore/mcore.c:1216:82: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 6 has type ‘long long int’ [-Wformat=]
      /home/vaxbuild/repos/gcc/gcc/config/mcore/mcore.c:1219:87: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 5 has type ‘long long int’ [-Wformat=]
             sprintf (buf, "%s\n\taddi\t%s,%%2\t// %ld 0x%lx", load_op, dst_fmt, value, value);
                                                                                             ^
      /home/vaxbuild/repos/gcc/gcc/config/mcore/mcore.c:1219:87: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 6 has type ‘long long int’ [-Wformat=]
      /home/vaxbuild/repos/gcc/gcc/config/mcore/mcore.c:1222:87: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 5 has type ‘long long int’ [-Wformat=]
             sprintf (buf, "%s\n\tsubi\t%s,%%2\t// %ld 0x%lx", load_op, dst_fmt, value, value);
                                                                                             ^
      /home/vaxbuild/repos/gcc/gcc/config/mcore/mcore.c:1222:87: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 6 has type ‘long long int’ [-Wformat=]
      /home/vaxbuild/repos/gcc/gcc/config/mcore/mcore.c:1226:88: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 5 has type ‘long long int’ [-Wformat=]
             sprintf (buf, "%s\n\trsubi\t%s,%%2\t// %ld 0x%lx", load_op, dst_fmt, value, value);
                                                                                              ^
      /home/vaxbuild/repos/gcc/gcc/config/mcore/mcore.c:1226:88: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 6 has type ‘long long int’ [-Wformat=]
      /home/vaxbuild/repos/gcc/gcc/config/mcore/mcore.c:1229:89: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 5 has type ‘long long int’ [-Wformat=]
             sprintf (buf, "%s\n\tbseti\t%s,%%P2\t// %ld 0x%lx", load_op, dst_fmt, value, value);
                                                                                               ^
      /home/vaxbuild/repos/gcc/gcc/config/mcore/mcore.c:1229:89: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 6 has type ‘long long int’ [-Wformat=]
      /home/vaxbuild/repos/gcc/gcc/config/mcore/mcore.c:1232:89: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 5 has type ‘long long int’ [-Wformat=]
             sprintf (buf, "%s\n\tbclri\t%s,%%Q2\t// %ld 0x%lx", load_op, dst_fmt, value, value);
                                                                                               ^
      /home/vaxbuild/repos/gcc/gcc/config/mcore/mcore.c:1232:89: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 6 has type ‘long long int’ [-Wformat=]
      /home/vaxbuild/repos/gcc/gcc/config/mcore/mcore.c:1235:88: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 5 has type ‘long long int’ [-Wformat=]
             sprintf (buf, "%s\n\trotli\t%s,%%2\t// %ld 0x%lx", load_op, dst_fmt, value, value);
                                                                                              ^
      /home/vaxbuild/repos/gcc/gcc/config/mcore/mcore.c:1235:88: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 6 has type ‘long long int’ [-Wformat=]
      /home/vaxbuild/repos/gcc/gcc/config/mcore/mcore.c:1238:87: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 5 has type ‘long long int’ [-Wformat=]
             sprintf (buf, "%s\n\tlsli\t%s,%%2\t// %ld 0x%lx", load_op, dst_fmt, value, value);
                                                                                             ^
      /home/vaxbuild/repos/gcc/gcc/config/mcore/mcore.c:1238:87: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 6 has type ‘long long int’ [-Wformat=]
      /home/vaxbuild/repos/gcc/gcc/config/mcore/mcore.c:1241:94: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 6 has type ‘long long int’ [-Wformat=]
             sprintf (buf, "%s\n\tixh\t%s,%s\t// %ld 0x%lx", load_op, dst_fmt, dst_fmt, value, value);
                                                                                                    ^
      /home/vaxbuild/repos/gcc/gcc/config/mcore/mcore.c:1241:94: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 7 has type ‘long long int’ [-Wformat=]
      /home/vaxbuild/repos/gcc/gcc/config/mcore/mcore.c:1244:94: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 6 has type ‘long long int’ [-Wformat=]
             sprintf (buf, "%s\n\tixw\t%s,%s\t// %ld 0x%lx", load_op, dst_fmt, dst_fmt, value, value);
                                                                                                    ^
      /home/vaxbuild/repos/gcc/gcc/config/mcore/mcore.c:1244:94: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 7 has type ‘long long int’ [-Wformat=]
      /home/vaxbuild/repos/gcc/gcc/config/mcore/mcore.c: At global scope:
      /home/vaxbuild/repos/gcc/gcc/config/mcore/mcore.c:100:19: warning: ‘int try_constant_tricks(long int, long long int*, long long int*)’ used but never defined [enabled by default]
       static int        try_constant_tricks           (long, HOST_WIDE_INT *, HOST_WIDE_INT *);
                         ^
      [...]
      g++   -g -O2 -DIN_GCC  -DCROSS_DIRECTORY_STRUCTURE  -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -fno-common  -DHAVE_CONFIG_H -static-libstdc++ -static-libgcc  -o cc1 c/c-lang.o c-family/stub-objc.o attribs.o c/c-errors.o c/c-decl.o c/c-typeck.o c/c-convert.o c/c-aux-info.o c/c-objc-common.o c/c-parser.o c/c-array-notation.o c-family/c-common.o c-family/c-cppbuiltin.o c-family/c-dump.o c-family/c-format.o c-family/c-gimplify.o c-family/c-lex.o c-family/c-omp.o c-family/c-opts.o c-family/c-pch.o c-family/c-ppoutput.o c-family/c-pragma.o c-family/c-pretty-print.o c-family/c-semantics.o c-family/c-ada-spec.o c-family/c-cilkplus.o c-family/array-notation-common.o c-family/cilk.o c-family/c-ubsan.o default-c.o \
        cc1-checksum.o libbackend.a main.o tree-browser.o libcommon-target.a libcommon.a ../libcpp/libcpp.a ../libdecnumber/libdecnumber.a libcommon.a ../libcpp/libcpp.a   ../libbacktrace/.libs/libbacktrace.a ../libiberty/libiberty.a ../libdecnumber/libdecnumber.a    -lmpc -lmpfr -lgmp -rdynamic -ldl  -L../zlib -lz
      libbackend.a(mcore.o): In function `mcore_const_ok_for_inline':
      /home/vaxbuild/repos/gcc/gcc/config/mcore/mcore.c:751: undefined reference to `try_constant_tricks(long, long long*, long long*)'
      libbackend.a(mcore.o): In function `mcore_const_ok_for_inline(long long)':
      /home/vaxbuild/repos/gcc/gcc/config/mcore/mcore.c:751: undefined reference to `try_constant_tricks(long, long long*, long long*)'
      libbackend.a(mcore.o): In function `mcore_const_trick_uses_not(long long)':
      /home/vaxbuild/repos/gcc/gcc/config/mcore/mcore.c:761: undefined reference to `try_constant_tricks(long, long long*, long long*)'
      libbackend.a(mcore.o): In function `mcore_const_ok_for_inline':
      /home/vaxbuild/repos/gcc/gcc/config/mcore/mcore.c:751: undefined reference to `try_constant_tricks(long, long long*, long long*)'
      collect2: error: ld returned 1 exit status
      make[1]: *** [cc1] Error 1
      make[1]: Leaving directory `/home/vaxbuild/build/mcore-elf/build-gcc/gcc'
      make: *** [all-gcc] Error 2
      
      This patch fixes only the wrong declaration of try_constant_tricks().
      
      2014-09-01  Jan-Benedict Glaw  <jbglaw@lug-owl.de>
      
      	* config/mcore/mcore.c (try_constant_tricks): Fix declaration.
      
      From-SVN: r214772
      Jan-Benedict Glaw committed
    • re PR fortran/62309 (-fno-automatic with -finit-local prevents initialization of… · 03e46144
      re PR fortran/62309 (-fno-automatic with -finit-local prevents initialization of automatics in recursive functions)
      
      2014-08-31  Fritz Reese  <Reese-Fritz@zai.com>
      
              PR fortran/62309
              * resolve.c (apply_default_init_local): Don't treat variables
              in RECURSIVE procedures as saved.
      
      2014-08-31  Fritz Reese  <Reese-Fritz@zai.com>
                  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/62309
              * gcc/testsuite/gfortran.dg/auto_save_2.f90: New.
      
      
      Co-Authored-By: Tobias Burnus <burnus@net-b.de>
      
      From-SVN: r214771
      Fritz Reese committed
    • re PR c++/62302 (Change in the comdat used for constructors) · cbb4d6a4
      	PR c++/62302
      	* optimize.c (cdtor_comdat_group): Just look at the
      	DECL_ASSEMBLER_NAME of the 'tors.
      
      From-SVN: r214770
      Jason Merrill committed
    • Fix typo. · a3e3f116
      From-SVN: r214769
      Gerald Pfeifer committed
    • trans-decl.c (gfc_build_builtin_function_decls): Add may_require_tmp dummy argument. · 93e2e046
      2014-08-31  Tobias Burnus  <burnus@net-b.de>
      
      gcc/fortran/
              * trans-decl.c (gfc_build_builtin_function_decls): Add
              may_require_tmp dummy argument.
              * trans-intrinsic.c (gfc_conv_intrinsic_caf_get,
              conv_caf_send): Handle may_require_tmp argument.
              (gfc_conv_intrinsic_function): Update call.
              * gfortran.texi (_gfortran_caf_send, _gfortran_caf_get,
              _gfortran_caf_sendget): Update interface description.
      
      gcc/testsuite/
              * gfortran.dg/coarray_lib_comm_1.f90: New.
      
      libgfortran/
              * caf/libcaf.h (_gfortran_caf_send, _gfortran_caf_get,
              _gfortran_caf_sendget): Update prototype.
              * caf/single.c (_gfortran_caf_send, _gfortran_caf_get,
              _gfortran_caf_sendget): Handle may_require_tmp.
      
      From-SVN: r214764
      Tobias Burnus committed
    • Daily bump. · 5c535ce2
      From-SVN: r214763
      GCC Administrator committed
  3. 30 Aug, 2014 8 commits
    • 20140828-1.c: New testcase. · e4b8a410
      2014-08-30  Andrew Pinski  <apinski@cavium.com>
      
              * gcc.c-torture/execute/20140828-1.c: New testcase.
      
      From-SVN: r214760
      Andrew Pinski committed
    • Add missing ChangeLog items for Rev. 214758. · 695326ef
      From-SVN: r214759
      Tobias Burnus committed
    • trans.h (gfc_caf_get_image_index, [...]): New prototypes. · 2c69df3b
      2014-08-30  Tobias Burnus  <burnus@net-b.de>
      
              * trans.h (gfc_caf_get_image_index,
              gfc_get_caf_token_offset): New prototypes.
              * trans-expr.c (gfc_caf_get_image_index): Moved from
              trans-intrinsic.c and renamed.
              (gfc_get_caf_token_offset) Ditto; support offset = NULL
              with early return.
              * trans-intrinsic.c (get_caf_token_offset, caf_get_image_index):
              Moved to trans-expr.
              (gfc_conv_intrinsic_caf_get, conv_caf_send,
              conv_intrinsic_atomic_op, conv_intrinsic_atomic_ref,
              conv_intrinsic_atomic_cas): Update callers.
      
      From-SVN: r214758
      Tobias Burnus committed
    • re PR fortran/62278 (gfc_check_dependency should also check for TARGET attribute) · e284dec5
      2014-08-30  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/62278
              PR fortran/44735
              PR fortran/60593
              * dependency.c (gfc_check_dependency): Allow for optimizations
              in the pointer-alias check.
      
      From-SVN: r214757
      Tobias Burnus committed
    • pa.c (pa_assemble_integer): Don't add PLABEL relocation prefix to function labels when... · ef719901
      	* config/pa/pa.c (pa_assemble_integer): Don't add PLABEL relocation
      	prefix to function labels when generating fast indirect calls.
      
      From-SVN: r214754
      John David Anglin committed
    • baseline_symbols.txt: Update. · 79c70232
      	* config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
      
      From-SVN: r214753
      John David Anglin committed
    • re PR bootstrap/62304 (ICE in follow_jumps, find_dead_or_set_registers) · c3f14d55
      	PR bootstrap/62304
      
      	* gcc/reorg.c (skip_consecutive_labels): Convert return type and
      	param back from rtx_insn * to rtx.  Rename param from "label" to
      	"label_or_return", reintroducing "label" as an rtx_insn * after
      	we've ensured it's not a RETURN.
      	(first_active_target_insn): Likewise for return type and param;
      	add a checked cast to rtx_insn * once we've ensured "insn" is not
      	a RETURN.
      	(steal_delay_list_from_target): Convert param "pnew_thread" back
      	from rtx_insn ** to rtx *.  Replace use of JUMP_LABEL_AS_INSN
      	with JUMP_LABEL.
      	(own_thread_p): Convert param "thread" back from an rtx_insn * to
      	an rtx.  Introduce local rtx_insn * "thread_insn" with a checked
      	cast once we've established we're not dealing with a RETURN,
      	renaming subsequent uses of "thread" to "thread_insn".
      	(fill_simple_delay_slots): Convert uses of JUMP_LABEL_AS_INSN back
      	to JUMP_LABEL.
      	(follow_jumps): Convert return type and param "label" from
      	rtx_insn * back to rtx.  Move initialization of "value" to after
      	the handling for ANY_RETURN_P, adding a checked cast there to
      	rtx_insn *.  Convert local rtx_insn * "this_label" to an rtx and
      	rename to "this_label_or_return", reintroducing "this_label" as
      	an rtx_insn * once we've handled the case where it could be an
      	ANY_RETURN_P.
      	(fill_slots_from_thread): Rename param "thread" to
      	"thread_or_return", converting from an rtx_insn * back to an rtx.
      	Reintroduce name "thread" as an rtx_insn * local with a checked
      	cast once we've handled the case of it being an ANY_RETURN_P.
      	Convert local "new_thread" from an rtx_insn * back to an rtx.
      	Add a checked cast when assigning to "trial" from "new_thread".
      	Convert use of JUMP_LABEL_AS_INSN back to JUMP_LABEL.  Add a
      	checked cast to rtx_insn * from "new_thread" when invoking
      	get_label_before.
      	(fill_eager_delay_slots): Convert locals "target_label",
      	"insn_at_target" from rtx_insn * back to rtx.
      	Convert uses of JUMP_LABEL_AS_INSN back to JUMP_LABEL.
      	(relax_delay_slots): Convert locals "trial", "target_label" from
      	rtx_insn * back to rtx.  Convert uses of JUMP_LABEL_AS_INSN back
      	to JUMP_LABEL.  Add a checked cast to rtx_insn * on "trial" when
      	invoking update_block.
      	(dbr_schedule): Convert use of JUMP_LABEL_AS_INSN back to
      	JUMP_LABEL; this removes all JUMP_LABEL_AS_INSN from reorg.c.
      
      	* resource.h (mark_target_live_regs): Undo erroneous conversion
      	of second param of r214693, converting it back from rtx_insn * to
      	rtx, since it could be a RETURN.
      
      	* resource.c (find_dead_or_set_registers): Similarly, convert
      	param "jump_target" back from an rtx_insn ** to an rtx *, as we
      	could be writing back a RETURN.  Rename local rtx_insn * "next" to
      	"next_insn", and introduce "lab_or_return" as a local rtx,
      	handling the case where JUMP_LABEL (this_jump_insn) is a RETURN.
      	(mark_target_live_regs): Undo erroneous conversion
      	of second param of r214693, converting it back from rtx_insn * to
      	rtx, since it could be a RETURN.  Rename it from "target" to
      	"target_maybe_return", reintroducing the name "target" as a local
      	rtx_insn * with a checked cast, after we've handled the case of
      	ANY_RETURN_P.
      
      From-SVN: r214752
      David Malcolm committed
    • Daily bump. · 124aeea1
      From-SVN: r214751
      GCC Administrator committed
  4. 29 Aug, 2014 19 commits
    • cppbuiltin.c (define_builtin_macros_for_type_sizes): Round pointer size up to a power of two. · 50b6ee8b
      * cppbuiltin.c (define_builtin_macros_for_type_sizes): Round
      pointer size up to a power of two.
      * defaults.h (DWARF2_ADDR_SIZE): Round up.
      (POINTER_SIZE_UNITS): New, rounded up value.
      * dwarf2asm.c (size_of_encoded_value): Use it.
      (dw2_output_indirect_constant_1): Likewise.
      * expmed.c (init_expmed_one_conv): We now know the sizes of
      partial int modes.
      * loop-iv.c (iv_number_of_iterations): Use precision, not size.
      * optabs.c (expand_float): Use precision, not size.
      (expand_fix): Likewise.
      * simplify-rtx (simplify_unary_operation_1): Likewise.
      * tree-dfa.c (get_ref_base_and_extent): Likewise.
      * varasm.c (assemble_addr_to_section): Round up pointer sizes.
      (default_assemble_integer) Likewise.
      (dump_tm_clone_pairs): Likewise.
      * dwarf2out.c (mem_loc_descriptor): Allow partial-int modes also.
      * var-tracking.c (adjust_mems): Allow partial-int modes also.
      (prepare_call_arguments): Likewise.
      * stor-layout.c (finalize_type_size): Preserve precision.
      (layout_type): Use precision, not size.
      
      From-SVN: r214748
      DJ Delorie committed
    • expr.c (convert_move): If the target has an explicit converter, use it. · aea3d681
      * expr.c (convert_move): If the target has an explicit converter,
      use it.
      
      From-SVN: r214747
      DJ Delorie committed
    • target-supports.exp (check_effective_target_size32plus): Increase size to avoid… · 4c907247
      target-supports.exp (check_effective_target_size32plus): Increase size to avoid false positives on 24-bit address spaces.
      
      * lib/target-supports.exp (check_effective_target_size32plus):
      Increase size to avoid false positives on 24-bit address spaces.
      * gcc.c-torture/compile/limits-stringlit.c: Skip if msp430.
      * gcc.dg/lto/pr54709_1.c: Fix memcpy prototype.
      * gcc.dg/torture/pta-ptrarith-3.c: Use __SIZE_TYPE__ instead of "int".
      * gcc.dg/torture/pr36373-10.c: Use __SIZE_TYPE__ if present.
      * gcc.dg/torture/pr57864.c: Use __SIZE_TYPE__.
      * gcc.dg/torture/pr26763-2.c: Use __SIZE_TYPE__ instead of "int".
      * gcc.dg/tree-ssa/isolate-3.c: Use __SIZE_TYPE__ instead of "long unsigned int".
      * gcc.dg/pr52549.c: Use __SIZE_TYPE__ if present.
      
      From-SVN: r214746
      DJ Delorie committed
    • Use ISO C remove() instead of POSIX unlink() · fdf96aa3
      2014-08-30  Janne Blomqvist  <jb@gcc.gnu.org>
      
      	* module.c (gfc_dump_module): Use ISO C remove() instead of POSIX
      	unlink().
      
      From-SVN: r214744
      Janne Blomqvist committed
    • PR 62215 Reinstate unlinking old module file before renaming. · 70103202
      2014-08-29  Jeffrey Armstrong  <jeffrey.armstrong@approximatrix.com>
      
      	PR fortran/62215
      	* module.c (gfc_dump_module): Unlink old module file before
      	renaming new one.
      
      From-SVN: r214742
      Jeffrey Armstrong committed
    • gdbinit.in: Skip various inline functions in rtl.h when stepping · 08216dfb
      gcc/
      2014-08-29  David Malcolm  <dmalcolm@redhat.com>
      
      	* gdbinit.in: Skip various inline functions in rtl.h when
      	stepping.
      
      From-SVN: r214741
      David Malcolm committed
    • cp-demangle.c (d_dump): Only access field from s_fixed part of the union for… · 606f9e78
      cp-demangle.c (d_dump): Only access field from s_fixed part of the union for DEMANGLE_COMPONENT_FIXED_TYPE.
      
      	* cp-demangle.c (d_dump): Only access field from s_fixed part of
      	the union for DEMANGLE_COMPONENT_FIXED_TYPE.
      	(d_count_templates_scopes): Likewise.
      
      From-SVN: r214740
      Andrew Burgess committed
    • complex (complex): Define copy constructor and assignment operator as defaulted. · fa794dc6
      	* include/std/complex (complex): Define copy constructor and
      	assignment operator as defaulted. Improve Doxygen comments.
      
      From-SVN: r214736
      Jonathan Wakely committed
    • directives.c (check_eol_1): New. · 81b5d104
      libcpp/ChangeLog:
      
      2014-08-29  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	* directives.c (check_eol_1): New.
      	(check_eol_endif_labels): New.
      	(check_eol): Call check_eol_1.
      	(do_else,do_endif): Call check_eol_endif_labels.
      
      gcc/c-family/ChangeLog:
      
      2014-08-29  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	* c.opt (Wbuiltin-macro-redefined,Wdeprecated,Wendif-labels,
      	Winvalid-pch,Wliteral-suffix,Wmissing-include-dirs,Wtrigraphs,
      	Wundef): Use CPP, Var and Init.
      	* c-opts.c (c_common_handle_option): Do not handle the above flags here.
      
      From-SVN: r214735
      Manuel López-Ibáñez committed
    • re PR c++/54002 ([C++0x] Initializing constexpr static member using constexpr static method fails) · f71f9d3f
      2014-08-29  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/54002
      	* g++.dg/cpp0x/constexpr-54002.C: New.
      
      From-SVN: r214734
      Paolo Carlini committed
    • re PR bootstrap/62301 (PowerPC bootstrap broken since r214654) · 21cfc3a5
      gcc/
      	PR bootstrap/62301
      	* rtlanal.c (rtx_referenced_p): Fix typo in LABEL_P call.
      
      From-SVN: r214733
      Richard Sandiford committed
    • macro.c (warn_of_redefinition): Suppress warnings for builtins that lack the NODE_WARN flag... · b753b37b
      libcpp/ChangeLog:
      
      2014-08-29  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	* macro.c (warn_of_redefinition): Suppress warnings for builtins
      	that lack the NODE_WARN flag, unless Wbuiltin-macro-redefined.
      	(_cpp_create_definition): Use Wbuiltin-macro-redefined for
      	builtins that lack the NODE_WARN flag.
      	* directives.c (do_undef): Likewise.
      	* init.c (cpp_init_special_builtins): Do not change flags
      	depending on Wbuiltin-macro-redefined.
      
      
      gcc/c-family/ChangeLog:
      
      2014-08-29  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	* c.opt (Wbuiltin-macro-redefined): Use CPP, Var and Init.
      	* c-opts.c (c_common_handle_option): Do not handle here.
      
      From-SVN: r214730
      Manuel López-Ibáñez committed
    • re PR c++/56991 (constexpr std::initializer_list rejects too complex initialization) · ef0981b8
      2014-08-29  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/56991
      	* g++.dg/cpp0x/constexpr-56991.C: New.
      
      From-SVN: r214729
      Paolo Carlini committed
    • re PR c++/57764 (class static constexpr variables cannot be references) · 6a06deb4
      2014-08-29  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/57764
      	* g++.dg/cpp0x/constexpr-57764.C: New.
      
      From-SVN: r214728
      Paolo Carlini committed
    • re PR tree-optimization/62291 (PRE uses too much memory and compile-time) · dee29e84
      2014-08-29  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/62291
      	* tree-ssa-pre.c (sorted_array_from_bitmap_set): Reserve
      	exactly the vector size needed and use quick_push.
      	(phi_translate_1): Adjust comment.
      	(valid_in_sets): Remove block argument and remove pointless
      	checking of NAMEs.
      	(dependent_clean): Adjust for removal of block argument.
      	(clean): Likewise.
      	(compute_antic_aux): Likewise.
      	(compute_partial_antic_aux): Likewise.
      
      From-SVN: r214727
      Richard Biener committed
    • AVX-512. Add SI/DI masked interleave. · 8cb0a27f
      gcc/
      	* config/i386/sse.md
      	(define_insn "avx2_interleave_highv4di<mask_name>"): Add masking.
      	(define_insn "vec_interleave_highv2di<mask_name>"): Ditto.
      	(define_insn "avx2_interleave_lowv4di<mask_name>"): Ditto.
      	(define_insn "vec_interleave_lowv2di<mask_name>"): Ditto.
      
      
      Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
      Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
      Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
      Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
      Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
      Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
      Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
      
      From-SVN: r214726
      Alexander Ivchenko committed
    • AVX-512. Add narrowing vpmov. · 4a90ee35
      gcc/
      	* config/i386/i386-modes.def: Add V12QI, V14QI, V6HI modes.
      	* config/i386/sse.md
      	(define_mode_iterator VI4_128_8_256): New.
      	(define_mode_iterator VI2_128_4_256): Ditto.
      	(define_mode_iterator PMOV_DST_MODE): Rename into
      	(define_mode_iterator PMOV_DST_MODE_1): this.
      	(define_insn "*avx512f_<code><pmov_src_lower><mode>2"):
      	Use PMOV_DST_MODE_1 mode iterator.
      	(define_insn "avx512f_<code><pmov_src_lower><mode>2_mask"):
      	Ditto.
      	(define_insn "avx512f_<code><pmov_src_lower><mode>2_mask"):
      	Ditto.
      	(define_insn "*avx512bw_<code>v32hiv32qi2"): New.
      	(define_insn "avx512bw_<code>v32hiv32qi2_mask"): Ditto.
      	(define_expand "avx512bw_<code>v32hiv32qi2_store_mask"): Ditto.
      	(define_mode_iterator PMOV_DST_MODE_2): New.
      	(define_insn "*avx512vl_<code><ssedoublemodelower><mode>2"): Ditto.
      	(define_insn "<avx512>_<code><ssedoublemodelower><mode>2_mask"): Ditto.
      	(define_expand "<avx512>_<code><ssedoublemodelower><mode>2_store_mask"):
      	Ditto.
      	(define_mode_iterator PMOV_SRC_MODE_3): Ditto.
      	(define_mode_attr pmov_dst_3): Ditto.
      	(define_mode_attr pmov_dst_zeroed_3): Ditto.
      	(define_mode_attr pmov_suff_3): Ditto.
      	(define_insn "*avx512vl_<code><mode>v<ssescalarnum>qi2"): Ditto.
      	(define_insn "*avx512vl_<code>v2div2qi2_store"): Ditto.
      	(define_insn "avx512vl_<code>v2div2qi2_mask"): Ditto.
      	(define_insn "avx512vl_<code>v2div2qi2_store_mask"): Ditto.
      	(define_insn "*avx512vl_<code><mode>v4qi2_store"): Ditto.
      	(define_insn "avx512vl_<code><mode>v4qi2_mask"): Ditto.
      	(define_insn "avx512vl_<code><mode>v4qi2_store_mask"): Ditto.
      	(define_insn "*avx512vl_<code><mode>v8qi2_store"): Ditto.
      	(define_insn "avx512vl_<code><mode>v8qi2_mask"): Ditto.
      	(define_insn "avx512vl_<code><mode>v8qi2_store_mask"): Ditto.
      	(define_mode_iterator PMOV_SRC_MODE_4): Ditto.
      	(define_mode_attr pmov_dst_4): Ditto.
      	(define_mode_attr pmov_dst_zeroed_4): Ditto.
      	(define_mode_attr pmov_suff_4): Ditto.
      	(define_insn "*avx512vl_<code><mode>v<ssescalarnum>hi2"): Ditto.
      	(define_insn "*avx512vl_<code><mode>v4hi2_store"): Ditto.
      	(define_insn "avx512vl_<code><mode>v4hi2_mask"): Ditto.
      	(define_insn "avx512vl_<code><mode>v4hi2_store_mask"): Ditto.
      	(define_insn "*avx512vl_<code>v2div2hi2_store"): Ditto.
      	(define_insn "avx512vl_<code>v2div2hi2_mask"): Ditto.
      	(define_insn "avx512vl_<code>v2div2hi2_store_mask"): Ditto.
      	(define_insn "*avx512vl_<code>v2div2si2"): Ditto.
      	(define_insn "*avx512vl_<code>v2div2si2_store"): Ditto.
      	(define_insn "avx512vl_<code>v2div2si2_mask"): Ditto.
      	(define_insn "avx512vl_<code>v2div2si2_store_mask"): Ditto.
      
      
      
      Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
      Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
      Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
      Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
      Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
      Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
      Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
      
      From-SVN: r214725
      Alexander Ivchenko committed
    • re PR c++/59938 ([C++11] Bogus "... is not a constant expression") · ee5ff884
      2014-08-29  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/59938
      	* g++.dg/cpp0x/constexpr-59938.C: New.
      
      From-SVN: r214724
      Paolo Carlini committed
    • re PR c++/61484 ([C++11] can't initialize constexpr multi-dimentional array of a literal type) · a4506f7b
      2014-08-29  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/61484
      	* g++.dg/cpp0x/constexpr-61484.C: New.
      
      From-SVN: r214718
      Paolo Carlini committed