1. 17 Nov, 2010 3 commits
    • simple-object.h (simple_object_attributes_merge): Declare, replacing… · d82f74d3
      simple-object.h (simple_object_attributes_merge): Declare, replacing simple_object_attributes_compare.
      
      include/:
      	* simple-object.h (simple_object_attributes_merge): Declare,
      	replacing simple_object_attributes_compare.
      libiberty/:
      	* simple-object.c (simple_object_attributes_merge): Rename from
      	simple_object_attributes_compare.  Call merge field.
      	* simple-object-common.h (struct simple_object_functions): Rename
      	attributes_compare field to attribute_merge.
      	* simple-object-elf.c (EM_SPARC): Define.
      	(EM_SPARC32PLUS): Define.
      	(simple_object_elf_attributes_merge): Renamed from
      	simple_object_elf_attributes_compare.  Permit EM_SPARC and
      	EM_SPARC32PLUS objects to be merged.
      	(simple_object_elf_functions): Update function name.
      	* simple-object-coff.c (simple_object_coff_attributes_merge):
      	Rename from simple_object_coff_attributes_compare.
      	(simple_object_coff_functions): Update function name.
      	* simple-object-mach-o.c (simple_object_mach_o_attributes_merge):
      	Renamed from simple_object_mach_o_attributes_compare.
      	(simple_object_mach_o_functions): Update function name.
      gcc/lto/:
      	* lto-object.c (lto_obj_file_open): Call
      	simple_object_attributes_merge rather than
      	simple_object_attributes_compare.
      
      From-SVN: r166848
      Ian Lance Taylor committed
    • In gcc/objc/: 2010-11-17 Nicola Pero <nicola.pero@meta-innovation.com> · 354d8ce1
      In gcc/objc/:
      2010-11-17  Nicola Pero  <nicola.pero@meta-innovation.com>
      
              * objc-act.c (lookup_method_in_protocol_list): Search methods in
              PROTOCOL_OPTIONAL_CLS_METHODS / PROTOCOL_OPTIONAL_NST_METHODS if
              they are not found in PROTOCOL_CLS_METHODS / PROTOCOL_NST_METHODS.
      
      In gcc/testsuite/:
      2010-11-17  Nicola Pero  <nicola.pero@meta-innovation.com>
      
              * objc.dg/protocol-optional-1.m: New.
              * obj-c++.dg/protocol-optional-1.mm: New.
      
      From-SVN: r166847
      Nicola Pero committed
    • Daily bump. · 109a508a
      From-SVN: r166844
      GCC Administrator committed
  2. 16 Nov, 2010 37 commits
    • * ifcvt.c (dead_or_predicable): Fix typo. · a5e2cc0b
      From-SVN: r166839
      Eric Botcazou committed
    • s390: -mfused-madd cleanup · d7ecb504
              * config.gcc [s390*-*] (extra_options): Add fused-madd.opt.
              * config/s390/s390.opt (mfused-madd): Remove.
              * config/s390/s390.c (s390_rtx_costs): Handle FMA.
              (TARGET_DEFAULT_TARGET_FLAGS): Remove MASK_FUSED_MADD.
              * config/s390/s390.md (fma<DSF>4): Rename from *fmadd<DSF>; use FMA.
              (fms<DSF>4): Rename from *fmsub<DSF>; use FMA.
      
      From-SVN: r166838
      Richard Henderson committed
    • rs6000: -mfused-madd cleanup · d6613781
      	* config.gcc [powerpc*, rs6000*] (extra_options): Add fused-madd.opt.
      	* config/rs6000/rs6000.opt (mfused-madd): Remove.
      	* config/rs6000/altivec.md (altivec_vmaddfp): Remove.
      	(*altivec_vmaddfp_1): Remove.
      	(*altivec_fmav4sf4): Rename from altivec_vmaddfp_2; use FMA.
      	(altivec_mulv4sf3): Expand to FMA directly.
      	(*altivec_vnmsubfp): Rename from altivec_vnmsubfp.
      	(*altivec_vnmsubfp_1, *altivec_vnmsubfp_2): Remove.
      	* config/rs6000/paired.md (paired_madds0): Use FMA.
      	(paired_madds1): Likewise.
      	(*paired_madd): Rename from paired_madd; use FMA.
      	(*paired_msub, *paired_nmadd, *paired_nmsub): Similarly.
      	* config/rs6000/rs6000.c (rs6000_init_hard_regno_mode_ok): Do not
      	consider TARGET_FUSED_MADD wrt rs6000_recip_control.
      	(bdesc_3arg): Update CODE_FOR_* for pattern renames.
      	(rs6000_emit_madd): Use fma_optab.
      	(rs6000_emit_msub): Use fms_optab.
      	(rs6000_emit_nmsub): Expand the FMA pattern directly.
      	* config/rs6000/rs6000.md (FMA_F): New mode iterator.
      	(*fmasf4_fpr): Rename from fmasf4_fpr.
      	(*nfmasf4_fpr): Rename from *fnmasf4_fpr.
      	(*nfmssf4_fpr): Rename from *fnmssf4_fpr.
      	(*fmaddsf4_powerpc, *fmaddsf4_power, *fmsubsf4_powerpc): Remove.
      	(*fmsubsf4_power, *fnmaddsf4_powerpc_1, *fnmaddsf4_powerpc_2): Remove.
      	(*fnmaddsf4_power_1, *fnmaddsf4_power_2, *fnmsubsf4_powerpc_1): Remove.
      	(*fnmsubsf4_powerpc_2, *fnmsubsf4_power_1, *fnmsubsf4_power_2): Remove.
      	(*fmadf4_fpr): Rename from fmadf4_fpr.
      	(*nfmadf4_fpr): Rename from *fnmadf4_fpr.
      	(*nfmsdf4_fpr): Rename from *fnmsdf4_fpr.
      	(*fmadddf4_fpr, *fmsubdf4_fpr, *fnmadddf4_fpr_1): Remove.
      	(*fnmadddf4_fpr_2, *fnmsubdf4_fpr_1, *fnmsubdf4_fpr_2): Remove.
      	(fmasf4, fmadf4): Macroize into...
      	(fma<FMA_F>4): ... here.
      	(fms<FMA_F>4, fnma<FMA_F>4, fnms<FMA_F>4): New.
      	(nfma<FMA_F>4, nfms<FMA_F>4): New.
      	* config/rs6000/vector.md (mul<VEC_F>3): Do not depend on
      	TARGET_FUSED_MADD.
      	* config/rs6000/vsx.md (vsx_fmadd<VSX_B>4): Remove.
      	(*vsx_fmadd<mode>4_1): Remove.
      	(vsx_fmsub<mode>4, *vsx_fmsub<mode>4_1): Remove.
      	(vsx_fnmadd<mode>4_1, vsx_fnmadd<mode>4_2): Remove.
      	(vsx_fnmsub<mode>4_1, vsx_fnmsub<mode>4_2): Remove.
      	(*vsx_fma<mode>4): Rename from vsx_fmadd<mode>4_2.
      	(*vsx_fms<mode>4): Rename from vsx_fmsub<mode>4_2.
      	(*vsx_nfma<mode>4): Rename from vsx_fnmadd<mode>4.
      	(*vsx_nfms<mode>4): Rename from vsx_fnmsub<mode>4.
      
      testsuite/
      	* gcc.target/powerpc/ppc-fma-2.c: Use -ffp-contract=off.
      	* gcc.target/powerpc/ppc-fma-4.c: Likewise.
      
      From-SVN: r166837
      Richard Henderson committed
    • pa: Use the FMA rtx code. · f9669294
              * config/pa/pa.md (fmadf4): Rename from unnamed; use FMA.
              (fmasf4, fnmadf4, fnmasf4): Likewise.
              (unnamed plus+mult insns and splitters): Delete.
      
      From-SVN: r166834
      Richard Henderson committed
    • spu: Use the FMA rtx code. · 23c819b5
              * config/spu/spu.md (fma<VSF>4): Rename from fma_<VSF>.
              (fnma<VSF>4): Rename from fnms_<VSF>.
              (fms<VSF>4): Rename from fms_<VSF>.
              (fma<VDF>4): Rename from fma_<VDF>.
              (fms<VDF>4): Rename from fms_<VDF>.
              (nfma<VDF>4): Rename from fnma_<VDF>.
              (nfms<VDF>4): Rename from fnms_<VDF>.
              (fnma<VDF>4, fnms<VDF>4): New expanders.
              (floatunsdisf2): Update for the renames.
              (*div<VSF>3_fast, *div<VSF>3_adjusted): Likewise.
              * config/spu/spu-builtins.def: Update CODE_FOR_* for the renames.
      
      From-SVN: r166833
      Richard Henderson committed
    • re PR rtl-optimization/46490 (ACATS c460007 fails at -O2 or above) · a05c8f23
      	PR rtl-optimization/46490
      	* combine.c (expand_compound_operation): Fix thinko.
      
      From-SVN: r166830
      Eric Botcazou committed
    • re PR target/46470 ("add $0x8,%rsp" no longer optimized to pop) · cfc76ec4
      PR target/46470
              * recog.c (peep2_attempt): Convert frame-related info when possible.
              (peep2_fill_buffer): Allow frame-related insns into the buffer.
              (peephole2_optimize): Allow peep2_attempt to fail.
      
      From-SVN: r166829
      Richard Henderson committed
    • re PR rtl-optimization/46315 (-O2 -fno-strict-overflow causes wrong code generation) · 885c9b5d
      	PR rtl-optimization/46315
      	* rtl.h (remove_reg_equal_equiv_notes_for_regno): Declare.
      	* rtlanal.c (remove_reg_equal_equiv_notes_for_regno): New function
      	extracted from...
      	* dce.c (delete_corresponding_reg_eq_notes): ...here.  Rename into...
      	(remove_reg_equal_equiv_notes_for_defs): ...this.
      	(delete_unmarked_insns): Adjust to above renaming.
      	* ifcvt.c (dead_or_predicable): Remove REG_EQUAL and REG_EQUIV notes
      	referring to registers set in the insns being moved, if any.
      
      	* df-core.c (df_ref_dump): New function extracted from...
      	(df_refs_chain_dump): ...here.  Call it.
      	(df_regs_chain_dump): Likewise.
      	* df-problems.c (df_chain_dump): Print 'e' for uses in notes.
      	* df-scan.c (df_scan_start_dump): Likewise.  Fix long line.
      
      From-SVN: r166827
      Eric Botcazou committed
    • re PR java/46386 (negative shift count in build_constants_constructor for 16 bit pointer targets) · 2b129627
      2010-11-09  Joern Rennecke  <amylaar@spamcop.net>
      	    Andrew Haley  <aph@redhat.com>
      
      	PR java/46386
      gcc/java:
      	* constants.c (build_constants_constructor): Avoid negative shift.
      gcc:
      	* config/pdp11/t-pdp11 (java/constants.o-warn): Remove.
      	* config/t-pnt16-warn (java/constants.o-warn): Likewise.
      
      Co-Authored-By: Andrew Haley <aph@redhat.com>
      
      From-SVN: r166826
      Joern Rennecke committed
    • re PR fortran/32049 (Support on x86_64 also kind=16) · 1ec601bf
      /
      2010-11-13  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
                  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/32049
              * Makefile.def: Add libquadmath; build it with language=fortran.
              * configure.ac: Add libquadmath.
              * Makefile.tpl: Handle multiple libs in check-[+language+].
              * Makefile.in: Regenerate.
              * configure: Regenerate.
      
      libquadmath/
      2010-11-13  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
                  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/32049
              Initial implementation and checkin.
      
      gcc/fortran/
      2010-11-13  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
                  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/32049
              * gfortranspec.c (find_spec_file): New function.
              (lang_specific_driver): Try to find .spec file and use it.
              * trans-io.c (iocall): Define
              * IOCALL_X_REAL128/COMPLEX128(,write).
              (gfc_build_io_library_fndecls): Build decl for __float128 I/O.
              (transfer_expr): Call __float128 I/O functions.
              * trans-types.c (gfc_init_kinds): Allow kind-16 belonging
              to __float128.
      
      gcc/testsuite/
      2010-11-13  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
                  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/32049
              * gfortran.dg/quad_1.f90: New.
              * lib/gcc-defs.exp (gcc-set-multilib-library-path): Use also
              compiler arguments.
              * lib/gfortran.exp (gfortran_link_flags): Add libquadmath to
              library search path; call gcc-set-multilib-library-path with
              arguments such that libgfortran.spec is found.
              (gfortran_init): Add path for libgfortran.spec to
      GFORTRAN_UNDER_TEST.
      
      libgomp/
      2010-11-13  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
                  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/32049
              * configure.ac: 
              * configure: Regenerate.
      
      libgfortran/
      2010-11-13  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
                  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/32049
              * Makefile.am: Add missing pow_r16_i4.c, add transfer128.c,
              link libquadmath, if used.
              * acinclude.m4 (LIBGFOR_CHECK_FLOAT128): Add.
              * configure.ac: Use it, touch spec file.
              * gfortran.map: Add pow_r16_i4 and
              transfer_(real,complex)128(,write) functions.
              * intrinsics/cshift0.c (cshift0): Handle __float128 type.
              * intrinsics/erfc_scaled_inc.c: Ditto.
              * intrinsics/pack_generic.c (pack): Ditto
              * intrinsics/spread_generic.c (spread): Ditto.
              * intrinsics/unpack_generic.c (unpack1): Ditto.
              * io/read.c (convert_real): Ditto.
              * io/transfer.c: Update comments.
              * io/transfer128.c: New file.
              * io/write_float.def (write_float): Handle __float128 type.
              * libgfortran.h: #include quadmath_weak.h, define __builtin_infq
              and nanq.
              * m4/mtype.m4: Handle __float128 type.
              * runtime/in_pack_generic.c (internal_pack): Ditto.
              * runtime/in_unpack_generic.c (internal_unpack): Ditto.
              * kinds-override.h: New file.
              * libgfortran.spec.in: Ditto.
              * generated/pow_r16_i4.c: Generated.
              * Makefile.in: Regenerate.
              * configure: Regenerate.
              * config.h: Regenerate.
              * bessel_r10.c: Regenerate.
              * bessel_r16.c: Regenerate.
              * bessel_r4.c: Regenerate.
              * bessel_r8.c: Regenerate.
              * exponent_r16.c: Regenerate.
              * fraction_r16.c: Regenerate.
              * nearest_r16.c: Regenerate.
              * norm2_r10.c: Regenerate.
              * norm2_r16.c: Regenerate.
              * norm2_r4.c: Regenerate.
              * norm2_r8.c: Regenerate.
              * rrspacing_r16.c: Regenerate.
              * set_exponent_r16.c: Regenerate.
              * spacing_r16.c: Regenerate.
      
      
      Co-Authored-By: Tobias Burnus <burnus@net-b.de>
      
      From-SVN: r166825
      Francois-Xavier Coudert committed
    • re PR c++/46401 (very slow compile time with -Wsequence-point) · 07078664
      	PR c++/46401
      	* c-common.c (warning_candidate_p): Don't track non-const calls
      	or STRING_CSTs.
      
      	* g++.dg/warn/Wsequence-point-3.C: New test.
      
      From-SVN: r166823
      Jakub Jelinek committed
    • re PR rtl-optimization/46395 (FAIL: 22_locale/numpunct/members/pod/2.cc execution test) · 18c33e03
      PR rtl-optimization/46395
      * gcc/postreload.c (reload_combine): Invalidate register use
      information on all control flow insns.
      
      From-SVN: r166820
      Andreas Schwab committed
    • re PR preprocessor/17349 (// comments cause weird behaviour with options -E -C) · 651a20b5
      2010-11-16  Kai Tietz  <kai.tietz@onevision.com>
      
              PR preprocessor/17349
              * lex.c (save_comment): Handle in argument passing c++
              comments special.
      
      2010-11-16  Kai Tietz  <kai.tietz@onevision.com>
      
              PR preprocessor/17349
              * gcc.dg/cpp/cmdlne-C3.c: New.
      
      From-SVN: r166817
      Kai Tietz committed
    • m68k.c (m68k_delegitimize_address): Also expect LABEL_REF in UNSPEC operand. · 92cf7399
      * gcc/config/m68k/m68k.c (m68k_delegitimize_address): Also expect
      LABEL_REF in UNSPEC operand.
      
      From-SVN: r166816
      Andreas Schwab committed
    • cgraph.h (+varpool_can_remove_if_no_refs): Move here from ...... · df7705b1
      
      	* cgraph.h (+varpool_can_remove_if_no_refs): Move here from ...;
      	when !flag_toplevel_reorder do not remove unless variable is
      	COMDAT or ARTIFICIAL.
      	* ipa.c (varpool_can_remove_if_no_refs): ... here.
      	(cgraph_remove_unreachable_nodes): Only analyzed nodes needs to stay.
      	* cgraphunit.c (cgraph_analyze_functions): Dump varpool, too.
      	* varpool.c (decide_is_variable_needed): Do not handle visibility issues.
      	(varpool_finalize_decl): Likewise.
      	(varpool_remove_unreferenced_decls): Use varpool_mark_needed_node; update
      	outdated comment on DECL_RTL_SET_P check.
      
      From-SVN: r166812
      Jan Hubicka committed
    • sol2.h (NM_FLAGS): Define. · 3e794bfe
      	* config/sol2.h (NM_FLAGS): Define.
      	* doc/tm.texi.in (Macros for Initialization, NM_FLAGS): Document.
      	* doc/tm.texi: Update.
      
      From-SVN: r166811
      Rainer Orth committed
    • Properly demangle a global constructor symbol. · 431f321f
      2010-11-16  H.J. Lu  <hongjiu.lu@intel.com>
      
      	PR other/42670
      	PR binutils/11137
      	* cp-demangle.c (d_make_demangle_mangled_name): New.
      	(d_demangle_callback): Use it on DCT_GLOBAL_XTORS.
      
      	* testsuite/demangle-expected: Updated.
      
      From-SVN: r166810
      H.J. Lu committed
    • * MAINTAINERS: Moved myself to reviewers section. · b9b9d342
      From-SVN: r166809
      Tom Tromey committed
    • v850.md (maddsf4): Rename to fmasf4 and use fma rtx_code. · 2a5e3780
      	* config/v850/v850.md (maddsf4): Rename to fmasf4 and use fma
      	rtx_code.
      	(msubsf4): Rename to fmssf4, and use fma.
      	(nmaddsf4): Rename to fnmasf4 and use fma.
      	(nmsubsf4): Rename to fnmssf4 and use fma.
      
      From-SVN: r166808
      Nick Clifton committed
    • re PR target/44762 (score/predicates.md warnings) · 996893ce
      	PR target/44762
      	* config/score/score3.c (score3_return_in_memory): Constify arguments.
      	(score3_in_small_data_p, score3_function_value): Likewise.
      	(score3_trampoline_init): Use LCT_NORMAL.
      	(score3_print_operand): Initialize code as UNKNOWN.
      	* config/score/predicates.md (score_load_multiple_operation):
      	Remove unused variable.
      	(score_store_multiple_operation): Likewise.
      	* config/score/score7.c (score7_return_in_memory): Constify arguments.
              (score7_in_small_data_p, score7_function_value): Likewise.
      	(score7_trampoline_init): Use LCT_NORMAL.
      	(score7_print_operand): Initialize code as UNKNOWN.
      	* config/score/score3.h (score3_return_in_memory): Update prototype.
      	(score3_in_small_data_p, score3_function_value): Likewise.
      	* config/score/score-protos.h (score_function_value): Likewise.
      	* config/score/score7.h (score7_return_in_memory): Update prototype.
      	(score7_in_small_data_p, score7_function_value): Likewise.
      	* config/score/score.c (TARGET_PROMOTE_PROTOTYPES): Constify.
      	(score_return_in_memory, score_pass_by_reference): Constify arguments.
      	(score_output_mi_thunk, score_function_prologue): Don't return a value.
      	(score_function_epilogue, score_in_small_data_p): Likewise.
      	(score_option_override, score_asm_trampoline_template): Likewise.
      	(score_trampoline_init, score_print_operand): Likewise.
      	(score_print_operand_address, score_prologue): Likewise.
      	(score_epilogue, score_call, score_call_value): Likewise.
      	(score_movsicc, score_movdi, score_zero_extract_andi): Likewise.
      	(score_function_arg_advance): Likewise. Make static.
      	(score_asm_file_end): Mark parameter value with ATTRIBUTE_UNUSED.
      	(score_function_arg, score_legitimate_address_p): Make static.
      	(score_function_value): Mark parameter func with ATTRIBUTE_UNUSED.
      	* config/score/score.h (REGNO_REG_CLASS): Cast value to enum reg_class.
      	* config/score/score-conv.h (UIMM_IN_RANGE, SIMM_IN_RANGE):
      	Allow (W) == HOST_BITS_PER_WIDE_INT.
      
      From-SVN: r166807
      Joern Rennecke committed
    • arc.c: Delete pasto. · 19cf9bde
      	* config/arc/arc.c: Delete pasto.
      	* config/pa/pa.c (pa_function_arg_boundary): Add missing comparison.
      
      From-SVN: r166806
      Nathan Froyd committed
    • mn10300.h (PREFERRED_RELOAD_CLASS, [...]): Remove. · f2831cc9
      	* config/mn10300/mn10300.h (PREFERRED_RELOAD_CLASS,
      	PREFERRED_OUTPUT_RELOAD_CLASS): Remove.
      	* config/mn10300/mn10300.c (TARGET_PREFERRED_RELOAD_CLASS,
      	TARGET_PREFERRED_OUTPUT_RELOAD_CLASS): Define.
      	(mn10300_preferred_reload_class,
      	mn10300_preferred_output_reload_class): New functions.
      
      From-SVN: r166805
      Anatoly Sokolov committed
    • gensupport.c (MNEMONIC_ATTR_NAME, [...]): New macros. · 64aad689
      2010-11-16  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
      
      	* gensupport.c (MNEMONIC_ATTR_NAME, MNEMONIC_HTAB_SIZE): New
      	macros.
      	(htab_eq_string, add_mnemonic_string, gen_mnemonic_setattr)
      	(mnemonic_htab_callback, gen_mnemonic_attr): New functions.
      	(init_rtx_reader_args_cb): Invoke gen_mnemonic_attr.
      
      From-SVN: r166804
      Andreas Krebbel committed
    • builtins.c (std_gimplify_va_arg_expr): Use targetm.calls.function_arg_boundary. · c2ed6cf8
      	* builtins.c (std_gimplify_va_arg_expr): Use
      	targetm.calls.function_arg_boundary.
      	* function.c (assign_parms, locate_and_pad_parm): Likewise.
      	* calls.c (struct arg_data): Update comment.
      	* defaults.h (FUNCTION_ARG_BOUNDARY): Delete.
      	* target.def (function_arg_boundary): Define.
      	* targhooks.h (default_function_arg_boundary): Declare.
      	* targhooks.c (default_function_arg_boundary): Define.
      	* doc/tm.texi.in (FUNCTION_ARG_PADDING): Use
      	TARGET_FUNCTION_ARG_BOUNDARY.
      	(FUNCTION_ARG_BOUNDARY): Delete.
      	(TARGET_FUNCTION_ARG_BOUNDARY): New.
      	* doc/tm.texi: Regenerate.
      	* system.h (FUNCTION_ARG_BOUNDARY): Poison.
      	* config/arc/arc.h (FUNCTION_ARG_BOUNDARY): Delete.
      	* config/arc/arc.c (arc_function_arg_boundary): Define.
      	(TARGET_FUNCTION_ARG_BOUNDARY): Define.
      	* config/arm/arm.h (FUNCTION_ARG_BOUNDARY): Delete.
      	* config/arm/arm-protos.h (arm_needs_doubleword_align): Delete.
      	* config/arm/arm.c (arm_needs_doubleword_align): Make static.
      	(arm_function_arg_boundary): Define.
      	(TARGET_FUNCTION_ARG_BOUNDARY): Define.
      	* config/frv/frv.h (FUNCTION_ARG_BOUNDARY): Delete.
      	* config/frv/frv-protos.h (frv_function_arg_boundary): Delete.
      	* config/frv/frv.c (frv_function_arg_boundary): Make static.
      	(TARGET_FUNCTION_ARG_BOUNDARY): Define.
      	* config/i386/i386.h (FUNCTION_ARG_BOUNDARY): Delete.
      	* config/i386/i386-protos.h (ix86_function_arg_boundary): Delete.
      	* config/i386/i386.c (ix86_function_arg_boundary): Make static.
      	(ix86_compat_function_arg_boundary): Take and return unsigned int.
      	(TARGET_FUNCTION_ARG_BOUNDARY): Define.
      	* config/ia64/ia64.h (FUNCTION_ARG_BOUNDARY): Delete.
      	* config/ia64/ia64-protos.h (ia64_function_arg_boundary): Delete.
      	* config/ia64/ia64.c (ia64_function_arg_boundary): Make static.
      	(TARGET_FUNCTION_ARG_BOUNDARY): Define.
      	* config/m32c/m32c.h (FUNCTION_ARG_BOUNDARY): Delete.
      	* config/m32c/m32c.c (m32c_function_arg_boundary): Define.
      	(TARGET_FUNCTION_ARG_BOUNDARY): Define.
      	* config/m32r/m32r.h (FUNCTION_ARG_BOUNDARY): Delete.
      	* config/mcore/mcore.h (FUNCTION_ARG_BOUNDARY): Delete.
      	* config/mcore/mcore.c (mcore_function_arg_boundary): Define.
      	(TARGET_FUNCTION_ARG_BOUNDARY): Define.
      	* config/mips/mips.h (FUNCTION_ARG_BOUNDARY): Delete.
      	* config/mips/mips-protos.h (mips_function_arg_boundary): Delete.
      	* config/mips/mips.c (mips_function_arg_boundary): Make static.
      	(TARGET_FUNCTION_ARG_BOUNDARY): Define.
      	* config/pa/pa.h (FUNCTION_ARG_BOUNDARY): Delete.
      	* config/pa/pa.c (pa_function_arg_boundary): Define.
      	(TARGET_FUNCTION_ARG_BOUNDARY): Define.
      	* config/picochip/picochip.h (FUNCTION_ARG_BOUNDARY): Delete.
      	* config/picochip/picochip-protos.h
      	(picochip_get_function_arg_boundary): Delete.
      	* config/picochip/picochip.c (picochip_get_function_arg_boundary):
      	Rename to...
      	(picochip_function_arg_boundary): ...this.  Make static.
      	(picochip_function_arg, picochip_arg_partial_bytes): Adjust.
      	(picochip_arg_advance): Adjust.
      	(TARGET_FUNCTION_ARG_BOUNDARY): Define.
      	* config/rs6000/rs6000.h (FUNCTION_ARG_BOUNDARY): Delete.
      	* config/rs6000/rs6000-protos.h (function_arg_boundary): Delete.
      	* config/rs6000/rs6000.c (function_arg_boundary): Rename to...
      	(rs6000_function_arg_boundary): ...this.  Make static.
      	(rs6000_parm_start, rs6000_gimplify_va_arg): Adjust.
      	(TARGET_FUNCTION_ARG_BOUNDARY): Define.
      	* config/rx/rx.h (FUNCTION_ARG_BOUNDARY): Delete.
      	* config/rx/rx.c (rx_function_arg_boundary): Define.
      	(TARGET_FUNCTION_ARG_BOUNDARY): Define.
      	* config/sparc/sparc.h (FUNCTION_ARG_BOUNDARY): Delete.
      	* config/sparc/sparc.c (sparc_function_arg_boundary): Define.
      	(TARGET_FUNCTION_ARG_BOUNDARY): Define.
      	* config/xtensa/xtensa.h (FUNCTION_ARG_BOUNDARY): Delete.
      	* config/xtensa/xtensa-protos.h (function_arg_boundary): Delete.
      	* config/xtensa/xtensa.c (function_arg_boundary): Rename to...
      	(xtensa_function_arg_boundary): ...this.  Make static.
      	(TARGET_FUNCTION_ARG_BOUNDARY): Define.
      
      From-SVN: r166803
      Nathan Froyd committed
    • expr.c (alignment_for_piecewise_move): New function. · d824aea2
      	* expr.c (alignment_for_piecewise_move): New function.
      	(widest_int_mode_for_size): New function.
      	(move_by_pieces, move_by_pieces_ninsns): Call them.
      	(can_store_by_pieces, store_by_pieces_1): Likewise.
      
      From-SVN: r166802
      Nathan Froyd committed
    • gcc.c (char_p): Define. · 69d540bd
      	* gcc.c (char_p): Define.  Define a VEC of it.
      	(n_linker_options, n_assembler_options, n_preprocessor_options):
      	Delete.
      	(linker_options, assembler_options, preprocessor_options): Convert
      	to a VEC.
      	(add_preprocessor_option): Adjust.
      	(add_assembler_option): Adjust.
      	(add_linker_option): Adjust.
      	(do_specs_vec): New function.
      	(do_spec_1): Call it.  Adjust for new types.
      
      From-SVN: r166801
      Nathan Froyd committed
    • Makefile.in (bitmap.o, [...]): Update dependencies. · 8e65c286
      	* Makefile.in (bitmap.o, ebitmap.o, et-forest.o): Update
      	dependencies.
      	(sreal.o, statistics.o, stringpool.o): Likewise.
      
      From-SVN: r166800
      Nathan Froyd committed
    • re PR tree-optimization/44545 (internal compiler error: in remove_unreachable_handlers, at tree-eh) · 6b03de57
      2010-11-16  Richard Guenther  <rguenther@suse.de>
      
      	PR tree-optimization/44545
      	* tree-ssa-reassoc.c (linearize_expr_tree): Possibly throwing
      	statements are not reassociatable.
      	(reassociate_bb): Likewise.
      
      	* gcc.dg/pr44545.c: New testcase.
      
      From-SVN: r166799
      Richard Guenther committed
    • re PR rtl-optimization/46366 (gcc.target/i386/pr45352-2.c failed) · d61c4867
              PR rtl-optimization/46366
              * gcc.target/i386/pr45352-2.c: Silence warnings by using appropriate
              casts.
      
      From-SVN: r166798
      Andrey Belevantsev committed
    • bitmap.c: Delete unnecessary includes. · 338ae1c1
      	* bitmap.c: Delete unnecessary includes.
      	* ebitmap.c: Likewise.
      	* et-forest.c: Likewise.
      	* sreal.c: Likewise.
      	* statistics.c: Likewise.
      	* stringpool.c: Likewise.
      	* double-int.c: Add comment for inclusion of tm.h.
      
      From-SVN: r166797
      Nathan Froyd committed
    • tree-ssa-sccvn.c (visit_unary_op): Rename to ... · 2262707f
      2010-11-16  Richard Guenther  <rguenther@suse.de>
      
      	* tree-ssa-sccvn.c (visit_unary_op): Rename to ...
      	(visit_nary_op): ... this.
      	(visit_binary_op): Remove.
      	(visit_use): Adjust and handle GIMPLE_TERNARY_RHS.
      
      	* gcc.dg/tree-ssa/ssa-fre-30.c: New testcase.
      
      From-SVN: r166795
      Richard Guenther committed
    • re PR middle-end/45172 (internal compiler error: verify_flow_info failed) · 05613877
      2010-11-16  Richard Guenther  <rguenther@suse.de>
      
      	PR middle-end/45172
      	* tree-eh.c (cleanup_empty_eh_unsplit): Avoid creating duplicate
      	edges.
      
      	* gfortran.dg/gomp/pr45172.f90: New testcase.
      
      From-SVN: r166794
      Richard Guenther committed
    • rx.c (rx_is_ms_bitfield_layout): Return false if the record is packed. · 27128fc3
      	* config/rx/rx.c (rx_is_ms_bitfield_layout): Return false if the
      	record is packed.
      
      	* gcc.target/rx/pack.c: New test.
      
      From-SVN: r166793
      Nick Clifton committed
    • fold-const.c (operand_equal_for_comparison_p): Handle FMA_EXPR... · 180ed1b2
      	* fold-const.c (operand_equal_for_comparison_p): Handle FMA_EXPR,
      	WIDEN_MULT_PLUS_EXPR, WIDEN_MULT_MINUS_EXPR, VEC_COND_EXPR,
      	DOT_PROD_EXPR.
      
      From-SVN: r166792
      Richard Henderson committed
    • builtin-math-2.c: Split out fma tests... · 3ca35fbd
      	* gcc.dg/torture/builtin-math-2.c: Split out fma tests...
      	* gcc.dg/torture/builtin-math-8.c: ... here.  New file.
      	Use builtin_constant_p rather than scanning for builtin name.
      
      From-SVN: r166791
      Richard Henderson committed
    • mn10300.md (fmasf4, [...]): Rename from fmaddsf4, fmsubsf4, fnmaddsf4, fnmsubsf4 respectively. · 93f9a911
              * config/mn10300/mn10300.md (fmasf4, fmssf4, fnmasf4, fnmssf4): Rename
              from fmaddsf4, fmsubsf4, fnmaddsf4, fnmsubsf4 respectively.  Use
              fma rtx_code.
      
      From-SVN: r166790
      Richard Henderson committed
    • frv.md (fmasf4, fmssf4): Rename from *muladdsf4 and *mulsubsf4 respectively. · be2fbfb6
              * config/frv/frv.md (fmasf4, fmssf4): Rename from *muladdsf4
              and *mulsubsf4 respectively.  Use fma rtx_code.
      
      From-SVN: r166789
      Richard Henderson committed