Andrew Pinski [Mon, 24 Aug 2015 09:56:48 +0000 (09:56 +0000)]
Remove the hack for AARCH64_EXTRA_TUNE_ALL.
2015-08-24 Andrew Pinski <apinski@cavium.com>
* config/aarch64/aarch64-tuning-flags.def: Remove all index to
AARCH64_EXTRA_TUNING_OPTION.
* config/aarch64/aarch64-protos.h (aarch64_extra_tuning_flags_index): New enum.
(aarch64_extra_tuning_flags): Base the shifted value on the index instead
of the argument to AARCH64_EXTRA_TUNING_OPTION.
* config/aarch64/aarch64.c: Remove the last argument to
AARCH64_EXTRA_TUNING_OPTION.
From-SVN: r227117
GCC Administrator [Mon, 24 Aug 2015 00:16:14 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r227110
François-Xavier Coudert [Sun, 23 Aug 2015 21:56:46 +0000 (21:56 +0000)]
* ChangeLog: fix previous entry.
From-SVN: r227107
Francois-Xavier Coudert [Sun, 23 Aug 2015 21:50:30 +0000 (21:50 +0000)]
re PR libfortran/54572 (Use libbacktrace library)
PR libfortran/54572
* Makefile.def: Make libgfortran depend on libbacktrace.
* Makefile.in: Regenerate.
* config-lang.in: Add libbacktrace to target_libs.
* Makefile.am (libgfortran_la_LDFLAGS): Link in libbacktrace.
(AM_CPPFLAGS): Add libbacktrace directories to include paths.
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
* config.h.in: Regenerate.
* configure: Regenerate.
* configure.ac: Remove checks for strtok_r, wait, execve, pipe,
and dup2. Remove call to GCC_CHECK_UNWIND_GETIPINFO.
* libgfortran.h (full_exe_path, find_addr2line, backtrace): Remove
prototypes.
(show_backtrace): Add prototype.
* runtime/backtrace.c: Rework file entirely.
* runtime/compile_options.c (backtrace_handler): Rename backtrace
to show_backtrace.
(maybe_find_addr2line): Remove function.
(set_options): Remove call to maybe_find_addr2line.
* runtime/error.c (sys_abort): Rename backtrace to show_backtrace.
* runtime/main.c (store_exe_path): Empty function body.
(full_exe_path, gfstrtok_r, find_addr2line): Remove functions.
(cleanup): Don't free removed variables.
* runtime/minimal.c (full_exe_path): Remove function.
(set_args): Don't set exe_path.
* gfortran.dg/backtrace_1.f90: New test.
From-SVN: r227106
François-Xavier Coudert [Sun, 23 Aug 2015 21:24:49 +0000 (21:24 +0000)]
re PR libfortran/62296 (EXECUTE_COMMAND_LINE not F2008 conforming)
PR libfortran/62296
* intrinsics/execute_command_line.c (EXEC_INVALIDCOMMAND): New
error code.
(cmdmsg_values): New error message.
(set_cmdstat): Rework runtime error.
(execute_command_line): Handle invalid command line error status.
* gfortran.dg/execute_command_line_2.f90: New test.
From-SVN: r227105
Nathan Sidwell [Sun, 23 Aug 2015 14:37:09 +0000 (14:37 +0000)]
nvptx.c (walk_args_for_param): Promote arg reg decls.
* config/nvptx/nvptx.c (walk_args_for_param): Promote arg reg
decls.
(nvptx_declare_function_name): Insert formatting tabs for
consistency.
From-SVN: r227104
Tom de Vries [Sun, 23 Aug 2015 09:19:32 +0000 (09:19 +0000)]
Don't create superfluous parm in expand_omp_taskreg
2015-08-23 Tom de Vries <tom@codesourcery.com>
* omp-low.c (expand_omp_taskreg): If in ssa, set rhs of parcopy stmt to
parm_decl, rather than generating a dummy default def in cfun.
* tree-cfg.c (replace_ssa_name): Assume no default defs. Make sure
ssa_name from cfun and child_fn do not share a stmt as def stmt.
(move_stmt_op): Handle PARM_DECl.
(gather_ssa_name_hash_map_from): New function.
(move_sese_region_to_fn): Add default defs for function params, and add
them to vars_map. Release copied ssa names.
* tree-cfg.h (gather_ssa_name_hash_map_from): Declare.
From-SVN: r227103
Tom de Vries [Sun, 23 Aug 2015 08:35:41 +0000 (08:35 +0000)]
Rename vect_no_int_max to vect_no_int_min_max
2015-08-23 Tom de Vries <tom@codesourcery.com>
* gcc.dg/vect/trapv-vect-reduc-4.c: Use vect_no_int_min_max.
* gcc.dg/vect/costmodel/i386/costmodel-vect-reduc-1char.c: Rename
vect_no_int_max to vect_no_int_min_max.
* gcc.dg/vect/costmodel/ppc/costmodel-vect-reduc-1char.c: Same.
* gcc.dg/vect/costmodel/x86_64/costmodel-vect-reduc-1char.c: Same.
* gcc.dg/vect/no-scevccp-noreassoc-slp-reduc-7.c: Same.
* gcc.dg/vect/slp-reduc-4.c: Same.
* gcc.dg/vect/slp-reduc-5.c: Same.
* gcc.dg/vect/vect-125.c: Same.
* gcc.dg/vect/vect-13.c: Same.
* gcc.dg/vect/vect-double-reduc-3.c: Same.
* gcc.dg/vect/vect-reduc-1.c: Same.
* gcc.dg/vect/vect-reduc-1char-big-array.c: Same.
* gcc.dg/vect/vect-reduc-1char.c:Same.
* gcc.dg/vect/vect-reduc-1short.c: Same.
* gcc.dg/vect/vect-reduc-2.c: Same.
* gcc.dg/vect/wrapv-vect-reduc-2char.c: Same.
* gcc.dg/vect/wrapv-vect-reduc-2short.c: Same.
* lib/target-supports.exp: Same.
* doc/sourcebuild.texi: Rename vect_no_int_max with
vect_no_int_min_max. Update description.
From-SVN: r227102
GCC Administrator [Sun, 23 Aug 2015 00:16:20 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r227101
Paolo Carlini [Sat, 22 Aug 2015 17:44:46 +0000 (17:44 +0000)]
re PR c++/63693 (ICE in resolve_typename_type)
/cp
2015-08-22 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/63693
* pt.c (resolve_typename_type): Use CLASSTYPE_PRIMARY_TEMPLATE_TYPE
only on class types.
/testsuite
2015-08-22 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/63693
* g++.dg/cpp0x/decltype63.C: New.
From-SVN: r227098
Nathan Sidwell [Sat, 22 Aug 2015 15:09:03 +0000 (15:09 +0000)]
Wsizeof-pointer-memaccess1.c: Require alloca.
* c-c++-common/Wsizeof-pointer-memaccess1.c: Require alloca.
* c-c++-common/Wsizeof-pointer-memaccess2.c: Likewise.
* c-c++-common/Wunused-var-8.c: Likewise.
* c-c++-common/gomp/pr61486-2.c: Likewise.
* c-c++-common/Wunused-var-6.c: Likewise.
* c-c++-common/goacc/reduction-1.c: Likewise.
* c-c++-common/goacc/reduction-2.c: Likewise.
* c-c++-common/goacc/reduction-3.c: Likewise.
* c-c++-common/goacc/reduction-4.c: Likewise.
* gcc.dg/builtins-64.c: Likewise.
* gcc.dg/pr59523.c: Likewise.
* gcc.dg/tree-ssa/
20080530.c: Likewise.
* gcc.dg/tree-ssa/pr23848-2.c: Likewise.
* gcc.dg/tree-ssa/pr23848-4.c: Likewise.
* gcc.dg/tree-ssa/pr23848-1.c: Likewise.
* gcc.dg/tree-ssa/pr23848-3.c: Likewise.
* gcc.dg/tree-ssa/
20030807-2.c: Likewise.
* gcc.dg/pr59011.c: Likewise.
* gcc.dg/uninit-9.c: Likewise.
* gcc.dg/pr61561.c: Likewise.
* gcc.dg/vla-4.c: Likewise.
* gcc.dg/
20101010-1.c: Likewise.
* gcc.dg/pr49120.c: Likewise.
* gcc.dg/
20030331-2.c: Likewise.
* gcc.dg/compat/struct-by-value-22_main.c: Likewise.
* gcc.dg/pr25682.c: Likewise.
* gcc.dg/guality/guality.c: Likewise.
* gcc.dg/pr27301.c: Likewise.
* gcc.dg/uninit-9-O0.c: Likewise.
* gcc.dg/fold-alloca-1.c: Likewise.
* gcc.dg/pr41470.c: Likewise.
* gcc.dg/pr51491-2.c: Likewise.
* gcc.dg/winline-7.c: Likewise.
* gcc.dg/vla-2.c: Likewise.
* gcc.dg/pr50764.c: Likewise.
* gcc.dg/c99-vla-1.c: Likewise.
* gcc.dg/pr33238.c: Likewise.
* gcc.dg/c99-const-expr-13.c: Likewise.
* gcc.dg/builtin-return-1.c: Likewise.
* gcc.dg/vla-3.c: Likewise.
* gcc.dg/
20020415-1.c: Likewise.
* gcc.dg/Wsizeof-pointer-memaccess1.c: Likewise.
* gcc.dg/shrink-wrap-alloca.c: Likewise.
* gcc.dg/Wstrict-aliasing-bogus-vla-1.c: Likewise.
* gcc.dg/torture/calleesave-sse.c: Likewise.
* gcc.dg/torture/Wsizeof-pointer-memaccess1.c: Likewise.
* gcc.dg/gomp/vla-2.c: Likewise.
* gcc.dg/gomp/vla-3.c: Likewise.
* gcc.dg/gomp/vla-4.c: Likewise.
* gcc.dg/gomp/pr30494.c: Likewise.
* gcc.dg/gomp/vla-5.c: Likewise.
* gcc.dg/pr51990-2.c: Likewise.
* gcc.dg/vla-22.c: Likewise.
From-SVN: r227097
Manuel López-Ibáñez [Sat, 22 Aug 2015 12:44:51 +0000 (12:44 +0000)]
Fix column location in c_lex_with_flags errors
gcc/testsuite/ChangeLog:
2015-08-22 Manuel López-Ibáñez <manu@gcc.gnu.org>
* gcc.dg/cpp/multiline-2.c: Add column numbers.
* gcc.dg/dollar.c: Likewise.
* gcc.dg/pragma-message.c: Likewise.
* g++.dg/cpp1y/digit-sep-neg.C: Likewise.
* c-c++-common/raw-string-14.c: Likewise.
gcc/c-family/ChangeLog:
2015-08-22 Manuel López-Ibáñez <manu@gcc.gnu.org>
* c-lex.c (c_lex_with_flags): Use explicit locations.
From-SVN: r227096
Andrew Pinski [Sat, 22 Aug 2015 06:49:32 +0000 (06:49 +0000)]
Remove index from AARCH64_FUSION_PAIR
Instead of doing an explict index in aarch64-fusion-pairs.def, we
should have an enum which does the index instead. This allows
you to add/remove them without worrying about the order being
correct and having holes or worry about merge conficts.
OK? Bootstrapped and tested on aarch64-linux-gnu with no regressions.
ChangeLog:
* aarch64-fusion-pairs.def: Remove all index to AARCH64_FUSION_PAIR.
* config/aarch64/aarch64-protos.h (aarch64_fusion_pairs_index): New enum.
(aarch64_fusion_pairs): Base the shifted value on the index instead
Rewrite AARCH64_FUSE_ALL to be based on the end index.
of the argument to AARCH64_FUSION_PAIR.
* config/aarch64/aarch64.c: Remove the last argument to AARCH64_FUSION_PAIR.
From-SVN: r227094
Mikhail Maltsev [Sat, 22 Aug 2015 03:20:13 +0000 (03:20 +0000)]
Refactor dominance.c: define dom_info as C++ class
gcc/
* dominance.c (new_zero_array): Define.
(dom_info): Redefine as class with proper encapsulation.
(dom_info::m_n_basic_blocks, m_reverse, m_start_block, m_end_block):
Add new members.
(dom_info::dom_info, ~dom_info): Define. Use new/delete for memory
allocations/deallocations. Pass function as parameter (instead of
using cfun).
(dom_info::get_idom): Define accessor method.
(dom_info::calc_dfs_tree_nonrec, calc_dfs_tree, compress, eval,
link_roots, calc_idoms): Redefine as class members. Do not use cfun.
(calculate_dominance_info): Adjust to use dom_info class.
(verify_dominators): Likewise.
From-SVN: r227093
GCC Administrator [Sat, 22 Aug 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r227092
Patrick Palka [Fri, 21 Aug 2015 20:25:47 +0000 (20:25 +0000)]
Adjust g++.old-deja/g++.jason/overload.C
gcc/testsuite/ChangeLog:
* g++.old-deja/g++.jason/overload.C: Adjust to preserve original
property that instantiation here is a compile-time error.
From-SVN: r227088
Alexandre Oliva [Fri, 21 Aug 2015 20:03:33 +0000 (20:03 +0000)]
fix -fdump-unnumbered-links
for gcc/ChangeLog
* print-rtl.c (print_rtx): Check the correct range for
flag_dump_unnumbered_links to behave as documented.
From-SVN: r227086
Alexandre Oliva [Fri, 21 Aug 2015 20:03:14 +0000 (20:03 +0000)]
fix sched compare regression
for gcc/ChangeLog
PR rtl-optimization/64164
PR rtl-optimization/67227
* alias.c (memrefs_conflict_p): Handle VALUEs in PLUS better.
(nonoverlapping_memrefs_p): Test offsets and sizes when given
identical gimple_reg exprs.
From-SVN: r227085
Nathan Sidwell [Fri, 21 Aug 2015 19:34:34 +0000 (19:34 +0000)]
nvptx.md (allocate_stack): Emit sorry during expansion.
* config/nvptx/nvptx.md (allocate_stack): Emit sorry during
expansion.
* config/nvptx/nvptx.c (nvptx_declare_function_name): Look at
crtl->stack_alignment_needed to determine alignment.
(nvptx_get_drap_rtx): New.
(TARGET_GET_DRAP_RTX): Override.
* config/nvptx/nvptx.h (MAX_STACK_ALIGNMENT): Set.
From-SVN: r227084
Jason Merrill [Fri, 21 Aug 2015 18:33:07 +0000 (14:33 -0400)]
re PR c++/67240 ([concepts] Implicit conversion constraints are not respected)
PR c++/67240
* constraint.cc (satisfy_implicit_conversion_constraint): Also
check for NULL_TREE.
From-SVN: r227081
Francois-Xavier Coudert [Fri, 21 Aug 2015 17:44:47 +0000 (17:44 +0000)]
* config.build: Remove case for m68000-hp-hpux* | m68k-hp-hpux*.
From-SVN: r227079
Paolo Carlini [Fri, 21 Aug 2015 17:39:48 +0000 (17:39 +0000)]
decl.c (grokvardecl): Simplify the latter.
2015-08-21 Paolo Carlini <paolo.carlini@oracle.com>
* decl.c (grokvardecl): Simplify the latter.
From-SVN: r227078
Francois-Xavier Coudert [Fri, 21 Aug 2015 17:38:01 +0000 (17:38 +0000)]
configure.ac: Remove uwin* cases.
* configure.ac: Remove uwin* cases.
* config.build: Remove cases for i370-*-opened*, i370-*-mvs*,
i[34567]86-*-sco3.2v5*, i[34567]86-sequent-ptx4*,
i[34567]86-sequent-sysv4*, i[34567]86-*-sysv4*,
i[34567]86-*-udk*, i[34567]86-*-uwin*, i386-*-vsta.
* config.host: Remove cases for i370-*-opened*, i370-*-mvs*,
i[34567]86-*-uwin*, powerpc-*-beos*.
From-SVN: r227077
Richard Sandiford [Fri, 21 Aug 2015 17:23:10 +0000 (17:23 +0000)]
gencodes.c (gencodes): Print the comma for the preceding enum value rather than the current one.
gcc/
* gencodes.c (gencodes): Print the comma for the preceding
enum value rather than the current one. Use aliased enum values
rather than #defines for compiled-out patterns.
(main): Update accordingly. Replace LAST_INSN_CODE with
NUM_INSN_CODES.
* lra.c (insn_code_data): Update accordingly.
(finish_insn_code_data_once, get_static_insn_data): Likewise.
* recog.h (target_recog): Likewise.
(preprocess_insn_constraints): Change parameter to unsigned int.
* recog.c (preprocess_insn_constraints): Likewise.
(recog_init): Replace LAST_INSN_CODE with NUM_INSN_CODES.
* tree-vect-stmts.c (vectorizable_operation): Simplify.
From-SVN: r227076
Markus Trippelsdorf [Fri, 21 Aug 2015 16:44:30 +0000 (16:44 +0000)]
Fix PR61657 (undefined behavior in loop-iv.c)
bootstrap-ubsan shows:
loop-iv.c:2626:14: runtime error: signed integer overflow:
9223372036854775806 - -
9223372036854775808 cannot be represented in type 'long int'
Fixed by moving the variables in question from signed to unsigned.
PR rtl-optimization/61657
* loop-iv.c (iv_number_of_iterations): Declare up and down as
unsigned. Remove superflous uint64_t cast.
From-SVN: r227075
Paolo Carlini [Fri, 21 Aug 2015 14:44:33 +0000 (14:44 +0000)]
decl.c (grokvardecl): Complete check added for c++/67065.
/cp
2015-08-21 Paolo Carlini <paolo.carlini@oracle.com>
* decl.c (grokvardecl): Complete check added for c++/67065.
/testsuite
2015-08-21 Paolo Carlini <paolo.carlini@oracle.com>
* g++.dg/other/pr67065.C: Extend.
From-SVN: r227061
Felix Yang [Fri, 21 Aug 2015 14:34:52 +0000 (14:34 +0000)]
value-prof.c (interesting_stringop_to_profile_p): Removed FNDECL argument and get builtin function code directly from CALL.
* value-prof.c (interesting_stringop_to_profile_p): Removed FNDECL argument
and get builtin function code directly from CALL.
(gimple_stringop_fixed_value): Modified accordingly.
(gimple_stringops_transform, gimple_stringops_values_to_profile): Modified
accordingly and only accept BUILT_IN_NORMAL string operations.
Co-Authored-By: Jiji Jiang <jiangjiji@huawei.com>
From-SVN: r227060
Nathan Sidwell [Fri, 21 Aug 2015 13:13:42 +0000 (13:13 +0000)]
nvptx cleanup
nvptx cleanup
* lib/target-supports.exp (check_effective_target_freestanding): nvptx
is freestanding.
(check_effective_target_global_constructor): New.
* lib/gcc.exp (gcc_target_compile): Set SIGNAL_SUPPRESS if needed.
* gcc.dg/debug/debug.exp: Skip for nvptx.
* gcc.dg/debug/dwarf2/dwarf2.exp: Likewise.
* gcc.c-torture/execute/981019-1.c: Ptx assembler bug.
* gcc.c-torture/compile/limits-externdecl.c: Likewise.
* gcc.c-torture/compile/pr33855.c: Likewise.
* gcc.c-torture/compile/920723-1.c: Likewise.
* gcc.c-torture/compile/pr35468.c: Ptx assembler objects to
writing a const.
* gcc.c-torture/compile/mangle-1.c: Ptx assembler objects to . in
label.
* gcc.c-torture/compile/callind.c: Ptx assembler objects to label
'call'.
* gcc.c-torture/execute/ieee/mul-subnormal-single-1.c: Make main
prototype normal.
* gcc.c-torture/execute/switch-1.c: Likewise.
* gcc.c-torture/execute/pr34456.c: Require not freestanding
* gcc.c-torture/execute/printf-1.c: Likewise.
* gcc.c-torture/execute/printf-chk-1.c: Likewise.
* gcc.c-torture/execute/fprintf-1.c: Likewise.
* gcc.c-torture/execute/fprintf-chk-1.c: Likewise.
* gcc.c-torture/execute/vprintf-1.c: Likewise.
* gcc.c-torture/execute/vprintf-chk-1.c: Likewise.
* gcc.c-torture/execute/vfprintf-1.c: Likewise.
* gcc.c-torture/execute/vfprintf-chk-1.c: Likewise.
* gcc.c-torture/execute/builtins/fputs.x: Likewise.
* gcc.c-torture/execute/gofast.c: Likewise.
* gcc.c-torture/execute/complex-6.c: Likewise.
* gcc.c-torture/execute/builtins/memcpy-chk.x: Require nonlocal goto.
* gcc.c-torture/execute/builtins/memmove-chk.x: Likewise.
* gcc.c-torture/execute/builtins/mempcpy-chk.x: Likewise.
* gcc.c-torture/execute/builtins/memset-chk.x: Likewise.
* gcc.c-torture/execute/builtins/snprintf-chk.x: Likewise.
* gcc.c-torture/execute/builtins/sprintf-chk.x: Likewise.
* gcc.c-torture/execute/builtins/stpcpy-chk.x: Likewise.
* gcc.c-torture/execute/builtins/stpncpy-chk.x: Likewise.
* gcc.c-torture/execute/builtins/strcat-chk.x: Likewise.
* gcc.c-torture/execute/builtins/strcpy-chk.x: Likewise.
* gcc.c-torture/execute/builtins/strncat-chk.x: Likewise.
* gcc.c-torture/execute/builtins/strncpy-chk.x: Likewise.
* gcc.c-torture/execute/builtins/vsnprintf-chk.x: Likewise.
* gcc.c-torture/execute/builtins/vsprintf-chk.x: Likewise.
* gcc.c-torture/execute/builtins/pr23484-chk.x: Likewise.
* gcc.dg/setjmp-1.c: Likewise.
* gcc.dg/cleanup-5.c: Likewise.
* gcc.dg/cleanup-12.c: Likewise.
* gcc.dg/cleanup-13.c: Likewise.
* gcc.dg/constructor-1.c: Require global ctor.
* gcc.dg/fork-instrumentation.c: Require profiling.
* gcc.dg/
20030107-1.c: Likewise.
* gcc.dg/
20030702-1.c: Likewise.
* gcc.dg/cpp/lexstrng.c: Avoid IO unless debugging.
* gcc.dg/cpp/paste2.c: Likewise.
* gcc.dg/cpp/strify3.c: Likewise.
* gcc.dg/cpp/strify4.c: Likewise.
* gcc.dg/cpp/lexnum.c: Likewise.
* gcc.dg/cpp/digraphs.c: Likewise.
* gcc.dg/cpp/macro1.c: Likewise.
From-SVN: r227059
Dominik Vogt [Fri, 21 Aug 2015 12:51:20 +0000 (12:51 +0000)]
s390-builtins.def: Fix value range of vec_load_bndry.
gcc/ChangeLog
2015-08-21 Dominik Vogt <vogt@linux.vnet.ibm.com>
* config/s390/s390-builtins.def: Fix value range of vec_load_bndry.
gcc/testsuite/ChangeLog
2015-08-21 Dominik Vogt <vogt@linux.vnet.ibm.com>
* gcc.target/s390/zvector/vec-load_bndry-1.c: New test.
From-SVN: r227058
Dominik Vogt [Fri, 21 Aug 2015 12:48:08 +0000 (12:48 +0000)]
gcc-dg.exp: Add extra options for db-final to the command line only once.
2015-08-21 Dominik Vogt <vogt@linux.vnet.ibm.com>
* lib/gcc-dg.exp: Add extra options for db-final to the command line
only once.
From-SVN: r227057
Naveen H.S [Fri, 21 Aug 2015 10:46:09 +0000 (10:46 +0000)]
fold-const.c (fold_binary_loc): Move sqrt(x)*sqrt(x) as x to match.pd.
2015-08-21 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
* fold-const.c (fold_binary_loc) : Move sqrt(x)*sqrt(x) as x
to match.pd.
Move Optimize pow(x,y)*pow(z,y) as pow(x*z,y)to match.pd.
Move Optimize tan(x)*cos(x) as sin(x) to match.pd.
Move Optimize x*pow(x,c) as pow(x,c+1) to match.pd.
Move Optimize pow(x,c)*x as pow(x,c+1) to match.pd.
Move Optimize sin(x)/cos(x) as tan(x) to match.pd.
Move Optimize cos(x)/sin(x) as 1.0/tan(x) to match.pd.
Move Optimize sin(x)/tan(x) as cos(x) to match.pd.
Move Optimize tan(x)/sin(x) as 1.0/cos(x) to match.pd.
Move Optimize pow(x,c)/x as pow(x,c-1) to match.pd.
Move Optimize x/pow(y,z) into x*pow(y,-z) to match.pd.
* match.pd (SIN ) : New Operator.
(TAN) : New Operator.
(mult (SQRT@1 @0) @1) : New simplifier.
(mult (POW:s @0 @1) (POW:s @2 @1)) : New simplifier.
(mult:c (TAN:s @0) (COS:s @0)) : New simplifier.
(mult:c (TAN:s @0) (COS:s @0)) : New simplifier.
(rdiv (SIN:s @0) (COS:s @0)) : New simplifier.
(rdiv (COS:s @0) (SIN:s @0)) : New simplifier.
(rdiv (SIN:s @0) (TAN:s @0)) : New simplifier.
(rdiv (TAN:s @0) (SIN:s @0)) : New simplifier.
(rdiv (POW:s @0 REAL_CST@1) @0) : New simplifier.
(rdiv @0 (SQRT:s (rdiv:s @1 @2))) : New simplifier.
(rdiv @0 (POW:s @1 @2)) : New simplifier.
From-SVN: r227056
Bin Cheng [Fri, 21 Aug 2015 10:09:48 +0000 (10:09 +0000)]
tree-ssa-loop-niter.c (simplify_using_initial_conditions): Break loop if EXPR is simplified to const value.
* tree-ssa-loop-niter.c (simplify_using_initial_conditions): Break
loop if EXPR is simplified to const value.
From-SVN: r227055
Yury Gribov [Fri, 21 Aug 2015 08:42:57 +0000 (08:42 +0000)]
sanitizer.def (BUILT_IN_UBSAN_HANDLE_NONNULL_ARG, [...]): Fix builtin types.
2015-08-21 Yury Gribov <y.gribov@samsung.com>
* sanitizer.def (BUILT_IN_UBSAN_HANDLE_NONNULL_ARG,
BUILT_IN_UBSAN_HANDLE_NONNULL_ARG): Fix builtin types.
From-SVN: r227054
Richard Biener [Fri, 21 Aug 2015 08:06:20 +0000 (08:06 +0000)]
re PR middle-end/67285 (ICE with (rdiv (POW:s @0 REAL_CST@1) @0))
2015-08-21 Richard Biener <rguenther@suse.de>
PR middle-end/67285
* gimple-fold.c (replace_stmt_with_simplification): Assert
seq is empty when replacing a call with itself but different
arguments.
* gimple-match-head.c (maybe_push_res_to_seq): When pushing
a call require that it is const.
From-SVN: r227053
Trevor Saunders [Fri, 21 Aug 2015 01:15:33 +0000 (01:15 +0000)]
add default for CONSTANT_ALIGNMENT
gcc/ChangeLog:
2015-08-20 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* defaults.h (CONSTANT_ALIGNMENT): New macro definition.
* builtins.c (get_object_alignment_2): Adjust.
* varasm.c (align_variable): Likewise.
(get_variable_align): Likewise.
(build_constant_desc): Likewise.
(force_const_mem): Likewise.
* doc/tm.texi.in: Likewise.
* doc/tm.texi: Regenerate.
From-SVN: r227052
Trevor Saunders [Fri, 21 Aug 2015 01:15:15 +0000 (01:15 +0000)]
always define HAVE_peephole2
gcc/ChangeLog:
2015-08-20 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* genconfig.c (main): Always define HAVE_cc0.
* recog.c (rest_of_handle_peephole2): Adjust.
From-SVN: r227051
Trevor Saunders [Fri, 21 Aug 2015 01:14:59 +0000 (01:14 +0000)]
remove another #if for HAVE_cc0
gcc/ChangeLog:
2015-08-20 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* reorg.c (relax_delay_slots): Don't use #if to check value of
HAVE_cc0.
From-SVN: r227050
Trevor Saunders [Fri, 21 Aug 2015 01:14:46 +0000 (01:14 +0000)]
always define HAVE_conditional_execution
gcc/ChangeLog:
2015-08-20 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
* genconfig.c (main): Always define HAVE_CONDITIONAL_EXECUTION.
* targhooks.c (default_have_conditional_execution): Adjust.
From-SVN: r227049
GCC Administrator [Fri, 21 Aug 2015 00:16:11 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r227048
Jason Merrill [Thu, 20 Aug 2015 20:55:15 +0000 (16:55 -0400)]
* name-lookup.c (hidden_name_p): Handle OVERLOAD.
From-SVN: r227044
Jonathan Wakely [Thu, 20 Aug 2015 20:36:19 +0000 (21:36 +0100)]
libstdc++/67294 Don't run timed mutex tests on Darwin
PR libstdc++/67294
* testsuite/30_threads/recursive_timed_mutex/unlock/2.cc: Do not run
on Darwin.
* testsuite/30_threads/timed_mutex/unlock/2.cc: Likewise.
From-SVN: r227043
Jonathan Wakely [Thu, 20 Aug 2015 20:19:58 +0000 (21:19 +0100)]
any (__any_caster): Define at namespace scope so the name is visible to name lookup.
* include/experimental/any (__any_caster): Define at namespace scope
so the name is visible to name lookup.
* testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error.
From-SVN: r227042
Richard Sandiford [Thu, 20 Aug 2015 19:04:34 +0000 (19:04 +0000)]
rtl.h (rtvec_all_equal_p): Declare.
gcc/
* rtl.h (rtvec_all_equal_p): Declare.
(const_vec_duplicate_p, unwrap_const_vec_duplicate): New functions.
* rtl.c (rtvec_all_equal_p): New function.
* expmed.c (expand_mult): Use unwrap_const_vec_duplicate.
* config/aarch64/aarch64.c (aarch64_vect_float_const_representable_p)
(aarch64_simd_dup_constant): Use const_vec_duplicate_p.
* config/arm/arm.c (neon_vdup_constant): Likewise.
* config/s390/s390.c (s390_contiguous_bitmask_vector_p): Likewise.
* config/tilegx/constraints.md (W, Y): Likewise.
* config/tilepro/constraints.md (W, Y): Likewise.
* config/spu/spu.c (spu_legitimate_constant_p): Likewise.
(classify_immediate): Use unwrap_const_vec_duplicate.
* config/tilepro/predicates.md (reg_or_v4s8bit_operand): Likewise.
(reg_or_v2s8bit_operand): Likewise.
* config/tilegx/predicates.md (reg_or_v8s8bit_operand): Likewise.
(reg_or_v4s8bit_operand): Likewise.
From-SVN: r227041
Gleb Fotengauer-Malinovskiy [Thu, 20 Aug 2015 17:55:24 +0000 (17:55 +0000)]
libitm: Don't redefine __always_inline in local_atomic.
From-SVN: r227040
Ian Lance Taylor [Thu, 20 Aug 2015 17:43:55 +0000 (17:43 +0000)]
compiler: Don't crash on invalid print call.
When the print builtins are called with no arguments, the compiler
issues a warning and crashes when trying to produce the backend
representation for the arguments.
Fixes golang/go#11526.
Reviewed-on: https://go-review.googlesource.com/13131
From-SVN: r227039
Ian Lance Taylor [Thu, 20 Aug 2015 17:10:45 +0000 (17:10 +0000)]
libgo/testsuite: another fix for killing the sleep process
Avoid ps padding issues. Make sure we locate and kill just the sleep
process.
Reviewed-on: https://go-review.googlesource.com/13634
From-SVN: r227037
Bill Schmidt [Thu, 20 Aug 2015 17:01:32 +0000 (17:01 +0000)]
altivec.h (vec_pmsum_be): New #define.
[gcc]
2015-08-20 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* config/rs6000/altivec.h (vec_pmsum_be): New #define.
(vec_shasigma_be): New #define.
* config/rs6000/rs6000-builtin.def (VPMSUMB): New BU_P8V_AV2_2.
(VPMSUMH): Likewise.
(VPMSUMW): Likewise.
(VPMSUMD): Likewise.
(VPMSUM): New BU_P8V_OVERLOAD_2.
* config/rs6000/rs6000-c.c (altivec_overloaded_builtins): New
entries for VEC_MADD and VEC_VPMSUM.
[gcc/testsuite]
2015-08-20 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* gcc.target/powerpc/altivec-35.c (foo): Add tests for vec_madd.
* gcc.target/powerpc/p8vector-builtin-8.c (foo): Add tests for
vec_vpmsum_be and vec_shasigma_be.
From-SVN: r227036
Georg-Johann Lay [Thu, 20 Aug 2015 14:22:35 +0000 (14:22 +0000)]
avr.c (avr_insert_attributes): In diagnostic essage: Multiply argument avr_n_flash by 64 to match unit of "KiB".
* config/avr/avr.c (avr_insert_attributes): In diagnostic essage:
Multiply argument avr_n_flash by 64 to match unit of "KiB".
(avr_pgm_check_var_decl): Same.
From-SVN: r227035
Alan Lawrence [Thu, 20 Aug 2015 12:38:20 +0000 (12:38 +0000)]
[ARM] Hide existing float16 intrinsics unless we have a scalar __fp16 type
gcc/:
* config/arm/arm-builtins.c (arm_init_simd_builtin_types): Move
initialization of HFmode scalar type (float16_t) to...
(arm_init_fp16_builtins): ... Here. Combine with __fp16 initialization
code.
(arm_init_builtins): Call arm_init_fp16_builtins earlier and always.
* config/arm/arm_neon.h (vcvt_f16_f32, vcvt_f32_f16): Condition on
having an -mfp16-format.
gcc/testsuite/:
* lib/target-supports.exp
(check_effective_target_arm_neon_fp16_ok_nocache): Add flag variants
with -mfp16-format=ieee.
From-SVN: r227033
Richard Sandiford [Thu, 20 Aug 2015 11:36:00 +0000 (11:36 +0000)]
predicates.md (vector_all_ones_operand): Use CONSTM1_RTX to simplify definition.
gcc/
* config/i386/predicates.md (vector_all_ones_operand): Use
CONSTM1_RTX to simplify definition.
From-SVN: r227032
Richard Biener [Thu, 20 Aug 2015 11:02:30 +0000 (11:02 +0000)]
toplev.c (compile_file): Remove loop calling late_global_decl on all symbols.
2015-08-20 Richard Biener <rguenther@suse.de>
* toplev.c (compile_file): Remove loop calling late_global_decl
on all symbols.
* varpool.c (varpool_node::assemble_decl): Call late_global_decl
on decls we assembled.
From-SVN: r227031
Jonathan Wakely [Thu, 20 Aug 2015 10:50:02 +0000 (11:50 +0100)]
Makefile.am: Ensure gdb.py is installed for libstdc++ not libstdc++fs.
* python/Makefile.am: Ensure gdb.py is installed for libstdc++ not
libstdc++fs.
* python/Makefile.in: Regenerate.
# Auto-generated commit message above this line, original below.
* python/Makefile.am: Ensure gdb.py is installed for libstdc++ not
libstdc++fs.
* python/Makefile.in: Regenerate.
From-SVN: r227030
James Greenhalgh [Thu, 20 Aug 2015 10:18:54 +0000 (10:18 +0000)]
[AArch64] Break -mcpu tie between the compiler and assembler
gcc/
* common/config/aarch64/aarch64-common.c
(AARCH64_CPU_NAME_LENGTH): Delete.
(aarch64_option_extension): New.
(all_extensions): Likewise.
(processor_name_to_arch): Likewise.
(arch_to_arch_name): Likewise.
(all_cores): New.
(all_architectures): Likewise.
(aarch64_get_extension_string_for_isa_flags): Likewise.
(aarch64_rewrite_selected_cpu): Change to rewrite CPU names to
architecture names.
* config/aarch64/aarch64-protos.h
(aarch64_get_extension_string_for_isa_flags): New.
* config/aarch64/aarch64.c (aarch64_print_extension): Delete.
(aarch64_option_print): Get the string to print from
aarch64_get_extension_string_for_isa_flags.
(aarch64_declare_function_name): Likewise.
* config/aarch64/aarch64.h (BIG_LITTLE_SPEC): Rename to...
(MCPU_TO_MARCH_SPEC): This.
(ASM_CPU_SPEC): Use it.
(BIG_LITTLE_SPEC_FUNCTIONS): Rename to...
(MCPU_TO_MARCH_SPEC_FUNCTIONS): ...This.
(EXTRA_SPEC_FUNCTIONS): Use it.
From-SVN: r227028
Paolo Carlini [Thu, 20 Aug 2015 10:18:03 +0000 (10:18 +0000)]
re PR c++/67065 ([DR 1886] Missing diagnostics for ill-formed program with main variable instead of function)
/cp
2015-08-20 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/67065
* decl.c (grokvardecl): Reject 'main' as global variable.
/testsuite
2015-08-20 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/67065
* g++.dg/other/pr67065.C: New.
From-SVN: r227027
Simon Dardis [Thu, 20 Aug 2015 09:45:33 +0000 (10:45 +0100)]
mips.c (mips_expand_block_move): Enable inline memcpy expansion when !ISA_HAS_LWL_LWR.
gcc/
* config/mips/mips.c (mips_expand_block_move): Enable inline memcpy
expansion when !ISA_HAS_LWL_LWR.
(mips_block_move_straight): Update the size of elements copied to
account for alignment when !ISA_HAS_LWL_LWR.
* config/mips/mips.h (MIPS_MIN_MOVE_MEM_ALIGN): New macro.
gcc/testsuite/
* inline-memcpy-1.c: Test for inline expansion of memcpy.
* inline-memcpy-2.c: Ditto.
* inline-memcpy-3.c: Ditto.
* inline-memcpy-4.c: Ditto.
* inline-memcpy-5.c: Ditto.
From-SVN: r227026
Simon Dardis [Thu, 20 Aug 2015 09:36:33 +0000 (10:36 +0100)]
* MAINTAINERS: fix date.
From-SVN: r227025
Simon Dardis [Thu, 20 Aug 2015 09:12:06 +0000 (10:12 +0100)]
MAINTAINERS: Add myself.
* MAINTAINERS: Add myself.
From-SVN: r227024
Jason Merrill [Thu, 20 Aug 2015 01:45:49 +0000 (21:45 -0400)]
re PR c++/66957 (incorrect "is protected within this context" error)
PR c++/66957
* search.c (protected_accessible_p): Remove redundant access_in_type.
Add otype parm instead of walking binfo.
(friend_accessible_p): Check SCOPE itself. Handle class
templates. Pass through otype.
(dfs_accessible_post): Handle all accessibility cases.
(dfs_accessible_pre): New.
(accessible_p): Use it. Don't check protected access here. Pass
decl and otype to dfs_walk.
(member_declared_in_type, dfs_access_in_type_pre): New.
(access_in_type): Use dfs_access_in_type_pre.
* friend.c (add_friend): Fix multiple friends with the same name.
From-SVN: r227023
Jason Merrill [Thu, 20 Aug 2015 01:45:44 +0000 (21:45 -0400)]
* lambda.c (current_nonlambda_scope): New.
From-SVN: r227022
GCC Administrator [Thu, 20 Aug 2015 00:16:13 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r227021
Jiong Wang [Wed, 19 Aug 2015 22:55:28 +0000 (22:55 +0000)]
[Patch][expand] Check gimple statement to improve LSHIFT_EXP expand
This patch improves LSHIFT_EXP expand if the shift operand comes from sign
extension and the shift result across word_mode_size boundary. See code
comments for details.
2015-08-19 Jiong.Wang <jiong.wang@arm.com>
gcc/
* expr.c (expand_expr_real_2): Check gimple statement during
LSHIFT_EXPR expand.
gcc/testsuite
* gcc.dg/wide_shift_64_1.c: New testcase.
* gcc.dg/wide_shift_128_1.c: Likewise.
* gcc.target/aarch64/ashlti3_1.c: Likewise.
From-SVN: r227018
Magnus Granberg [Wed, 19 Aug 2015 22:07:06 +0000 (22:07 +0000)]
common.opt (fstack-protector): Initialize to -1.
* common.opt (fstack-protector): Initialize to -1.
(fstack-protector-all): Likewise.
(fstack-protector-strong): Likewise.
(fstack-protector-explicit): Likewise.
* configure.ac: Add --enable-default-ssp.
* defaults.h (DEFAULT_FLAG_SSP): New. Default SSP to strong.
* opts.c (finish_options): Update opts->x_flag_stack_protect if it is
-1.
* doc/install.texi: Document --enable-default-ssp.
* config.in: Regenerated.
* configure: Likewise.
* lib/target-supports.exp
(check_effective_target_fstack_protector_enabled): New test.
* gcc.target/i386/ssp-default.c: New test.
From-SVN: r227017
Alexandre Oliva [Wed, 19 Aug 2015 17:00:32 +0000 (17:00 +0000)]
[PR64164] fix regressions reported on m68k and armeb
Defer stack slot address assignment for all parms that can't live in
pseudos, and accept pseudos assignments in assign_param_setup_block.
for gcc/ChangeLog
PR rtl-optimization/64164
* cfgexpand.c (parm_maybe_byref_p): Renamed to...
(parm_in_stack_slot_p): ... this. Disregard mode, what
matters is whether the parm will live in a pseudo or a stack
slot.
(expand_one_ssa_partition): Deal with params without a default
def. Disregard mode.
* cfgexpand.h: Renamed function declaration.
* tree-ssa-coalesce.c: Adjust.
* function.c (split_complex_args): Allocate stack slot for
unassigned parms before splitting.
(parm_in_unassigned_mem_p): New. Use it instead of
parm_maybe_byref_p throughout this file.
(assign_parm_setup_block): Use it. Accept pseudos in the
expand-assigned rtl.
(assign_parm_setup_reg): Drop BLKmode requirement.
(assign_parm_setup_stack): Allocate and fill in the address of
unassigned MEM parms.
From-SVN: r227015
David Sherwood [Wed, 19 Aug 2015 15:23:11 +0000 (15:23 +0000)]
genmodes.c (emit_mode_unit_size_inline): New function.
2015-08-19 David Sherwood <david.sherwood@arm.com>
gcc/
* genmodes.c (emit_mode_unit_size_inline): New function.
(emit_mode_unit_precision_inline): New function.
(emit_insn_modes_h): Emit new #define. Emit new functions.
(emit_mode_unit_size): New function.
(emit_mode_unit_precision): New function.
(emit_mode_adjustments): Add mode_unit_size adjustments.
(emit_insn_modes_c): Emit new arrays.
* machmode.h (GET_MODE_UNIT_SIZE, GET_MODE_UNIT_PRECISION): Update to
use new inline methods.
From-SVN: r227013
Kyrylo Tkachov [Wed, 19 Aug 2015 15:09:38 +0000 (15:09 +0000)]
[AArch64] Use popcount_hwi instead of homebrew version
* config/aarch64/aarch64.c (bit_count): Delete prototype
and definition.
(aarch64_print_operand): Use popcount_hwi instead of the above.
From-SVN: r227012
Kyrylo Tkachov [Wed, 19 Aug 2015 15:01:21 +0000 (15:01 +0000)]
[AArch64][obvious] Remove obsolete comment in aarch64-option-extensions.def
* config/aarch64/aarch64-option-extensions.def: Delete obsolete
comment.
From-SVN: r227011
Mikael Morin [Wed, 19 Aug 2015 14:47:23 +0000 (14:47 +0000)]
Forward-port test generic_31.f90 from the 5 branch.
gcc/testsuite/
PR fortran/66929
* gfortran.dg/generic_31.f90: New.
From-SVN: r227010
Marek Polacek [Wed, 19 Aug 2015 14:22:26 +0000 (14:22 +0000)]
re PR middle-end/67133 (ICE at -Os and above on x86_64-linux-gnu in gimple_op, at gimple.h:2274)
PR middle-end/67133
* gimple-ssa-isolate-paths.c
(insert_trap_and_remove_trailing_statements): Rename to ...
(insert_trap): ... this. Don't remove trailing statements; split
block instead.
(find_explicit_erroneous_behaviour): Don't remove all outgoing edges.
* g++.dg/torture/pr67133.C: New test.
From-SVN: r227009
Mikael Morin [Wed, 19 Aug 2015 13:42:36 +0000 (13:42 +0000)]
Avoid signed left shift undefined behaviour in sext_hwi
gcc/
PR other/67042
* hwint.h (sext_hwi): Switch to unsigned for the left shift, and
conditionalize the whole on __GNUC__. Add fallback code
depending neither on undefined nor implementation-defined behaviour.
From-SVN: r227008
Paolo Carlini [Wed, 19 Aug 2015 13:20:29 +0000 (13:20 +0000)]
cmath: Fix typo in comment.
2015-08-19 Paolo Carlini <paolo.carlini@oracle.com>
* include/c_global/cmath: Fix typo in comment.
From-SVN: r227007
Paolo Carlini [Wed, 19 Aug 2015 13:17:51 +0000 (13:17 +0000)]
cmath: Revert fix for libstdc++/58625...
2015-08-19 Paolo Carlini <paolo.carlini@oracle.com>
* include/c_global/cmath: Revert fix for libstdc++/58625, no
longer necessary (__builtin_signbit is now type-generic).
From-SVN: r227006
Jiong Wang [Wed, 19 Aug 2015 13:02:19 +0000 (13:02 +0000)]
[AArch64] Cleanup whitespace in aarch64.c
2015-08-19 Jiong Wang <jiong.wang@arm.com>
gcc/
* config/aarch64/aarch64.c (aarch64_load_symref_appropriately): Replace
whitespaces with tab.
From-SVN: r227005
Florian Weimer [Wed, 19 Aug 2015 13:00:24 +0000 (15:00 +0200)]
Make the stack non-executable in GNAT tools
Due to PR67205, the deeply nested instantiations require trampolines,
which in turn requires an executable stack for the GNAT tools on
architectures such as x86_64.
From-SVN: r227004
Uros Bizjak [Wed, 19 Aug 2015 09:19:08 +0000 (11:19 +0200)]
* ChangeLog: Fix corrupted entry.
From-SVN: r227003
Kyrylo Tkachov [Wed, 19 Aug 2015 08:26:43 +0000 (08:26 +0000)]
[ARM] Use %wd format for lane printing in bounds_check
* config/arm/arm.c (bounds_check): Use %wd print format
for HOST_WIDE_INT arguments.
From-SVN: r227002
Trevor Saunders [Wed, 19 Aug 2015 02:48:48 +0000 (02:48 +0000)]
remove more useless typedefs
gcc/c-family/ChangeLog:
2015-08-18 Trevor Saunders <tbsaunde@tbsaunde.org>
* c-ada-spec.h, c-common.c, c-common.h, c-format.c, c-format.h,
c-objc.h, c-ppoutput.c, c-pragma.c, c-pragma.h: Remove useless
typedefs.
gcc/c/ChangeLog:
2015-08-18 Trevor Saunders <tbsaunde@tbsaunde.org>
* c-aux-info.c, c-parser.c, c-tree.h: Remove useless typedefs.
gcc/cp/ChangeLog:
2015-08-18 Trevor Saunders <tbsaunde@tbsaunde.org>
* call.c, class.c, cp-tree.h, decl.c, except.c, mangle.c,
method.c, name-lookup.h, parser.c, parser.h, rtti.c,
semantics.c, typeck2.c: Remove useless typedefs.
gcc/fortran/ChangeLog:
2015-08-18 Trevor Saunders <tbsaunde@tbsaunde.org>
* dependency.c, dependency.h, gfortran.h, io.c, module.c,
parse.h, resolve.c, trans-types.h, trans.h: remove useless
typedefs.
gcc/lto/ChangeLog:
2015-08-18 Trevor Saunders <tbsaunde@tbsaunde.org>
* lto.h: Remove useless typedefs.
gcc/objc/ChangeLog:
2015-08-18 Trevor Saunders <tbsaunde@tbsaunde.org>
* objc-act.h, objc-next-runtime-abi-02.c, objc-runtime-hooks.h:
Remove useless typedefs.
gcc/ChangeLog:
2015-08-18 Trevor Saunders <tbsaunde@tbsaunde.org>
* bb-reorder.c, cfgloop.h, collect2.c, combine.c, dse.c,
dwarf2cfi.c, gcse-common.h, genopinit.c, ggc-page.c, machmode.h,
mcf.c, modulo-sched.c, omp-low.c, read-rtl.c, sched-rgn.c,
signop.h, tree-call-cdce.c, tree-dfa.c, tree-diagnostic.c,
tree-inline.h, tree-scalar-evolution.c, tree-ssa-address.c,
tree-ssa-loop-niter.c, tree-ssa-loop.h, tree-ssa-pre.c,
tree-ssa-reassoc.c, tree-ssa-sccvn.h, tree-ssa-structalias.c,
tree-ssa-uninit.c, tree-ssa.h, tree-vect-loop-manip.c,
tree-vectorizer.h, tree-vrp.c, var-tracking.c: Remove useless
typedefs.
From-SVN: r227001
Trevor Saunders [Wed, 19 Aug 2015 02:48:16 +0000 (02:48 +0000)]
remove useless typedefs
gcc/ChangeLog:
2015-08-11 trevor Saunders <tbsaunde@tbsaunde.org>
* bt-load.c, cgraph.h, dwarf2out.c, dwarf2out.h, final.c,
function.c, graphite-scop-detection.c, haifa-sched.c,
ipa-devirt.c, ipa-split.c, recog.c, ree.c, stmt.c,
tree-data-ref.c, tree-ssa-dom.c, tree-ssa-loop-ivopts.c,
varasm.c: Remove typedefs of structs.
From-SVN: r227000
GCC Administrator [Wed, 19 Aug 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r226998
Bill Schmidt [Tue, 18 Aug 2015 22:02:46 +0000 (22:02 +0000)]
altivec.h (vec_adde): New define.
[gcc]
2015-08-18 Bill Schmidt <wschmidt@vnet.linux.ibm.com>
* config/rs6000/altivec.h (vec_adde): New define.
(vec_addec): Likewise.
(vec_double): Likewise.
(vec_bperm): Likewise.
(vec_gb): Likewise.
* config/rs6000/rs6000-builtin.def (ADDE): New
BU_ALTIVEC_OVERLOAD_3.
(ADDEC): Likewise.
(DOUBLE): New BU_VSX_OVERLOAD_1.
* config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add new
entries for ALTIVEC_BUILTIN_VEC_ADDC, ALTIVEC_BUILTIN_VEC_ADDE,
ALTIVEC_BUILTIN_VEC_ADDEC, ALTIVEC_BUILTIN_VEC_ANDC,
VSX_BUILTIN_VEC_DOUBLE, ALTIVEC_BUILTIN_VEC_MERGEH,
ALTIVEC_BUILTIN_VEC_MERGEL, ALTIVEC_BUILTIN_VEC_NOR,
ALTIVEC_BUILTIN_VEC_OR, ALTIVEC_BUILTIN_VEC_XOR,
ALTIVEC_BUILTIN_VEC_PERM, ALTIVEC_BUILTIN_VEC_SEL,
P8V_BUILTIN_VEC_EQV, P8V_BUILTIN_VEC_NAND, P8V_BUILTIN_VEC_ORC,
and P8V_BUILTIN_VEC_VBPERMQ.
[gcc/testsuite]
2015-08-18 Bill Schmidt <wschmidt@vnet.linux.ibm.com>
* gcc.target/powerpc/altivec-35.c: New test.
* gcc.target/powerpc/p8vector-builtin-8.c: New test.
* gcc.target/powerpc/vsx-vector-7.c: New test.
From-SVN: r226995
Jason Merrill [Tue, 18 Aug 2015 21:29:12 +0000 (17:29 -0400)]
* print-tree.c (print_node): Handle TREE_BINFO.
From-SVN: r226994
Jason Merrill [Tue, 18 Aug 2015 21:29:07 +0000 (17:29 -0400)]
re PR c++/66919 (C++14 ICE during error reporting)
PR c++/66919
* g++.dg/cpp1y/auto-fn27.C: New.
From-SVN: r226993
Jason Merrill [Tue, 18 Aug 2015 21:29:01 +0000 (17:29 -0400)]
DR 1155
DR 1155
* pt.c (convert_nontype_argument): Allow internal linkage in C++11
and up.
From-SVN: r226992
Francois-Xavier Coudert [Tue, 18 Aug 2015 20:07:57 +0000 (20:07 +0000)]
re PR middle-end/36757 (__builtin_signbit should be type-generic)
PR middle-end/36757
* builtins.c (expand_builtin_signbit): Add asserts to make sure
we can expand BUILT_IN_SIGNBIT inline.
* builtins.def (BUILT_IN_SIGNBIT): Make type-generic.
* doc/extend.texi: Document the type-generic __builtin_signbit.
* c-common.c (check_builtin_function_arguments): Add check
for BUILT_IN_SIGNBIT argument.
* gcc.dg/builtins-error.c: Add checks for __builtin_signbit.
* gcc.dg/tg-tests.h: Add checks for __builtin_signbit.
From-SVN: r226990
Richard Sandiford [Tue, 18 Aug 2015 19:04:41 +0000 (19:04 +0000)]
re PR rtl-optimization/67218 (Combine incorrectly folds (double) (float) (unsigned))
gcc/
PR rtl-optimization/67218
* simplify-rtx.c (exact_int_to_float_conversion_p): New function.
(simplify_unary_operation_1): Use it.
gcc/testsuite/
PR rtl-optimization/67218
* gcc.c-torture/execute/ieee/pr67218.c,
gcc.target/aarch64/fcvt_int_float_double1.c,
gcc.target/aarch64/fcvt_int_float_double2.c,
gcc.target/aarch64/fcvt_int_float_double3.c,
gcc.target/aarch64/fcvt_int_float_double4.c,
gcc.target/aarch64/fcvt_uint_float_double1.c,
gcc.target/aarch64/fcvt_uint_float_double2.c,
gcc.target/aarch64/fcvt_uint_float_double3.c,
gcc.target/aarch64/fcvt_uint_float_double4.c: New tests.
From-SVN: r226987
Jonathan Wakely [Tue, 18 Aug 2015 18:04:48 +0000 (19:04 +0100)]
re PR c++/67216 (false is still a null pointer constant)
PR c++/67216
* testsuite/tr1/2_general_utilities/shared_ptr/observers/bool_conv.cc:
Fix use of safe-bool idiom that isn't valid in C++11.
From-SVN: r226986
Jonathan Wakely [Tue, 18 Aug 2015 18:04:42 +0000 (19:04 +0100)]
* include/bits/ptr_traits.h: Include <bits/move.h> for addressof.
From-SVN: r226985
Jonathan Wakely [Tue, 18 Aug 2015 18:04:32 +0000 (19:04 +0100)]
re PR libstdc++/67066 (libstdc++-v3/src/filesystem/dir.cc fails to compile with --enable-concept-checks)
PR libstdc++/67066
* doc/xml/manual/configure.xml (manual.intro.setup.configure): Add
caveats for --enable-concept-checks. Improve link text.
* doc/xml/manual/diagnostics.xml (std.diagnostics.concept_checking):
Clarify caveats.
* doc/html/*: Regenerate.
* include/bits/stl_deque.h (deque): Only use concept checks in C++03.
* include/bits/stl_stack.h (stack): Likewise.
* include/bits/stl_vector.h (vector): Likewise.
From-SVN: r226984
Matthew Wahab [Tue, 18 Aug 2015 16:10:10 +0000 (16:10 +0000)]
atomic-comp-swap-release-acquire.c: Adjust dg-options to disable LSE extensions.
* gcc.target/aarch64/atomic-comp-swap-release-acquire.c: Adjust
dg-options to disable LSE extensions.
* gcc.target/aarch64/atomic-op-acq_rel.c: Likewise.
* gcc.target/aarch64/atomic-op-acquire.c: Likewise.
* gcc.target/aarch64/atomic-op-char.c: Likewise.
* gcc.target/aarch64/atomic-op-consume.c: Likewise.
* gcc.target/aarch64/atomic-op-imm.c: Likewise.
* gcc.target/aarch64/atomic-op-int.c: Likewise.
* gcc.target/aarch64/atomic-op-long.c: Likewise.
* gcc.target/aarch64/atomic-op-relaxed.c: Likewise.
* gcc.target/aarch64/atomic-op-seq_cst.c: Likewise.
* gcc.target/aarch64/atomic-op-release.c: Likewise.
* gcc.target/aarch64/atomic-op-short.c: Likewise.
* gcc.target/aarch64/sync-comp-swap.c: Likewise.
* gcc.target/aarch64/sync-op-acquire.c: Likewise.
* gcc.target/aarch64/sync-op-full.c: Likewise.
* gcc.target/aarch64/sync-op-release.c: Likewise.
From-SVN: r226979
Paolo Carlini [Tue, 18 Aug 2015 14:38:51 +0000 (14:38 +0000)]
re PR c++/67160 (static_assert feature test macro)
c-family/
2015-08-18 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/67160
* c-cppbuiltin.c (c_cpp_builtins): Fix __cpp_static_assert value
in c++1z mode.
testsuite/
2015-08-18 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/67160
* g++.dg/cpp1z/feat-cxx1z.C: New.
From-SVN: r226972
Marek Polacek [Tue, 18 Aug 2015 13:41:27 +0000 (13:41 +0000)]
re PR middle-end/67222 (ICE in gimple_call_arg with bogus posix_memalign)
PR middle-end/67222
* gimple-low.c (lower_stmt): Don't lower BUILT_IN_POSIX_MEMALIGN
if the call isn't valid.
* tree-ssa-alias.c (ref_maybe_used_by_call_p_1): Check builtins using
gimple_call_builtin_p.
(call_may_clobber_ref_p_1): Likewise.
(stmt_kills_ref_p): Likewise.
* gcc.dg/torture/pr67222.c: New test.
From-SVN: r226969
Robert Suchanek [Tue, 18 Aug 2015 12:42:12 +0000 (12:42 +0000)]
[MIPS] Fix register renaming in the interrupt handlers.
gcc/
* config/mips/mips-protos.h (mips_hard_regno_rename_ok): New prototype.
* config/mips/mips.c (mips_hard_regno_rename_ok): New function.
(mips_hard_regno_scratch_ok): Likewise.
(TARGET_HARD_REGNO_SCRATCH_OK): Define macro.
* config/mips/mips.h (HARD_REGNO_RENAME_OK): New.
gcc/testsuite/
* gcc.target/mips/interrupt_handler-bug-1.c: New test.
From-SVN: r226968
Bin Cheng [Tue, 18 Aug 2015 07:57:54 +0000 (07:57 +0000)]
tree-ssa-loop-niter.c (refine_value_range_using_guard): New.
* tree-ssa-loop-niter.c (refine_value_range_using_guard): New.
(determine_value_range): Call refine_value_range_using_guard for
each loop initial condition to improve value range.
gcc/testsuite/ChangeLog
* gcc.dg/tree-ssa/loop-bound-1.c: New test.
* gcc.dg/tree-ssa/loop-bound-3.c: New test.
* gcc.dg/tree-ssa/loop-bound-5.c: New test.
From-SVN: r226966
Max Filippov [Tue, 18 Aug 2015 01:08:22 +0000 (01:08 +0000)]
xtensa: fix _Unwind_GetCFA
Returning context->cfa in _Unwind_GetCFA makes CFA point one stack frame
higher than what was actually used by code at context->ra. This results
in invalid CFA value in signal frames and premature unwinding completion
in forced unwinding used by uClibc NPTL thread cancellation.
Returning context->sp from _Unwind_GetCFA makes all CFA values valid and
matching code that used them.
2015-08-18 Max Filippov <jcmvbkbc@gmail.com>
libgcc/
* config/xtensa/unwind-dw2-xtensa.c (_Unwind_GetCFA): Return
context->sp instead of context->cfa.
From-SVN: r226964
Max Filippov [Tue, 18 Aug 2015 01:07:10 +0000 (01:07 +0000)]
xtensa: use unwind-dw2-fde-dip instead of unwind-dw2-fde
This allows having exception cleanup code in binaries that don't
register their unwind tables.
2015-08-18 Max Filippov <jcmvbkbc@gmail.com>
libgcc/
* config/xtensa/t-windowed (LIB2ADDEH): Replace unwind-dw2-fde
with unwind-dw2-fde-dip.
From-SVN: r226963
Max Filippov [Tue, 18 Aug 2015 01:05:44 +0000 (01:05 +0000)]
xtensa: reimplement register spilling
Spilling windowed registers in userspace is much easier, more portable,
less error-prone and equally effective as in kernel. Now that register
spilling syscall is considered obsolete in the xtensa linux kernel
replace it with CALL12 followed by series of ENTRY in libgcc.
2015-08-18 Max Filippov <jcmvbkbc@gmail.com>
libgcc/
* config/xtensa/lib2funcs.S (__xtensa_libgcc_window_spill): Use
CALL12 followed by series of ENTRY to spill windowed registers.
(__xtensa_nonlocal_goto): Call __xtensa_libgcc_window_spill
instead of making linux spill syscall.
From-SVN: r226962
GCC Administrator [Tue, 18 Aug 2015 00:16:16 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r226961
Matthew Fortune [Mon, 17 Aug 2015 22:35:19 +0000 (22:35 +0000)]
mips.exp: Redefine isa variable which is referenced in later code.
gcc/testsuite/
* gcc.target/mips/mips.exp (mips-dg-options): Redefine isa
which is used in later code.
From-SVN: r226957
Paolo Carlini [Mon, 17 Aug 2015 21:40:07 +0000 (21:40 +0000)]
re PR c++/67216 (false is still a null pointer constant)
/cp
2015-08-17 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/67216
* call.c (null_ptr_cst_p): In C++11 return 'false' for 'false'.
/testsuite
2015-08-17 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/67216
* g++.dg/cpp0x/nullptr34.C: New.
* g++.dg/warn/Wconversion2.C: Adjust.
* g++.dg/warn/Wnull-conversion-1.C: Likewise.
* g++.old-deja/g++.other/null3.C: Likewise.
* g++.dg/cpp0x/pr51313.C: Adjust.
From-SVN: r226956
Jason Merrill [Mon, 17 Aug 2015 18:42:09 +0000 (14:42 -0400)]
re PR c++/67244 (internal compiler error: in gimplify_var_or_parm_decl, at gimplify.c:1801)
PR c++/67244
* pt.c (tsubst_copy_and_build): Call insert_pending_capture_proxies.
From-SVN: r226950
Jason Merrill [Mon, 17 Aug 2015 18:42:04 +0000 (14:42 -0400)]
re PR c++/67104 (Constant expression factory function initializes std::array with static storage duration strangely)
PR c++/67104
* constexpr.c (array_index_cmp, find_array_ctor_elt): New.
(cxx_eval_array_reference, cxx_eval_store_expression): Use them.
From-SVN: r226949