Arnaud Charlet [Thu, 17 Jun 2010 13:03:27 +0000 (15:03 +0200)]
[multiple changes]
2010-06-17 Ed Schonberg <schonberg@adacore.com>
* exp_ch4.adb: expand NOT for VMS types.
* sem_util.adb: Use OpenVMS_On_Target for IS_VMS_Operator.
2010-06-17 Sergey Rybin <rybin@adacore.com>
* vms_data.ads: Add qualifier for '--no-elim-dispatch' gnatelim option.
* gnat_ugn.texi (gnatelim): add description for --no-elim-dispatch
option.
From-SVN: r160908
Arnaud Charlet [Thu, 17 Jun 2010 13:00:26 +0000 (15:00 +0200)]
[multiple changes]
2010-06-17 Ed Schonberg <schonberg@adacore.com>
* exp_ch6.adb (Expand_Call): Do not expand a call to an internal
protected operation if the subprogram has been eliminated.
2010-06-17 Vincent Celier <celier@adacore.com>
* prj-nmsc.adb (Check_Library_Attributes): Allow the different
directories associated with a library to be any directory when the
library project is externally built.
2010-06-17 Vincent Celier <celier@adacore.com>
* make.adb (Check): If switch -m is used, deallocate the memory that
may be allocated when computing the checksum.
From-SVN: r160907
Arnaud Charlet [Thu, 17 Jun 2010 12:52:58 +0000 (14:52 +0200)]
[multiple changes]
2010-06-17 Eric Botcazou <ebotcazou@adacore.com>
* g-socthi-mingw.adb (C_Recvmsg): Add 'use type' clause for C.size_t;
(C_Sendmsg): Likewise.
2010-06-17 Thomas Quinot <quinot@adacore.com>
* sem_res.adb: Update comments.
2010-06-17 Vincent Celier <celier@adacore.com>
* back_end.adb (Scan_Compiler_Arguments): Process last argument.
From-SVN: r160906
Arnaud Charlet [Thu, 17 Jun 2010 12:26:10 +0000 (14:26 +0200)]
[multiple changes]
2010-06-17 Robert Dewar <dewar@adacore.com>
* exp_ch3.adb, exp_ch6.adb, exp_smem.adb, exp_util.adb: Use Ekind_In.
* layout.adb, freeze.adb: Use Make_Temporary.
2010-06-17 Jerome Lambourg <lambourg@adacore.com>
* exp_ch11.adb (Expand_N_Raise_Statement): Expand raise statements in
.NET/JVM normally as this is now perfectly supported by the backend.
2010-06-17 Pascal Obry <obry@adacore.com>
* gnat_rm.texi: Fix minor typo, remove duplicate blank lines.
2010-06-17 Vincent Celier <celier@adacore.com>
* make.adb (Collect_Arguments_And_Compile): Create include path file
only when -x is specified.
(Gnatmake): Ditto
* opt.ads (Use_Include_Path_File): New Boolean flag, initialized to
False.
* prj-env.adb (Set_Ada_Paths): New Boolean parameters Include_Path and
Objects_Path, defaulted to True. Only create include path file if
Include_Path is True, only create objects path file if Objects_Path is
True.
* prj-env.ads (Set_Ada_Paths): New Boolean parameters Include_Path and
Objects_Path, defaulted to True.
* switch-m.adb (Scan_Make_Switches): Set Use_Include_Path_File to True
when -x is used.
2010-06-17 Ed Schonberg <schonberg@adacore.com>
* exp_disp.adb (Build_Interface_Thunk): Use base type of formal to
determine whether it has the controlling type, when the formal is an
access parameter.
2010-06-17 Eric Botcazou <ebotcazou@adacore.com>
* s-crtl.ads (ssize_t): New type.
(read): Fix signature.
(write): Likewise.
* g-socthi.ads: Add 'with System.CRTL' clause. Remove ssize_t and
'use type' directive for C.size_t, add one for System.CRTL.ssize_t.
(C_Recvmsg): Replace ssize_t with System.CRTL.ssize_t.
(C_Sendmsg): Likewise.
* g-socthi.adb (Syscall_Recvmsg): Likewise.
(Syscall_Sendmsg): Likewise.
(C_Recvmsg): Likewise.
(C_Sendmsg): Likewise.
* g-socthi-mingw.ads: Add 'with System.CRTL' clause. Remove ssize_t
and 'use type' directive for C.size_t, add one for System.CRTL.ssize_t.
(C_Recvmsg): Replace ssize_t with System.CRTL.ssize_t.
(C_Sendmsg): Likewise.
* g-socthi-mingw.adb (C_Recvmsg): Likewise.
(C_Sendmsg): Likewise.
* g-socthi-vms.ads: Add 'with System.CRTL' clause. Remove ssize_t and
'use type' directive for C.size_t, add one for System.CRTL.ssize_t.
(C_Recvmsg): Replace ssize_t with System.CRTL.ssize_t.
(C_Sendmsg): Likewise.
* g-socthi-vms.adb (C_Recvmsg): Likewise.
(C_Sendmsg): Likewise.
* g-socthi-vxworks.ads Add 'with System.CRTL' clause. Remove ssize_t
and 'use type' directive for C.size_t, add one for System.CRTL.ssize_t.
(C_Recvmsg): Replace ssize_t with System.CRTL.ssize_t.
(C_Sendmsg): Likewise.
* g-socthi-vxworks.adb (C_Recvmsg): Likewise.
(C_Sendmsg): Likewise.
* g-sercom-linux.adb (Read): Use correct types to call 'read'.
(Write): Likewise to call 'write'.
* s-os_lib.adb (Read): Use correct type to call System.CRTL.read.
(Write): Use correct type to call System.CRTL.write.
* s-tasdeb.adb (Write): Likewise.
2010-06-17 Vincent Celier <celier@adacore.com>
* prj-proc.adb (Copy_Package_Declarations): Change argument name
Naming_Restricted to Restricted. If Restricted is True, do not copy the
value of attribute Linker_Options.
From-SVN: r160905
Richard Guenther [Thu, 17 Jun 2010 12:22:22 +0000 (12:22 +0000)]
gimplify.c (gimplify_bind_expr): Always promote complex and vector variables to registers if possible.
2010-06-17 Richard Guenther <rguenther@suse.de>
* gimplify.c (gimplify_bind_expr): Always promote complex
and vector variables to registers if possible.
From-SVN: r160903
Richard Guenther [Thu, 17 Jun 2010 12:16:19 +0000 (12:16 +0000)]
expr.c (get_inner_reference): Use double_int for bit_offset calculation.
2010-06-17 Richard Guenther <rguenther@suse.de>
* expr.c (get_inner_reference): Use double_int for bit_offset
calculation.
From-SVN: r160902
Eric Botcazou [Thu, 17 Jun 2010 10:48:22 +0000 (10:48 +0000)]
trans.c (push_stack, pop_stack): Delete.
* gcc-interface/trans.c (push_stack, pop_stack): Delete.
(Case_Statement_to_gnu): Adjust.
(Loop_Statement_to_gnu): Likewise.
(Subprogram_Body_to_gnu): Likewise.
(Handled_Sequence_Of_Statements_to_gnu): Likewise.
(Compilation_Unit_to_gnu): Likewise.
From-SVN: r160898
Robert Dewar [Thu, 17 Jun 2010 10:45:18 +0000 (10:45 +0000)]
exp_fixd.adb, [...]: Use Make_Temporary
2010-06-17 Robert Dewar <dewar@adacore.com>
* exp_fixd.adb, exp_imgv.adb, exp_intr.adb, exp_pakd.adb, exp_prag.adb,
exp_sel.adb, exp_util.adb, sem_ch10.adb, sem_ch12.adb, sem_ch13.adb,
sem_ch3.adb, sem_ch4.adb, sem_ch5.adb, sem_ch8.adb, sem_ch9.adb,
sem_dist.adb, sem_util.adb: Use Make_Temporary
* itypes.ads, tbuild.ads: Minor comment update
* exp_ch9.adb, exp_dist.adb: Minor reformatting
From-SVN: r160897
Arnaud Charlet [Thu, 17 Jun 2010 10:20:27 +0000 (12:20 +0200)]
[multiple changes]
2010-06-17 Thomas Quinot <quinot@adacore.com>
* exp_imgv.adb, exp_ch7.ads: Minor reformatting.
2010-06-17 Robert Dewar <dewar@adacore.com>
* exp_ch9.adb, exp_disp.adb, exp_dist.adb: Use Make_Temporary.
2010-06-17 Thomas Quinot <quinot@adacore.com>
* sprint.adb (pg): Set Dump_Freeze_Null, to be consistent with -gnatdg.
From-SVN: r160895
Robert Dewar [Thu, 17 Jun 2010 10:15:35 +0000 (10:15 +0000)]
exp_ch6.adb, [...]: Use Make_Temporary
2010-06-17 Robert Dewar <dewar@adacore.com>
* exp_ch6.adb, exp_ch7.adb, exp_ch5.adb: Use Make_Temporary
* tbuild.ads (Make_Temporary): More comment updates
* tbuild.adb: Minor reformatting
From-SVN: r160894
Robert Dewar [Thu, 17 Jun 2010 10:07:53 +0000 (10:07 +0000)]
checks.adb, [...]: Minor code reorganization.
2010-06-17 Robert Dewar <dewar@adacore.com>
* checks.adb, exp_aggr.adb, exp_atag.adb, exp_attr.adb, exp_ch11.adb,
exp_ch3.adb, exp_ch4.adb: Minor code reorganization.
Use Make_Temporary.
* tbuild.ads, tbuild.adb (Make_Temporary): Clean up, use Entity_Id
instead of Node_Id.
(Make_Temporary): Add more extensive documentation
From-SVN: r160893
Robert Dewar [Thu, 17 Jun 2010 09:57:32 +0000 (09:57 +0000)]
sem_intr.adb, [...]: Minor reformatting.
2010-06-17 Robert Dewar <dewar@adacore.com>
* sem_intr.adb, sem_prag.adb, sem_res.adb, sem_type.adb, sem_util.adb,
sem_warn.adb, sem_eval.adb: Minor reformatting. Use Ekind_In.
(Set_Slice_Subtype): Explicitly freeze the slice's itype at the point
where the slice's actions are inserted.
(Decompose_Expr): Account for possible rewriting of slice bounds
resulting from side effects suppression caused by the above freezing,
so that folding of bounds is preserved by such rewriting.
2010-06-17 Robert Dewar <dewar@adacore.com>
* einfo.ads, einfo.adb (Get_Record_Representation_Clause): New function.
* freeze.adb (Freeze_Record_Type): Add call to
Check_Record_Representation_Clause.
* sem_ch13.adb (Check_Record_Representation_Clause): New function
(Analyze_Record_Representation_Clause): Split out overlap code into this
new function.
(Check_Component_Overlap): Moved inside
Check_Record_Representation_Clause.
* sem_ch13.ads (Check_Record_Representation_Clause): New function.
From-SVN: r160892
Arnaud Charlet [Thu, 17 Jun 2010 09:32:20 +0000 (11:32 +0200)]
[multiple changes]
2010-06-17 Robert Dewar <dewar@adacore.com>
* back_end.adb, sem_res.adb, switch-c.adb, sem_scil.adb: Minor
reformatting.
* sem_attr.adb, sem_cat.adb, sem_disp.adb, sem_elab.adb, sem_elim.adb,
sem_eval.adb: Use Ekind_In
2010-06-17 Ed Schonberg <schonberg@adacore.com>
* sem_ch8.adb: better error message for illegal inherited discriminant
2010-06-17 Vincent Celier <celier@adacore.com>
* bindusg.adb: Remove lines for -A and -C
* gnat_ugn.texi: Remove all documentation and examples of switches -A
and -C for gnatbind and gnatlink.
* gnatlink.adb (Usage): Remove lines for -A and -C
* switch-b.adb (Scan_Binder_Switches): Issue warning when switch -C is
specified.
* gcc-interface/Make-lang.in: Update dependencies.
From-SVN: r160891
Vincent Celier [Thu, 17 Jun 2010 09:06:41 +0000 (09:06 +0000)]
back_end.adb (Scan_Compiler_Arguments): Put all arguments in new local Argument_List variable Args.
2010-06-17 Vincent Celier <celier@adacore.com>
* back_end.adb (Scan_Compiler_Arguments): Put all arguments in new
local Argument_List variable Args.
* switch-c.adb (Scan_Front_End_Switches): New Argument_List argument
Args.
(Switch_Subsequently_Cancelled): New Argument_List argument Args. Look
for subsequent switches in Args.
* switch-c.ads (Scan_Front_End_Switches): New Argument_List argument
Args.
* gcc-interface/Make-lang.in: Update dependencies.
From-SVN: r160890
Arnaud Charlet [Thu, 17 Jun 2010 08:56:40 +0000 (10:56 +0200)]
[multiple changes]
2010-06-17 Robert Dewar <dewar@adacore.com>
* einfo.adb: Minor code fix, allow E_Class_Wide_Type for
Equivalent_Type to match documentation.
2010-06-17 Robert Dewar <dewar@adacore.com>
* sem_ch6.adb, sem_ch7.adb: Minor reformatting.
* sem_ch3.adb, sem_ch5.adb, sem_ch9.adb, sem_ch10.adb, sem_ch12.adb,
sem_ch4.adb, sem_ch8.adb, sem_ch13.adb: Make use of Ekind_In.
2010-06-17 Thomas Quinot <quinot@adacore.com>
* sem_res.adb (Set_Slice_Subtype): Always freeze the slice's itype.
2010-06-17 Thomas Quinot <quinot@adacore.com>
* freeze.adb (Freeze_Expression): Short circuit operators are valid
freeze node insertion points.
From-SVN: r160889
Arnaud Charlet [Thu, 17 Jun 2010 08:49:10 +0000 (10:49 +0200)]
[multiple changes]
2010-06-17 Robert Dewar <dewar@adacore.com>
* switch-c.ads, switch-c.adb, sem_ch13.adb: Minor reformatting.
* sem_ch12.adb: Add pragmas Assert and Check to previous change.
2010-06-17 Gary Dismukes <dismukes@adacore.com>
* layout.adb (Layout_Type): Broaden test for setting an array type's
Component_Size to include all scalar types, not just discrete types
(components of real types were missed).
* sem_ch3.adb (Constrain_Index): Add missing setting of First_Literal
on the itype created for an index (consistent with Make_Index and
avoids possible Assert_Failures).
2010-06-17 Robert Dewar <dewar@adacore.com>
* atree.ads, atree.adb: Add 6-parameter version of Ekind_In
* einfo.adb: Minor code reformatting (use Ekind_In)
From-SVN: r160887
Arnaud Charlet [Thu, 17 Jun 2010 08:42:42 +0000 (10:42 +0200)]
[multiple changes]
2010-06-17 Robert Dewar <dewar@adacore.com>
* sem_warn.adb (Test_Ref): Abandon scan if access subprogram parameter
found.
2010-06-17 Vincent Celier <celier@adacore.com>
* back_end.adb: Minor comment updates
* switch-c.adb: Remove dependencies on gcc C sources
* gcc-interface/Make-lang.in: Add a-comlin.o to the object file list
for the compiler.
From-SVN: r160884
Paolo Carlini [Thu, 17 Jun 2010 08:34:17 +0000 (08:34 +0000)]
stl_uninitialized.h (__uninitialized_default, [...]): Add.
2010-06-17 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_uninitialized.h (__uninitialized_default,
__uninitialized_default_n, __uninitialized_default_a,
__uninitialized_default_n_a): Add.
* include/bits/stl_uninitialized.h (uninitialized_copy,
uninitialized_fill, uninitialized_fill_n): Use __is_trivial
instead of __is_pod.
* include/bits/valarray_array.h: Likewise.
* include/bits/stl_algobase.h (__copy_move_backward_a,
__copy_move_a): Likewise.
From-SVN: r160882
Arnaud Charlet [Thu, 17 Jun 2010 07:42:04 +0000 (09:42 +0200)]
[multiple changes]
2010-06-17 Ed Schonberg <schonberg@adacore.com>
* sem_ch12.adb: propagate Pragma_Enabled flag to generic.
* get_scos.adb: Set C2 flag in decision entry of pragma to 'e' (enabled)
* par_sco.ads, par_sco.adb (Set_SCO_Pragma_Enabled): New procedure
Remove use of Node field in SCOs table
(Output_Header): Set 'd' to initially disable pragma entry
* put_scos.adb (Put_SCOs): New flag indicating if pragma is enabled
* scos.ads, scos.adb: Remove Node field from internal SCOs table.
Use C2 field of pragma decision header to indicate enabled.
* sem_prag.adb: Add calls to Set_SCO_Pragma_Enabled.
* gcc-interface/Make-lang.in: Update dependencies.
2010-06-17 Vincent Celier <celier@adacore.com>
* back_end.adb (Next_Arg): Moved to procedure Scan_Compiler_Arguments
(Scan_Compiler_Arguments): Call Scan_Front_End_Switches with Next_Arg
(Switch_Subsequently_Cancelled): Function moved to the body of Switch.C
* back_end.ads (Scan_Front_End_Switches): Function moved to the body of
Switch.C.
* switch-c.adb: Copied a number of global declarations from back_end.adb
(Len_Arg): New function copied from back_end.adb
(Switch_Subsequently_Cancelled): New function moved from back_end.adb
(Scan_Front_End_Switches): New parameter Arg_Rank used to call
Switch_Subsequently_Cancelled.
* switch-c.ads (Scan_Front_End_Switches): New parameter Arg_Rank.
* gcc-interface/Makefile.in: Add line so that shared libgnat is linked
with -lexc on Tru64.
From-SVN: r160878
Manuel López-Ibáñez [Thu, 17 Jun 2010 07:28:21 +0000 (07:28 +0000)]
re PR c++/44486 (missing space in __PRETTY_FUNCTION__ expansion in anonymous namespace)
2010-06-17 Manuel López-Ibáñez <manu@gcc.gnu.org>
PR c++/44486
cp/
* error.c (dump_decl): Better wording for anonymous namespace.
testsuite/
* g++.dg/pr44486.C: New.
From-SVN: r160877
Robert Dewar [Thu, 17 Jun 2010 07:18:19 +0000 (07:18 +0000)]
prj.ads, prj.adb: Minor reformatting
2010-06-17 Robert Dewar <dewar@adacore.com>
* prj.ads, prj.adb: Minor reformatting
From-SVN: r160876
Arnaud Charlet [Thu, 17 Jun 2010 07:11:13 +0000 (09:11 +0200)]
[multiple changes]
2010-06-17 Thomas Quinot <quinot@adacore.com>
* put_scos.adb: Do not generate a blank line in SCOs when omitting the
CP line for a disabled pragma.
2010-06-17 Emmanuel Briot <briot@adacore.com>
* prj-proc.adb, prj.adb, prj.ads (Check_Or_Set_Typed_Variable): New
subprogram.
(Process_Declarative_Item): An invalid value in an typed variable
declaration is no longer always fatal.
From-SVN: r160875
GCC Administrator [Thu, 17 Jun 2010 00:17:08 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r160869
DJ Delorie [Wed, 16 Jun 2010 22:52:25 +0000 (18:52 -0400)]
common.opt (-fstrict-volatile-bitfields): new.
* common.opt (-fstrict-volatile-bitfields): new.
* doc/invoke.texi: Document it.
* fold-const.c (optimize_bit_field_compare): For volatile
bitfields, use the field's type to determine the mode, not the
field's size.
* expr.c (expand_assignment): Likewise.
(get_inner_reference): Likewise.
(expand_expr_real_1): Likewise.
* expmed.c (store_fixed_bit_field): Likewise.
(extract_bit_field_1): Likewise.
(extract_fixed_bit_field): Likewise.
* gcc.target/i386/volatile-bitfields-1.c: New.
* gcc.target/i386/volatile-bitfields-2.c: New.
From-SVN: r160865
Richard Guenther [Wed, 16 Jun 2010 20:28:24 +0000 (20:28 +0000)]
tree-inline.c (remap_gimple_op_r): Recurse using remap_gimple_op_r.
2010-06-16 Richard Guenther <rguenther@suse.de>
* tree-inline.c (remap_gimple_op_r): Recurse using
remap_gimple_op_r.
From-SVN: r160860
Jason Merrill [Wed, 16 Jun 2010 20:21:17 +0000 (16:21 -0400)]
fix Wnoexcept typo
From-SVN: r160859
Douglas B Rupp [Wed, 16 Jun 2010 19:40:46 +0000 (19:40 +0000)]
This patch adds the end prologue and begin epilogue markers in Dwarf2
that are needed by the VMS debugger on I64.
* config/ia64/vms.h (ASM_OUTPUT_DWARF_DELTA_UNITS): Remove.
(ASM_OUTPUT_DWARF_VMS_DELTA: Define new macro.
* dbxout.c (gcc_debug_hooks): New entry begin_epilogue.
* debug.c: Likewise.
* sdbout.c: Likewise.
* vmsdbgout.c: Likewise.
* debug.h: Likewise. (dwarf2out_vms_{begin,end}_prologue): Declare.
* doc/tm.texi (ASM_OUTPUT_DWARF_VMS_DELTA): Document.
* dwarf2asm.c (dw2_asm_output_vms_delta): New function.
(ASM_OUTPUT_DWARF_VMS_DELTA): Call it.
* dwarf2asm.h (dw2_asm_output_vms_delta): Declare.
* dwarf2out.c (dw_fde_struct): New fields
dw_fde_vms_{end,begin}_prologue.
(PROLOGUE_END_LABEL, EPILOGUE_BEGIN_LABEL): New macros.
(dwarf2out_begin_prologue): Set dw_fde_struct defaults for above.
(dwarf2out_vms_end_prologue): New function.
(dwarf2out_vms_begin_epilogue): New function.
(dw_val_struct): New value dw_val_class_vms_delta.
(gcc_debug_hooks): New entry begin_epilogue. Set end_prologue,
begin_epilogue for VMS.
(AT_vms_delta1, AT_vms_delta2, add_AT_vms_delta): Declare
new static functions.
(dwarf_attr_name): New cases DW_AT_HP_{prologue,epilogue}.
(AT_vms_delta1, AT_vms_delta2, add_AT_vms_delta): New
static functions.
(print_die): New case dw_val_class_vms_delta.
(attr_checksum): Likewise.
(same_dw_val_p: Likewise.
(size_of_die): Likewise.
(value_format): Likewise.
(output_die): Likewise.
(gen_subprogram_die): Call add_AT_vms_delta on VMS.
(dwarf2out_begin_epilogue): Rename to dwarf2out_cfi_begin_epilogue
* dwarf2out.h (dwarf2out_begin_epilogue): Rename to
dwarf2out_cfi_begin_epilogue
* final.c (final_scan_insn): Likewise. Call begin_epilogue.
From-SVN: r160858
Nathan Froyd [Wed, 16 Jun 2010 18:10:06 +0000 (18:10 +0000)]
cris-protos.h (cris_print_operand): Delete.
* config/cris/cris-protos.h (cris_print_operand): Delete.
(cris_print_operand_address): Delete.
* config/cris/cris.h (PRINT_OPERAND): Delete.
(PRINT_OPERAND_PUNCT_VALID_P): Delete.
(PRINT_OPERAND_ADDRESS): Delete.
* config/cris/cris.c (cris_print_operand_address): Make static.
(cris_print_operand): Make static.
(cris_print_operand_punct_valid_p): New function.
(TARGET_PRINT_OPERAND, TARGET_PRINT_OPERAND_ADDRESS):
(TARGET_PRINT_OPERAND_ADDRESS): Define.
From-SVN: r160857
Nathan Froyd [Wed, 16 Jun 2010 18:07:09 +0000 (18:07 +0000)]
class.c (build_vtbl_initializer): Adjust computation of new_position and which entry to add padding for.
* class.c (build_vtbl_initializer): Adjust computation of new_position
and which entry to add padding for.
From-SVN: r160856
Nathan Froyd [Wed, 16 Jun 2010 18:03:50 +0000 (18:03 +0000)]
add missed ChangeLog for previous commit
From-SVN: r160855
Nathan Froyd [Wed, 16 Jun 2010 18:02:58 +0000 (18:02 +0000)]
arm-protos.h (arm_print_operand): Delete.
* config/arm/arm-protos.h (arm_print_operand): Delete.
(arm_print_operand_address): Delete.
* config/arm/arm.h (PRINT_OPERAND): Delete.
(PRINT_OPERAND_PUNCT_VALID_P): Delete.
(PRINT_OPERAND_ADDRESS, ARM_PRINT_OPERAND_ADDRESS):
(THUMB_PRINT_OPERAND_ADDRESS): Delete and move code to...
* config/arm/arm.c (arm_print_operand_address): ...here. New
function.
(arm_print_operand): Make static.
(arm_print_operand_punct_valid_p): New function.
(TARGET_PRINT_OPERAND, TARGET_PRINT_OPERAND_ADDRESS):
(TARGET_PRINT_OPERAND_ADDRESS): Define.
From-SVN: r160854
Arnaud Charlet [Wed, 16 Jun 2010 16:31:41 +0000 (18:31 +0200)]
Update dependencies.
From-SVN: r160850
Arnaud Charlet [Wed, 16 Jun 2010 16:30:48 +0000 (16:30 +0000)]
get_scos.adb, [...]: Code clean up, update documentation.
* get_scos.adb, par_sco.adb, par_sco.ads, put_scos.adb, scos.adb,
scos.ads, exp_ch4.adb, sem_warn.adb: Code clean up, update
documentation.
From-SVN: r160849
Arnaud Charlet [Wed, 16 Jun 2010 16:24:42 +0000 (18:24 +0200)]
Complete previous change.
From-SVN: r160848
Arnaud Charlet [Wed, 16 Jun 2010 16:22:44 +0000 (18:22 +0200)]
[multiple changes]
2010-06-16 Javier Miranda <miranda@adacore.com>
* exp_disp.adb (Expand_Dispatching_Call): Adjust the decoration of the
node referenced by the SCIL node of dispatching "=" to skip the tags
comparison.
2010-06-16 Ed Schonberg <schonberg@adacore.com>
* sem_ch5.adb (Analyze_Exit_Statement): Return if no enclosing loop,
to prevent cascaded errors and compilation aborts.
2010-06-16 Robert Dewar <dewar@adacore.com>
* back_end.adb (Switch_Subsequently_Cancelled): New function
Move declarations to package body level to support this change
* back_end.ads (Switch_Subsequently_Cancelled): New function
* gnat_ugn.texi: Document -gnat-p switch
* switch-c.adb (Scan_Front_End_Switches): Implement -gnat-p switch
* ug_words: Add entry for -gnat-p (UNSUPPRESS_ALL)
* usage.adb: Add line for -gnat-p switch
* vms_data.ads: Add entry for UNSUPPRESS_ALL (-gnat-p)
2010-06-16 Robert Dewar <dewar@adacore.com>
* sem_warn.adb (Check_Infinite_Loop_Warning): Declaration counts as
modification.
From-SVN: r160847
Nick Clifton [Wed, 16 Jun 2010 16:04:27 +0000 (16:04 +0000)]
constraints.md (NEGint4): New constraint.
* config/rx/constraints.md (NEGint4): New constraint.
* config/rx/rx.md (attr cc): Add set_zsc.
(cbranchsf4): Only test for -fnon-call-exceptions if cfun has been
initialised.
(cmpsf): Likewise.
(call_internal): Clobber the cc0 register.
(call_value_internal): Likewise.
(cstoresi4): Likewise.
(movsieq): Likewise.
(movsine): Likewise.
(addsi3): Add alternative to handle small negative constants.
(sunsi3): Likewise.
(addsi3): Do not set the O bit in the cc0 register.
(adddi3): Likewise.
(subsi3): Likewise.
(subdi3): Likewise.
(andsi3): Reorder alternatives to prefer shorter forms.
(mulsi3): Likewise.
(iorsi3): Likewise.
(negsi2): Note that the cc0 flags are set.
(rotlsi3): Note that only the Z and S bits are set in cc0.
(lshrsi3): Likewise.
(ashlsi3): Likewise.
(subsf3): Use %Q for the MEM operand.
(fix_truncsfsi2): Likewise.
(floatsisf2): Likewise.
(bitset): Remove early clobber from destination.
(bitset_in_memory): Likewise.
(lrintsf2): Clobber the cc0 register.
* config/rx/rx.c (rx_notice_update_cc):
Handle CC_SET_ZSC.
(rx_print_operand): Handle %N.
From-SVN: r160846
Jan Hubicka [Wed, 16 Jun 2010 16:00:35 +0000 (18:00 +0200)]
* df-core.c (df_compact_blocks): Free problem_temps vector.
From-SVN: r160845
Robert Dewar [Wed, 16 Jun 2010 15:53:09 +0000 (17:53 +0200)]
exp_disp.adb: Minor reformatting
2010-06-16 Robert Dewar <dewar@adacore.com>
* exp_disp.adb: Minor reformatting
From-SVN: r160844
Arnaud Charlet [Wed, 16 Jun 2010 15:47:23 +0000 (17:47 +0200)]
[multiple changes]
2010-06-16 Ed Schonberg <schonberg@adacore.com>
* sem_ch3.adb (Complete_Private_Subtype): Inherit class_wide type from
base type only if it was not previously created for the partial view.
2010-06-16 Thomas Quinot <quinot@adacore.com>
* tbuild.ads: Minor comment fix
From-SVN: r160843
Jason Merrill [Wed, 16 Jun 2010 15:45:36 +0000 (11:45 -0400)]
c.opt: Add -Wnoexcept.
* c.opt: Add -Wnoexcept.
* except.c (check_noexcept_r): Return the problematic function.
(finish_noexcept_expr): Give -Wnoexcept warning. Add complain parm.
* pt.c (tsubst_copy_and_build): Pass it.
* parser.c (cp_parser_unary_expression): Likewise.
* cp-tree.h: Adjust prototype.
From-SVN: r160842
Jason Merrill [Wed, 16 Jun 2010 15:45:22 +0000 (11:45 -0400)]
method.c (defaulted_late_check): Give the defaulted method the same exception specification as the implicit...
* method.c (defaulted_late_check): Give the defaulted method
the same exception specification as the implicit declaration.
From-SVN: r160841
Richard Guenther [Wed, 16 Jun 2010 14:11:03 +0000 (14:11 +0000)]
re PR c/44555 (Pointer evalutions, is that expected ?)
2010-06-16 Richard Guenther <rguenther@suse.de>
PR c/44555
* c-common.c (c_common_truthvalue_conversion): Remove
premature and wrong optimization concering ADDR_EXPRs.
* gcc.c-torture/execute/pr44555.c: New testcase.
From-SVN: r160836
Janus Weil [Wed, 16 Jun 2010 12:54:54 +0000 (14:54 +0200)]
re PR fortran/44549 ([OOP][F2008] Type-bound procedure: bogus error from list after PROCEDURE)
2010-06-16 Janus Weil <janus@gcc.gnu.org>
PR fortran/44549
* gfortran.h (gfc_get_typebound_proc): Modified Prototype.
* decl.c (match_procedure_in_type): Give a unique gfc_typebound_proc
structure to each procedure in a procedure list.
* module.c (mio_typebound_proc): Add NULL argument to
'gfc_get_typebound_proc'.
* symbol.c (gfc_get_typebound_proc): Add a new argument, which is used
to initialize the new structure.
2010-06-16 Janus Weil <janus@gcc.gnu.org>
PR fortran/44549
* gfortran.dg/typebound_proc_16.f03: New.
From-SVN: r160834
Paolo Carlini [Wed, 16 Jun 2010 12:26:24 +0000 (12:26 +0000)]
stl_construct.h (_Construct): Change to variadic in C++0x mode, consistently with allocator::construct.
2010-06-16 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_construct.h (_Construct): Change to variadic in
C++0x mode, consistently with allocator::construct.
* include/bits/stl_uninitialized.h (__uninitialized_copy_n): Use
_Construct.
(__uninitialized_construct_range): Move to...
* include/bits/stl_tempbuf.h (__uninitialized_construct_buf): ... here.
From-SVN: r160833
Martin Jambor [Wed, 16 Jun 2010 12:21:56 +0000 (14:21 +0200)]
re PR tree-optimization/43905 (duplicate __PRETTY_FUNCTION__ symbol for functions differing in const-ness)
2010-06-16 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/43905
* tree-sra.c: Include tree-inline.h.
(create_abstract_origin): Removed.
(modify_function): Version the call graph node instead of creating
abstract origins and dealing with same_body aliases.
* tree-sra.c (ipa_sra_preliminary_function_checks): Check whether the
function is versionable.
* Makefile.in (tree-sra.o): Add TREE_INLINE_H to dependencies.
* testsuite/g++.dg/torture/pr43905.C: New test.
From-SVN: r160832
Mikael Pettersson [Wed, 16 Jun 2010 11:04:08 +0000 (13:04 +0200)]
re PR testsuite/44538 (PR43949 fix caused gcc.dg/vect/slp-perm-{5,6}.c to fail)
2010-06-16 Mikael Pettersson <mikpe@it.uu.se>
PR testsuite/44538
* gcc.dg/vect/slp-perm-5.c (main): Prevent
initialization loop from being vectorized.
* gcc.dg/vect/slp-perm-6.c (main): Likewise.
From-SVN: r160827
Maxim Kuvyrkov [Wed, 16 Jun 2010 08:08:18 +0000 (08:08 +0000)]
linux64.h (BIONIC_DYNAMIC_LINKERN32): Define.
* config/mips/linux64.h (BIONIC_DYNAMIC_LINKERN32): Define.
(CHOOSE_DYNAMIC_LINKER): Update.
From-SVN: r160824
Matthias Klose [Wed, 16 Jun 2010 06:02:37 +0000 (06:02 +0000)]
compatibility.cc: Export long double versions of "C" math library for arm-linux-gnueabi...
2010-06-16 Matthias Klose <doko@ubuntu.com>
* src/compatibility.cc: Export long double versions of "C" math
library for arm-linux-gnueabi, m68k-linux-gnu (ColdFire),
mips*-linux-gnu (o32 ABI), sh*-linux-gnu (32 bit).
From-SVN: r160823
Alan Modra [Wed, 16 Jun 2010 04:22:36 +0000 (13:52 +0930)]
re PR tree-optimization/44507 (vectorization ANDs array elements together incorrectly)
PR tree-optimization/44507
* gcc.dg/vect/pr44507.c (seeIf256ByteArrayIsConstant): Correct cast.
From-SVN: r160821
Nathan Froyd [Wed, 16 Jun 2010 03:46:12 +0000 (03:46 +0000)]
trans.c (gnu_stack_free_list): Delete.
* gcc-interface/trans.c (gnu_stack_free_list): Delete.
(gnu_except_ptr_stack): Change type to VEC. Update comment.
(gnu_elab_proc_stack): Likewise.
(gnu_return_label_stack): Likewise.
(gnu_loop_label_stack): Likewise.
(gnu_switch_label_stack): Likewise.
(gnu_constraint_label_stack): Likewise.
(gnu_storage_error_label_stack): Likewise.
(gnu_program_error_label_stack): Likewise.
(push_exception_label_stack): Take a VEC ** instead of a tree *.
(push_stack): Likewise. Remove unused second parameter. Update
callers.
(pop_stack): Take a VEC * instead of a tree *. Update callers.
(gigi): Initialize stacks as VECs.
(Identifier_to_gnu): Use VEC_last instead of TREE_VALUE.
(Case_Statement_to_gnu): Likewise.
(Subprogram_Body_to_gnu): Likewise.
(call_to_gnu): Likewise.
(Exception_Handler_to_gnu_sjlj): Likewise.
(gnat_to_gnu): Likewise.
(get_exception_label): Likewise.
From-SVN: r160820
GCC Administrator [Wed, 16 Jun 2010 00:17:36 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r160818
Jason Merrill [Tue, 15 Jun 2010 21:45:49 +0000 (17:45 -0400)]
arg3.C: Adjust error locations.
* g++.dg/overload/arg3.C: Adjust error locations.
* g++.dg/overload/copy1.C: Likewise.
* g++.dg/tc1/dr152.C: Likewise.
* g++.dg/template/incomplete4.C: Likewise.
* g++.dg/template/incomplete5.C: Likewise.
* g++.old-deja/g++.bob/inherit2.C: Likewise.
* g++.old-deja/g++.pt/auto_ptr.C: Likewise.
* g++.old-deja/g++.pt/crash9.C: Likewise.
From-SVN: r160814
Uros Bizjak [Tue, 15 Jun 2010 21:14:48 +0000 (23:14 +0200)]
i386.c (*prefetch_sse_<mode>): Macroize insn from *prefetch_sse and *prefetch_sse_rex using P mode iterator.
* config/i386/i386.c (*prefetch_sse_<mode>): Macroize insn from
*prefetch_sse and *prefetch_sse_rex using P mode iterator.
(*prefetch_3dnow_<mode>): Ditto from *prefetch_3dnow and
*prefetch_3dnow_rex.
From-SVN: r160813
Jason Merrill [Tue, 15 Jun 2010 21:05:22 +0000 (17:05 -0400)]
libstdc++.exp: Set additional_prunes.
* testsuite/lib/libstdc++.exp: Set additional_prunes.
(libstdc++-dg-test): Don't prune here.
* testsuite/lib/prune.exp (dg-prune-output): New.
(libstdc++-dg-prune): Rename from prune_g++_output.
Add a bunch of prunes from gcc's prune.exp.
From-SVN: r160812
Anatoly Sokolov [Tue, 15 Jun 2010 21:01:57 +0000 (01:01 +0400)]
* target.h (struct asm_out):Add declare_constant_name field.
* target-def.h (TARGET_ASM_DECLARE_CONSTANT_NAME): Define.
(TARGET_INITIALIZER): Use TARGET_ASM_DECLARE_CONSTANT_NAME.
* output.h (default_asm_declare_constant_name): Declare.
(assemble_label): Update prototype.
* varasm.c (assemble_constant_contents): Use
targetm.asm_out.declare_constant_name target hook.
(assemble_label): Add 'file' argument.
(default_asm_declare_constant_name): New function.
* system.h (ASM_DECLARE_CONSTANT_NAME): Poison.
* doc/tm.texi (ASM_DECLARE_CONSTANT_NAME): Remove.
(TARGET_ASM_DECLARE_CONSTANT_NAME): Document it.
* config/darwin-protos.h (darwin_asm_declare_constant_name): Declare.
* config/darwin.c (darwin_asm_declare_constant_name): New function.
(machopic_output_indirection): Update assemble_label argument list.
* config/darwin.h (ASM_DECLARE_CONSTANT_NAME): Remove.
(TARGET_ASM_DECLARE_CONSTANT_NAME): Define.
From-SVN: r160811
Jason Merrill [Tue, 15 Jun 2010 20:11:00 +0000 (16:11 -0400)]
class.c (add_implicitly_declared_members): Implicit assignment operators can also be virtual overriders.
* class.c (add_implicitly_declared_members): Implicit assignment
operators can also be virtual overriders.
* method.c (lazily_declare_fn): Likewise.
From-SVN: r160810
Jason Merrill [Tue, 15 Jun 2010 20:10:42 +0000 (16:10 -0400)]
call.c (convert_like_real): Give "initializing argument of" information for ambiguous conversion.
* call.c (convert_like_real): Give "initializing argument of"
information for ambiguous conversion. Give source position
of function.
From-SVN: r160809
Jason Merrill [Tue, 15 Jun 2010 20:10:29 +0000 (16:10 -0400)]
call.c (print_z_candidates): Do print viable deleted candidates.
* call.c (print_z_candidates): Do print viable deleted candidates.
(joust): Don't choose a deleted function just because its worst
conversion is better than another candidate's worst.
From-SVN: r160808
Jason Merrill [Tue, 15 Jun 2010 19:59:02 +0000 (15:59 -0400)]
call.c (convert_like_real): Don't complain about list-value-initialization from an explicit constructor.
* call.c (convert_like_real): Don't complain about
list-value-initialization from an explicit constructor.
From-SVN: r160807
Jason Merrill [Tue, 15 Jun 2010 19:58:54 +0000 (15:58 -0400)]
decl.c (duplicate_decls): Use DECL_IS_BUILTIN rather than test DECL_SOURCE_LOCATION directly.
* decl.c (duplicate_decls): Use DECL_IS_BUILTIN rather than test
DECL_SOURCE_LOCATION directly.
From-SVN: r160806
Jason Merrill [Tue, 15 Jun 2010 19:58:45 +0000 (15:58 -0400)]
class.c (type_has_user_provided_default_constructor): Use sufficient_parms_p.
* class.c (type_has_user_provided_default_constructor): Use
sufficient_parms_p.
From-SVN: r160805
Jason Merrill [Tue, 15 Jun 2010 19:58:35 +0000 (15:58 -0400)]
call.c (is_subseq): Handle ck_aggr, ck_list.
* call.c (is_subseq): Handle ck_aggr, ck_list.
(compare_ics): Treat an aggregate or ambiguous conversion to the
same type as involving the same function.
From-SVN: r160804
Sebastian Pop [Tue, 15 Jun 2010 19:11:59 +0000 (19:11 +0000)]
Fix PR44391: use size_one_node for pointer types.
2010-06-15 Sebastian Pop <sebastian.pop@amd.com>
PR middle-end/44391
* graphite-clast-to-gimple.c (graphite_create_new_loop_guard): Use
size_one_node for pointer types. Do not call gmp_cst_to_tree.
* gcc.dg/graphite/pr44391.c: New.
From-SVN: r160803
Janus Weil [Tue, 15 Jun 2010 18:33:58 +0000 (20:33 +0200)]
re PR fortran/43388 ([F2008][OOP] ALLOCATE with MOLD=)
2010-06-15 Janus Weil <janus@gcc.gnu.org>
PR fortran/43388
* gfortran.h (gfc_expr): Add new member 'mold'.
* match.c (gfc_match_allocate): Implement the MOLD tag.
* resolve.c (resolve_allocate_expr): Ditto.
* trans-stmt.c (gfc_trans_allocate): Ditto.
2010-06-15 Janus Weil <janus@gcc.gnu.org>
PR fortran/43388
* gfortran.dg/allocate_alloc_opt_8.f90: New.
* gfortran.dg/allocate_alloc_opt_9.f90: New.
* gfortran.dg/allocate_alloc_opt_10.f90: New.
* gfortran.dg/class_allocate_2.f03: Modified an error message.
From-SVN: r160801
Eric Botcazou [Tue, 15 Jun 2010 17:10:34 +0000 (17:10 +0000)]
Fix nits
From-SVN: r160799
Richard Guenther [Tue, 15 Jun 2010 15:37:50 +0000 (15:37 +0000)]
tree-ssa-pre.c (eliminate): Handle PHI elimination to constants.
2010-06-15 Richard Guenther <rguenther@suse.de>
* tree-ssa-pre.c (eliminate): Handle PHI elimination to constants.
* gcc.dg/tree-ssa/ssa-sccvn-4.c: Adjust.
From-SVN: r160793
Rainer Orth [Tue, 15 Jun 2010 13:51:07 +0000 (13:51 +0000)]
configure.ac (*-*-solaris2.8*): Only usr alternate thread library on Solaris 8.
* configure.ac (*-*-solaris2.8*): Only usr alternate thread
library on Solaris 8.
(*-*-solaris2*): Use regular thread library otherwise.
* configure: Regenerate.
From-SVN: r160787
Richard Guenther [Tue, 15 Jun 2010 13:51:02 +0000 (13:51 +0000)]
bb-slp-21.c: Adjust.
2010-06-15 Richard Guenther <rguenther@suse.de>
* gcc.dg/vect/bb-slp-21.c: Adjust.
* gcc.dg/vect/bb-slp-13.c: Likewise
* gcc.dg/vect/bb-slp-4.c: Likewise
* gcc.dg/vect/bb-slp-22.c: Likewise
* gcc.dg/vect/bb-slp-14.c: Likewise
* gcc.dg/vect/bb-slp-23.c: Likewise
* gcc.dg/vect/bb-slp-15.c: Likewise
* gcc.dg/vect/bb-slp-17.c: Likewise
* gcc.dg/vect/bb-slp-18.c: Likewise
* gcc.dg/vect/bb-slp-19.c: Likewise
* gcc.dg/vect/bb-slp-10.c: Likewise
* gcc.dg/vect/bb-slp-11.c: Likewise
* gcc.dg/vect/bb-slp-20.c: Likewise
* gcc.dg/vect/bb-slp-3.c: Likewise
From-SVN: r160786
Paul Brook [Tue, 15 Jun 2010 13:44:51 +0000 (13:44 +0000)]
arm.c (use_vfp_abi): Add sorry() for Thumb-1 hard-float ABI.
2010-06-15 Paul Brook <paul@codesourcery.com>
gcc/
* config/arm/arm.c (use_vfp_abi): Add sorry() for Thumb-1
hard-float ABI.
From-SVN: r160785
Arnaud Charlet [Tue, 15 Jun 2010 12:22:09 +0000 (12:22 +0000)]
c-ada-spec.c (dump_sloc): Remove column info.
* c-ada-spec.c (dump_sloc): Remove column info.
(is_simple_enum): New function.
(dump_generic_ada_node, print_ada_declaration): Map C enum types to Ada
enum types when relevant.
From-SVN: r160782
Alexandre Oliva [Tue, 15 Jun 2010 12:21:35 +0000 (12:21 +0000)]
tree-vect-patterns.c (vect_pattern_recog_1): Bail out if we don't get a vector type for output.
* tree-vect-patterns.c (vect_pattern_recog_1): Bail out if we
don't get a vector type for output.
From-SVN: r160781
Jakub Jelinek [Tue, 15 Jun 2010 12:15:26 +0000 (14:15 +0200)]
re PR fortran/44536 (OMP: missing error with default(none))
PR fortran/44536
* langhooks.h (struct lang_hooks_for_decls): Add omp_report_decl.
* langhooks-def.h (LANG_HOOKS_OMP_REPORT_DECL): Define.
(LANG_HOOKS_DECLS): Add it.
* gimplify.c (omp_notice_variable): Call
lang_hooks.decls.omp_report_decl.
* trans-openmp.c (gfc_omp_predetermined_sharing): Don't return
OMP_CLAUSE_DEFAULT_SHARED for artificial vars with
GFC_DECL_SAVED_DESCRIPTOR set.
(gfc_omp_report_decl): New function.
* trans.h (gfc_omp_report_decl): New prototype.
* f95-lang.c (LANG_HOOKS_OMP_REPORT_DECL): Redefine.
* gfortran.dg/gomp/pr44536.f90: New test.
* gfortran.dg/gomp/sharing-3.f90: Remove xfail.
From-SVN: r160779
Martin Jambor [Tue, 15 Jun 2010 11:09:12 +0000 (13:09 +0200)]
re PR lto/44464 (ICE during linux kernel whopr build)
2010-06-15 Martin Jambor <mjambor@suse.cz>
PR lto/44464
* tree-sra.c (replace_removed_params_ssa_names): Call release_ssa_name
on the newly dead SSA name.
From-SVN: r160777
Bernhard Reutner-Fischer [Tue, 15 Jun 2010 08:35:25 +0000 (10:35 +0200)]
gcc_update: Support updating a git clone.
2010-06-15 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
* gcc_update: Support updating a git clone.
From-SVN: r160774
Alan Modra [Tue, 15 Jun 2010 07:33:43 +0000 (17:03 +0930)]
invoke.texi: Add mcmodel to powerpc options.
* doc/invoke.texi: Add mcmodel to powerpc options.
* configure.ac: Add HAVE_LD_LARGE_TOC test.
* configure: Regenerate.
* config.in: Regenerate.
* config/rs6000/linux64.opt (mcmodel): New.
* config/rs6000/linux64.h (TARGET_USES_LINUX64_OPT): Define.
(TARGET_CMODEL): Define.
(SUBSUBTARGET_OVERRIDE_OPTIONS): Check user -mcmodel choice,
select CMODEL_MEDIUM default.
* config/rs6000/rs6000.h (enum rs6000_cmodel): New.
(TARGET_CMODEL): Define default.
* config/rs6000/rs6000.c (cmodel): New variable.
(rs6000_explicit_options): Add cmodel field.
(rs6000_handle_option): Handle -mcmodel.
(create_TOC_reference): Add largetoc_reg param. Generate high,
lo_sum rtl for CMODEL_MEDIUM and CMODEL_LARGE. Update all callers.
(rs6000_delegitimize_address): Recognise new toc reference rtl
and minimal-toc rtl.
(rs6000_legitimize_reload_address): Handle new toc references.
(print_operand_address): Handle legitimate_constant_pool_address_p
match before lo_sum.
(rs6000_eliminate_indexed_memrefs): Tidy.
(rs6000_emit_move): Tweak threshold for inlining constants.
Keep rs6000_emit_allocate_stack large stack frame offsets
loaded into r0 inline.
(rs6000_generate_compare <cmptf_internal2>): One more clobber.
(tocrel_base, tocrel_offset): New variables.
(toc_relative_expr_p): Set them here.
(print_operand_address): Skip over any offset on constant pool
address.
(rs6000_output_addr_const_extra): Print tocrel_offset before @toc.
(rs6000_mode_dependent_address <LO_SUM>): False for new toc refs.
(offsettable_ok_by_alignment): New function.
(rs6000_emit_move): Address suitably aligned local symbol_refs
relative to the toc pointer for -mcmodel=medium.
(legitimate_constant_pool_address_p): Make param const_rtx. Add
strict param. Allow lo_sum version of addressing. Verify reg
used for -mminimal-toc and -mcmodel != small. Update all callers.
* config/rs6000/constraints.md: Update for above change.
* config/rs6000/predicates.md: Likewise.
* config/rs6000/rs6000.md (tls_gd_aix): Generate -mcmodel=medium/large
code.
(tls_gd): Split for -mcmodel=medium/large.
(tls_gd_high, tls_gd_low): New.
(tls_ld_aix, tls_ld, tls_ld_high, tls_ld_low): Similarly.
(tls_got_dtprel, tls_got_dtprel_high, tls_got_dtprel_low): Similarly.
(tls_got_tprel, tls_got_tprel_high, tls_got_tprel_low): Similarly.
(largetoc_high, largetoc_low): New.
(cmptf_internal2): Add clobber.
* config/rs6000/rs6000-protos.h: Update.
From-SVN: r160773
GCC Administrator [Tue, 15 Jun 2010 00:17:11 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r160770
Changpeng Fang [Mon, 14 Jun 2010 20:51:26 +0000 (20:51 +0000)]
Account prefetch_mod and unroll_factor for the computation of the prefetch count.
2010-06-14 Changpeng Fang <changpeng.fang@amd.com>
* tree-ssa-loop-prefetch.c (nothing_to_prefetch_p): New. Return
true if no prefetch is going to be generated for a given group.
(estimate_prefetch_count): Use prefetch_mod and unroll_factor to
estimate the prefetch_count.
(loop_prefetch_arrays): Call nothing_to_prefetch_p; estimate the
prefetch count by considering the unroll_factor and prefetch_mod
for is_loop_prefetching_profitable.
From-SVN: r160766
Andreas Schwab [Mon, 14 Jun 2010 20:00:21 +0000 (20:00 +0000)]
m68k.c (m68k_delegitimize_address): Don't do anything if the argument is not a MEM.
* config/m68k/m68k.c (m68k_delegitimize_address): Don't do
anything if the argument is not a MEM.
From-SVN: r160763
Alexandre Oliva [Mon, 14 Jun 2010 19:18:18 +0000 (19:18 +0000)]
re PR debug/43650 ("-fcompare-debug failure" with "-O2 -fpeel-loops -fgraphite-identity")
PR debug/43650
PR debug/44181
PR debug/44247
* tree-ssa-loop-manip.c (tree_transform_and_unroll_loop): Skip
debug stmts.
(canonicalize_loop_ivs): Likewise.
From-SVN: r160762
Alexandre Oliva [Mon, 14 Jun 2010 19:18:04 +0000 (19:18 +0000)]
re PR debug/43656 ("-fcompare-debug failure" with "-O2 -fschedule-insns -fsched-pressure -funroll-loops -fgraphite-identity")
PR debug/43656
* haifa-sched.c (setup_insn_reg_pressure_info,
update_register_pressure): Reject debug insns.
(ready_sort): Don't setup reg pressure for debug insns.
(schedule_insn): Don't update reg pressure for debug insns.
From-SVN: r160761
Richard Guenther [Mon, 14 Jun 2010 18:54:17 +0000 (18:54 +0000)]
lto-streamer.c (cached_bp): Remove.
2010-06-14 Richard Guenther <rguenther@suse.de>
* lto-streamer.c (cached_bp): Remove.
(bitpack_delete): Likewise.
(bitpack_create): Likewise.
(bp_get_next_word): Likewise.
(bp_pack_value, bp_unpack_value): Move ...
* lto-streamer.h (bp_pack_value, bp_unpack_value): ... here.
Re-implement.
(struct bitpack_d): Likewise.
(bitpack_create, lto_output_bitpack, lto_input_bitpack):
New inline functions.
* lto-streamer-out.c (lto_output_bitpack): Remove.
(pack_ts_base_value_fields): Adjust. Avoid conditional
bitpacking.
(pack_value_fields): Adjust.
(lto_write_tree): Likewise.
(output_gimple_stmt): Likewise.
(output_function): Likewise.
* lto-streamer-in.c (input_gimple_stmt): Adjust.
(input_function): Likewise.
(unpack_ts_base_value_fields): Adjust. Avoid conditional
bitpacking.
(lto_input_bitpack): Remove.
(lto_materialize_tree): Adjust.
* Makefile.in (ipa-prop.o): Add $(LTO_STREAMER_H) dependency.
* lto-cgraph.c (lto_output_edge): Adjust.
(lto_output_node): Likewise.
(lto_output_varpool_node): Likewise.
(lto_output_ref): Likewise.
(input_node): Likewise.
(input_varpool_node): Likewise.
(input_ref): Likewise.
(input_edge): Likewise.
(output_node_opt_summary): Likewise.
(input_node_opt_summary): Likewise.
* ipa-pure-const.c (pure_const_write_summary): Likewise.
(pure_const_read_summary): Likewise.
* ipa-prop.c (ipa_write_indirect_edge_info): Likewise.
(ipa_read_indirect_edge_info): Likewise.
(ipa_write_node_info): Likewise.
(ipa_read_node_info): Likewise.
From-SVN: r160760
H.J. Lu [Mon, 14 Jun 2010 17:44:29 +0000 (17:44 +0000)]
Replace 0x1 with 0x0 in AVX vec_extract_lo_* patterns.
gcc/
2010-06-14 H.J. Lu <hongjiu.lu@intel.com>
PR target/44534
* config/i386/sse.md (vec_extract_lo_<mode>): Replace 0x1 with
0x0.
(vec_extract_lo_v16hi): Likewise.
(vec_extract_lo_v32qi): Likewise.
gcc/testsuite/
2010-06-14 H.J. Lu <hongjiu.lu@intel.com>
PR target/44534
* gcc.target/i386/avx-vextractf128-256-3.c: New.
* gcc.target/i386/avx-vextractf128-256-4.c: Likewise.
From-SVN: r160756
Jakub Jelinek [Mon, 14 Jun 2010 15:53:38 +0000 (17:53 +0200)]
re PR bootstrap/44426 (gcc 4.5.0 requires c9x compiler to build)
PR bootstrap/44426
* tree.h (build_call_expr): Don't define as vararg macro, instead
add a prototype.
* builtins.c (build_call_nofold): Remove.
(expand_builtin_int_roundingfn, expand_builtin_pow,
expand_builtin_mempcpy_args, expand_builtin_stpcpy,
expand_builtin_memset_args, expand_builtin_strcmp,
expand_builtin_strncmp, expand_builtin_memory_chk): Use
build_call_nofold_loc instead of build_call_nofold.
(build_call_expr): New function.
From-SVN: r160754
Jakub Jelinek [Mon, 14 Jun 2010 15:19:04 +0000 (17:19 +0200)]
re PR tree-optimization/44508 (libgomp.fortran/vla1.f90 ICE on s390)
PR tree-optimization/44508
* tree-ssa-propagate.h (substitute_and_fold): Add DO_DCE
argument.
* tree-ssa-propagate.c (substitute_and_fold): If !DO_DCE,
don't eliminate trivially dead stmts.
* tree-vrp.c (vrp_finalize): Pass false as last argument
to substitute_and_fold.
* tree-ssa-copy.c (fini_copy_prop): Pass true as last argument
to substitute_and_fold.
* tree-ssa-ccp.c (ccp_finalize): Likewise.
* gcc.dg/tree-ssa/pr21086.c: Adjust.
From-SVN: r160749
Ed Schonberg [Mon, 14 Jun 2010 15:04:40 +0000 (15:04 +0000)]
sem_ch3.adb (Build_Derived_Record_Type): if derived type is an anonymous base generated when...
2010-06-14 Ed Schonberg <schonberg@adacore.com>
* sem_ch3.adb (Build_Derived_Record_Type): if derived type is an
anonymous base generated when the parent is a constrained discriminated
type, propagate interface list to first subtype because it may appear
in a current instance within the extension part of the derived type
declaration, and its own subtype declaration has not been elaborated
yet.
* exp_disp.adb (Build_Interface_Thunk): Use base type of formal to
determine whether it has the controlling type.
From-SVN: r160748
Jerome Lambourg [Mon, 14 Jun 2010 15:01:29 +0000 (15:01 +0000)]
exp_ch11.adb (Expand_N_Raise_Statement): Make sure that the explicit raise of CE...
2010-06-14 Jerome Lambourg <lambourg@adacore.com>
* exp_ch11.adb (Expand_N_Raise_Statement): Make sure that the explicit
raise of CE, SE and PE have the reason correctly set and are properly
expanded before stopping the expansions of .NET/JVM exceptions.
From-SVN: r160747
Arnaud Charlet [Mon, 14 Jun 2010 13:59:09 +0000 (15:59 +0200)]
Revert change introduced by mistake in previous change.
From-SVN: r160745
Arnaud Charlet [Mon, 14 Jun 2010 13:46:36 +0000 (15:46 +0200)]
[multiple changes]
2010-06-14 Robert Dewar <dewar@adacore.com>
* opt.ads (Check_Policy_List): Add some clarifying comments
* sem_prag.adb (Analyze_Pragma, case Check): Set Pragma_Enabled flag
on rewritten Assert pragma.
2010-06-14 Gary Dismukes <dismukes@adacore.com>
* sem_ch6.adb (Check_Overriding_Indicator): Add a special check for
controlled operations, so that they will be treated as overriding even
if the overridden subprogram is marked Is_Hidden, as long as the
overridden subprogram's parent subprogram is not hidden.
2010-06-14 Robert Dewar <dewar@adacore.com>
* debug.adb: Entry for gnatw.d no longer specific for while loops
* einfo.adb (First_Exit_Statement): New attribute for E_Loop
* einfo.ads (First_Exit_Statement): New attribute for E_Loop
* sem_ch5.adb (Analyze_Loop_Statement): Check_Infinite_Loop_Warning has
new calling sequence to include test for EXIT WHEN.
(Analyze_Exit_Statement): Chain EXIT statement into exit statement chain
* sem_warn.ads, sem_warn.adb (Check_Infinite_Loop_Warning): Now handles
EXIT WHEN case.
* sinfo.adb (Next_Exit_Statement): New attribute of N_Exit_Statement
node.
* sinfo.ads (N_Pragma): Correct comment on Sloc field (points to
PRAGMA, not to pragma identifier).
(Next_Exit_Statement): New attribute of N_Exit_Statement node
2010-06-14 Robert Dewar <dewar@adacore.com>
* sem_res.adb (Resolve_Short_Circuit): Fix sloc of "assertion/check
would fail" msg.
2010-06-14 Robert Dewar <dewar@adacore.com>
* par-ch2.adb (Scan_Pragma_Argument_Association): Clarify message for
missing pragma argument identifier.
2010-06-14 Robert Dewar <dewar@adacore.com>
* atree.ads, atree.adb (Ekind_In): New functions
2010-06-14 Robert Dewar <dewar@adacore.com>
* exp_ch4.adb (Expand_N_Op_Expon): Optimize 2**N in stand alone context
2010-06-14 Robert Dewar <dewar@adacore.com>
* usage.adb (Usage): Redo documentation of -gnatwa.
From-SVN: r160743
Ed Schonberg [Mon, 14 Jun 2010 13:36:42 +0000 (13:36 +0000)]
sem_ch8.adb (Find_Type): The attribute 'class cannot be applied to an untagged incomplete type that is a...
2010-06-14 Ed Schonberg <schonberg@adacore.com>
* sem_ch8.adb (Find_Type): The attribute 'class cannot be applied to
an untagged incomplete type that is a limited view.
From-SVN: r160741
Arnaud Charlet [Mon, 14 Jun 2010 13:32:14 +0000 (15:32 +0200)]
[multiple changes]
2010-06-14 Sergey Rybin <rybin@adacore.com>
* gnat_ugn.texi: Add description of '-cargs gcc_switches' to gnatstub
and gnatppa.
2010-06-14 Thomas Quinot <quinot@adacore.com>
* exp_ch4.adb (Expand_Short_Circuit_Operator): New subprogram,
factoring duplicated code between...
(Expand_N_And_Than, Expand_N_Or_Else): Remove duplicated code.
* a-envvar.ads: Minor reformatting
2010-06-14 Arnaud Charlet <charlet@adacore.com>
* ali.adb, ali.ads, lib-xref.ads: Document new '+' letter for C/C++
static entities.
(Scan_ALI): Take into account new Visibility field.
(Visibility_Kind): New type.
(Xref_Entity_Record): Replace Lib field by Visibility.
* gcc-interface/Make-lang.in: Update dependencies.
2010-06-14 Pascal Obry <obry@adacore.com>
* raise.h: Remove unused defintions.
2010-06-14 Bob Duff <duff@adacore.com>
* par-ch10.adb (P_Subunit): If the next token after "separate(X)" is
Tok_Not or Tok_Overriding, call P_Subprogram. We had previously given
the incorrect error "proper body expected".
* par-ch6.adb (P_Subprogram): Suppress "overriding indicator not
allowed here" error in case of subunits, which was triggered by the
above change to P_Subunit.
From-SVN: r160740
Sergey Rybin [Mon, 14 Jun 2010 13:27:18 +0000 (13:27 +0000)]
gnat_ugn.texi, [...]: Update gnatelim doc.
2010-06-14 Sergey Rybin <rybin@adacore.com>
* gnat_ugn.texi, vms_data.ads: Update gnatelim doc.
From-SVN: r160739
Thomas Quinot [Mon, 14 Jun 2010 13:09:06 +0000 (13:09 +0000)]
lib-util.adb: Minor code reorganization.
2010-06-14 Thomas Quinot <quinot@adacore.com>
* lib-util.adb: Minor code reorganization.
From-SVN: r160738
Robert Dewar [Mon, 14 Jun 2010 13:01:07 +0000 (13:01 +0000)]
ali.adb (Scan_ALI): Implement reading and storing of N lines
2010-06-14 Robert Dewar <dewar@adacore.com>
* ali.adb (Scan_ALI): Implement reading and storing of N lines
(Known_ALI_Lines): Add entry for 'N' (notes)
* ali.ads (Notes): New table to store Notes information
* alloc.ads: Add entries for Notes table
* lib-util.adb (Write_Info_Int): New procedure
(Write_Info_Slit): New procedure
(Write_Info_Uint): New procedure
* lib-util.ads (Write_Info_Int): New procedure
(Write_Info_Slit): New procedure
(Write_Info_Uint): New procedure
* lib-writ.adb (Write_Unit_Information): Output N (notes) lines
* lib-writ.ads: Update documentation for N (Notes) lines
* lib.adb (Store_Note): New procedure
* lib.ads (Notes): New table
(Store_Note): New procedure
* sem_prag.adb: Call Store_Note for affected pragmas
From-SVN: r160736
Thomas Quinot [Mon, 14 Jun 2010 12:56:35 +0000 (12:56 +0000)]
socket.c: Fix wrong condition in #ifdef
2010-06-14 Thomas Quinot <quinot@adacore.com>
* socket.c: Fix wrong condition in #ifdef
* g-socket.adb, g-sothco.ads: Functions imported from socket.c that
take or return char* values can't use Interfaces.C.Strings.chars_ptr,
because on VMS this type is a 32-bit pointer which is not compatible
with the default for C pointers for code compiled with gcc on that
platform.
From-SVN: r160735
Arnaud Charlet [Mon, 14 Jun 2010 12:51:24 +0000 (14:51 +0200)]
[multiple changes]
2010-06-14 Ed Schonberg <schonberg@adacore.com>
* sem_util (Is_VMS_Operator): New predicate to determine whether an
operator is an intrinsic operator declared in the DEC system extension.
* sem_res.adb (Resolve_Logical_Op): operation is legal on signed types
if the operator is a VMS intrinsic.
* sem_eval.adb (Eval_Logical_Op): Operation is legal and be
constant-folded if the operands are signed and the operator is a VMS
intrinsic.
2010-06-14 Robert Dewar <dewar@adacore.com>
* g-socket.adb, gnatcmd.adb: Minor reformatting
From-SVN: r160734
Arnaud Charlet [Mon, 14 Jun 2010 12:46:56 +0000 (14:46 +0200)]
[multiple changes]
2010-06-14 Pascal Obry <obry@adacore.com>
* s-finimp.adb: Fix typo.
* raise.h: Remove duplicate blank line.
2010-06-14 Vincent Celier <celier@adacore.com>
* prj-nmsc.adb (Add_Sources): Always set the object file and the
switches file names, as the configuration of the language may change
in an extending project.
(Process_Naming_Scheme): For sources of projects that are extended, set
the configuration of the language from the highest extending project
where the language is declared.
2010-06-14 Gary Dismukes <dismukes@adacore.com>
* sem_res.adb (Resolve_Call): For infinite recursion check, test
whether the called subprogram is inherited from a containing subprogram.
(Same_Or_Aliased_Subprograms): New function
From-SVN: r160733
Arnaud Charlet [Mon, 14 Jun 2010 12:41:52 +0000 (14:41 +0200)]
Minor reformatting.
From-SVN: r160732
Arnaud Charlet [Mon, 14 Jun 2010 12:39:55 +0000 (14:39 +0200)]
[multiple changes]
2010-06-14 Ed Schonberg <schonberg@adacore.com>
* sem_ch8.adb (End_Use_Type): Before indicating that an operator is not
use-visible, check whether it is a primitive for more than one type.
2010-06-14 Robert Dewar <dewar@adacore.com>
* sem_ch3.adb (Copy_And_Swap): Copy Has_Pragma_Unmodified flag.
* sem_ch7.adb (Preserve_Full_Attributes): Preserve
Has_Pragma_Unmodified flag.
2010-06-14 Thomas Quinot <quinot@adacore.com>
* g-sttsne-locking.adb, g-sttsne-locking.ads, g-sttsne.ads,
g-sttsne-vxworks.adb, g-sttsne-dummy.ads: Removed. Mutual exclusion is
now done in GNAT.Sockets if necessary.
* gsocket.h, g-socket.adb, g-sothco.ads (GNAT.Sockets.Get_XXX_By_YYY):
Ensure mutual exclusion for netdb operations if the target platform
requires it.
(GNAT.Sockets.Thin_Common): New binding for getXXXbyYYY, treating struct
hostent as an opaque type to improve portability.
* s-oscons-tmplt.c, socket.c: For the case of Vxworks, emulate
gethostbyYYY using proprietary VxWorks API so that a uniform interface
is available for the Ada side.
* gcc-interface/Makefile.in: Remove g-sttsne-*
* gcc-interface/Make-lang.in: Update dependencies.
2010-06-14 Vincent Celier <celier@adacore.com>
* gnatcmd.adb (Mapping_File): New function.
From-SVN: r160731
Jakub Jelinek [Mon, 14 Jun 2010 12:30:29 +0000 (14:30 +0200)]
re PR bootstrap/44509 (Revision 160626 breaks bootstrap on *-apple-darwin*)
PR bootstrap/44509
* c-config-lang.in (gtfiles): Add c-family/c-cppbuiltin.c.
* c-family/c-cppbuiltin.c: Include gt-c-family-c-cppbuiltin.h.
(lazy_hex_fp_values, lazy_hex_fp_value_count): Add GTY(()) markers.
(lazy_hex_fp_value, builtin_define_with_hex_fp_value): Use
ggc_strdup instead of xstrdup.
* gcc.dg/pr44509.c: New test.
From-SVN: r160729
Arnaud Charlet [Mon, 14 Jun 2010 12:23:26 +0000 (14:23 +0200)]
[multiple changes]
2010-06-14 Javier Miranda <miranda@adacore.com>
* sem_ch3.adb (Derive_Subprograms): Remove over-restrictive assertion.
2010-06-14 Arnaud Charlet <charlet@adacore.com>
* ali.adb: Fix typo.
* s-auxdec-vms-alpha.adb, scng.ads: Minor reformatting
2010-06-14 Ed Schonberg <schonberg@adacore.com>
* sem_ch12.adb: Make Mark_Context transitive, and apply to subprogram
instances.
* sem_ch8.adb (Find_Expanded_Name): If a candidate compilation unit in
the context does not have a homonym of the selector, emit default
error message.
From-SVN: r160728