* doc/extend.texi (Cilk Plus Builtins): cilkplus.org now uses
https by default.
* doc/passes.texi (Cilk Plus Transformation): Ditto.
* doc/generic.texi (Statements for C++): Ditto, and use @uref.
From-SVN: r243962
2016-12-27 Sandra Loosemore <sandra@codesourcery.com>
gcc/
* doc/cppdiropts.texi, doc/cppwarnopts.texi: New files, split from...
* doc/cppopts.texi: .... here.
* doc/cpp.texi (Invocation): Adjust includes.
* doc/invoke.texi (Option Summary): Add missing preprocesor-related
options. Adjust sorting and formatting.
(Warning Options): Include cppwarnopts.texi.
(Preprocessor Options): Add pointers and list the specific
preprocessor options from cppopts.texi first instead of last.
(Directory Options): Move/merge documentation of -I, -iquote, and
-I- to cppdiropts.texi. Include that file here.
From-SVN: r243954
[gcc]
2016-12-27 Michael Meissner <meissner@linux.vnet.ibm.com>
* config/rs6000/predicates.md (const_0_to_12_operand): Rename
predicate and change test from 0..11 to 0..12 to match the
semantics of the word extract/insert instructions. Change all
callers.
(const_0_to_11_operand): Likewise.
* config/rs6000/rs6000.c (altivec_expand_builtin): Likewise.
* config/rs6000/vsx.md (vextract4b): Likewise.
(vextract4b_internal): Likewise.
(vinsert4b): Likewise.
(vinsert4b_internal): Likewise.
(vinsert4b_di): Likewise.
(vinsert4b_di_internal): Likewise.
* config/rs6000/rs6000.md (zero_extendsi<mode>2): Fix offset used
in xxextractuw to zero extend the word in the vector registers.
(lfiwzx): Likewise.
[gcc/testsuite]
2016-12-27 Michael Meissner <meissner@linux.vnet.ibm.com>
* gcc.target/powerpc/p9-vinsert4b-2.c: Update test to test for 13
being out of bounds instead of 12.
From-SVN: r243948
* config/i386/i386.c (ix86_secondary_reload): Require QImode
intermediate for QImode mask register spill only for !TARGET_AVX512DQ.
Always use true_regnum to determine operand regno.
From-SVN: r243945
libmpx/
2016-12-27 H.J. Lu <hongjiu.lu@intel.com>
Alexander Ivchenko <alexander.ivchenko@intel.com>
* mpxwrap/libtool-version: New version.
* mpxwrap/mpx_wrappers.c (__mpx_wrapper_realloc): Make it
static with external alias.
(__mpx_wrapper_bzero): Ditto.
(mpx_wrapper_memcpy): Ditto.
(__mpx_wrapper_mempcpy): Ditto.
From-SVN: r243942
PR target/78904
* config/i386/constraints.md (Bc): New special memory constraint.
* config/i386/i386.md (*cmpqi_ext_1, *extvqi, *extzvqi): Use Bc
constraint with nonimmediate_operand to allow constant memory operands.
(*cmpqi_ext_3, insv<mode>_1, addqi_ext_1, *testqi_ext_1, andqi_ext_1)
(*<any_or:code>qi_ext_1, *xorqi_ext_1_cc): Use Bc constraint
with general_operand to allow constant memory operands.
testsuite/ChangeLog:
PR target/78904
* gcc.target/i386/pr78904-3.c: New test.
From-SVN: r243937
2016-12-27 Alexander Ivchenko <alexander.ivchenko@intel.com>
* c-family/c.opt (flag_chkp_flexible_struct_trailing_arrays):
Add new option.
(fchkp-narrow-to-innermost-array): Fix typo.
* doc/cpp.texi (flag_chkp_flexible_struct_trailing_arrays): Ditto.
* tree-chkp.c (chkp_may_narrow_to_field ): Forbid
narrowing when flag_chkp_flexible_struct_trailing_arrays is used
and the field is the last array field in the structure.
2016-12-27 Alexander Ivchenko <alexander.ivchenko@intel.com>
* gcc.target/i386/mpx/vla-trailing-1-lbv.c: New test.
* gcc.target/i386/mpx/vla-trailing-1-nov.c: Ditto.
* gcc.target/i386/mpx/vla-trailing-1-ubv.c: Ditto.
From-SVN: r243936
2016-12-26 Alexander Ivchenko <alexander.ivchenko@intel.com>
* mpxrt/libtool-version: New version.
* mpxrt/mpxrt-utils.c (set_mpx_rt_stop_handler): New function.
(print_help): Add help for CHKP_RT_STOP_HANDLER environment
variable.
(__mpxrt_init_env_vars): Add initialization of stop_handler.
(__mpxrt_stop_handler): New function.
(__mpxrt_stop): Ditto.
* mpxrt/mpxrt-utils.h (mpx_rt_stop_mode_handler_t): New enum.
* mpxrt/mpxrt.c (handler): Replace exit(255) with __mpxrt_stop
function call.
From-SVN: r243928
virtual_operand_p handled SSA names by looking at the flags of the
underlying variable. This seems to be a relatively common source
of cache misses, mainly because virtual_operand_p is the first thing
tested by is_gimple_reg.
This patch caches the information in the SSA name itself. Several
flags seem to be free so the patch arbitrarily uses public_flag.
Tested on aarch64-linux-gnu and x86_64-linux-gnu. It improves
compile time by a small (<1%) but reproducable amount on the
tests I've tried.
gcc/
* tree-core.h (tree_base): Document the meaning of public_flag
for SSA names.
* tree.h (SSA_NAME_IS_VIRTUAL_OPERAND): New macro.
(SET_SSA_NAME_VAR_OR_IDENTIFIER): Record whether the variable
is a virtual operand.
* gimple-expr.h (virtual_operand_p): Use SSA_NAME_IS_VIRTUAL_OPERAND.
From-SVN: r243916
PR middle-end/78901
* except.c (nothrow_libfn_p): Expect libc_name_p to return
const struct libc_name_struct *, if it returns NULL, return 0,
otherwise check c_ver and use flag_isoc99 or flag_isoc11.
* cfns.gperf: Add %struct-type and libc_name_struct definition.
For all C89 C library functions add , 89 after the name, add
C99 C library functions with , 99 and C11 C library functions
with , 11 suffix.
* cfns.h: Regenerated.
From-SVN: r243914
gcc/testsuite/ChangeLog:
2016-12-23 Andre Vehreschild <vehre@gcc.gnu.org>
* gfortran.dg/class_assign_1.f08: New test.
gcc/fortran/ChangeLog:
2016-12-23 Andre Vehreschild <vehre@gcc.gnu.org>
* trans-expr.c (trans_class_assignment): Allocate memory of _vptr->size
before assigning an allocatable class object.
(gfc_trans_assignment_1): Flag that (re-)alloc of the class object
shall be done.
From-SVN: r243909
gcc/testsuite
* gcc.target/mips/oddspreg-2.c (dg-options): Remove dg-skip-if for
-fno-fat-lto-objects and add the -ffat-lto-objects option, along with
an explanation for its purpose.
* gcc.target/mips/oddspreg-3.c (dg-options): Likewise.
* gcc.target/mips/oddspreg-6.c (dg-options): Likewise.
* gcc.target/mips/no-dsp-1.c: Add an explanation for the purpose of
-ffat-lto-objects.
* gcc.target/mips/pr54240.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-14.c: Likewise.
* gcc.target/mips/soft-float-1.c: Likewise.
From-SVN: r243908
Change Struct_type::do_mangled_name to incorporate the field
names even for hidden symbols. This is needed in cases where
a package imports a type "S" that has an anonymous struct, e.g.
// imported from some other package
type S struct {
X struct{ _ struct{} }
}
and then defines a local type that uses a structurally identical
anonymous struct, e.g.
// defined locally
type T struct {
U struct{ _ struct{} }
}
In the case above both types triggered the creation of hash/equal
methods, but the method names were clashing (since both structs
had the same mangled name).
Fixesgolang/go#18414
Reviewed-on: https://go-review.googlesource.com/34621
From-SVN: r243899
2016-12-22 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
* tree-pretty-print.c (dump_generic_node): Change dump format for
REALPART_EXPR and IMAGPART_EXPR with TDF_GIMPLE.
testsuite/
* gcc.dg/gimplefe-20.c: New test-case.
From-SVN: r243898
When pushing a value into the literal pool the resulting decl might
get a higher alignment than the original expression depending on how a
target defines CONSTANT_ALIGNMENT. Generating an RTX for the constant
pool access we currently use the alignment from the original
expression. Changed with the attached patch.
This fixes a GCC 6 regression for S/390. For arrays of string
constants as in the attached testcase encode_section_info is not able
to figure out that the constant pool slot is already properly aligned
since the mem_align field in the rtx is not set properly.
gcc/ChangeLog:
2016-12-22 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
* varasm.c (build_constant_desc): Use the alignment of the var
decl instead of the original expression.
gcc/testsuite/ChangeLog:
2016-12-22 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
* gcc.target/s390/litpool-str-1.c: New test.
From-SVN: r243888
PR tree-optimization/78886
* gcc.dg/tree-ssa/pr78886.c: New test.
PR tree-optimization/78886
* tree-ssa-strlen.c (handle_builtin_malloc): Return when LHS
is equal to NULL.
From-SVN: r243886