platform/upstream/gcc.git
16 years agoDaily bump.
GCC Administrator [Thu, 31 Jul 2008 00:16:40 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r138351

16 years agore PR ada/36554 (verify_flow_info ICE can not throw but has EH edges)
Eric Botcazou [Wed, 30 Jul 2008 23:54:56 +0000 (23:54 +0000)]
re PR ada/36554 (verify_flow_info ICE can not throw but has EH edges)

        PR ada/36554
        * dwarf2out.c (is_subrange_type): Deal with BOOLEAN_TYPE.
ada/
        * back_end.adb (Call_Back_End): Pass Standard_Boolean to gigi.
        * gcc-interface/gigi.h (gigi): Take new standard_boolean parameter.
        * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Enumeration_Subtype>:
        Set precision to 1 for subtype of BOOLEAN_TYPE.
        (set_rm_size): Set TYPE_RM_SIZE_NUM for BOOLEAN_TYPE.
        (make_type_from_size): Deal with BOOLEAN_TYPE.
        * gcc-interface/misc.c (gnat_print_type): Likewise.
        * gcc-interface/trans.c (gigi): Take new standard_boolean parameter.
        Set boolean_type_node as its translation in the table, as well
        as boolean_false_node for False and boolean_true_node for True.
        * gcc-interface/utils.c (gnat_init_decl_processing): Create custom
        8-bit boolean_type_node and set its TYPE_RM_SIZE_NUM.
        (create_param_decl): Deal with BOOLEAN_TYPE.
        (build_vms_descriptor): Likewise.
        (build_vms_descriptor64): Likewise.
        (convert): Deal with BOOLEAN_TYPE like with ENUMERAL_TYPE.

From-SVN: r138348

16 years agore PR bootstrap/36974 (Gcc failed to bootstrap)
Rafael Avila de Espindola [Wed, 30 Jul 2008 23:23:33 +0000 (23:23 +0000)]
re PR bootstrap/36974 (Gcc failed to bootstrap)

2008-07-30  Rafael Avila de Espindola  <espindola@google.com>

PR 36974
* final.c (call_from_call_insn): Handle COND_EXEC

From-SVN: r138347

16 years agobuiltins.c (std_gimplify_va_arg_expr): Replace PREFERRED_STACK_BOUNDARY with MAX_SUPP...
H.J. Lu [Wed, 30 Jul 2008 20:19:53 +0000 (20:19 +0000)]
builtins.c (std_gimplify_va_arg_expr): Replace PREFERRED_STACK_BOUNDARY with MAX_SUPPORTED_STACK_ALIGNMENT.

2008-07-30  H.J. Lu  <hongjiu.lu@intel.com>

* builtins.c (std_gimplify_va_arg_expr): Replace
PREFERRED_STACK_BOUNDARY with MAX_SUPPORTED_STACK_ALIGNMENT.
* config/i386/i386.c (ix86_gimplify_va_arg): Likewise.

From-SVN: r138340

16 years agofunc-vararg-alternate-d128-2.c: New.
H.J. Lu [Wed, 30 Jul 2008 19:24:02 +0000 (19:24 +0000)]
func-vararg-alternate-d128-2.c: New.

2008-07-30  H.J. Lu  <hongjiu.lu@intel.com>
    Joey Ye  <joey.ye@intel.com>

* gcc.dg/dfp/func-vararg-alternate-d128-2.c: New.
* gcc.dg/dfp/func-vararg-mixed-2.c: Likewise.
* gcc.dg/torture/stackalign/alloca-1.c: Likewise.
* gcc.dg/torture/stackalign/builtin-apply-1.c: Likewise.
* gcc.dg/torture/stackalign/builtin-apply-2.c: Likewise.
* gcc.dg/torture/stackalign/builtin-apply-3.c: Likewise.
* gcc.dg/torture/stackalign/builtin-apply-4.c: Likewise.
* gcc.dg/torture/stackalign/builtin-return-1.c: Likewise.
* gcc.dg/torture/stackalign/check.h: Likewise.
* gcc.dg/torture/stackalign/comp-goto-1.c: Likewise.
* gcc.dg/torture/stackalign/fastcall-1.c: Likewise.
* gcc.dg/torture/stackalign/global-1.c: Likewise.
* gcc.dg/torture/stackalign/inline-1.c: Likewise.
* gcc.dg/torture/stackalign/inline-2.c: Likewise.
* gcc.dg/torture/stackalign/nested-1.c: Likewise.
* gcc.dg/torture/stackalign/nested-2.c: Likewise.
* gcc.dg/torture/stackalign/nested-3.c: Likewise.
* gcc.dg/torture/stackalign/nested-4.c: Likewise.
* gcc.dg/torture/stackalign/nested-5.c: Likewise.
* gcc.dg/torture/stackalign/nested-6.c: Likewise.
* gcc.dg/torture/stackalign/non-local-goto-1.c: Likewise.
* gcc.dg/torture/stackalign/non-local-goto-2.c: Likewise.
* gcc.dg/torture/stackalign/non-local-goto-3.c: Likewise.
* gcc.dg/torture/stackalign/non-local-goto-4.c: Likewise.
* gcc.dg/torture/stackalign/non-local-goto-5.c: Likewise.
* gcc.dg/torture/stackalign/pr16660-1.c: Likewise.
* gcc.dg/torture/stackalign/pr16660-2.c: Likewise.
* gcc.dg/torture/stackalign/pr16660-3.c: Likewise.
* gcc.dg/torture/stackalign/regparm-1.c: Likewise.
* gcc.dg/torture/stackalign/ret-struct-1.c: Likewise.
* gcc.dg/torture/stackalign/setjmp-1.c: Likewise.
* gcc.dg/torture/stackalign/setjmp-2.c: Likewise.
* gcc.dg/torture/stackalign/setjmp-3.c: Likewise.
* gcc.dg/torture/stackalign/setjmp-4.c: Likewise.
* gcc.dg/torture/stackalign/sibcall-1.c: Likewise.
* gcc.dg/torture/stackalign/stackalign.exp: Likewise.
* gcc.dg/torture/stackalign/struct-1.c: Likewise.
* gcc.dg/torture/stackalign/vararg-1.c: Likewise.
* gcc.dg/torture/stackalign/vararg-2.c: Likewise.
* gcc.target/i386/align-main-1.c: Likewise.
* gcc.target/i386/align-main-2.c: Likewise.
* gcc.target/i386/pr32000-2.c: Likewise.
* gcc.target/i386/stackalign/asm-1.c: Likewise.
* gcc.target/i386/stackalign/return-1.c: Likewise.
* gcc.target/i386/stackalign/return-2.c: Likewise.
* gcc.target/i386/stackalign/return-3.c: Likewise.
* gcc.target/i386/stackalign/return-4.c: Likewise.
* gcc.target/i386/stackalign/return-5.c: Likewise.
* gcc.target/i386/stackalign/return-6.c: Likewise.
* gcc.target/i386/stackalign/stackalign.exp: Likewise.
* g++.dg/torture/stackalign/check.h: Likewise.
* g++.dg/torture/stackalign/eh-alloca-1.C: Likewise.
* g++.dg/torture/stackalign/eh-fastcall-1.C: Likewise.
* g++.dg/torture/stackalign/eh-global-1.C: Likewise.
* g++.dg/torture/stackalign/eh-inline-1.C: Likewise.
* g++.dg/torture/stackalign/eh-inline-2.C: Likewise.
* g++.dg/torture/stackalign/eh-vararg-1.C: Likewise.
* g++.dg/torture/stackalign/eh-vararg-2.C: Likewise.
* g++.dg/torture/stackalign/stackalign.exp: Likewise.
* g++.dg/torture/stackalign/stdcall-1.C: Likewise.
* g++.dg/torture/stackalign/test-unwind.h: Likewise.
* g++.dg/torture/stackalign/throw-1.C: Likewise.
* g++.dg/torture/stackalign/throw-2.C: Likewise.
* g++.dg/torture/stackalign/throw-3.C: Likewise.
* g++.dg/torture/stackalign/throw-4.C: Likewise.
* g++.dg/torture/stackalign/unwind-0.C: Likewise.
* g++.dg/torture/stackalign/unwind-1.C: Likewise.
* g++.dg/torture/stackalign/unwind-2.C: Likewise.
* g++.dg/torture/stackalign/unwind-3.C: Likewise.
* g++.dg/torture/stackalign/unwind-4.C: Likewise.
* g++.dg/torture/stackalign/unwind-5.C: Likewise.
* g++.dg/torture/stackalign/unwind-6.C: Likewise.

* gcc.target/i386/20060512-1.c: Add -mpreferred-stack-boundary=4.
(main): Move "popl" after check.
* gcc.target/i386/20060512-3.c: Likewise.

* gcc.target/i386/20060512-2.c: Add -mpreferred-stack-boundary=4.
Remove dg-error.

* gcc.target/i386/20060512-4.c: Add -mpreferred-stack-boundary=4.
Remove dg-warning.

* lib/target-supports.exp (check_effective_target_unaligned_stack):
Always return 0.
(check_effective_target_automatic_stack_alignment): New.

Co-Authored-By: Joey Ye <joey.ye@intel.com>
From-SVN: r138336

16 years ago[multiple changes]
H.J. Lu [Wed, 30 Jul 2008 19:20:43 +0000 (12:20 -0700)]
[multiple changes]

2008-07-30  Joey Ye  <joey.ye@intel.com>
    H.J. Lu  <hongjiu.lu@intel.com>

* builtins.c (expand_builtin_setjmp_receiver): Replace
virtual_incoming_args_rtx with crtl->args.internal_arg_pointer.
(expand_builtin_apply_args_1): Likewise.
(expand_builtin_longjmp): Need DRAP for stack alignment.
(expand_builtin_apply): Likewise.

* caller-save.c (setup_save_areas): Call assign_stack_local_1
instead of assign_stack_local to allow alignment reduction.

* calls.c (emit_call_1): Need DRAP for stack alignment if
return pops.
(expand_call): Replace virtual_incoming_args_rtx with
crtl->args.internal_arg_pointer.
* stmt.c (expand_nl_goto_receiver): Likewise.

* cfgexpand.c (get_decl_align_unit): Estimate stack variable
alignment and store to stack_alignment_estimated and
max_used_stack_slot_alignment.
(expand_one_var): Likewise.
(expand_stack_alignment): New function.
(tree_expand_cfg): Initialize max_used_stack_slot_alignment
and stack_alignment_estimated fields in rtl_data.  Call
expand_stack_alignment at end.

* defaults.h (INCOMING_STACK_BOUNDARY): New.
(MAX_STACK_ALIGNMENT): Likewise.
(MAX_SUPPORTED_STACK_ALIGNMENT): Likewise.
(SUPPORTS_STACK_ALIGNMENT): Likewise.

* emit-rtl.c (gen_reg_rtx): Estimate stack alignment for
stack alignment when generating virtual registers.

* function.c (assign_stack_local): Renamed to ...
(assign_stack_local_1): This.  Add a parameter to indicate
if it is OK to reduce alignment.
(assign_stack_local): Use it.
(instantiate_new_reg): Instantiate virtual incoming args rtx
to vDRAP if stack realignment and DRAP is needed.
(assign_parms): Collect parameter/return type alignment and
contribute to stack_alignment_estimated.
(locate_and_pad_parm): Likewise.
(get_arg_pointer_save_area): Replace virtual_incoming_args_rtx
with crtl->args.internal_arg_pointer.

* function.h (rtl_data): Add new field drap_reg,
max_used_stack_slot_alignment, stack_alignment_estimated,
stack_realign_needed, need_drap, stack_realign_processed and
stack_realign_finalized.
(stack_realign_fp): New macro.
(stack_realign_drap): Likewise.

* global.c (compute_regsets): Frame pointer is needed when
stack is realigned.  Can eliminate frame pointer when stack is
realigned and dynamic realigned argument pointer isn't used.

* reload1.c (update_eliminables):  Frame pointer is needed
when stack is realigned.
(init_elim_table): Can eliminate frame pointer when stack is
realigned and dynamic realigned argument pointer isn't used.

* rtl.h (assign_stack_local_1): Declare new funtion.

* target-def.h (TARGET_UPDATE_STACK_BOUNDARY): New.
(TARGET_GET_DRAP_RTX): Likewise.
(TARGET_CALLS): Add TARGET_UPDATE_STACK_BOUNDARY and
TARGET_GET_DRAP_RTX.

* target.h (gcc_target): Add update_stack_boundary and
get_drap_rtx.

* tree-vectorizer.c (vect_can_force_dr_alignment_p): Replace
STACK_BOUNDARY with MAX_STACK_ALIGNMENT.

2008-07-30  Xuepeng Guo  <xuepeng.guo@intel.com>
    H.J. Lu  <hongjiu.lu@intel.com>

* dwarf2out.c (dw_fde_struct): Add stack_realignment, drap_reg,
vdrap_reg, stack_realign and drap_reg_saved.
(add_cfi): Don't allow redefining CFA when DRAP is used.
(reg_save): Handle stack alignment.
(dwarf2out_frame_debug_expr): Add rules 16-20 to handle stack
alignment.  Don't generate DWARF information for (set fp sp)
when DRAP is used.
(dwarf2out_begin_prologue): Initialize drap_reg and vdrap_reg
to INVALID_REGNUM.
(int_loc_descriptor): Move prototype forward.  Also define if
DWARF2_UNWIND_INFO is true.
(output_cfa_loc): Handle DW_CFA_expression.
(build_cfa_aligned_loc): New.
(based_loc_descr): Update assert for stack realign.  For local
variables, use sp+offset when stack is aligned without drap and
fp+offset when stack is aligned with drap.  For arguments, use
cfa+offset when drap is used to align stack.

2008-07-30  Joey Ye  <joey.ye@intel.com>
    H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.c (ix86_force_align_arg_pointer_string):
Break long line.
(ix86_gen_andsp): New.
(ix86_user_incoming_stack_boundary): Likewise.
(ix86_default_incoming_stack_boundary): Likewise.
(ix86_incoming_stack_boundary): Likewise.
(ix86_can_eliminate): Likewise.
(find_drap_reg): Likewise.
(ix86_update_stack_boundary): Likewise.
(ix86_get_drap_rtx): Likewise.
(ix86_finalize_stack_realign_flags): Likewise.
(TARGET_UPDATE_STACK_BOUNDARY): Likewise.
(TARGET_GET_DRAP_RTX): Likewise.
(override_options): Overide option value for new options.
(ix86_function_ok_for_sibcall): Remove check for
force_align_arg_pointer.
(ix86_handle_cconv_attribute): Likewise.
(ix86_function_regparm): Likewise.
(setup_incoming_varargs_64): Don't set stack_alignment_needed
here.
(ix86_va_start): Replace virtual_incoming_args_rtx with
crtl->args.internal_arg_pointer.
(ix86_select_alt_pic_regnum): Check DRAP register.
(ix86_save_reg): Replace force_align_arg_pointer with drap_reg.
(ix86_compute_frame_layout): Compute frame layout wrt stack
realignment.
(ix86_internal_arg_pointer): Just return
virtual_incoming_args_rtx.
(ix86_expand_prologue): Decide if stack realignment is needed
and generate prologue code accordingly.
(ix86_expand_epilogue): Generate epilogue code wrt stack
realignment is really needed or not.

* config/i386/i386.h (MAIN_STACK_BOUNDARY): New.
(ABI_STACK_BOUNDARY): Likewise.
(PREFERRED_STACK_BOUNDARY_DEFAULT): Likewise.
(STACK_REALIGN_DEFAULT): Likewise.
(INCOMING_STACK_BOUNDARY): Likewise.
(MAX_STACK_ALIGNMENT): Likewise.
(ix86_incoming_stack_boundary): Likewise.
(FORCE_PREFERRED_STACK_BOUNDARY_IN_MAIN): Removed.
(REAL_PIC_OFFSET_TABLE_REGNUM): Updated to use BX_REG.
(CAN_ELIMINATE): Defined with ix86_can_eliminate.
(machine_function): Remove force_align_arg_pointer.

* config/i386/i386.md (BX_REG): New.
(R13_REG): Likewise.

* config/i386/i386.opt (mforce_drap): New.
(mincoming-stack-boundary): Likewise.
(mstackrealign): Add Init(-1).

* config/i386/i386-protos.h (ix86_can_eliminate): New

2008-07-30  H.J. Lu  <hongjiu.lu@intel.com>

* doc/extend.texi: Update force_align_arg_pointer.

* doc/invoke.texi: Document -mincoming-stack-boundary.  Update
-mstackrealign.

* doc/tm.texi (MAX_STACK_ALIGNMENT): Add macro.
(INCOMING_STACK_BOUNDARY): Likewise.
(TARGET_UPDATE_STACK_BOUNDARY): New target hook.
(TARGET_GET_DRAP_RTX): Likewise.

From-SVN: r138335

16 years agore PR rtl-optimization/36929 (internal compiler error: Segmentation fault)
Andreas Schwab [Wed, 30 Jul 2008 18:22:50 +0000 (18:22 +0000)]
re PR rtl-optimization/36929 (internal compiler error: Segmentation fault)

PR rtl-optimization/36929
* dse.c (replace_inc_dec): Use emit_insn_before instead of
add_insn_before and fix argument order.
(replace_inc_dec_mem): Handle NULL rtx.

From-SVN: r138333

16 years agoResync.
Arnaud Charlet [Wed, 30 Jul 2008 17:39:56 +0000 (19:39 +0200)]
Resync.

From-SVN: r138332

16 years agog-pehage.adb: Remove a limitation on the length of the words handled by the minimal...
Laurent Pautet [Wed, 30 Jul 2008 17:38:55 +0000 (19:38 +0200)]
g-pehage.adb: Remove a limitation on the length of the words handled by the minimal perfect...

2008-07-30  Laurent Pautet  <pautet@adacore.com>

* g-pehage.adb:
Remove a limitation on the length of the words handled by the minimal
perfect hash function generator.

* g-pehage.ads:
Detail the use of subprograms Insert, Initialize, Compute and Finalize.
Fix some typos.

From-SVN: r138331

16 years agosem_ch8.adb: Minor reformatting
Robert Dewar [Wed, 30 Jul 2008 17:38:25 +0000 (19:38 +0200)]
sem_ch8.adb: Minor reformatting

2008-07-30  Robert Dewar  <dewar@adacore.com>

* sem_ch8.adb: Minor reformatting

From-SVN: r138330

16 years agoexp_util.ads (Find_Prim_Op): Document that Program_Error is raised if no primitive...
Robert Dewar [Wed, 30 Jul 2008 17:38:16 +0000 (19:38 +0200)]
exp_util.ads (Find_Prim_Op): Document that Program_Error is raised if no primitive operation is found.

2008-07-30  Robert Dewar  <dewar@adacore.com>

* exp_util.ads (Find_Prim_Op): Document that Program_Error is raised
if no primitive operation is found.

* exp_util.adb: (Find_Prim_Op): Add comments for previous change

From-SVN: r138329

16 years agoexp_ch9.adb: Minor reformatting
Robert Dewar [Wed, 30 Jul 2008 17:38:04 +0000 (19:38 +0200)]
exp_ch9.adb: Minor reformatting

2008-07-30  Robert Dewar  <dewar@adacore.com>

* exp_ch9.adb: Minor reformatting

From-SVN: r138328

16 years agoarm.c (arm_compute_static_chain_stack_bytes): New function.
Andrew Jenner [Wed, 30 Jul 2008 16:28:01 +0000 (16:28 +0000)]
arm.c (arm_compute_static_chain_stack_bytes): New function.

* config/arm/arm.c (arm_compute_static_chain_stack_bytes): New
function.
(arm_compute_initial_elimination_offset): Use it.
(arm_compute_save_reg_mask): Include static chain save slot when
calculating alignment.
(arm_get_frame_offsets): Ditto.
(thumb1_compute_save_reg_mask): Ensure we have a low register saved
that we can use to decrement the stack when the stack decrement
could be too big for an immediate value in a single insn.
(thumb1_expand_prologue): Avoid using r12 for stack decrement.

From-SVN: r138327

16 years agoResync.
Arnaud Charlet [Wed, 30 Jul 2008 15:56:34 +0000 (17:56 +0200)]
Resync.

From-SVN: r138325

16 years agoeinfo.adb: Flag245 is now used.
Hristian Kirtchev [Wed, 30 Jul 2008 15:53:21 +0000 (17:53 +0200)]
einfo.adb: Flag245 is now used.

2008-07-30  Hristian Kirtchev  <kirtchev@adacore.com>

* einfo.adb: Flag245 is now used.
(Is_Primitive_Wrapper, Set_Is_Primitive_Wrapper): Relax the assertion
check to include functions.
(Is_Private_Primitive, Set_Is_Private_Primitive): New subprograms.
(Wrapped_Entity, Set_Wrapped_Entity): Relax the assertion check to
include functions.
(Write_Entity_Flags): Move flag Is_Primitive, add Is_Private_Primitive
to the list of displayed flags.

* einfo.ads: Update comment on the usage of Is_Primitive_Wrapper and
Wrapped_Entity. These two flags are now present in functions.
New flag Is_Private_Primitive.
(Is_Private_Primitive, Set_Is_Private_Primitive): New subprograms.

* exp_ch9.adb:
(Build_Wrapper_Bodies): New subprogram.
(Build_Wrapper_Body): The spec and body have been moved to in
Build_Wrapper_ Bodies. Code cleanup.
(Build_Wrapper_Spec): Moved to the spec of Exp_Ch9. Code cleanup.
Wrappers are now generated for primitives declared between the private
and full view of a concurrent type that implements an interface.
(Build_Wrapper_Specs): New subprogram.
(Expand_N_Protected_Body): Code reformatting. Replace the wrapper body
creation mechanism with a call to Build_Wrapper_Bodies.
(Expand_N_Protected_Type_Declaration): Code reformatting. Replace the
wrapper spec creation mechanism with a call to Build_Wrapper_Specs.
(Expand_N_Task_Body): Replace the wrapper body creation
mechanism with a call to Build_Wrapper_Bodies.
(Expand_N_Task_Type_Declaration): Replace the wrapper spec
creation mechanism with a call to Build_Wrapper_Specs.
(Is_Private_Primitive_Subprogram): New subprogram.
(Overriding_Possible): Code cleanup.
(Replicate_Entry_Formals): Renamed to Replicate_Formals, code cleanup.

* exp_ch9.ads (Build_Wrapper_Spec): Moved from the body of Exp_Ch9.

* sem_ch3.adb: Add with and use clause for Exp_Ch9.
(Process_Full_View): Build wrapper specs for all primitives
that belong to a private view completed by a concurrent type
implementing an interface.

* sem_ch6.adb (Analyze_Subprogram_Body): When the current subprogram
is a primitive of a
concurrent type with a private view that implements an interface, try to
find the proper spec.
(Analyze_Subprogram_Declaration): Mark a subprogram as a private
primitive if the type of its first parameter is a non-generic tagged
private type.
(Analyze_Subprogram_Specification): Code reformatting.
(Disambiguate_Spec): New routine.
(Find_Corresponding_Spec): Add a flag to controll the output of errors.
(Is_Private_Concurrent_Primitive): New routine.

* sem_ch6.ads:
(Find_Corresponding_Spec): Add a formal to control the output of errors.

From-SVN: r138324

16 years agouintp.adb (UI_GCD): Fix potential overflow
Robert Dewar [Wed, 30 Jul 2008 15:53:08 +0000 (17:53 +0200)]
uintp.adb (UI_GCD): Fix potential overflow

2008-07-30  Robert Dewar  <dewar@adacore.com>

* uintp.adb (UI_GCD): Fix potential overflow

From-SVN: r138323

16 years agosem_ch8.adb (Analyze_Subprogram_Renaming): When renaming an attribute as a actual...
Ed Schonberg [Wed, 30 Jul 2008 15:52:58 +0000 (17:52 +0200)]
sem_ch8.adb (Analyze_Subprogram_Renaming): When renaming an attribute as a actual in an instance...

2008-07-30  Ed Schonberg  <schonberg@adacore.com>

* sem_ch8.adb (Analyze_Subprogram_Renaming): When renaming an attribute
as a actual in an instance, check for a missing attribute to prevent
program_error on an illegal program.

* exp_util.adb (Find_Prim_Op): Rather than Assert (False), raise program
error if primitive is not found, so that exception can be handled
elsewhere on illegal programs.

From-SVN: r138322

16 years agortsfind.adb (Check_RPC): Check version consistency even when not generating RCI stubs.
Thomas Quinot [Wed, 30 Jul 2008 15:52:47 +0000 (17:52 +0200)]
rtsfind.adb (Check_RPC): Check version consistency even when not generating RCI stubs.

2008-07-30  Thomas Quinot  <quinot@adacore.com>

* rtsfind.adb (Check_RPC): Check version consistency even when not
generating RCI stubs. Provide more detailed error message in case of
mismatch.

From-SVN: r138321

16 years agognatlink.adb: Minor reformatting
Robert Dewar [Wed, 30 Jul 2008 15:52:36 +0000 (17:52 +0200)]
gnatlink.adb: Minor reformatting

2008-07-30  Robert Dewar  <dewar@adacore.com>

* gnatlink.adb: Minor reformatting

From-SVN: r138320

16 years agore PR tree-optimization/36967 (segfault in is_gimple_real_type with -fpredictive...
Richard Guenther [Wed, 30 Jul 2008 15:43:42 +0000 (15:43 +0000)]
re PR tree-optimization/36967 (segfault in is_gimple_real_type with -fpredictive-commoning -ffast-math)

2008-07-30  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/36967
* tree-predcom.c (remove_stmt): Use gimple_assign_ssa_name_copy_p.
Release defs of statements we remove.

* gfortran.dg/pr36967.f: New testcase.

From-SVN: r138318

16 years agoarm.c (arm_expand_prologue): Use 0-length rtvec instead of NULL_RTVEC.
Nathan Froyd [Wed, 30 Jul 2008 15:32:34 +0000 (15:32 +0000)]
arm.c (arm_expand_prologue): Use 0-length rtvec instead of NULL_RTVEC.

        * config/arm/arm.c (arm_expand_prologue): Use 0-length rtvec
        instead of NULL_RTVEC.

From-SVN: r138317

16 years agore PR target/35866 (Vector load/store from a packed struct does not work (without...
Nathan Froyd [Wed, 30 Jul 2008 15:30:59 +0000 (15:30 +0000)]
re PR target/35866 (Vector load/store from a packed struct does not work (without -mstrict-align))

PR target/35866

* config/rs6000/rs6000.h (SLOW_UNALIGNED_ACCESS): Add clause for
vector modes.

From-SVN: r138316

16 years agosync with src
Paolo Bonzini [Wed, 30 Jul 2008 15:04:24 +0000 (15:04 +0000)]
sync with src

From-SVN: r138314

16 years agoconfig: sync with src
Keith Seitz [Wed, 30 Jul 2008 14:57:07 +0000 (14:57 +0000)]
config: sync with src
2008-07-25  Keith Seitz  <keiths@redhat.com>

* acinclude.m4: Remove libide, libgui, and all the other Tcl
functions.
* tcl.m4: New file.

From-SVN: r138313

16 years agofinal.c (call_from_call_insn): New.
Rafael Avila de Espindola [Wed, 30 Jul 2008 13:59:58 +0000 (13:59 +0000)]
final.c (call_from_call_insn): New.

2008-07-30  Rafael Avila de Espindola  <espindola@google.com>

       * final.c (call_from_call_insn): New.
       (final_scan_insn): Call assemble_external on FUNCTION_DECLs.

2008-07-30  Rafael Avila de Espindola  <espindola@google.com>

* gcc.dg/visibility-14.c: New test.
* gcc.dg/visibility-15.c: New test.
* gcc.dg/visibility-16.c: New test.
* gcc.dg/visibility-17.c: New test.
* gcc.dg/visibility-18.c: New test.
* gcc.dg/visibility-19.c: New test.

From-SVN: r138310

16 years agore PR c++/36767 (Segmentation fault with -fprofile-arcs -O2)
Dodji Seketeli [Wed, 30 Jul 2008 13:07:50 +0000 (13:07 +0000)]
re PR c++/36767 (Segmentation fault with -fprofile-arcs -O2)

2008-07-30  Dodji Seketeli  <dseketel@redhat.com>

PR c++/36767
* decl2.c (fix_temporary_vars_context_r): New function.
 (one_static_initialization_or_destruction): Make sure temporary
 variables part of the initialiser have their DECL_CONTEXT()
 properly set.

From-SVN: r138308

16 years agogigi.h (build_vms_descriptor64): New function prototype.
Doug Rupp [Wed, 30 Jul 2008 13:06:45 +0000 (13:06 +0000)]
gigi.h (build_vms_descriptor64): New function prototype.

2008-07-30  Doug Rupp  <rupp@adacore.com>

* gigi.h (build_vms_descriptor64): New function prototype.
(fill_vms_descriptor): Modified function prototype.

* utils.c (build_vms_descriptor64): New function.

* utils2.c (fill_vms_descriptor): Fix handling on 32bit systems.

* trans.c (call_to_gnu): Call fill_vms_descriptor with new third
argument.

* decl.c (gnat_to_gnu_tree): For By_Descriptor mech, build both a
64bit and 32bit descriptor and save the 64bit version as an alternate
TREE_TYPE in the parameter.
(make_type_from_size) <RECORD_TYPE>: Use the appropriate mode for the
thin pointer.

* ada-tree.h (DECL_PARM_ALT, SET_DECL_PARM_ALT): New macros.

From-SVN: r138307

16 years agoResync
Arnaud Charlet [Wed, 30 Jul 2008 13:04:41 +0000 (15:04 +0200)]
Resync

From-SVN: r138306

16 years ago2008-07-30 Jose Ruiz <ruiz@adacore.com>
Jose Ruiz [Wed, 30 Jul 2008 13:03:32 +0000 (15:03 +0200)]
2008-07-30  Jose Ruiz  <ruiz@adacore.com>

* adaint.c
(__gnat_file_exists): Do not use __gnat_stat for RTX.
(__main for RTX in RTSS mode): Create this dummy procedure symbol to
avoid the use of this symbol from libgcc.a in RTX kernel mode.

* cio.c
(put_int, put_int_stderr, put_char, put_char_stderr): For RTX we call
the function RtPrintf for console output.

* argv.c Do not use the environ variable for RTX.

* gnatlink.adb (gnatlink): The part that handles the --RTS option has
been moved before the call to Osint.Add_Default_Search_Dirs in order
to take into account the flags in system.ads (RTX_RTSS_Kernel_Module)
from the appropriate run time.

* targparm.ads
(RTX_RTSS_Kernel_Module_On_Target): Add this flag that is set to True if
target is a RTSS module for RTX.

* targparm.adb (Targparm_Tags, RTX_Str, Targparm_Str): Add tag RTX for
RTX_RTSS_Kernel_Module
(Get_Target_Parameters): Add processing of RTX_RTSS_Kernel_Module flag.

* gcc-interface/Makefile.in (LIBGNAT_TARGET_PAIRS for RTX): Use gcc
exception handling mechanism for Windows and RTX in Win32 mode, but
not for RTX in kernel mode (RTSS).
(LIBGNAT_SRCS): Remove ada.h

From-SVN: r138305

16 years agoosint.ads: Minor reformatting
Robert Dewar [Wed, 30 Jul 2008 13:02:39 +0000 (15:02 +0200)]
osint.ads: Minor reformatting

2008-07-30  Robert Dewar  <dewar@adacore.com>

* osint.ads: Minor reformatting

From-SVN: r138304

16 years agomlib-utl.adb: Minor reformatting
Robert Dewar [Wed, 30 Jul 2008 13:02:30 +0000 (15:02 +0200)]
mlib-utl.adb: Minor reformatting

2008-07-30  Robert Dewar  <dewar@adacore.com>

* mlib-utl.adb: Minor reformatting

From-SVN: r138303

16 years agomake.adb: Minor reformatting
Robert Dewar [Wed, 30 Jul 2008 13:02:21 +0000 (15:02 +0200)]
make.adb: Minor reformatting

2008-07-30  Robert Dewar  <dewar@adacore.com>

* make.adb: Minor reformatting

From-SVN: r138302

16 years agoconfigure.ac: Add makefile fragments for hpux.
Paolo Bonzini [Wed, 30 Jul 2008 12:17:17 +0000 (12:17 +0000)]
configure.ac: Add makefile fragments for hpux.

2008-07-30  Paolo Bonzini  <bonzini@gnu.org>

* configure.ac: Add makefile fragments for hpux.
* Makefile.def (flags_to_pass): Add ADA_CFLAGS.
* Makefile.tpl (HOST_EXPORTS): Pass ADA_CFLAGS.
* configure: Regenerate.
* Makefile.in: Regenerate.

config:
2008-07-30  Paolo Bonzini  <bonzini@gnu.org>

* mh-pa: New, from gcc/config/pa/x-ada.
* mh-pa-hpux10: New, from gcc/config/pa/x-ada-hpux10.

gcc:
2008-07-30  Paolo Bonzini  <bonzini@gnu.org>

* configure.ac: Substitute ADA_CFLAGS.
* configure: Regenerate.
* config.host: Remove mention of pa/x-ada and pa/x-ada-hpux10 files.
* Makefile.in: Remove mention of X_* variables.
* config/pa/x-ada-hpux10: Remove.
* config/pa/x-ada: Remove.

* doc/fragments.texi: Update.

gcc/ada:
2008-07-30  Paolo Bonzini  <bonzini@gnu.org>

* gcc-interface/Make-lang.in (ALL_ADAFLAGS): Remove X_ADAFLAGS and
T_ADAFLAGS, replace ALL_ADA_CFLAGS with ADA_CFLAGS.
(ALL_ADA_CFLAGS): Remove, replace throughout with ADA_CFLAGS.
* gcc-interface/Makefile.in (XCFLAGS, X_CFLAGS, X_CPPFLAGS, T_CPPFLAGS,
X_ADA_CFLAGS, T_ADA_CFLAGS, X_ADAFLAGS, T_ADAFLAGS, ADA_CFLAGS,
ALL_ADA_CFLAGS): Remove.
(ALL_ADAFLAGS, MOST_ADAFLAGS): Remove X_ADAFLAGS and T_ADAFLAGS,
        replace ALL_ADA_CFLAGS with ADA_CFLAGS.
(GCC_CFLAGS): Remove X_CFLAGS.
(LOOSE_CFLAGS): Remove X_CFLAGS and XCFLAGS.
(ALL_CPPFLAGS): Remove X_CPPFLAGS and T_CPPFLAGS.
(ADA_CFLAGS): Substitute.

gnattools:
2008-07-30  Paolo Bonzini  <bonzini@gnu.org>

* configure.ac (x_ada_cflags): Remove.
(ADA_CFLAGS): Substitute.
* configure: Regenerate.
* Makefile.in (ADA_CFLAGS): Substitute.
(T_ADA_CFLAGS, X_ADA_CFLAGS, ALL_ADA_CFLAGS): Remove.
(TOOLS_FLAGS_TO_PASS_1, TOOLS_FLAGS_TO_PASS_1re,
TOOLS_FLAGS_TO_PASS_NATIVE, TOOLS_FLAGS_TO_PASS_CROSS):
Pass ADA_CFLAGS.

From-SVN: r138301

16 years agomove wrong gcc/ChangeLog entry to gnattools/ChangeLog
Paolo Bonzini [Wed, 30 Jul 2008 12:09:47 +0000 (12:09 +0000)]
move wrong gcc/ChangeLog entry to gnattools/ChangeLog

From-SVN: r138300

16 years agoFix date on entry headline.
Olivier Hainque [Wed, 30 Jul 2008 10:15:19 +0000 (10:15 +0000)]
Fix date on entry headline.

From-SVN: r138298

16 years agoirix-crti.asm: .hide __gcc_init and __gcc_fini.
Olivier Hainque [Wed, 30 Jul 2008 10:13:46 +0000 (10:13 +0000)]
irix-crti.asm: .hide __gcc_init and __gcc_fini.

        * config/mips/irix-crti.asm: .hide __gcc_init and __gcc_fini.
        * config/mips/iris6.h (IRIX_SUBTARGET_LINK_SPEC, irix ld): Hide
        __dso_handle explicitly here.

From-SVN: r138297

16 years agore PR c/34389 (-Wconversion produces wrong warning)
Manuel López-Ibáñez [Wed, 30 Jul 2008 08:30:32 +0000 (08:30 +0000)]
re PR c/34389 (-Wconversion produces wrong warning)

2008-07-30  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>

PR 34389
* c-typeck.c (build_binary_op): Encapsulate code into...
* c-common.c (shorten_binary_op): ...this new function.
(conversion_warning): Use the new function. Handle non-negative
constant in bitwise-and.
* c-common.h (shorten_binary_op): Declare.
cp/
* typeck.c (build_binary_op): Encapsulate code into
shorten_binary_op.
testsuite/
* gcc.dg/Wconversion-pr34389.c: New.
* g++.dg/warn/Wconversion-pr34389.C: New.

From-SVN: r138296

16 years agoscan.c (make_sstring_space): Add explicit conversions of allocator's return value.
Olivier Hainque [Wed, 30 Jul 2008 07:44:09 +0000 (07:44 +0000)]
scan.c (make_sstring_space): Add explicit conversions of allocator's return value.

* scan.c (make_sstring_space): Add explicit conversions of
allocator's return value.
* fix-header.c (recognized_function): Likewise.

From-SVN: r138295

16 years agore PR ada/5911 (Support for multilib in Ada)
Laurent GUERBY [Wed, 30 Jul 2008 06:45:39 +0000 (06:45 +0000)]
re PR ada/5911 (Support for multilib in Ada)

gcc/ChangeLog
2008-07-29  Laurent Guerby <laurent@guerby.net>

        PR ada/5911
        * gnattools/Makefile.in: Replace stamp-gnatlib by
        stamp-gnatlib-rts.

gcc/ada/ChangeLog
2008-07-29  Laurent Guerby <laurent@guerby.net>

        PR ada/5911
        * gcc-interface/Makefile.in (MULTISUBDIR, RTSDIR): New variables.
        Pass MULTISUBDIR to recursive make. Use $(RTSDIR) instead of rts.
        Replace stamp-gnatlib* by stamp-gnatlib*-rts.
        * gcc-interface/Make-lang.in: Replace stamp-gnatlib2
        by stamp-gnatlib2-rts.

From-SVN: r138294

16 years agore PR ada/15479 (Ada manual problems)
Ralf Wildenhues [Wed, 30 Jul 2008 05:28:53 +0000 (05:28 +0000)]
re PR ada/15479 (Ada manual problems)

gcc/ada/
PR documentation/15479
* gnat-style.texi: Remove AdaCore copyright statement and GPL
statement for GNAT.  Add @copying stanza, use it.  Update to
GFDL 1.2.  Do not list GFDL as Invariant Section, do not list
title as Front-Cover Text.
* gnat_rm.texi: Likewise.
* gnat_ugn.texi: Likewise.

gcc/
* doc/cpp.texi: Update to GFDL 1.2.
* doc/gcc.texi: Do not list GPL as Invariant Section.
* doc/gccint.texi: Likewise.  Update copyright years.
* doc/install.texi: Update copyright years.

gcc/fortran/
* gfc-internals.texi: Update to GFDL 1.2.  Do not list GPL as
Invariant Section.
* gfortran.texi: Likewise.
* intrinsic.texi: Do not list GPL as Invariant Section.
* invoke.texi: Likewise.  Update copyright years.

gcc/java/
* gcj.texi: Update copyright years.  Do not list GPL as
Invariant Section.

libgomp/
* libgomp.texi: Update to GFDL 1.2.  Update copyright years.
Do not list GPL as Invariant Section.

From-SVN: r138293

16 years agore PR target/36955 (TLS LIBCALL change breaks libstdc++ built with older binutils)
Alan Modra [Wed, 30 Jul 2008 02:43:05 +0000 (02:43 +0000)]
re PR target/36955 (TLS LIBCALL change breaks libstdc++ built with older binutils)

PR target/36955
* config/rs6000/rs6000.c (rs6000_legitimize_tls_address): Add
a use of pic_offset_table_rtx for -msecure-plt __tls_get_addr calls.

From-SVN: r138291

16 years agoDaily bump.
GCC Administrator [Wed, 30 Jul 2008 00:16:57 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r138289

16 years ago* gcc.dg/pr32370.c: Force 64 bits on IA64.
Steve Ellcey [Tue, 29 Jul 2008 22:32:32 +0000 (22:32 +0000)]
* gcc.dg/pr32370.c: Force 64 bits on IA64.

From-SVN: r138277

16 years agotrans-expr.c (conv_parent_component_references): New function to build missing parent...
Paul Thomas [Tue, 29 Jul 2008 20:44:09 +0000 (20:44 +0000)]
trans-expr.c (conv_parent_component_references): New function to build missing parent references.

2008-07-29  Paul Thomas  <pault@gcc.gnu.org>

fortran/
* trans-expr.c (conv_parent_component_references): New function
to build missing parent references.
(gfc_conv_variable): Call it
* symbol.c (gfc_add_component): Check that component name in a
derived type extension does not appear in parent.
(gfc_find_component): For a derived type extension, check if
the component appears in the parent derived type by calling
self. Separate errors for private components and private types.
* decl.c (match_data_constant): Add extra arg to call to
gfc_match_structure_constructor.
(check_extended_derived_type): New function to check that a
parent derived type exists and that it is OK for exension.
(gfc_get_type_attr_spec): Add extra argument 'name' and return
it if extends is specified.
(gfc_match_derived_decl): Match derived type extension and
build a first component of the parent derived type if OK. Add
the f2k namespace if not present.
* gfortran.h : Add the extension attribute.
* module.c : Handle attribute 'extension'.
* match.h : Modify prototypes for gfc_get_type_attr_spec and
gfc_match_structure_constructor.
* primary.c (build_actual_constructor): New function extracted
from gfc_match_structure_constructor and modified to call self
iteratively to build derived type extensions, when f2k named
components are used.
(gfc_match_structure_constructor): Do not throw error for too
many components if a parent type is being handled. Use
gfc_find_component to generate errors for non-existent or
private components.  Iteratively call self for derived type
extensions so that parent constructor is built.  If extension
and components left over, throw error.
(gfc_match_rvalue): Add extra arg to call to
gfc_match_structure_constructor.
* trans-array.c (gfc_conv_resolve_dependencies): If lhs and rhs
are the same symbol, aliassing does not matter.
testsuite/
* gfortran.dg/extends_1.f03: New test.
* gfortran.dg/extends_2.f03: New test.
* gfortran.dg/extends_3.f03: New test.
* gfortran.dg/extends_4.f03: New test.
* gfortran.dg/extends_5.f03: New test.
* gfortran.dg/extends_6.f03: New test.
* gfortran.dg/private_type_6.f90: Modify error message.
* gfortran.dg/structure_constructor_7.f03: Modify error message.
* gfortran.dg/structure_constructor_8.f03: Modify error message.

From-SVN: r138275

16 years agoMoved to gcc-interface directory.
Arnaud Charlet [Tue, 29 Jul 2008 20:43:33 +0000 (22:43 +0200)]
Moved to gcc-interface directory.

From-SVN: r138274

16 years agoset.h: Minor formatting fixes.
Paolo Carlini [Tue, 29 Jul 2008 19:34:36 +0000 (19:34 +0000)]
set.h: Minor formatting fixes.

2008-07-29  Paolo Carlini  <paolo.carlini@oracle.com>

* include/debug/set.h: Minor formatting fixes.
* include/debug/multiset.h: Likewise.
* include/debug/safe_association.h: Likewise.
* include/debug/vector: Likewise.
* include/debug/map.h: Likewise.
* include/debug/string: Likewise.
* include/debug/multimap.h: Likewise.
* include/bits/stl_list.h: Likewise.
* include/bits/stl_map.h: Likewise.
* include/bits/stl_set.h: Likewise.
* include/bits/stl_multimap.h: Likewise.
* include/bits/stl_vector.h: Likewise.
* include/bits/stl_multiset.h: Likewise.
* include/bits/stl_bvector.h: Likewise.

From-SVN: r138263

16 years agotrans.c (process_inlined_subprograms): Remove tree_really_inline check.
Arnaud Charlet [Tue, 29 Jul 2008 18:52:26 +0000 (20:52 +0200)]
trans.c (process_inlined_subprograms): Remove tree_really_inline check.

* trans.c (process_inlined_subprograms): Remove tree_really_inline
check.

From-SVN: r138261

16 years agoMoved to gcc-interface.
Arnaud Charlet [Tue, 29 Jul 2008 18:51:30 +0000 (20:51 +0200)]
Moved to gcc-interface.

From-SVN: r138260

16 years agoc-decl.c (merge_decls): Do not handle DECL_INLINE.
Jan Hubicka [Tue, 29 Jul 2008 17:10:55 +0000 (19:10 +0200)]
c-decl.c (merge_decls): Do not handle DECL_INLINE.

* c-decl.c (merge_decls): Do not handle DECL_INLINE.
(grokdeclarator): Likewise.
* langhooks.c (lhd_warn_unused_global_decl): Use
DECL_DECLARED_INLINE_P.
* print-tree.c (print_node): Remove DECL_INLINE check.

From-SVN: r138258

16 years agore PR tree-optimization/36945 (PRE/SCCVN do not handle aggregate function arguments...
Richard Guenther [Tue, 29 Jul 2008 17:09:26 +0000 (17:09 +0000)]
re PR tree-optimization/36945 (PRE/SCCVN do not handle aggregate function arguments correctly)

2008-07-29  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/36945
* tree-ssa-sccvn.h (copy_reference_ops_from_ref): Declare.
* tree-ssa-sccvn.c (copy_reference_ops_from_ref): Export.
Record invariant addresses un-decomposed.
(copy_reference_ops_from_call): Record reference call
arguments properly.  Simplify.
* tree-ssa-pre.c (create_component_ref_by_pieces_1): New
helper split out from ...
(create_component_ref_by_pieces): ... here.  Simplify.
Prepare for recursive invocation for call arguments.
(create_expression_by_pieces): Adjust call to
create_component_ref_by_pieces.
(compute_avail): Process operand 2 of reference ops.

* gcc.dg/tree-ssa/ssa-pre-18.c: New testcase.

From-SVN: r138257

16 years agogimplify.c (gimplify_expr): Clear TREE_SIDE_EFFECTS for OBJ_TYPE_REF.
Richard Guenther [Tue, 29 Jul 2008 17:07:42 +0000 (17:07 +0000)]
gimplify.c (gimplify_expr): Clear TREE_SIDE_EFFECTS for OBJ_TYPE_REF.

2008-07-29  Richard Guenther  <rguenther@suse.de>

* gimplify.c (gimplify_expr): Clear TREE_SIDE_EFFECTS for
OBJ_TYPE_REF.

From-SVN: r138256

16 years agoutility: Include <initializer_list>, per the current WP.
Paolo Carlini [Tue, 29 Jul 2008 17:06:24 +0000 (17:06 +0000)]
utility: Include <initializer_list>, per the current WP.

2008-07-29  Paolo Carlini  <paolo.carlini@oracle.com>

* include/std/utility: Include <initializer_list>, per the current WP.

* testsuite/lib/libstdc++.exp (check_v3_target_cstdint): Tweak,
don't use -std=gnu++0x unnecessarily.
* testsuite/18_support/numeric_limits/char16_32_t.cc: Use
dg-require-cstdint.
* testsuite/18_support/headers/cstdint/types_std_c++0x.cc: Likewise.
* testsuite/tr1/8_c_compatibility/cstdint/types_std_tr1.cc: Likewise.

From-SVN: r138255

16 years agotrans.c (process_inlined_subprograms): Remove tree_really_inline check.
Jan Hubicka [Tue, 29 Jul 2008 17:02:45 +0000 (19:02 +0200)]
trans.c (process_inlined_subprograms): Remove tree_really_inline check.

* trans.c (process_inlined_subprograms): Remove tree_really_inline
check.

From-SVN: r138254

16 years agoclass.c (build_utf8_ref): Set DECL_SIZE and DECL_SIZE_UNIT from ctype's sizes.
Jakub Jelinek [Tue, 29 Jul 2008 16:31:18 +0000 (18:31 +0200)]
class.c (build_utf8_ref): Set DECL_SIZE and DECL_SIZE_UNIT from ctype's sizes.

* class.c (build_utf8_ref): Set DECL_SIZE and DECL_SIZE_UNIT
from ctype's sizes.

From-SVN: r138252

16 years agoclass.c (build_utf8_ref): Pad initializer string to utf8const_type's alignment.
Jakub Jelinek [Tue, 29 Jul 2008 16:30:32 +0000 (18:30 +0200)]
class.c (build_utf8_ref): Pad initializer string to utf8const_type's alignment.

* class.c (build_utf8_ref): Pad initializer string to utf8const_type's
alignment.

From-SVN: r138251

16 years agore PR c++/36852 (Two dimensional array in template method argument list incorrectly...
Jakub Jelinek [Tue, 29 Jul 2008 16:29:33 +0000 (18:29 +0200)]
re PR c++/36852 (Two dimensional array in template method argument list incorrectly interpreted.)

PR c++/36852
* tree.c (cplus_array_hash, build_cplus_array_type_1): Hash on
TYPE_UID instead of pointers.

* g++.dg/pch/array-1.C: New test.
* g++.dg/pch/array-1.Hs: New file.

From-SVN: r138250

16 years ago* c-format.c (check_format_types): Revert unwanted checkin.
Jakub Jelinek [Tue, 29 Jul 2008 16:27:50 +0000 (18:27 +0200)]
* c-format.c (check_format_types): Revert unwanted checkin.

From-SVN: r138249

16 years agoResync.
Arnaud Charlet [Tue, 29 Jul 2008 15:50:16 +0000 (17:50 +0200)]
Resync.

From-SVN: r138248

16 years agogcc-interface: New directory.
Arnaud Charlet [Tue, 29 Jul 2008 15:46:37 +0000 (17:46 +0200)]
gcc-interface: New directory.

* gcc-interface: New directory.

* ada-tree.def, cuintp.c, gigi.h, Makefile.in, targtyps.c, ada.h,
utils.c, ada-tree.h, decl.c, lang.opt, Make-lang.in, trans.c,
config-lang.in, deftarg.c, lang-specs.h, misc.c, utils2.c: Moved
to gcc-interface subdirectory.

From-SVN: r138246

16 years agoMakefile.in (EXTRA_GNATRTL_NONTASKING_OBJS): Remove extra s-win32.o.
Aaron W. LaFramboise [Tue, 29 Jul 2008 14:10:03 +0000 (08:10 -0600)]
Makefile.in (EXTRA_GNATRTL_NONTASKING_OBJS): Remove extra s-win32.o.

2008-07-29  Aaron W. LaFramboise  <aaronavay62@aaronwl.com>

* Makefile.in (EXTRA_GNATRTL_NONTASKING_OBJS): Remove extra s-win32.o.

From-SVN: r138245

16 years agoflags.h (flag_really_no_inline): Remove.
Jan Hubicka [Tue, 29 Jul 2008 11:00:58 +0000 (13:00 +0200)]
flags.h (flag_really_no_inline): Remove.

* flags.h (flag_really_no_inline): Remove.
* cgraph.c (cgraph_function_possibly_inlined_p): Simplify.
* toplev.c (flag_really_no_inline): Remove.
* c-cppbuiltin.c (c_cpp_builtins): Use flag_no_inline.
* ipa-inline.c (cgraph_decide_inlining): Do not check flag_no_inline.
(cgraph_decide_inlining_incrementally): Likewise.
(compute_inline_parameters): Likewise.
* opts.c (decode_options): Simplify.
* c-opts.c (c_common_post_options): Do not set flag_no_inline.
* common.opt (finline): Initialize to 1.
* tree-inline.c (inlinable_function_p): Check flag_no_inline.

* lang.c (java_post_options): Remove handling of flag_no_inline.

* misc.c (gnat_post_options): Do not set flag_no_inline.

* options.c (gfc_post_options): Do not set flag_no_inline.

From-SVN: r138238

16 years agopredict.c (always_optimize_for_size_p): New function.
Jan Hubicka [Tue, 29 Jul 2008 10:52:16 +0000 (10:52 +0000)]
predict.c (always_optimize_for_size_p): New function.

* predict.c (always_optimize_for_size_p): New function.
(optimize_bb_for_size_p, optimize_bb_for_speed_p,
optimize_edge_for_size_p, optimize_edge_for_speed_p,
optimize_insn_for_size_p, optimize_insn_for_speed_p): New global
functions.
(rtl_profile_for_bb, rtl_profile_for_edge, rtl_default_profile): New.
* function.c (prepare_function_start): Set default profile.
* function.h (rtl_data): Add maybe_hot_insn_p.
* cfgexpand.c (expand_gimple_basic_block): Set RTL profile.
(construct_exit_block): Likewise.
(tree_expand_cfg): Likewise.
* basic-block.h
(optimize_bb_for_size_p, optimize_bb_for_speed_p,
optimize_edge_for_size_p, optimize_edge_for_speed_p,
optimize_insn_for_size_p, optimize_insn_for_speed_p): Declare.
(rtl_profile_for_bb, rtl_profile_for_edge, default_rtl_profile):
Declare.

From-SVN: r138237

16 years agooptimize.c (maybe_clone_body): Remove DECL_INLINE.
Jan Hubicka [Tue, 29 Jul 2008 10:49:30 +0000 (12:49 +0200)]
optimize.c (maybe_clone_body): Remove DECL_INLINE.

  * optimize.c (maybe_clone_body): Remove DECL_INLINE.
* decl.c (duplicate_decls): Likewise.
(grokfndecl): Likewise.
(start_method): Likewise.
* method.c (make_thunk, make_alias_for, implicitly_declare_fn):
Likewise.
* pt.c (register_specialization, regenerate_decl_from_template):
Likewise.
* decl2.c (grokfield): Likewise.

From-SVN: r138236

16 years agore PR c/34985 (Warning "defined but not used" despite __attribute__((__used__)))
Manuel López-Ibáñez [Tue, 29 Jul 2008 10:00:25 +0000 (10:00 +0000)]
re PR c/34985 (Warning "defined but not used" despite __attribute__((__used__)))

2008-07-29  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>

PR 34985
* c-decl.c (merge_decls): Merge USED flags.
cp/
* decl.c (duplicate_decls): Merge USED flags.
testsuite/
* gcc.dg/pr34985.c: New.
* g++.dg/warn/pr34985.C: New.

From-SVN: r138235

16 years agore PR fortran/36403 (Some fortran tests using eoshift fail on SH)
Daniel Kraft [Tue, 29 Jul 2008 09:11:51 +0000 (11:11 +0200)]
re PR fortran/36403 (Some fortran tests using eoshift fail on SH)

2008-07-29  Daniel Kraft  <d@domob.eu>

PR fortran/36403
* trans-intrinsic.c (conv_generic_with_optional_char_arg):  New method
to append a string-length even if the string argument is missing, e.g.
for EOSHIFT.
(gfc_conv_intrinsic_function):  Call the new method for EOSHIFT, PACK
and RESHAPE.

2008-07-29  Daniel Kraft  <d@domob.eu>

PR fortran/36403
* gfortran.dg/char_eoshift_5.f90:  New test.
* gfortran.dg/intrinsic_optional_char_arg_1.f90:  New test.

From-SVN: r138234

16 years agosh.c (sh_gimplify_va_arg_expr): Unshare the addr...
Kaz Kojima [Tue, 29 Jul 2008 09:07:49 +0000 (09:07 +0000)]
sh.c (sh_gimplify_va_arg_expr): Unshare the addr...

* config/sh/sh.c (sh_gimplify_va_arg_expr): Unshare the addr,
valist, next_fp, next_fp_tmp, next_fp_limit, next_o, next_o_limit,
next_stack, lab_false and lab_over trees.

From-SVN: r138233

16 years agogfortran.h (try): Remove macro.
Kaveh R. Ghazi [Tue, 29 Jul 2008 00:45:52 +0000 (00:45 +0000)]
gfortran.h (try): Remove macro.

* gfortran.h (try): Remove macro.  Replace try with gfc_try
throughout.
* array.c: Likewise.
* check.c: Likewise.
* cpp.c: Likewise.
* cpp.h: Likewise.
* data.c: Likewise.
* data.h: Likewise.
* decl.c: Likewise.
* error.c: Likewise.
* expr.c: Likewise.
* interface.c: Likewise.
* intrinsic.c: Likewise.
* intrinsic.h: Likewise.
* io.c: Likewise.
* match.h: Likewise.
* parse.c: Likewise.
* parse.h: Likewise.
* resolve.c: Likewise.
* scanner.c: Likewise.
* simplify.c: Likewise.
* symbol.c: Likewise.
* trans-openmp.c: Likewise.
* trans-types.c: Likewise.

From-SVN: r138226

16 years agoDaily bump.
GCC Administrator [Tue, 29 Jul 2008 00:16:58 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r138224

16 years agore PR c++/36943 ([c++0x] Use of nested C++0x initializer list for non-aggregate rejected)
Jason Merrill [Tue, 29 Jul 2008 00:06:08 +0000 (20:06 -0400)]
re PR c++/36943 ([c++0x] Use of nested C++0x initializer list for non-aggregate rejected)

        PR c++/36943
        * decl.c (reshape_init_r): Allow C++0x initializer lists.

From-SVN: r138221

16 years agore PR libstdc++/36949 ([C++0x] make_shared does not initialize enable_shared_from_thi...
Paolo Carlini [Mon, 28 Jul 2008 23:28:16 +0000 (23:28 +0000)]
re PR libstdc++/36949 ([C++0x] make_shared does not initialize enable_shared_from_this' internal shared_count)

2008-07-28  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/36949
* include/tr1_impl/boost_shared_ptr.h
(__shared_ptr(_Sp_make_shared_tag, _Alloc, _Args&&...): Call
__enable_shared_from_this_helper.
* testsuite/20_util/shared_ptr/creation/36949.cc: New.

From-SVN: r138219

16 years agore PR ada/36957 (ACATS ce3801b ICE emit_move_insn, at expr.c:3381 post tuple merge)
Richard Guenther [Mon, 28 Jul 2008 20:32:32 +0000 (20:32 +0000)]
re PR ada/36957 (ACATS ce3801b ICE emit_move_insn, at expr.c:3381 post tuple merge)

2008-07-28  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/36957
* tree-flow.h (tree_ssa_useless_type_conversion): Remove.
(useless_type_conversion_p): Remove.
(types_compatible_p): Remove.
* gimple.h (tree_ssa_useless_type_conversion): Declare.
(useless_type_conversion_p): Declare.
(types_compatible_p): Declare.
(gimple_expr_type): Return the base type only if it is
trivially convertible to the subtype.

From-SVN: r138217

16 years agoconfigure.ac: Use the m4_do macro to concatenate the warnings into one string in...
Andreas Tobler [Mon, 28 Jul 2008 20:30:00 +0000 (20:30 +0000)]
configure.ac: Use the m4_do macro to concatenate the warnings into one string in...

2008-07-28  Andreas Tobler  <a.tobler@schweiz.org>

* configure.ac: Use the m4_do macro to concatenate the warnings into
one string in ACX_PROG_CC_WARNING_OPTS,
ACX_PROG_CC_WARNING_ALMOST_PEDANTIC and ACX_PROG_CC_WARNINGS_ARE_ERRORS.
* configure: Regenerate.

From-SVN: r138216

16 years agofix typo
Aldy Hernandez [Mon, 28 Jul 2008 19:50:50 +0000 (19:50 +0000)]
fix typo

From-SVN: r138215

16 years agoconfigure.tgt: Enable futex for MIPS.
Ilie Garbacea [Mon, 28 Jul 2008 18:47:44 +0000 (18:47 +0000)]
configure.tgt: Enable futex for MIPS.

* configure.tgt: Enable futex for MIPS.
* config/linux/mips/futex.h: New file.

Co-Authored-By: Chao-ying Fu <fu@mips.com>
From-SVN: r138214

16 years agotree-ssa-pre.c (insert_into_preds_of_block): Remove dead code.
Richard Guenther [Mon, 28 Jul 2008 18:29:04 +0000 (18:29 +0000)]
tree-ssa-pre.c (insert_into_preds_of_block): Remove dead code.

2008-07-28  Richard Guenther  <rguenther@suse.de>

* tree-ssa-pre.c (insert_into_preds_of_block): Remove dead code.
(insert_fake_stores): Remove.
(realify_fake_stores): Likewise.
(execute_pre): Remove dead code.
* tree-ssa-structalias.c (get_constraint_for_1): Remove tcc_unary
case.
(find_func_aliases): Deal with it here instead.
Re-enable gcc_unreachable call.

From-SVN: r138213

16 years agoMAINTAINERS: Add Jakub and myself as gimple maintainers.
Aldy Hernandez [Mon, 28 Jul 2008 17:37:05 +0000 (17:37 +0000)]
MAINTAINERS: Add Jakub and myself as gimple maintainers.

        * MAINTAINERS: Add Jakub and myself as gimple maintainers.

From-SVN: r138211

16 years agoMake-lang.in: Remove -Wno-* from fortran-warn.
Tobias Burnus [Mon, 28 Jul 2008 16:02:51 +0000 (18:02 +0200)]
Make-lang.in: Remove -Wno-* from fortran-warn.

2008-07-28  Tobias Burnus  <burnus@net-b.de>

       * Make-lang.in: Remove -Wno-* from fortran-warn.

From-SVN: r138208

16 years agobackport: ChangeLog.tuples: ChangeLog from gimple-tuples-branch.
Richard Biener [Mon, 28 Jul 2008 14:33:56 +0000 (14:33 +0000)]
backport: ChangeLog.tuples: ChangeLog from gimple-tuples-branch.

2008-07-28  Richard Guenther  <rguenther@suse.de>

Merge from gimple-tuples-branch.

* ChangeLog.tuples: ChangeLog from gimple-tuples-branch.
* gimple.def: New file.
* gsstruct.def: Likewise.
* gimple-iterator.c: Likewise.
* gimple-pretty-print.c: Likewise.
* tree-gimple.c: Removed.  Merged into ...
* gimple.c: ... here.  New file.
* tree-gimple.h: Removed.  Merged into ...
* gimple.h: ... here.  New file.

* Makefile.in: Add dependencies on GIMPLE_H and tree-iterator.h.
* configure.ac: Added support for ENABLE_GIMPLE_CHECKING and the
--enable-checking=gimple flag.
* config.in: Likewise.
* configure: Regenerated.

* tree-ssa-operands.h: Tuplified.
* tree-vrp.c: Likewise.
* tree-loop-linear.c: Likewise.
* tree-into-ssa.c: Likewise.
* tree-ssa-loop-im.c: Likewise.
* tree-dump.c: Likewise.
* tree-complex.c: Likewise.
* cgraphbuild.c: Likewise.
* tree-ssa-threadupdate.c: Likewise.
* tree-ssa-loop-niter.c: Likewise.
* tree-pretty-print.c: Likewise.
* tracer.c: Likewise.
* gengtype.c: Likewise.
* tree-loop-distribution.c: Likewise.
* tree-ssa-loop-unswitch.c: Likewise.
* cgraph.c: Likewise.
* cgraph.h: Likewise.
* tree-ssa-loop-manip.c: Likewise.
* value-prof.c: Likewise.
* tree-ssa-loop-ch.c: Likewise.
* tree-tailcall.c: Likewise.
* value-prof.h: Likewise.
* tree.c: Likewise.
* tree.h: Likewise.
* tree-pass.h: Likewise.
* ipa-cp.c: Likewise.
* tree-scalar-evolution.c: Likewise.
* tree-scalar-evolution.h: Likewise.
* target.h: Likewise.
* lambda-mat.c: Likewise.
* tree-phinodes.c: Likewise.
* diagnostic.h: Likewise.
* builtins.c: Likewise.
* tree-ssa-alias-warnings.c: Likewise.
* cfghooks.c: Likewise.
* fold-const.c: Likewise.
* cfghooks.h: Likewise.
* omp-low.c: Likewise.
* tree-ssa-dse.c: Likewise.
* ipa-reference.c: Likewise.
* tree-ssa-uncprop.c: Likewise.
* toplev.c: Likewise.
* tree-gimple.c: Likewise.
* tree-gimple.h: Likewise.
* tree-chrec.c: Likewise.
* tree-chrec.h: Likewise.
* tree-ssa-sccvn.c: Likewise.
* tree-ssa-sccvn.h: Likewise.
* cgraphunit.c: Likewise.
* tree-ssa-copyrename.c: Likewise.
* tree-ssa-ccp.c: Likewise.
* tree-ssa-loop-ivopts.c: Likewise.
* tree-nomudflap.c: Likewise.
* tree-call-cdce.c: Likewise.
* ipa-pure-const.c: Likewise.
* c-format.c: Likewise.
* tree-stdarg.c: Likewise.
* tree-ssa-math-opts.c: Likewise.
* tree-ssa-dom.c: Likewise.
* tree-nrv.c: Likewise.
* tree-ssa-propagate.c: Likewise.
* ipa-utils.c: Likewise.
* tree-ssa-propagate.h: Likewise.
* tree-ssa-alias.c: Likewise.
* gimple-low.c: Likewise.
* tree-ssa-sink.c: Likewise.
* ipa-inline.c: Likewise.
* c-semantics.c: Likewise.
* dwarf2out.c: Likewise.
* expr.c: Likewise.
* tree-ssa-loop-ivcanon.c: Likewise.
* predict.c: Likewise.
* tree-ssa-loop.c: Likewise.
* tree-parloops.c: Likewise.
* tree-ssa-address.c: Likewise.
* tree-ssa-ifcombine.c: Likewise.
* matrix-reorg.c: Likewise.
* c-decl.c: Likewise.
* tree-eh.c: Likewise.
* c-pretty-print.c: Likewise.
* lambda-trans.c: Likewise.
* function.c: Likewise.
* langhooks.c: Likewise.
* ebitmap.h: Likewise.
* tree-vectorizer.c: Likewise.
* function.h: Likewise.
* langhooks.h: Likewise.
* tree-vectorizer.h: Likewise.
* ipa-type-escape.c: Likewise.
* ipa-type-escape.h: Likewise.
* domwalk.c: Likewise.
* tree-if-conv.c: Likewise.
* profile.c: Likewise.
* domwalk.h: Likewise.
* tree-data-ref.c: Likewise.
* tree-data-ref.h: Likewise.
* tree-flow-inline.h: Likewise.
* tree-affine.c: Likewise.
* tree-vect-analyze.c: Likewise.
* c-typeck.c: Likewise.
* gimplify.c: Likewise.
* coretypes.h: Likewise.
* tree-ssa-phiopt.c: Likewise.
* calls.c: Likewise.
* tree-ssa-coalesce.c: Likewise.
* tree.def: Likewise.
* tree-dfa.c: Likewise.
* except.c: Likewise.
* except.h: Likewise.
* cfgexpand.c: Likewise.
* tree-cfgcleanup.c: Likewise.
* tree-ssa-pre.c: Likewise.
* tree-ssa-live.c: Likewise.
* tree-sra.c: Likewise.
* tree-ssa-live.h: Likewise.
* tree-predcom.c: Likewise.
* lambda.h: Likewise.
* tree-mudflap.c: Likewise.
* ipa-prop.c: Likewise.
* print-tree.c: Likewise.
* tree-ssa-copy.c: Likewise.
* ipa-prop.h: Likewise.
* tree-ssa-forwprop.c: Likewise.
* ggc-page.c: Likewise.
* c-omp.c: Likewise.
* tree-ssa-dce.c: Likewise.
* tree-vect-patterns.c: Likewise.
* tree-ssa-ter.c: Likewise.
* tree-nested.c: Likewise.
* tree-ssa.c: Likewise.
* lambda-code.c: Likewise.
* tree-ssa-loop-prefetch.c: Likewise.
* tree-inline.c: Likewise.
* tree-inline.h: Likewise.
* tree-iterator.c: Likewise.
* tree-optimize.c: Likewise.
* tree-ssa-phiprop.c: Likewise.
* tree-vect-transform.c: Likewise.
* tree-object-size.c: Likewise.
* tree-outof-ssa.c: Likewise.
* cfgloop.c: Likewise.
* system.h: Likewise.
* tree-profile.c: Likewise.
* cfgloop.h: Likewise.
* c-gimplify.c: Likewise.
* c-common.c: Likewise.
* tree-vect-generic.c: Likewise.
* tree-flow.h: Likewise.
* c-common.h: Likewise.
* basic-block.h: Likewise.
* tree-ssa-structalias.c: Likewise.
* tree-switch-conversion.c: Likewise.
* tree-ssa-structalias.h: Likewise.
* tree-cfg.c: Likewise.
* passes.c: Likewise.
* ipa-struct-reorg.c: Likewise.
* ipa-struct-reorg.h: Likewise.
* tree-ssa-reassoc.c: Likewise.
* cfgrtl.c: Likewise.
* varpool.c: Likewise.
* stmt.c: Likewise.
* tree-ssanames.c: Likewise.
* tree-ssa-threadedge.c: Likewise.
* langhooks-def.h: Likewise.
* tree-ssa-operands.c: Likewise.
* config/alpha/alpha.c: Likewise.
* config/frv/frv.c: Likewise.
* config/s390/s390.c: Likewise.
* config/m32c/m32c.c: Likewise.
* config/m32c/m32c-protos.h: Likewise.
* config/spu/spu.c: Likewise.
* config/sparc/sparc.c: Likewise.
* config/i386/i386.c: Likewise.
* config/sh/sh.c: Likewise.
* config/xtensa/xtensa.c: Likewise.
* config/stormy16/stormy16.c: Likewise.
* config/ia64/ia64.c: Likewise.
* config/rs6000/rs6000.c: Likewise.
* config/pa/pa.c: Likewise.
* config/mips/mips.c: Likewise.

From-SVN: r138207

16 years agoc-pragma.c (handle_pragma_message): New function.
Simon Baldwin [Mon, 28 Jul 2008 11:55:11 +0000 (11:55 +0000)]
c-pragma.c (handle_pragma_message): New function.

* c-pragma.c (handle_pragma_message): New function.
(init_pragma): Register handle_pragma_message.
* doc/extend.texi (Diagnostic Pragmas): Added #pragma message
documentation.

* gcc.dg/pragma-message.c: New.

From-SVN: r138206

16 years agoDaily bump.
GCC Administrator [Mon, 28 Jul 2008 00:16:51 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r138201

16 years agore PR tree-optimization/35252 (No vectorization for complex arrays)
Victor Kaplansky [Sun, 27 Jul 2008 21:44:25 +0000 (21:44 +0000)]
re PR tree-optimization/35252 (No vectorization for complex arrays)

2008-07-27  Victor Kaplansky  <victork@il.ibm.com>

        PR tree-optimization/35252
        * tree-vect-analyze.c (vect_build_slp_tree): Make IMAGPART_EXPR and
        REALPART_EXPR to be considered as same load operation.

testsuite

        PR tree-optimization/35252
        * gcc.dg/vect/vect-complex-1.c, gcc.dg/vect/vect-complex-2.c,
        gcc.dg/vect/fast-math-vect-complex-3.c,
        gcc.dg/vect/vect-complex-4.c: New tests.

From-SVN: r138198

16 years agore PR c++/36944 (Revision 138123 breaks constructors with default arguments)
H.J. Lu [Sun, 27 Jul 2008 17:40:04 +0000 (17:40 +0000)]
re PR c++/36944 (Revision 138123 breaks constructors with default arguments)

gcc/cp/

2008-07-27  H.J. Lu  <hongjiu.lu@intel.com>

PR c++/36944
* class.c (type_has_user_provided_default_constructor): Handle
default parameters.

gcc/testsuite/

2008-07-27  H.J. Lu  <hongjiu.lu@intel.com>

PR c++/36944
* g++.dg/other/pr36944.C: New.

From-SVN: r138194

16 years agore PR tree-optimization/36830 (STORAGE_ERROR raised compiling s-os_lib.adb)
Eric Botcazou [Sun, 27 Jul 2008 16:55:31 +0000 (16:55 +0000)]
re PR tree-optimization/36830 (STORAGE_ERROR raised compiling s-os_lib.adb)

PR tree-optimization/36830
* tree-ssa-sccvn.c (vn_reference_op_compute_hash): Hash operand #2.
(expressions_equal_p): Return false if only one operand is null.

From-SVN: r138191

16 years agore PR fortran/36724 (ICE: (character pointer targets substring))
Daniel Franke [Sun, 27 Jul 2008 16:32:14 +0000 (12:32 -0400)]
re PR fortran/36724 (ICE: (character pointer targets substring))

2008-07-27  Daniel Franke  <franke.daniel@gmail.com>

PR fortran/36724
* gfortran.dg/pointer_to_substring.f90: New test.

From-SVN: r138190

16 years agodecl.c (push_library_fn): Add a parameter for the exceptions that the function may...
Paolo Carlini [Sun, 27 Jul 2008 15:49:12 +0000 (15:49 +0000)]
decl.c (push_library_fn): Add a parameter for the exceptions that the function may throw.

2008-07-27  Paolo Carlini  <paolo.carlini@oracle.com>

* decl.c (push_library_fn): Add a parameter for the exceptions that
the function may throw.
(push_void_library_fn, push_throw_library_fn, expand_static_init):
Adjust.
(build_library_fn): Change to static.
* cp-tree.h: Adjust declarations.
* except.c (declare_nothrow_library_fn): New.
(do_get_exception_ptr, do_begin_catch, do_free_exception,
do_allocate_exception):  Use the latter, adjust the declarations
(ie, add empty exception-specification), consistently with the
actual implementation in libsupc++.

From-SVN: r138189

16 years agore PR fortran/36132 (_gfortran_internal_pack on optional arguments)
Tobias Burnus [Sun, 27 Jul 2008 10:45:44 +0000 (12:45 +0200)]
re PR fortran/36132 (_gfortran_internal_pack on optional arguments)

2008-07-27  Tobias Burnus  <burnus@net-b.de>

        PR fortran/36132
        PR fortran/29952
        PR fortran/36909
        * trans.c (gfc_trans_runtime_check): Allow run-time warning
        * besides
        run-time error.
        * trans.h (gfc_trans_runtime_check): Update declaration.
        * trans-array.c
        * (gfc_trans_array_ctor_element,gfc_trans_array_bound_check,
        gfc_conv_array_ref,gfc_conv_ss_startstride,gfc_trans_dummy_array_bias):
        Updated gfc_trans_runtime_check calls.
        (gfc_conv_array_parameter): Implement flag_check_array_temporaries,
        fix packing/unpacking for nonpresent optional actuals to optional
        formals.
        * trans-array.h (gfc_conv_array_parameter): Update declaration.
        * trans-expr.c (gfc_conv_substring,gfc_trans_arrayfunc_assign,
        gfc_conv_function_call): Updated gfc_trans_runtime_check calls.
        (gfc_conv_function_call): Update gfc_conv_array_parameter calls.
        * trans-expr.c (gfc_trans_goto): Updated gfc_trans_runtime_check
        calls.
        * trans-io.c (set_string,gfc_conv_intrinsic_repeat): Ditto.
        (gfc_conv_intrinsic_transfer,gfc_conv_intrinsic_loc): Same for
        gfc_conv_array_parameter.
        * trans-intrinsics.c (gfc_conv_intrinsic_bound): Ditto.
        * trans-decl.c (gfc_build_builtin_function_decls): Add
        gfor_fndecl_runtime_warning_at.
        * lang.opt: New option fcheck-array-temporaries.
        * gfortran.h (gfc_options): New flag_check_array_temporaries.
        * options.c (gfc_init_options, gfc_handle_option): Handle flag.
        * invoke.texi: New option fcheck-array-temporaries.

2008-07-27  Tobias Burnus  <burnus@net-b.de>

        PR fortran/36132
        PR fortran/29952
        PR fortran/36909
        * runtime/error.c: New function runtime_error_at.
        * gfortran.map: Ditto.
        * libgfortran.h: Ditto.

2008-07-27  Tobias Burnus  <burnus@net-b.de>

        PR fortran/36132
        PR fortran/29952
        PR fortran/36909
        gfortran.dg/internal_pack_4.f90: New.
        gfortran.dg/internal_pack_5.f90: New.
        gfortran.dg/array_temporaries_2.f90: New.

From-SVN: r138186

16 years agoDaily bump.
GCC Administrator [Sun, 27 Jul 2008 00:16:44 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r138184

16 years agoinstall.texi (powerpc-*-netbsd*): Remove redundant texinfo version requirements.
Gerald Pfeifer [Sat, 26 Jul 2008 21:41:15 +0000 (21:41 +0000)]
install.texi (powerpc-*-netbsd*): Remove redundant texinfo version requirements.

* doc/install.texi (powerpc-*-netbsd*): Remove redundant texinfo
version requirements.

From-SVN: r138181

16 years agoFix nits.
Eric Botcazou [Sat, 26 Jul 2008 19:03:37 +0000 (19:03 +0000)]
Fix nits.

From-SVN: r138180

16 years agocollect2.c (symkind): New enum.
Olivier Hainque [Sat, 26 Jul 2008 14:26:45 +0000 (14:26 +0000)]
collect2.c (symkind): New enum.

* collect2.c (symkind): New enum.  Symbol kinds we care about.
(is_ctor_dtor): Return symkind instead of int.  Adjust prototype,
code and head comment accordingly.
(scan_prog_file): Use symkind names instead of bare integers.

From-SVN: r138179

16 years agore PR fortran/36934 (Spurious "ambiguous reference to...ERROR"/ICE)
Thomas Koenig [Sat, 26 Jul 2008 10:30:50 +0000 (10:30 +0000)]
re PR fortran/36934 (Spurious "ambiguous reference to...ERROR"/ICE)

2008-07-26  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/36934
* gfortran.dg/allocatable_module_1.f90:  New test case.

From-SVN: r138167

16 years agocgraph.c (cgraph_function_possibly_inlined_p): Do not rely on DECL_INLINE.
Jan Hubicka [Sat, 26 Jul 2008 10:03:01 +0000 (12:03 +0200)]
cgraph.c (cgraph_function_possibly_inlined_p): Do not rely on DECL_INLINE.

* cgraph.c (cgraph_function_possibly_inlined_p): Do not rely on DECL_INLINE.
* cgraphunit.c (record_cdtor_fn): Do not initialize DECL_INLINE
(cgraph_preserve_function_body_p): Do not rely on DECL_INLINE.
* dojump.c (clear_pending_stack_adjust): Likewise.
* print-tree.c (print_node): Ignore DECL_INLINE.
* tree-inline.c (inlinable_function_p): Likewise.

From-SVN: r138165

16 years agoDaily bump.
GCC Administrator [Sat, 26 Jul 2008 00:16:56 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r138159

16 years agoFix IA-64 breakage...
Michael Meissner [Fri, 25 Jul 2008 23:44:24 +0000 (23:44 +0000)]
Fix IA-64 breakage...

Fix IA-64 breakage; Make hot/cold optimization conversation port specific; Move
disabling of scheduling from OVERRIDE_OPTIONS to OPTIMIZATION_OPTIONS

Files modified:
gcc/doc/extend.texi
gcc/doc/tm.texi
gcc/target.h
gcc/ChangeLog
gcc/testsuite/gcc.target/i386/cmov8.c
gcc/testsuite/gcc.target/i386/funcspec-10.c
gcc/testsuite/gcc.target/i386/funcspec-11.c
gcc/testsuite/ChangeLog
gcc/target-def.h
gcc/c-common.c
gcc/config/i386/i386.c
gcc/config/ia64/ia64.c

From-SVN: r138154

16 years agoFix changelog entry of my earlier commit.
Jan Hubicka [Fri, 25 Jul 2008 21:05:23 +0000 (21:05 +0000)]
Fix changelog entry of my earlier commit.

From-SVN: r138151

16 years agotypeck.c (inline_conversion): Remove.
Jan Hubicka [Fri, 25 Jul 2008 21:03:34 +0000 (23:03 +0200)]
typeck.c (inline_conversion): Remove.

* typeck.c (inline_conversion): Remove.
(cp_build_function_call): Do not use inline_conversion.
* decl.c (duplicate_decls): Do not insist on inline being declared
early.
(start_cleanup_fn): Do not assume that INLINE flags prevent function
from being output.  We now remove static functions always.
(finish_function): Do return warning on all static functions.
* call.c (build_over_call): Do not use inline_conversion.
* cp-tree.h (possibly_inlined_p): Declare.
(inline_conversion): Remove.
* pt.c (instantiate_decl): Use possibly_inlined_p predicate.
* decl2.c (cp_write_global_declarations): Likewise.
(mark_used): Likewise.
(possibly_inlined_p): New functions.

From-SVN: r138150

16 years agore PR tree-optimization/36926 (Revision 138092 breaks building of xalancbmk)
Martin Jambor [Fri, 25 Jul 2008 20:30:35 +0000 (22:30 +0200)]
re PR tree-optimization/36926 (Revision 138092 breaks building of xalancbmk)

2008-07-25  Martin Jambor  <mjambor@suse.cz>

PR tree-optimization/36926
* ipa-prop.c (ipa_analyze_call_uses): Call
ipa_is_ssa_with_stmt_def instead of SSA_NAME_IS_DEFAULT_DEF.

From-SVN: r138148

16 years agoiwmmxt.md (movv8qi_internal, [...]): Add mem = reg alternative.
Joseph Myers [Fri, 25 Jul 2008 16:21:05 +0000 (17:21 +0100)]
iwmmxt.md (movv8qi_internal, [...]): Add mem = reg alternative.

* config/arm/iwmmxt.md (movv8qi_internal, movv4hi_internal,
movv2si_internal): Add mem = reg alternative.

From-SVN: r138146

16 years agore PR bootstrap/36918 (Bootstrap failure on sparc: assertion failure in options.c)
Andreas Tobler [Fri, 25 Jul 2008 15:59:12 +0000 (15:59 +0000)]
re PR bootstrap/36918 (Bootstrap failure on sparc: assertion failure in options.c)

2008-07-25  Andreas Tobler  <a.tobler@schweiz.org>

PR bootstrap/36918
* config/sparc/sparc.h (DEFAULT_PCC_STRUCT_RETURN): Define
DEFAULT_PCC_STRUCT_RETURN to 127.

From-SVN: r138145

16 years agotarget-supports.exp (check_effective_target_arm_thumb1_ok): New.
Joseph Myers [Fri, 25 Jul 2008 15:49:36 +0000 (16:49 +0100)]
target-supports.exp (check_effective_target_arm_thumb1_ok): New.

* lib/target-supports.exp (check_effective_target_arm_thumb1_ok):
New.
* g++.dg/inherit/thunk8.C: Use it.

From-SVN: r138143