- 09 Sep, 2010 22 commits
-
-
2010-09-09 Javier Miranda <miranda@adacore.com> * sem_ch3.adb (Is_Progenitor): Relocated to sem_type. (Replace_Type): Code cleanup. * sem_type.ads, sem_type.adb (Is_Progenitor): Relocated from sem_ch3 2010-09-09 Thomas Quinot <quinot@adacore.com> * exp_ch8.adb: Minor reformatting. 2010-09-09 Ed Schonberg <schonberg@adacore.com> * exp_ch9.adb, einfo.adb, einfo.ads: New attribute Corresponding_Protected_Entry. From-SVN: r164065
Arnaud Charlet committed -
2010-09-09 Ed Schonberg <schonberg@adacore.com> * exp_ch3.adb (Build_Untagged_Equality): Do not set alias of implicit inequality, it is always rewritten as the negation of the corresponding equality operation. * exp_ch8.adb (Expand_N_Subprogram_Renaming): If the subprogram renames the predefined equality of an untagged record, create a body at the point of the renaming, to capture the current meaning of equality for the type. 2010-09-09 Robert Dewar <dewar@adacore.com> * sem.adb, sem_warn.adb: Minor reformatting. From-SVN: r164064
Arnaud Charlet committed -
From-SVN: r164063
Arnaud Charlet committed -
2010-09-09 Ed Schonberg <schonberg@adacore.com> * sem_ch6.adb: Improve error message on untagged equality. * sem.adb (Semantics): Include subprogram bodies that act as spec. 2010-09-09 Javier Miranda <miranda@adacore.com> * sem_ch13.adb, exp_ch13.adb: Undo previous change, unneeded. From-SVN: r164062
Arnaud Charlet committed -
2010-09-09 Robert Dewar <dewar@adacore.com> * sem_ch13.adb, sem_ch6.adb, exp_ch3.adb: Minor reformatting. 2010-09-09 Robert Dewar <dewar@adacore.com> * einfo.adb (Is_Aggregate_Type): New function. * einfo.ads (Aggregate_Kind): New enumeration subtype (Is_Aggregate_Type): New function. * sem_type.adb (Is_Array_Class_Record_Type): Removed, replaced by Is_Aggregate_Typea. 2010-09-09 Robert Dewar <dewar@adacore.com> * exp_ch11.adb, frontend.adb, sem_attr.adb, sem_ch10.adb, sem_ch3.adb, sem_ch4.adb, sem_ch9.adb, sem_res.adb: Use Restriction_Check_Needed where appropriate. * restrict.ads, restrict.adb: Ditto. (Restriction_Check_Needed): New function From-SVN: r164061
Robert Dewar committed -
2010-09-09 Ed Schonberg <schonberg@adacore.com> * exp_ch9.ads (Find_Master_Scope): New function, extracted from Build_Master_Entity, to find the proper scope for the master entity of a type that may contain tasks, in the presence of transient scopes. * exp_ch9.adb (Build_Master_Entity) Use new function. * exp_ch3.adb (Build_Class_Wide_Master): ditto. 2010-09-09 Vincent Celier <celier@adacore.com> * prj-attr.adb: Add new attributes Leading_Library_Options and Linker'Leading_Switches. * snames.ads-tmpl: Add new standard names Leading_Library_Options and Leading_Switches. From-SVN: r164060
Arnaud Charlet committed -
sem_ch3.adb (Derive_Subprogram): The code that checks if a dispatching primitive covers some interface primitive... 2010-09-09 Javier Miranda <miranda@adacore.com> * sem_ch3.adb (Derive_Subprogram): The code that checks if a dispatching primitive covers some interface primitive is incomplete. Replace such code by the invocation of a new subprogram that provides this functionality. * sem_ch6.ads (Is_Interface_Conformant): Add missing documentation. * sem_ch6.adb (Check_Missing_Return): Minor reformating (Check_Convention): Complete if-statement conditition when reporting errors (to avoid assertion failure). * sem_ch13.adb (Make_Null_Procedure_Specs): This routine was previously located in exp_ch3. Relocated inside Analyze_Freeze_Entity. (Analyze_Freeze_Entity): Invoke routine that adds the spec of non overridden null interface primitives. * sem_type.adb (Is_Ancestor): If the parent of the partial view of a private type is an interface then use the parent of its full view to climb to its ancestor type. * sem_disp.ads, sem_disp.adb (Covers_Some_Interface): New subprogram. (Check_Dispatching_Operation): Extend assertion to handle wrappers of null interface primitives. (Is_Null_Interface_Primitive): New subprogram. * exp_ch3.adb (Make_Null_Procedure_Specs): Removed. (Expand_Freeze_Record_Type): Do not generate specs of null interface subprograms because they are now generated by Analyze_Freeze_Entity. From-SVN: r164059
Javier Miranda committed -
2010-09-09 Robert Dewar <dewar@adacore.com> * a-calfor.adb, sem_ch3.adb: Minor reformatting. 2010-09-09 Robert Dewar <dewar@adacore.com> * bindgen.adb (Gen_Restrictions_Ada): Avoid explicit enumeration ranges (Gen_Restrictions_C): Avoid explicit enumeration ranges (Set_String_Replace): New procedure * casing.ads (Known_Casing): New subtype declaration * prj-attr.ads (All_Case_Insensitive_Associative_Array): New subtype declaration * prj-dect.adb (Parse_Attribute_Declaration): Avoid enumeration range * prj-nmsc.adb (Check_Naming): Avoid unnecessary enumeration range * prj-strt.adb (Attribute_Reference): Avoid enumeration range test * prj.adb (Known_Casing): Moved to Casing spec (avoid enum range) * sem_ch13.adb (Adjust_Record_For_Reverse_Bit_Order): Avoid enumeration ranges * sem_res.adb (Resolve_Range): Check for enumeration subrange style rule * sem_type.adb (Is_Array_Class_Record_Type): New. * style.ads (Check_Enumeration_Subrange): New procedure * styleg.adb (Check_Enumeration_Subrange): New procedure * styleg.ads (Check_Enumeration_Subrange): New procedure * stylesw.adb Add handling for Style_Check_Enumeration_Subranges * stylesw.ads (Style_Check_Enumeration_Subranges): New flag * usage.adb: Add line for -gnatyE * vms_data.ads: Add entries for [NO]ENUMERATION_RANGES Add missing entry for NOBOOLEAN_OPERATORS * gnat_ugn.texi: Add documentation for -gnatyE 2010-09-09 Robert Dewar <dewar@adacore.com> * namet.adb (Initialize): Is now a dummy procedure (Reinitialize): New procedure Call Reinitialize from package initialization * namet.ads (Initialize): Is now a dummy procedure (Reinitialize): New procedure * clean.adb, gnat1drv.adb, gnatbind.adb, gnatcmd.adb, gnatlink.adb, gnatls.adb, gprep.adb, make.adb, prj-makr.adb: Remove obsolete call to Namet.Initialize. 2010-09-09 Bob Duff <duff@adacore.com> * sem_elab.adb, s-os_lib.ads: Minor comment fixes. 2010-09-09 Robert Dewar <dewar@adacore.com> * s-bitops.adb (Raise_Error): Add exception message From-SVN: r164058
Arnaud Charlet committed -
2010-09-09 Robert Dewar <dewar@adacore.com> * par-ch5.adb (Test_Statement_Required): Deal with Ada 2012 allowing no null statement after label. * sinfo.ads: Minor comment updates. From-SVN: r164057
Robert Dewar committed -
2010-09-09 Robert Dewar <dewar@adacore.com> * nlists.ads, nlists.adb (In_Same_List): New function. Use Node_Or_Entity_Id where appropriate. * par-labl.adb, sem_ch6.adb, sem_type.adb: Use In_Same_List. 2010-09-09 Robert Dewar <dewar@adacore.com> * restrict.ads, restrict.adb (Check_Wide_Character_Restriction): New procedure. * sem_ch3.adb: Use Check_Wide_Character_Restriction (Enumeration_Type_Declaration): Check violation of No_Wide_Characters * sem_ch8.adb (Find_Direct_Name): Check violation of No_Wide_Characters (Find_Expanded_Name): Check violation of No_Wide_Characters 2010-09-09 Robert Dewar <dewar@adacore.com> * par-ch5.adb: Minor reformatting. From-SVN: r164056
Robert Dewar committed -
2010-09-09 Robert Dewar <dewar@adacore.com> * prj-env.adb: Minor code reorganization. * par-ch3.adb: Minor reformatting. * gcc-interface/Make-lang.in: Update dependencies. 2010-09-09 Ed Schonberg <schonberg@adacore.com> * exp_ch9.adb (Build_Activation_Chain_Entity): The construct enclosing a task declaration can be an entry body. 2010-09-09 Javier Miranda <miranda@adacore.com> * exp_disp.adb (Make_DT): Decorate as "static" variables containing tags of library level tagged types. (Make_Tags): Disable backend optimizations about aliasing for declarations of access to dispatch tables. 2010-09-09 Ed Schonberg <schonberg@adacore.com> * sem_ch12.adb (Reset_Entity): If the entity is an itype created as a subtype for a null-excluding access type, recover the original subtype_mark to get the proper visibility on the original name. 2010-09-09 Ed Schonberg <schonberg@adacore.com> * exp_ch3.adb (Build_Untagged_Equality): For Ada2012, new procedure to create the primitive equality operation for an untagged record. The operation is the predefined equality if no record component has a user-defined equality, or if there is a user-defined equality for the type as a whole, or when the type is derived and it has an inherited equality. Otherwise the body of the operations is built as for tagged types. (Expand_Freeze_Record_Type): Call Build_Untagged_Equality when needed. (Make_Eq_Body): New function to create the expanded body of the equality operation for tagged and untagged records. In both cases the operation composes, and the primitive operation of each record component is used to generate the equality function for the type. * exp_ch4.adb (Expand_Composite_Equality): In Ada2012, if a component has an abstract equality defined, replace its call with a Raise_Program_Error. * sem_ch6.adb (New_Overloaded_Entity): if Ada2012, verify that a user-defined equality operator for an untagged record type does not happen after type is frozen, and appears in the visible part if partial view of type is not limited. 2010-09-09 Tristan Gingold <gingold@adacore.com> * gnatlbr.adb: Make Create_Directory more portable: use __gnat_mkdir. 2010-09-09 Bob Duff <duff@adacore.com> * gnat_ugn.texi: Remove incorrect statement about -E being the default. From-SVN: r164055
Arnaud Charlet committed -
2010-09-09 Pascal Obry <obry@adacore.com> * gnat_ugn.texi: Update doc on windows related topics. 2010-09-09 Geert Bosch <bosch@adacore.com> * s-fatgen.adb: Update comments. From-SVN: r164054
Arnaud Charlet committed -
2010-09-09 Robert Dewar <dewar@adacore.com> * par-ch4.adb (Box_Error): New procedure. 2010-09-09 Thomas Quinot <quinot@adacore.com> * sem.adb: Minor reformatting. 2010-09-09 Pascal Obry <obry@adacore.com> * prj-env.adb: Style fix, use /and then/ and /or else/. * gnat_ugn.texi: Fix typos. From-SVN: r164053
Arnaud Charlet committed -
re PR fortran/43665 (INTENT(IN) etc. optimization of calls: function annotations for noclobber/noescape arguments) 2010-09-09 Tobias Burnus <burnus@net-b.de> PR fortran/43665 * intrincic.texi (FGET, FGETC, FPUT, FPUTC, FSTAT, GETCWD, KILL, STAT): Show also syntax for the function version. * intrinsic.c (add_sym_1s_intent, add_sym_2s_intent, add_sym_3s_intent): Remove function. (add_sym_1s, add_sym_2s, add_sym_3s): Take always the intent as argument. (add_sym_2_intent): New function. (add_functions): Set intent for functions which modify the argument: fstat, fgetc, fget, hostnm, lstat, stat. Change argument name of hostnm from "a" to "c" (add_subroutines): Change add_sym_*s_intent to add_sym_*s and add intent to the add_sym_*s calls. From-SVN: r164052
Tobias Burnus committed -
PR c++/45588 * pt.c (tsubst) <case INTEGER_TYPE>: Call mark_rvalue_use before calling fold_decl_constant_value. * g++.dg/warn/Wunused-var-15.C: New test. From-SVN: r164051
Jakub Jelinek committed -
* rtl.def (DEBUG_IMPLICIT_PTR): New rtl code. * rtl.h (DEBUG_IMPLICIT_PTR_DECL): Define. * rtl.c (rtx_equal_p_cb, rtx_equal_p): Handle DEBUG_IMPLICIT_PTR. * print-rtl.c (print_rtx): Likewise. * cselib.c (rtx_equal_for_cselib_p, cselib_hash_rtx): Likewise. * cfgexpand.c (expand_debug_expr): Generate DEBUG_IMPLICIT_PTR for ADDR_EXPR with non-addressable object. * dwarf2out.c (enum dw_val_class): Add dw_val_class_decl_ref. (struct dw_val_struct): Add v.val_decl_ref. (dwarf_stack_op_name, output_loc_operands, output_loc_operands_raw): Handle DW_OP_GNU_implicit_pointer. (size_of_loc_descr): Likewise. Fix up DW_OP_call_ref size. (get_ref_die_offset_label): New function. (implicit_ptr_descriptor): New function. (mem_loc_descriptor): Handle DEBUG_IMPLICIT_PTR. (loc_descriptor): Likewise. (gen_variable_die): Put even definitions into decl_die_table. (resolve_addr_in_expr): Resolve still unresolved DW_OP_GNU_implicit_pointer operands, if it can't be resolved return false. (dwarf2out_finish): Call output_location_lists after outputting .debug_info and .debug_abbrev instead of before. * dwarf2.h (DW_OP_GNU_implicit_pointer): New. 2010-09-09 Roland McGrath <roland@redhat.com> * dwarf2out.c (DWARF_REF_SIZE): Define. (size_of_loc_descr): Use it for DW_OP_call_ref. From-SVN: r164050
Jakub Jelinek committed -
From-SVN: r164048
Eric Botcazou committed -
From-SVN: r164046
Alan Modra committed -
* doc/invoke.text: Reinstate mcmodel=medium. * config/rs6000/linux64.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Set CMODEL_MEDIUM as default. * config/rs6000/rs6000.h (enum rs6000_cmodel): Add CMODEL_MEDIUM. * config/rs6000/rs6000.c (rs6000_handle_option): Add mcmodel=medium. (toc_relative_ok, offsettable_ok_by_alignment): New functions. (rs6000_emit_move): Reinstate mcmodel=medium optimization. From-SVN: r164045
Alan Modra committed -
* c-c++-common/Wunused-var-12.c: Add -fno-common to options on 32-bit hppa*-*-hpux*. From-SVN: r164044
John David Anglin committed -
From-SVN: r164041
GCC Administrator committed -
* lto.c (real_file_count, real_file_decl_data): New static vars. (read_cgraph_and_symbols): Use it. From-SVN: r164037
Jan Hubicka committed
-
- 08 Sep, 2010 18 commits
-
-
re PR target/45250 (FAIL: tr1/5_numerical_facilities/special_functions/01_assoc_laguerre/check_nan.cc) PR target/45250 * config/pa/pa.md (nonlocal_goto): Restore hard frame pointer using hard_frame_pointer_rtx instead of virtual_stack_vars_rtx. (builtin_longjmp): Likewise. (allocate_stack): Use hard_frame_pointer_rtx instead of frame_pointer_rtx. * config/pa/pa-protos.h (pa_initial_elimination_offset): Declare. * config/pa/pa.c (pa_internal_arg_pointer): Declare. (pa_can_eliminate): Likewise. (TARGET_INTERNAL_ARG_POINTER): Define. (TARGET_CAN_ELIMINATE): Define. (hppa_expand_prologue): Use hard frame pointer instead of soft frame pointer. (hppa_expand_epilogue, pa_eh_return_handler_rtx): Likewise. (pa_internal_arg_pointer, pa_can_eliminate, pa_initial_elimination_offset): New. * config/pa/pa.h (FRAME_POINTER_REGNUM): Set to new general register. (HARD_FRAME_POINTER_REGNUM): Set to register three. (INITIAL_FRAME_POINTER_OFFSET): Delete. (ELIMINABLE_REGS, INITIAL_ELIMINATION_OFFSET, DWARF_FRAME_REGISTERS): Define. (DWARF_ALT_FRAME_RETURN_COLUMN, REGNO_OK_FOR_INDEX_P, REGNO_OK_FOR_BASE_P): Update to include soft frame pointer. * config/pa/pa32-regs.h (FIRST_PSEUDO_REGISTER): Increase by one. (FIXED_REGISTERS, CALL_USED_REGISTERS, REG_ALLOC_ORDER, REG_CLASS_CONTENTS, REGNO_REG_CLASS, REGISTER_NAMES): Update to include new soft frame pointer. * config/pa/pa64-regs.h: Likewise. From-SVN: r164036
John David Anglin committed -
numerical constant. (EH_RETURN_STACKADJ_RTX): Use CX_REG insted of numerical constant. From-SVN: r164033
Uros Bizjak committed -
PR debug/45531 * cfglayout.c (fixup_reorder_chain): Skip debug insns. From-SVN: r164032
Alexandre Oliva committed -
PR debug/45419 PR debug/45408 * tree-pretty-print.c (dump_generic_node): Disregard top-level qualifiers in otherwise equal MEM_REF pointer types. * fold-const.c (operand_equal_p): Compare pointer type of MEM_REFs. * tree.c (iterative_hash_expr): Hash the pointer type of MEM_REFs. From-SVN: r164031
Alexandre Oliva committed -
re PR target/44392 (libgcc compile with --enable-target-optspace (-Os) causes recursion in __bswapsi2) 2010-09-08 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com> PR target/44392 * config/arm/arm.md (bswapsi2): Handle condition correctly for armv6 and optimize_size. From-SVN: r164029
Ramana Radhakrishnan committed -
From-SVN: r164026
Nicola Pero committed -
From-SVN: r164025
Nicola Pero committed -
* objc/execute/exceptions/throw-nil.m: New test. * objc/execute/exceptions/handler-1.m: Updated to use the new objc_set_uncaught_exception_handler() function. * objc/execute/exceptions/matcher-1.m: New test. From-SVN: r164024
Nicola Pero committed -
* objc/objc-exception.h: New file. * exception.c (objc_set_uncaught_exception_handler): Implemented. (objc_set_exception_matcher): Implemented. (objc_exception_throw): Use the uncaught exception handler if set. (PERSONALITY_FUNCTION): Use the exception matcher instead of the hardcoded isKindOf. (isKindOf): Renamed to is_kind_of_exception_matcher. Tidied code up. Removed segmentation fault when value is 'nil'. * objc/objc-api.h (_objc_unexpected_exception): Mark as deprecated. * Makefile.in (exception.lo, exception_gc.lo): Use -Wno-deprecated-declarations when compiling. (OBJC_H): Added objc-exception.h From-SVN: r164023
Nicola Pero committed -
PR other/18555 * doc/cppopts.texi (-isysroot): Document Darwin behaviour. From-SVN: r164022
Francois-Xavier Coudert committed -
PR fortran/38282 * intrinsic.c (add_functions): Add B{G,L}{E,T}, DSHIFT{L,R}, MASK{L,R}, MERGE_BITS and SHIFT{A,L,R}. * gfortran.h: Define ISYM values for above intrinsics. * intrinsic.h (gfc_check_bge_bgt_ble_blt, gfc_check_dshift, gfc_check_mask, gfc_check_merge_bits, gfc_check_shift, gfc_simplify_bge, gfc_simplify_bgt, gfc_simplify_ble, gfc_simplify_blt, gfc_simplify_dshiftl, gfc_simplify_dshiftr, gfc_simplify_lshift, gfc_simplify_maskl, gfc_simplify_maskr, gfc_simplify_merge_bits, gfc_simplify_rshift, gfc_simplify_shifta, gfc_simplify_shiftl, gfc_simplify_shiftr, gfc_resolve_dshift, gfc_resolve_mask, gfc_resolve_merge_bits, gfc_resolve_shift): New prototypes. * iresolve.c (gfc_resolve_dshift, gfc_resolve_mask, gfc_resolve_merge_bits, gfc_resolve_shift): New functions. * check.c (gfc_check_bge_bgt_ble_blt, gfc_check_dshift, gfc_check_mask, gfc_check_merge_bits, gfc_check_shift): New functions. * trans-intrinsic.c (gfc_conv_intrinsic_dshift, gfc_conv_intrinsic_bitcomp, gfc_conv_intrinsic_shift, gfc_conv_intrinsic_merge_bits, gfc_conv_intrinsic_mask): New functions. (gfc_conv_intrinsic_function): Call above static functions. * intrinsic.texi: Document new intrinsics. * simplify.c (gfc_simplify_bge, gfc_simplify_bgt, gfc_simplify_ble, gfc_simplify_blt, gfc_simplify_dshiftl, gfc_simplify_dshiftr, gfc_simplify_lshift, gfc_simplify_maskl, gfc_simplify_maskr, gfc_simplify_merge_bits, gfc_simplify_rshift, gfc_simplify_shifta, gfc_simplify_shiftl, gfc_simplify_shiftr): New functions. * gfortran.dg/bit_comparison_1.F90: New test. * gfortran.dg/leadz_trailz_3.f90: New test. * gfortran.dg/masklr_2.F90: New test. * gfortran.dg/shiftalr_1.F90: New test. * gfortran.dg/merge_bits_2.F90: New test. * gfortran.dg/dshift_2.F90: New test. * gfortran.dg/bit_comparison_2.F90: New test. * gfortran.dg/masklr_1.F90: New test. * gfortran.dg/merge_bits_1.F90: New test. * gfortran.dg/dshift_1.F90: New test. * gfortran.dg/shiftalr_2.F90: New test. From-SVN: r164021
Francois-Xavier Coudert committed -
* objc.dg/type-stream-1.m: Replaced with a test that tests that functions from objc/typedstream.h are deprecated. From-SVN: r164016
Nicola Pero committed -
* objc/typedstream.h: Deprecate all functions in the file. This file is obsolete. * objc/Object.h ([+streamVersion:], [-read:], [-write:], [-awake]): Documented that these methods are deprecated. Added a brief description of the Object class and its relationship to the NSObject class. * Makefile.in: Compile archive.c and Object.m with -Wno-deprecated-declarations. From-SVN: r164015
Nicola Pero committed -
From-SVN: r164014
Jakub Jelinek committed -
* config/i386/i386-protos.h (ix86_can_use_return_insn_p, symbolic_reference_mentioned_p, ix86_expand_movmem, ix86_expand_setmem, ix86_expand_strlen, legitimate_pic_address_disp_p, ix86_binary_operator_ok, ix86_unary_operator_ok, ix86_match_ccmode, ix86_expand_int_movcc, ix86_expand_fp_movcc, ix86_expand_int_addcc, ix86_check_movabs, ix86_secondary_memory_needed): Change function prototype to bool. * config/i386/i386.c (return_in_memory_32, return_in_memory_64, return_in_memory_ms_64, ix86_check_movabs, symbolic_reference_mentioned_p, ix86_can_use_return_insn_p, legitimate_pic_address_disp_p, ix86_binary_operator_ok, ix86_unary_operator_ok, ix86_match_ccmode, ix86_expand_int_movcc, ix86_expand_fp_movcc, ix86_expand_int_addcc, ix86_expand_movmem, ix86_expand_setmem, ix86_expand_strlen, inline_secondary_memory_needed, ix86_secondary_memory_needed): Change to bool. Return true and false values. * config/i386/i386.md: Return true and false values. From-SVN: r164013
Uros Bizjak committed -
gcc: * doc/sourcebuild.texi (Effective-Target Keywords): Document run_expensive_tests. gcc/testsuite: * lib/target-supports.exp (check_effective_target_run_expensive_tests): New proc. * gcc.c-torture/compile/limits-fnargs.c: Use dg-require-effective-target run_expensive_tests. From-SVN: r164012
Rainer Orth committed -
* toplev.c (output_stack_usage): Use lbasename instead of basename. From-SVN: r164010
Rainer Orth committed -
2010-09-08 Martin Jambor <mjambor@suse.cz> PR other/45443 * doc/invoke.texi: Add -fipa-cp-clone to list of switches turned on at -O3. From-SVN: r164009
Martin Jambor committed
-