- 26 May, 2015 6 commits
-
-
From-SVN: r223666
Arnaud Charlet committed -
2015-05-26 Robert Dewar <dewar@adacore.com> * exp_ch4.adb (Expand_N_Op_Expon): Deal with problem of wrong order in calling Duplicate_Subexpr. * einfo.ads: Fix documentation of Object/Value size for scalar types. From-SVN: r223665
Robert Dewar committed -
exp_aggr.adb (Build_Array_Aggr_Code, Gen_Assign): If a component is default-initialized and its type has an invariant procedure... 2015-05-26 Ed Schonberg <schonberg@adacore.com> * exp_aggr.adb (Build_Array_Aggr_Code, Gen_Assign): If a component is default-initialized and its type has an invariant procedure, insert an invariant test after code for default-initialization of the component. From-SVN: r223664
Ed Schonberg committed -
2015-05-26 Gary Dismukes <dismukes@adacore.com> * einfo.ads, sem_util.adb, sem_ch4.adb: Minor reformatting. 2015-05-26 Robert Dewar <dewar@adacore.com> * exp_unst.adb, exp_unst.ads: Change to using Subps table index for making AREC entity names unique. 2015-05-26 Ed Schonberg <schonberg@adacore.com> * sem_cat.adb (Has_Stream_Attribute_Definition): If the type has aspect specifications, examine the corresponding list of representation items to determine whether there is a visible stream operation. The attribute definition clause generated from the aspect will be inserted at the freeze point of the type, which may be in the private part and not directly visible, but the aspect makes the operation available to a client. From-SVN: r223663
Arnaud Charlet committed -
2015-05-26 Robert Dewar <dewar@adacore.com> * sem_util.adb: Minor code reorganization. * sem_ch6.adb: Minor reformatting. From-SVN: r223662
Robert Dewar committed -
From-SVN: r223661
GCC Administrator committed
-
- 25 May, 2015 15 commits
-
-
utils.c (maybe_pad_type): Do not apply adjustment to original size for elementary types before issuing... * gcc-interface/utils.c (maybe_pad_type): Do not apply adjustment to original size for elementary types before issuing the size warning. From-SVN: r223657
Eric Botcazou committed -
* gcc-interface/targtyps.c (get_float_words_be): Rename into... (get_target_float_words_be): ...this. (get_words_be): Rename into... (get_target_words_be): ...this. (get_bytes_be): Rename into... (get_target_bytes_be): ...this. (get_bits_be): Rename into... (get_target_bits_be): ...this. * gcc-interface/gigi.h (standard_datatypes): Remove ADT_ptr_void_type. (ptr_void_type_node): Delete. (get_target_float_size): Likewise. (get_target_double_size): Likewise. (get_target_long_double_size): Likewise. (get_float_words_be): Likewise. (get_words_be): Likewise. (get_bytes_be): Likewise. (get_bits_be): Likewise. (get_target_float_words_be): Declare. (get_target_words_be): Likewise. (get_target_bytes_be): Likewise. (get_target_bits_be): Likewise. * gcc-interface/decl.c (gnat_to_gnu_entity): Replace ptr_void_type_node with ptr_type_node. (intrin_return_compatible_p): Likewise. * gcc-interface/trans.c (gigi): Likewise. * gcc-interface/utils2.c (maybe_wrap_malloc): Likewise. (maybe_wrap_free): Likewise. * gcc-interface/utils.c (maybe_pad_type): Remove superfluous space. * gcc-interface/misc.c (gnat_init): Do not set ptr_void_type_node. From-SVN: r223656
Eric Botcazou committed -
* gcc-interface/decl.c (elaborate_expression): Take a const string suffix instead of a tree. (elaborate_expression_1): Likewise. (elaborate_expression_2): Likewise. (gnat_to_gnu_entity): Adjust to above changes. (build_subst_list): Likewise. (get_entity_char): New static function. From-SVN: r223655
Eric Botcazou committed -
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Constant>: Move around. <E_Exception>: Merge with E_Variable case. <E_Variable>: Remove 'object' label. From-SVN: r223654
Eric Botcazou committed -
* gcc-interface/decl.c (gnat_to_gnu_entity): Minor tweak. * gcc-interface/trans.c (finalize_nrv_unc_r): Use CONSTRUCTOR_ELT. * gcc-interface/utils.c (convert): Likewise and simplify. (remove_conversions): Likewise. * gcc-interface/utils2.c (compare_fat_pointers): Likewise. (build_unary_op): Likewise and simplify. From-SVN: r223653
Eric Botcazou committed -
* gcc-interface/gigi.h (build_atomic_load): Adjust prototype. (build_atomic_store): Likewise. (build_load_modify_store): Declare. (VECTOR_TYPE_P): Delete. * gcc-interface/decl.c (gnat_to_gnu_entity): Replace Is_Atomic with Is_Atomic_Or_VFA throughout. <E_Array_Type>: Build a variant of the XUA type instead of forcing TYPE_VOLATILE on it. <E_Array_Subtype>: Use the main variant of the base type. Do not force TYPE_VOLATILE on the type being built. <E_Record_Type>: Likewise. <E_Array_Subtype>: Likewise. <E_Subprogram_Type>: Rename local variable. Add Atomic qualifier in conjunction with Volatile on types if needed. Force BLKmode for by-ref types only at the end of the processing. Change qualifiers only after changing the mode of the type. Set TYPE_UNIVERSAL_ALIASING_P on the type directly. (check_ok_for_atomic_type): Issue specific error message for VFA. (gnat_to_gnu_component_type): Replace Is_Atomic with Is_Atomic_Or_VFA throughout. * gcc-interface/misc.c (gnat_get_alias_set): Test TYPE_UNIVERSAL_ALIASING_P on the type directly. * gcc-interface/trans.c (lvalue_required_p): Replace Is_Atomic with Is_Atomic_Or_VFA throughout. Add missing guard. (node_is_atomic): New predicate. (node_has_volatile_full_access): Likewise. (gnat_strip_type_conversion): New function. (outer_atomic_access_required_p): New predicate. (atomic_sync_required_p): Rename into... (atomic_access_required_p): ...this. Add SYNC parameter, scan the parent node first and then look for the atomic setting. Add support for Volatile_Full_Access. (Call_to_gnu): Add atomic_access and outer_atomic_access parameters and adjusts calls to above functions. Use load-modify-store sequence for updates of In/Out and Out parameters if required, as well as for moving the result to the target if required. Add couple of missing guards. (gnat_to_gnu): Adjust calls to above functions. <N_Object_Renaming_Declaration>: If the renamed object has side-effects evaluate only its address. <N_Assignment_Statement>: Adjust call to Call_to_gnu. Use load-modify store sequence if required. <N_Function_Call>: Adjust call to Call_to_gnu. (extract_values): Adjust comment. * gcc-interface/utils2.c (build_atomic_load): Add SYNC parameter and use relaxed memory model if it is not set. (build_atomic_store): Likewise. (call_is_atomic_load): New predicate. (build_load_modify_store): New function. (build_binary_op) <MODIFY_EXPR>: Accept SAVE_EXPR on the LHS. (gnat_stabilize_reference) <CALL_EXPR>: Deal with atomic loads. From-SVN: r223652
Eric Botcazou committed -
* config/i386/i386.h (enum reg_class): Move CLOBBERED_REGS prior to Q_REGS. Expand comment. (REG_CLASS_NAMES): Ditto. (REG_CLASS_CONTENTS): Ditto. testsuite: * gcc.target/i386/pr66232-1.c: Adjust scan pattern. * gcc.target/i386/pr66232-3.c: Likewise. From-SVN: r223650
Alexander Monakov committed -
PR target/66274 * config/i386/i386.c (print_reg): Only print "r" for TARGET_64BIT when LEGACY_INT_REGNO_P is processed. testsuite/ChangeLog: PR target/66274 * gcc.target/i386/pr66274.c: New test. From-SVN: r223649
Uros Bizjak committed -
From-SVN: r223648
Alexander Monakov committed -
avr.c (avr_out_load_psi_reg_no_disp_tiny): Restore base register if not marked dead/unused, before return. * config/avr/avr.c (avr_out_load_psi_reg_no_disp_tiny): Restore base register if not marked dead/unused, before return. From-SVN: r223647
Pitchumani Sivanupandi committed -
From-SVN: r223646
Marek Polacek committed -
* gcc-interface/ada-tree.h (DECL_RENAMING_GLOBAL_P): Rename into... (DECL_GLOBAL_NONCONSTANT_RENAMING_P): ...this. * gcc-interface/gigi.h (record_global_renaming_pointer): Delete. (invalidate_global_renaming_pointers): Likewise. (record_global_nonconstant_renaming): New. (invalidate_global_nonconstant_renamings): Likewise. (get_inner_constant_reference): Likewise. (gnat_constant_reference_p): Likewise. * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Adjust to above and register the renaming pointer only if the object is non-constant. (elaborate_expression_1): Call get_inner_constant_reference instead of get_inner_reference. * gcc-interface/trans.c (fold_constant_decl_in_expr): Minor tweak. (Identifier_to_gnu): Adjust to above and do not recheck the renamed object before substituting it. (Compilation_Unit_to_gnu): Adjust to above renaming. Minor tweaks. (gnat_to_gnu) <N_Object_Renaming_Declaration>: Do not return the result at the global level. (N_Exception_Renaming_Declaration): Likewise. * gcc-interface/utils.c (global_renaming_pointers): Rename into... (global_nonconstant_renamings): ...this. (destroy_gnat_utils): Adjust to above renaming. (record_global_renaming_pointer): Rename into... (record_global_nonconstant_renaming): ...this. (invalidate_global_renaming_pointers): Rename into... (invalidate_global_nonconstant_renamings): ...this and do not recheck the renamed object before invalidating. * gcc-interface/utils2.c (gnat_stabilize_reference): Minor tweak. (get_inner_constant_reference): New public function. (gnat_constant_reference_p): New predicate. From-SVN: r223644
Eric Botcazou committed -
2015-05-25 Javier Miranda <miranda@adacore.com> * einfo.ads, einfo.adb (Has_Out_Or_In_Out_Parameter): This attribute is now present in subprograms, generic subprograms, entries and entry families. * sem_ch6.adb (Set_Formal_Mode): Set As_Out_Or_In_Out_Parameter on entries, entry families, subprograms and generic subprograms. * sem_ch12.adb (Analyze_Generic_Subprogram_Declaration): Minor code reorganization to ensure that the Ekind attribute of the subprogram entity is set before its formals are processed. Required to allow the use of the attribute Has_Out_Or_In_Out_Parameter on the subprogram entity. * sem_aggr.adb (Resolve_Aggregate, Resolve_Extension_Aggregate): Perform the check on writable actuals only if the value of some component of the aggregate involves calling a function with out-mode parameters. (Resolve_Record_Aggregate): Propagate the Check_Actuals flag to the internally built aggregate. * sem_ch3.adb (Build_Derived_Record_Type, Record_Type_Declaration): Perform the check on writable actuals only if the initialization of some component involves calling a function with out-mode parameters. * sem_ch4.adb (Analyze_Arithmetic_Op, Analyze_Comparison_Op, Analyze_Equality_Op, Analyze_Logical_Op, Analyze_Membership_Op, Analyze_Range): Check writable actuals only if the subtrees have a call to a function with out-mode parameters (Analyze_Call.Check_Writable_Actuals): New subprogram. If the call has out or in-out parameters then mark its outermost enclosing construct as a node on which the writable actuals check must be performed. (Analyze_Call): Check if the flag must be set and if the outermost enclosing construct. * sem_util.adb (Check_Function_Writable_Actuals): Code cleanup and reorganization. We skip processing aggregate discriminants since their precise analysis involves two phases traversal. * sem_res.adb (Resolve_Actuals, Resolve_Arithmetic_Op, Resolve_Logical_Op, Resolve_Membership_Op): Remove call to check_writable_actuals. From-SVN: r223643
Javier Miranda committed -
2015-05-25 Andreas Tobler <andreast@gcc.gnu.org> * gcc.target/i386/pr64317.c: Use 'dg-require-effective-target ia32' and 'dg-require-effective-target pie'. From-SVN: r223642
Andreas Tobler committed -
From-SVN: r223640
GCC Administrator committed
-
- 24 May, 2015 15 commits
-
-
cp/ PR c++/66243 * decl.c (build_enumerator): Don't silently convert scoped enums. testsuite/ PR c++/66243 * g++.dg/cpp0x/pr66243.C: New. From-SVN: r223636
Nathan Sidwell committed -
From-SVN: r223635
Eric Botcazou committed -
From-SVN: r223634
Uros Bizjak committed -
PR lto/66180 * ipa-devirt.c (type_with_linkage): Check that TYPE_STUB_DECL is set; check for assembler name at LTO time. (type_in_anonymous_namespace): Remove hacks, check that all anonymous types are called "<anon>" (odr_type_p): Simplify; add check for "<anon>" (odr_subtypes_equivalent): Add odr_type_p check. * tree.c (need_assembler_name_p): Even anonymous namespace needs assembler name. * mangle.c (mangle_decl): Mangle anonymous namespace types as "<anon>". * g++.dg/lto/pr66180_0.C: New testcase. * g++.dg/lto/pr66180_1.C: New testcase. From-SVN: r223633
Jan Hubicka committed -
PR fortran/66257 gcc/fortran/ * resolve.c (resolve_actual_arglist): Don't throw an error if the argument with procedure pointer component is not a variable. gcc/testsuite/ * typebound_call_27.f90: New file. From-SVN: r223631
Mikael Morin committed -
* ipa-utils.h (method_class_type): Remove. * cgraphunit.c (walk_polymorphic_call_targets): Use TYPE_METHOD_BASETYPE. * ipa-devirt.c (type_in_anonymous_namespace_p): Check that it is called on main variants only. (method_class_type): Remove. (update_type_inheritance_graph): Use TYPE_METHOD_BASETYPE. (build_type_inheritance_graph): Likewise. * ipa-icf.c (sem_function::equals_wpa): Likewise. * pa-polymorphic-call.c (decl_maybe_in_construction_p, check_stmt_for_type_change): Use TYPE_METHOD_BASETYPE. From-SVN: r223629
Jan Hubicka committed -
* tree.c (prototype_p, virtual_method_call_p, obj_type_ref_class, is_typedef_decl, typedef_variant_p): Constify. * tree.h (prototype_p, virtual_method_call_p, obj_type_ref_class, is_typedef_decl, typedef_variant_p): Constify. From-SVN: r223628
Jan Hubicka committed -
gcc/ChangeLog: 2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * defaults.h (gen_tablejump): New function. (HAVE_tablejump): Add default value. * expr.c: Adjust. * stmt.c: Likewise. From-SVN: r223625
Trevor Saunders committed -
gcc/ChangeLog: 2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * defaults.h (gen_store_multiple): New function. (HAVE_store_multiple): Add default value. * expr.c (move_block_from_reg): Adjust. From-SVN: r223624
Trevor Saunders committed -
gcc/ChangeLog: 2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * defaults.h (gen_load_multiple): New function. (HAVE_load_multiple): Add default value. * expr.c (move_block_to_reg): Adjust. From-SVN: r223623
Trevor Saunders committed -
gcc/ChangeLog: 2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * defaults.h (gen_mem_signal_fence): New function. (HAVE_mem_signal_fence): Add default value. * optabs.c: Adjust. From-SVN: r223622
Trevor Saunders committed -
gcc/ChangeLog: 2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * defaults.h (gen_memory_barrier): New function. (HAVE_memory_barrier): Add default value. * optabs.c: Adjust. From-SVN: r223621
Trevor Saunders committed -
gcc/ChangeLog: 2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * defaults.h (gen_mem_thread_fence): New function. (HAVE_mem_thread_fence): Add default definition. * optabs.c: Adjust. From-SVN: r223620
Trevor Saunders committed -
gcc/ChangeLog: 2015-05-23 Trevor Saunders <tbsaunde+gcc@tbsaunde.org> * combine.c (find_split_point): Check the value of HAVE_lo_sum instead of if it is defined. (combine_simplify_rtx): Likewise. * lra-constraints.c (process_address_1): Likewise. * config/darwin.c: Adjust. * genconfig.c (main): Always define HAVE_lo_sum. From-SVN: r223619
Trevor Saunders committed -
From-SVN: r223618
GCC Administrator committed
-
- 23 May, 2015 4 commits
-
-
re PR fortran/44054 (Handle -Werror, -Werror=, -fdiagnostics-show-option, !GCC$ diagnostic (pragmas) and color) gcc/fortran/ChangeLog: 2015-05-24 Manuel López-Ibáñez <manu@gcc.gnu.org> PR fortran/44054 * gfortran.h (struct gfc_error_buf): Rename as gfc_error_buffer. Move closer to push, pop and free methods. Reimplement using an output_buffer. * error.c (errors, warnings, warning_buffer, cur_error_buffer): Delete everywhere in this file. (error_char): Delete all contents. (gfc_increment_error_count): Delete. (gfc_error_now): Update comment. Set error_buffer.flag. (gfc_warning_check): Do not handle warning_buffer. (gfc_error_1): Delete. (gfc_error_now_1): Delete. (gfc_error_check): Simplify. (gfc_move_error_buffer_from_to): Renamed from gfc_move_output_buffer_from_to. (gfc_push_error): Handle only gfc_error_buffer. (gfc_pop_error): Likewise. (gfc_free_error): Likewise. (gfc_get_errors): Remove warnings and errors. (gfc_diagnostics_init): Use static error_buffer. (gfc_error_1,gfc_error_now_1): Delete declarations. * symbol.c, decl.c, trans-common.c, data.c, expr.c, expr.c, frontend-passes.c, resolve.c, match.c, parse.c: Replace gfc_error_1 with gfc_error and gfc_error_now_1 with gfc_error_1 everywhere. * f95-lang.c (gfc_be_parse_file): Do not update errorcount and warningcount here. * primary.c (match_complex_constant): Replace gfc_error_buf and output_buffer with gfc_error_buffer. From-SVN: r223614
Manuel López-Ibáñez committed -
cp/ PR c++/65936 * pt.c (lookup_template_class_1): Copy may_alias attribute too. testsuite/ PR c++/65936 * g++.dg/template/pr65936.C: New. From-SVN: r223613
Nathan Sidwell committed -
2015-05-20 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org> * genmatch.c (parser::parse_operation): Reject expanding operator-list inside 'for'. From-SVN: r223612
Prathamesh Kulkarni committed -
From-SVN: r223611
Prathamesh Kulkarni committed
-