summaryrefslogtreecommitdiff
path: root/gcc
Commit message (Collapse)AuthorAgeFilesLines
* Daily bump.GCC Administrator2007-01-231-1/+1
| | | | From-SVN: r121071
* * config/m68k/m68k.h: Fix comment.Andreas Schwab2007-01-222-2/+6
| | | | From-SVN: r121063
* passes.c (init_optimization_passes): Do not rerun pass_early_warn_uninitialized.Jan Hubicka2007-01-222-8/+13
| | | | | | | * passes.c (init_optimization_passes): Do not rerun pass_early_warn_uninitialized. From-SVN: r121060
* re PR tree-optimization/30038 (Call to sin(x), cos(x) should be transformed ↵Richard Guenther2007-01-226-2/+266
| | | | | | | | | | | | | | | | | | | | | to sincos(x)) 2007-01-22 Richard Guenther <rguenther@suse.de> PR tree-optimization/30038 * tree-ssa-math-opts.c (maybe_record_sincos): New static helper function. (execute_cse_sincos_1): Likewise. (execute_cse_sincos): Likewise. (gate_cse_sincos): Likewise. (pass_cse_sincos): New pass CSEing sin() and cos() calls using the cexpi() canonicalization of sincos(). * tree-pass.h (pass_cse_sincos): Declare. * passes.c (init_optimization_passes): New pass pas_cse_sincos. * gcc.dg/builtins-62.c: New testcase. From-SVN: r121052
* Typo fix.Ben Elliston2007-01-221-1/+1
| | | | From-SVN: r121051
* intrinsic.texi (ACHAR): Added cross-references.Brooks Moses2007-01-212-2/+19
| | | | | | | | | * intrinsic.texi (ACHAR): Added cross-references. (CHAR): Put cross-references in alphabetical order. (IACHAR): Added cross-references. (ICHAR): Added cross-references. From-SVN: r121049
* Daily bump.GCC Administrator2007-01-221-1/+1
| | | | From-SVN: r121045
* re PR rtl-optimization/29329 (internal consistency failure)Eric Botcazou2007-01-214-22/+71
| | | | | | | | | | | | | | | | | | | | | PR rtl-optimization/29329 * combine.c (replaced_rhs_insn): Rename to i2mod. (replaced_rhs_value): Rename to i2mod_new_rhs. (i2mod_old_rhs): New global variable. (combine_instructions): Adjust for above change. Save a copy of the old RHS into i2mod_old_rhs when the contents of a REG_EQUAL note are substituted in the second instruction. (distribute_notes) <REG_DEAD>: Adjust for above change. Do not ditch the note if it pertains to the second eliminated register and this register is mentioned in i2mod_old_rhs. Revert: 2006-09-12 Eric Botcazou <ebotcazou@libertysurf.fr> * combine.c (distribute_notes) <REG_DEAD>: Do not consider SETs past the insn to which the note was originally attached. From-SVN: r121037
* re PR libfortran/30525 ([4.2, 4.1 only] character comparisons with padding)Thomas Koenig2007-01-212-0/+31
| | | | | | | | | | | | | | | 2007-01-21 Thomas Koenig <Thomas.Koenig@online.de> PR libfortran/30525 * intrinsics/string_intrinsics.c(compare_string): Make sure that comparisons are done unsigned. 2007-01-21 Thomas Koenig <Thomas.Koenig@online.de> PR libfortran/30525 * gfortran.dg/char_comparison_1.f: New test. From-SVN: r121035
* ipa-inline.c (inlining_mode): Comment, move up.Jan Hubicka2007-01-212-130/+162
| | | | | | | | | | | | | | | * ipa-inline.c (inlining_mode): Comment, move up. (cgraph_decide_inlining_incrementally): Do not perform inlining itself; fix handling of flattening of self recursive functions. (cgraph_find_cycles): Remove. (cgraph_flatten_node): Remove. (cgraph_decide_inlining): Use incremental inliner to handle flattening. (try_inline): New function. (cgraph_early_inlining): Update call of cgraph_decide_inlining_incrementally. Apply inlining here. (apply_inline): Update call of cgraph_decide_inlining_incrementally. From-SVN: r121034
* re PR bootstrap/30511 (False array bound check causes gcc failed to boostrap)Dirk Mueller2007-01-212-10/+34
| | | | | | | | | | | 2007-01-21 Dirk Mueller <dmueller@suse.de> PR bootstrap/30511 * tree-vrp.c (check_array_bounds): do not warn about ADDR_EXPR's of ARRAY_REF's which are immediately used in binary expressions. From-SVN: r121032
* tree-vectorizer.h (struct _stmt_vec_info): Add new field read_write_dep and ↵Ira Rosen2007-01-216-52/+138
| | | | | | | | | | | | | | | | | | | | macros for its access. * tree-vectorizer.h (struct _stmt_vec_info): Add new field read_write_dep and macros for its access. * tree-vectorizer.c (new_stmt_vec_info): Initialize the new field. * tree-vect-analyze.c (vect_analyze_data_ref_dependence): Remove argument, call vect_check_interleaving for every independent pair of data-refs. Mark loads that access the same memory location as a store in the loop. (vect_check_dependences): Remove. (vect_analyze_data_ref_dependences): Remove vect_check_dependences call, fix the call to vect_analyze_data_ref_dependence. (vect_analyze_data_ref_access): For statements that access the same data-ref, check that they are not stores; for loads, check that there is no store that access the same location. From-SVN: r121026
* re PR objc/30479 (Precompiled headers don't seem to work with GNU ObjC)Andrew Pinski2007-01-207-3/+88
| | | | | | | | | | | | | | | | | | | | | | | 2007-01-20 Andrew Pinski <pinskia@gmail.com> PR objc/30479 * objc-act.c (hash_interface): Use IDENTIFIER_HASH_VALUE instead of htab_hash_pointer. (lookup_interface): Likewise. (add_class): Likewise. 2007-01-20 Andrew Pinski <pinskia@gmail.com> PR objc/30479 * objc.dg/pch: New directory. * objc.dg/pch/pch.exp: New file. * objc.dg/pch/interface-1.m: New test. * objc.dg/pch/interface-1.hs: New include file. * lib/objc.exp (objc_target_compile): Add "-x objective-c-header" in front of the sources if this is a precompiled header being compiled. From-SVN: r121024
* invoke.texi (-fdump-rtl-combine): Fix under/overfull hbox.Roger Sayle2007-01-212-18/+31
| | | | | | | | | | | | | | * doc/invoke.texi (-fdump-rtl-combine): Fix under/overfull hbox. (-fdump-rtl-stack): Likewise. (-fno-signed-zeros): Use @minus{} for a minus sign. Correct typo. (-mcheck-zero-division, -mcpu): Fix under/overfull hbox. (-mpt-fixed): Use @minus{} for minus sign. (Using Precompiled Headers): Fix under/overfull hbox. Co-Authored-By: Joseph Myers <joseph@codesourcery.com> From-SVN: r121023
* tree-flow.h (struct stmt_ann_d): Move references_memory to proper place ↵Jan Hubicka2007-01-212-4/+9
| | | | | | | | | within annotation. * tree-flow.h (struct stmt_ann_d): Move references_memory to proper place within annotation. From-SVN: r121022
* intrinsic.texi: Edited all "Syntax" examples to a consistent form.Brooks Moses2007-01-202-147/+145
| | | | | | | | | * intrinsic.texi: Edited all "Syntax" examples to a consistent form. (MAXVAL): Corrected description of result characteristics. (MINVAL): Same. (UMASK): Added documentation. From-SVN: r121020
* Daily bump.GCC Administrator2007-01-211-1/+1
| | | | From-SVN: r121018
* openmp.c, [...]: Next installment in the massive whitespace patch.Steven G. Kargl2007-01-2012-1714/+1623
| | | | | | | | * openmp.c, matchexp.c, module.c, scanner.c, resolve.c, st.c, parse.c, primary.c, options.c, misc.c, simplify.c: Next installment in the massive whitespace patch. From-SVN: r121012
* module.c (mio_array_ref): The dimen_type fields of an array ref are an ↵Roger Sayle2007-01-202-2/+25
| | | | | | | | | | enumerated type and can't be... * module.c (mio_array_ref): The dimen_type fields of an array ref are an enumerated type and can't be read/written directly with a call to mio_integer. Instead loop over and cast each element. From-SVN: r121011
* dependency.c (gfc_full_array_ref_p): Check that ref->next is NULL, i.e.Roger Sayle2007-01-208-22/+137
| | | | | | | | | | | | | | | | | | | | | | | | * dependency.c (gfc_full_array_ref_p): Check that ref->next is NULL, i.e. that the ARRAY_REF doesn't mention components. * trans-array.c (gfc_constant_array_constructor_p): Export external function renamed from constant_array_constructor_p. (gfc_build_constant_array_constructor): Export. (gfc_trans_array_constructor): Update call to the renamed function constant_array_constructor_p. * trans-array.h (gfc_constant_array_constructor_p): Prototype here. (gfc_build_constant_array_constructor): Likewise. * trans-expr.c (gfc_build_memcpy_call): New helper function split out from gfc_trans_array_copy. (gfc_trans_array_copy): Use gfc_build_memcpy_call. (gfc_trans_array_constructor_copy): New function to optimize assigning an entire array from a constant array constructor. (gfc_trans_assignment): Call gfc_trans_array_constructor_copy when appropriate. * gfortran.dg/array_memcpy_3.f90: New test case. * gfortran.dg/vect/vect-5.f90: Update vectorized loop count. From-SVN: r121010
* trans-intrinsic.c (gfc_conv_intrinsic_sign): New branchless implementation ↵Roger Sayle2007-01-205-14/+120
| | | | | | | | | | | | | | | | | for the SIGN intrinsic with integral operands. * trans-intrinsic.c (gfc_conv_intrinsic_sign): New branchless implementation for the SIGN intrinsic with integral operands. (gfc_conv_intrinsic_minmax): Fix whitespace. * gfortran.dg/intrinsic_sign_1.f90: New test case. * gfortran.dg/intrinsic_sign_2.f90: Likewise. Co-Authored-By: Brooks Moses <brooks.moses@codesourcery.com> Co-Authored-By: Francois-Xavier Coudert <coudert@clipper.ens.fr> From-SVN: r121009
* gfortran.h (gfc_options_t): Add flag_allow_leading_underscore.Francois-Xavier Coudert2007-01-207-6/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gfortran.h (gfc_options_t): Add flag_allow_leading_underscore. * lang.opt: Add -fallow-leading-underscore. * match.c (gfc_match_name): Allow leading underscore in symbol name if -fallow-leading-underscore is used. * symbol.c (gfc_get_default_type): Add special case for symbol names beginning with an underscore. * trans-decl.c (gfc_get_extern_function_decl, gfc_build_intrinsic_function_decls): Add _gfortran prefix to library symbols selected_int_kind, selected_real_kind and all specifics. * options.c (gfc_init_options, gfc_handle_option): Handle the new -fallow-leading-underscore option. * m4/misc_specifics.m4: Add _gfortran prefix to specific names. * m4/specific2.m4: Likewise. * m4/specific.m4: Likewise. * intrinsics/f2c_specifics.F90: Likewise. * intrinsics/selected_int_kind.f90: Add _gfortran prefix. * intrinsics/selected_real_kind.f90: Likewise. * intrinsics/dprod_r8.f90: Likewise. * Makefile.am: Add -fallow-leading-underscore to the gfor_specific_src files, as well as selected_real_kind.F90 and selected_int_kind.F90 * Makefile.in: Regenerate. * generated/_sqrt_c8.F90: Regenerate. * generated/_sign_r16.F90: Regenerate. * generated/_log_c16.F90: Regenerate. * generated/_sin_c10.F90: Regenerate. * generated/_tanh_r4.F90: Regenerate. * generated/_tanh_r8.F90: Regenerate. * generated/_log10_r10.F90: Regenerate. * generated/_aimag_c4.F90: Regenerate. * generated/_sign_r4.F90: Regenerate. * generated/_aimag_c8.F90: Regenerate. * generated/_sign_r8.F90: Regenerate. * generated/_mod_i4.F90: Regenerate. * generated/_cos_r16.F90: Regenerate. * generated/_aint_r10.F90: Regenerate. * generated/_mod_i8.F90: Regenerate. * generated/_abs_i16.F90: Regenerate. * generated/_sqrt_c10.F90: Regenerate. * generated/_atan2_r4.F90: Regenerate. * generated/_cos_c4.F90: Regenerate. * generated/_atan_r16.F90: Regenerate. * generated/_tanh_r10.F90: Regenerate. * generated/_atan2_r8.F90: Regenerate. * generated/_cos_c8.F90: Regenerate. * generated/_exp_r4.F90: Regenerate. * generated/_log_r10.F90: Regenerate. * generated/_exp_r8.F90: Regenerate. * generated/_abs_r4.F90: Regenerate. * generated/_abs_r8.F90: Regenerate. * generated/_sin_r16.F90: Regenerate. * generated/_tan_r4.F90: Regenerate. * generated/_tan_r8.F90: Regenerate. * generated/_sign_i4.F90: Regenerate. * generated/_sign_i8.F90: Regenerate. * generated/_exp_c16.F90: Regenerate. * generated/_sqrt_r16.F90: Regenerate. * generated/_conjg_c4.F90: Regenerate. * generated/_conjg_c8.F90: Regenerate. * generated/_dim_r16.F90: Regenerate. * generated/_mod_r10.F90: Regenerate. * generated/_abs_c10.F90: Regenerate. * generated/_conjg_c16.F90: Regenerate. * generated/_tan_r16.F90: Regenerate. * generated/_asinh_r10.F90: Regenerate. * generated/_abs_i4.F90: Regenerate. * generated/_abs_i8.F90: Regenerate. * generated/_acos_r10.F90: Regenerate. * generated/_exp_r10.F90: Regenerate. * generated/_acosh_r16.F90: Regenerate. * generated/_atan2_r16.F90: Regenerate. * generated/_cos_c16.F90: Regenerate. * generated/_mod_i16.F90: Regenerate. * generated/_asin_r4.F90: Regenerate. * generated/_anint_r16.F90: Regenerate. * generated/_asin_r8.F90: Regenerate. * generated/_aimag_c10.F90: Regenerate. * generated/_exp_c4.F90: Regenerate. * generated/_sinh_r10.F90: Regenerate. * generated/_exp_c8.F90: Regenerate. * generated/_log10_r4.F90: Regenerate. * generated/_log10_r8.F90: Regenerate. * generated/_abs_c4.F90: Regenerate. * generated/_abs_r16.F90: Regenerate. * generated/_abs_c8.F90: Regenerate. * generated/_asin_r10.F90: Regenerate. * generated/_sign_r10.F90: Regenerate. * generated/_atanh_r16.F90: Regenerate. * generated/_log_c10.F90: Regenerate. * generated/_cosh_r16.F90: Regenerate. * generated/_sin_c16.F90: Regenerate. * generated/_cos_r10.F90: Regenerate. * generated/_log10_r16.F90: Regenerate. * generated/_aint_r16.F90: Regenerate. * generated/_acos_r4.F90: Regenerate. * generated/_acos_r8.F90: Regenerate. * generated/_sqrt_c16.F90: Regenerate. * generated/_acosh_r4.F90: Regenerate. * generated/_atan_r10.F90: Regenerate. * generated/_acosh_r8.F90: Regenerate. * generated/_sign_i16.F90: Regenerate. * generated/_tanh_r16.F90: Regenerate. * generated/_log_r4.F90: Regenerate. * generated/_log_r8.F90: Regenerate. * generated/_sin_r4.F90: Regenerate. * generated/_sin_r8.F90: Regenerate. * generated/_log_r16.F90: Regenerate. * generated/_sin_r10.F90: Regenerate. * generated/_sqrt_r4.F90: Regenerate. * generated/_exp_c10.F90: Regenerate. * generated/_sqrt_r8.F90: Regenerate. * generated/_asinh_r4.F90: Regenerate. * generated/_sqrt_r10.F90: Regenerate. * generated/_asinh_r8.F90: Regenerate. * generated/_dim_r4.F90: Regenerate. * generated/_dim_r8.F90: Regenerate. * generated/_dim_r10.F90: Regenerate. * generated/_cosh_r4.F90: Regenerate. * generated/_conjg_c10.F90: Regenerate. * generated/_tan_r10.F90: Regenerate. * generated/_cosh_r8.F90: Regenerate. * generated/_mod_r16.F90: Regenerate. * generated/_abs_c16.F90: Regenerate. * generated/_cos_r4.F90: Regenerate. * generated/_asinh_r16.F90: Regenerate. * generated/_cos_r8.F90: Regenerate. * generated/_atanh_r4.F90: Regenerate. * generated/_atanh_r8.F90: Regenerate. * generated/_acos_r16.F90: Regenerate. * generated/_anint_r4.F90: Regenerate. * generated/_acosh_r10.F90: Regenerate. * generated/_anint_r8.F90: Regenerate. * generated/_exp_r16.F90: Regenerate. * generated/_mod_r4.F90: Regenerate. * generated/_cos_c10.F90: Regenerate. * generated/_atan2_r10.F90: Regenerate. * generated/_dim_i16.F90: Regenerate. * generated/_mod_r8.F90: Regenerate. * generated/_anint_r10.F90: Regenerate. * generated/_aint_r4.F90: Regenerate. * generated/_aint_r8.F90: Regenerate. * generated/_dim_i4.F90: Regenerate. * generated/_sinh_r4.F90: Regenerate. * generated/_log_c4.F90: Regenerate. * generated/_dim_i8.F90: Regenerate. * generated/_sinh_r8.F90: Regenerate. * generated/_log_c8.F90: Regenerate. * generated/_sin_c4.F90: Regenerate. * generated/_sin_c8.F90: Regenerate. * generated/misc_specifics.F90: Regenerate. * generated/_abs_r10.F90: Regenerate. * generated/_aimag_c16.F90: Regenerate. * generated/_atan_r4.F90: Regenerate. * generated/_sinh_r16.F90: Regenerate. * generated/_atan_r8.F90: Regenerate. * generated/_atanh_r10.F90: Regenerate. * generated/_cosh_r10.F90: Regenerate. * generated/_sqrt_c4.F90: Regenerate. * generated/_asin_r16.F90: Regenerate. From-SVN: r121007
* gcc/Changelog typosBasile Starynkevitch2007-01-201-8/+7
| | | | From-SVN: r121006
* pa.c (output_move_double): Change array size of xoperands to 4.John David Anglin2007-01-202-4/+5
| | | | | | * pa.c (output_move_double): Change array size of xoperands to 4. From-SVN: r121002
* re PR fortran/30446 ([4.1 only] -J option doesn't add path to search list)Francois-Xavier Coudert2007-01-202-0/+8
| | | | | | | | PR fortran/30446 * options.c (gfc_handle_module_path_options): Path used in -J option is now added to the module search path. From-SVN: r121000
* tree-tailcall.c (adjust_return_value): Do not use RESULT_DECL as temporary.Jan Hubicka2007-01-202-7/+11
| | | | | | | * tree-tailcall.c (adjust_return_value): Do not use RESULT_DECL as temporary. From-SVN: r120999
* re PR fortran/30223 (Fortran frontend does not know about cbrt, cexpi and ↵Richard Guenther2007-01-202-4/+72
| | | | | | | | | | | | | sincos) 2007-01-20 Richard Guenther <rguenther@suse.de> PR fortran/30223 * f95-lang.c (gfc_init_builtin_functions): Provide cbrt and cexpi builtins if we have TARGET_C99_FUNCTIONS. Provide sincos builtins if the target has sincos. From-SVN: r120998
* Cast both sides of the conditional expression.Ian Lance Taylor2007-01-201-1/+3
| | | | | | | Cast both sides of the conditional expression. Still covered by same ChangeLog entry--nothing was checked in since last change. From-SVN: r120997
* expmed.c (expand_divmod): Cast constant to unsigned HOST_WIDE_INT before ↵Ian Lance Taylor2007-01-202-2/+9
| | | | | | | | | negating. * expmed.c (expand_divmod) [TRUNC_MOD_EXPR, TRUNC_DIV_EXPR]: Cast constant to unsigned HOST_WIDE_INT before negating. From-SVN: r120995
* tree-ssa-operands.h (struct vuse_vec_d): Change num_vuse field to unsigned.Ian Lance Taylor2007-01-203-19/+39
| | | | | | | | | | | | | | | | | | | | | | * tree-ssa-operands.h (struct vuse_vec_d): Change num_vuse field to unsigned. (VUSE_VECT_ELEMENT) [ENABLE_CHECKING]: Use unsigned comparison. (VUSE_ELEMENT_PTR) [ENABLE_CHECKING]: Likewise. (SET_VUSE_VECT_ELEMENT) [ENABLE_CHECKING]: Likewise. (SET_VUSE_ELEMENT_VAR) [ENABLE_CHECKING]: Likewise. (SET_VUSE_ELEMENT_PTR) [ENABLE_CHECKING]: Likewise. (realloc_vdef, realloc_vuse): Change second parameter to unsigned. (ssa_operand_iterator_d): Change vuse_index and mayuse_index fields to unsigned. * tree-ssa-operands.c (realloc_vop): Change num_elem parameter to unsigned. Change x and lim locals to unsigned. (realloc_vdef, realloc_vuse): Change num_elem parameter to unsigned. (finalize_ssa_vuse_ops): Change old_i local to unsigned. (copy_virtual_operands): Change i and n locals to unsigned. From-SVN: r120994
* re PR middle-end/29335 (transcendental functions with constant arguments ↵Kaveh R. Ghazi2007-01-204-0/+26
| | | | | | | | | | | | should be resolved at compile-time) PR middle-end/29335 * builtins.c (fold_builtin_1): Handle builtin fdim. testsuite: * gcc.dg/torture/builtin-math-3.c: Test fdim. From-SVN: r120993
* decl2.c (start_objects, [...]): Do not make the functions uninlinable.Jan Hubicka2007-01-202-12/+6
| | | | | | | * decl2.c (start_objects, start_static_storage_duration_function): Do not make the functions uninlinable. From-SVN: r120992
* Daily bump.GCC Administrator2007-01-201-1/+1
| | | | From-SVN: r120990
* darwin-ld-6.c: Remove, tests a linker flag that is going away.Mike Stump2007-01-202-11/+5
| | | | | | | * gcc.dg/darwin-ld-6.c: Remove, tests a linker flag that is going away. From-SVN: r120984
* tree-ssa.c (init_tree_ssa): Do not call init_alias_heapvars.Jan Hubicka2007-01-203-3/+13
| | | | | | | | | | * tree-ssa.c (init_tree_ssa): Do not call init_alias_heapvars. * tree-ssa-structalias.c (compute_points_to_sets): Do call init_alias_heapvars. (init_alias_heapvars): Initialize only when not already initialized. (delete_alias_heapvars): Set heapvar_for_stmt to NULL. From-SVN: r120983
* intrinsic.texi (MATMUL): Corrected a typo.Brooks Moses2007-01-192-3/+9
| | | | | | | | * intrinsic.texi (MATMUL): Corrected a typo. (MAX): Separated @var arguments. (MIN): Separated @var arguments. From-SVN: r120982
* intrinsic.texi: general whitespace cleanup.Brooks Moses2007-01-192-256/+689
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * intrinsic.texi: general whitespace cleanup. (menu): Added TIME8, removed UNMASK. (AINT): Clarified argument requirement. (ANINT): Clarified argument requirement. (CEILING): Clarified argument requirement. (CHAR): Clarified argument requirement. (CMPLX): Clarified argument requirement. (DCMPLX): Clarified argument requirement. (FGET): Line rewrapping. (FLOOR): Clarified argument requirement. (GMTIME): Added documentation. (IAND): Added cross-reference. (IBCLR): Added cross-reference. (IBSET): Added cross-reference. (IEOR): Added cross-reference. (INT): Collapsed examples, clarified argument requirement. (IOR): Added cross-references. (LEN_TRIM): Corrected result kind. (LINK): Added cross-reference. (LLT): Removed "documentation pending". (LOGICAL): Added documentation. (LSHIFT): Added documentation. (LTIME): Added documentation. (MATMUL): Added documentation. (MAX): Added documentation. (MAXLOC): Added documentation. (MAXVAL): Added documentation. (MERGE): Added documentation. (MIN): Added documentation. (MINLOC): Added documentation. (MINVAL): Added documentation. (MVBITS): Moved to correct place, added documentation. (NOT): Added documentation. (PERROR): Added documentation. (RAN): Moved to correct place, added documentation. (REAL): Clarified argument requirement. (RENAME): Added documentation. (RSHIFT): Clarified argument requirement. (SIGN): Corrected table specification. (SYMLNK): Added documentation. (SYSTEM): Added documentation. (TIME): Added documentation. (TIME8): Added section and documentation. (UNMASK): Removed erroneous section. From-SVN: r120980
* common.opt (fsigned-zeros): New command line option.Roger Sayle2007-01-197-8/+42
| | | | | | | | | | | | | | | | | * common.opt (fsigned-zeros): New command line option. * flags.h (HONOR_SIGNED_ZEROS): Control via flag_signed_zeros instead of flag_unsafe_math_optimizations. * opts.c (set_fast_math_flags): The -ffast-math command line option implies -fno-signed-zeros. (fast_math_flags_set_p): Likewise. * doc/invoke.texi: Document new -fno-signed-zeros option, and update the documentation of -ffast-math appropriately. Wrap long lines. * gcc.dg/pr30172-1.c: Specify the -fno-signed-zeros command line option instead of -funsafe-math-optimizations. From-SVN: r120978
* system.h (ASM_MAKE_LABEL_LINKONCE): Poison.Steve Ellcey2007-01-193-4/+7
| | | | | | | * system.h (ASM_MAKE_LABEL_LINKONCE): Poison. * varasm.c (globalize_decl): Remove ASM_MAKE_LABEL_LINKONCE ifdef. From-SVN: r120976
* Patch by Tomas Bily <tbily@suse.cz>Tomas Bily2007-01-1917-13/+635
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Patch by Tomas Bily <tbily@suse.cz> * cgraphunit.c (cgraph_finalize_function): Updating of pid * tree-profile.c: (tree_init_ic_make_global_vars): New function (tree_init_edge_profiler): call of tree_init_ic_make_global_vars (tree_gen_ic_profiler): New function (tree_gen_ic_func_profiler): New function (tree_profiling): Added calling of tree_gen_ic_func_profiler (tree_profile_hooks): Added hook for indirec/virtual calls * value-prof.c (tree_find_values_to_profile): New case for indirect calls (tree_values_to_profile): Call for determining indirect/virtual counters (tree_indirect_call_to_profile): New function (tree_ic_transform): New function (tree_ic): New function (find_func_by_pid): New function (init_pid_map): New function (tree_value_profile_transformations): Added check for indirect/virtual call transformation * value-prof.h (enum hist_type): New counter type for indirect/virtual calls (profile_hooks): Added new hook for profiling indirect/virtual calls * profile.c (instrument_values): New case for indirect/virtual call added * gcov-io.h (GCOV_LAST_VALUE_COUNTER): Changed to 6 (GCOV_COUNTER_V_INDIR): New counter type (GCOV_COUNTER_NAMES): New name of counter "indirect" added (GCOV_MERGE_FUNCTIONS): New merge function for indirect/virtual call added * cgraph.c: Definition of cgraph_max_pid (cgraph_create_node): Default init of pid attribute * cgraph.h: Declaration of cgraph_max_pid (struct cgraph_node): Added pid attribute * libgcov.c (__gcov_indirect_call_profiler): New function (__gcov_one_value_profiler_body): New function (__gcov_one_value_profiler): Body was moved to __gcov_one_value_profiler_body and calls it gcc.dg/tree-prof/indir-call-prof.c: New. g++.dg/dg.exp: Add tree-prof subdirectory. g++.dg/tree-prof/indir-call-prof.C: New. g++.dg/tree-prof/tree-prof.exp: New. From-SVN: r120975
* gty.texi (Options): Document the mark_hook option to GTY.Basile Starynkevitch2007-01-191-0/+10
| | | | | | | | | | | | | | 2007-01-19 Basile Starynkevitch <basile@starynkevitch.net> * doc/gty.texi (Options): Document the mark_hook option to GTY. * gcc/gengtype.c (write_types_data, write_func_for_structure, write_types, ggc_wtd, pch_wtd): Added skip_hooks to write_types_data, ggc_wtd, pch_wtd for mark_hook. (walk_type, write_func_for_structure): Generate the mark_hook if needed. From-SVN: r120974
* gty.texi (Options): Document the mark_hook option to GTY.Basile Starynkevitch2007-01-192-4/+32
| | | | | | | | | | | | | | | | | 2007-01-19 Basile Starynkevitch <basile@starynkevitch.net> * gcc/doc/gty.texi (Options): Document the mark_hook option to GTY. * gcc/gengtype.c (write_types_data, write_func_for_structure, write_types, ggc_wtd, pch_wtd): Added skip_hooks to write_types_data, ggc_wtd, pch_wtd for mark_hook. (walk_type, write_func_for_structure): Generate the mark_hook if needed. * MAINTAINERS: added myself (Basile Starynkevitch) to write after approval. From-SVN: r120973
* ipa-inline.c (cgraph_decide_inlining_incrementally): Instead of 'early' ↵Jan Hubicka2007-01-192-16/+42
| | | | | | | | | | | argument take inlining mode argument specifying whether to... * ipa-inline.c (cgraph_decide_inlining_incrementally): Instead of 'early' argument take inlining mode argument specifying whether to inline for size/speeed or all functions; add support for flattening; improve dumpting. (cgraph_early_inlining): Update call of decide_inlining_incrementally. From-SVN: r120970
* re PR c++/17947 (bad warning with implicit conversion and ↵Manuel López-Ibáñez2007-01-196-16/+42
| | | | | | | | | | | | | | | | | __attribute__((deprecated))) 2007-01-19 Manuel Lopez-Ibanez <manu@gcc.gnu.org> PR c++/17947 * toplev.c (warn_deprecated_use): Use %qD instead of %qs to print the name of the declared identifier. testsuite/ * g++.dg/warn/deprecated.C: Update warning output. * g++.dg/warn/deprecated-2.C: Likewise. * g++.dg/warn/deprecated-3.C: New. From-SVN: r120969
* i386.h (CONDITIONAL_REGISTER_USAGE): Store result of PIC_OFFSET_TABLE_REGNUM ↵Dirk Mueller2007-01-192-3/+11
| | | | | | | | | | | | in temporary variable to avoid... 2007-01-19 Dirk Mueller <dmueller@suse.de> * config/i386.h (CONDITIONAL_REGISTER_USAGE): Store result of PIC_OFFSET_TABLE_REGNUM in temporary variable to avoid duplicate evaluation. From-SVN: r120967
* i386.md (acos<mode>2): Rename from acossf2 and acosdf2.Uros Bizjak2007-01-192-414/+153
| | | | | | | | | | | | | | | | | | | | | | | * config/i386/i386.md (acos<mode>2): Rename from acossf2 and acosdf2. Macroize expander using X87MODEF12 mode macro. Extend operand 1 to XFMode, use acosxf2 and truncate result to requested mode. Use SSE_FLOAT_MODE_P to disable patterns for SSE math. (asin<mode>2): Similarly, with asin expanders. (*fscalexf4_i387): Rename from *fscalexf4. (expNcorexf3): New expander. (expxf2, exp10xf2, exp2xf2): Use expNcorexf3 expander. (exp<mode>2): Rename from expsf2 and expdf2. Macroize expander using X87MODEF12 mode macro. Extend operand 1 to XFMode, use expxf2 and truncate result to requested mode. Use SSE_FLOAT_MODE_P to disable patterns for SSE math. (exp10<mode>2): Similarly, with exp10 expanders. (exp2<mode>2): Similarly, with exp2 expanders. (expm1<mode>2): Similarly, with expm1 expanders. (ldexp<mode>3): Similarly, with ldexp expanders. (log<mode>2, log10<mode>2, log2<mode>2, log1p<mode>2, logb<mode>2): Use gen_truncxf<mode>2_i387_noop to truncate result. From-SVN: r120966
* m68k.h (PREFERRED_STACK_BOUNDARY): Define to 32 for ColdFire targets.Richard Sandiford2007-01-192-0/+7
| | | | | | | | gcc/ * config/m68k/m68k.h (PREFERRED_STACK_BOUNDARY): Define to 32 for ColdFire targets. From-SVN: r120965
* 200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford ↵Nathan Sidwell2007-01-196-2/+72
| | | | | | | | | | | | | | | | | | | | | | | | <richard@codesourcery.com> gcc/ 200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> Richard Sandiford <richard@codesourcery.com> * config/m68k/m68k.h (M68K_STATIC_CHAIN_REG_NAME): New macro. (INITIALIZE_TRAMPOLINE): Use STATIC_CHAIN_REGNUM. (__transfer_from_trampoline): Use M68K_STATIC_CHAIN_REG_NAME. * config/m68k/m68kelf.h (STATIC_CHAIN_REGNUM): Override. (M68K_STATIC_CHAIN_REG_NAME): Likewise. * config/m68k/netbsd-elf.h (M68K_STATIC_CHAIN_REG_NAME): Likewise. gcc/testsuite/ 200x-xx-xx Nathan Sidwell <nathan@codesourcery.com> * gcc.c-torture/execute/nestfunc-7.c: New. Co-Authored-By: Richard Sandiford <richard@codesourcery.com> From-SVN: r120964
* m68k.md (adddi_dilshr32): Rename to...Richard Sandiford2007-01-192-22/+32
| | | | | | | | | | | gcc/ * config/m68k/m68k.md (adddi_dilshr32): Rename to... (*adddi_dilshr32): ...this. Fix formatting. Remove commented-out non-canonical pattern. Restrict to !TARGET_COLDFIRE. (*adddi_dilshr32_cf): New pattern. (adddi3, subdi3): Remove first alternatives. From-SVN: r120963
* m68k.c (notice_update_cc): If an SFmode move is implemented using move.l...Richard Sandiford2007-01-192-2/+14
| | | | | | | | | gcc/ * config/m68k/m68k.c (notice_update_cc): If an SFmode move is implemented using move.l, do not use its cc result for floating-point comparisons. From-SVN: r120962