2009-04-17 Nicolas Setton <setton@adacore.com>
* gcc-interface/Makefile.in: Under darwin, build shared libraries
with install_name starting with "@rpath/".
From-SVN: r146225
2009-04-17 Pascal Obry <obry@adacore.com>
* adaint.h, argv.c (__gnat_init_args): New routine used to initialize
command line arguments.
* bindgen.adb: Call __gnat_init_args instead of simple assignments of
argc, argv and envp parameters.
* init.c: Fix minor typo and style fix.
2009-04-17 Nicolas Setton <setton@adacore.com>
* link.c: Add darwin section
From-SVN: r146224
2009-04-16 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/39762
* ira-int.h (ira_register_move_cost, ira_may_move_in_cost,
ira_may_move_out_cost): Add comments about way of their usage.
(ira_get_register_move_cost, ira_get_may_move_cost): New
functions.
* ira-conflicts.c (process_regs_for_copy): Use function
ira_get_register_move_cost instead of global
ira_register_move_cost.
* ira-color.c (update_copy_costs, calculate_allocno_spill_cost,
color_pass, move_spill_restore, update_curr_costs): Ditto.
* ira-lives.c (process_single_reg_class_operands): Ditto.
* ira-emit.c (emit_move_list): Ditto.
* ira-costs.c (copy_cost): Don't call ira_init_register_move_cost.
(record_reg_classes): Ditto. Use functions
ira_get_register_move_cost and ira_get_may_move_cost instead of
global vars ira_register_move_cost, ira_may_move_out_cost and
ira_may_move_in_cost.
(record_address_regs): Don't call ira_init_register_move_cost.
Use function ira_get_may_move_cost instead of global
ira_may_move_in_cost.
(process_bb_node_for_hard_reg_moves): Use function
ira_get_register_move_cost instead of global
ira_register_move_cost.
(ira_costs): Don't call ira_init_register_move_cost.
From-SVN: r146198
2009-04-16 Richard Guenther <rguenther@suse.de>
* tree-cfg.c (verify_gimple_assign_binary):
Allow POINTER_PLUS_EXPR-like PLUS_EXPR for vectors.
* ipa-struct-reorg.c (gen_size): Fold the built expressions.
(create_general_new_stmt): Note that this function is broken.
From-SVN: r146197
2009-04-16 Richard Guenther <rguenther@suse.de>
* gimple.c (gimple_copy): Do not clear addresses_taken bitmap.
(gimple_ior_addresses_taken_1): New function.
(gimple_ior_addresses_taken): Likewise.
* gimple.h (struct gimple_statement_with_ops_base): Remove
addresses_taken member.
(gimple_ior_addresses_taken): Declare.
(gimple_addresses_taken, gimple_addresses_taken_ptr,
gimple_set_addresses_taken): Remove.
* ipa-reference.c (mark_address): New function.
(scan_stmt_for_static_refs): Use it for marking addresses taken.
* tree-ssa-operands.c (add_to_addressable_set): Rename to ...
(mark_address_taken): ... this. Just set TREE_ADDRESSABLE.
(gimple_add_to_addresses_taken): Remove.
(get_tmr_operands): Call mark_address_taken.
(get_asm_expr_operands): Likewise.
(get_expr_operands): Likewise.
(build_ssa_operands): Do not clear the addresses_taken bitmap.
(free_stmt_operands): Do not free it.
* tree-ssa.c (delete_tree_ssa): Likewise.
(execute_update_addresses_taken): Use gimple_ior_addresses_taken.
From-SVN: r146191
2009-04-16 Robert Dewar <dewar@adacore.com>
* g-pehage.adb: Minor reformatting
* sem_ch12.adb: Minor reformatting
* exp_dist.adb: Minor reformatting
* bindgen.adb: Minor style fixes.
2009-04-16 Ed Schonberg <schonberg@adacore.com>
* sem_eval.adb (Eval_Indexed_Component): Extend constant-folding of
indexed components to the case where the prefix is a static string
literal.
2009-04-16 Javier Miranda <miranda@adacore.com>
* exp_ch3.adb (Expand_N_Object_Declaration): In case of build-in-place
objects avoid any further expansion of the expression initializing the
object.
From-SVN: r146189
2009-04-16 Ed Schonberg <schonberg@adacore.com>
* sem_ch12.adb (Preanalyze_Actuals): If the instance is a child unit
that hides an outer homograph, make that homograph invisible when
analyzing the actuals, to to prevent illegal direct visibility on it.
2009-04-16 Eric Botcazou <ebotcazou@adacore.com>
* g-pehage.adb (Initialize): Fix off-by-one error.
From-SVN: r146186
* tree.cc (_Rb_tree_increment, _Rb_tree_decrement,
_Rb_tree_rebalance_for_erase, _Rb_tree_black_count): Mark nothrow;
update uses of _Rb_tree_rotate_left, _Rb_tree_rotate_right.
(_Rb_tree_rotate_left, _Rb_tree_rotate_right): Make wrapper and break
out body to ...
(local_Rb_tree_rotate_left, local_Rb_tree_rotate_right): New static
functions.
* stl_tree.h (_Rb_tree_increment, _Rb_tree_decrement,
_Rb_tree_insert_and_rebalance, _Rb_tree_rebalance_for_erase,
_Rb_tree_black_count): Mark nothrow.
From-SVN: r146184
2009-04-16 Rafael Avila de Espindola <espindola@google.com>
* common.opt (fversion): New.
* gcc.c (print_version): New.
(process_command): Don't print the version. Just set print_version.
(main): Print version. Call subprocesses if print_version and
verbose_flag are set.
* opts.c (common_handle_option): Handle OPT_fversion.
From-SVN: r146183
2009-04-16 Tristan Gingold <gingold@adacore.com>
* init.c: Detect real stack overflow on Darwin.
* system-darwin-x86.ads: Use stack probing on darwin x86.
2009-04-16 Ed Schonberg <schonberg@adacore.com>
* sem_attr.adb (Analyze_Attribute, case 'Address): It is illegal to
take the address of an intrinsic subprogram.
2009-04-16 Vincent Celier <celier@adacore.com>
* g-trasym-unimplemented.ads, g-trasym-unimplemented.adb: New file.
* g-trasym.ads: Update comments.
2009-04-16 Vasiliy Fofanov <fofanov@adacore.com>
* tracebak.c (STOP_FRAME): Verify validity of the current address
before dereferencing.
From-SVN: r146182
* gcc-interface/Makefile.in: Change g-trasym to g-trasym-unimplemented
for the targets where GNAT.Traceback.Symbolic is not supported.
From-SVN: r146181
2009-04-16 Richard Guenther <rguenther@suse.de>
Ira Rosen <irar@il.ibm.com>
PR tree-optimization/39698
* tree-vect-loop.c (get_initial_def_for_reduction): Use the
type of the reduction variable. Only generate the def if
it is needed.
* omp-low.c (expand_omp_for_generic): When converting to a pointer
make sure to first convert to an integer of the same precision.
* tree-vect-loop-manip.c (vect_update_ivs_after_vectorizer): Retain
the type of the evolution correctly in computing the new
induction variable base.
Co-Authored-By: Ira Rosen <irar@il.ibm.com>
From-SVN: r146180
2009-04-16 Ed Schonberg <schonberg@adacore.com>
* sprint.adb (Write_Itype): If the itype is an array subtype, preserve
the original location of the index expressions and the index subtypes,
to prevent spurious out-of-scope references in gigi.
2009-04-16 Tristan Gingold <gingold@adacore.com>
* init.c, s-osinte-darwin.ads, system-darwin-x86_64.ads:
Add support for stack checking on darwin.
2009-04-16 Vincent Celier <celier@adacore.com>
* prj-attr.adb: New attribute Runtime_Source_Dir
* prj-nmsc.adb (Process_Project_Level_Array_Attributes): Process
attribute Runtime_Source_Dir.
(Check_Naming_Schemes): Give default values to out parameters to avoid
invalid data.
* prj.ads (Language_Config): New component Runtime_Source_Dir
* snames.ads-tmpl: New standard name Runtime_Source_Dir
From-SVN: r146177
2009-04-16 Pascal Obry <obry@adacore.com>
* adaint.h, adaint.c (__gnat_rmdir): New routine.
Simple wrapper routines used to convert to proper encoding on
Windows.
* s-crtl.ads: Use __gnat_rmdir instead of direct call to the C library.
* g-dirope.adb (Remove_Dir): Fix a bug, the root directory was removed
twice.
From-SVN: r146176
2009-04-16 Thomas Quinot <quinot@adacore.com>
* snames.ads-tmpl (Name_Defined): New predefined name for use by the
integrated preprocessor.
* prep.ads, prep.adb (Setup_Hooks): New subprogram.
(Initialize): Split into two subprograms, Initialize (to be called
prior to compiler command line processing) and Setup_Hooks (to be called
later on when the first source file is loaded).
* gprep.adb: Change call to Prep.Initialize to call to Prep.Setup_Hooks.
Add call to Prep.Initialize.
* sinput-l.adb, prepcomp.adb: Change call to Prep.Initialize to call
to Prep.Setup_Hooks.
2009-04-16 Pascal Obry <obry@adacore.com>
* adaint.h, adaint.c (__gnat_chdir): New routine.
Simple wrapper routines used to convert to proper encoding on
Windows.
* s-crtl.ads: Use __gnat_chdir instead of direct call to the C library.
* a-direct.adb, g-dirope.adb: Use chdir from System.CRTL.
From-SVN: r146174
2009-04-16 Quentin Ochem <ochem@adacore.com>
* sinput-p.adb (Clear_Source_File_Table): Use Sinput.Initialize instead
of Source.Init.
2009-04-16 Eric Botcazou <ebotcazou@adacore.com>
* a-convec.ads (Is_Empty): Mark inline.
2009-04-16 Nicolas Roche <roche@adacore.com>
* init.c (__gnat_init_float): Initialize FPU on x86_64 windows
2009-04-16 Thomas Quinot <quinot@adacore.com>
* prepcomp.adb: Minor reformatting
From-SVN: r146170
2009-04-16 Jerome Lambourg <lambourg@adacore.com>
* sem_prag.adb (Process_Import_Or_Interface): With .NET,
Access_Subprogram types can also be imported.
(Check_Form_Of_Interface_Name): Accept '/' character in entity CIL
names.
2009-04-16 Ed Schonberg <schonberg@adacore.com>
* exp_ch6.adb (Make_Build_In_Place_Call_In_Object_Declaration):
preserve homonym chain when the declaration is rewritten into a
renaming declaration, in order to preserve visibility structure.
From-SVN: r146169
2009-04-16 Jerome Lambourg <lambourg@adacore.com>
* sem_prag.adb (Analyze_Pragma): Make sure that pragma pack is not
taken into account for VM targets.
2009-04-16 Hristian Kirtchev <kirtchev@adacore.com>
* g-calend.ads, g-calend.adb (Week_In_Year): Now calls
Year_Week_In_Year.
(Year_Week_In_Year): New routine which contains the original code from
Week_In_Year. Add the missing special case for January 1st falling on
a Monday.
From-SVN: r146167
2009-04-16 Thomas Quinot <quinot@adacore.com>
* exp_dist.adb (Build_From_Any_Call): For a subtype that is a generic
actual type, use the base type to build the To_Any function.
(Build_From_Any_Function): Remove junk, useless subtype conversion.
2009-04-16 Thomas Quinot <quinot@adacore.com>
* exp_ch9.adb, exp_code.adb, tbuild.adb, sem_case.adb,
restrict.adb: Minor code reorganization (use
Add_{Char,Str}_To_Name_Buffer instead of inlining it by hand).
From-SVN: r146166