- 28 Mar, 2017 4 commits
-
-
/home/markus/gcc/gcc/tree.c: In function ‘void inchash::add_expr(const_tree, inchash::hash&, unsigned int)’: /home/markus/gcc/gcc/tree.c:8013:11: warning: name lookup of ‘i’ changed for (i = TREE_OPERAND_LENGTH (t) - 1; i >= 0; --i) ^ /home/markus/gcc/gcc/tree.c:7773:7: warning: matches this ‘i’ under ISO standard rules int i; ^ /home/markus/gcc/gcc/tree.c:7869:16: warning: matches this ‘i’ under old rules for (int i = 0; i < TREE_VEC_LENGTH (t); ++i) ^ From-SVN: r246519
Markus Trippelsdorf committed -
From-SVN: r246518
Jeff Law committed -
PR tree-optimization/80162 * tree-ssa-dom.c (derive_equivalences_from_bit_ior): Fix typo in function name. Limit recursion depth. (record_temporary_equivalences): Corresponding changes. PR tree-optimization/80162 * gcc.c-torture/compile/pr80216.c: New test. From-SVN: r246517
Jeff Law committed -
From-SVN: r246516
GCC Administrator committed
-
- 27 Mar, 2017 20 commits
-
-
* doc/invoke.texi (-Wno-narrowing): Reorder so default behavior is covered first. From-SVN: r246513
Jonathan Wakely committed -
PR middle-end/80162 c-family/ * c-common.c (c_common_mark_addressable_vec): Don't set TREE_ADDRESSABLE on DECL_HARD_REGISTER. c/ * c-tree.h (c_mark_addressable): Add array_ref_p argument. * c-typeck.c (c_mark_addressable): Likewise. Look through VIEW_CONVERT_EXPR unless array_ref_p and VCE is from VECTOR_TYPE to ARRAY_TYPE. (build_array_ref): Pass true as array_ref_p to c_mark_addressable. cp/ * cp-tree.h (cxx_mark_addressable): Add array_ref_p argument. * typeck.c (cxx_mark_addressable): Likewise. Look through VIEW_CONVERT_EXPR unless array_ref_p and VCE is from VECTOR_TYPE to ARRAY_TYPE. (cp_build_array_ref): Pass true as array_ref_p to cxx_mark_addressable. testsuite/ * c-c++-common/pr80162-1.c: New test. * c-c++-common/pr80162-2.c: New test. * c-c++-common/pr80162-3.c: New test. From-SVN: r246512
Jakub Jelinek committed -
PR target/80102 * reg-notes.def (REG_CFA_NOTE): Define. Use it for CFA related notes. * cfgcleanup.c (reg_note_cfa_p): New array. (insns_have_identical_cfa_notes): New function. (old_insns_match_p): Don't cross-jump in between /f and non-/f instructions. If both i1 and i2 are frame related, verify all CFA notes, their order and content. * g++.dg/opt/pr80102.C: New test. From-SVN: r246511
Jakub Jelinek committed -
From-SVN: r246510
Joseph Myers committed -
[gcc] 2017-03-27 Michael Meissner <meissner@linux.vnet.ibm.com> PR target/78543 * config/rs6000/rs6000.md (bswaphi2_extenddi): Combine bswap HImode and SImode with zero extend to DImode to one insn. (bswap<mode>2_extenddi): Likewise. (bswapsi2_extenddi): Likewise. (bswaphi2_extendsi): Likewise. (bswaphi2): Combine bswap HImode and SImode into one insn. Separate memory insns from swapping register. (bswapsi2): Likewise. (bswap<mode>2): Likewise. (bswaphi2_internal): Delete, no longer used. (bswapsi2_internal): Likewise. (bswap<mode>2_load): Split bswap HImode/SImode into separate load, store, and gpr<-gpr swap insns. (bswap<mode>2_store): Likewise. (bswaphi2_reg): Register only splitter, combine with the splitter. (bswaphi2 splitter): Likewise. (bswapsi2_reg): Likewise. (bswapsi2 splitter): Likewise. (bswapdi2): If we have the LDBRX and STDBRX instructions, split the insns into load, store, and register/register insns. (bswapdi2_ldbrx): Likewise. (bswapdi2_load): Likewise. (bswapdi2_store): Likewise. (bswapdi2_reg): Likewise. [gcc/testsuite] 2017-03-27 Michael Meissner <meissner@linux.vnet.ibm.com> PR target/78543 * gcc.target/powerpc/pr78543.c: New test. From-SVN: r246508
Michael Meissner committed -
2017-03-27 Dominique d'Humieres <dominiq@lps.ens.fr> * io/list_read.c: Insert /* Fall through. */ in the macro CASE_SEPARATORS in order to silence warnings. From-SVN: r246507
Dominique d'Humieres committed -
* system.h (HAVE_DESIGNATED_INITIALIZERS): Fix non C++ case. (HAVE_DESIGNATED_UNION_INITIALIZERS): Likewise. From-SVN: r246506
Gunther Nikl committed -
gcc/testsuite/ChangeLog: 2017-03-27 Kelvin Nilsen <kelvin@gcc.gnu.org> PR target/80103 * gcc.target/powerpc/pr80103-1.c: New test. gcc/ChangeLog: 2017-03-27 Kelvin Nilsen <kelvin@gcc.gnu.org> PR target/80103 * config/rs6000/rs6000-c.c (rs6000_target_modify_macros): Edit and add comments. * config/rs6000/rs6000.c (rs6000_option_override_internal): Add special handling for target option conflicts between dform options (-mpower9-dform, -mpower9-dform-vector, -mpower9-dform-scalar) and -mno-direct-move. From-SVN: r246505
Kelvin Nilsen committed -
This patch almost a decade ago: ... 2007-08-31 Douglas Gregor <doug.gregor@gmail.com> * cp-demangle.c (d_dump): Handle DEMANGLE_COMPONENT_RVALUE_REFERENCE. (d_make_comp): Ditto. ... ... missed doing the same change to cplus_demangle_fill_component that was done to d_make_comp. I.e., teach it to only validate that we're not passing in a "right" subtree. GDB has recently (finally) learned about rvalue references, and a change to make it use cplus_demangle_fill_component more ran into an assertion because of this. (GDB is the only user of cplus_demangle_fill_component in both the gcc and binutils-gdb trees.) libiberty/ChangeLog: 2017-03-27 Pedro Alves <palves@redhat.com> * cp-demint.c (cplus_demangle_fill_component): Handle DEMANGLE_COMPONENT_RVALUE_REFERENCE. From-SVN: r246502
Pedro Alves committed -
2017-03-27 Richard Biener <rguenther@suse.de> PR tree-optimization/80181 * tree-ssa-ccp.c (likely_value): UNDEFINED ^ X is UNDEFINED. * gcc.dg/torture/pr80181.c: New testcase. From-SVN: r246500
Richard Biener committed -
Durring compilation process, (subreg (mem ...) ...) can occur. Hence, we need to check if the address of mem is a valid one. This patch is fixing this check by directly calling the address_operand, instead of calling move_double_src_operand, as the latter is always checking against the original mode, thus, returning false when the inner and outer modes are different. gcc/ 2017-03-27 Claudiu Zissulescu <claziss@synopsys.com> * config/arc/predicates.md (move_double_src_operand): Replace the call to move_double_src_operand with a call to address_operand. From-SVN: r246499
Claudiu Zissulescu committed -
libgcc/ 2017-02-27 Claudiu Zissulescu <claziss@synopsys.com> * config/arc/ieee-754/divdf3.S (__divdf3): Use __ARCEM__. From-SVN: r246498
Claudiu Zissulescu committed -
gcc/ 2017-03-27 Claudiu Zissulescu <claziss@synopsys.com> * config/arc/elf.h (ARGET_ARC_TP_REGNO_DEFAULT): Define. * config/arc/linux.h (ARGET_ARC_TP_REGNO_DEFAULT): Likewise. * config/arc/arc.opt (mtp-regno): Use ARGET_ARC_TP_REGNO_DEFAULT. From-SVN: r246497
Claudiu Zissulescu committed -
ARC can use scaled offsets when loading (i.e. ld.as rA,[base, offset]). Where base and offset can be a register or an immediate operand. The scaling only applies on the offset part of the instruction. The compiler can accept an address like this: (plus:SI (mult:SI (reg:SI 2 r2 [orig:596 _2129 ] [596]) (const_int 4 [0x4])) (const_int 60 [0x3c])) Hence, to emit this instruction we place the (const_int 60) into base and the register into offset to take advantage of the scaled offset facility of the load instruction. As a result the length of the load instruction is 8 bytes. However, the long_immediate_loadstore_operand predicate used for calculating the length attribute doesn't recognize this address and returns a wrong decision leading to a wrong length computation for a load instruction using the above address. gcc/ 2017-03-27 Claudiu Zissulescu <claziss@synopsys.com> * config/arc/predicates.md (long_immediate_loadstore_operand): Consider scaled addresses cases. From-SVN: r246496
Claudiu Zissulescu committed -
gcc/ 2017-03-27 Claudiu Zissulescu <claziss@synopsys.com> * config/arc/arc.c (arc_epilogue_uses): BLINK should be also restored when in interrupt. * config/arc/arc.md (simple_return): ARCv2 rtie instruction doesn't have delay slot. 2017-03-27 Claudiu Zissulescu <claziss@synopsys.com> * testsuite/gcc.target/arc/interrupt-4.c: New file. From-SVN: r246495
Claudiu Zissulescu committed -
2017-03-27 Richard Biener <rguenther@suse.de> PR ipa/79776 * tree-ssa-structalias.c (associate_varinfo_to_alias): Skip inlined thunk clones. * g++.dg/ipa/pr79776.C: New testcase. From-SVN: r246494
Richard Biener committed -
PR sanitizer/80168 * asan.c (instrument_derefs): Copy over last operand from original COMPONENT_REF to the new COMPONENT_REF with DECL_BIT_FIELD_REPRESENTATIVE. * ubsan.c (instrument_object_size): Likewise. * gcc.dg/asan/pr80168.c: New test. From-SVN: r246492
Jakub Jelinek committed -
2017-03-27 Richard Biener <rguenther@suse.de> PR tree-optimization/80170 * tree-vect-data-refs.c (vect_compute_data_ref_alignment): Make sure DR/SCEV didnt fold in constants we do not see when looking at the reference base alignment. * gcc.dg/pr80170.c: New testcase. From-SVN: r246491
Richard Biener committed -
2017-03-27 Richard Biener <rguenther@suse.de> PR middle-end/80171 * gimple-fold.c (fold_ctor_reference): Properly guard against NULL return value from canonicalize_constructor_val. * g++.dg/torture/pr80171.C: New testcase. From-SVN: r246490
Richard Biener committed -
From-SVN: r246489
GCC Administrator committed
-
- 26 Mar, 2017 4 commits
-
-
* gcc.dg/torture/pr79732.c: Require alias support. * gcc.dg/tree-ssa/pr56727.c: Move dg-require-alias after dg-do compile. From-SVN: r246485
John David Anglin committed -
* gfortran.dg/coarray_failed_images_1.f08: Add "-latomic" option if libatomic_available. * gfortran.dg/coarray_image_status_1.f08: Likewise. * gfortran.dg/coarray_stopped_images_1.f08: Likewise. From-SVN: r246484
John David Anglin committed -
PR libstdc++/80183 * include/bits/stl_tree.h: (_Rb_tree_header::_M_move_data(_Rb_tree_header&)): Also save _M_color. From-SVN: r246483
Markus Trippelsdorf committed -
From-SVN: r246482
GCC Administrator committed
-
- 25 Mar, 2017 6 commits
-
-
2017-03-25 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR libgfortran/78881 * io/io.h (st_parameter_dt): Rename unused component last_char to child_saved_iostat. Move comment to gfc_unit. * io/list_read.c (list_formatted_read_scalar): After call to child READ procedure, save the returned iostat value for later check. (finish_list_read): Only finish READ if child_saved_iostat was OK. * io/transfer.c (read_sf_internal): If there is a saved character in last character, seek back one. Add a new check for EOR condition. (read_sf): If there is a saved character in last character, seek back one. (formatted_transfer_scalar_read): Initialize last character before invoking child procedure. (data_transfer_init): If child dtio, set advance status to nonadvancing. Move update of size and check for EOR condition to before child dtio return. * gfortran.dg/dtio_26.f90: New test. From-SVN: r246478
Jerry DeLisle committed -
re PR fortran/80156 (Generic DTIO interface reported missing if public statement preceeds the interface block) 2017-03-25 Paul Thomas <pault@gcc.gnu.org> PR fortran/80156 PR fortran/79382 * decl.c (access_attr_decl): Remove the error for an absent generic DTIO interface and ensure that symbol has the flavor FL_PROCEDURE. 2017-03-25 Paul Thomas <pault@gcc.gnu.org> PR fortran/80156 PR fortran/79382 * gfortran.dg/dtio_23.f90 : Remove the dg-error and add the testcase for PR80156. Add a main programme that tests that the typebound generic is accessible. From-SVN: r246476
Paul Thomas committed -
PR target/80180 * config/i386/i386.c (ix86_expand_builtin) <IX86_BUILTIN_RDSEED{16,32,64}_STEP>: Do not expand arg0 between flags reg setting and flags reg using instructions. <IX86_BUILTIN_RDRAND{16,32,64}_STEP>: Ditto. Use non-flags reg clobbering instructions to zero extend op2. From-SVN: r246475
Uros Bizjak committed -
* doc/install.texi (Configuration) <--with-aix-soname>: Update link to AIX ld. From-SVN: r246474
Gerald Pfeifer committed -
PR rtl-optimization/80160 PR rtl-optimization/80159 * lra-assigns.c (must_not_spill_p): Tighten new test to also take reg_alternate_class into account. * gcc.target/i386/pr80160.c: New test. From-SVN: r246473
Bernd Schmidt committed -
From-SVN: r246472
GCC Administrator committed
-
- 24 Mar, 2017 6 commits
-
-
PR sanitizer/79904 * gcc.dg/ubsan/pr79904-2.c: Add -Wno-psabi to dg-options. From-SVN: r246468
Jakub Jelinek committed -
2017-03-24 Vladimir Makarov <vmakarov@redhat.com> PR target/80148 * lra-assigns.c (assign_by_spills): Add spilled non-reload pseudos to consider in curr_insn_transform. From-SVN: r246467
Vladimir Makarov committed -
* pt.c (lookup_template_class_1): Don't try to enter the scope of an alias template. From-SVN: r246462
Jason Merrill committed -
PR c++/80119 * cp-gimplify.c (cp_fold): Strip CLEANUP_POINT_EXPR if the expression doesn't have side effects. * g++.dg/warn/Wuninitialized-9.C: New test. From-SVN: r246461
Marek Polacek committed -
* genrecog.c (validate_pattern): Add VEC_SELECT validation. * genmodes.c (emit_min_insn_modes_c): Call emit_mode_nunits and emit_mode_inner. From-SVN: r246460
Jakub Jelinek committed -
This patch implements a set of low-level builtins for instruction which would otherwise not be emitted by the compiler plus a set of high-level builtins as defined by the IBM XL compiler. The high-level builtins will be described in a future revision of the z/OS XL C/C++ Programming Guide. I'll try to come up with a documentation appropriate for the GCC manual as well (sometimes in the future). gcc/ChangeLog: 2017-03-24 Andreas Krebbel <krebbel@linux.vnet.ibm.com> * config/s390/s390-builtins.def: Add VXE builtins. Add a flags argument to the overloaded builtin variants. Use the new flag to deprecate certain builtin variants. * config/s390/s390-builtin-types.def: Add new builtin types. * config/s390/s390-builtins.h: Support new flags field for overloaded builtins. * config/s390/s390-c.c (OB_DEF_VAR): New flags field. (s390_macro_to_expand): Enable vector float data type. (s390_cpu_cpp_builtins_internal): Indicate support of the new builtins by incrementing the __VEC__ version number. (s390_expand_overloaded_builtin): Support expansion of vec_xl and vec_xst. (s390_resolve_overloaded_builtin): Emit error messages depending on the builtin flags. * config/s390/s390.c (s390_expand_builtin): Support additional flags argument. Change error message to match the messages emitted in s390-c.c. * config/s390/s390.md: New UNSPEC_* constants. (op_type): Add new instruction types. * config/s390/vecintrin.h: Add new builtins and test data class constants. * config/s390/vx-builtins.md (V_HW_32_64): Add V4SF. (V_HW_4, VEC_HW, VECF_HW): New mode iterators. (VEC_INEXACT, VEC_NOINEXACT): New constants. ("vec_splats<mode>", "vec_insert<mode>", "vec_promote<mode>") ("vec_insert_and_zero<mode>", "vec_mergeh<mode>") ("vec_mergel<mode>"): V_HW -> VEC_HW. ("vlrlrv16qi", "vstrlrv16qi", "vbpermv16qi", "vec_msumv2di") ("vmslg", "*vftci<mode>_cconly", "vftci<mode>_intcconly") ("*vftci<mode>", "vftci<mode>_intcc", "vec_double_s64") ("vec_double_u64", "vfmin<mode>", "vfmax<mode>"): New definition. ("and_av2df3", "and_cv2df3", "vec_andc_av2df3") ("vec_andc_cv2df3", "xor_av2df3", "xor_cv2df3", "vec_nor_av2df3") ("vec_nor_cv2df3", "ior_av2df3", "ior_cv2df3", "vec_nabs") ("*vftcidb", "*vftcidb_cconly", "vftcidb"): Remove definition. ("vec_all_<fpcmpcc:code>v2df", "vec_any_<fpcmpcc:code>v2df") ("vec_scatter_elementv4si_DI", "vec_cmp<fpcmp:code>v2df") ("vec_di_to_df_s64", "vec_di_to_df_u64", "vec_df_to_di_u64") ("vfidb", "*vldeb", "*vledb", "*vec_cmp<insn_cmp>v2df_cconly") ("vec_cmpeqv2df_cc", "vec_cmpeqv2df_cc", "vec_cmphv2df_cc") ("vec_cmphev2df_cc", "*vec_cmpeqv2df_cc") ("*vec_cmphv2df_cc", "*vec_cmphev2df_cc"): Enable new modes as ... ("vec_all_<fpcmpcc:code><mode>", "vec_any_<fpcmpcc:code><mode>") ("vec_scatter_element<V_HW_4:mode>_DI") ("vec_cmp<fpcmp:code><mode>", "vcdgb", "vcdlgb", "vclgdb") ("vec_fpint<mode>", "vflls") ("vflrd", "*vec_cmp<insn_cmp><mode>_cconly", "vec_cmpeq<mode>_cc") ("vec_cmpeq<mode>_cc", "vec_cmph<mode>_cc", "vec_cmphe<mode>_cc") ("*vec_cmpeq<mode>_cc", "*vec_cmph<mode>_cc") ("*vec_cmphe<mode>_cc"): ... these. ("vec_ctd_s64", "vec_ctsl", "vec_ctul", "vec_st2f"): Use rounding mode constant instead of magic value. gcc/testsuite/ChangeLog: 2017-03-24 Andreas Krebbel <krebbel@linux.vnet.ibm.com> * gcc.target/s390/target-attribute/tattr-3.c: Adjust error message and remove the high-level builtin. The error message for the would prevent compilation from reaching the second. * gcc.target/s390/target-attribute/tattr-4.c: Likewise. From-SVN: r246459
Andreas Krebbel committed
-