- 02 Jul, 2015 18 commits
-
-
2015-07-02 Paul Thomas <pault@gcc.gnu.org> PR fortran/52846 * decl.c (get_proc_name): Make a partially populated interface symbol to carry the characteristics of a module procedure and its result. (variable_decl): Declarations of dummies or results in the abreviated form of module procedure is an error. (gfc_match_import): IMPORT is not permitted in the interface declaration of module procedures. (match_attr_spec): Submodule variables have implicit save attribute for F2008 onwards. (gfc_match_prefix): Add 'module' as the a prefix and set the module_procedure attribute. (gfc_match_formal_arglist): For a module procedure keep the interface formal_arglist from the interface, match new the formal arguments and then compare the number and names of each. (gfc_match_procedure): Add case COMP_SUBMODULE. (gfc_match_function_decl, gfc_match_subroutine_decl): Set the module_procedure attribute. (gfc_match_entry, gfc_match_end): Add case COMP_SUBMODULE. If attr abr_modproc_decl is set, switch the message accordingly for subroutines and functions. (gfc_match_submod_proc): New function to match the abbreviated style of submodule declaration. * gfortran.h : Add ST_SUBMODULE and ST_END_SUBMODULE. Add the attribute bits 'used_in_submodule' and 'module_procedure'. Add the bit field 'abr_modproc_decl' to gfc_symbol. Add prototypes for 'gfc_copy_dummy_sym', 'gfc_check_dummy_characteristics' and 'gfc_check_result_characteristics'. * interface.c : Add the prefix 'gfc_' to the names of functions 'check_dummy(result)_characteristics' and all their references. * match.h : Add prototype for 'gfc_match_submod_proc' and 'gfc_match_submodule'. (check_sym_interfaces): A module procedure is not an error in a module procedure statment in a generic interface. * module.c (gfc_match_submodule): New function. Add handling for the 'module_procedure' attribute bit. (gfc_use_module): Make sure that a submodule cannot use itself. * parse.c (decode_statement): Set attr has_'import_set' for the interface declaration of module procedures. Handle a match occurring in 'gfc_match_submod_proc' and a match for 'submodule'. (gfc_enclosing_unit): Include the state COMP_SUBMODULE. (gfc_ascii_statement): Add END SUBMODULE. (accept_statement): Add ST_SUBMODULE. (parse_spec): Disallow statement functions in a submodule specification part. (parse_contained): Add ST_END_SUBMODULE and COMP_SUBMODULE twice each. (get_modproc_result): Copy the result symbol of the interface. (parse_progunit): Call it. (set_syms_host_assoc): Make symbols from the ancestor module and submodules use associated, as required by the standard and set all private components public. Module procedures 'external' attribute bit is reset and the 'used_in_submodule' bit is set. (parse_module): If this is a submodule, use the ancestor module and submodules. Traverse the namespace, calling 'set_syms_host_assoc'. Add ST_END_SUBMODULE and COMP_SUBMODULE. * parse.h : Add COMP_SUBMODULE. * primary.c (match_variable): Add COMP_SUBMODULE. * resolve.c (compare_fsyms): New function to compare the dummy characteristics of a module procedure with its interface. (resolve_fl_procedure): Compare the procedure, result and dummy characteristics of a module_procedure with its interface, using 'compare_fsyms' for the dummy arguments. * symbol.c (gfc_add_procedure): Suppress the check for existing procedures in the case of a module procedure. (gfc_add_explicit_interface): Skip checks that must fail for module procedures. (gfc_add_type): Allow a new type to be added to module procedures, their results or their dummy arguments. (gfc_copy_dummy_sym): New function to generate new dummy args and copy the characteristics from the interface. * trans-decl.c (gfc_sym_mangled_function_id): Module procedures must always have their names mangled as if they are symbols coming from a declaration in a module. (gfc_get_symbol_decl): Add 'used_in_submodule' to the assert. (gfc_finish_var_decl): Symbols with the 'used_in_submodule' bit set are set DECL_EXTERNAL as if they were use associated. 2015-07-02 Paul Thomas <pault@gcc.gnu.org> PR fortran/52846 * gfortran.dg/submodule_1.f90: New test * gfortran.dg/submodule_2.f90: New test * gfortran.dg/submodule_3.f90: New test * gfortran.dg/submodule_4.f90: New test * gfortran.dg/submodule_5.f90: New test * gfortran.dg/submodule_6.f90: New test * gfortran.dg/submodule_7.f90: New test From-SVN: r225354
Paul Thomas committed -
/libcpp 2015-07-02 Paolo Carlini <paolo.carlini@oracle.com> PR c++/53690 * charset.c (_cpp_valid_ucn): Add cppchar_t * parameter and change return type to bool. Fix encoding of \u0000 and \U00000000 in C++. (convert_ucn): Adjust call. * lex.c (forms_identifier_p): Likewise. * internal.h (_cpp_valid_ucn): Adjust declaration. /gcc/testsuite 2015-07-02 Paolo Carlini <paolo.carlini@oracle.com> PR c++/53690 * g++.dg/cpp/pr53690.C: New. From-SVN: r225353
Paolo Carlini committed -
[gcc] 2015-07-02 Bill Schmidt <wschmidt@linux.vnet.ibm.com> * config/rs6000/rs6000-builtin.def (CMPGE_16QI): New built-in definition. (CMPGE_8HI): Likewise. (CMPGE_4SI): Likewise. (CMPGE_2DI): Likewise. (CMPGE_U16QI): Likewise. (CMPGE_U8HI): Likewise. (CMPGE_U4SI): Likewise. (CMPGE_U2DI): Likewise. (CMPLE_16QI): Likewise. (CMPLE_8HI): Likewise. (CMPLE_4SI): Likewise. (CMPLE_2DI): Likewise. (CMPLE_U16QI): Likewise. (CMPLE_U8HI): Likewise. (CMPLE_U4SI): Likewise. (CMPLE_U2DI): Likewise. * config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add overloads for ALTIVEC_BUILTIN_VEC_CMPGE and ALTIVEC_BUILTIN_VEC_CMPLE. * config/rs6000/vector.md (vector_ge<mode>): Restrict to floating-point vector modes. (vector_nlt<mode>): New define_expand. (vector_nltu<mode>): Likewise. (vector_ngt<mode>): Likewise. (vector_ngtu<mode>): Likewise. [gcc/testsuite] 2015-07-02 Bill Schmidt <wschmidt@linux.vnet.ibm.com> * gcc.target/powerpc/vec-cmp.c: New test. From-SVN: r225351
Bill Schmidt committed -
2015-07-02 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/56520 * match.c (gfc_match_name): Special case unary minus and plus. 2015-07-02 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/56520 * gfortran.dg/pr56520.f90: New test. From-SVN: r225349
Steven G. Kargl committed -
2015-07-02 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/66545 * primary.c (match_sym_complex_part): Do not dereference NULL pointer. 2015-07-02 Steven G. Kargl <kargl@gcc.gnu.org> PR fortran/66545 * gfortran.dg/pr66545_1.f90: New test. * gfortran.dg/pr66545_2.f90: New test. From-SVN: r225348
Steven G. Kargl committed -
PR rtl-optimization/66706 * combine.c (make_compound_operation): If an AND of SUBREG of LSHIFTRT does not simplify, see if just the AND of SUBREG does. From-SVN: r225344
Segher Boessenkool committed -
gcc/po: * gcc.pot: Regenerate. libcpp/po: * cpplib.pot: Regenerate. From-SVN: r225313
Joseph Myers committed -
gcc/: * tree-pass.h (make_pass_ch_vect): New. * passes.def: Add pass_ch_vect just before pass_if_conversion. * tree-ssa-loop-ch.c (ch_base, pass_ch_vect, pass_data_ch_vect, pass_ch::process_loop_p, pass_ch_vect::process_loop_p, make_pass_ch_vect): New. (pass_ch): Extend ch_base. (pass_ch::execute): Move all but loop_optimizer_init/finalize to... (ch_base::copy_headers): ...here. gcc/testsuite/: * gcc.dg/vect/vect-strided-a-u16-i4.c (main1): Narrow scope of x,y,z,w. * gcc.dg/vect/vect-ifcvt-11.c: New testcase. From-SVN: r225311
Alan Lawrence committed -
2015-07-02 Richard Biener <rguenther@suse.de> * builtins.c (get_pointer_alignment_1): Handle POINTER_PLUS_EXPR. * fold-const.c (get_pointer_modulus_and_residue): Remove. (fold_binary_loc): Implement (T)ptr & CST in terms of get_pointer_alignment_1. * tree-vect-loop-manip.c (vect_gen_niters_for_prolog_loop): Make sure to build the alignment test on a SSA name without final alignment info valid only after the prologue. From-SVN: r225310
Richard Biener committed -
* config/cris/cris.md ("epilogue"): Remove condition. ("prologue"): Ditto. From-SVN: r225308
Hans-Peter Nilsson committed -
2015-07-02 Richard Biener <rguenther@suse.de> PR testsuite/66719 * gcc.dg/vect/bb-slp-32.c: Re-add XFAIL for targets not supporting unaligned loads. From-SVN: r225303
Richard Biener committed -
* configure.ac: Add AC_USE_SYSTEM_EXTENSIONS. * configure: Regenerate. * config.h.in: Ditto. From-SVN: r225302
Uros Bizjak committed -
* testsuite/libgomp.c++/pr66702-1.C: Require vect_simd_clones effective target. * testsuite/libgomp.c++/pr66702-2.C: Ditto. From-SVN: r225301
Uros Bizjak committed -
tree-ssa-dom.c (build_and_record_new_cond): Add optional parameter to record a condition that is false. 2015-07-02 Richard Biener <rguenther@suse.de> * tree-ssa-dom.c (build_and_record_new_cond): Add optional parameter to record a condition that is false. (record_conditions): When recording an extra NE_EXPR that is true also record a EQ_EXPR that is false. * gcc.dg/tree-ssa/ssa-dom-cse-4.c: New testcase. From-SVN: r225299
Richard Biener committed -
* libsupc++/guard.cc (__test_and_acquire): Use __p after __atomic_load to avoid unused variable warning. (__set_and_release): Use __p after __atomic_store to avoid unused variable warning. From-SVN: r225298
Uros Bizjak committed -
* gcc.target/i386/mpx/pr66568.c (exit): New prototype. From-SVN: r225296
H.J. Lu committed -
* tree-ssa-loop-ivopts.c (struct ivopts_data): New field iv_obstack. (tree_ssa_iv_optimize_init): Initialize iv_obstack. (alloc_iv): New parameter. Allocate struct iv using obstack_alloc. (set_iv, find_interesting_uses_address, add_candidate_1): New argument to alloc_iv. (find_interesting_uses_op, find_interesting_uses_cond): Don't duplicate struct iv. (free_loop_data): Don't free struct iv explicitly. (tree_ssa_iv_optimize_finalize): Free iv_obstack. From-SVN: r225293
Bin Cheng committed -
From-SVN: r225286
GCC Administrator committed
-
- 01 Jul, 2015 22 commits
-
-
* config/s390/tpf.h (LIBSTDCXX): Change to CPP1. (LIB_SPEC): Add. (SUPPORTS_DISCRIMINATOR): Define. From-SVN: r225278
DJ Delorie committed -
gcc/c-family/ * c-common.h (D_CXX11): Rename from D_CXX0X. (RID_FIRST_CXX11, RID_LAST_CXX11): Rename from *_CXX0X. * c-common.c: Adjust. gcc/cp/ * lex.c (init_reswords): s/CXX0X/CXX11/. * parser.c (cp_lexer_get_preprocessor_token): Likewise. From-SVN: r225273
Jason Merrill committed -
gcc/c-family/ * c-opts.c (c_common_post_options): Default to C++14. gcc/testsuite/ * lib/target-supports.exp (cxx_default): Set to C++14. From-SVN: r225272
Jason Merrill committed -
gcc/c-family/ * c-opts.c (c_common_post_options): Highest ABI level is now 10. gcc/cp/ * mangle.c (write_CV_qualifiers_for_type, write_nested_name): Attribute mangling is now -fabi-version=10. From-SVN: r225271
Jason Merrill committed -
PR c++/65945 * decl.c (cxx_init_decl_processing): Set TYPE_ALIGN of nullptr_t. * class.c (layout_nonempty_base_or_field): Warn if that affects the offset of a field. From-SVN: r225270
Jason Merrill committed -
linux-atomic.c (__kernel_cmpxchg): Reorder arguments to better match light-weight syscall argument order. * config/pa/linux-atomic.c (__kernel_cmpxchg): Reorder arguments to better match light-weight syscall argument order. (__kernel_cmpxchg2): Likewise. Adjust callers. From-SVN: r225267
John David Anglin committed -
2015-07-01 Tom de Vries <tom@codesourcery.com> PR testsuite/66723 * gcc.target/i386/vararg-loc.c: Use scan-rtl-dump instead of scan-assembler. From-SVN: r225266
Tom de Vries committed -
gcc/ PR bootstrap/66685 * rtl.c (classify_insn): Only return JUMP_INSN for parallel returns if there are no CALLs in the same pattern. From-SVN: r225263
Richard Sandiford committed -
2015-07-01 Thomas Koenig <tkoenig@gcc.gnu.org> * arith.c (gfc_arith_divide): With -Winteger-division, warn about contant integer division if there is a non-zero remainder. * invoke.texi: Document -Winteger-division. * lang.opt: Add -Winteger-division. 2015-07-01 Thomas Koenig <tkoenig@gcc.gnu.org> * gfortran.dg/warn_conversion_8.f90: New test. From-SVN: r225262
Thomas Koenig committed -
gcc/ChangeLog: 2015-07-01 Bernd Edlinger <bernd.edlinger@hotmail.de> PR rtl-optimization/61047 * rtlanal.c (get_initial_register_offset): New function. (rtx_addr_can_trap_p_1): Check offsets of stack references. testsuite/ChangeLog: 2015-07-01 Bernd Edlinger <bernd.edlinger@hotmail.de> PR rtl-optimization/61047 * gcc.c-torture/execute/20150611-1.c: New testcase. From-SVN: r225260
Bernd Edlinger committed -
2015-07-01 Richard Biener <rguenther@suse.de> * fold-const.c (fold_comparison): Move X - Y CMP 0 -> X CMP Y, X * C1 CMP 0 -> X CMP 0, X CMP X, ~X CMP ~Y -> Y CMP X and ~X CMP C -> X CMP' ~C to ... * match.pd: ... patterns here. From-SVN: r225249
Richard Biener committed -
gcc/jit/ChangeLog: PR jit/66700 * jit-playback.c (jit_mark_addressable): New function. (gcc::jit::playback::lvalue::get_address): Call jit_mark_addressable on the underlying tree. gcc/testsuite/ChangeLog: PR jit/66700 * jit.dg/all-non-failing-tests.h: Add test-pr66700-observing-write-through-ptr.c. * jit.dg/test-pr66700-observing-write-through-ptr.c: New testcase. From-SVN: r225248
David Malcolm committed -
gcc/jit/ChangeLog: * docs/topics/types.rst (gcc_jit_context_new_union_type): Add documentation. * docs/_build/texinfo/libgccjit.texi: Regenerate. gcc/testsuite/ChangeLog: * jit.dg/test-accessing-union.c: Add comments for use by gcc/jit/docs/topics/types.rst. From-SVN: r225246
David Malcolm committed -
gcc/jit/ChangeLog: * docs/topics/contexts.rst (gcc_jit_context_set_bool_option): Clarify lack of lifetime requirements on (const char *) parameter. * docs/topics/expressions.rst (gcc_jit_context_new_string_literal): Likewise. (gcc_jit_context_new_global): Likewise. * docs/topics/functions.rst (gcc_jit_context_new_param): Likewise. (gcc_jit_context_new_function): Likewise. (gcc_jit_function_new_block): Likewise. (gcc_jit_block_add_comment): Likewise. * docs/topics/locations.rst (gcc_jit_context_new_location): Likewise. * docs/topics/types.rst (gcc_jit_context_new_field): Likewise. (gcc_jit_context_new_struct_type): Likewise. * docs/_build/texinfo/libgccjit.texi: Regenerate. From-SVN: r225245
David Malcolm committed -
* include/bits/alloc_traits.h (__alloctr_rebind): Remove. (__allocator_traits_base): New base class. (__alloc_rebind): Reimplement in terms of detection idiom. (allocator_traits): Derive from __allocator_traits_base. Reimplement nested types in terms of detection idiom. Simplify SFINAE constraints on overloaded static member functions. * include/bits/hashtable.h (_Hashtable): Use __alloc_rebind instead of __alloctr_rebind. * testsuite/20_util/scoped_allocator/propagation.cc: Define rebind. * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust dg-error line number. From-SVN: r225244
Jonathan Wakely committed -
* include/bits/ptr_traits.h (__ptrtr_elt_type, __ptrtr_diff_type, __ptrtr_rebind, __ptrtr_not_void): Remove (__get_first_arg, __replace_first_arg, __make_not_void): Define new transformations. (__detected_or_): New detection trait. (pointer_traits): Use new traits. * testsuite/20_util/pointer_traits/pointer_to.cc: Add rebind member. * testsuite/20_util/pointer_traits/requirements/ explicit_instantiation.cc: Use valid arguments to pointer_traits. From-SVN: r225243
Jonathan Wakely committed -
* doc/xml/manual/status_cxx2017.xml: Update status table. * include/experimental/type_traits (void_t, is_detected, is_detected_v, detected_t, detected_or, detected_or_t, is_detected_exact, is_detected_exact_v, is_detected_convertible, is_detected_convertible_v): Define. * include/std/type_traits (__detector, __detected_or, __detected_or_t, __detected_or_t_): Define. * testsuite/experimental/type_traits/detection.cc: New. From-SVN: r225242
Jonathan Wakely committed -
2015-07-01 Matthew Wahab <matthew.wahab@arm.com> * gcc.target/arm/armv8-sync-comp-swap.c: Replace 'do-require-effective-target' with 'dg-require-effective-target'. * gcc.target/arm/armv8-sync-op-full.c: Likewise. * gcc.target/arm/armv8-sync-op-release.c: Likewise. * gcc.target/arm/armv8-sync-op-acquire.c: Likewise. Also, replace 'stlex' with 'strex' as the expected output. From-SVN: r225241
Matthew Wahab committed -
* config/msp430/msp430.md (zero_extendhipsi2): Use MOVX.A to store a 16-bit value into a 20-bit memory slot. From-SVN: r225240
Nick Clifton committed -
re PR c++/60365 (multiple noreturn attribute specifiers in a single declaration doesn't result in a diagnostic) /cp 2015-07-01 Paolo Carlini <paolo.carlini@oracle.com> PR c++/60365 * parser.c (cp_parser_check_std_attribute): New. (cp_parser_std_attribute_list): Call it. /testsuite 2015-07-01 Paolo Carlini <paolo.carlini@oracle.com> PR c++/60365 * g++.dg/cpp0x/gen-attrs-60.C: New. * g++.dg/cpp1y/attr-deprecated-2.C: Likewise. From-SVN: r225234
Paolo Carlini committed -
2015-07-01 Jiong Wang <jiong.wang@arm.com> * doc/sourcebuild.texi (AArch64-specific attributes): Document "aarch64_tiny", "aarch64_small", "aarch64_large", "aarch64_little_endian", "aarch64_big_endian". From-SVN: r225233
Jiong Wang committed -
2015-07-01 Jiong Wang <jiong.wang@arm.com> gcc/ * doc/sourcebuild.texi (AArch64-specific attributes): New subsection. Document "aarch64_small_fpic". gcc/testsuite/ * lib/target-supports.exp (check_effective_target_aarch64_small_fpic): New function. * gcc.target/aarch64/pic-small.c: Restrict this test under check_effective_target_aarch64_small_fpic. From-SVN: r225232
Jiong Wang committed
-