- 10 Aug, 2009 18 commits
-
-
2009-08-10 Manuel López-Ibáñez <manu@gcc.gnu.org> testsuite/ * gcc.dg/dg.exp: Test also c-c++-common dir. * g++.dg/dg.exp: Likewise. * g++.dg/warn/Wconversion-real.C: Delete. * gcc.dg/Wconversion-real.c: Move to ... * c-c++-common/Wconversion-real.c: ... here. * lib/target-supports.exp (check_effective_target_c,check_effective_target_c++): New. From-SVN: r150627
Manuel López-Ibáñez committed -
PR target/37053 * reload1.c (reload_as_needed): Use cancel_changes to completely undo a failed replacement attempt. From-SVN: r150626
Ulrich Weigand committed -
From-SVN: r150625
Neil Vachharajani committed -
2009-08-10 Laurent GUERBY <laurent@guerby.net> * make.adb: Handle multilib From-SVN: r150623
Laurent GUERBY committed -
2009-08-10 Daniel Kraft <d@domob.eu> PR fortran/37425 * gfortran.dg/typebound_operator_1.f03: New test. * gfortran.dg/typebound_operator_2.f03: New test. 2009-08-10 Daniel Kraft <d@domob.eu> PR fortran/37425 * gfortran.h (struct gfc_namespace): New fields tb_uop_root and tb_op. (gfc_find_typebound_user_op): New routine. (gfc_find_typebound_intrinsic_op): Ditto. (gfc_check_operator_interface): Now public routine. * decl.c (gfc_match_generic): Match OPERATOR(X) or ASSIGNMENT(=). * interface.c (check_operator_interface): Made public, renamed to `gfc_check_operator_interface' accordingly and hand in the interface as gfc_symbol rather than gfc_interface so it is useful for type-bound operators, too. Return boolean result. (gfc_check_interfaces): Adapt call to `check_operator_interface'. * symbol.c (gfc_get_namespace): Initialize new field `tb_op'. (gfc_free_namespace): Free `tb_uop_root'-based tree. (find_typebound_proc_uop): New helper function. (gfc_find_typebound_proc): Use it. (gfc_find_typebound_user_op): New method. (gfc_find_typebound_intrinsic_op): Ditto. * resolve.c (resolve_tb_generic_targets): New helper function. (resolve_typebound_generic): Use it. (resolve_typebound_intrinsic_op), (resolve_typebound_user_op): New. (resolve_typebound_procedures): Resolve operators, too. (check_uop_procedure): New, code from gfc_resolve_uops. (gfc_resolve_uops): Moved main code to new `check_uop_procedure'. From-SVN: r150622
Daniel Kraft committed -
2009-08-10 Richard Guenther <rguenther@suse.de> PR middle-end/41006 * tree-ssa.c (useless_type_conversion_p_1): Fold into ... (useless_type_conversion_p): ... here. Require pointer targets to be compatible. * gcc.c-torture/compile/pr41006-1.c: New testcase. * gcc.c-torture/compile/pr41006-2.c: Likewise. From-SVN: r150621
Richard Guenther committed -
2009-08-10 Janus Weil <janus@gcc.gnu.org> PR fortran/40940 * decl.c (gfc_match_type_spec): Match CLASS statement and warn about missing polymorphism. * gfortran.h (gfc_typespec): Add field 'is_class'. * misc.c (gfc_clear_ts): Initialize 'is_class' to zero. * resolve.c (type_is_extensible): New function to check if a derived type is extensible. (resolve_fl_variable_derived): Add error checks for CLASS variables. (resolve_typebound_procedure): Disallow non-polymorphic passed-object dummy arguments, turning warning into error. (resolve_fl_derived): Use 'type_is_extensible'. Disallow non-polymorphic passed-object dummy arguments for procedure pointer components, turning warning into error. Add error check for CLASS components. 2009-08-10 Janus Weil <janus@gcc.gnu.org> PR fortran/40940 * gfortran.dg/class_1.f03: New. * gfortran.dg/class_2.f03: New. * gfortran.dg/proc_ptr_comp_pass_1.f90: Use CLASS instead of TYPE. * gfortran.dg/proc_ptr_comp_pass_2.f90: Ditto. * gfortran.dg/proc_ptr_comp_pass_3.f90: Ditto. * gfortran.dg/typebound_call_10.f03: Ditto. * gfortran.dg/typebound_call_2.f03: Ditto. * gfortran.dg/typebound_call_3.f03: Ditto. * gfortran.dg/typebound_call_4.f03: Ditto. * gfortran.dg/typebound_generic_3.f03: Ditto. * gfortran.dg/typebound_generic_4.f03: Ditto. * gfortran.dg/typebound_proc_1.f08: Ditto. * gfortran.dg/typebound_proc_5.f03: Ditto. * gfortran.dg/typebound_proc_6.f03: Ditto. From-SVN: r150620
Janus Weil committed -
2009-08-10 Vincent Celier <celier@adacore.com> * prj-env.adb (Create_Config_Pragmas_File.Write_Temp_File): Do not use the temporary file name in the error message when the temporary file cannot be created. 2009-08-10 Yannick Moy <moy@adacore.com> * gnat_ugn.texi: Fix typo From-SVN: r150619
Arnaud Charlet committed -
2009-08-10 Robert Dewar <dewar@adacore.com> * exp_ch7.adb: Add ??? comment for last change 2009-08-10 Vincent Celier <celier@adacore.com> * prj-env.adb (Add_To_Buffer): New procedure (Create_Config_Pragmas_File): Write to temporary file in one shot (Create_Mapping_File): Ditto (Set_Ada_Paths): Ditto From-SVN: r150618
Arnaud Charlet committed -
2009-08-10 Vincent Celier <celier@adacore.com> PR ada/17566 * xref_lib.adb (Print_Xref): Make sure that there is at least one space between a declaration name and its type. From-SVN: r150617
Vincent Celier committed -
2009-08-10 Dodji Seketeli <dodji@redhat.com> gcc/ChangeLog: PR c++/40866 * tree-inline.c (copy_statement_list): The resulting copy shouldn't loose the original type of the statement list. gcc/testsuite/ChangeLog: PR c++/40866 * g++.dg/expr/stmt-expr-1.C: New test. From-SVN: r150615
Dodji Seketeli committed -
* config/alpha/alpha.c: Include libfuncs.h (avms_asm_output_extern): New function. (alpha_init_libfuncs): Init some decc libfuncs. * config/alpha/alpha-protos.h (avms_asm_output_external): Declare. * config/alpha/vms.h (ASM_OUTPUT_EXTERNAL): Define. (DO_CRTL_NAMES): Define. (LIB_SPEC): Remove. * config/alpha/vms64.h: (POINTERS_EXTEND_UNSIGNED): Remove undef. (LONG_TYPE_SIZE): Define. (TARGET_OS_CPP_BUILTINS): Define with __LONG_POINTERS=1 (SUBTARGET_SWITCHES): Define malloc64 switch. (TARGET_DEFAULT): Default MASK_MALLOC64 set. (MASK_RETURN_ADDR): Define. doc/invoke.texi (mmalloc64): Document switch. From-SVN: r150614
Douglas B Rupp committed -
* config/alpha/alpha.c (struct machine_function): New flag for VMS, uses_condition_handler. (alpha_expand_builtin_establish_vms_condition_handler): New expander. (alpha_expand_builtin_revert_vms_condition_handler): New expander. (enum alpha_builtin): New ALPHA_BUILTIN_REVERT_VMS_CONDITION_HANDLER and ALPHA_BUILTIN_ESTABLISH_VMS_CONDITION_HANDLER values. (code_for_builtin): New insn codes for the new alpha_builtins. (alpha_init_builtins): Register the new functions as BUILT_IN_MD. (alpha_sa_size): Account for uses_condition_handler. (alpha_expand_prologue): Likewise. (alpha_start_function): Likewise. (alpha_expand_epilogue): Likewise. * config/alpha/alpha-protos.h: Prototype the new alpha.c builtin establish/revert expanders. * config/alpha/alpha.h (DWARF_FRAME_REGNUM): Define. * config/alpha/alpha.md (builtin_establish_vms_condition_handler): New expander, resorting to the alpha.c associated function. (builtin_revert_vms_condition_handler): Likewise. * config/alpha/vms-gcc_shell_handler.c: New file. Implements __gcc_shell_handler, the static VMS condition handler used as an indirection wrapper to the current dynamically established handler. * config/alpha/vms-unwind.h: Complete rewrite. * config/alpha/t-vms (LIB2FUNCS_EXTRA): Add vms-gcc_shell_handler.c * config/alpha/vms.h (MD_UNWIND_SUPPORT): Co-Authored-By: Douglas B Rupp <rupp@gnat.com> From-SVN: r150612
Olivier Hainque committed -
* config/alpha/alpha.c (alpha_links): Add 'target' field. (alpha_need_linkage): Handle aliases. Return function symbol. (alpha_use_linkage): Rename 'linkage' argument to 'func'. Use ultimate alias target for the linkage name. * config/alpha/alpha.md (movmemdi): Use the symbol returned by alpha_need_linkage for the function symbol. (setmemdi): Likewise. Co-Authored-By: Douglas B Rupp <rupp@gnat.com> From-SVN: r150611
Eric Botcazou committed -
* config/alpha/alpha.c (TARGET_ASM_UNALIGNED_*_OP): Define if on VMS. * config/alpha/vms.h (OBJECT_FORMAT_ELF): Define. (ASM_WEAKEN_LABEL): Define. (CRT_CALL_STATIC_FUNCTION): Define. (STARTFILE_SPEC): Add crtbegin.o crtbeginS.o. (ENDFILE_SPEC): Define. (INIT_SECTION_ASM_OP): Define. * config/alpha/vms-dwarf2eh.asm (__EH_FRAME_BEGIN__): Remove. * config/alpha/t-vms (EXTRA_PARTS): Add crtbegin.o crtbeginS.o crtend.o crtendS.o. (MULTILIB_OSDIRNAMES): Define. (shlib_version): Define. (SHLIB_EXT): Define. (SHLIB_OBJS): Define. (SHLIB_NAME): Define. (SHLIB_MULTILIB): Define. (SHLIB_INSTALL): Define. (SHLIB_SYMVEC): Define. (SHLIB_SYMVECX2): Define. (SHLIB_LINK): Define. From-SVN: r150610
Douglas B Rupp committed -
alpha.c (alpha_initialize_trampoline): Initialize VMS trampoline IAW ABI for bounded procedure calls. * config/alpha/alpha.c (alpha_initialize_trampoline): Initialize VMS trampoline IAW ABI for bounded procedure calls. (alpha_start_function): Emit transfer address on nested functions for VMS trampoline call. * config/alpha/t-vms (LIB2FUNCS_EXTRA): Remove vms_tramp.asm since no longer used. * config/alpha/vms-tramp.asm: Remove. * config/alpha/vms.h (TRAMPOLINE_TEMPLATE): Leave undefined since now only data initialized at runtime. From-SVN: r150609
Douglas B Rupp committed -
* config/alpha/vms.h (HANDLE_SYSV_PRAGMA): Define. (LINK_GCC_C_SEQUENCE_SPEC): Define. (MD_EXEC_PREFIX): Remove, no longer used. (MD_STARTFILE_PREFIX): Likewise. (INCLUDE_DEFAULTS): Likewise. * config/alpha/t-vms: (vms-dwarf2.o, vms-dwarf2eh.o): Use GCC_FOR_TARGET to compile. From-SVN: r150608
Douglas B Rupp committed -
From-SVN: r150603
GCC Administrator committed
-
- 09 Aug, 2009 9 commits
-
-
2009-08-09 Richard Guenther <rguenther@suse.de> PR tree-optimization/41016 * tree-ssa-ifcombine.c (get_name_for_bit_test): Fix tuplification bug. (operand_precision): Remove. (integral_operand_p): Likewise. (recognize_single_bit_test): Adjust. * gcc.c-torture/compile/pr41016.c: New testcase. From-SVN: r150595
Richard Guenther committed -
gcc/ * c-common.c (c_fully_fold_internal): Issue a warning if a binary operation overflows. Likewise non-cast unary arithmetic. If one arm of a conditional expression is always taken, inhibit evaluation warnings for the other arm. Likewise inhibit evaluation warnings for the second && or || operand if the first operand is enough to determine the result. * c-typeck.c (build_conditional_expr): Apply the same inhibition rules here. (build_binary_op): Prevent duplicate evaluation warnings. gcc/testsuite/ * gcc.dg/overflow-warn-8.c: New test. From-SVN: r150594
Richard Sandiford committed -
tree-out-of-ssa.c (insert_value_copy_on_edge): If the source and destination have different modes... gcc/ * tree-out-of-ssa.c (insert_value_copy_on_edge): If the source and destination have different modes, Use promote_mode to determine the signedness of the conversion. Assert that the promoted source mode matches the destination mode. Don't pass the destination and destination mode to expand_expr if the source mode is different. Simplify conversion logic. From-SVN: r150592
Richard Sandiford committed -
PR tree-optimization/41008 * tree-vect-loop.c (vect_is_simple_reduction): Get operands from condition only in case it's a comparison. Adjust checks. From-SVN: r150591
Ira Rosen committed -
PR libfortran/40549 * Makefile.in (LTLDFLAGS): Add -no-undefined. * Makefile.am: Regenerate. * libgfortran.h: Remove unused block of code. From-SVN: r150590
Francois-Xavier Coudert committed -
2009-08-05 Tobias Burnus <burnus@net-b.de> PR fortran/40955 * gfortran.h (ext_attr_id_t): Add typedef for this enum. (gfc_add_ext_attribute): Use it. * decl.c (gfc_match_gcc_attributes): Ditto. * expr.c (gfc_check_pointer_assign): Ditto. * symbol.c (gfc_add_ext_attribute): Ditto. (gfc_copy_attr): Copy also ext_attr. * resolve.c (resolve_fl_derived,resolve_symbol): Ditto. * module.c (mio_symbol_attribute): Save ext_attr in the mod * file. 2009-08-05 Tobias Burnus <burnus@net-b.de> PR fortran/40955 * gfortran.dg/module_md5_1.f90: Update MD5 check sum. From-SVN: r150589
Tobias Burnus committed -
* tree-dfa.c (renumber_gimple_stmt_uids_in_blocks): New function. * tree-flow.h (renumber_gimple_stmt_uids_in_blocks): Declare it. * tree-ssa-loop-ivopts.c (comp_cost): Make COST an integer. (enum iv_position): Add IP_AFTER_USE and IP_BEFORE_USE. (dump_cand): Handle them. (struct iv_cand): New members COST_STEP and AINC_USE. (stmt_after_increment): Likewise. (stmt_after_inc_pos): Renamed from stmt_after_ip_original_pos. All callers changed. Use gimple_uid comparison instead of scanning. (add_candidate_1): When looking for identical candidates, take AINC_USE into account. Set it for new candidates. (force_expr_to_var_cost): Cast target_spill_cost to int. (get_address_cost): New arguments STMT_AFTER_INC and MAY_AUTOINC. All callers changed. Check for availability of autoinc addressing modes, both in general for a given mode, and in the specific use case. (get_computation_cost_at): New argument CAN_AUTOINC. All callers changed. (get_computation_cost): Likewise. (autoinc_possible_for_pair, set_autoinc_for_original_candidates, add_autoinc_candidates): New static functions. (add_candidate): Call add_autoinc_candidates for candidates based on a USE_ADDRESS use. (find_iv_candidates): Call set_autoinc_for_original_candidates. (determine_use_iv_cost_address): If we have an autoinc candidate at the matching use, verify autoinc is possible and subtract the cost of the candidate's step from the cost. (determine_iv_cost): Record the cost of the increment in the COST_STEP member of the candidate. (tree_ssa_iv_optimize_loop): Swap the calls to determine_iv_costs and determine_use_iv_costs. Call renumber_gimple_stmt_uids_in_blocks. testsuite/ * gcc.target/bfin/loop-autoinc.c: New file. From-SVN: r150588
Bernd Schmidt committed -
* config.build (ia64-hp-*vms*): New target. (alpha64-dec-*vms*,alpha*-dec-*vms*): Fix for config/vms and unify with ia64-hp-*vms*. * config.gcc (ia64-hp-*vms*): New target. (alpha64-dec-*vms*,alpha*-dec-*vms*): Fix for config/vms and unify with ia64-hp-*vms*. * config.host (ia64-hp-*vms*): New target. (alpha64-dec-*vms*,alpha*-dec-*vms*): Fix for config/vms and unify with ia64-hp-*vms*. * libgcc/config.host (ia64-hp-*vms*): New target. (alpha64-dec-*vms*,alpha*-dec-*vms*): Fix for config/vms and unify with ia64-hp-*vms*. From-SVN: r150587
Douglas B Rupp committed -
From-SVN: r150584
GCC Administrator committed
-
- 08 Aug, 2009 4 commits
-
-
2009-08-08 Richard Guenther <rguenther@suse.de> PR tree-optimization/40991 * tree-ssa-pre.c (eliminate): Delay purging EH edges. * g++.dg/torture/pr40991.C: New testcase. From-SVN: r150580
Richard Guenther committed -
2009-08-08 Laurent GUERBY <laurent@guerby.net> * ada/acats/support/impdef.a: Tweak timing constants. Add Long_Minimum_Task_Switch and Long_Switch_To_New_Task. * ada/acats/tests/c9/c940005.a: Use new timing constants. * ada/acats/tests/c9/c940007.a: Likewise. * ada/acats/tests/c9/c94001c.ada: Likewise. * ada/acats/tests/c9/c94006a.ada: Likewise. * ada/acats/tests/c9/c94008c.ada: Likewise. * ada/acats/tests/c9/c951002.a: Likewise. * ada/acats/tests/c9/c954a01.a: Likewise. * ada/acats/tests/c9/c96001a.ada: Likewise. * ada/acats/tests/c9/c97307a.ada: Likewise. From-SVN: r150579
Laurent GUERBY committed -
gcc/ * combine.c (gen_lowpart_or_truncate): Exclude CONST_INTs from mode check. Do truncations in an integer mode. (force_to_mode): Handle subregs for all mode types. Only do arithmetic simplifications on integer modes. From-SVN: r150578
Richard Sandiford committed -
From-SVN: r150577
GCC Administrator committed
-
- 07 Aug, 2009 9 commits
-
-
2009-08-07 Richard Guenther <rguenther@suse.de> PR tree-optimization/40999 * tree-ssa-ccp.c (get_symbol_constant_value): Handle CONST_DECLs. (maybe_fold_reference): Lookup constant initializers. (fold_gimple_assign): Likewise. * gfortran.dg/pr40999.f: New testcase. From-SVN: r150572
Richard Guenther committed -
2009-08-07 Dodji Seketeli <dodji@redhat.com> PR c++/39987 * gcc/testsuite/g++.dg/overload/defarg4.C: Oops, forgot to add the testcase. From-SVN: r150568
Dodji Seketeli committed -
hash.cc (hash<string>::operator()(string), hash<wstring>::operator()(wstring)): Do not decorate as throwing nothing. 2009-08-07 Paolo Carlini <paolo.carlini@oracle.com> * src/hash.cc (hash<string>::operator()(string), hash<wstring>::operator()(wstring)): Do not decorate as throwing nothing. * include/bits/functional_hash.h (hash<error_code>:: operator()(error_code)): Likewise. From-SVN: r150566
Paolo Carlini committed -
2009-08-07 Javier Miranda <miranda@adacore.com> * exp_ch7.adb (Wrap_Transient_Expression): Add missing adjustment of SCIL node. From-SVN: r150565
Javier Miranda committed -
2009-08-07 Robert Dewar <dewar@adacore.com> * sem_warn.adb (Warn_On_Unreferenced_Entity): Fix obvious typo. 2009-08-07 Vincent Celier <celier@adacore.com> * gnatcmd.adb (GNATCmd): If -U is not used, one and only one main is specified on the command line and there are switches in the Compiler package of the project file, use these compilation switches to invoke the tool. 2009-08-07 Ben Brosgol <brosgol@adacore.com> * gnat_ugn.texi: Wordsmithing edits at beginning of gnatcheck chapter. 2009-08-07 Ed Schonberg <schonberg@adacore.com> * sem_ch10.adb (Analyze_Proper_Body): Indicate name of missing subunit even if not in main unit, to simplify debugging. 2009-08-07 Arnaud Charlet <charlet@adacore.com> * gcc-interface/Makefile.in: Fix handling of GCC_FOR_TARGET. * gcc-interface/Make-lang.in: Update dependencies. From-SVN: r150564
Arnaud Charlet committed -
2009-08-07 Robert Dewar <dewar@adacore.com> * types.ads: Minor reformatting * sem_ch12.ads (Check_Generic_Child_Unit): Add missing documentation. * frontend.adb, sem_warn.adb, sem_warn.ads: Fix spelling of Output_Non_Modified_In_Out_Warnings. * sem_ch13.adb: Remove ??? comment. 2009-08-07 Vincent Celier <celier@adacore.com> * mlib-prj.adb (Build_Library): Include binder generate object file for SAL when library name is only one character. From-SVN: r150563
Arnaud Charlet committed -
2009-08-07 Thomas Quinot <quinot@adacore.com> * targparm.adb: Minor reformatting * sem.adb: Minor reformatting * exp_ch4.adb (Expand_N_Conditional_Expression): Add comment. 2009-08-07 Emmanuel Briot <briot@adacore.com> * prj-conf.adb: Remove duplicate directory separator in the output when an object directory does not exist. 2009-08-07 Robert Dewar <dewar@adacore.com> * exp_util.adb: Minor reformatting 2009-08-07 Vincent Celier <celier@adacore.com> * mlib-prj.adb (Build_Library): Fixed bug in name of ALI file (wrong length used). 2009-08-07 Ed Schonberg <schonberg@adacore.com> * exp_ch9.adb (Expand_N_Protected_Type_Declaration): In Ravenscar mode, detect non-static private components that will violate restriction No_Implicit_Heap_Allocation. 2009-08-07 Ben Brosgol <brosgol@adacore.com> * gnat_ugn.texi: Edited Rule Exemption section of gnatcheck chapter. From-SVN: r150562
Arnaud Charlet committed -
* dwarf2out.c (output_fde): When doing hot/cold partitioning, use fde->dw_fde_begin as begin label instead of hot/cold label. Use LLSDAC label instead of LLSDA for second section lsda. (dwarf2out_do_cfi_startproc): Add SECOND argument. Use LLSDAC label instead of LLSDA if it is true. (dwarf2out_begin_prologue, dwarf2out_switch_text_section): Adjust callers. * except.c (add_call_site, dw2_size_of_call_site_table): Add SECTION argument. Use it as index into crtl->eh.call_site_record array. (dw2_output_call_site_table): Likewise. Add CS_FORMAT argument, use it to determine how to print table entries instead of using #ifdef HAVE_AS_LEB128. For SECTION > 0 use hot resp. cold label instead of normal begin label as base. (sjlj_assign_call_site_values): Adjust add_call_site caller. (convert_to_eh_region_ranges): When doing hot/cold partitioning, ensure no EH range spans between sections and that landing pads are always in the corresponding section. (sjlj_size_of_call_site_table, sjlj_output_call_site_table): Adjust for crtl->eh.call_site_record being an array rather than scalar. (output_one_function_exception_table): New function, copied from output_function_exception_table. Adjust dw2_size_of_call_site_table, dw2_output_call_site_table callers. For SECOND section use *C suffixed labels. (output_function_exception_table): Call output_one_function_exception_table and, when doing hot/cold partitioning, also another time for the second section. * opts.c: Include except.h. (decode_options): Allow -freorder-blocks-and-partition with exceptions, unless SJLJ or TARGET_UNWIND_INFO. * Makefile.in (opts.o): Depend on $(EXCEPT_H). * function.h (struct rtl_eh): Change call_site_record from scalar into array of 2 elements. * g++.dg/tree-prof/partition1.C: New test. From-SVN: r150560
Jakub Jelinek committed -
tree-ssa.c (useless_type_conversion_p_1): Only for types that require structural equality defer to the langhook. 2009-08-07 Richard Guenther <rguenther@suse.de> * tree-ssa.c (useless_type_conversion_p_1): Only for types that require structural equality defer to the langhook. From-SVN: r150559
Richard Guenther committed
-