summaryrefslogtreecommitdiff
path: root/gcc
Commit message (Collapse)AuthorAgeFilesLines
* 2010-10-12 Robert Dewar <dewar@adacore.com>charlet2010-10-1223-139/+585
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gnat_rm.texi: Clarify that 'Old can be used in preconditions and postcondition pragmas. 2010-10-12 Robert Dewar <dewar@adacore.com> * errout.ads, erroutc.adb: The # insertion now handles from in place of at. * exp_prag.adb (Expand_Pragma_Check): Suppress generated default message if new switch Exception_Locations_Suppressed is set. (Expand_Pragma_Check): Revised wording for default message for case of precondition or postcondition. * namet.ads, namet.adb (Build_Location_String): New procedure. * opt.ads (List_Inherited_Pre_Post): New flag. * sem_ch12.adb (Analyze_Generic_Subprogram_Declaration): Add call to list inherited pre/post aspects. * sem_ch13.adb (Analyze_Aspect_Specification): Improve generation of messages for precondition/postcondition cases. * sem_ch6.adb (Process_PPCs): General cleanup, and list inherited PPC's if flag List_Inherited_Pre_Post is set True. (Process_PPCs): Add initial handling for inherited preconditions (List_Inherited_Pre_Post_Aspects): New procedure * sem_ch6.ads (List_Inherited_Pre_Post_Aspects): New procedure * sem_disp.adb (Inherited_Subprograms): New function * sem_disp.ads (Inherited_Subprograms): New function * sem_prag.adb (Check_Duplicate_Pragma): Clean up handling of pre/postcondition. (Check_Precondition_Postcondition): Check for inherited aspects * sem_warn.adb: Process -gnatw.l/w.L setting List_Inherited_Pre_Post * sinfo.ads, sinfo.adb (Split_PPC): New flag. * sinput.ads, sinput.adb (Build_Location_String): New function. * usage.adb: Add line for -gnatw.l/-gnatw.L 2010-10-12 Javier Miranda <miranda@adacore.com> * exp_util.adb (Remove_Side_Effects): Remove wrong code. 2010-10-12 Arnaud Charlet <charlet@adacore.com> * xref_lib.adb: Add handling of j/J letters. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165361 138bc75d-0d04-0410-961f-82ee72b054a4
* * expr.c (store_expr): Share code for STRING_CST andjakub2010-10-122-49/+19
| | | | | | | | MEM_REF of &STRING_CST cases. Don't require BLKmode, instead check if target is a MEM. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165360 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-12 Pascal Obry <obry@adacore.com>charlet2010-10-126-6/+127
| | | | | | | | | | | | | | | | | | | | | | | * adaint.c (__gnat_number_of_cpus): Add implementation for Windows. 2010-10-12 Arnaud Charlet <charlet@adacore.com> * make.adb (Globalize): New procedure. (Compile): Set Do_Codepeer_Globalize_Step when -gnatC is used. (Gnatmake): Call Globalize when needed. (Process_Restrictions_Or_Restriction_Warnings): Ignore Restrictions pragmas in CodePeer mode. (Adjust_Global_Switches): Set No_Initialize_Scalars in CodePeer mode, to generate simpler and consistent code. 2010-10-12 Bob Duff <duff@adacore.com> * exp_util.adb (Remove_Side_Effects): Disable previous change, can cause side effects to be duplicated. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165359 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-12 Robert Dewar <dewar@adacore.com>charlet2010-10-123-34/+151
| | | | | | | | | | | | | * sem_ch6.adb (Process_PPCs): Handle inherited postconditions. 2010-10-12 Arnaud Charlet <charlet@adacore.com> * exp_disp.adb (Set_All_DT_Position): Disable emit error message on abstract inherited private operation in CodePeer mode. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165358 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-12 Thomas Quinot <quinot@adacore.com>charlet2010-10-126-36/+62
| | | | | | | | | | | | | | | | | | * a-exetim.ads: Minor reformatting. * g-socket.ads (Port_Type): Better definition corresponding to the actual standard range. * exp_ch5.adb: Add comment. * sem_aux.adb: Minor reformatting. 2010-10-12 Ed Schonberg <schonberg@adacore.com> * sem_ch12.adb (Copy_Generic_Node): If node is a string literal, remove string_literal_subtype so that a new one can be constructed in the scope of the instance. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165357 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-12 Robert Dewar <dewar@adacore.com>charlet2010-10-1216-162/+550
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * exp_ch9.adb (Has_Pragma_Priority): New name for Has_Priority_Pragma * gnat_rm.texi (pragma Suppress_All): Document new placement rules * par-prag.adb (P_Pragma, case Suppress_All): Set Has_Pragma_Suppress_All flag. * sem_prag.adb (Has_Pragma_Priority): New name for Has_Priority_Pragma (Analyze_Pragma, case Suppress_All): Remove placement check (Process_Compilation_Unit_Pragmas): Use Has_Pragma_Suppress_All flag * sem_prag.ads (Process_Compilation_Unit_Pragmas): Update documentation * sinfo.adb (Has_Pragma_Suppress_All): New flag (Has_Pragma_Priority): New name for Has_Priority_Pragma * sinfo.ads (Has_Pragma_Suppress_All): New flag (Has_Pragma_Priority): New name for Has_Priority_Pragma 2010-10-12 Arnaud Charlet <charlet@adacore.com> * lib-xref.ads: Mark j/J as reserved for C++ classes. 2010-10-12 Jose Ruiz <ruiz@adacore.com> * a-exetim-default.ads, a-exetim-posix.adb: New. * gcc-interface/Makefile.in (LIBGNAT_TARGET_PAIRS for linux): Use the POSIX Realtime support to implement CPU clocks. (EXTRA_GNATRTL_TASKING_OBJS for linux): Add the a-exetim.o object to the tasking library. (THREADSLIB): Make the POSIX.1b Realtime Extensions library (librt) available for shared libraries. * gcc-interface/Make-lang.in: Update dependencies. 2010-10-12 Robert Dewar <dewar@adacore.com> * sem_ch13.adb (Analyze_Aspect_Specifications): For Pre/Post, break apart expressions with AND THEN clauses into separate pragmas. * sinput.ads, sinput.adab (Get_Logical_Line_Number_Img): New function. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165356 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-12 Robert Dewar <dewar@adacore.com>charlet2010-10-126-39/+109
| | | | | | | | | | | | | | * par-ch13.adb (P_Aspect_Specifications): Fix handling of 'Class aspects * sem_ch13.adb (Analyze_Aspect_Specifications): Fix bad Sloc on aspects * sem_prag.adb (Fix_Error): Only change pragma names for pragmas from aspects. (Check_Optional_Identifier): Handle case of direct arguments (Chain_PPC): Test for abstract case, giving appropriate messages * sinfo.ads, sinfo.adb (Class_Present): Allowed on N_Pragma node git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165355 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-12 Robert Dewar <dewar@adacore.com>charlet2010-10-126-79/+125
| | | | | | | | | | | | | | | | | | | | | | | * par-endh.adb (Check_End): Don't swallow semicolon or aspects after END RECORD. * sem_attr.adb (Eval_Attribute): Code clean up. 2010-10-12 Robert Dewar <dewar@adacore.com> * par-ch12.adb (P_Formal_Private_Type_Definition): Improve error messages and recovery for case of out of order Abstract/Tagged/Private keywords. * par-ch3.adb (P_Type_Declaration): Improve error messages and recovery for case of out of order Abstract/Tagged/Private keywords. 2010-10-12 Ed Schonberg <schonberg@adacore.com> * inline.adb (Analyze_Inlined_Bodies): Restrict previous change to case where child unit is main unit of compilation. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165354 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-12 Robert Dewar <dewar@adacore.com>charlet2010-10-1221-102/+353
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * aspects.ads, aspects.adb (Move_Aspects): New procedure. * atree.ads, atree.adb: (New_Copy): Does not copy aspect specifications * sinfo.ads, par-ch3.adb, par-ch6.adb, par-ch7.adb, par-ch9.adb, par-endh.adb, par-ch13.adb, par-ch12.adb: Modify grammar to include aspect specifications. Recognize aspect specifications for all cases * par.adb: Recognize aspect specifications for all cases * sem_ch12.ads, sem_ch12.adb (Copy_Generic_Node): Copies aspect specifications. * sem_ch3.adb (Analyze_Subtype_Declaration): Improve patch to freeze generic actual types (was missing some guards before). * sem_ch9.adb (Analyze_Single_Protected_Declaration): Copy aspects to generated object (Analyze_Single_Task_Declaration): Copy aspects to generated object 2010-10-12 Eric Botcazou <ebotcazou@adacore.com> * usage.adb (usage): Adjust line for -gnatn switch. 2010-10-12 Robert Dewar <dewar@adacore.com> * sem_attr.adb (Eval_Attribute): Only leave change active for aspect spec case. 2010-10-12 Ed Schonberg <schonberg@adacore.com> * sem_ch6.adb (Analyze_Subprogram_Declaration): If this is a declaration of a null procedure resolve the types of the profile of the generated null body now. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165353 138bc75d-0d04-0410-961f-82ee72b054a4
* * rtl.h: Include hashtab.h.jakub2010-10-125-1/+469
| | | | | | | | | | | | | | | | (iterative_hash_rtx): New prototype. * rtl.c (iterative_hash_rtx): New function. * dwarf2out.c (dw_loc_list_node): Add hash and emitted fields. (output_loc_list): Return immediately if emitted is set, set it. (hash_loc_operands, hash_locs, hash_loc_list, compare_loc_operands, compare_locs, loc_list_hash, loc_list_eq, optimize_location_lists_1, optimize_location_lists): New function. (dwarf2out_finish): Call optimize_location_lists. * Makefile.in (RTL_BASE_H): Depend on $(HASHTAB_H). git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165351 138bc75d-0d04-0410-961f-82ee72b054a4
* Fix PR testsuite/45974 by reverting r165323 for now.rwild2010-10-122-4/+12
| | | | | | | | | | | gcc/: PR testsuite/45974 Revert: * Makefile.in ($(lang_checks_parallel)) ($(lang_checks_parallelized)): Use single quotes for $(RUNTESTFLAGS), to allow passing quoted content. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165350 138bc75d-0d04-0410-961f-82ee72b054a4
* Daily bump.gccadmin2010-10-121-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165347 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/pa/linux-atomic.c (__sync_val_compare_and_swap_4): Returndanglin2010-10-112-7/+14
| | | | | | | | | actual_oldval. Use __builtin_expect. (SUBWORD_VAL_CAS): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165339 138bc75d-0d04-0410-961f-82ee72b054a4
* * recog.c (nonmemory_operand): Call immediate_operand forfroydnj2010-10-112-18/+6
| | | | | | | CONSTANT_P operands. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165334 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/i386/i386.md (movmem<mode>): Macroize expander fromuros2010-10-113-372/+176
| | | | | | | | | | | | | | | | | | | | | | | | | | | | movmem{si,di} using SWI48 mode iterator. (*strmovsi_1): Macroize insn pattern from *strmovsi_1 and *strmovsi_rex_1 using P mode iterator. (*strmovhi_1): Ditto from *strmovhi_1 and *strmovhi_rex_1. (*strmovqi_1): Ditto from *strmovqi_1 and *strmovqi_rex_1. (*rep_movsi): Ditto from *rep_movsi and *rep_movsi_rex64. (*rep_movqi): Ditto from *rep_movqi and *rep_movqi_rex64. (setmem<mode>): Macroize expander from setmem{si,di} using SWI48 mode iterator. (*strsetsi_1): Macroize insn pattern from *strsetsi_1 and *strsetsi_rex_1 using P mode iterator. (*strsethi_1): Ditto from *strsethi_1 and *strsethi_rex_1. (*strsetqi_1): Ditto from *strsetqi_1 and *strsetqi_rex_1. (*rep_stossi): Ditto from *rep_stossi and *rep_stossi_rex64. (*rep_stosqi): Ditto from *rep_stosqi and *rep_stosqi_rex64. (*cmpstrnqi_nz_1): Ditto from *cmpstrnqi_nz_1 and *cmpstrnqi_nz_rex_1. (*cmpstrnqi_1): Ditto from *cmpstrnqi_1 and *cmpstrnqi_rex_1. (strlen<mode>): Macroize expander from strlen{si,di} using SWI48x mode iterator. (*strlenqi_1): Macroize insn pattern from *strlenqi_1 and *strlenqi_rex_1 using P mode iterator. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165331 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-11 Martin Jambor <mjambor@suse.cz>jamborm2010-10-113-2/+11
| | | | | | | | | | | PR c++/45562 * cp/cp-tree.h (current_class_ref): Check that cp_function_chain is non-NULL. * cp/call.c (build_cxx_call): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165330 138bc75d-0d04-0410-961f-82ee72b054a4
* PR bootstrap/45445bernds2010-10-112-40/+73
| | | | | | | | | | | | | | * ira-lives.c (mark_pseudo_reg_live, mark_pseudo_reg_dead): New static functions. (mark_ref_live, mark_ref_dead): Use them. (make_pseudo_conflict): New arg ORIG_DREG. All callers changed. Save the original reg, and use the new functions. (check_and_make_def_use_conflict): New arg ORIG_DREG. All callers changed. (check_and_make_def_conflict): Save the original reg. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165329 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-11 Martin Jambor <mjambor@suse.cz>jamborm2010-10-116-3/+96
| | | | | | | | | | | | | | PR middle-end/45699 * gimple-fold.c (gimple_fold_obj_type_ref_known_binfo): Choose among thunks. * testsuite/g++.dg/torture/pr45699.C: New test. * testsuite/g++.dg/otr-fold-1.C: Adjusted. * testsuite/g++.dg/otr-fold-1.C: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165327 138bc75d-0d04-0410-961f-82ee72b054a4
* Fix quoting for RUNTESTFLAGS in gcc/.rwild2010-10-112-4/+8
| | | | | | | | | gcc/: * Makefile.in ($(lang_checks_parallel)) ($(lang_checks_parallelized)): Use single quotes for $(RUNTESTFLAGS), to allow passing quoted content. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165323 138bc75d-0d04-0410-961f-82ee72b054a4
* Fix PR bootstrap/35855: awk character classes.rwild2010-10-114-7/+25
| | | | | | | | | | | | | gcc/: PR bootstrap/35855 * opt-functions.awk (BEGIN): New section. (lower, upper, digit, alnum): New variables. (static_var, opt_sanitized_name): Use alnum instead of character classes, for non-C locale. * optc-gen.awk: Likewise. * opth-gen.awk: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165322 138bc75d-0d04-0410-961f-82ee72b054a4
* * target.def (preferred_reload_class): New hook.aesok2010-10-1112-45/+152
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * doc/tm.texi.in (TARGET_PREFERRED_RELOAD_CLASS): Document. * doc/tm.texi: Regenerate. * targhooks.c (default_preferred_reload_class): New function. * targhooks.h (default_preferred_reload_class): Declare. * reload.c (find_dummy_reload): Change preferred_class variable type from enum reg_class to reg_class_t. Use TARGET_PREFERRED_RELOAD_CLASS target hook. (find_reloads): Change goal_alternative array type from int to reg_class_t. Use TARGET_PREFERRED_RELOAD_CLASS target hook. (push_reload, find_reloads_address_part): Use TARGET_PREFERRED_RELOAD_CLASS target hook. * reload1.c (emit_input_reload_insns): Ditto. * ira-costs.c (copy_cost): Use TARGET_PREFERRED_RELOAD_CLASS target hook. Change rclass argument and secondary_class variable types from 'enum reg_class' to reg_class_t. * config/i386/i386.h (PREFERRED_RELOAD_CLASS): Remove. * config/i386/i386-protos (ix86_preferred_reload_class): Remove. * config/i386/i386.c (ix86_preferred_reload_class): Make static. Change regclass argument and result types from enum reg_class to reg_class_t. (TARGET_PREFERRED_RELOAD_CLASS): Define. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165321 138bc75d-0d04-0410-961f-82ee72b054a4
* * simplify-rtx.c (simplify_unary_operation_1): Use unsigned arithmeticsebotcazou2010-10-112-64/+83
| | | | | | | | | | | | | in masking operations. (simplify_const_unary_operation): Likewise. (simplify_binary_operation_1): Likewise. (simplify_const_binary_operation): Likewise. (simplify_const_relational_operation): Likewise. (simplify_ternary_operation): Likewise. (simplify_immed_subreg): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165320 138bc75d-0d04-0410-961f-82ee72b054a4
* PR middle-end/45862danglin2010-10-117-23/+66
| | | | | | | | | | | | | | | | | | | | | * doc/tm.texi.in (SUPPORTS_WEAK): Update. (TARGET_SUPPORTS_WEAK): New. * doc/tm.texi: Regenerate. * defaults.h (SUPPORTS_WEAK): Update comment. (TARGET_SUPPORTS_WEAK): New. * dwarf2asm.c (USE_LINKONCE_INDIRECT): Update define. * varasm.c (assemble_external): Use TARGET_SUPPORTS_WEAK instead of SUPPORTS_WEAK. (merge_weak, declare_weak, do_assemble_alias, supports_one_only, make_decl_one_only): Likewise. * config/pa/som.h (SUPPORTS_WEAK): Rename defines to TARGET_SUPPORTS_WEAK. (SUPPORTS_ONE_ONLY, MAKE_DECL_ONE_ONLY): Use TARGET_SUPPORTS_WEAK instead of SUPPORTS_WEAK. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165319 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/sparc/gmon-sol2.c: Don't include coretypes.h, tm.h.ro2010-10-112-2/+4
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165318 138bc75d-0d04-0410-961f-82ee72b054a4
* * decl.c (java_init_decl_processing): Use build_function_type_listfroydnj2010-10-114-105/+90
| | | | | | | | | instead of build_function_type. * jcf-parse.c (java_emit_static_constructor): Likewise. * builtins.c (initialize_builtins): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165317 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-11 Robert Dewar <dewar@adacore.com>charlet2010-10-116-62/+49
| | | | | | | | | | | | | | | | | | | * debug.adb: Remove d.A flag to delay address clause (not needed any more). Add d.A flag to enable tree read/write of aspect spec hash table * sem_ch13.adb (Analyze_Aspect_Specifications): Properly delay address clause. (Rep_Item_Too_Late): No need for special processing for delayed rep items (and it caused difficulties in the address case). * tree_gen.adb: Only write aspect spec hash table if -gnatd.A is set * tree_in.adb: Only write aspect spec hash table if -gnatd.A is set 2010-10-11 Pat Rogers <rogers@adacore.com> * gnat_ugn.texi: Minor editing. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165316 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc.c-torture/compile/pr44197.c: Require visibility support.nickc2010-10-112-1/+16
| | | | | | | Allow for a user label prefix. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165315 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/froydnj2010-10-1118-68/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * vec.h (VEC_qsort): Define. * dbxout.c (output_used_types): Use it. * df-scan.c (df_sort_and_compress_refs): Likewise. (df_sort_and_compress_mws): Likewise. * genautomata.c (uniq_sort_alt_states): Likewise. (evaluate_equiv_classes): Likewise. (output_trans_table): Likewise. (output_state): Likewise. * gimplify.c (compare_case_labels): Likewise. * graphite-sese-to-poly.c (graphite_sort_dominated_info): Likewise. * ipa.c (build_cdtor_fns): Likewise. * lto.c (lto_wpa_write_files): Likewise. * sel-sched.c (fill_vec_av_set): Likewise. * tree-predcom.c (determine_roots_comp): Likewise. * tree-sra.c (sort_and_spliace_var_accesses): Likewise. (splice_param_accesses): Likewise. * tree-ssa-live.c (dump_enumerated_decls): Likewise. * tree-ssa-reassoc.c (undistribute_ops_list): Likewise. (reassociate_bb): Likewise. * tree-ssa-sccvn.c (sort_scc): Likewise. * tree-ssa-structalias.c (sort_fieldstack): Likewise. gcc/ada/ * gcc-interface/utils2.c (gnat_build_constructor): Use VEC_qsort. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165314 138bc75d-0d04-0410-961f-82ee72b054a4
* * tree.h (TREE_THIS_NOTRAP): Use TREE_CHECK5.ian2010-10-114-6/+25
| | | | | | | | | | | | * emit-rtl.c (set_mem_attributes_minus_bitpos): Only check TREE_THIS_NOTRAP when appropriate. (get_spill_slot_decl): Don't set TREE_THIS_NOTRAP on the new VAR_DECL. * gimplify.c (gimplify_expr): Copy NOTRAP from INDIRECT_REF to newly created MEM_REF. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165313 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/picochip/picochip-protos.h (picochip_function_arg): Delete.hariharans2010-10-114-46/+53
| | | | | | | | | | | | | | | | | | (picochip_incoming_function_arg): Delete. (picochip_arg_advance): Delete. * config/picochip/picochip.h (FUNCTION_ARG): Delete. (FUNCTION_INCOMING_ARG): Delete. (FUNCTION_ARG_ADVANCE): Delete. * config/picochip/picochip.c (picochip_function_arg): Take a const_tree and a bool. (picochip_incoming_function_arg): Likewise. (picochip_arg_advance): Likewise. (TARGET_FUNCTION_ARG, TARGET_FUNCTION_INCOMING_ARG): Define. (TARGET_FUNCTION_ARG_ADVANCE): Define. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165312 138bc75d-0d04-0410-961f-82ee72b054a4
* Add missing ChangeLog.ak2010-10-111-0/+5
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165311 138bc75d-0d04-0410-961f-82ee72b054a4
* Fix typo in earlier checksum changeak2010-10-111-1/+1
| | | | | | | | | | | | | | I'm checking in a fix as obvious for this typo in the earlier checksum change. gcc/objcp 2010-10-11 Andi Kleen <ak@linux.intel.com> * Make-lang.in (cc1objplus-checksum.c): Use correct temporary name. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165309 138bc75d-0d04-0410-961f-82ee72b054a4
* PR middle-end/45955danglin2010-10-112-1/+5
| | | | | | | | * ipa.c (build_cdtor): Delete endless loop. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165308 138bc75d-0d04-0410-961f-82ee72b054a4
* * pt.c (tsubst_default_argument): Handle DEFAULT_ARG.jason2010-10-112-68/+71
| | | | | | | | | | | | | (tsubst_default_arguments): Only do this once for cloned fns. (tsubst): Use typedef_variant_p. Handle LANG_TYPE. Don't handle expressions. (tsubst_expr): Avoid calling tsubst_expr for non-expressions. (tsubst_copy_and_build): Likewise. (tsubst_initializer_list): Likewise. (tsubst_copy): Change default to gcc_unreachable. Handle OVERLOAD and PTRMEM_CST. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165307 138bc75d-0d04-0410-961f-82ee72b054a4
* PR lto/45959jason2010-10-115-0/+163
| | | | | | | PR lto/45960 * pt.c (tsubst_copy) [INTEGER_CST]: Instantiate the type. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165306 138bc75d-0d04-0410-961f-82ee72b054a4
* Build compiler checksum from object files v2ak2010-10-1110-48/+121
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | gcc/ 2010-10-07 Andi Kleen <ak@linux.intel.com> * Makefile.in (MOSTLYCLEANFILES): Remove cc1*dummy, add checksum-options. (checksum-options): Add. (cc1-dummy): Remove. (cc1-checksum): Change to run checksum over object files and options only. * dummy-checksum.c: Remove. * genchecksum.c: Update copyright. (usage): Allow multiple arguments. (BLOCKSIZE): Add. (dosum): Change for incremental checksum. Remove C output. (main): Iterate over all argument files. Add C output. gcc/cp 2010-10-07 Andi Kleen <ak@linux.intel.com> * Make-lang.in (c++_OBJS): Remove dummy-checksum.o. (cc1plus-dummy): Remove. (cc1plus-checksum): Change to run checksum over object files and options only. gcc/objc 2010-10-07 Andi Kleen <ak@linux.intel.com> * Make-lang.in (cc1obj-dummy): Remove. (cc1obj-checksum): Change to run checksum over object files and options only. gcc/objcp 2010-10-07 Andi Kleen <ak@linux.intel.com> * Make-lang.in (cc1objplus-dummy): Remove. (cc1objplus-checksum): Change to run checksum over object files and options only. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165305 138bc75d-0d04-0410-961f-82ee72b054a4
* * params.c (set_param_value_internal): New.jsm282010-10-1118-96/+214
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (set_param_value): Use set_param_value_internal. (maybe_set_param_value, set_default_param_value): New. * params.h (PARAM_VALUE, PARAM_SET_P): Make into rvalues. (maybe_set_param_value, set_default_param_value): Declare. * config/arm/arm.c (arm_option_override): Use maybe_set_param_value. * config/i386/i386.c (ix86_option_override_internal): Use maybe_set_param_value. * config/ia64/ia64.c (ia64_option_default_params, TARGET_OPTION_DEFAULT_PARAMS): New. (ia64_option_optimization): Move some code to ia64_option_default_params. * config/picochip/picochip.c (picochip_option_override): Use maybe_set_param_value. * config/rs6000/rs6000.c (rs6000_option_default_params, TARGET_OPTION_DEFAULT_PARAMS): New. (rs6000_option_override_internal): Use maybe_set_param_value. (rs6000_option_optimization): Move some code to rs6000_option_default_params. * config/s390/s390.c (s390_option_override): Use maybe_set_param_value. * config/sh/sh.c (sh_option_default_params, TARGET_OPTION_DEFAULT_PARAMS): New. (sh_option_optimization): Move some code to sh_option_default_params. * config/sparc/sparc.c (sparc_option_override): Use maybe_set_param_value. * config/spu/spu.c (spu_option_default_params, TARGET_OPTION_DEFAULT_PARAMS): New. (spu_option_optimization): Move some code to spu_option_default_params. (spu_option_override): Use maybe_set_param_value. * doc/tm.texi.in (TARGET_OPTION_DEFAULT_PARAMS): New @hook. * doc/tm.texi: Regenerate. * ggc-common.c (init_ggc_heuristics): Use set_default_param_value. * opts.c (init_options_once): Use PARAM_VALUE not direct access to compiler_params. (default_options_optimization): Use maybe_set_param_value. (finish_options): Use maybe_set_param_value. * target.def (target_option.default_params): New hook. * toplev.c (general_init): Call targetm.target_option.default_params. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165303 138bc75d-0d04-0410-961f-82ee72b054a4
* PR tree-optimization/45902irar2010-10-114-4/+65
| | | | | | | | | * tree-vect-slp.c (vect_get_constant_vectors): Use statement's vector type for constants, unless it's a pointer. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165302 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-11 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>krebbel2010-10-112-4/+8
| | | | | | | | * config/s390/s390.md (*mov<mode>cc): lgoc -> locg and stgoc -> stocg. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165301 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-11 Robert Dewar <dewar@adacore.com>charlet2010-10-1140-580/+1093
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * g-htable.ads (Get_First): New procedural version for Simple_HTable (Get_Next): New procedural version for Simple_HTable * s-htable.adb (Get_First): New procedural version for Simple_HTable (Get_Next): New procedural version for Simple_HTable * s-htable.ads (Get_First): New procedural version for Simple_HTable (Get_Next): New procedural version for Simple_HTable 2010-10-11 Ed Schonberg <schonberg@adacore.com> * sem_aggr.adb (Propagate_Discriminants): To gather the components of a variant part, use the association list of the subaggregate, which already includes the values of the needed discriminants. 2010-10-11 Robert Dewar <dewar@adacore.com> * aspects.ads, aspects.adb: Changes to accomodate aspect delay (Tree_Write): New procedure. * atree.ads, atree.adb: Flag3 is now Has_Aspects and applies to all nodes. * atree.h: Flag3 is now Has_Aspects and applies to all nodes * debug.adb: Add debug flag gnatd.A * einfo.adb (Has_Delayed_Aspects): New flag (Get_Rep_Item_For_Entity): New function * einfo.ads (Has_Delayed_Aspects): New flag (Get_Rep_Item_For_Entity): New function * exp_ch13.adb (Expand_N_Freeze_Entity): Insert delayed aspects into tree. * exp_ch3.adb, exp_ch6.adb, exp_ch9.adb, exp_disp.adb: New calling sequence for Freeze_Entity. * freeze.ads, freeze.adb (Freeze_Entity): Takes node rather than source ptr. All calls are changed to this new interface. (Freeze_And_Append): Same change (Freeze_Entity): Evaluate deferred aspects * sem_attr.adb: New calling sequence for Freeze_Entity (Eval_Attribute): Don't try to evaluate attributes of unfrozen types when we are in spec expression preanalysis mode. * sem_ch10.adb: New calling sequence for Freeze_Entity * sem_ch11.adb: Simplify analysis of aspect specifications now that the flag Has_Aspects applies to all nodes (no need to save aspects). * sem_ch12.adb: Simplify analysis of aspect specifications now that the flag Has_Aspects applies to all nodes (no need to save aspects). * sem_ch13.adb (Analyze_Aspect_Specifications): Major rewrite to accomodate delaying aspect evaluation to the freeze point. (Duplicate_Clause): Simplify using Get_Rep_Item_For_Entity, and also accomodate delayed aspects. (Rep_Item_Too_Late): Deal with delayed aspects case * sem_ch13.ads (Rep_Item_Too_Late): Document handling of delayed aspects * sem_ch3.adb (Analyze_Subtype_Declaration): Make sure that generic actual types are properly frozen (this is needed because of the new check in Eval_Attribute that declines to evaluate attributes for unfrozen types). Simplify analysis of aspect specifications now that the flag Has_Aspects applies to all nodes (no need to save aspects). * sem_ch3.ads (Preanalyze_Spec_Expression): Note use for delayed aspects * sem_ch5.adb: Simplify analysis of aspect specifications now that the flag Has_Aspects applies to all nodes (no need to save aspects). New calling sequence for Freeze_Entity. * sem_ch9.adb, sem_ch7.adb, sem_ch6.adb: Simplify analysis of aspect specifications now that the flag Has_Aspects applies to all nodes (no need to save aspects). New calling sequence for Freeze_Entity * sem_prag.adb (Check_Duplicate_Pragma): Simplify using Get_Rep_Item_For_Entity (Get_Pragma_Arg): Moved to Sinfo * sinfo.ads, sinfo.adb (Aspect_Rep_Item_: New field (Is_Delayed_Aspect): New flag (Next_Rep_Item): Document use for aspects (Get_Pragma_Arg): Moved here from Sem_Prag * sprint.adb (Sprint_Aspect_Specifications): Now called after semicolon is output and removes semicolon (simplifies interface). (Sprint_Node_Actual): Simplify handling of aspects now that Has_Aspects applies to any node. * tree_gen.adb: Write contents of Aspect_Specifications hash table * tree_in.adb: Read and initialize Aspect_Specifications hash table * treepr.adb (Print_Node): Print Has_Aspects flag (Print_Node): Print Aspect_Specifications in Has_Aspects set * xtreeprs.adb: Remove obsolete references to Flag1,2,3 git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165300 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-11 Robert Dewar <dewar@adacore.com>charlet2010-10-1130-2420/+3454
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * aspects.ads, aspects.adb: Major revision of this package for 2nd stage of aspects implementation. * gcc-interface/Make-lang.in: Add entry for aspects.o * gcc-interface/Makefile.in: Add aspects.o to GNATMAKE_OBJS * par-ch13.adb (Aspect_Specifications_Present): New function (P_Aspect_Specifications): New procedure * par-ch3.adb (P_Type_Declaration): Handle aspect specifications (P_Derived_Type_Def_Or_Private_Ext_Decl): Handle aspect specifications (P_Identifier_Declarations): Handle aspect specifications (P_Component_Items): Handle aspect specifications (P_Subtype_Declaration): Handle aspect specifications * par-ch6.adb (P_Subprogram): Handle aspect specifications * par-ch9.adb (P_Entry_Declaration): Handle aspect specifications * par.adb (Aspect_Specifications_Present): New function (P_Aspect_Specifications): New procedure * sem.adb (Analyze_Full_Type_Declaration): New name for Analyze_Type_Declaration. (Analyze_Formal_Package_Declaration): New name (add _Declaration) (Analyze_Formal_Subprogram_Declaration): New name (add _Declaration) (Analyze_Protected_Type_Declaration): New name (add _Declaration) (Analyze_Single_Protected_Declaration): New name (add _Declaration) (Analyze_Single_Task_Declaration): New name (add _Declaration) (Analyze_Task_Type_Declaration): New name (add _Declaration) * sem_cat.adb (Analyze_Full_Type_Declaration): New name for Analyze_Type_Declaration. * sem_ch11.adb (Analyze_Exception_Declaration): Analyze aspect specifications. * sem_ch12.adb (Analyze_Formal_Object_Declaration): Handle aspect specifications. (Analyze_Formal_Package_Declaration): New name (add _Declaration) (Analyze_Formal_Package_Declaration): Handle aspect specifications (Analyze_Formal_Subprogram_Declaration): New name (add _Declaration) (Analyze_Formal_Subprogram_Declaration): Handle aspect specifications (Analyze_Formal_Type_Declaration): Handle aspect specifications (Analyze_Generic_Package_Declaration): Handle aspect specifications (Analyze_Generic_Subprogram_Declaration): Handle aspect specifications (Analyze_Package_Instantiation): Handle aspect specifications (Analyze_Subprogram_Instantiation): Handle aspect specifications * sem_ch12.ads (Analyze_Formal_Package_Declaration): New name (add _Declaration). (Analyze_Formal_Subprogram_Declaration): New name (add _Declaration) * sem_ch13.adb (Analyze_Aspect_Specifications): New procedure (Duplicate_Clause): New function, calls to this function are added to processing for all aspects. * sem_ch13.ads (Analyze_Aspect_Specifications): New procedure * sem_ch3.adb (Analyze_Full_Type_Declaration): New name for Analyze_Type_Declaration. * sem_ch3.ads (Analyze_Full_Type_Declaration): New name for Analyze_Type_Declaration. * sem_ch6.adb (Analyze_Abstract_Subprogram_Declaration): Analyze aspect specifications. (Analyze_Subprogram_Declaration): Analyze aspect specifications * sem_ch7.adb (Analyze_Package_Declaration): Analyze aspect specifications. (Analyze_Private_Type_Declaration): Analyze aspect specifications * sem_ch9.adb (Analyze_Protected_Type_Declaration): Analyze aspect specifications. (Analyze_Protected_Type_Declaration): New name (add _Declaration) (Analyze_Single_Protected_Declaration): Analyze aspect specifications (Analyze_Single_Protected_Declaration): New name (add _Declaration) (Analyze_Single_Task_Declaration): Analyze aspect specifications (Analyze_Single_Task_Declaration): New name (add _Declaration) (Analyze_Task_Type_Declaration): Analyze aspect specifications (Analyze_Task_Type_Declaration): New name (add _Declaration) * sem_ch9.ads (Analyze_Protected_Type_Declaration): New name (add _Declaration). (Analyze_Single_Protected_Declaration): New name (add _Declaration) (Analyze_Single_Task_Declaration): New name (add _Declaration) (Analyze_Task_Type_Declaration): New name (add _Declaration) * sem_prag.adb: Use Get_Pragma_Arg systematically so that we do not have to generate unnecessary pragma argument associations (this matches the doc). Throughout do changes to accomodate aspect specifications, including specializing messages, handling the case of not going through all homonyms, and allowing for cancellation. * sinfo.ads, sinfo.adb: Clean up obsolete documentation for Flag1,2,3 (Aspect_Cancel): New flag (From_Aspect_Specification): New flag (First_Aspect): Removed flag (Last_Aspect): Removed flag * sprint.adb (Sprint_Aspect_Specifications): New procedure (Sprint_Node_Actual): Add calls to Sprint_Aspect_Specifications 2010-10-11 Bob Duff <duff@adacore.com> * sem_res.adb (Resolve_Actuals): Minor change to warning messages so they match in Ada 95, 2005, and 2012 modes, in the case where the language didn't change. Same thing for the run-time exception message. 2010-10-11 Javier Miranda <miranda@adacore.com> * debug.adb Document that switch -gnatd.p enables the CIL verifier. 2010-10-11 Robert Dewar <dewar@adacore.com> * s-htable.adb: Minor reformatting. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165299 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-11 Javier Miranda <miranda@adacore.com>charlet2010-10-116-67/+158
| | | | | | | | | | | | | | | | | | | | | | | | * debug.adb: Update comment. 2010-10-11 Vincent Celier <celier@adacore.com> * gnatcmd.adb (GNATCmd): Set Opt.Unchecked_Shared_Lib_Imports to True unconditionally as for "gnat make" the projects are not processed in the GNAT driver. 2010-10-11 Ed Schonberg <schonberg@adacore.com> * sem_ch10.ads, sem_ch10.adb (Load_Needed_Body): Add parameter to suppress semantic analysis of the body when inlining, prior to verifying that the body does not have a with_clause on a descendant unit. * inline.adb (Analyze_Inlined_Bodies): Do not inline a body if it has a with_clause on a descendant. (Scope_In_Main_Unit): Simplify. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165298 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-11 Robert Dewar <dewar@adacore.com>charlet2010-10-113-20/+20
| | | | | | | | * exp_ch6.adb, freeze.adb: Minor reformatting. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165297 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-11 Vincent Celier <celier@adacore.com>charlet2010-10-114-4/+28
| | | | | | | | | | | | | | | | | | | * gnatcmd.adb (GNATCmd): For all tools other than gnatmake, allow shared library projects to import projects that are not shared library projects. 2010-10-11 Javier Miranda <miranda@adacore.com> * debug.adb: Document that switch -gnatd.o generates the CIL listing. 2010-10-11 Arnaud Charlet <charlet@adacore.com> * sem_prag.adb (Process_Suppress_Unsuppress): Only ignore Suppress/Unsuppress pragmas in codepeer mode on user code. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165296 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-11 Javier Miranda <miranda@adacore.com>charlet2010-10-116-22/+202
| | | | | | | | | | | | | | | | | | | | | | | | | | * exp_ch6.adb (Expand_Call): For VM platforms, add missing expansion of tag check in case of dispatching call through "=". 2010-10-11 Ed Schonberg <schonberg@adacore.com> * sem_ch3.adb (Access_Subprogram_Declaration): In Ada2012 an incomplete type is legal in the profile of any basic declaration. * sem_ch6.adb (Analyze_Return_Type, Process_Formals): In Ada2012 an incomplete type, including a limited view of a type, is legal in the profile of any subprogram declaration. If the type is tagged, its use is also legal in a body. * sem_ch10.adb (Install_Limited_With_Clause): Do not process context item if misplaced. (Install_Limited_Withed_Unit): Refine legality checks when both the limited and the non-limited view of a package are visible in the context of a unit. If this is not an error case, the limited view is ignored. freeze.adb (Freeze_Entity): In Ada2012, an incomplete type is legal in access to subprogram declarations git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165295 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-11 Robert Dewar <dewar@adacore.com>charlet2010-10-113-113/+158
| | | | | | | | | * exp_ch6.adb: Code clean up. * exp_util.adb: Minor reformatting. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165294 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-11 Arnaud Charlet <charlet@adacore.com>charlet2010-10-114-4/+37
| | | | | | | | | | | | | | | | | | | * sem_ch3.adb, exp_ch6.adb (Make_Build_In_Place_Call_In_Anonymous_Context, Make_Build_In_Place_Call_In_Assignment, Make_Build_In_Place_Call_In_Object_Declaration): Fix calls to Add_Task_Actuals_To_Build_In_Place_Call in case of No_Task_Hierarchy restriction. (Access_Definition): Add missing handling of No_Task_Hierarchy. 2010-10-11 Javier Miranda <miranda@adacore.com> * exp_util.adb (Remove_Side_Effects): No action needed for renamings of class-wide expressions. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165293 138bc75d-0d04-0410-961f-82ee72b054a4
* * xr_tabls.adb, sem_res.adb: Minor reformattingem_res.adbcharlet2010-10-113-8/+11
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165292 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-11 Arnaud Charlet <charlet@adacore.com>charlet2010-10-116-8/+62
| | | | | | | | | | | | * gnat_rm.texi, exp_attr.adb, sem_attr.adb, sem_attr.ads, snames.ads-tmpl (Analyze_Attribute, Expand_N_Attribute_Reference): Add handling of Attribute_Ref. Add missing blanks in some error messages. (Attribute_Ref, Name_Ref): Declare. Document 'Ref attribute. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165291 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-10-11 Robert Dewar <dewar@adacore.com>charlet2010-10-115-8/+44
| | | | | | | | | | | | | | | | | | | | | * sem_attr.adb: Minor reformatting. 2010-10-11 Javier Miranda <miranda@adacore.com> * sem_ch8.adb (Attribute_Renaming): Add missing check to avoid loading package System.Aux_Dec in VM platforms. 2010-10-11 Arnaud Charlet <charlet@adacore.com> * sem_prag.adb (Process_Suppress_Unsuppress): Ignore Suppress/Unsuppress pragmas in codepeer mode. (Analyze_Pragma [Pragma_Suppress_All]): Do not generate error message in codepeer mode. * einfo.ads: Fix typo. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165290 138bc75d-0d04-0410-961f-82ee72b054a4