2016-10-04 Richard Biener <rguenther@suse.de>
PR middle-end/77407
* match.pd (X / abs (X) -> X < 0 ? -1 : 1): Drop vector
type support, mark with :C.
(X / -X -> -1): Mark with :C.
From-SVN: r240742
2016-10-03 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
* ipa-cp.c (propagate_bits_accross_jump_function): Introduce space
between callee name and param in dump message in call to fprintf.
From-SVN: r240730
PR tree-optimization/71550
PR tree-optimization/71403
* tree-ssa-threadbackward.c: Include tree-vectorizer.h
(profitable_jump_thread_path): Also return boolean indicating if
the realized path will create an irreducible loop.
Remove loop depth tests from 71403.
(fsm_find_control_statement_thread_paths): Remove loop depth tests
from 71403. If threading will create an irreducible loop, then
throw away loop iteration and related information.
PR tree-optimization/71550
PR tree-optimization/71403
* gcc.c-torture/execute/pr71550.c: New test.
From-SVN: r240727
PR go/77809
libgo: strip most C macros from runtime.inc
The Go runtime package is picking up C macros from runtime_sysinfo.go
and then re-exporting them to runtime.inc. This can cause name
conflicts. Change the Makefile so that we only put the macros we need
into runtime.inc. These are the constants that are actually defined by
Go code, not runtime_sysinfo.go. There are only a few, so we can
pattern match.
This is an additional hack on runtime.inc. The long term goal is to
convert the runtime package to Go and eliminate runtime.inc entirely, so
a few hacks seem acceptable.
Fixes GCC PR 77809.
Reviewed-on: https://go-review.googlesource.com/30167
From-SVN: r240724
The compiler defaults to thin LTO objects if built with linker plugin
support, and in that case, the error expected by the testcase appears
only at link time, if at all. Forcing fat LTO object file creation
generates the error consistently at compile time, as expected.
gcc/testsuite/ChangeLog:
2016-10-03 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
* gcc.target/avr/torture/builtins-error.c: Add -ffat-lto-objects
option.
From-SVN: r240711
PR libstdc++/77814
* include/bits/std_abs.h: Use "C++" language linkage.
* testsuite/17_intro/headers/c++2011/linkage.cc: Move <complex.h> to
the end. Add <stdalign.h>.
From-SVN: r240710
Revert
2016-09-30 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* ifcvt.c (noce_try_avoid_const_materialization): New function.
(noce_process_if_block): Use it.
* gcc.target/aarch64/ifcvt_avoid_const_materialization_1.c: New test.
From-SVN: r240708
Core 903
* typeck.c (cp_build_binary_op): Pass original operands to
null_ptr_cst_p, not those after the default conversions.
* g++.dg/cpp0x/nullptr37.C: New test.
From-SVN: r240707
gcc/testsuite/ChangeLog:
2016-10-01 Andre Vehreschild <vehre@gcc.gnu.org>
PR fortran/77663
* gfortran.dg/coarray_send_by_ref_1.f08: New test.
libgfortran/ChangeLog:
2016-10-01 Andre Vehreschild <vehre@gcc.gnu.org>
PR fortran/77663
* caf/single.c (caf_internal_error): Fix not terminating va-list.
(_gfortran_caf_register): Free memory also when other allocs failed.
(_gfortran_caf_get_by_ref): Fixed style.
(send_by_ref): Token is now stored at the correct position preventing
inaccessible tokens, memory loss and possibly crashes.
From-SVN: r240695
* configure.ac: Add target-libffi to target_libraries.
Readd libgcj target disablings, modified to only target-libffi.
Readd target addition of go to unsupported languages.
* configure: Regenerated.
From-SVN: r240684
2016-09-30 Andrew Haley <aph@redhat.com>
* MAINTAINERS: Remove Per Bothner, Andrew Haley, and Tom Tromey rom
write-after approval. Remove Tom Tromey and Bryce McKinlay from
libgcj.
From-SVN: r240665
2016-09-30 Tadek Kijkowski <tkijkowski@gmail.com>
* check.tpl: Convert line endings to unix on test outputs
* fixfixes.c: Fixed passing file name to apply_fix when
SEPARATE_FIX_PROC is defined
* fixincl.c: Use system_with_shell, fixes for MinGW and DJGPP
* fixlib.c, fixlib.h: Added system_with_shell and fix_path_separators
From-SVN: r240664
2016-09-30 Andrew Haley <aph@redhat.com>
* MAINTAINERS: Move Per Bothner, Andrew Haley, and Tom Tromey to
write-after approval after GCJ deletion.
From-SVN: r240663
Remove the old locking code written in C.
Add a shell script mkrsysinfo.sh to generate the runtime_sysinfo.go
file, so that we can get Go copies of the system time structures and
other types.
Tweak the compiler so that when compiling the runtime package the
address operator does not cause local variables to escape. When the gc
compiler compiles the runtime, an escaping local variable is treated as
an error. We should implement that, instead of this change, when escape
analysis is turned on.
Tweak the compiler so that the generated C header does not include names
that start with an underscore followed by a non-upper-case letter,
except for the special cases of _defer and _panic. Otherwise we
translate C types to Go in runtime_sysinfo.go and then generate those Go
types back as C types in runtime.inc, which is useless and painful for
the C code.
Change entersyscall and friends to take a dummy argument, as the gc
versions do, to simplify calls from the shared code.
Reviewed-on: https://go-review.googlesource.com/30079
From-SVN: r240657
2016-09-30 Matthew Wawhab <matthew.wahab@arm.com>
* gcc.target/arm/fp16-aapcs-3.c: Replace arm_fp16_ok with
arm_fp16_alternative_ok as the required effective target.
* gcc.target/arm/fp16-aapcs-4.c: Likewise. Also add
-mfp16-format=alternative to the dg-options directive and remove
the dg-add-options directive.
From-SVN: r240655
2016-09-30 Fritz Reese <fritzoreese@gmail.com>
Fix ICE caused by union types comparing equal to structures.
PR fortran/77782
* gcc/fortran/interface.c (gfc_compare_derived_types): Use
gfc_compare_union_types to compare union types.
PR fortran/77782
* gcc/testsuite/gfortran.dg/dec_structure_16.f90: New testcase.
From-SVN: r240651