aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2006-02-18install.texi (hppa*-hp-hpux*): Update for 4.1.0.John David Anglin2-0/+15
* doc/install.texi (hppa*-hp-hpux*): Update for 4.1.0. From-SVN: r111253
2006-02-18re PR tree-optimization/25680 (Store CCP does not understand REALPART_EXPR < ↵Andrew Pinski4-5/+39
COMPLEX_CST >) 2006-02-18 Andrew Pinski <pinskia@physics.uc.edu> PR tree-opt/25680 * tree-ssa-ccp.c (ccp_fold): Handle store CCP of REALPART_EXPR and IMAGPART_EXPR. 2006-02-18 Andrew Pinski <pinskia@physics.uc.edu> PR tree-opt/25680 * testsuite/gcc.dg/tree-ssa/complex-3.c: New test. From-SVN: r111251
2006-02-1820031106-1.c: Fix the final scan of the variable to take into account the ↵Andrew Pinski3-4/+11
variable name in... 2006-02-18 Andrew Pinski <pinskia@physics.uc.edu> * gcc.dg/tree-ssa/20031106-1.c: Fix the final scan of the variable to take into account the variable name in the function header. * gcc.dg/tree-ssa/20031106-2.c: Likewise. From-SVN: r111250
2006-02-18tree-flow.h (struct var_ann_d): Rename field is_alias_tag to is_aliased.Diego Novillo6-19/+25
* tree-flow.h (struct var_ann_d): Rename field is_alias_tag to is_aliased. Update all users. From-SVN: r111249
2006-02-18re PR middle-end/26334 (ICE in lhd_set_decl_assembler_name)Jakub Jelinek5-3/+48
PR middle-end/26334 * stmt.c (decl_overlaps_hard_reg_set_p): Use DECL_HARD_REGISTER instead of DECL_REGISTER. * gcc.c-torture/compile/20060217-1.c: New test. * gcc.dg/20060218-1.c: New test. From-SVN: r111247
2006-02-18trans-stmt.c (struct temporary_list): Delete.Roger Sayle2-176/+136
* trans-stmt.c (struct temporary_list): Delete. (gfc_trans_where_2): Major reorganization. Remove no longer needed TEMP argument. Allocate and deallocate the control mask and pending control mask locally. (gfc_trans_forall_1): Delete TEMP local variable, and update call to gfc_trans_where_2. No need to deallocate arrays after. (gfc_evaluate_where_mask): Major reorganization. Change return type to void. Pass in parent execution mask, MASK, and two already allocated mask arrays CMASK and PMASK. On return CMASK := MASK & COND, PMASK := MASK & !COND. MASK, CMASK and CMASK may all be NULL, or refer to the same temporary arrays. (gfc_trans_where): Update call to gfc_trans_where_2. We no longer need a TEMP variable or to deallocate temporary arrays allocated by gfc_trans_where_2. From-SVN: r111245
2006-02-18re PR ada/13408 (acats numeric tests cxg* fail on pa/hpux)Olivier Hainque2-0/+10
PR ada/13408 * pa.h (WIDEST_HARDWARE_FP_SIZE): Define. From-SVN: r111241
2006-02-18gfortran.h (gfc_add_attribute): Change uint to unsigned int.Danny Smith4-3/+10
2006-02-18 Danny Smith <dannysmith@users.sourceforeg.net> * gfortran.h (gfc_add_attribute): Change uint to unsigned int. * symbol.c (gfc_add_attribute): Likewise for definition. * resolve.c (resolve_global_procedure): Likewise for variable 'type'. From-SVN: r111239
2006-02-18re PR target/24837 (move dynamic linker names out of LINK_SPEC and into new ↵Joseph Myers29-80/+276
DYNAMIC_LINKER) PR target/24837 * config.gcc: Define UCLIBC_DEFAULT to 0 or 1. * opth-gen.awk: Handle Var and InverseMask together. * config/linux.opt (muclibc, mglibc): Use Var(linux_uclibc). * config/linux.h: Use #if not #ifdef for testing UCLIBC_DEFAULT. (TARGET_C99_FUNCTIONS): Test OPTION_GLIBC not TARGET_GLIBC. (CHOOSE_DYNAMIC_LINKER): Give an error for -mglibc and -muclibc used together. (UCLIBC_DYNAMIC_LINKER32, UCLIBC_DYNAMIC_LINKER64, LINUX_DYNAMIC_LINKER32, LINUX_DYNAMIC_LINKER64): Define. * config/alpha/linux-elf.h (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER, CHOOSE_DYNAMIC_LINKER, LINUX_DYNAMIC_LINKER): Define. (ELF_DYNAMIC_LINKER): Define to LINUX_DYNAMIC_LINKER. * config/alpha/linux.h (TARGET_C99_FUNCTIONS): Define to TARGET_GLIBC. * config/cris/linux.h (GLIBC_DYNAMIC_LINKER): Define. (CRIS_LINK_SUBTARGET_SPEC): Pass a -dynamic-linker option. * config/frv/linux.h (GLIBC_DYNAMIC_LINKER): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. (TARGET_C99_FUNCTIONS): Don't define. * config/i386/linux.h (DYNAMIC_LINKER): Rename to GLIBC_DYNAMIC_LINKER. (SUBTARGET_EXTRA_SPECS): Use LINUX_DYNAMIC_LINKER. * config/i386/linux64.h (GLIBC_DYNAMIC_LINKER32, GLIBC_DYNAMIC_LINKER64): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER32 and LINUX_DYNAMIC_LINKER64. * config/ia64/linux.h (GLIBC_DYNAMIC_LINKER): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * config/m32r/linux.h (GLIBC_DYNAMIC_LINKE): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * config/m68k/linux.h (GLIBC_DYNAMIC_LINKER): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * config/mips/linux64.h (GLIBC_DYNAMIC_LINKER32, GLIBC_DYNAMIC_LINKER64, GLIBC_DYNAMIC_LINKERN32, UCLIBC_DYNAMIC_LINKERN32, LINUX_DYNAMIC_LINKERN32): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKERN32, LINUX_DYNAMIC_LINKER64 and LINUX_DYNAMIC_LINKER32. * config/mn10300/linux.h (GLIBC_DYNAMIC_LINKER): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * config/pa/pa-linux.h (GLIBC_DYNAMIC_LINKER): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * config/rs6000/linux.h (TARGET_C99_FUNCTIONS): Define to TARGET_GLIBC. * config/rs6000/linux64.h (TARGET_C99_FUNCTIONS): Likewise. (GLIBC_DYNAMIC_LINKER32, GLIBC_DYNAMIC_LINKER64, UCLIBC_DYNAMIC_LINKER32, UCLIBC_DYNAMIC_LINKER64, CHOOSE_DYNAMIC_LINKER, CHOOSE_DYNAMIC_LINKER, LINUX_DYNAMIC_LINKER32, LINUX_DYNAMIC_LINKER64): Define. (LINK_OS_LINUX_SPEC32): Use LINUX_DYNAMIC_LINKER32. (LINK_OS_LINUX_SPEC64): Use LINUX_DYNAMIC_LINKER64. * config/rs6000/sysv4.h (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER, CHOOSE_DYNAMIC_LINKER, LINUX_DYNAMIC_LINKER): Define. (LINK_OS_LINUX_SPEC): Use LINUX_DYNAMIC_LINKE. * config/s390/linux.h (GLIBC_DYNAMIC_LINKER32, GLIBC_DYNAMIC_LINKER64): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER32 and LINUX_DYNAMIC_LINKER64. * config/sh/linux.h (GLIBC_DYNAMIC_LINKER): Define. (SUBTARGET_LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * config/sparc/linux.h (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER, CHOOSE_DYNAMIC_LINKER, LINUX_DYNAMIC_LINKER): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. (TARGET_C99_FUNCTIONS): Define to TARGET_GLIBC. * config/sparc/linux64.h (GLIBC_DYNAMIC_LINKER32, GLIBC_DYNAMIC_LINKER64, UCLIBC_DYNAMIC_LINKER32, UCLIBC_DYNAMIC_LINKER64, CHOOSE_DYNAMIC_LINKER, LINUX_DYNAMIC_LINKER32, LINUX_DYNAMIC_LINKER64): Define. (LINK_ARCH32_SPEC): Use LINUX_DYNAMIC_LINKER32. (LINK_ARCH64_SPEC, LINK_SPEC): Use LINUX_DYNAMIC_LINKER64. (TARGET_C99_FUNCTIONS): Define to TARGET_GLIBC. * config/xtensa/linux.h (GLIBC_DYNAMIC_LINKER): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * doc/invoke.texi (-muclibc): Remove caveat about supported targets. testsuite: * gcc.dg/glibc-uclibc-1.c, gcc.dg/glibc-uclibc-2.c: New tests. From-SVN: r111235
2006-02-18cpp.texi (__TIMESTAMP__): Document.Grigory Zagorodnev3-0/+20
2006-02-17 Grigory Zagorodnev <grigory_zagorodnev@linux.intel.com> gcc/ChangeLog: * doc/cpp.texi (__TIMESTAMP__): Document. libcpp/ChangeLog: * macro.c (_cpp_builtin_macro_text): Handle BT_TIMESTAMP. * files.c (_cpp_get_file_stat): New function. * include/cpplib.h (builtin_type): Add BT_TIMESTAMP. * init.c (builtin_array): Add support for __TIMESTAMP__/BT_TIMESTAMP. * internal.h (_cpp_get_file_stat): Prototype. (struct cpp_buffer): Add timestamp. gcc/testsuite/ChangeLog: * gcc.dg/cpp/undef3.c: New test. * gcc.dg/cpp/trad/builtins2.c: New test. From-SVN: r111232
2006-02-18re PR c++/26266 (Trouble with static const data members in template classes)Mark Mitchell2-1/+2
PR c++/26266 * g++.dg/template/static22.C: New test. * g++.dg/template/static23.C: New test. * g++.dg/template/static24.C: New test. * g++.dg/template/non-dependent13.C: New test. * g++.dg/init/member1.C: Tweak error markers. From-SVN: r111230
2006-02-18re PR c++/26266 (Trouble with static const data members in template classes)Mark Mitchell17-75/+190
PR c++/26266 * cp-tree.h (cp_finish_decl): Adjust declaration. (grokbitfield): Likewise. (finish_static_data_member_decl): Likewise. * init.c (constant_value_1): Ensure processing_template_decl when folding non-dependent initializers for static data members of dependent types. Return error_mark_node for erroneous initailizers. * class.c (get_vtable_decl): Use finish_decl, not cp_finish_decl. * decl.c (cp_make_fname_decl): Adjust call to cp_finish_decl. (cp_finish_decl): Add init_const_expr_p parameter. Set DECL_INITIALIZED_BY_CONSTANT_EXPRESSION_P here. (finish_decl): Adjust call to cp_finish_decl. (compute_array_index_type): Robustify. (start_method): Use finish_decl, not cp_finish_decl. * rtti.c (emit_tinfo_decl): Likewise. * except.c (initialize_handler_parm): Adjust call to cp_finish_decl. (expand_start_catch_block): Likewise. * cvt.c (build_up_reference): Adjust call to cp_finish_decl. * pt.c (instantiate_class_template): Adjust call to finish_static_data_member_decl. (tsubst_expr): Use finish_decl, not cp_finish_decl. (instantiate_decl): Adjust call to cp_finish_decl. * name-lookup.c (pushdecl_top_level_1): Use finish_decl, not cp_finish_decl. * decl2.c (finish_static_data_member_decl): Add init_const_expr_p parameter. (grokfield): Likewise. * parser.c (cp_parser_condition): Check for constant initializers. (cp_parser_init_declarator): Adjust calls to grokfield and cp_finish_decl. Don't set DECL_INITIALIZED_BY_CONSTANT_EXPRESSION_P here. (cp_parser_member_declaration): Likewise. (cp_parser_objc_class_ivars): Likewise. PR c++/26266 * g++.dg/template/static22.C: New test. * g++.dg/template/static23.C: New test. * g++.dg/template/static24.C: New test. * g++.dg/template/non-dependent13.C: New test. From-SVN: r111229
2006-02-18re PR rtl-optimization/25600 (unsigned>>31?-1:0 should be optimized to int>>31)Roger Sayle3-0/+47
PR middle-end/25600 * fold-const.c (fold_binary): Fold (X >> C) != 0 into X < 0 when C is one less than the width of X (and related transformations). * simplify_rtx.c (simplify_unary_operation_1): Transform (neg (lt x 0)) into either (ashiftrt X C) or (lshiftrt X C) depending on STORE_FLAG_VALUE, were C is one less then the width of X. From-SVN: r111226
2006-02-18Daily bump.GCC Administrator1-1/+1
From-SVN: r111223
2006-02-18re PR tree-optimization/26341 (930217-1.c and 931013-3.c ICE at -O2 and ↵Daniel Berlin2-12/+8
above in add_virtual_operand) 2006-02-17 Daniel Berlin <dberlin@dberlin.org> Fix PR tree-optimization/26341 * tree-ssa-operands.c (add_virtual_operand): Remove assert about NAME_MEMORY_TAG's. From-SVN: r111217
2006-02-17re PR target/26255 (internal compiler error: in ↵John David Anglin5-11/+123
reload_cse_simplify_operands, at postreload.c:391) PR target/26255 * pa.md: Create separate HI and QI move patterns for 32-bit and 64-bit with hardware float support, and software float support. Add fcpy alternative to hardware patterns. Add alternatives to copy between general and floating-point registers to the 32-bit pattern. * pa.c (pa_secondary_reload): Don't abort if reload tries to find a secondary reload to load a QI or HI mode constant into a floating point register. * pa32-regs.h (VALID_FP_MODE_P): Allow QImode and HImode. * pa64-regs.h (VALID_FP_MODE_P): Likewise. From-SVN: r111214
2006-02-17re PR target/26255 (internal compiler error: in ↵John David Anglin2-0/+36
reload_cse_simplify_operands, at postreload.c:391) PR target/26255 * gcc.c-torture/compile/pr26255.c: New test case. From-SVN: r111213
2006-02-17re PR rtl-optimization/26272 (gcc.c-torture/execute/built-in-setjmp.c fails ↵Andrew Pinski2-3/+11
at -O2 and above on powerpc-darwin) 2006-02-17 Andrew Pinski <pinskia@physics.uc.edu> PR target/26272 * config/rs6000/darwin.md (load_macho_picbase_si): Add pc to the pattern. (load_macho_picbase_di): Likewise. From-SVN: r111206
2006-02-17where_10.f90: New test case.Roger Sayle8-0/+144
* gfortran.fortran-torture/execute/where_10.f90: New test case. * gfortran.fortran-torture/execute/where_11.f90: Likewise. * gfortran.fortran-torture/execute/where_12.f90: Likewise. * gfortran.fortran-torture/execute/where_13.f90: Likewise. * gfortran.fortran-torture/execute/where_14.f90: Likewise. * gfortran.fortran-torture/execute/where_15.f90: Likewise. * gfortran.fortran-torture/execute/where_16.f90: Likewise. From-SVN: r111204
2006-02-17Resync.Arnaud Charlet1-0/+175
From-SVN: r111200
2006-02-17expander.adb: Fix typo in commentRamon Fernandez4-8/+19
2006-02-17 Ramon Fernandez <fernandez@adacore.com> Thomas Quinot <quinot@adacore.com> Robert Dewar <dewar@adacore.com> Javier Miranda <miranda@adacore.com> * expander.adb: Fix typo in comment * exp_pakd.adb: Fix typo Minor comment reformatting. * g-dyntab.adb: Minor reformatting * exp_ch6.adb (Register_Interface_DT_Entry): Traverse the list of aliased subprograms to look for the abstract interface subprogram. From-SVN: r111199
2006-02-17s-wchcnv.adb: Document handling of [ on output (we do not change this to ↵Robert Dewar2-2/+20
["5B"] and the new... 2006-02-17 Robert Dewar <dewar@adacore.com> * s-wchcnv.adb: Document handling of [ on output (we do not change this to ["5B"] and the new comments say why not. * gnat_ugn.texi: Add note for -gnatVo that this now includes the cases of type conversions and qualified expressions. Add comments on handling of brackets encoding for Text_IO From-SVN: r111198
2006-02-17a-convec.ads, [...]: (operator "&"): handle potential overflow for large ↵Matthew Heaney4-317/+522
index types 2006-02-17 Matthew Heaney <heaney@adacore.com> * a-convec.ads, a-convec.adb: (operator "&"): handle potential overflow for large index types (Insert): removed Contraint_Error when using large index types (Insert_Space): removed Constraint_Error for large index types (Length): moved constraint check from Length to Insert * a-coinve.ads, a-coinve.adb: Stream attribute procedures are declared as not null access. Explicit raise statements now include an exception message. (operator "&"): handle potential overflow for large index types (Insert): removed Contraint_Error when using large index types (Insert_Space): removed Constraint_Error for large index types (Length): moved constraint check from Length to Insert From-SVN: r111197
2006-02-17snames.ads, snames.adb: New standard names for new project attributes...Vincent Celier2-65/+111
2006-02-17 Vincent Celier <celier@adacore.com> * snames.ads, snames.adb: New standard names for new project attributes: archive_builder, archive_indexer, compiler_pic_option, config_body_file_name, config_body_file_name_pattern, config_file_switches, config_file_unique, config_spec_file_name, config_spec_file_name_pattern, default_builder_switches, default_global_compiler_switches, default_language, dependency_file_kind, global_compiler_switches, include_path, include_path_file, language_kind, linker_executable_option, linker_lib_dir_option, linker_lib_name_option, mapping_file_switches, roots, runtime_project. From-SVN: r111196
2006-02-17sem_res.adb (Resolve_Type_Conversion): In case of conversion to an abstract ↵Javier Miranda1-37/+24
interface type... 2006-02-17 Javier Miranda <miranda@adacore.com> * sem_res.adb (Resolve_Type_Conversion): In case of conversion to an abstract interface type, the static analysis is not enough to know if the interface is implemented or not by the source tagged type. Hence we must pass the work to the expander to generate the required code to evaluate the conversion at run-time. (Resolve_Equality_Op): Do not apply previous transformation if expansion is disasbled, to prevent anomalies when locating global references in a generic unit. From-SVN: r111195
2006-02-17sem_ch6.adb (Build_Body_To_Inline): Enforce the rule that in order to inline ↵Ed Schonberg1-9/+16
a function that returns an... 2006-02-17 Ed Schonberg <schonberg@adacore.com> * sem_ch6.adb (Build_Body_To_Inline): Enforce the rule that in order to inline a function that returns an unconstrained type, the return expression must be the first variable declared in the body of the function. From-SVN: r111194
2006-02-17sem_ch3.adb (Build_Discriminated_Subtype): In case of concurrent type we ↵Javier Miranda1-5/+34
cannot inherit the primitive operations... 2006-02-17 Javier Miranda <miranda@adacore.com> Ed Schonberg <schonberg@adacore.com> * sem_ch3.adb (Build_Discriminated_Subtype): In case of concurrent type we cannot inherit the primitive operations; we inherit the Corresponding_Record_Type (which has the list of primitive operations). (Check_Anonymous_Access_Types): When creating anonymous access types for access components, use Rewrite in order to preserve the tree structure, for ASIS use. (Analyze_Object_Declaration): For limited types with access discriminants with defaults initialized by an aggregate, obtain subtype from aggregate as for other mutable types. (Derived_Type_Declaration): If the derived type is a limited interface, set the corresponding flag (Is_Limited_Record is not sufficient). From-SVN: r111193
2006-02-17sem_ch12.adb (Analyze_Package_Instantiation): Inline_Now is false if the ↵Ed Schonberg1-10/+18
current instance is nested within another instance... 2006-02-17 Ed Schonberg <schonberg@adacore.com> * sem_ch12.adb (Analyze_Package_Instantiation): Inline_Now is false if the current instance is nested within another instance in a child unit. From-SVN: r111192
2006-02-17sem_ch10.adb (Analyze_With_Clause): If the unit is a subprogram instantiation...Ed Schonberg1-10/+5
2006-02-17 Ed Schonberg <schonberg@adacore.com> * sem_ch10.adb (Analyze_With_Clause): If the unit is a subprogram instantiation, the corresponding entity is the related_instance of the wrapper package created for the instance. From-SVN: r111191
2006-02-17Makefile.in: Use VMS64 specialized versions of several units in Interfaces.C ↵Vasiliy Fofanov1-2/+5
hierarchy to be... 2006-02-17 Vasiliy Fofanov <fofanov@adacore.com> * Makefile.in: Use VMS64 specialized versions of several units in Interfaces.C hierarchy to be compatible with HP C default size choices. Use the default version of Ada.Synchronous_Task_Control for VxWorks 653. From-SVN: r111190
2006-02-17init.c (facility_resignal_table): new arrayVasiliy Fofanov1-0/+10
2006-02-17 Vasiliy Fofanov <fofanov@adacore.com> * init.c (facility_resignal_table): new array (__gnat_default_resignal_p): enhance default predicate to resignal if VMS condition has one of the predefined facility codes. From-SVN: r111189
2006-02-17g-os_lib.adb (Copy_File): Make sure that if From has an Invalid_FD, then we ↵Robert Dewar1-0/+7
close To if it is valid. 2006-02-17 Robert Dewar <dewar@adacore.com> * g-os_lib.adb (Copy_File): Make sure that if From has an Invalid_FD, then we close To if it is valid. From-SVN: r111188
2006-02-17freeze.adb (Statically_Discriminated_Components): Return false if the bounds ↵Ed Schonberg2-15/+36
of the type of the discriminant are not static... 2006-02-17 Ed Schonberg <schonberg@adacore.com> * freeze.adb (Statically_Discriminated_Components): Return false if the bounds of the type of the discriminant are not static expressions. * sem_aggr.adb (Check_Static_Discriminated_Subtype): Return false if the bounds of the discriminant type are not static. From-SVN: r111187
2006-02-17exp_dbug.adb (Debug_Renaming_Declaration): Indicate that the entity must be ↵Ed Schonberg1-1/+2
materialized when... 2006-02-17 Ed Schonberg <schonberg@adacore.com> * exp_dbug.adb (Debug_Renaming_Declaration): Indicate that the entity must be materialized when the renamed expression is an explicit dereference. From-SVN: r111186
2006-02-17exp_ch4.adb (Expand_N_Allocator): If the allocated object is accessed ↵Javier Miranda1-23/+98
through an access to class-wide interface... 2006-02-17 Javier Miranda <miranda@adacore.com> Robert Dewar <dewar@adacore.com> * exp_ch4.adb (Expand_N_Allocator): If the allocated object is accessed through an access to class-wide interface we force the displacement of the pointer to the allocated object to reference the corresponding secondary dispatch table. (Expand_N_Op_Divide): Allow 64 bit divisions by small power of 2, if Long_Shifts are supported on the target, even if 64 bit divides are not supported (configurable run time mode). (Expand_N_Type_Conversion): Do validity check if validity checks on operands are enabled. (Expand_N_Qualified_Expression): Do validity check if validity checks on operands are enabled. From-SVN: r111185
2006-02-17s-taprop-irix.adb, [...] (Set_False, [...]): Add Abort_Defer/Undefer pairs ↵Jose Ruiz10-25/+261
to avoid the possibility of a task being aborted... 2006-02-17 Jose Ruiz <ruiz@adacore.com> * s-taprop-irix.adb, s-taprop-hpux-dce.adb, s-taprop-linux.adb, s-taprop-solaris.adb, s-taprop-vms.adb, s-taprop-mingw.adb, s-taprop-posix.adb, s-taprop-vxworks.adb, s-taprop-lynxos.adb, s-taprop-tru64.adb (Set_False, Set_True, Suspend_Until_True): Add Abort_Defer/Undefer pairs to avoid the possibility of a task being aborted while owning a lock. From-SVN: r111184
2006-02-17re PR ada/26315 (ACATS failures c43208b c85006a c85006d cd92001)Eric Botcazou4-9/+6
2006-02-17 Eric Botcazou <botcazou@adacore.com> PR ada/26315 * utils2.c (find_common_type): If both input types are BLKmode and have the same constant size, keep using the first one. * bindgen.adb: (Gen_Versions_Ada): Revert previous workaround. * decl.c (gnat_to_gnu_entity): Only check TREE_OVERFLOW for a constant. * misc.c (gnat_handle_option): New case for -Woverlength-strings. From-SVN: r111183
2006-02-17sem_ch4.adb (Find_Boolean_Types): If one of the operands is an aggregate...Ed Schonberg1-1/+26
2006-02-17 Ed Schonberg <schonberg@adacore.com> * sem_ch4.adb (Find_Boolean_Types): If one of the operands is an aggregate, check the interpretations of the other operand to find one that may be a boolean array. (Analyze_Selected_Component): Fix flow-of-control typo in case where the prefix is a private extension. From-SVN: r111182
2006-02-17trans-common.c: Include rtl.h earlier.Richard Sandiford3-2/+7
gcc/fortran/ * trans-common.c: Include rtl.h earlier. * trans-decl.c: Likewise. From-SVN: r111178
2006-02-16tree-vrp.c (set_value_range_to_nonnegative): New function.Jeff Law8-167/+163
* tree-vrp.c (set_value_range_to_nonnegative): New function. (vrp_expr_computes_nonnegative, ssa_name_nonnegative_p): Likewise. (ssa_name_nonzero_p): Likewise. (get_value_range): Return NULL if VRP is not running. (extract_range_from_expr): Fallback to tree_expr_XXX_p if VRP routines do not discover a range. (vrp_finalize): Clear VR_VALUE to indicate VRP is not running. * tree.h (ssa_name_nonzero_p, ssa_name_nonnegative_p): Prototype. * fold-const.c (tree_expr_nonzero_p): For SSA_NAMEs, query VRP. (tree_expr_nonnegative_p): Similarly. * tree-ssa-dom.c (nonzero_vars, nonzero_vars_stack): Remove. (restore_nonzero_vars_to_original_value): Remove. (unsafe_associative_fp_binop): Remove. (tree_ssa_dominator_optimize): Remove initialization and finalization of nonzero_vars and nonzero_vars_stack. (dom_opt_initialize_block): No longer push marker on nonzero_vars_stack. (dom_opt_finalize_block): No longer call restore_nonzero_vars_to_original_value. (record_equivalences_from_phis): No longer look for nonzero PHI arguments. (cprop_into_successor_phis): No longer propagate nonzero property into PHI arguments. Lose unused argument. Caller updated. (record_equivalences_from_stmt): No longer record nonzero values for SSA_NAMEs. (lookup_avail_expr): No longer use nonzero_vars. * gcc.dg/tree-ssa/vrp24.c: Update expected output. * gcc.dg/tree-ssa/vrp26.c: New test. From-SVN: r111175
2006-02-16stor-layout.c (set_sizetype): Set TYPE_MAX_VALUE properly for sizetype when ↵Jeff Law2-0/+24
sizetype is unsigned. * stor-layout.c (set_sizetype): Set TYPE_MAX_VALUE properly for sizetype when sizetype is unsigned. From-SVN: r111170
2006-02-17Daily bump.GCC Administrator1-1/+1
From-SVN: r111168
2006-02-16re PR target/25603 (Miscompiled FORTRAN program)Denis Nagorny3-5/+49
2006-02-16 Denis Nagorny <denis_nagorny@linux.intel.com> PR rtl-optimization/25603 * reload.c (reg_inc_found_and_valid_p): New. Check REG_INC note. (regno_clobbered_p): Use it. Reusing SETS argument for REG_INC case. * reload1.c (choose_reload_regs): Added call of regno_clobbered_p with new meaning of SETS. From-SVN: r111162
2006-02-16re PR target/20353 (uclibc does not provide C99 math functions)Joseph Myers10-15/+118
gcc: PR target/20353 PR target/24578 PR target/24837 * config/linux.opt: New file. * config/linux.h (CHOOSE_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER, LINUX_DYNAMIC_LINKER): Define. (TARGET_C99_FUNCTIONS): Define depending on TARGET_GLIBC. * config.gcc (*-*-linux*): Define extra_options. (*-*-*uclibc*): Define UCLIBC_DEFAULT. (arm*-*-linux-gnueabi): Change to arm*-*-linux-*eabi. * config/arm/linux-eabi.h (LINUX_TARGET_INTERPRETER): Change to GLIBC_DYNAMIC_LINKER. * config/arm/linux-elf.h (LINUX_TARGET_INTERPRETER): Likewise. (LINUX_TARGET_LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * config/mips/linux.h (GLIBC_DYNAMIC_LINKER): Define. (LINK_SPEC): Use LINUX_DYNAMIC_LINKER. * doc/invoke.texi (GNU/Linux Options): New section. gcc/testsuite: * gcc.dg/builtins-config.h (HAVE_C99_RUNTIME): Don't define if __UCLIBC__ is defined. libstdc++-v3: PR libstdc++/14939 * config/os/uclibc/ctype_base.h, config/os/uclibc/ctype_inline.h, config/os/uclibc/ctype_noninline.h, config/os/uclibc/os_defines.h: New. * acinclude.m4 (GLIBCXX_CONFIGURE): Test whether using uClibc. * configure.host: Use os/uclibc for uClibc. * crossconfig.m4 (*-linux*): Use link tests. Don't hardcode presence of math functions. * configure: Regenerate. From-SVN: r111160
2006-02-16env.c (__gnat_setenv): Use size_t.Eric Botcazou2-4/+10
* env.c (__gnat_setenv): Use size_t. (__gnat_unsetenv): Likewise. (__gnat_clearenv): Likewise. From-SVN: r111155
2006-02-16sparc.md (setjmp): Rewrite.Eric Botcazou2-16/+17
* config/sparc/sparc.md (setjmp): Rewrite. (setjmp_32): Delete. (setjmp_64): Likewise. From-SVN: r111154
2006-02-16re PR fortran/26224 (ICE in C$OMP SINGLE / END SINGLE COPYPRIVATE( ) block)Jakub Jelinek4-0/+21
PR fortran/26224 * parse.c (parse_omp_do, parse_omp_structured_block): Call gfc_commit_symbols and gfc_warning_check. * gfortran.dg/gomp/pr26224.f: New test. From-SVN: r111153
2006-02-16re PR middle-end/26316 (loop-invariant miscompiles openmp.c)Jakub Jelinek2-0/+9
* openmp.c (resolve_omp_clauses): Add a dummy case label to workaround PR middle-end/26316. From-SVN: r111152
2006-02-16tree-ssa-operands.c (access_can_touch_variable): Fix typo in previous change.Daniel Berlin2-1/+6
2006-02-16 Daniel Berlin <dberlin@dberlin.org> * tree-ssa-operands.c (access_can_touch_variable): Fix typo in previous change. From-SVN: r111148
2006-02-16loop-invariant.c (invariant_for_use, [...]): Fail for read-write uses.Zdenek Dvorak2-1/+13
* loop-invariant.c (invariant_for_use, check_dependencies): Fail for read-write uses. From-SVN: r111141