1. 02 Nov, 2006 5 commits
  2. 01 Nov, 2006 28 commits
    • invoke.texi: Add cpu_type power6x (RS/6000 and PowerPC Options): Add -mmfpgpr. · 44cd321e
      	* doc/invoke.texi: Add cpu_type power6x
      	(RS/6000 and PowerPC Options): Add -mmfpgpr.
      	* config.gcc: Add cpu_type power6x.
      	* configure.ac: Add test for mf{t,f}gpr instructions.
      	(HAVE_AS_MFPGPR): New.
      	* config.in: Regenerate.
      	* configure: Regenerate.
      	* config/rs6000/aix52.h (ASM_CPU_SPEC): Add power6x.
      	* config/rs6000/rs6000.md (define_attr "type"): Add insert_dword,
      	shift,trap,var_shift_rotate,cntlz,exts, var_delayed_compare, mffgpr
      	and mftgpr attributes.
      	(define_attr "cpu"): Add power6.
      	Change instruction sequences to use new attributes.
      	(floatsidf2,fix_truncdfsi2): use TARGET_MFPGPR.
      	(fix_truncdfsi2_mfpgpr): New.
      	(floatsidf_ppc64_mfpgpr): New.
      	(floatsidf_ppc64): Added !TARGET_MFPGPR condition.
      	(movdf_hardfloat64_mfpgpr,movdi_mfpgpr): New.
      	(movdf_hardfloat64): Added !TARGET_MFPGPR condition.
      	(movdi_internal64): Added !TARGET_MFPGPR and related conditions.
      	(fix_truncdfsi2): Use gpc_reg_operand constraint.
      	* config/rs6000/{6xx.md,power4.md,8540.md,603.md,mpc.md,
      	7xx.md,rios2.md,7450.md,440.md,rios1.md,rs64.md,power5.md,40x.md}:
      	Add descriptions for insert_dword, shift,trap,var_shift_rotate,
      	cntlz,exts and var_delayed_compare.
      	* config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Define
      	_ARCH_PWR6X, if features enabled.
      	* config/rs6000/rs6000.opt (mmfpgpr): New.
      	* config/rs6000/rs6000.c (rs6000_align_branch_targets): New variable.
      	(cached_can_issue_more): New variable.
      	(processor_costs): Add power6_cost.
      	(rs6000_sched_init): New function.
      	(is_dispatch_slot_restricted): Deleted.
      	(set_to_load_agen): New function.
      	(is_load_insn,is_store_insn): New functions.
      	(adjacent_mem_locations): New function.
      	(insn_must_be_first_in_group): New function.
      	(insn_must_be_last_in_group): New function.
      	(rs6000_sched_reorder): New function.
      	(rs6000_sched_reorder2): New function.
      	(TARGET_SCHED_INIT,TARGET_SCHED_REORDER,
      	TARGET_SCHED_REORDER2): Define.
      	(processor_target_table): Use PROCESSOR_POWER6 for power6.
      	Add power6x. Add MASK_MFPGPR for power6x.
      	(POWERPC_MASKS): Add MASK_MFPGPR.
      	(rs6000_override_options): Set rs6000_always_hint to false
      	for power6.  Set rs6000_align_branch_targets. Replace
      	rs6000_sched_groups check with rs6000_align_branch_targets.
      	Use PROCESSOR_POWER6.
      	(last_scheduled_insn): New variable.
      	(load_store_pendulum): New variable.
      	(rs6000_variable_issue): Set last_scheduled_insn and
      	cached_can_issue_more.
      	(rs6000_adjust_cost): Add power6 cost adjustments.
      	(rs6000_adjust_priority): Replace is_dispatch_slot_restricted
      	with insn_must_be_first_in_group. Add power6 priority adjustments.
      	(rs6000_issue_rate): Add CPU_POWER6.
      	(insn_terminates_group_p): Use insn_must_be_{first,last}_in_group.
      	* config/rs6000/rs6000.h (processor_type): Add PROCESSOR_POWER6.
      	(TARGET_MFPGPR): New.
      	(SECONDARY_MEMORY_NEEDED): Use TARGET_MFPGPR.
      	(ASM_CPU_SPEC): Add power6x.
      	(SECONDARY_MEMORY_NEEDED): Added mode!=DFmode and mode!=DImode
      	conditions.
      	* config/rs6000/power6.md: New file.
      
      
      Co-Authored-By: Peter Bergner <bergner@vnet.ibm.com>
      
      From-SVN: r118396
      Pete Steinmetz committed
    • fold-mod-1.c: Match the leading 0x for the hexadecimal value. · 293be7fd
      	* gcc.dg/fold-mod-1.c: Match the leading 0x for the
      	hexadecimal value.
      	* gcc.dg/tree-prof/val-prof-2.c: Likewise.
      	* gcc.dg/pr14796-2.c: Likewise.
      
      From-SVN: r118394
      Adam Nemet committed
    • tree-pretty-print.c (dump_generic_node): Use HOST_WIDE_INT_PRINT to print high and low parts. · 38b97f4d
      	* tree-pretty-print.c (dump_generic_node) <INTEGER_CST>: Use
      	HOST_WIDE_INT_PRINT to print high and low parts.  Use
      	HOST_BITS_PER_WIDE_INT for the width of HOST_WIDE_INT.  When
      	printing a hexadecimal number prefix it with 0x.
      
      From-SVN: r118393
      Adam Nemet committed
    • re PR bootstrap/28400 (install-driver is missing $(exeext) from gcc-$(version)) · f03668f6
      2006-11-01  Chris Johns <chris@contemporary.net.au>
      
              PR bootstrap/28400
              * Makefile.in (install-driver): Use exeext when installing
              $target-gcc-$version.
      
      From-SVN: r118392
      Chris Johns committed
    • Location.java: New file. · 444dd946
              * gnu/gcj/jvmti/Location.java: New file.
              * gnu/gcj/jvmti/BreakpointManager.java: New file.
              * jvmti.cc (_Jv_JVMTI_SetBreakpoint): New function.
              (_Jv_JVMTI_ClearBreakpoint): New function.
              (_Jv_JVMTI_Interface): Define SetBreakpoint and ClearBreakpoint.
              * sources.am: Regenerated.
              * Makefile.in: Regenerated.
      
      From-SVN: r118391
      Keith Seitz committed
    • c-common.c (flag_cpp0x): New. · 5812d1e4
      2006-11-01	Douglas Gregor <doug.gregor@gmail.com>
      
      	* c-common.c (flag_cpp0x): New.
      	* c-common.h (flag_cpp0x): New.
      	* c-cppbuiltin.c (c_cpp_builtins): If C++0x extensions are
      	supported, define __GXX_EXPERIMENTAL_CPP0X__.
      	* c-opts.c (set_std_cxx0x): New.
      	(c_common_handle_option): Handle -std=c++0x, -std=gnu++0x.
      	* c.opt (std=c++0x): Document.
      	(std=gnu++0x): Ditto.
      	* doc/cpp.texi: Document __GXX_EXPERIMENTAL_CPP0X__.
      	* doc/invoke.texi: Document -std=c++0x, -std=gnu++0x.
      
      From-SVN: r118389
      Doug Gregor committed
    • c-common.c (flag_cpp0x): New. · 966541e3
      2006-11-01	Douglas Gregor <doug.gregor@gmail.com>
      
      	* c-common.c (flag_cpp0x): New.
      	* c-common.h (flag_cpp0x): New.
      	* c-cppbuiltin.c (c_cpp_builtins): If C++0x extensions are
      	supported, define __GXX_EXPERIMENTAL_CPP0X__.
      	* c-opts.c (set_std_cxx0x): New.
      	(c_common_handle_option): Handle -std=c++0x, -std=gnu++0x.
      	* c.opt (std=c++0x): Document.
      	(std=gnu++0x): Ditto.
      	* doc/cpp.texi: Document __GXX_EXPERIMENTAL_CPP0X__.
      	* doc/invoke.texi: Document -std=c++0x, -std=gnu++0x.
      
      From-SVN: r118386
      Doug Gregor committed
    • cpplib.h (enum c_lang): Add CLK_GNUCXX0X and CLK_CXX0X for experimental C++0x mode. · dfafdaa6
      2006-11-01	Douglas Gregor <doug.gregor@gmail.com>
      
      	* include/cpplib.h (enum c_lang): Add CLK_GNUCXX0X and CLK_CXX0X
      	for experimental C++0x mode.
      	* init.c (lang_defaults): Add defaults for C++0x modes. C++0x has
      	adopted the preprocessor changes introduced in C99.
      
      From-SVN: r118385
      Douglas Gregor committed
    • * tests/base/sys/socket.h: Update. · b4d24eaa
      From-SVN: r118384
      Steve Ellcey committed
    • 20061101-1.c: New test. · 36c90fd2
      	* gcc.c-torture/execute/20061101-1.c: New test.
      
      From-SVN: r118377
      Eric Botcazou committed
    • Fix asm string. · cb953056
      From-SVN: r118374
      Eric Botcazou committed
    • i386.c (ix86_expand_rint): Fix issues with signed zeros. · 7e35fcb3
      2006-11-01  Richard Guenther  <rguenther@suse.de>
      
      	* config/i386/i386.c (ix86_expand_rint): Fix issues with
      	signed zeros.
      	(ix86_expand_floorceildf_32): Likewise.
      	(ix86_expand_floorceil): Likewise.
      	(ix86_expand_trunc): Likewise.
      
      	* testsuite/gcc.target/i386/fpprec-1.c: New testcase.
      
      From-SVN: r118373
      Richard Guenther committed
    • invoke.texi (-fkeep-inline-functions): Change "GNU C" to "GNU C89". · 4a574196
      2006-10-31  Andrew Pinski  <pinskia@gmail.com>
      
              * doc/invoke.texi (-fkeep-inline-functions): Change "GNU C"
              to "GNU C89".
      
      From-SVN: r118372
      Andrew Pinski committed
    • target.h (targetm.cxx.use_atexit_for_cxa_atexit): New target hook. · 97388150
      	* target.h (targetm.cxx.use_atexit_for_cxa_atexit): New target
      	hook.
      	* target-def.h: (TARGET_CXX_USE_ATEXIT_FOR_CXA_ATEXIT): Define
      	default.
      	* config/i386/mingw32.h (TARGET_CXX_USE_ATEXIT_FOR_CXA_ATEXIT):
      	Override default.
      	* doc/tm.texi (TARGET_CXX_USE_ATEXIT_FOR_CXA_ATEXIT): Document.
      	* configure.ac (use_cxa_atexit): As a special case, don't test
      	for libc definition of __cxa_atexit on mingw32
      	* configure: Regenerate.
      	* config.gcc (i[34567]86-pc-mingw32): Default to
      	enable__cxa_atexit=yes.
      
      cp
      
      	* decl.c (get_atexit_node): Reference atexit, not __cxa_exit.
      	if targetm.cxx.use_atexit_for cxa_atexit.
      	(start_cleanup_fn): Likewise.
      	(register_dtor_fn): Likewise.
      
      From-SVN: r118371
      Danny Smith committed
    • Fix date on ChangeLog entry · d5523ce1
      From-SVN: r118367
      Geoffrey Keating committed
    • builtins.def (gamma, lgamma): Use ATTR_MATHFN_FPROUNDING_STORE. · e35ae5fe
      	* builtins.def (gamma, lgamma): Use ATTR_MATHFN_FPROUNDING_STORE.
      	
      testsuite:
      	* gcc.dg/torture/builtin-attr-1.c: Don't test gamma/lgamma.
      	* gcc.dg/torture/builtin-convert-1.c: Don't test lgamma.
      
      From-SVN: r118366
      Kaveh R. Ghazi committed
    • In gcc/: PR 23067 · 58182de3
      In gcc/:
      	PR 23067
      	* c-decl.c (start_struct): Don't create self-containing
      	structures.
      	* config/rs6000/rs6000.c (darwin_rs6000_special_round_type_align):
      	New.
      	* config/rs6000/rs6000-protos.h
      	(darwin_rs6000_special_round_type_align): New.
      	* config/rs6000/darwin.h (ADJUST_FIELD_ALIGN): Rewrite.
      	(ROUND_TYPE_ALIGN): Use darwin_rs6000_special_round_type_align.
      In gcc/testsuite/:
      	PR 23067
      	* gcc.target/powerpc/darwin-abi-3.c: Remove XFAIL.
      	* gcc.target/powerpc/darwin-abi-6.c: Remove XFAIL.
      	* gcc.target/powerpc/darwin-abi-7.c: Remove XFAIL.
      	* gcc.target/powerpc/darwin-abi-8.c: Remove XFAIL.
      	* gcc.target/powerpc/darwin-abi-9.c: Remove XFAIL.
      	* gcc.target/powerpc/darwin-abi-10.c: Remove XFAIL.
      	* gcc.target/powerpc/darwin-abi-11.c: Remove XFAIL.
      In libobjc/:
      	* encoding.c (darwin_rs6000_special_round_type_align): New.
      In libffi/:
      	* src/powerpc/ffi_darwin.c (darwin_adjust_aggregate_sizes): New.
      	(ffi_prep_cif_machdep): Call darwin_adjust_aggregate_sizes for
      	Darwin.
      	* testsuite/libffi.call/nested_struct4.c: Remove Darwin XFAIL.
      	* testsuite/libffi.call/nested_struct6.c: Remove Darwin XFAIL.
      
      From-SVN: r118365
      Geoffrey Keating committed
    • builtin-bswap-1.c: New. · 0e7e09dc
      2006-10-31  Eric Christopher  <echristo@apple.com>
      	    Falk Hueffner  <falk@debian.org>
      
      	* gcc.dg/builtin-bswap-1.c: New.
      	* gcc.dg/builtin-bswap-2.c: New.
      	* gcc.dg/builtin-bswap-3.c: New.
      	* gcc.dg/builtin-bswap-4.c: New.
      	* gcc.dg/builtin-bswap-5.c: New.
      	* gcc.target/i386/builtin-bswap-1.c: New.
      
      Co-Authored-By: Falk Hueffner <falk@debian.org>
      
      From-SVN: r118364
      Eric Christopher committed
    • Add missing genopinit.c change for revision 118361. · 91053e6c
      From-SVN: r118363
      Geoffrey Keating committed
    • In gcc/: · e4305460
      	* toplev.c (compile_file): Call final_write_globals
      	even if there have been errors.
      In gcc/cp/:
      	* decl2.c (cp_write_global_declarations): Rename from
      	cp_finish_file.
      	* cp-lang.c (finish_file): Don't call cp_finish_file.
      	* cp-tree.h (cp_write_global_declarations): Rename from
      	cp_finish_file.
      	* cp-objcp-common.h (LANG_HOOKS_WRITE_GLOBALS): Define to
      	cp_write_global_declarations.
      
      From-SVN: r118362
      Geoffrey Keating committed
    • extend.texi (__builtin_bswap32): Document. · 167fa32c
      2006-09-07  Eric Christopher  <echristo@apple.com>
      	    Falk Hueffner  <falk@debian.org>
      
      	* doc/extend.texi (__builtin_bswap32): Document.
      	(__builtin_bswap64): Ditto.
      	* doc/libgcc.texi (bswapsi2): Document.
      	(bswapdi2): Ditto.
      	* doc/rtl.texi (bswap): Document.
      	* optabs.c (expand_unop): Don't widen a bswap.
      	(init_optabs): Init bswap. Set libfuncs explicitly
      	for bswapsi2 and bswapdi2.
      	* optabs.h (OTI_bswap): New.
      	(bswap_optab): Ditto.
      	* genopinit.c (optabs): Handle bswap_optab.
      	* tree.h (tree_index): Add TI_UINT32_TYPE and
      	TI_UINT64_TYPE.
      	(uint32_type_node): New.
      	(uint64_type_node): Ditto.
      	* tree.c (build_common_tree_nodes_2): Initialize
      	uint32_type_node and uint64_type_node.
      	* builtins.c (expand_builtin_bswap): New.
      	(expand_builtin): Call.
      	(fold_builtin_bswap): New.
      	(fold_builtin_1): Call.
      	* fold-const.c (tree_expr_nonnegative_p): Return true
      	for bswap.
      	* builtin-types.def (BT_UINT32): New.
      	(BT_UINT64): Ditto.
      	(BT_FN_UINT32_UINT32): Ditto.
      	(BT_FN_UINT64_UINT64): Ditto.
      	* builtins.def (BUILT_IN_BSWAP32): New.
      	(BUILT_IN_BSWAP64): Ditto.
      	* rtl.def (BSWAP): New.
      	* genattrtab.c (check_attr_value): New.
      	* libgcc2.c (__bswapSI2): New.
      	(__bswapDI2): Ditto.
      	* libgcc2.h (__bswapSI2): Declare.
      	(__bswapDI2): Ditto.
      	* mklibgcc.in (lib2funcs): Add _bswapsi2 and _bswapdi2.
      	* simplify-rtx.c (simplify_const_unary_operation): Return
      	0 for BSWAP.
      	* libgcc-std.ver (__bwapsi2): Add.
      	(__bswapdi2): Ditto.
      	* reload1.c (eliminate_regs_1): Add bswap.
      	(elimination_effects): Ditto.
      	* config/i386/i386.h (x86_bswap): New.
      	(TARGET_BSWAP): Use.
      	* config/i386/i386.c (x86_bswap): Set.
      
      Co-Authored-By: Falk Hueffner <falk@debian.org>
      
      From-SVN: r118361
      Eric Christopher committed
    • In gcc/: · 5880f14f
      	* coverage.c (coverage_checksum_string): Update comment.
      	* dwarf2out.c (switch_to_eh_frame_section): Update for removal
      	of get_file_function_name.
      	* cgraphunit.c (cgraph_build_static_cdtor): Update for rename
      	of get_file_function_name_long.
      	* tree.c (get_file_function_name): Rename from
      	get_file_function_name_long; improve comment; handle 'I' and 'D'
      	specially when the target has ctor/dtor support; remove special
      	handling for 'F'.
      	(get_file_function_name): Remove.
      	* tree.h (get_file_function_name): Rename from
              get_file_function_name_long.
      	(get_file_function_name): Remove prototype.
      In gcc/cp/:
      	* name-lookup.c (get_anonymous_namespace_name): New.
      	(push_namespace_with_attribs): Use get_anonymous_namespace_name.
      	* decl2.c (start_objects): Update for rename of
      	get_file_function_name_long.
      In gcc/fortran/:
      	* trans-decl.c (gfc_generate_constructors): Update for removal
      	of get_file_function_name.
      
      From-SVN: r118360
      Geoffrey Keating committed
    • darwin.h (PREFERRED_DEBUGGING_TYPE): Remove. · 4d04fa05
      	* config/i386/darwin.h (PREFERRED_DEBUGGING_TYPE): Remove.
      	* config/darwin.h (PREFERRED_DEBUGGING_TYPE): Set to DWARF2_DEBUG.
      
      	* config/darwin.h (LINK_COMMAND_SPEC): Don't do weird things with -@.
      	Call dsymutil when compiling and linking one or more source files
      	in one step.
      
      From-SVN: r118359
      Geoffrey Keating committed
    • re PR target/15834 (NO_IMPLICIT_EXTERN_C should be gotten rid of) · 7eb0a43c
      	PR 15834
      	* config/darwin.h (NO_IMPLICIT_EXTERN_C): Define.
      
      From-SVN: r118358
      Geoffrey Keating committed
    • re PR c/16622 ([C99] extern inline is handled wrong in C99 mode) · 0a052b16
      	* c-decl.c (grokdeclarator): Don't set DECL_EXTERNAL on
      	inline static functions in c99 mode.
      
      	PR 16622
      	* doc/extend.texi (Inline): Update.
      	* c-tree.h (struct language_function): Remove field 'extern_inline'.
      	* c-decl.c (current_extern_inline): Delete.
      	(pop_scope): Adjust test for an undefined nested function.
      	Add warning about undeclared inline function.
      	(diagnose_mismatched_decls): Update comments.  Disallow overriding
      	of inline functions in a translation unit in C99.  Allow inline
      	declarations in C99 at any time.
      	(merge_decls): Boolize variables.  Handle C99 'extern inline'
      	semantics.
      	(grokdeclarator): Set DECL_EXTERNAL here for functions.  Handle
      	C99 inline semantics.
      	(start_function): Don't clear current_extern_inline.  Don't set
      	DECL_EXTERNAL.
      	(c_push_function_context): Don't push current_extern_inline.
      	(c_pop_function_context): Don't restore current_extern_inline.
      
      	PR 11377
      	* c-typeck.c (build_external_ref): Warn about static variables
      	used in extern inline functions.
      	* c-decl.c (start_decl): Warn about static variables declared
      	in extern inline functions.
      
      From-SVN: r118357
      Geoffrey Keating committed
    • re PR c/16622 ([C99] extern inline is handled wrong in C99 mode) · 71113fcd
      	* c-decl.c (grokdeclarator): Don't set DECL_EXTERNAL on
      	inline static functions in c99 mode.
      
      	PR 16622
      	* doc/extend.texi (Inline): Update.
      	* c-tree.h (struct language_function): Remove field 'extern_inline'.
      	* c-decl.c (current_extern_inline): Delete.
      	(pop_scope): Adjust test for an undefined nested function.
      	Add warning about undeclared inline function.
      	(diagnose_mismatched_decls): Update comments.  Disallow overriding
      	of inline functions in a translation unit in C99.  Allow inline
      	declarations in C99 at any time.
      	(merge_decls): Boolize variables.  Handle C99 'extern inline'
      	semantics.
      	(grokdeclarator): Set DECL_EXTERNAL here for functions.  Handle
      	C99 inline semantics.
      	(start_function): Don't clear current_extern_inline.  Don't set
      	DECL_EXTERNAL.
      	(c_push_function_context): Don't push current_extern_inline.
      	(c_pop_function_context): Don't restore current_extern_inline.
      
      	PR 11377
      	* c-typeck.c (build_external_ref): Warn about static variables
      	used in extern inline functions.
      	* c-decl.c (start_decl): Warn about static variables declared
      	in extern inline functions.
      
      From-SVN: r118356
      Geoffrey Keating committed
    • re PR middle-end/23470 (a*a (for floats) is not considered always postive (-ffast-math only)) · 682d0395
      	PR middle-end/23470
      	* tree.h (tree_expr_nonnegative_p): Return "bool" instead of "int".
      	* fold-const.c (tree_expr_nonnegative_p): Likewise.  Consider
      	pow(x,y) and powi(x,y) to be nonnegative if either x is nonnegative
      	or y is an even integer.
      
      	* gcc.dg/pr23470-1.c: New test case.
      
      From-SVN: r118355
      Roger Sayle committed
    • Daily bump. · a3a1ebb5
      From-SVN: r118353
      GCC Administrator committed
  3. 31 Oct, 2006 7 commits