summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Enable -fsymbolic in LTO if -Bsymbolic is usedhjl/pr65846/gcc-5-branchH.J. Lu2015-04-292-3/+51
| | | | | | | | | | When -Bsymbolic is passed to linker, references to global symbols defined in the shared library are resolved locally. We should pass -fsymbolic to GCC in this case. * collect2.c (main): Add -fsymbolic to COLLECT_GCC_OPTIONS if -Bsymbolic is used. * doc/invoke.texi: Updated.
* X86: Optimize access to globals in PIE with copy relocH.J. Lu2015-04-2922-57/+360
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Normally, with PIE, GCC accesses globals that are extern to the module using GOT. This is two instructions, one to get the address of the global from GOT and the other to get the value. Examples: --- extern int a_glob; int main () { return a_glob; } --- With PIE, the generated code accesses global via GOT using two memory loads: movq a_glob@GOTPCREL(%rip), %rax movl (%rax), %eax for 64-bit or movl a_glob@GOT(%ecx), %eax movl (%eax), %eax for 32-bit. Some experiments on google and SPEC CPU benchmarks show that the extra instruction affects performance by 1% to 5%. Solution - Copy Relocations: When the linker supports copy relocations, GCC can always assume that the global will be defined in the executable. For globals that are truly extern (come from shared objects), the linker will create copy relocations and have them defined in the executable. Result is that no global access needs to go through GOT and hence improves performance. We can generate movl a_glob(%rip), %eax for 64-bit and movl a_glob@GOTOFF(%eax), %eax for 32-bit. This optimization only applies to undefined non-weak non-TLS global data. Undefined weak global or TLS data access still must go through GOT. This patch reverts legitimate_pic_address_disp_p change made in revision 218397, which only applies to x86-64. Instead, this patch updates targetm.binds_local_p to indicate if undefined non-weak non-TLS global data is defined locally in PIE. It also introduces a new target hook, binds_tls_local_p to distinguish TLS variable from non-TLS variable. By default, binds_tls_local_p is the same as binds_local_p which assumes TLS variable. This patch checks if 32-bit and 64-bit linkers support PIE with copy reloc at configure time. 64-bit linker is enabled in binutils 2.25 and 32-bit linker is enabled in binutils 2.26. This optimization is enabled only if the linker support is available. Since copy relocation in PIE is incompatible with DSO created by -Wl,-Bsymbolic, this patch also adds a new option, -fsymbolic, which controls how references to global symbols are bound. The -fsymbolic option binds references to global symbols to the local definitions and external references globally. It avoids copy relocations in PIE and optimizes global symbol references in shared library created by -Wl,-Bsymbolic. gcc/ PR target/65846 PR target/65886 * configure.ac (HAVE_LD_PIE_COPYRELOC): Renamed to ... (HAVE_LD_X86_64_PIE_COPYRELOC): This. (HAVE_LD_386_PIE_COPYRELOC): New. Defined to 1 if Linux/ia32 linker supports PIE with copy reloc. * output.h (default_binds_tls_local_p): New. (default_binds_local_p_3): Add 2 bool arguments. * target.def (binds_tls_local_p): New target hook. * varasm.c (decl_default_tls_model): Replace targetm.binds_local_p with targetm.binds_tls_local_p. (default_binds_local_p_3): Add a bool argument to indicate TLS variable and a bool argument to indicate if an undefined non-TLS non-weak data is local. Double check TLS variable. If an undefined non-TLS non-weak data is local, treat it as defined locally. (default_binds_local_p): Pass true and false to default_binds_local_p_3. (default_binds_local_p_2): Likewise. (default_binds_local_p_1): Likewise. (default_binds_tls_local_p): New. * config.in: Regenerated. * configure: Likewise. * doc/tm.texi: Likewise. * config/i386/i386.c (legitimate_pic_address_disp_p): Don't check HAVE_LD_PIE_COPYRELOC here. (ix86_binds_local): New. (ix86_binds_tls_local_p): Likewise. (ix86_binds_local_p): Use it. (TARGET_BINDS_TLS_LOCAL_P): New. * doc/tm.texi.in (TARGET_BINDS_TLS_LOCAL_P): New hook. gcc/testsuite/ PR target/65846 PR target/65886 * gcc.target/i386/pie-copyrelocs-1.c: Updated for ia32. * gcc.target/i386/pie-copyrelocs-2.c: Likewise. * gcc.target/i386/pie-copyrelocs-3.c: Likewise. * gcc.target/i386/pie-copyrelocs-4.c: Likewise. * gcc.target/i386/pr32219-9.c: Likewise. * gcc.target/i386/pr32219-10.c: New file. * gcc.target/i386/pr65886-1.c: Likewise. * gcc.target/i386/pr65886-2.c: Likewise. * gcc.target/i386/pr65886-3.c: Likewise. * gcc.target/i386/pr65886-4.c: Likewise. * lib/target-supports.exp (check_effective_target_pie_copyreloc): Check HAVE_LD_X86_64_PIE_COPYRELOC and HAVE_LD_386_PIE_COPYRELOC instead of HAVE_LD_X86_64_PIE_COPYRELOC.
* * testsuite/libstdc++-xmethods/list.cc (_GLIBCXX_USE_CXX11_ABI):devans2015-04-292-0/+8
| | | | | | | Define to zero. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222586 138bc75d-0d04-0410-961f-82ee72b054a4
* Fix OpenMP's target update directive in templated code.tschwinge2015-04-294-1/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | FAIL: g++.dg/gomp/tpl-target-update.C -std=c++98 (internal compiler error) FAIL: g++.dg/gomp/tpl-target-update.C -std=c++98 (test for excess errors) FAIL: g++.dg/gomp/tpl-target-update.C -std=c++11 (internal compiler error) FAIL: g++.dg/gomp/tpl-target-update.C -std=c++11 (test for excess errors) FAIL: g++.dg/gomp/tpl-target-update.C -std=c++14 (internal compiler error) FAIL: g++.dg/gomp/tpl-target-update.C -std=c++14 (test for excess errors) [...]/source-gcc/gcc/testsuite/g++.dg/gomp/tpl-target-update.C: In instantiation of 'void f(T, T) [with T = int]': [...]/source-gcc/gcc/testsuite/g++.dg/gomp/tpl-target-update.C:19:9: required from here [...]/source-gcc/gcc/testsuite/g++.dg/gomp/tpl-target-update.C:10:9: internal compiler error: tree check: expected oacc_parallel or oacc_kernels or oacc_data or oacc_host_data or omp_parallel or omp_task or omp_for or omp_simd or cilk_simd or cilk_for or omp_distribute or oacc_loop or omp_teams or omp_target_data or omp_target or omp_sections or omp_single, have omp_target_update in tsubst_expr, at cp/pt.c:14209 0xf5aae1 tree_range_check_failed(tree_node const*, char const*, int, char const*, tree_code, tree_code) [...]/source-gcc/gcc/tree.c:9384 0x66e201 tree_range_check [...]/source-gcc/gcc/tree.h:2979 0x66e201 tsubst_expr [...]/source-gcc/gcc/cp/pt.c:14209 0x6695e3 tsubst_expr [...]/source-gcc/gcc/cp/pt.c:13752 0x66ac07 tsubst_expr [...]/source-gcc/gcc/cp/pt.c:13938 0x667c41 instantiate_decl(tree_node*, int, bool) [...]/source-gcc/gcc/cp/pt.c:20367 0x6ae386 instantiate_pending_templates(int) [...]/source-gcc/gcc/cp/pt.c:20484 0x6edc3d cp_write_global_declarations() [...]/source-gcc/gcc/cp/decl2.c:4456 Backport from trunk r222564: gcc/cp/ * pt.c (tsubst_expr) <OMP_TARGET_UPDATE>: Use OMP_TARGET_UPDATE_CLAUSES instead of OMP_CLAUSES. gcc/testsuite/ * g++.dg/gomp/tpl-target-update.C: New file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222565 138bc75d-0d04-0410-961f-82ee72b054a4
* PR c++/65896jason2015-04-293-4/+42
| | | | | | | * constexpr.c (cxx_eval_store_expression): Don't try to actually store an empty class. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222557 138bc75d-0d04-0410-961f-82ee72b054a4
* Daily bump.gccadmin2015-04-291-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222554 138bc75d-0d04-0410-961f-82ee72b054a4
* * fr.po: Update.jsm282015-04-282-2089/+1300
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222548 138bc75d-0d04-0410-961f-82ee72b054a4
* 2015-04-28 Bill Schmidt <wschmidt@linux.vnet.ibm.com>wschmidt2015-04-282-2/+7
| | | | | | | | * gcc.dg/vect/vect-33.c: Remove spurious line. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222544 138bc75d-0d04-0410-961f-82ee72b054a4
* 2015-04-28 Stephan Bergmann <sbergman@redhat.com>redi2015-04-282-1/+9
| | | | | | * include/debug/vector (_Safe_vector::operator=): Add missing returns. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222538 138bc75d-0d04-0410-961f-82ee72b054a4
* libmpx/ienkovich2015-04-283-3713/+15
| | | | | | | | | | | | | Backport from mainline r222469 2015-04-27 Steven Noonan <steven@uplinklabs.net> * configure.ac: Drop AC_PROG_CXX and friends, since libmpx has no C++ sources. * configure: Regenerate. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222520 138bc75d-0d04-0410-961f-82ee72b054a4
* * c-ada-spec.c (in_function): Delete.ebotcazou2015-04-282-19/+108
| | | | | | | | | | | (dump_generic_ada_node): Do not change in_function and remove the redundant code dealing with it. (print_ada_declaration): Do not change in_function. Use INDENT_INCR. (print_ada_methods): Output the static member functions in a nested package after the regular methods as well as associated renamings. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222518 138bc75d-0d04-0410-961f-82ee72b054a4
* Daily bump.gccadmin2015-04-281-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222495 138bc75d-0d04-0410-961f-82ee72b054a4
* PR tree-optimization/65875jakub2015-04-274-5/+52
| | | | | | | | | | | | | | * tree-vrp.c (update_value_range): If in is_new case setting old_vr to VR_VARYING, also set new_vr to it. Remove old_vr->type == VR_VARYING test. (vrp_visit_phi_node): Return SSA_PROP_VARYING instead of SSA_PROP_INTERESTING if update_value_range returned true, but new range is VR_VARYING. * gcc.c-torture/compile/pr65875.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222461 138bc75d-0d04-0410-961f-82ee72b054a4
* Backport from 2015-04-27 trunk r222459.gjl2015-04-272-2/+18
| | | | | | | | | | | PR target/65296 PR target/65895 * config/avr/gen-avr-mmcu-specs.c (print_mcu): Close file. Add hint how to use own spec file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222460 138bc75d-0d04-0410-961f-82ee72b054a4
* Daily bump.gccadmin2015-04-271-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222451 138bc75d-0d04-0410-961f-82ee72b054a4
* Daily bump.gccadmin2015-04-261-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222443 138bc75d-0d04-0410-961f-82ee72b054a4
* Daily bump.gccadmin2015-04-251-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222437 138bc75d-0d04-0410-961f-82ee72b054a4
* PR go/65616ian2015-04-242-13/+36
| | | | | | | libgo: Compile go-main, in libgobegin, with -fPIC. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222430 138bc75d-0d04-0410-961f-82ee72b054a4
* [gcc]meissner2015-04-246-14/+1548
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2015-04-24 Michael Meissner <meissner@linux.vnet.ibm.com> Backport from mainline 2015-04-24 Michael Meissner <meissner@linux.vnet.ibm.com> PR target/65849 * config/rs6000/rs6000.opt (-mvsx-align-128): Make options that save to independent variables use the Save attribute. This will allow these options to be modified with the #pragma/attribute target support. (-mallow-movmisalign): Likewise. (-mallow-df-permute): Likewise. (-msched-groups): Likewise. (-malways-hint): Likewise. (-malign-branch-targets): Likewise. (-mvectorize-builtins): Likewise. (-msave-toc-indirect): Likewise. * config/rs6000/rs6000.c (rs6000_opt_masks): Add more options that can be set via the #pragma/attribute target support. (rs6000_opt_vars): Likewise. (rs6000_inner_target_options): If VSX was set, also set -mno-avoid-indexed-addresses. [gcc/testsuite] 2015-04-24 Michael Meissner <meissner@linux.vnet.ibm.com> Backport from mainline 2015-04-24 Michael Meissner <meissner@linux.vnet.ibm.com> PR target/65849 * gcc.target/powerpc/pr65849-1.c: New test to verify being able to set new options. * gcc.target/powerpc/pr65849-2.c: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222421 138bc75d-0d04-0410-961f-82ee72b054a4
* 2015-04-24 Bill Schmidt <wschmidt@linux.vnet.ibm.com>wschmidt2015-04-243-31/+51
| | | | | | | | | | | | | | | | | | | | | | | | | Backport from mainline r222385 2015-04-23 Bill Schmidt <wschmidt@linux.vnet.ibm.com> * config/rs6000/altivec.md (*altivec_lvx_<mode>_internal): Remove asterisk from name so this can be generated directly. (*altivec_stvx_<mode>_internal): Likewise. * config/rs6000/rs6000.c (rs6000_emit_le_vsx_store): Add assert that this is never called during or after reload/lra. (rs6000_frame_related): Remove split_reg argument and logic that references it. (emit_frame_save): Remove last parameter from call to rs6000_frame_related. (rs6000_emit_prologue): Remove last parameter from eight calls to rs6000_frame_related. Force generation of stvx instruction for Altivec register saves. Remove split_reg handling, which is no longer needed. (rs6000_emit_epilogue): Force generation of lvx instruction for Altivec register restores. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222411 138bc75d-0d04-0410-961f-82ee72b054a4
* Revert r222387hjl2015-04-242-5/+0
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222405 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/i386/sse.md (*vec_widen_smult_even_v8si<mask_name>):uros2015-04-242-1/+6
| | | | | | | | Mark operand1 commutative. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222402 138bc75d-0d04-0410-961f-82ee72b054a4
* 2015-04-24 Andreas Tobler <andreast@gcc.gnu.org>andreast2015-04-241-0/+16
| | | | | | | | | | | | | | | | | | | Add missing ChangeLog entry for r222341. Backport from trunk r222273 2015-04-21 Andreas Tobler <andreast@gcc.gnu.org> * gcc.target/i386/avx512bw-vpermi2w-2.c: Fix includes to use actual headers. * gcc.target/i386/avx512bw-vpermt2w-2.c: Likewise. * gcc.target/i386/avx512bw-vpmaddubsw-2.c: Likewise. * gcc.target/i386/avx512bw-vpmaddwd-2.c: Likewise. * gcc.target/i386/avx512dq-vfpclasspd-2.c: Likewise. * gcc.target/i386/avx512dq-vfpclassps-2.c: Likewise. * gcc.target/i386/avx512vbmi-vpermi2b-2.c: Likewise. * gcc.target/i386/avx512vbmi-vpermt2b-2.c: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222399 138bc75d-0d04-0410-961f-82ee72b054a4
* [gcc]wschmidt2015-04-246-15/+124
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2015-04-23 Bill Schmidt <wschmidt@linux.vnet.ibm.com> Backport from mainline r222362 2015-04-23 Bill Schmidt <wschmidt@linux.vnet.ibm.com> * config/rs6000/crypto.md (crypto_vpmsum<CR_char>): Change TARGET_CRYPTO to TARGET_P8_VECTOR> (crypto_vpermxor_<mode>): Likewise. * config/rs6000/rs6000-builtin.def (BU_CRYPTO_2A): New #define. (BU_CRYPTO_3A): Likewise. (BU_CRYPTO_OVERLOAD_2A): Rename from BU_CRYPTO_OVERLOAD_2. (BU_CRYPTO_OVERLOAD_3A): New #define. (VPMSUMB): Change from BU_CRYPTO_2 to BU_CRYPTO_2A. (VPMSUMH): Likewise. (VPMSUMW): Likewise. (VPMSUMD): Likewise. (VPERMXOR_V2DI): Change from BU_CRYPTO_3 to BU_CRYPTO_3A. (VPERMXOR_V4SI): Likewise. (VPERMXOR_V8HI): Likewise. (VPERMXOR_V16QI): Likewise. (VPMSUM): Change from BU_CRYPTO_OVERLOAD_2 to BU_CRYPTO_OVERLOAD_2A. (VPERMXOR): Change from BU_CRYPTO_OVERLOAD3 to BU_CRYPTO_OVERLOAD_3A. * config/rs6000/rs6000.opt (mcrypto): Change description of option. Backport from mainline r222362 2015-04-23 Bill Schmidt <wschmidt@linux.vnet.ibm.com> * config/rs6000/rs6000.opt (mcrypto): Change option description to match category changes in ISA 2.07B. [gcc/testsuite] 2015-04-23 Bill Schmidt <wschmidt@linux.vnet.ibm.com> Backport from mainline r222362 2015-04-23 Bill Schmidt <wschmidt@linux.vnet.ibm.com> * gcc.target/powerpc/crypto-builtin-2.c: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222397 138bc75d-0d04-0410-961f-82ee72b054a4
* 2015-04-23 Bill Schmidt <wschmidt@linux.vnet.ibm.com>wschmidt2015-04-242-0/+70
| | | | | | | | | * gcc.target/powerpc/pr65456.c: Add test missed during backport of r222349. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222395 138bc75d-0d04-0410-961f-82ee72b054a4
* [gcc]wschmidt2015-04-244-7/+85
| | | | | | | | | | | | | | | | | | | | | | | | | | 2015-04-23 Bill Schmidt <wschmidt@linux.vnet.ibm.com> Backport from mainline r222351 2015-04-22 Bill Schmidt <wschmidt@linux.vnet.ibm.com> * config/rs6000/rs6000.c (rtx_is_swappable_p): Commentary adjustments. (insn_is_swappable_p): Return 1 for a convert from double to single precision when all of its uses are splats of BE element zero. [gcc/testsuite] 2015-04-23 Bill Schmidt <wschmidt@linux.vnet.ibm.com> Backport from mainline r222351 2015-04-22 Bill Schmidt <wschmidt@linux.vnet.ibm.com> * gcc.target/powerpc/swaps-p8-18.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222394 138bc75d-0d04-0410-961f-82ee72b054a4
* Daily bump.gccadmin2015-04-241-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222390 138bc75d-0d04-0410-961f-82ee72b054a4
* Set DEV-PHASE to prereleasehjl2015-04-232-0/+5
| | | | | | | * DEV-PHASE: Set to prerelease. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222387 138bc75d-0d04-0410-961f-82ee72b054a4
* [gcc]wschmidt2015-04-2382-120/+284
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2015-04-23 Bill Schmidt <wschmidt@linux.vnet.ibm.com> Backport from mainline r222349 2015-04-22 Bill Schmidt <wschmidt@linux.vnet.ibm.com> PR target/65456 * config/rs6000/rs6000.c (rs6000_option_override_internal): For VSX + POWER8, enable TARGET_ALLOW_MOVMISALIGN and TARGET_EFFICIENT_UNALIGNED_VSX if not selected by command line option. (rs6000_builtin_mask_for_load): Return 0 for targets with efficient unaligned VSX accesses so that the vectorizer will use direct unaligned loads. (rs6000_builtin_support_vector_misalignment): Always return true for targets with efficient unaligned VSX accesses. (rs6000_builtin_vectorization_cost): Cost of unaligned loads and stores on targets with efficient unaligned VSX accesses is almost always the same as the cost of an aligned load or store, so model it that way. * config/rs6000/rs6000.h (SLOW_UNALIGNED_ACCESS): Return 0 for unaligned vectors if we have efficient unaligned VSX accesses. * config/rs6000/rs6000.opt (mefficient-unaligned-vector): New undocumented option. [gcc/testsuite] 2015-04-23 Bill Schmidt <wschmidt@linux.vnet.ibm.com> Backport from mainline r222349 2015-04-22 Bill Schmidt <wschmidt@linux.vnet.ibm.com> PR target/65456 * gcc.dg/vect/bb-slp-24.c: Exclude test for POWER8. * gcc.dg/vect/bb-slp-25.c: Likewise. * gcc.dg/vect/bb-slp-29.c: Likewise. * gcc.dg/vect/bb-slp-32.c: Replace vect_no_align with vect_no_align && { ! vect_hw_misalign }. * gcc.dg/vect/bb-slp-9.c: Likewise. * gcc.dg/vect/costmodel/ppc/costmodel-slp-33.c: Exclude test for vect_hw_misalign. * gcc.dg/vect/costmodel/ppc/costmodel-vect-31a.c: Likewise. * gcc.dg/vect/costmodel/ppc/costmodel-vect-76b.c: Adjust tests to account for POWER8, where peeling for alignment is not needed. * gcc.dg/vect/costmodel/ppc/costmodel-vect-outer-fir.c: Replace vect_no_align with vect_no_align && { ! vect_hw_misalign }. * gcc.dg.vect.if-cvt-stores-vect-ifcvt-18.c: Likewise. * gcc.dg/vect/no-scevccp-outer-6-global.c: Likewise. * gcc.dg/vect/no-scevccp-outer-6.c: Likewise. * gcc.dg/vect/no-vfa-vect-43.c: Likewise. * gcc.dg/vect/no-vfa-vect-57.c: Likewise. * gcc.dg/vect/no-vfa-vect-61.c: Likewise. * gcc.dg/vect/no-vfa-vect-depend-1.c: Likewise. * gcc.dg/vect/no-vfa-vect-depend-2.c: Likewise. * gcc.dg/vect/no-vfa-vect-depend-3.c: Likewise. * gcc.dg/vect/pr16105.c: Likewise. * gcc.dg/vect/pr20122.c: Likewise. * gcc.dg/vect/pr33804.c: Likewise. * gcc.dg/vect/pr33953.c: Likewise. * gcc.dg/vect/pr56787.c: Likewise. * gcc.dg/vect/pr58508.c: Likewise. * gcc.dg/vect/slp-25.c: Likewise. * gcc.dg/vect/vect-105-bit-array.c: Likewise. * gcc.dg/vect/vect-105.c: Likewise. * gcc.dg/vect/vect-27.c: Likewise. * gcc.dg/vect/vect-29.c: Likewise. * gcc.dg/vect/vect-33.c: Exclude unaligned access test for POWER8. * gcc.dg/vect/vect-42.c: Replace vect_no_align with vect_no_align && { ! vect_hw_misalign }. * gcc.dg/vect/vect-44.c: Likewise. * gcc.dg/vect/vect-48.c: Likewise. * gcc.dg/vect/vect-50.c: Likewise. * gcc.dg/vect/vect-52.c: Likewise. * gcc.dg/vect/vect-56.c: Likewise. * gcc.dg/vect/vect-60.c: Likewise. * gcc.dg/vect/vect-72.c: Likewise. * gcc.dg/vect/vect-75-big-array.c: Likewise. * gcc.dg/vect/vect-75.c: Likewise. * gcc.dg/vect/vect-77-alignchecks.c: Likewise. * gcc.dg/vect/vect-77-global.c: Likewise. * gcc.dg/vect/vect-78-alignchecks.c: Likewise. * gcc.dg/vect/vect-78-global.c: Likewise. * gcc.dg/vect/vect-93.c: Likewise. * gcc.dg/vect/vect-95.c: Likewise. * gcc.dg/vect/vect-96.c: Likewise. * gcc.dg/vect/vect-cond-1.c: Likewise. * gcc.dg/vect/vect-cond-3.c: Likewise. * gcc.dg/vect/vect-cond-4.c: Likewise. * gcc.dg/vect/vect-cselim-1.c: Likewise. * gcc.dg/vect/vect-multitypes-1.c: Likewise. * gcc.dg/vect/vect-multitypes-3.c: Likewise. * gcc.dg/vect/vect-multitypes-4.c: Likewise. * gcc.dg/vect/vect-multitypes-6.c: Likewise. * gcc.dg/vect/vect-nest-cycle-1.c: Likewise. * gcc.dg/vect/vect-nest-cycle-2.c: Likewise. * gcc.dg/vect/vect-outer-3a-big-array.c: Likewise. * gcc.dg/vect/vect-outer-3a.c: Likewise. * gcc.dg/vect/vect-outer-5.c: Likewise. * gcc.dg/vect/vect-outer-fir-big-array.c: Likewise. * gcc.dg/vect/vect-outer-fir-lb-big-array.c: Likewise. * gcc.dg/vect/vect-outer-fir-lb.c: Likewise. * gcc.dg/vect/vect-outer-fir.c: Likewise. * gcc.dg/vect/vect-peel-3.c: Likewise. * gcc.dg/vect/vect-peel-4.c: Likewise. * gcc.dg/vect/vect-pre-interact.c: Likewise. * gcc.target/powerpc/pr65456.c: New test. * gcc.target/powerpc/vsx-vectorize-2.c: Exclude test for POWER8. * gcc.target/powerpc/vsx-vectorize-4.c: Likewise. * gcc.target/powerpc/vsx-vectorize-6.c: Likewise. * gcc.target/powerpc/vsx-vectorize-7.c: Likewise. * gfortran.dg/vect/vect-2.f90: Replace vect_no_align with vect_no_align && { ! vect_hw_misalign }. * gfortran.dg/vect/vect-3.f90: Likewise. * gfortran.dg/vect/vect-4.f90: Likewise. * gfortran.dg/vect/vect-5.f90: Likewise. * lib/target-supports.exp (check_effective_target_vect_no_align): Return 1 for POWER8. (check_effective_target_vect_hw_misalign): Return 1 for POWER8. Backport from mainline r222372 2015-04-23 Bill Schmidt <wschmidt@linux.vnet.ibm.com> * gcc.dg/vect/costmodel/ppc/costmodel-bb-slp-9a.c: Replace vect_no_align with vect_no_align && { ! vect_hw_misalign }. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222386 138bc75d-0d04-0410-961f-82ee72b054a4
* 2015-04-23 Vladimir Makarov <vmakarov@redhat.com>vmakarov2015-04-234-27/+59
| | | | | | | | | | | | | | | | | | | Backport from trunk r222223. 2015-04-19 Vladimir Makarov <vmakarov@redhat.com> PR rtl-optimization/65805 * lra-eliminations.c (lra_eliminate_regs_1): Add new assert. Don't use difference of offset and previous offset if update_sp_offset is non-zero. (eliminate_regs_in_insn): Ditto. * lra-spills.c (remove_pseudos): Exchange 4th and 6th args in lra_eliminate_regs_1 call. * lra-constraints.c (get_equiv_with_elimination): Ditto. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222383 138bc75d-0d04-0410-961f-82ee72b054a4
* Daily bump.gccadmin2015-04-231-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222347 138bc75d-0d04-0410-961f-82ee72b054a4
* 2015-04-22 Steven G. Kargl <kargl@gcc.gnu.org>kargl2015-04-224-3/+30
| | | | | | | | | | | | PR fortran/65429 * decl.c (add_init_expr_to_sym): Set the length type parameter. PR fortran/65429 * gfortran.dg/pr65429.f90: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222343 138bc75d-0d04-0410-961f-82ee72b054a4
* 2015-04-22 Andreas Tobler <andreast@gcc.gnu.org>andreast2015-04-228-12/+20
| | | | | | | | | | | | | | | | | | | Backport from trunk r222273 2015-04-21 Andreas Tobler <andreast@gcc.gnu.org> * gcc.target/i386/avx512bw-vpermi2w-2.c: Fix includes to use actual headers. * gcc.target/i386/avx512bw-vpermt2w-2.c: Likewise. * gcc.target/i386/avx512bw-vpmaddubsw-2.c: Likewise. * gcc.target/i386/avx512bw-vpmaddwd-2.c: Likewise. * gcc.target/i386/avx512dq-vfpclasspd-2.c: Likewise. * gcc.target/i386/avx512dq-vfpclassps-2.c: Likewise. * gcc.target/i386/avx512vbmi-vpermi2b-2.c: Likewise. * gcc.target/i386/avx512vbmi-vpermt2b-2.c: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222341 138bc75d-0d04-0410-961f-82ee72b054a4
* PR c++/65727jason2015-04-223-1/+31
| | | | | | * lambda.c (maybe_resolve_dummy): Handle null return. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222340 138bc75d-0d04-0410-961f-82ee72b054a4
* PR c++/65695jason2015-04-223-2/+43
| | | | | | * cvt.c (cp_fold_convert): Avoid wrapping PTRMEM_CST in NOP_EXPR. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222339 138bc75d-0d04-0410-961f-82ee72b054a4
* PR c++/65721jason2015-04-223-1/+26
| | | | | | | * name-lookup.c (do_class_using_decl): Complain about specifying the current class even if there are dependent bases. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222338 138bc75d-0d04-0410-961f-82ee72b054a4
* PR c++/59766jason2015-04-223-1/+12
| | | | | | * decl.c (grokdeclarator): Do not flag friends with deduced return. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222337 138bc75d-0d04-0410-961f-82ee72b054a4
* Backport from trunk r222179.gjl2015-04-224-5/+18
| | | | | | | | | | | | | | 2015-04-17 Sivanupandi Pitchumani <Pitchumani.Sivanupandi@atmel.com> PR target/65296 * config/avr/gen-avr-mmcu-specs.c (*avrlibc_startfile): Adjust to new AVR-LibC file layout (bug #44574). (*avrlibc_devicelib): Same. * config/avr/avr-mcus.def: Adjust comments. * config/avr/avr.opt (nodevicelib): Adjust help. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222333 138bc75d-0d04-0410-961f-82ee72b054a4
* * BASE-VER: Set to 5.1.1.jakub2015-04-222-1/+5
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222321 138bc75d-0d04-0410-961f-82ee72b054a4
* Backport from trunk r222255amker2015-04-223-6/+15
| | | | | | | | | | | | 2015-04-21 Bin Cheng <bin.cheng@arm.com> PR testsuite/65767 * g++.dg/lto/pr65276_0.C: Change namespace std to std2. * g++.dg/lto/pr65276_1.C: Change namespace std to std2. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222319 138bc75d-0d04-0410-961f-82ee72b054a4
* Update ChangeLog and version files for releasegcc-5_1_0-releasegccadmin2015-04-2256-2/+217
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222316 138bc75d-0d04-0410-961f-82ee72b054a4
* * gennews (files): Add files for GCC 5.jakub2015-04-222-1/+6
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222310 138bc75d-0d04-0410-961f-82ee72b054a4
* Daily bump.gccadmin2015-04-221-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222291 138bc75d-0d04-0410-961f-82ee72b054a4
* Daily bump.gccadmin2015-04-211-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222253 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/c/iverbin2015-04-204-3/+12
| | | | | | | | | | * c-parser.c (c_parser_oacc_enter_exit_data): Remove excess semicolon. (c_parser_omp_target_update): Add missed %> to error_at (). gcc/cp/ * parser.c (cp_parser_omp_target_update): Add missed %> to error_at (). git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222240 138bc75d-0d04-0410-961f-82ee72b054a4
* PR debug/65807jakub2015-04-202-0/+6
| | | | | | | * dwarf2out.c (add_AT_wide): Clear attr.dw_attr_val.val_entry. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222233 138bc75d-0d04-0410-961f-82ee72b054a4
* Daily bump.gccadmin2015-04-201-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222226 138bc75d-0d04-0410-961f-82ee72b054a4
* Credit Jakub for PR65787 fixwschmidt2015-04-191-0/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222219 138bc75d-0d04-0410-961f-82ee72b054a4
* Daily bump.gccadmin2015-04-191-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222217 138bc75d-0d04-0410-961f-82ee72b054a4
* Daily bump.gccadmin2015-04-181-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-5-branch@222211 138bc75d-0d04-0410-961f-82ee72b054a4