- 24 Mar, 2015 15 commits
-
-
2015-03-24 Ed Schonberg <schonberg@adacore.com> * sem_ch13.adb (Rep_Item_Too_Early): allow pragma Convention on generic type. 2015-03-24 Gary Dismukes <dismukes@adacore.com> * inline.adb: Minor typo fix. From-SVN: r221629
Arnaud Charlet committed -
* doc/gnat_ugn/building_executable_programs_with_gnat.rst, doc/gnat_ugn/gnat_utility_programs.rst doc/gnat_rm/implementation_defined_attributes.rst doc/gnat_rm/implementation_defined_pragmas.rst doc/gnat_rm/representation_clauses_and_pragmas.rst doc/gnat_rm/about_this_guide.rst doc/gnat_rm/implementation_of_ada_2012_features.rst: Doc improvements. * gnat_rm.texi, gnat_ugn.texi: Regenerate. From-SVN: r221628
Arnaud Charlet committed -
2015-03-24 Andre Vehreschild <vehre@gmx.de> PR fortran/55901 * trans-expr.c (gfc_conv_structure): Fixed indendation. Using integer_zero_node now instead of explicitly constructing a integer constant zero node. (gfc_conv_derived_to_class): Add handling of _len component, i.e., when the rhs has a string_length then assign that to class' _len, else assign 0. (gfc_conv_intrinsic_to_class): Likewise. From-SVN: r221627
Andre Vehreschild committed -
2015-03-24 Paolo Carlini <paolo.carlini@oracle.com> PR c++/60067 * g++.dg/template/defarg18.C: New. From-SVN: r221626
Paolo Carlini committed -
2015-03-24 Paolo Carlini <paolo.carlini@oracle.com> PR c++/60067 * g++.dg/template/defarg18.C: New. From-SVN: r221625
Paolo Carlini committed -
2015-03-24 Paolo Carlini <paolo.carlini@oracle.com> PR c++/59988 * g++.dg/cpp0x/vt-59988.C: New. From-SVN: r221624
Paolo Carlini committed -
2015-03-24 Paolo Carlini <paolo.carlini@oracle.com> PR c++/59988 * g++.dg/cpp0x/vt-59988.C: New. From-SVN: r221623
Paolo Carlini committed -
PR tree-optimization/65533 * tree-vect-slp.c (vect_build_slp_tree): Before re-trying with swapped operands, call vect_free_slp_tree on SLP_TREE_CHILDREN of child and truncate the SLP_TREE_CHILDREN vector. * gcc.dg/pr65533.c: New test. From-SVN: r221622
Jakub Jelinek committed -
gcc/fortran/ChangeLog 2015-03-24 Andre Vehreschild <vehre@gmx.de> PR fortran/64787 PR fortran/57456 PR fortran/63230 * class.c (gfc_add_component_ref): Free no longer needed ref-chains to prevent memory loss. (find_intrinsic_vtab): For deferred length char arrays or unlimited polymorphic objects, store the size in bytes of one character in the size component of the vtab. * gfortran.h: Added gfc_add_len_component () define. * trans-array.c (gfc_trans_create_temp_array): Switched to new function name for getting a class' vtab's field. (build_class_array_ref): Likewise. (gfc_array_init_size): Using the size information from allocate more consequently now, i.e., the typespec of the entity to allocate is no longer needed. This is to address the last open comment in PR fortran/57456. (gfc_array_allocate): Likewise. (structure_alloc_comps): gfc_copy_class_to_class () needs to know whether the class is unlimited polymorphic. * trans-array.h: Changed interface of gfc_array_allocate () to reflect the no longer needed typespec. * trans-expr.c (gfc_find_and_cut_at_last_class_ref): New. (gfc_reset_len): New. (gfc_get_class_array_ref): Switch to new function name for getting a class' vtab's field. (gfc_copy_class_to_class): Added flag to know whether the class to copy is unlimited polymorphic. Adding _len dependent code then, which calls ->vptr->copy () with four arguments adding the length information ->vptr->copy(from, to, from_len, to_cap). (gfc_conv_procedure_call): Switch to new function name for getting a class' vtab's field. (alloc_scalar_allocatable_for_assignment): Use the string_length as computed by gfc_conv_expr and not the statically backend_decl which may be incorrect when ref-ing. (gfc_trans_assignment_1): Use the string_length variable and not the rse.string_length. The former has been computed more generally. * trans-intrinsic.c (gfc_conv_intrinsic_sizeof): Switch to new function name for getting a class' vtab's field. (gfc_conv_intrinsic_storage_size): Likewise. (gfc_conv_intrinsic_transfer): Likewise. * trans-stmt.c (gfc_trans_allocate): Restructured to evaluate source=expr3 only once before the loop over the objects to allocate, when the objects are not arrays. Doing correct _len initialization and calling of vptr->copy () fixing PR 64787. (gfc_trans_deallocate): Reseting _len to 0, preventing future errors. * trans.c (gfc_build_array_ref): Switch to new function name for getting a class' vtab's field. (gfc_add_comp_finalizer_call): Likewise. * trans.h: Define the prototypes for the gfc_class_vtab_*_get () and gfc_vptr_*_get () functions. Added gfc_find_and_cut_at_last_class_ref () and gfc_reset_len () routine prototype. Added flag to gfc_copy_class_to_class () prototype to signal an unlimited polymorphic entity to copy. gcc/testsuite/ChangeLog 2015-03-24 Andre Vehreschild <vehre@gmx.de> * gfortran.dg/allocate_alloc_opt_13.f90: Added tests for source= and mold= expressions functionality. * gfortran.dg/allocate_class_4.f90: New test. * gfortran.dg/unlimited_polymorphic_20.f90: Added test whether copying an unlimited polymorhpic object containing a char array to another unlimited polymorphic object respects the _len component. * gfortran.dg/unlimited_polymorphic_22.f90: Extended to check whether deferred length char array allocate works, unlimited polymorphic object allocation from a string works and if allocating an array of deferred length strings works. * gfortran.dg/unlimited_polymorphic_24.f03: New test. From-SVN: r221621
Andre Vehreschild committed -
2015-03-24 Paolo Carlini <paolo.carlini@oracle.com> PR c++/65513 * g++.dg/cpp0x/constexpr-array11.C: New. From-SVN: r221620
Paolo Carlini committed -
2015-03-24 Richard Biener <rguenther@suse.de> PR middle-end/65517 * tree-cfg.c (remove_edge_and_dominated_blocks): Mark loops for fixup if necessary. * gcc.dg/torture/pr65517.c: New testcase. From-SVN: r221619
Richard Biener committed -
2015-03-24 Tobias Burnus <burnus@net-b.de> * gfortran.dg/coindexed_1.f90: Moved from gfortran.dg/coarray/coindexed_3.f90; added dg-options. From-SVN: r221618
Tobias Burnus committed -
2015-03-24 Iain Sandoe <iain@codesourcery.com> Tobias Burnus <burnus@net-b.de> * gfortran.texi (_gfortran_caf_sync_memory): Improve wording. Co-Authored-By: Tobias Burnus <burnus@net-b.de> From-SVN: r221615
Iain Sandoe committed -
extend.texi (Function Attributes): Add @cindex entries for all attributes and regularize their format. 2015-03-23 Sandra Loosemore <sandra@codesourcery.com> gcc/ * doc/extend.texi (Function Attributes): Add @cindex entries for all attributes and regularize their format. Delete text about long-obsolete 68HC11 and 68HC12 targets. Move misplaced information about "eightbit_data", "tiny_data", and "model" variable attributes to the Variable Attributes section. Fix some obvious typos and copy-editing issues. (Variable Attributes, Type Attributes): Likewise add/fix @cindex entries for all attributes. From-SVN: r221614
Sandra Loosemore committed -
From-SVN: r221613
GCC Administrator committed
-
- 23 Mar, 2015 21 commits
-
-
2015-03-23 Jakub Jelinek <jakub@redhat.com> PR testsuite/65506 * gcc.dg/pr29215.c: Dump and analyze ccp1 dump instead of gimple dump. From-SVN: r221607
Jakub Jelinek committed -
PR target/65523 * tree-chkp.c (chkp_build_returned_bound): Ignore ERF_RETURNS_ARG calls if they have fewer than needed arguments. * gcc.target/i386/pr65523.c: New test. From-SVN: r221606
Jakub Jelinek committed -
PR ipa/65475 * g++.dg/lto/pr65475_0.C: Use dg-lto-options instead of dg-options. * g++.dg/lto/pr65475b_0.C: Likewise. From-SVN: r221605
Jakub Jelinek committed -
gcc/ PR target/65505 * config/sh/predicates.md (simple_mem_operand, displacement_mem_operand): Add test for reg. (short_displacement_mem_operand): Test for displacement_mem_operand before invoking sh_disp_addr_displacement. * config/sh/constraints.md (Sdd, Sra): Simplify. * config/sh/sync.md (atomic_mem_operand_0, atomic_mem_operand_1): Remove redundant displacement_mem_operand tests. gcc/testsuite/ PR target/65505 * gcc.target/sh/torture/pr65505.c: New. From-SVN: r221604
Oleg Endo committed -
PR target/65296 * config/avr/driver-avr.c (avr_devicespecs_file): Allow to specify the same -mmcu=MCU more than once. From-SVN: r221602
Georg-Johann Lay committed -
re PR testsuite/63175 (FAIL: gcc.dg/vect/costmodel/ppc/costmodel-bb-slp-9a.c scan-tree-dump-times slp2" basic block vectorized using SLP" 1) 2015-03-23 Martin Sebor <msebor@redhat.com> PR testsuite/63175 * gcc.dg/vect/costmodel/ppc/costmodel-bb-slp-9a-pr63175.c: Scan assembly for lvx in addition to lxv. From-SVN: r221601
Martin Sebor committed -
re PR libstdc++/64967 (Bootstrap fails due to errors in libstdc++ sources with `--enable-symvers=gnu-versioned-namespace') PR libstdc++/64967 * acinclude.m4: Disable dual ABI when gnu-versioned-namespace in use. * configure: Regenerate. * src/c++11/compatibility-c++0x.cc (error_category), generic_category, system_category): Use macros for versioned namespace. * src/c++11/futex.cc: Add missing end macro for versioned namespace. From-SVN: r221600
Jonathan Wakely committed -
re PR bootstrap/65522 (Svn revision 221590 fails bootstrap - ../libiberty/libiberty.a(cplus-dem.o): In function `ada_demangle': cplus-dem.c:(.text+0xdb8): multiple definition of `ada_demangle' ada/adadecode.o:adadecode.c:(.text+0x863): first defined here) PR bootstrap/65522 * ipa-devirt.c: Remove duplicate demangle.h include. * adadecode.c (ada_demangle): Guard with IN_RTS instead of IN_GCC. From-SVN: r221599
Jakub Jelinek committed -
From-SVN: r221598
Joseph Myers committed -
PR target/65504 * config/i386/i386.c (ix86_copy_addr_to_reg): Set REG_POINTER on the pseudo. (expand_set_or_movmem_prologue_epilogue_by_misaligned_moves): Set REG_POINTER on *destptr after adjusting it for prologue size. * gfortran.dg/pr65504.f90: New test. From-SVN: r221597
Jakub Jelinek committed -
PR ipa/65521 * ipa-icf.c (sem_item::update_hash_by_addr_refs): Hash ultimate_alias_target ()->order ints instead of ultimate_alias_target () pointers. * gcc.dg/pr65521.c: New test. From-SVN: r221596
Jakub Jelinek committed -
2015-03-23 Richard Biener <rguenther@suse.de> PR tree-optimization/65518 * tree-vect-stmts.c (vectorizable_load): Reject single-element interleaving cases we generate absymal code for. * gcc.dg/vect/pr65518.c: New testcase. From-SVN: r221595
Richard Biener committed -
re PR sanitizer/59009 (libsanitizer merge from upstream r191666 breaks bootstrap on powerpc64-linux and aarch64-linux) 2015-03-23 Christophe Lyon <christophe.lyon@linaro.org> PR sanitizer/59009 * sanitizer_common/sanitizer_platform_limits_posix.cc: Cherry pick upstream r230324. * sanitizer_common/sanitizer_platform.h: Likewise. * sanitizer_common/sanitizer_common_syscalls.inc: Likewise. From-SVN: r221593
Christophe Lyon committed -
2015-03-23 Richard Biener <rguenther@suse.de> PR tree-optimization/65494 * tree-vect-slp.c (vect_build_slp_tree): Do not (re-)allocate matches here. (vect_analyze_slp_instance): But do that here, always and once. * gcc.dg/vect/pr65494.c: New testcase. From-SVN: r221592
Richard Biener committed -
* expmed.c (synth_mult): Fix comment about multiplying by T-1 and adding T or multiplying by T+1 and subracting T. From-SVN: r221588
Kyrylo Tkachov committed -
PR preprocessor/65238 * internal.h (_cpp_scan_out_logical_line): Add third argument. * directives.c (prepare_directive_trad): Pass false to it. * traditional.c (_cpp_read_logical_line_trad, _cpp_create_trad_definition): Likewise. (struct fun_macro): Add paramc field. (fun_like_macro): New function. (maybe_start_funlike): Handle NODE_BUILTIN macros. Initialize macro->paramc field. (save_argument): Use macro->paramc instead of macro->node->value.macro->paramc. (push_replacement_text): Formatting fix. (recursive_macro): Use fun_like_macro helper. (_cpp_scan_out_logical_line): Likewise. Add BUILTIN_MACRO_ARG argument. Initialize fmacro.paramc field. Handle builtin function-like macros. * c-c++-common/cpp/pr65238-1.c: New test. * gcc.dg/cpp/pr65238-2.c: New test. * gcc.dg/cpp/trad/pr65238-3.c: New test. * gcc.dg/cpp/trad/pr65238-4.c: New test. From-SVN: r221587
Jakub Jelinek committed -
2015-03-23 Paul Thomas <pault@gcc.gnu.org> Mikael Morin <mikael@gcc.gnu.org> PR fortran/64952 fortran/ * gfortran.h (struct symbol_attribute) : New field 'array_outer_dependency'. * trans.h (struct gfc_ss_info): New field 'array_outer_dependency'. * module.c (enum ab_attribute): New value AB_ARRAY_OUTER_DEPENDENCY. (attr_bits): Append same value to initializer. (mio_symbol_attribute): Handle 'array_outer_dependency' attr in module read and write. * resolve.c (update_current_proc_outer_array_dependency): New function. (resolve_function, resolve_call): Add code to update current procedure's 'array_outer_dependency' attribute. (resolve_variable): Mark current procedure with attribute array_outer_dependency if the variable is an array coming from outside the current namespace. (resolve_fl_procedure): Mark a procedure without body with attribute 'array_outer_dependency'. * trans-array.c (gfc_conv_resolve_dependencies): If any ss is marked as 'array_outer_dependency' generate a temporary. (gfc_walk_function_expr): If the function may reference external arrays, mark the head gfc_ss with flag 'array_outer_dependency'. testsuite/ * gfortran.dg/elemental_dependency_4.f90: New. * gfortran.dg/elemental_dependency_5.f90: New. Co-Authored-By: Mikael Morin <mikael@gcc.gnu.org> From-SVN: r221586
Paul Thomas committed -
PR rtl-optimization/64317 * Makefile.in (OBJS): Add gcse-common.c * gcse.c: Include gcse-common.h (struct modify_pair_s): Move structure definition to gcse-common.h (compute_transp): Move function to gcse-common.c. (canon_list_insert): Similarly. (record_last_mem_set_info): Break out some code and put it into gcse-common.c. Call into the new common code. (compute_local_properties): Pass additional arguments to compute_transp. * postreload-gcse.c: Include gcse-common.h and df.h (modify_mem_list_set, blocks_with_calls): New variables. (modify_mem_list, canon_modify_mem_list, transp): Likewise. (get_bb_avail_insn): Pass in the expression index too. (alloc_mem): Allocate memory for the new bitmaps and lists. (free_mem): Free memory for the new bitmaps and lists. (insert_expr_in_table): Record a bitmap index for each entry we add to the table. (record_last_mem_set_info): Call into common code in gcse-common.c. (get_bb_avail_insn): If no available insn was found in the requested BB. If BB has a single predecessor, see if the expression is transparent in BB and available in that single predecessor. (compute_expr_transp): New wrapper for compute_transp. (eliminate_partially_redundant_load): Pass expression's bitmap_index to get_bb_avail_insn. Compute next_pred_bb_end a bit later. (gcse_after_reload_main): If there are elements in the hash table, then compute transparency for all the elements in the hash table. * gcse-common.h: New file. * gcse-common.c: New file. From-SVN: r221585
Jeff Law committed -
2015-03-22 Sandra Loosemore <sandra@codesourcery.com> gcc/ * doc/cpp.texi (Search Path): Hyphenate "command-line" when used as an adjective. (System Headers): Likewise. (Ifdef): Likewise. (Traditional macros): Likewise. (Invocation): Likewise. (Option Index): Likewise. * doc/cppopts.texi (-M): Likewise. (-finput-charset): Likewise. (--help): Likewise. * doc.invoke.texi (AVR Options): Likewise. (V850 Options): Likewise. From-SVN: r221583
Sandra Loosemore committed -
PR ipa/65475 * ipa-devirt.c: Include demangle.h (odr_type_d): Add field rtti_broken. (odr_subtypes_equivalent_p): Do not require name to match. (compare_virtual_tables): Fix typo; if type already has ODR violation, bypass the tests; be ready for function referneces in vtables that are not DECL_VIRTUAL; make warnings to be OPT_Wodr. (warn_odr): Give up for nameless types. (warn_types_mismatch): Report mismatch in mangled names; report mismatch in anonymous namespaces; look into component types to give useful error; report when mismatch is dragged in from other ODR type. (odr_types_equivalent_p): Match types for being polymorphic; avoid duplicated diagnostics. (add_type_duplicate): Reorder checks so more informative ones come first; fix typo; do not output "the extra base is defined here" when we did not warn. (BINFO_N_BASE_BINFOS): Relax sanity check. * g++.dg/lto/pr65475b_0.C: New testcase. * g++.dg/lto/pr65475b_1.C: New testcase. * g++.dg/lto/pr65475c_0.C: New testcase. * g++.dg/lto/pr65475c_1.C: New testcase. From-SVN: r221582
Jan Hubicka committed -
From-SVN: r221581
GCC Administrator committed
-
- 22 Mar, 2015 4 commits
-
-
* config/i386/i386.c (def_builtin): Set deferred_isa_values for masks that can potentially include a builtin. (ix86_add_new_builtins): Introduce fast filter for isa values that cannot trigger builtin inclusion. From-SVN: r221577
Martin Liska committed -
* ipa-icf.c (sem_item::update_hash_by_addr_refs): New function. (sem_item::update_hash_by_local_refs): Likewise. (sem_variable::get_hash): Empty line is fixed. (sem_item_optimizer::execute): Include adding of hash references. (sem_item_optimizer::update_hash_by_addr_refs): New function. (sem_item_optimizer::build_hash_based_classes): Use local hash. * ipa-icf.h (sem_item::update_hash_by_addr_refs): New function. (sem_item::update_hash_by_local_refs): Likewise. From-SVN: r221576
Martin Liska committed -
re PR libfortran/59513 (Fortran runtime error: Sequential READ or WRITE not allowed after EOF marker, possibly use REWIND or BACKSPACE) 2015-03-22 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR libgfortran/59513 * gfortran.texi (Read/Write after EOF marker): New information. From-SVN: r221575
Jerry DeLisle committed -
PR ipa/65502 * ipa-comdats.c (enqueue_references): Walk through thunks. (ipa_comdats): Likewise. (set_comdat_group_1): New function. From-SVN: r221574
Jan Hubicka committed
-