Commit Graph

77037 Commits

Author SHA1 Message Date
Richard Guenther
4bab2b2301 i386.exp: Use glob, not find to collect tests.
2006-10-26  Richard Guenther  <rguenther@suse.de>

	* gcc.target/i386/i386.exp: Use glob, not find to collect
	tests.  Avoids recursing into subdirectories.
	* gcc.target/i386/math-torture/math-torture.exp: Torture
	for interesting ia32 math options.
	* gcc.target.i386/math-torture/lrint.c: New testcase.

From-SVN: r118065
2006-10-26 08:23:19 +00:00
Jerry DeLisle
9a3da65a38 re PR fortran/29563 (Internal read loses data.)
2006-10-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/29563
	* gfortran.dg/arrayio_9.f90: Update test.
	* gfortran.dg/arrayio_19.f90: New test.

From-SVN: r118064
2006-10-26 07:19:49 +00:00
Jerry DeLisle
bbd6c8aa76 re PR fortran/29563 (Internal read loses data.)
2006-10-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/29563
	* io/list_read.c (next_char): Fix an error in previous commit.

From-SVN: r118063
2006-10-26 07:17:21 +00:00
Andreas Krebbel
20f04e65e3 s390.c (s390_init_frame_layout): Check positive frame_size.
2006-10-26  Andreas Krebbel  <krebbel1@de.ibm.com>

	* config/s390/s390.c (s390_init_frame_layout): Check positive
	frame_size.

2006-10-26  Andreas Krebbel  <krebbel1@de.ibm.com>

	* gcc.dg/20061026.c: New testcase.

From-SVN: r118062
2006-10-26 06:58:29 +00:00
Jerry DeLisle
ac2de15d44 re PR fortran/29563 (Internal read loses data.)
2006-10-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/29563
	* gfortran.dg/arrayio_9.f90: New test.

From-SVN: r118060
2006-10-26 04:41:55 +00:00
Jerry DeLisle
807fb853ee re PR fortran/29563 (Internal read loses data.)
2006-10-25  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/29563
	* io/io.h (st_parameter_dt): Add new flag at_eof.
	* io/list_read.c (next_char): Set flag when EOF and return '\n' to
	signal EOR.  Check flag on next call and jump out.
	* io/unit.c (get_internal_unit): Initialize new flag.

From-SVN: r118059
2006-10-26 04:35:45 +00:00
Danny Smith
7445de0a7b pex-win32.c (argv_to_cmdline): Replace xmalloc with XNEWVEC.
(find_executable): Likewise.
	(win32_spawn): Cast alloca return to (char**).
	Replace malloc with XNEWVEC.
	bcopy.c (bcopy): Add explict casts in assignments.

From-SVN: r118058
2006-10-26 03:16:11 +00:00
Ben Elliston
0da67a3234 gimplify.c (get_name): Remove extraneous break.
* gimplify.c (get_name): Remove extraneous break.
	(gimplify_omp_for): Initialise ret with GS_OK.

From-SVN: r118057
2006-10-26 11:56:19 +10:00
GCC Administrator
1fdeec2c59 Daily bump.
From-SVN: r118054
2006-10-26 00:17:36 +00:00
Ben Elliston
377d876f81 strlen.c: Do not use strcpy.
* gcc.c-torture/execute/builtins/strlen.c: Do not use strcpy.
	Copy the strings manually, as strcpy may call strlen.

From-SVN: r118045
2006-10-26 08:58:27 +10:00
Steve Ellcey
6db63df90f hpux.h: Define _INCLUDE__STDC_A1_SOURCE in C++.
* config/ia64/hpux.h: Define _INCLUDE__STDC_A1_SOURCE in C++.
	Add unix98.o to link line.

From-SVN: r118043
2006-10-25 21:35:25 +00:00
Kaveh R. Ghazi
cf1491f0e5 re PR middle-end/29335 (transcendental functions with constant arguments should be resolved at compile-time)
PR middle-end/29335
	* builtins.c (fold_builtin_cbrt, fold_builtin_logarithm):
	Calculate compile-time constants using MPFR.
	(fold_builtin_1): Likewise handle BUILT_IN_ERF, BUILT_IN_ERFC,
	BUILT_IN_EXPM1 and BUILT_IN_LOG1P.
	
testsuite:
	* gcc.dg/torture/builtin-math-2.c (TESTIT): Use new helper macro.
	Add checks for log, log2, log10 and log1p.

	* gcc.dg/torture/builtin-math-3.c: Add checks for -0.0 everywhere
	we already test 0.0.  Add checks for expm1, log, log2, log10,
	log1p, cbrt, erf and erfc.

From-SVN: r118042
2006-10-25 20:44:09 +00:00
Andreas Tobler
4f0abdc91b natevents.cc (do_callback_arg_tests): Replace formatting modifiers %p with %#llx and cast the arguments.
2006-10-25  Andreas Tobler  <a.tobler@schweiz.org>

	* testsuite/libjava.jvmti/natevents.cc (do_callback_arg_tests): Replace
	formatting modifiers %p with %#llx and cast the arguments.

From-SVN: r118040
2006-10-25 22:18:39 +02:00
Bob Wilson
76f6e118d8 * config/xtensa/lib2funcs.S: Use C-style comments.
From-SVN: r118039
2006-10-25 17:03:02 +00:00
Steve Ellcey
29f7d34e1f * gcc.dg/pthread-init-2.c: Define _POSIX_C_SOURCE on ia64 HP-UX.
From-SVN: r118035
2006-10-25 16:32:30 +00:00
Nathan Froyd
1d2c2b9681 dwarf2out.c (gen_compile_unit_die): Use IS_ABSOLUTE_PATH.
* dwarf2out.c (gen_compile_unit_die): Use IS_ABSOLUTE_PATH.
        (file_table_relative_p): Likewise.
        (dwarf2out_finish): Likewise.
        (file_name_acquire): Use DIR_SEPARATOR and DIR_SEPARATOR_2.

From-SVN: r118033
2006-10-25 13:31:21 +00:00
Daniel Berlin
80ba94327e tree-ssa-structalias.c (intra_create_variable_infos): Don't recreate nonlocal_all if it already exists.
2006-10-25  Daniel Berlin  <dberlin@dberlin.org>

	* tree-ssa-structalias.c (intra_create_variable_infos):
	  Don't recreate nonlocal_all if it already exists.

From-SVN: r118031
2006-10-25 13:26:55 +00:00
Richard Guenther
bb7f04236c optabs.h (enum optab_index): Remove OTI_lrint.
2006-10-25  Richard Guenther  <rguenther@suse.de>

	* optabs.h (enum optab_index): Remove OTI_lrint.
	(enum convert_optab_index): Add COI_lrint.
	(lrint_optab): Adjust.
	(expand_sfix_optab): Declare.
	* optabs.c (expand_sfix_optab): New function.
	(init_optabs): Init lrint_optab as conversion optab.
	* genopinit.c (lrint_optab): Change to a conversion optab.
	* builtins.c (expand_builtin_int_roundingfn_2): Adjust to
	expansion via conversion optab.
	* config/i386/i386.md (*fistdi2_1): Remove
	flag_unsafe_math_optimizations guard.
	(fistdi2, fistdi2_with_temp, *fist<mode>2_1, fist<mode>2,
	fist<mode>2_with_temp): Likewise.
	(lrint<mode>2): Split into...
	(lrintxf<mode>2): ... x87 part
	(lrint<mode>di2, lrint<mode>si2): ... and SSE parts.
	* config/i386/sse.md (sse_cvtss2si_2, sse_cvtss2_siq_2,
	sse2_cvtsd2si_2, sse2_cvtsd2siq_2): New insns for
	UNSPEC_FIX_NOTRUNC matching non-vector float modes.
	* doc/md.texi (lrintMN2): Document.

From-SVN: r118029
2006-10-25 13:01:14 +00:00
Uros Bizjak
ef984648a1 re PR target/28909 (Missed optimization with x86 sync builtins)
PR target/28909
        * config/i386/sync.md ("sync_add<mode>", "sync_sub<mode>"):
        Use inc and dec instructions for TARGET_USE_INCDEC.
        ("*sync_compare_and_swap<mode>"): Fix -masm=intel template.
        ("sync_double_compare_and_swap<mode>"): Likewise.
        ("*sync_double_compare_and_swapdi_pic"): Likewise.
        ("*sync_compare_and_swap_cc<mode>"): Likewise.
        ("sync_double_compare_and_swap_cc<mode>"): Likewise.
        ("*sync_double_compare_and_swap_ccdi_pic"): Likewise.
        ("sync_old_add<mode>"): Likewise.
        ("sync_lock_test_and_set<mode>"): Likewise.
        ("sync_lock_test_and_set<mode>"): Likewise.
        ("sync_add<mode>"): Likewise.
        ("sync_sub<mode>"): Likewise.
        ("sync_ior<mode>"): Likewise.
        ("sync_and<mode>"): Likewise.
        ("sync_xor<mode>"): Likewise.

From-SVN: r118028
2006-10-25 12:14:41 +02:00
Chen Liqin
b4364fa2a8 MAINTAINERS: Move myself to Write After Approval section.
* MAINTAINERS: Move myself to Write After Approval section.

From-SVN: r118027
2006-10-25 08:53:49 +00:00
Uros Bizjak
17b982699f optabs.h (enum optab_index): Rename OTI_drem to OTI_remainder.
* optabs.h (enum optab_index): Rename OTI_drem to OTI_remainder.
        (remainder_optab): Define corresponding macro.
        (drem_optab): Remove.
        * optabs.c (init_optabs): Initialize remainder_optab.  Remove
        drem_optab initialization.
        * genopinit.c (optabs): Implement remainder_optab using
        remainder?f3 patterns.  Remove drem_optab.
        * builtins.c (expand_builtin_mathfn_2): Handle
        BUILT_IN_REMAINDER{,F,L} using remainder_optab.
        (expand_builtin): Expand BUILT_IN_REMAINDER{,F,L} using
        expand_builtin_mathfn_2.

        (expand_builtin) [BUILT_IN_FMOD, BUILT_IN_DREM]: Do not
        depend on flag_unsafe_math_optimizations.

        * config/i386/i386.md ("remaindersf3", "remainderdf3")
        ("remainderxf3"): Renamed from "drem{s,d,x}f3" expanders.
        Do not depend on flag_unsafe_math_optimizations.  Use
        truncxf?f expander instead of truncxf?f_i387_noop.

        ("fpremxf4", "fprem1xf4"): Do not depend on
        flag_unsafe_math_optimizations.
        ("fmodsf3", "fmoddf3", "fmodxf3"): Do not depend on
        flag_unsafe_math_optimizations.  Use truncxf?f expander
        instead of truncxf?f_i387_noop.

        * doc/md.texi (fmod, remainder): Document standard named pattern.

testsuite/ChangeLog:

        * gcc.dg/builtins-40.c: Also check remainder(), remainderf()
        and remainderl() built-in functions.  Remove -ffast-math from
        dg-options.

From-SVN: r118024
2006-10-25 08:36:49 +02:00
Richard Sandiford
942d782179 re PR middle-end/29519 (Bad code on MIPS with -fnon-call-exceptions)
PR middle-end/29519
	* rtlanal.c (nonzero_address_p):  Remove check for values wrapping.

Co-Authored-By: David Daney <ddaney@avtrex.com>

From-SVN: r118023
2006-10-25 05:49:43 +00:00
Ben Elliston
97977a91bb * pexecute.txh: Wrap pexecute's "flag" argument with @var {..}.
From-SVN: r118022
2006-10-25 10:40:15 +10:00
GCC Administrator
7068ca911a Daily bump.
From-SVN: r118020
2006-10-25 00:17:43 +00:00
Ben Elliston
9baf8aea95 * doc/extend.texi (Variable Attributes): Typo fix.
From-SVN: r118015
2006-10-25 09:20:33 +10:00
Uros Bizjak
03c259ad42 i386.h (FIRST_PSEUDO_REGISTER): Define to 54.
* config/i386/i386.h (FIRST_PSEUDO_REGISTER): Define to 54.
        (FIXED_REGISTERS, CALL_USED_REGISTERS): Add fpcr register.
        (REG_ALLOC_ORDER): Add one element to allocate fpcr register.
        (FRAME_POINTER_REGNUM): Update register number to 21.
        (REG_CLASS_CONTENTS): Update contents for added fpcr register.
        (HI_REGISTER_NAMES): Add "fpcr" for fpcr register.

        * config/i386/i386.c (regclass_map): Add fpcr entry.
        (dbx_register_map, dbx64_register_map, svr4_dbx_register_map):
        Add fpcr entry.
        (print_reg): Assert REGNO (x) != FPCR_REG.

        * config/i386/i386.md (FPCR_REG, R11_REG): New constants.
        (DIRFLAG_REG): Renumber.
        (x86_fnstcw_1, x86_fldcw_1): Use FPCR_REG instead of FPSR_REG.
        (*sibcall_1_rex64_v, *sibcall_value_1_rex64_v): Use R11_REG.
        (sse_prologue_save, *sse_prologue_save_insn): Renumber
        hardcoded SSE register numbers.

        * config/i386/mmx.md (mmx_emms, mmx_femms): Renumber
        hardcoded MMX register numbers.

From-SVN: r118014
2006-10-25 00:55:36 +02:00
Kaveh R. Ghazi
e4ef58afd4 builtin-math-2.c: Add checks for asin, acos, acosh and atanh.
* gcc.dg/torture/builtin-math-2.c: Add checks for asin, acos,
	acosh and atanh.
	
	* gcc.dg/torture/builtin-math-3.c (TESTIT): Append 'F' and 'L'
	floating point modifiers to arguments passed to float and long
	double functions respectively.  Update all callers to use floating
	point numbers, not integers.  Add tests for exp, exp2 and
	exp10/pow10.

From-SVN: r118012
2006-10-24 21:52:51 +00:00
Kaveh R. Ghazi
b53fed5636 re PR middle-end/29335 (transcendental functions with constant arguments should be resolved at compile-time)
PR middle-end/29335
	* builtins.c (fold_builtin_sin, fold_builtin_atan): Remove.
	(do_mpfr_arg1): Add `min', `max' and `inclusive' arguments.
	Update all callers.
	(BUILT_IN_SIN, BUILT_IN_ATAN): Handle in main switch.
	(BUILT_IN_ASIN, BUILT_IN_ACOS, BUILT_IN_ATAN, BUILT_IN_ASINH,
	BUILT_IN_ACOSH, BUILT_IN_ATANH, BUILT_IN_SINH, BUILT_IN_COSH,
	BUILT_IN_TANH): Calculate compile-time arguments using MPFR.

testsuite:
	* gcc.dg/torture/builtin-math-3.c: New test.

From-SVN: r118009
2006-10-24 17:44:36 +00:00
Erik Edelmann
b9703d9852 re PR fortran/29393 (Vector subscript rejected)
fortran/
2006-10-24  Erik Edelmann  <eedelman@gcc.gnu.org>

        PR fortran/29393
        * expr.c (simplify_parameter_variable): Keep rank of original
         expression.

Testsuite/
2006-10-24  Erik Edelmann  <eedelman@gcc.gnu.org>

        PR fortran/29393
        * gfortran.dg/initialize_2.f90: New.

From-SVN: r118008
2006-10-24 17:01:30 +00:00
Eric Botcazou
6d4d216add re PR libgomp/29494 (libgomp build fails with missing pthread_mutexattr_settype)
PR libgomp/29494
	* configure.tgt: Use posix95 configuration for Solaris 2.5.1 and 2.6.
	* config/posix95: New directory.
	* config/posix95/omp-lock.h: New file.
	* config/posix95/lock.c: Likewise.

From-SVN: r118004
2006-10-24 13:59:06 +00:00
Kaveh R. Ghazi
a5326b13ed builtin-math-2.c: New test.
* gcc.dg/torture/builtin-math-2.c: New test.

From-SVN: r118003
2006-10-24 12:25:06 +00:00
Richard Guenther
27d7d0422c re PR middle-end/28796 (__builtin_nan() and __builtin_unordered() inconsistent)
2006-10-24  Richard Guenther  <rguenther@suse.de>

	PR middle-end/28796
	* builtins.c (fold_builtin_classify): Use HONOR_INFINITIES
	and HONOR_NANS instead of MODE_HAS_INFINITIES and MODE_HAS_NANS
	for deciding optimizations in consistency with fold-const.c
	(fold_builtin_unordered_cmp): Likewise.

        * gcc.dg/pr28796-1.c: New testcase.
        * gcc.dg/pr28796-1.c: Likewise.

From-SVN: r118001
2006-10-24 09:15:07 +00:00
Richard Guenther
e1502f6e2d builtins.c (fold_builtin_floor): Fold floor (x) where x is nonnegative to trunc (x).
2006-10-24  Richard Guenther  <rguenther@suse.de>

	* builtins.c (fold_builtin_floor): Fold floor (x) where
	x is nonnegative to trunc (x).
	(fold_builtin_int_roundingfn): Fold lfloor (x) where x is
	nonnegative to FIX_TRUNC_EXPR.

	* gcc.dg/builtins-57.c: New testcase.

From-SVN: r117998
2006-10-24 08:35:12 +00:00
Richard Guenther
34fc5065e8 re PR tree-optimization/29567 (ICE in build2_stat, at tree.c:2963)
2006-10-24  Richard Guenther  <rguenther@suse.de>

        PR tree-optimization/29567
	* tree-vrp.c (register_edge_assert_for_1): Fix wrong logic
	for TRUTH_NOT_EXPR.  Clarify comments.

	* gfortran.fortran-torture/compile/vrp_1.f90: New testcase.

From-SVN: r117997
2006-10-24 08:12:04 +00:00
Kaveh R. Ghazi
b52dd66cc0 builtins.c (fold_builtin_exponent): Evaluate constant arguments at compile-time using MPFR.
* builtins.c (fold_builtin_exponent): Evaluate constant arguments
	at compile-time using MPFR.  Change parameter VALUE to FUNC,
	update all callers.
	(do_mpfr_arg1): Rename `exact' to `inexact'.  Carefully check
	for overflow and underflow at all times and avoid folding in
	those cases.

From-SVN: r117995
2006-10-24 04:13:16 +00:00
Ben Elliston
247140eaf7 * reload1.c: Formatting fixes.
From-SVN: r117993
2006-10-24 13:24:58 +10:00
GCC Administrator
59e6026bd5 Daily bump.
From-SVN: r117991
2006-10-24 00:17:35 +00:00
Zdenek Dvorak
ae5360407b re PR tree-optimization/14784 ([Tree-ssa] alias analysis deficiency)
PR tree-optimization/14784
	* tree-flow.h (struct var_ann_d): Add is_heapvar bit.
	* tree-ssa-structalias.c (get_constraint_for,
	intra_create_variable_infos): Set is_heapvar.
	* tree-ssa-operands.c (access_can_touch_variable): Do not handle
	non-heapvar pointer variables specially.

	* gcc.dg/alias-10.c: New test.

From-SVN: r117986
2006-10-24 00:12:16 +00:00
Kaveh R. Ghazi
4d5fc91677 builtin-sin-mpfr-1.c: New test.
* gcc.dg/torture/builtin-sin-mpfr-1.c: New test.

From-SVN: r117985
2006-10-23 20:31:50 +00:00
Kaveh R. Ghazi
1f3f1f6827 re PR middle-end/29335 (transcendental functions with constant arguments should be resolved at compile-time)
PR middle-end/29335
	* builtins.c (fold_builtin_sin, fold_builtin_cos,
	fold_builtin_tan): Fold all constant arguments.  Take a "type"
	argument as necessary.
	(do_mpfr_arg1): New.
	* real.c, real.h (real_from_mpfr, mpfr_from_real): New.

From-SVN: r117983
2006-10-23 20:24:55 +00:00
Bob Wilson
b544aa7b95 * config/xtensa/lib1funcs.asm: Use C-style comments.
From-SVN: r117982
2006-10-23 20:17:45 +00:00
Rafael Ávila de Espíndola
c79efc4d2a decl.c: Include langhooks.h.
* gcc/java/decl.c: Include langhooks.h.
       (builtin_function): Remove.
       (java_init_decl_processing): Replace calls to builtin_function
       with add_builtin_function.

       * gcc/java/Make-lang.in (jc1$(exeext)): Depend on and link with
       attribs.o.
       (java/decl.o): Depend on langhooks.h.

       * gcc/java/java-tree.h (builtin_function): Remove.

       * gcc/tree.c (local_define_builtin): Replace calls to
       lang_hooks.builtin_function with add_builtin_function.

       * gcc/objc/objc-act.c (synth_module_prologue): Replace calls to
       builtin_function with add_builtin_function.
       (build_next_objc_exception_stuff): Replace calls to
       builtin_function with add_builtin_function.
       (build_objc_exception_stuff): Replace calls to
       builtin_function with add_builtin_function.

       * gcc/objcp/objcp-decl.h (objcp_builtin_function): Remove.

       * gcc/cp/decl.c (builtin_function_1): Move common code to
       add_builtin_function.
       (builtin_function): Rename to cxx_builtin_function.
       Change the signature.

       * gcc/cp/call.c: Include langhooks.h.
       (build_java_interface_fn_ref):  Replace calls to
       builtin_function with add_builtin_function.

       * gcc/cp/Make-lang.in (cp/call.o): Depend on langhooks.h.

       * gcc/cp/cp-objcp-common.h (LANG_HOOKS_BUILTIN_FUNCTION): Define as
       cxx_builtin_function.

       * gcc/cp/cp-tree.h (builtin_function): Rename to cxx_builtin_function.
       Change the signature.

       * gcc/c-objc-common.h (LANG_HOOKS_BUILTIN_FUNCTION): Define as
       c_builtin_function.

       * gcc/c-tree.h (builtin_function): Rename to c_builtin_function. Change
       the signature.

       * gcc/ada/utils.c (builtin_function): Rename to gnat_builtin_function.
       Move common code to add_builtin_function.

       * gcc/ada/misc.c (LANG_HOOKS_BUILTIN_FUNCTION): Define as
       gnat_builtin_function.

       * gcc/ada/gigi.h (builtin_function): Rename to gnat_builtin_function.
       Change the signature.

       * gcc/c-decl.c (builtin_function): Rename to c_builtin_function. Move
       common code to add_builtin_function.

       * gcc/fortran/Make-lang.in (f951$(exeext)): Depend on and link with
       attribs.o.

       * gcc/fortran/trans.h (builtin_function): Rename to
       gfc_builtin_function. Change the signature.

       * gcc/fortran/f95-lang.c (LANG_HOOKS_BUILTIN_FUNCTION): Define as
       gfc_builtin_function.
       (builtin_function): Rename to gfc_builtin_function. Move common
       code to builtin_function.
       (gfc_define_builtin): Replace calls to builtin_function with
       gfc_define_builtin.

       * gcc/langhooks.c (add_builtin_function): New function.
       (lhd_builtin_function): New function.

       * gcc/langhooks.h (struct lang_hooks): Change the signature of
       builtin_function.
       (add_builtin_function): New function.

       * gcc/treelang/treetree.c (builtin_function): Remove.

       * gcc/tree-ssa-loop-prefetch.c (tree_ssa_prefetch_arrays): Replace
       calls to lang_hooks.builtin_function with add_builtin_function.

       * gcc/c-common.c (decl_builtin_1): Replace calls to
       lang_hooks.builtin_function with add_builtin_function.

       * gcc/config/alpha/alpha.c (alpha_init_builtins): Replace calls to
       lang_hooks.builtin_function with add_builtin_function.

       * gcc/config/frv/frv.c (def_builtin): Replace calls to
       lang_hooks.builtin_function with add_builtin_function.

       * gcc/config/s390/s390.c (s390_init_builtins): Replace calls to
       lang_hooks.builtin_function with add_builtin_function.

       * gcc/config/sparc/sparc.c (def_builtin): Replace calls to
       lang_hooks.builtin_function with add_builtin_function.

       * gcc/config/i386/i386.c (def_builtin): Replace calls to
       lang_hooks.builtin_function with add_builtin_function.
       (def_builtin): Replace calls to lang_hooks.builtin_function with
       add_builtin_function.

       * gcc/config/sh/sh.c (sh_media_init_builtins): Replace calls to
       lang_hooks.builtin_function with add_builtin_function.

       * gcc/config/c4x/c4x.c (c4x_init_builtins): Replace calls to
       lang_hooks.builtin_function with add_builtin_function.

       * gcc/config/stormy16/stormy16.c (xstormy16_init_builtins):
       Replace calls to lang_hooks.builtin_function with
       add_builtin_function.

       * gcc/config/iq2000/iq2000.c (def_builtin):
       Replace calls to lang_hooks.builtin_function with
       add_builtin_function.

       * gcc/config/ia64/ia64.c (def_builtin): Replace calls to
       lang_hooks.builtin_function with add_builtin_function.

       * gcc/config/rs6000/rs6000.c (def_builtin): Replace calls to
       lang_hooks.builtin_function with add_builtin_function.
       (altivec_init_builtins): Replace calls to
       lang_hooks.builtin_function with add_builtin_function.

       * gcc/config/arm/arm.c (def_mbuiltin): Replace calls to
       lang_hooks.builtin_function with add_builtin_function.
       (arm_init_tls_builtins): Replace calls to
       lang_hooks.builtin_function with add_builtin_function.

       * gcc/config/mips/mips.c (mips_init_builtins): Replace calls to
       lang_hooks.builtin_function with add_builtin_function.

       * gcc/config/bfin/bfin.c (def_builtin): Replace calls to
       lang_hooks.builtin_function with add_builtin_function.

       * gcc/langhooks-def.h (lhd_builtin_function): New function.
       (LANG_HOOKS_BUILTIN_FUNCTION): Define as lhd_builtin_function.

From-SVN: r117981
2006-10-23 19:47:58 +00:00
Jakub Jelinek
1c2fc017ed builtins.c (expand_builtin, [...]): Handle BUILT_IN_STRNCAT_CHK.
* builtins.c (expand_builtin, maybe_emit_chk_warning): Handle
	BUILT_IN_STRNCAT_CHK.

	* gcc.dg/builtin-strncat-chk-1.c: New test.

From-SVN: r117980
2006-10-23 21:18:42 +02:00
Jan Hubicka
eaf1912236 builtins.c (expand_builtin_memmove): Remove ORIG_EXP argument; don't do conversion from memmove to memcpy here.
* builtins.c (expand_builtin_memmove): Remove ORIG_EXP argument;
	don't do conversion from memmove to memcpy here.
	(expand_builtin_bcopy, expand_builtin): Update call of
	expand_builtin_memmove.
	(fold_builtin_memory_op): Do folding of memmove to memcpy here.

	* gcc.dg/memmove-1.c: New test.

From-SVN: r117979
2006-10-23 18:50:40 +00:00
Paul Brook
353293e7f7 stor-layout.c (start_record_layout): maximum_field_alignment overrides STRUCTURE_SIZE_BOUNDARY.
2006-10-23  Paul Brook  <paul@codesourcery.com>

	gcc/
	* stor-layout.c (start_record_layout): maximum_field_alignment
	overrides STRUCTURE_SIZE_BOUNDARY.

	gcc/testsuite/
	* gcc.dg/pragma-pack-5.c: New test.

From-SVN: r117977
2006-10-23 16:36:51 +00:00
Ulrich Weigand
6915c1cea2 predicates.md ("bras_sym_operand"): Do not accept nonlocal function symbols if flag_pic.
ChangeLog:

	* config/s390/predicates.md ("bras_sym_operand"): Do not accept
	nonlocal function symbols if flag_pic.

testsuite/ChangeLog:

	* g++.dg/other/s390-1.C: New testcase.

From-SVN: r117973
2006-10-23 13:38:50 +00:00
Richard Guenther
b0cd88d216 [multiple changes]
2006-10-24  Richard Guenther  <rguenther@suse.de>

	PR middle-end/27132
	PR middle-end/23295
	* builtins.c (fold_binary): Remove checks for flag_wrapv
	and flag_trapv where negate_expr_p covers these cases.

	* gcc.dg/pr27132.c: New testcase.
	* gcc.dg/pr23295.c: Likewise.
	* gcc.dg/tree-ssa/pr23294.c: Adjust patterns.
	* g++.dg/tree-ssa/pr19807.C: Likewise.

2006-10-23  Richard Guenther  <rguenther@suse.de>

	PR middle-end/29548
	* fold-const.c (fold_plusminus_mult_expr): Check exact power
	of two on the absolute value.
	(fold_binary): Fold x * -C to -x * C if x is easily negatable
	and negating -C does not overflow.

From-SVN: r117969
2006-10-23 07:19:34 +00:00
Richard Guenther
4f76e46b18 re PR middle-end/21032 (With -frounding-math, incorrectly reorders unary minus)
2006-10-23  Richard Guenther  <rguenther@suse.de>

	PR middle-end/21032
	* convert.c (convert_to_real): Fold (float)-x to -(float)x
	only if not flag_rounding_math.

	* gcc.dg/pr21032.c: New testcase.

From-SVN: r117968
2006-10-23 07:15:45 +00:00
GCC Administrator
1b406eadf9 Daily bump.
From-SVN: r117966
2006-10-23 00:17:39 +00:00
Richard Sandiford
85144c5cdd re PR target/28232 (Wrong aligned load is generated with -m4a on sh-*)
PR target/28232
	* config/sh/sh.c (expand_block_move): Use a BLKmode rather than
	SImode memory reference for the source of a movua.
	* config/sh/sh.md (UNSPEC_MOVUA): New macro.
	(movua): Use an unspec instead of sign_extract.  Expect the source
	to have mode BLKmode.
	(extv, insv): Use a BLKmode rather than SImode memory reference
	for the source of a movua.


Co-Authored-By: Kaz Kojima <kkojima@gcc.gnu.org>

From-SVN: r117961
2006-10-23 00:14:39 +00:00