summaryrefslogtreecommitdiffstats
path: root/gcc/ada/gcc-interface
Commit message (Collapse)AuthorAgeFilesLines
...
* * gcc-interface/decl.c (purpose_member_field): New static function.ebotcazou2009-10-271-3/+21
| | | | | | | (annotate_rep): Use it instead of purpose_member. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153616 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Whenebotcazou2009-10-241-9/+10
| | | | | | | | processing the parent type, build the COMPONENT_REF for a discriminant with the proper type. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153528 138bc75d-0d04-0410-961f-82ee72b054a4
* libada/ebotcazou2009-10-241-2/+15
| | | | | | | | | | | | | | | | | | | | * Makefile.in (GNATLIBCFLAGS_FOR_C): New variable. (LIBADA_FLAGS_TO_PASS): Add GNATLIBCFLAGS_FOR_C. * configure.ac: Include config/unwind_ipinfo.m4. Check for _Unwind_GetIPInfo. * configure: Regenerate. gcc/ada/ * init.c (__gnat_adjust_context_for_raise): Mention _Unwind_GetIPInfo. * gcc-interface/Makefile.in (GNATLIBCFLAGS_FOR_C): Add HAVE_GETIPINFO. Pass GNATLIBCFLAGS_FOR_C to recursive invocations. gcc/testsuite/ * gnat.dg/null_pointer_deref1.adb: New test. * gnat.dg/null_pointer_deref2.adb: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153525 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interfaces/decl.c (build_subst_list): Convert the expression ofebotcazou2009-10-211-6/+10
| | | | | | | the constraint to the type of the discriminant. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153054 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interfaces/decl.c (gnat_to_gnu_entity): Do not create a newebotcazou2009-10-211-2/+5
| | | | | | | | TYPE_DECL when a type is padded if there is already one and reset TYPE_STUB_DECL in this case. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153053 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interfaces/utils.c (create_subprog_decl): Do not redefineebotcazou2009-10-211-2/+2
| | | | | | | main_identifier_node. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153052 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/utils.c (convert): When converting to a padded typeebotcazou2009-10-171-4/+9
| | | | | | | | with an inner type of self-referential size, pad the expression before doing the unchecked conversion. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@152935 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/utils2.c (build_binary_op) <ARRAY_RANGE_REF>: Makeebotcazou2009-10-171-0/+6
| | | | | | | sure the element type is consistent. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@152934 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/trans.c (addressable_p): Handle bitwise operations.ebotcazou2009-10-171-0/+4
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@152932 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/ada-tree.h (TYPE_FAT_POINTER_P): Swap with...ebotcazou2009-10-166-180/+135
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (TYPE_IS_FAT_POINTER_P): ...this. (TYPE_THIN_POINTER_P): Rename into... (TYPE_IS_THIN_POINTER_P): ...this. (TYPE_FAT_OR_THIN_POINTER_P): Rename into... (TYPE_IS_FAT_OR_THIN_POINTER_P): ...this. (TYPE_IS_PADDING_P): Change definition, move old one to... (TYPE_PADDING_P): ...this. * gcc-interface/decl.c (gnat_to_gnu_entity): Adjust for above changes. (get_unpadded_type): Likewise. (gnat_to_gnu_component_type): Likewise. (gnat_to_gnu_param): Likewise. (relate_alias_sets): Likewise. (make_packable_type): Likewise. (maybe_pad_type): Likewise. (gnat_to_gnu_field): Likewise. (is_variable_size): Likewise. (annotate_object): Likewise. (validate_size): Likewise. (set_rm_size): Likewise. (make_type_from_size): Likewise. (rm_size): Likewise. * gcc-interface/misc.c (gnat_print_type): Likewise. (gnat_get_alias_set): Likewise. * gcc-interface/trans.c (Identifier_to_gnu): Likewise. (Attribute_to_gnu): Likewise. (call_to_gnu): Likewise. (gnat_to_gnu): Likewise. (add_decl_expr): Likewise. (convert_with_check): Likewise. (addressable_p): Likewise. (maybe_implicit_deref): Likewise. (protect_multiple_eval): Likewise. (gnat_stabilize_reference_1): Likewise. * gcc-interface/utils.c (gnat_pushdecl): Likewise. (finish_record_type): Likewise. (rest_of_record_type_compilation): Likewise. (create_type_decl): Likewise. (gnat_types_compatible_p): Likewise. (build_template): Likewise. (convert_vms_descriptor64): Likewise. (convert_vms_descriptor32): Likewise. (build_unc_object_type_from_ptr): Likewise. (update_pointer_to): Likewise. (convert_to_fat_pointer): Likewise. (convert_to_fat_pointer): Likewise. (convert): Likewise. (remove_conversions): Likewise. (maybe_unconstrained_array): Likewise. (unchecked_convert): Likewise. (handle_vector_type_attribute): Likewise. * gcc-interface/utils2.c (build_binary_op): Likewise. (build_unary_op): Likewise. (build_allocator): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@152917 138bc75d-0d04-0410-961f-82ee72b054a4
* * exp_dbug.ads: Adjust type names in comments.ebotcazou2009-10-164-53/+39
| | | | | | | | | | | | | | | * gcc-interface/decl.c (maybe_pad_type): Remove NAME_TRAILER parameter, add new IS_COMPONENT_TYPE parameter. Adjust. Remove dead code. (gnat_to_gnu_entity): Adjust for above change. (gnat_to_gnu_component_type): Likewise. (gnat_to_gnu_field): Likewise. * gcc-interface/trans.c (call_to_gnu): Likewise. Do not unnecessarily call max_size. * gcc-interface/utils.c (finish_record_type): Remove obsolete code. * gcc-interface/gigi.h (maybe_pad_type): Adjust prototype. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@152916 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>:ebotcazou2009-10-021-4/+12
| | | | | | | | | Generate an XVZ variable alongside the XVS type if the size is not constant. (maybe_pad_type): Minor tweak. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@152420 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/decl.c (check_ok_for_atomic): Do nothing if the typeebotcazou2009-10-021-0/+5
| | | | | | | doesn't come from source. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@152418 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/decl.c (gnat_to_gnu_component_type): Force at leastebotcazou2009-10-021-0/+12
| | | | | | | | unit size for the component size of an array with aliased components. (maybe_pad_type): Do not warn for MAX_EXPR. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@152417 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Factor outebotcazou2009-09-291-150/+98
| | | | | | | | | | common code processing the component type into... <E_Array_Subtype>: Likewise. (gnat_to_gnu_component_type): ...this new static function. (maybe_pad_type): Minor cleanup. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@152273 138bc75d-0d04-0410-961f-82ee72b054a4
* * decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Rewrite the handlingebotcazou2009-09-291-159/+479
| | | | | | | | | | | | | | | | | | | of constrained discriminated record subtypes. (components_to_record): Declare the type of the variants and of the qualified union. (build_subst_list): Move around. (compute_field_positions): Rename into... (build_position_list): ...this. Return a TREE_VEC. (annotate_rep): Adjust for above renaming. (build_variant_list): New static function. (create_field_decl_from): Likewise. (get_rep_part): Likewise. (get_variant_part): Likewise. (create_variant_part_from): Likewise. (copy_and_substitute_in_size): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@152272 138bc75d-0d04-0410-961f-82ee72b054a4
* ada/hainque2009-09-281-1/+12
| | | | | | | | | | | | | * gcc-interface/targtyps.c * (get_target_default_allocator_alignment): Account for observable alignments out of default allocators. testsuite/ * gnat.dg (tagged_alloc_free.adb): New testcase. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@152243 138bc75d-0d04-0410-961f-82ee72b054a4
* * except.h (struct eh_region_d): Add use_cxa_end_cleanup.rth2009-09-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * except.c (gen_eh_region): Set it. (duplicate_eh_regions_1): Copy it. * tree-eh.c (lower_resx): Use it to determine which function to call to resume. * langhooks.h (struct lang_hooks): Add eh_use_cxa_end_cleanup. * langhooks-def.h (LANG_HOOKS_EH_USE_CXA_END_CLEANUP): New. * builtins.def (BUILT_IN_CXA_END_CLEANUP): New. * tree.c (build_common_builtin_nodes): Remove parameter. Build BUILT_IN_CXA_END_CLEANUP if necessary. * tree.h (build_common_builtin_nodes): Update decl. * c-common.c (c_define_builtins): Update call to build_common_builtin_nodes. gcc/ada/ * gcc-interface/utils.c (gnat_install_builtins): Update call to build_common_builtin_nodes. gcc/cp/ * cp-objcp-common.h (LANG_HOOKS_EH_USE_CXA_END_CLEANUP): New. gcc/fortran/ * f95-lang.c (gfc_init_builtin_functions): Update call to build_common_builtin_nodes. gcc/java/ * builtins.c (initialize_builtins): Update call to build_common_builtin_nodes. * lang.c (LANG_HOOKS_EH_USE_CXA_END_CLEANUP): New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@152241 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Filter outebotcazou2009-09-262-36/+79
| | | | | | | | | | | | | | | | | negative size for the array dimensions like in the constrained case. <E_Array_Subtype>: Do not create an artificially non-constant high bound if the low bound is non-constant. Minor tweaks. * gcc-interface/trans.c (lvalue_required_p): Add CONSTANT parameter and turn ALIASED into a boolean parameter. Adjust calls to self. <N_Attribute_Reference>: Return 1 for more attributes. <N_Object_Renaming_Declaration>: Return 1 for non-constant objects. <N_Assignment_Statement>: Return 1 for the LHS. (Identifier_to_gnu): Adjust calls to lvalue_required_p. (call_to_gnu): Be prepared for wrapped boolean rvalues. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@152201 138bc75d-0d04-0410-961f-82ee72b054a4
* ada/hainque2009-09-255-23/+256
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gcc-interface/ada-tree.h (TYPE_REPRESENTATIVE_ARRAY): New language specific node. Representative array type for VECTOR_TYPE entities. * gcc-interface/utils.c (handle_vector_type_attribute): New handler. Turn an ARRAY_TYPE entity into a VECTOR_TYPE. (gnat_types_compatible_p): Handle VECTOR_TYPEs. (convert): Likewise. Arrange to produce VECTOR_CST out of constant array aggregates for VECTOR_TYPE entities. (unchecked_convert): Likewise. (maybe_vector_array): New function. If EXP has VECTOR_TYPE, return EXP converted to the associated TYPE_REPRESENTATIVE_ARRAY. (handle_pure_attribute, handle_sentinel_attribute, handle_noreturn_attribute, handle_malloc_attribute, handle_vector_size_attribute): Replace uses of qE format by qs. Remove GCC_DIAG_STYLE definition. * gcc-interface/trans.c (gnat_to_gnu) <N_Indexed_Component>: Convert vector input to representative array type on entry. <N_Op_Eq, etc>: Likewise. * gcc-interface/gigi.h (maybe_vector_array): Declare. (VECTOR_TYPE_P): New predicate. * gcc-interface/misc.c (gnat_print_type): Handle VECTOR_TYPE. testsuite/ * gnat.dg/sse_nolib.adb: New testcase. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@152165 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/ada.h: Fix outdated comment.ebotcazou2009-09-246-227/+140
| | | | | | | | | | | | | | | | | | | | | | | | * gcc-interface/ada-tree.h (SET_TYPE_RM_VALUE): Use MARK_VISITED in lieu of mark_visited. * gcc-interface/gigi.h (mark_visited): Change type of parameter. (MARK_VISITED): New macro. (gnat_truthvalue_conversion): Delete. * gcc-interface/decl.c (gnat_to_gnu_entity): Use MARK_VISITED in lieu of mark_visited. (annotate_rep): Fix formatting and tidy. (compute_field_positions): Get rid of useless variable. * gcc-interface/trans.c (gnat_to_gnu): Retrieve the Nkind of the GNAT node only once. Use IN operator for the Nkind in more cases. Remove calls to gnat_truthvalue_conversion. (mark_visited): Change type of parameter and adjust. (mark_visited_r): Dereference TP only once. (add_decl_expr): Use MARK_VISITED in lieu of mark_visited. * gcc-interface/utils2.c (gnat_truthvalue_conversion): Delete. (build_binary_op): Remove calls to gnat_truthvalue_conversion. (build_unary_op): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@152121 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/Makefile.in (LIBGNAT_TARGET_PAIRS): Simplify test fordavek2009-09-241-1/+1
| | | | | | | | a-except% in target pairs list; don't (implicitly) compare whitespace. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@152116 138bc75d-0d04-0410-961f-82ee72b054a4
* * cgraphunit.c (cgraph_lower_function): Revert last change.jakub2009-09-241-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * targhooks.c (default_static_chain): Use !DECL_STATIC_CHAIN instead of DECL_NO_STATIC_CHAIN. * tree-cfg.c (verify_gimple_call): Likewise. * tree-nested.c (get_chain_decl, get_chain_field, convert_tramp_reference_op, convert_gimple_call): Likewise. (convert_all_function_calls): Likewise. Always set or clear DECL_STATIC_CHAIN initially, for !n->outer clear it. (lower_nested_functions): Remove DECL_NO_STATIC_CHAIN checking code. * c-parser.c (c_parser_declaration_or_fndef): Set DECL_STATIC_CHAIN if nested. * print-tree.c (print_node): Handle DECL_STATIC_CHAIN instead of DECL_NO_STATIC_CHAIN. * config/i386/i386.c (ix86_static_chain): Use !DECL_STATIC_CHAIN instead of DECL_NO_STATIC_CHAIN. (ix86_function_regparm, find_drap_reg): Likewise. Don't test decl_function_context. * varasm.c (initializer_constant_valid_p): Likewise. * tree.h (DECL_NO_STATIC_CHAIN): Renamed to ... (DECL_STATIC_CHAIN): ... this. * config/moxie/moxie.c (moxie_static_chain): Use !DECL_STATIC_CHAIN instead of DECL_NO_STATIC_CHAIN. * method.c (make_thunk, make_alias_for): Don't set DECL_NO_STATIC_CHAIN. * decl.c (builtin_function_1, grokfndecl): Likewise. * lex.c (build_lang_decl): Likewise. * gcc-interface/utils.c (gnat_pushdecl): Don't set DECL_NO_STATIC_CHAIN, set DECL_STATIC_CHAIN for nested functions. * testsuite/gcc.target/i386/pr12329.c: Adjust. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@152114 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/trans.c (Attribute_to_gnu) <Attr_Size>: Stripebotcazou2009-09-161-3/+10
| | | | | | | | conversions between original and packable version of types from the expression. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@151757 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/decl.c (gnat_to_gnu_field): Add DEBUG_INFO_P parameter.ebotcazou2009-09-161-16/+37
| | | | | | | | | | | | If a padding type was made for the field, declare it. (components_to_record): Add DEBUG_INFO_P parameter. Adjust call to gnat_to_gnu_field and call to self. (gnat_to_gnu_entity) <E_Array_Type>: Do not redeclare padding types. <E_Array_Subtype>: Likewise. Adjust calls to gnat_to_gnu_field and components_to_record. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@151755 138bc75d-0d04-0410-961f-82ee72b054a4
* * builtins.c (expand_builtin_synchronize): Use gimple_build_asm_vec.rth2009-09-141-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * cfgbuild.c (make_edges): Handle asm goto. * cfglayout.c (fixup_reorder_chain): Likewise. * cfgrtl.c (patch_jump_insn): Likewise. * gimple-pretty-print.c (dump_gimple_asm): Likewise. * gimple.c (gimple_build_asm_1): Add and use nlabels parameter. (gimple_build_asm_vec): Add and use labels parameter. (gimple_build_asm): Remove. (walk_gimple_asm): Walk labels too. * gimple.def (GIMPLE_ASM): Update docs. * gimple.h: Update decls. (struct gimple_statement_asm): Change nc to use unsigned char; add nl member. (gimple_asm_nlabels): New. (gimple_asm_label_op, gimple_asm_set_label_op): New. * gimplify.c (gimplify_asm_expr): Copy labels from ASM_EXPR into gimple_build_asm_vec. * jump.c (mark_jump_label_asm): New. (mark_jump_label): Use it. (redirect_jump_1): Handle asm goto. (invert_jump_1): Soft fail if X is null. * recog.c (extract_asm_operands): New. (asm_noperands): Use it; handle asm labels. (decode_asm_operands): Use extract_asm_operands. (asm_operand_ok): Properly handle empty string. * reg-stack.c (get_asm_operands_in_out): Rename from get_asm_operand_n_inputs; use extract_asm_operands; return both inputs and outputs by reference; update all callers. * rtl.def (ASM_OPERANDS): Add label vector as operand 6. * rtl.h (ASM_OPERANDS_LABEL_VEC): New. (ASM_OPERANDS_LABEL_LENGTH, ASM_OPERANDS_LABEL): New. (ASM_OPERANDS_SOURCE_LOCATION): Renumber. (extract_asm_operands): Declare. * stmt.c (expand_asm_operands): Add and use labels parameter. (check_unique_operand_names): Likewise. (resolve_asm_operand_names, resolve_operand_name_1): Likewise. (expand_asm_stmt): Handle asm labels. * tree-cfg.c (make_gimple_asm_edges): New. (make_edges): Use it. (cleanup_dead_labels): Handle asm labels. (is_ctrl_altering_stmt): Likewise. (gimple_redirect_edge_and_branch): Likewise. * tree.def (ASM_EXPR): Add 5th operand. * tree.h (ASM_LABELS): New. (resolve_asm_operand_names): Update decl. * c-parser.c (c_parser_asm_statement): Parse asm goto. (c_parser_asm_goto_operands): New. * c-tree.h (build_asm_expr): Update decl. * c-typeck.c (build_asm_expr): Add and use labels parameter. * doc/extend.texi: Document asm goto. gcc/ada/ * gcc-interface/trans.c (Pragma_to_gnu): Use build5 for ASM_EXPR. gcc/cp/ * cp-tree.h (finish_asm_stmt): Update decl. * parser.c (cp_parser_asm_definition): Parse asm goto. (cp_parser_asm_label_list): New. * pt.c (tsubst_copy_asm_operands): Don't recurse on labels. (tsubst_expr): Handle asm labels. * semantics.c (finish_asm_stmt): Add and use labels parameter. gcc/testsuite/ * c-c++-common/asmgoto-1.c, c-c++-common/asmgoto-2.c, c-c++-common/asmgoto-3.c, gcc.c-torture/compile/asmgoto-1.c, gcc.dg/tree-ssa/asmgoto-1.c: New files. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@151701 138bc75d-0d04-0410-961f-82ee72b054a4
* * exp_dbug.ads (Packed Array Encoding): Document the new encoding forebotcazou2009-09-142-10/+26
| | | | | | | | | | | | | | the unconstrained case. * gcc-interfaces/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Implement the encoding. Do not give a name to the pointer type to the XUT type. * gcc-interfaces/utils.c (gnat_pushdecl): Propagate DECL_ORIGINAL_TYPE for fat pointer types, if any. Make sure DECL_ARTIFICIAL is cleared on nodes with DECL_ORIGINAL_TYPE set. (update_pointer_to): Set DECL_ORIGINAL_TYPE to the original pointer for fat pointer types. Make sure DECL_ARTIFICIAL is cleared. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@151697 138bc75d-0d04-0410-961f-82ee72b054a4
* Squash commit of EH in gimplerth2009-09-143-4/+6
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@151696 138bc75d-0d04-0410-961f-82ee72b054a4
* 2009-09-13 Richard Guenther <rguenther@suse.de>rguenth2009-09-133-7/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rafael Avila de Espindola <espindola@google.com> * langhooks-def.h (LANG_HOOKS_EH_RUNTIME_TYPE): Define. (LANG_HOOKS_EH_PERSONALITY): Likewise. (LANG_HOOKS_INITIALIZER): Adjust. (lhd_pass_through_t): Declare. * langhooks.h (struct lang_hooks): Add eh_runtime_type and eh_personality. * langhooks.c (lhd_pass_through_t): New function. * dwarf2out.c (output_call_frame_info, dwarf2out_do_cfi_startproc, dwarf2out_begin_prologue): Use personality from current_function_decl. * expr.h (get_personality_function): Declare. * expr.c (get_personality_function): New function. (build_personality_function): Likewise. * libfuncs.h (libfunc_index): Remove LTI_eh_personality. (eh_personality_libfunc): Remove. * optabs.c (build_libfunc_function): New function split out from ... (init_one_libfunc): ... here. * tree.h (DECL_FUNCTION_PERSONALITY): New. (tree_function_decl): Add personality. (lhd_gcc_personality): Declare. (build_personality_function): Likewise. * tree.c (gcc_eh_personality_decl): New. (lhd_gcc_personality): New function. * except.h (lang_eh_runtime_type): Remove. (enum eh_personality_kind): New. (build_personality_function): Declare. (function_needs_eh_personality): Declare. * except.c (lang_eh_runtime_type): Remove. (function_needs_eh_personality): New function. (add_type_for_runtime): Call lang_hooks.type_for_runtime instead. (sjlj_emit_function_enter, output_function_exception_table): Use personality from current_function_decl. * tree-eh.c (lower_eh_constructs): Set DECL_FUNCTION_PERSONALITY. * tree-inline.c (tree_can_inline_p): Do not inline across different EH personalities. (expand_call_inline): Likewise. Adjust the callers EH personality. (tree_function_versioning): Copy DECL_FUNCTION_PERSONALITY. * cgraph.c (cgraph_add_new_function): Set DECL_FUNCTION_PERSONALITY. * Makefile.in (cgraph.o): Add $(EXCEPT_H) dependency. (c-parser.o): Likewise * c-tree.h (c_eh_initialized_p): Remove. (c_maybe_initialize_eh): Likewise. * c-decl.c (finish_decl): Don't call c_maybe_initialize_eh. (finish_decl): Don't call c_maybe_initialize_eh. (c_eh_initialized_p): Remove. (c_maybe_initialize_eh): Likewise. * c-parser.c (c_parser_omp_construct): Likewise. (c_parse_file): Initialize exception handling. objc/ * objc-act.c (objc_eh_runtime_type): Export. (objc_init_exceptions): Remove. Move warning code ... (objc_begin_try_stmt): ... here (objc_build_throw_stmt): ... and here. (objc_eh_personality_decl): New. (objc_eh_personality): New function. * objc-act.h (objc_eh_runtime_type): Declare. (objc_eh_personality): Likewise. * objc-lang.c (LANG_HOOKS_EH_RUNTIME_TYPE): Define. (LANG_HOOKS_EH_PERSONALITY): Likewise. cp/ * except.c (init_exception_processing): Do not set lang_eh_runtime_type. (choose_personality_routine): Do not set eh_personality_decl, set pragma_java_exceptions. * cp-lang.c (LANG_HOOKS_EH_RUNTIME_TYPE): Define. (LANG_HOOKS_EH_PERSONALITY): Likewise. (cp_eh_personality_decl): New. (cp_eh_personality): Likewise. * Make-lang.in (cp-lang.o): Add $(EXPR_H) and $(EXCEPT_H) dependencies. java/ * decl.c (do_nothing): Remove. (java_init_decl_processing): Do not set lang_eh_runtime_type. * Make-lang.in (lang.o): Add $(EXCEPT_H) dependency. * lang.c (java_eh_personality): New. (java_eh_personality_decl): Likewise. (LANG_HOOKS_EH_PERSONALITY): Define. ada/ * gcc-interface/misc.c (gnat_init_gcc_eh): Do not set lang_eh_runtime_type. (LANG_HOOKS_EH_PERSONALITY): Define. (gnat_eh_personality_decl): New. (gnat_eh_personality): Likewise. * Make-lang.in (misc.o): Add gt-ada-misc.h dependency. * config-lang.in (gtfiles): Add misc.c. fortran/ * f95-lang.c (gfc_maybe_initialize_eh): Do not init eh_personality_libfunc. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@151676 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/testsuite:ro2009-09-101-0/+2
| | | | | | | | | | | | | | | PR ada/18302 * ada/acats/run_all.sh (target_run): Use run_test.exp to execute commands. * ada/acats/run_test.exp: New file. gcc/ada: PR ada/18302 * gcc-interface/Make-lang.in (check-acats): Export rootme, EXPECT. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@151614 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Tidyebotcazou2009-09-081-95/+94
| | | | | | | | flow of control. Avoid useless work when processing the Treat_As_Volatile flag. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@151535 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/targtyps.c: Reorder include directives.ebotcazou2009-09-081-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@151498 138bc75d-0d04-0410-961f-82ee72b054a4
* 2009-09-07 Laurent GUERBY <laurent@guerby.net>guerby2009-09-072-4/+5
| | | | | | | | | | * gcc-interface/targtyps.c: Add missing include for tm_p.h. * gcc-interface/Make-lang.in: Update dependencies. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@151474 138bc75d-0d04-0410-961f-82ee72b054a4
* 2009-09-01 Diego Novillo <dnovillo@google.com>dnovillo2009-09-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * c-lang.c (lang_hooks): Remove const qualifier. java/ChangeLog * lang.c (lang_hooks): Remove const qualifier. objc/ChangeLog * objc-lang.c (lang_hooks): Remove const qualifier. objcp/ChangeLog * objcp-lang.c (lang_hooks): Remove const qualifier. ada/ChangeLog * gcc-interface/misc.c (lang_hooks): Remove const qualifier. fortran/ChangeLog * f95-lang.c (lang_hooks): Remove const qualifier. cp/ChangeLog * cp-lang.c (lang_hooks): Remove const qualifier. 2009-09-01 Diego Novillo <dnovillo@google.com> * cgraph.c (cgraph_node_for_decl): New. * cgraph.h (cgraph_node_for_decl): Declare. * tree.c (host_integerp): Return 0 if T is NULL. 2009-09-01 Diego Novillo <dnovillo@google.com> * tree.h (struct alias_pair): Move from varasm.c. (alias_pairs): Likewise. (TYPE_MAXVAL): Define. (TYPE_MINVAL): Define. (iterative_hash_host_wide_int): Declare. (remove_unreachable_alias_pairs): Declare. * tree-pass.h (pass_ipa_free_lang_data): Declare. * diagnostic.c (default_diagnostic_starter): Make extern. (default_diagnostic_finalizer): Make extern. * diagnostic.h (default_diagnostic_starter): Declare. (default_diagnostic_finalizer): Declare. (default_tree_printer): Declare. * toplev.c (default_tree_printer): Make extern. 2009-09-01 Richard Guenther <rguenther@suse.de> Diego Novillo <dnovillo@google.com> * cgraph.c (cgraph_add_new_function): Remove gimplification. * cgraphunit.c (cgraph_expand_function): Do not emit associated thunks from here. (cgraph_emit_thunks): New. (cgraph_optimize): Call it. Return if any IPA pass finds an error. * varasm.c (finish_aliases_1): Ignore errorneous aliases used by thunks. 2009-09-01 Simon Baldwin <simonb@google.com> Rafael Espindola <espindola@google.com> Richard Guenther <rguenther@suse.de> Doug Kwan <dougkwan@google.com> Diego Novillo <dnovillo@google.com> * tree.c: Include tree-pass.h, langhooks-def.h, diagnostic.h, cgraph.h, timevar.h, except.h and debug.h. (free_lang_data_in_type): New. (need_assembler_name_p): New. (free_lang_data_in_block): New. (free_lang_data_in_decl): New. (struct free_lang_data_d): New. (add_tree_to_fld_list): New. (find_decls_types_r): New. (get_eh_types_for_runtime): New. (find_decls_types_in_eh_region): New. (find_decls_types_in_node): New. (find_decls_types_in_var): New. (free_lang_data_in_cgraph): New. (free_lang_data): New. (gate_free_lang_data): New. (pass_ipa_free_lang_data): New. 2009-09-01 Diego Novillo <dnovillo@google.com> * timevar.def (TV_IPA_FREE_LANG_DATA): Define. * langhooks.h (struct lang_hooks): Add field free_lang_data. (lang_hooks): Remove const qualifier. * ipa.c (cgraph_remove_unreachable_nodes): Call remove_unreachable_alias_pairs. * except.c (add_type_for_runtime): Check if TYPE has already been converted. (lookup_type_for_runtime): Likewise. (check_handled): Handle converted types. * varasm.c (remove_unreachable_alias_pairs): New. * gimple.c: Include demangle.h. (gimple_decl_printable_name): New. (gimple_fold_obj_type_ref): New. * gimple.h (gimple_decl_printable_name): Declare. (gimple_fold_obj_type_ref): Declare. * passes.c (init_optimization_passes): Add pass pass_ipa_free_lang_data. * langhooks-def.h (LANG_HOOKS_FREE_LANG_DATA): Define. (LANG_HOOKS_INITIALIZER): Add LANG_HOOKS_FREE_LANG_DATA. testsuite/ChangeLog 2009-09-01 Diego Novillo <dnovillo@google.com> * gcc.dg/gomp/combined-1.c: Adjust expected pattern. * g++.dg/tree-prof/inline_mismatch_args.C: Likewise. * g++.dg/warn/unit-1.C: Likewise. * g++.dg/ipa/iinline-1.C: Likewise. * g++.dg/template/cond2.C: Adjust expected line location for the error. * g++.dg/template/pr35240.C: Likewise. cp/ChangeLog 2009-09-01 Doug Kwan <dougkwan@google.com> * tree.c (cp_fix_function_decl_p): New. (cp_free_lang_data): New. 2009-09-01 Diego Novillo <dnovillo@google.com> * Make-lang.in (decl2.o): Add dependency on $(POINTER_SET_H). * decl2.c: Include pointer-set.h. (collect_candidates_for_java_method_aliases): New. (cp_write_global_declarations): Call it. Add local variable CANDIDATES. If set, call build_java_method_aliases. (build_java_method_aliases): Add argument CANDIDATES. Use it to determine if FNDECL should get a hidden alias. * cp-objcp-common.h (LANG_HOOKS_FREE_LANG_DATA): Define. * cp-tree.h (cp_free_lang_data): Declare. 2009-09-03 Richard Guenther <rguenther@suse.de> * method.c (use_thunk): Use cgraph_finalize_function to hand off thunks to the cgraph. * semantics.c (emit_associated_thunks): Do not emit thunks for really extern functions. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@151360 138bc75d-0d04-0410-961f-82ee72b054a4
* ada/hainque2009-09-021-4/+10
| | | | | | | | | | | | * gcc-interface/decl.c (cannot_be_superflat_p): Handle Signed_Integer_Type_Definition Scalar_Ranges. testsuite/ * gnat.dg/array7.ad[bs]: Add check for Signed_Integer_Type_Definition. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@151322 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/trans.c (gnat_gimplify_expr) <ADDR_EXPR>: Gimplify theebotcazou2009-09-021-41/+31
| | | | | | | | SAVE_EXPR built for misaligned arguments. Remove redundant stuff. (addressable_p): Return true for more rvalues. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@151319 138bc75d-0d04-0410-961f-82ee72b054a4
* * boehm.c (mark_reference_fields): Compute % in HOST_WIDE_INTjakub2009-09-011-2/+3
| | | | | | | | | | type. * gcc-interface/utils2.c (maybe_wrap_malloc, maybe_wrap_free): Cast POINTER_SIZE to HOST_WIDE_INT. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@151263 138bc75d-0d04-0410-961f-82ee72b054a4
* 2009-09-01 Richard Guenther <rguenther@suse.de>rguenth2009-09-011-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * tree-flow.h (mark_addressable): Move declaration ... * tree.h (mark_addressable): ... here. * stmt.c (expand_asm_operands): Use mark_addressable, not lang_hooks.mark_addressable. * langhooks-def.h (LANG_HOOKS_INITIALIZER): Remove LANG_HOOKS_MARK_ADDRESSABLE. * langhooks.h (struct lang_hooks): Remove mark_addressable langhook. * c-objc-common.h (LANG_HOOKS_MARK_ADDRESSABLE): Remove. ada/ * gcc-interface/misc.c (LANG_HOOKS_MARK_ADDRESSABLE): Remove. cp/ * cp-objcp-common.h (LANG_HOOKS_MARK_ADDRESSABLE): Remove. fortran/ * f95-lang.c (gfc_mark_addressable): Remove. (LANG_HOOKS_MARK_ADDRESSABLE): Likewise. java/ * lang.c (LANG_HOOKS_MARK_ADDRESSABLE): Remove. * java-tree.h (java_mark_addressable): Likewise. * typeck.c (java_mark_addressable): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@151260 138bc75d-0d04-0410-961f-82ee72b054a4
* * gimplify.c (prepare_gimple_addressable): New static function.ebotcazou2009-08-252-8/+14
| | | | | | | | | | | | | | | | | (gimplify_modify_expr_to_memcpy): Invoke it on the RHS before marking it addressable. (gimplify_addr_expr): Invoke it similarly on the operand instead of manually fiddling with it. ada/ * gcc-interface/trans.c (call_to_gnu): Tidy. (gnat_to_gnu) <N_Slice>: Set TYPE_ARRAY_MAX_SIZE if the slice has non-constant size but the array itself has constant size. * gcc-interface/utils.c (convert_vms_descriptor64): Fix type consistency error. (convert_vms_descriptor32): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@151082 138bc75d-0d04-0410-961f-82ee72b054a4
* 2009-08-22 Aurelien Jarno <aurelien@aurel32.net>guerby2009-08-221-0/+29
| | | | | | | | | | | * gcc-interface/Makefile.in: Add Ada support for GNU/kFreeBSD x86_64. * system-freebsd-x86_64.ads: New file based on system-freebsd-x86.ads. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@151011 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/utils.c (convert): In the padded case, do the finalebotcazou2009-08-201-16/+28
| | | | | | | | conversion as an unchecked conversion if the underlying types are array types with variable size. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150965 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/ada-tree.h (SET_TYPE_RM_VALUE): Mark the expressionebotcazou2009-08-203-33/+47
| | | | | | | | | | | | as visited. * gcc-interface/misc.c (gnat_get_subrange_bounds): Always return the bounds. * gcc-interface/trans.c (add_decl_expr): Do not mark gigi-specific fields. (gnat_gimplify_expr) <DECL_EXPR>: New case. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150963 138bc75d-0d04-0410-961f-82ee72b054a4
* 2009-08-07 Robert Dewar <dewar@adacore.com>charlet2009-08-072-13/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * sem_warn.adb (Warn_On_Unreferenced_Entity): Fix obvious typo. 2009-08-07 Vincent Celier <celier@adacore.com> * gnatcmd.adb (GNATCmd): If -U is not used, one and only one main is specified on the command line and there are switches in the Compiler package of the project file, use these compilation switches to invoke the tool. 2009-08-07 Ben Brosgol <brosgol@adacore.com> * gnat_ugn.texi: Wordsmithing edits at beginning of gnatcheck chapter. 2009-08-07 Ed Schonberg <schonberg@adacore.com> * sem_ch10.adb (Analyze_Proper_Body): Indicate name of missing subunit even if not in main unit, to simplify debugging. 2009-08-07 Arnaud Charlet <charlet@adacore.com> * gcc-interface/Makefile.in: Fix handling of GCC_FOR_TARGET. * gcc-interface/Make-lang.in: Update dependencies. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150564 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/gigi.h (end_subprog_body): Tweak comment.ebotcazou2009-08-023-19/+9
| | | | | | | | | * gcc-interface/utils.c (end_subprog_body): Likewise. * gcc-interface/trans.c (gigi): Likewise. (gnat_to_gnu): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150352 138bc75d-0d04-0410-961f-82ee72b054a4
* 2009-07-29 Javier Miranda <miranda@adacore.com>charlet2009-07-291-469/+491
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * frontend.adb (Frontend): Code cleanup. * exp_atag.ads, exp_atag.adb (Build_Get_Predefined_Prim_Op_Address): Rewriten as a procedure because it a new out-mode parameters to keep up-to-date the controlling tag node in the caller. (Build_Get_Prim_Op_Address): Rewriten as a procedure because it has a new out-mode parameter to keep up-to-date the controlling tag node in the caller. * exp_ch7.adb, sem_ch5.adb, exp_util.adb, sem_util.adb, exp_ch4.adb, exp_ch6.adb, sem_ch4.adb, exp_ch3.adb: Add new dependency on new package Sem_SCIL. * sem_aux.ads, sem_aux.adb (First_Non_SCIL_Node): Removed. Routine available in new package Sem_SCIL. (Next_Non_SCIL_Node): Ditto. * exp_disp.adb (Adjust_SCIL_Node): Removed. Routine available in new package Sem_SCIL. (Expand_Dispatching_Call): Update call to modified Exp_Atags routines plus complete decoration of SCIL dispatching node. (Find_SCIL_Node): Removed. Routine available in new package Sem_SCIL. * exp_disp.ads (Adjust_SCIL_Node): Removed. Routine available in new package Sem_SCIL. (Find_SCIL_Node): Removed. Routine available in new package Sem_SCIL. * exp_ch3.adb (Build_Init_Procedure): Fix comment. * sem_scil.ads, sem_scil.adb: New files. * gcc-interface/Make-lang.in (GNAT_ADA_OBJS): Addition of sem_scil.o. Update dependencies. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150199 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/Make-lang.in: Update dependencies.charlet2009-07-281-96/+99
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150153 138bc75d-0d04-0410-961f-82ee72b054a4
* 2009-07-28 Javier Miranda <miranda@adacore.com>charlet2009-07-281-1/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gnat1drv.adb (Adjust_Global_Switches): Disable generation of SCIL nodes if we are not generating code. * frontend.adb (Check_SCIL_Node): New subprogram. Used to check attribute SCIL_Related_Node of SCIL dispatching nodes. (Check_SCIL_Nodes): New instantiation of Traverse_Proc. * sinfo.ads (Is_SCIL_Node,Set_Is_SCIL_Node): Removed (SCIL_Nkind,Set_SCIL_Nkind): Removed. (SCIL_Entity): Update documentation. (SCIL_Related_Node): Update documentation. (SCIL_Controlling_Tag): New attribute. (SCIL_Target_Prim): Update documentation. (N_Null_Statement): Remove attributes associated with SCIL nodes. (N_SCIL_Dispatch_Table_Object_Init): New node. (N_SCIL_Dispatch_Table_Tag_Init): New node. (N_SCIL_Dispatching_Call): New node. (N_SCIL_Tag_Init): New node. * sinfo.adb (Is_SCIL_Node,Set_Is_SCIL_Node): Removed (SCIL_Nkind,Set_SCIL_Nkind): Removed. (SCIL_Controlling_Tag/Set_SCIL_Controlling_Tag): New subprogram. (SCIL_Entity,Set_SCIL_Entity): Applicable only to SCIL nodes. (SCIL_Related_Node,Set_SCIL_Related_Node): Applicable only to SCIL nodes (SCIL_Target_Prim,Set_SCIL_Target_Prim): Applicable only to N_SCIL_Dispatching_Call nodes. * sem.adb (Analyze): No need to analyze SCIL nodes. * sem_aux.ads, sem_aux.adb (First_Non_SCIL_Node): New subprogram (Next_Non_SCIL_Node): New subprogram * sem_ch4.adb (Analyze_Type_Conversion): Adjust relocated SCIL dispatching nodes. * sem_ch5.adb (Analyze_Iteration_Scheme): Adjust relocated SCIL dispatching node. * sem_util.adb (Insert_Explicit_Dereference): Adjust relocated SCIL dispatching node. * exp_ch3.adb (Build_Array_Init_Proc): Skip SCIL nodes when processing null statement nodes. (Build_Init_Procedure): Generate new SCIL node. * exp_ch4.adb (Expand_N_And_Then): Adjust relocated SCIL dispatching node. * exp_ch6.adb (Is_Null_Procedure): Skip SCIL nodes. Required because they are currently implemented as special N_Null_Statement nodes. * exp_ch7.adb (Wrap_Transient_Statement): If the relocated node is a procedure call then check if some SCIL node references it and needs readjustment. * exp_disp.ads (SCIL_Node_Kind): Removed. (Adjust_SCIL_Node): New subprogram. (Find_SCIL_Node): New subprogram. (Get_SCIL_Node_Kind): Removed. (New_SCIL_Node): Removed. * exp_disp.adb (Adjust_SCIL_Node): New subprogram (Expand_Dispatching_Call): Generate new SCIL dispatching node including decoration of its new controlling_tag attribute. (Get_SCIL_Node_Kind): Removed. (Find_SCIL_Node): New subprogram. (Make_Secondary_DT): Generate new SCIL nodes. (Make_Tags): Generate new SCIL nodes. (New_SCIL_Node): Removed. * exp_util.adb (Insert_Actions): Handle SCIL nodes. (Remove_Side_Effects): Check if relocated nodes require readjustment of some SCIL dispatching node. * gcc-interface/trans.c (gnat_to_gnu): Do nothing with new SCIL nodes. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150149 138bc75d-0d04-0410-961f-82ee72b054a4
* 2009-07-28 Olivier Hainque <hainque@adacore.com>charlet2009-07-281-3/+3
| | | | | | | | | | | | | | | | | * g-ssinty.ads: Remove, pointless and just confusing at this stage. * gnat_rm.texi: Remove documentation. * g-sse.ads: Minor reorg along the way. * gcc-interface/Makefile.in: Remove processing for g-ssinty. * g-ssvety.ads: Minor comment updates. 2009-07-28 Sergey Rybin <rybin@adacore.com> * gnat_ugn.texi: gnatcheck 'Format of the Report File' section - update for the new format of the report file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@150146 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc-interface/decl.c (validate_alignment): For the case of ancharlet2009-07-231-7/+21
| | | | | | | | implicit array base type, look for alignment clause on first subtype. Code clean up. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@149994 138bc75d-0d04-0410-961f-82ee72b054a4
* 2009-07-23 Olivier Hainque <hainque@adacore.com>charlet2009-07-232-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * g-ssinty.ads: New unit. GNAT.SSE.Internal_Types. Factorize low level internal type definitions for distinct higher level binding development activities (user type definitions and operations). * gnat_rm.texi: Document it. * g-ssvety.ads: Use it. * gcc-interface/Makefile.in: (x86 32/64 linux, cygwin32 sections): Add g-ssinty.o to EXTRA_GNATRTL_NONTASKING_OBJS. * gcc-interface/utils.c (gnat_internal_attribute_table): Add entry for the "may_alias" attribute. 2009-07-23 Thomas Quinot <quinot@adacore.com> * scos.ads: Minor typo fix * gcc-interface/decl.c (validate_alignment): For the case of an implicit array base type, look for alignment clause on first subtype. Code clean up. 2009-07-23 Ed Schonberg <schonberg@adacore.com> * sem.adb (Walk_Library_Units): Handle properly the case where a unit in the context depends on the spec of the main unit, by delaying processing of the main unit body until all other units have been processed. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@149993 138bc75d-0d04-0410-961f-82ee72b054a4
OpenPOWER on IntegriCloud