Tim Shen [Tue, 15 Dec 2015 05:59:01 +0000 (05:59 +0000)]
backport: re PR libstdc++/68863 (Regular expressions: Backreferences don't work in negative lookahead)
Backport from mainline
2015-12-15 Tim Shen <timshen@google.com>
PR libstdc++/68863
* include/bits/regex_executor.tcc (_Executor::_M_lookahead):
Copy the captured content for lookahead, so that the backreferences
inside can refer to them.
* testsuite/28_regex/algorithms/regex_match/ecma/char/68863.cc:
New testcase.
Jeff Law [Thu, 10 Dec 2015 19:40:23 +0000 (12:40 -0700)]
re PR tree-optimization/61515 (Extremely long compile time for generated code)
PR tree-optimization/61515
PR tree-optimization/46590
Backport from mainline.
* tree-ssa-threadedge.c (invalidate_equivalences): Walk the unwinding
stack rather than looking at every SSA_NAME's value.
Backport from mainline
2015-12-08 Uros Bizjak <ubizjak@gmail.com>
PR target/68701
* config/i386/i386.c (ix86_option_override_internal): Enable
-maccumulate-outgoing-args when %ebp is fixed due to stack
realignment requirements.
testsuite/ChangeLog:
Backport from mainline
2015-12-08 Uros Bizjak <ubizjak@gmail.com>
PR target/68701
* gcc.target/i386/pr68701-1.c: New test.
* gcc.target/i386/pr68701-2.c: Ditto.
re PR target/68729 (../Xbae/Methods.c:1772:1: ICE: in extract_insn, at recog.c:2343)
PR target/68729
* config/pa/pa.c (pa_emit_move_sequence): Don't check that mode is
consistent with modes of the input and output operands when doing
reloads to and from floating point registers. Do reload for all
address forms.
Backport from mainline.
2015-03-16 Max Ostapenko <m.ostapenko@partner.samsung.com>
PR sanitizer/64820
gcc/
* cfgexpand.c (align_base): New function.
(alloc_stack_frame_space): Call it.
(expand_stack_vars): Align prev_frame to be sure
data->asan_vec elements aligned properly.
gcc/testsuite/
* c-c++-common/asan/pr64820.c: New test.
Ludovic Brenta [Sun, 6 Dec 2015 14:11:54 +0000 (14:11 +0000)]
re PR ada/49944 (Bootstrapping on x86_64-pc-kfreebsd-gnu fails with "s-taprop.adb:856:10: "pthread_attr_setaffinity_np" is undefined (more references follow)")
PR ada/49944
* s-osinte-freebsd.ads: Minor reformatting.
(Stack_Base_Available): Correct comments.
* s-osinte-kfreebsd-gnu.ads (Time_Slice_Supported, nanosleep,
clock_id_t, clock_gettime, Stack_Base_Available, Get_Page_Size,
mprotect, pthread_mutexattr_setprotocol,pthread_mutexattr_getprotocol
pthread_mutexattr_setprioceiling, pthread_mutexattr_getprioceiling,
pthread_attr_setscope, pthread_attr_getscope,
pthread_attr_setinheritsched, pthread_attr_getinheritsched,
Time_Slice_Supported): Copy from s-osinte-freebsd.ads.
* gcc-interface/Makefile.in (x86/kfreebsd): Use the POSIX version of
the System.Task_Primitives.Operations package.
Andreas Tobler [Fri, 4 Dec 2015 20:25:56 +0000 (21:25 +0100)]
backport: freebsd64.h (ELFv2_ABI_CHECK): Add new macro.
2015-12-04 Andreas Tobler <andreast@gcc.gnu.org>
Backport from mainline
2015-12-01 Andreas Tobler <andreast@gcc.gnu.org>
* config/rs6000/freebsd64.h (ELFv2_ABI_CHECK): Add new macro.
(SUBSUBTARGET_OVERRIDE_OPTIONS): Use it to decide whether to set
rs6000_current_abi to ABI_AIX or ABI_ELFv2.
Kyrylo Tkachov [Thu, 26 Nov 2015 11:40:16 +0000 (11:40 +0000)]
[calls.c] PR rtl-optimization/67226: Take into account pretend_args_size when checking stack offsets for sibcall optimisation
Backport from mainline
2015-11-26 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
Bernd Schmidt <bschmidt@redhat.com>
PR rtl-optimization/67226
* calls.c (store_one_arg): Take into account
crtl->args.pretend_args_size when checking for overlap between
arg->value and argblock + arg->locate.offset during sibcall
optimization.
Paul Thomas [Wed, 25 Nov 2015 05:28:10 +0000 (05:28 +0000)]
backport: re PR fortran/68196 (ICE on function result with procedure pointer component)
2015-11-25 Paul Thomas <pault@gcc.gnu.org>
Backport from trunk.
PR fortran/68196
* class.c (has_finalizer_component): Prevent infinite recursion
through this function if the derived type and that of its
component are the same.
* trans-types.c (gfc_get_derived_type): Do the same for proc
pointers by ignoring the explicit interface for the component.
PR fortran/66465
* check.c (same_type_check): If either of the expressions is
BT_PROCEDURE, use the typespec from the symbol, rather than the
expression.
2015-11-25 Paul Thomas <pault@gcc.gnu.org>
Backport from trunk.
PR fortran/68196
* gfortran.dg/proc_ptr_47.f90: New test.
Backport from trunk.
PR fortran/66465
* gfortran.dg/pr66465.f90: New test.
Kyrylo Tkachov [Tue, 24 Nov 2015 14:27:51 +0000 (14:27 +0000)]
[RTL-ree] PR rtl-optimization/68194: Restrict copy instruction in presence of conditional moves
Backport from mainline
2015-11-24 Bernd Schmidt <bschmidt@redhat.com>
Kyrylo Tkachov <kyrylo.tkachov@arm.com>
PR rtl-optimization/68194
PR rtl-optimization/68328
PR rtl-optimization/68185
* ree.c (combine_reaching_defs): Reject copy_needed case if
copies_list is not empty.
* gcc.c-torture/execute/pr68185.c: New test.
* gcc.c-torture/execute/pr68328.c: Likewise.
Andreas Tobler [Wed, 11 Nov 2015 21:20:20 +0000 (22:20 +0100)]
backport: [multiple changes]
2015-11-11 Andreas Tobler <andreast@gcc.gnu.org>
Backport from mainline
2015-05-18 Andreas Tobler <andreast@gcc.gnu.org>
* config/freebsd-spec.h (FBSD_STARTFILE_SPEC): Add the bits to build
pie executables.
(FBSD_ENDFILE_SPEC): Likewise.
* config/i386/freebsd.h (STARTFILE_SPEC): Remove and use the one from
config/freebsd-spec.h.
(ENDFILE_SPEC): Likewise.
2015-11-02 Andreas Tobler <andreast@gcc.gnu.org>
* config/rs6000/freebsd64.h (ASM_SPEC32): Adust spec to handle
PIE executables.
Eric Botcazou [Wed, 11 Nov 2015 16:04:34 +0000 (16:04 +0000)]
re PR target/67265 ([x86] 'asm' operand has impossible constraints with -fstack-check)
PR target/67265
* ira.c (ira_setup_eliminable_regset): Do not necessarily create the
frame pointer for stack checking if non-call exceptions aren't used.
* config/i386/i386.c (ix86_finalize_stack_realign_flags): Likewise.
Martin Jambor [Mon, 2 Nov 2015 14:04:19 +0000 (15:04 +0100)]
re PR tree-optimization/67794 (internal compiler error: Segmentation fault)
2015-11-02 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/67794
* tree-sra.c (replace_removed_params_ssa_names): Do not distinguish
between types of statements but accept original definitions as a
parameter.
(ipa_sra_modify_function_body): Use FOR_EACH_SSA_DEF_OPERAND to
iterate over definitions.
testsuite/
* gcc.dg/ipa/ipa-sra-10.c: New test.
* gcc.dg/torture/pr67794.c: Likewise.
re PR go/67968 (go1: internal compiler error: in write_specific_type_functions, at go/gofrontend/types.cc:1812)
PR go/67968
compiler: Traverse types of call expressions.
https://gcc.gnu.org/PR67968 provides a test case that causes a gccgo
crash on valid code. The compiler failed to build the hash and equality
functions required for a type descriptor. The descriptor is for an
unnamed type that is being returned by a function imported from a
different package. The unnamed type is being implicitly converted to an
interface type by a return statement. The fix is to ensure that the
type of a call expression is always traversed.
Test case sent out for the master testsuite as
https://golang.org/cl/16532 .