Commits on Dec 14, 2011
  1. config: Do not force runpath entries unless necessary

    richlowe committed Dec 14, 2011
    Sun patched their GCC3 to force /lib:/usr/lib:/usr/sfw/lib into the runpath, in
    that order, such that /usr/sfw libraries did not take precedence over system
    libraries, but nevertheless libgcc did not need a specific -R entry to be added
    to the command line when building.
    This has caused us nothing but trouble when patching it forward, since suddenly
    we need our _own_ prefix in thre too, and it must beat /usr/sfw, and because
    it's using -R it means that LD_RUN_PATH doesn't function, and because it's
    unexpected it causes confusion for 3rd party software.
    This change only uses -R to force the runpath in the BSD compat environment, as
    GCC upstream does, leaving the sole artifact of Sun's change being the addition
    of /lib to the default library search path. (-YP)
Commits on Nov 21, 2011
  1. Revert "[HACK] builtins: Add -Wno-vastart-last-param to disable va_st…

    richlowe committed Nov 18, 2011
    …art arg warning"
    This reverts commit d90aac2.
Commits on Jun 27, 2011
  1. [HACK] libstdc++: Force atomic builtin checks to use sparc v8

    richlowe committed Jun 22, 2011
    This in effect forces libstdc++ to refuse to use the atomic builtins
    unless they're going to work across a more sensible range of CPU
    configurations.  Without this hack libstdc++ detects that they're
    present with the default cpu (presumably v9, even 32bit) and instead
    fails at link-time for non-v9 code.
Commits on Jun 21, 2011
  1. * gcc/config/sparc/sparc.h (MASK_NO_INTEGER_LDD_STD,

    jsm28 committed with richlowe May 19, 2005
    	(TARGET_SWITCHES): Define -mno-integer-ldd-std option.
    	* gcc/doc/invoke.texi (-mno-integer-std-ldd): Document.
    	* gcc/config/sparc/sparc.c (save_regs, restore_regs,
    	sparc_splitdi_legitimate, sparc_flat_save_restore): Check
    	* gcc/config/sparc/ (movdi_insn_sp32_v9, movdi_insn_sp32):
    	Disable unless TARGET_INTEGER_LDD_STD.
    	(movdi_insn_sp32_v9_nolddstd, movdi_insn_sp32_nolddstd): New
    	patterns if !TARGET_INTEGER_LDD_STD.
    	(define_peephole2): Disable use of widen_memory_access unless
    git-svn-id: svn+ssh:// 138bc75d-0d04-0410-961f-82ee72b054a4
        	* gcc/doc/invoke.texi: Correct typos in previous change.
        	* gcc/config/sparc/ (movdi_insn_sp32_v9_nolddstd,
        	movdi_insn_sp32_nolddstd): Give # alternatives length 2.
        	* gcc/config/sparc.c (save_regs, restore_regs,
        	sparc_flat_save_restore): Revert previous changes.
        	(legitimate_address_p): Do not allow REG+REG addressing for DImode
        git-svn-id: svn+ssh:// 138bc75d-0d04-0410-961f-82ee72b054a4
Commits on May 15, 2011
  1. 2009-10-09 Neil Vachharajani <>

    nvachhar committed with richlowe Oct 10, 2009
           * libcpp/directives.c (DIRECTIVE_TABLE): Remove DEPRECATED from ident and
           * gcc/doc/cpp.texi (Other Directives): Do not list #ident and #sccs as
    git-svn-id: svn+ssh:// 138bc75d-0d04-0410-961f-82ee72b054a4
  2. PR debug/42278

    jakub committed with richlowe May 12, 2010
    	* dwarf2out.c (base_type_die): Don't add name attribute here.
    	(modified_type_die): Instead of sizetype use
    	its underlying original type.  If a DW_TAG_base_type doesn't
    	have name added, add __unknown__.
    	(dwarf2out_imported_module_or_decl_1): Don't call base_type_die,
    	always call force_type_die instead.
    git-svn-id: svn+ssh:// 138bc75d-0d04-0410-961f-82ee72b054a4
Commits on May 14, 2011
  1. * (gcc_cv_as_cfi_directive) [i?86-*-solaris*]:

    ro committed with richlowe Mar 1, 2010
    	Disable cfi directives unless GCC and gas agree on using read-only
    	.eh_frame sections for 64-bit.
    	* configure: Regenerate.
    git-svn-id: svn+ssh:// 138bc75d-0d04-0410-961f-82ee72b054a4
  2. [HACK] builtins: Add -Wno-vastart-last-param to disable va_start arg …

    richlowe committed Apr 17, 2011
    In various places we get warned that the second argument to va_start() is not
    the last formal parameter, in all cases it actually is.  No warning was
    producid in 3.4.3.  Add a hacky toggle so the warning can be disabled.
  3. * g++.old-deja/g++.mike/eh16.C: Rename err to e.

    ro committed with richlowe Jan 29, 2010
    	* g++.old-deja/g++.mike/eh17.C: Likewise.
    	* g++.old-deja/g++.mike/p5571.C: Likewise.
    git-svn-id: svn+ssh:// 138bc75d-0d04-0410-961f-82ee72b054a4
  4. gcc.dg/save-args-1.c: Add a cheesy test for -msave-args

    richlowe committed Apr 10, 2011
    Build a simple main-like function and make sure we see the movq to store
    the pointer argument to the stack.
  5. 2006-04-06 Carlos O'Donell <>

    carlos committed with richlowe Apr 7, 2006
    	* gcc/testsuite/gcc.dg/pragma-re-4.c: New test.
    	* gcc/c-pragma.c (init_pragma) : Call c_register_pragma_with_expansion
    	for pragma redefine_extname.
    git-svn-id: svn+ssh:// 138bc75d-0d04-0410-961f-82ee72b054a4
  6. * gcc/dwarf2.h (DW_AT_SUN_amd64_parmdump): New.

    jsm28 committed with richlowe Jun 29, 2005
    	* gcc/dwarf2out.c (gen_subprogram_die): Add this attribute.
    	* gcc/doc/invoke.texi (-msave-args): New x86-64 option.
    	* gcc/config/i386/i386.h (MASK_SAVE_ARGS, TARGET_SAVE_ARGS): New.
    	(TARGET_SWITCHES): Add -msave-args.
    	* gcc/config/i386/i386.c (struct ix86_frame): Add nmsave_args and
    	(pro_epilogue_adjust_stack): Declare.
    	(ix86_nsaved_args): New.
    	(override_options, ix86_can_use_return_insn_p,
    	ix86_frame_pointer_required, ix86_compute_frame_layout,
    	ix86_emit_save_regs, ix86_emit_save_regs_using_mov,
    	ix86_expand_prologue, ix86_expand_epilogue): Handle -msave-args.
    git-svn-id: svn+ssh:// 138bc75d-0d04-0410-961f-82ee72b054a4
  7. * gcc/common.opt (fconstant-pools): New.

    jsm28 committed with richlowe May 20, 2005
    	* gcc/doc/invoke.texi (-fno-constant-pools): Document.
    	* gcc/flags.h (flag_constant_pools): New.
    	* gcc/opts.c (common_handle_option): Handle OPT_fconstant_pools.
    	* gcc/toplev.c (flag_constant_pools): New.
    	* gcc/varasm.c (force_const_mem): Return NULL_RTX for
    	* gcc/reload.c (find_reloads): Do not try reloading a constant
    	from a constant pool if -fno-constant-pools.
    git-svn-id: svn+ssh:// 138bc75d-0d04-0410-961f-82ee72b054a4
  8. i386: Rename padding0 -> padding05

    richlowe committed May 14, 2011
    Ease the merge of msave-args (by using a crappy variable name, but we
    can fix that later.)
  9. 2005-05-05 Michael Pogue <>

    jsm28 committed with richlowe May 4, 2005
                Joseph S. Myers  <>
    	* gcc/common.opt (-fdwarf2-indirect-strings): New option.
    	* gcc/doc/invoke.texi (-fdwarf2-indirect-strings): Document.
    	* gcc/flags.h (flag_dwarf2_indirect_strings): New.
    	* gcc/toplev.c (flag_dwarf2_indirect_strings): New.
    	* gcc/opts.c (common_handle_option): Handle
    	* gcc/dwarf2out.c (AT_string_form): Check
    	* gcc/testsuite/gcc.dg/debug/dwarf2/dwarf-strp-1.c: New test.
    git-svn-id: svn+ssh:// 138bc75d-0d04-0410-961f-82ee72b054a4
  10. * gcc/varasm.c (assemble_alias): Return early if

    jsm28 committed with richlowe Apr 22, 2005
    	TREE_ASM_WRITTEN (decl).
    	* gcc/testsuite/gcc.dg/weak/weak-13.c: New test.
    git-svn-id: svn+ssh:// 138bc75d-0d04-0410-961f-82ee72b054a4
  11. * gcc/cp/g++spec.c (lang_specific_driver): Add a -R option if

    jsm28 committed with richlowe Nov 17, 2004
    	-lstdc++ is added.
    	* gcc/cp/ (g++spec.o): Define LIBDIR.
    	* gcc/config/i386/t-sol2-10 (MULTILIB_DIRNAMES,
    	MULTILIB_OSDIRNAMES): Use amd64 instead of 64.
    	* gcc/config/i386/i386.c (optimization_options): Use
    	* gcc/config/i386/sol2-10.h (SUBTARGET_OPTIMIZATION_OPTIONS):
    	(TARGET_SUBTARGET_DEFAULT): Don't include
    git-svn-id: svn+ssh:// 138bc75d-0d04-0410-961f-82ee72b054a4
  12. Revert:

    mmitchel committed with richlowe Oct 12, 2004
    	* gcc/config/i386/sol2-10.h (LIBGCC_SPEC): Add support for -nolibgcc.
    	* gcc/config.gcc: Do not build crt1.o, crti.o, crtn.o, gcrt1.o.
    	* gcc/fixinc/inclhack.def (solaris_stdio_tag): Add bypass.
    git-svn-id: svn+ssh:// 138bc75d-0d04-0410-961f-82ee72b054a4
  13. Revert:

    mmitchel committed with richlowe Sep 27, 2004
    	2004-09-24  Mark Mitchell <>
    	* gcc/config/sol2-c.c (cmn_err_flag_specs): Add "#"
    	(cmn_err_char_table): Likewise.
    	(solaris_format_types): Likewise.
    	* gcc/testsuite/gcc.dg/format/cmn-err-1.c: Add "#" tests.
    git-svn-id: svn+ssh:// 138bc75d-0d04-0410-961f-82ee72b054a4
  14. * gcc/config/i386/sol2-10.h (LIBGCC_SPEC): Add support for -nolibgcc.

    mmitchel committed with richlowe Sep 24, 2004
    	* gcc/config/sol2-c.c (cmn_err_flag_specs): Add "#"
    	(cmn_err_char_table): Likewise.
    	(solaris_format_types): Likewise.
    	* gcc/testsuite/gcc.dg/format/cmn-err-1.c: Add "#" tests.
    git-svn-id: svn+ssh:// 138bc75d-0d04-0410-961f-82ee72b054a4
  15. * gcc/config/i386/sol2.h (ASM_OUTPUT_CALL): Use print_operand.

    mmitchel committed with richlowe Sep 23, 2004
    	* gcc/config/sparc/sol2.h (ASM_OUTPUT_CALL): Likewise.
    	* gcc/sol2-c.c (cmn_err_char_table): Add "p".
    	* gcc/dwarf2out.c (scope_die_for): If the containing scope is a
    	TRANSLATION_UNIT_DECL, consider it to be a global.
    	* gcc/fixinc/inclhack.def (solaris_longlong): New test.
    	(sun_auth_proto): Avoid modifying headers from Solaris 2.8 or
    	* gcc/fixinc/fixincl.x: Regenerated.
    	* gcc/testsuite/lib/gcc-dg.exp (dg-forbid-option): New function.
    	* gcc/testsuite/lib/target-supports.exp
    	(check_visibility_available): Really test the compiler.
    	* gcc/testsuite/g++.dg/abi/bitfield3.C: Use dg-forbid-option -m64.
    	* gcc/testsuite/g++.dg/abi/bitfield8.C: Likewise.
    	* gcc/testsuite/g++.dg/abi/dtor1.C: Likewise.
    	* gcc/testsuite/g++.dg/abi/empty10.C: Likewise.
    	* gcc/testsuite/g++.dg/abi/empty7.C: Likewise.
    	* gcc/testsuite/g++.dg/abi/empty9.C: Likewise.
    	* gcc/testsuite/g++.dg/abi/layout3.C: Likewise.
    	* gcc/testsuite/g++.dg/abi/layout4.C: Likewise.
    	* gcc/testsuite/g++.dg/abi/thunk1.C: Likewise.
    	* gcc/testsuite/g++.dg/abi/thunk2.C: Likewise.
    	* gcc/testsuite/g++.dg/abi/vbase11.C: Likewise.
    	* gcc/testsuite/g++.dg/abi/vthunk2.C: Likewise.
    	* gcc/testsuite/g++.dg/abi/vthunk3.C: Likewise.
    	* gcc/testsuite/g++.dg/ext/attrib8.C: Likewise.
    	* gcc/testsuite/g++.dg/opt/langbranch2.C: Likewise.
    	* gcc/testsuite/g++.dg/opt/reg-stack4.C: Likewise.
    	* gcc/testsuite/g++.old-deja/g++.ext/attrib1.C: Likewise.
    	* gcc/testsuite/g++.old-deja/g++.ext/attrib2.C: Likewise.
    	* gcc/testsuite/g++.old-deja/g++.ext/attrib3.C: Likewise.
    	* gcc/testsuite/g++.old-deja/g++.other/store-expr1.C: Likewise.
    	* gcc/testsuite/g++.old-deja/g++.other/store-expr2.C: Likewise.
    	* gcc/testsuite/gcc.dg/20000609-1.c: Likewise.
    	* gcc/testsuite/gcc.dg/20000720-1.c: Likewise.
    	* gcc/testsuite/gcc.dg/20011107-1.c: Likewise.
    	* gcc/testsuite/gcc.dg/20011119-1.c: Likewise.
    	* gcc/testsuite/gcc.dg/20020108-1.c: Likewise.
    	* gcc/testsuite/gcc.dg/20020122-2.c: Likewise.
    	* gcc/testsuite/gcc.dg/20020122-3.c: Likewise.
    	* gcc/testsuite/gcc.dg/20020201-3.c: Likewise.
    	* gcc/testsuite/gcc.dg/20020206-1.c: Likewise.
    	* gcc/testsuite/gcc.dg/20020218-1.c: Likewise.
    	* gcc/testsuite/gcc.dg/20020310-1.c: Likewise.
    	* gcc/testsuite/gcc.dg/20020411-1.c: Likewise.
    	* gcc/testsuite/gcc.dg/20020418-2.c: Likewise.
    	* gcc/testsuite/gcc.dg/20020426-1.c: Likewise.
    	* gcc/testsuite/gcc.dg/20020426-2.c: Likewise.
    	* gcc/testsuite/gcc.dg/20020517-1.c: Likewise.
    	* gcc/testsuite/gcc.dg/20020523-1.c: Likewise.
    	* gcc/testsuite/gcc.dg/20020523-2.c: Likewise.
    	* gcc/testsuite/gcc.dg/20020729-1.c: Likewise.
    	* gcc/testsuite/gcc.dg/20030204-1.c: Likewise.
    	* gcc/testsuite/gcc.dg/20030826-2.c: Likewise.
    	* gcc/testsuite/gcc.dg/20030926-1.c: Likewise.
    	* gcc/testsuite/gcc.dg/20031202-1.c: Likewise.
    	* gcc/testsuite/gcc.dg/980312-1.c: Likewise.
    	* gcc/testsuite/gcc.dg/980313-1.c: Likewise.
    	* gcc/testsuite/gcc.dg/990117-1.c: Likewise.
    	* gcc/testsuite/gcc.dg/990424-1.c: Likewise.
    	* gcc/testsuite/gcc.dg/990524-1.c: Likewise.
    	* gcc/testsuite/gcc.dg/991230-1.c: Likewise.
    	* gcc/testsuite/gcc.dg/const-elim-1.c: Likewise.
    	* gcc/testsuite/gcc.dg/i386-387-1.c: Likewise.
    	* gcc/testsuite/gcc.dg/i386-387-2.c: Likewise.
    	* gcc/testsuite/gcc.dg/i386-387-3.c: Likewise.
    	* gcc/testsuite/gcc.dg/i386-387-4.c: Likewise.
    	* gcc/testsuite/gcc.dg/i386-387-5.c: Likewise.
    	* gcc/testsuite/gcc.dg/i386-387-6.c: Likewise.
    	* gcc/testsuite/gcc.dg/i386-asm-1.c: Likewise.
    	* gcc/testsuite/gcc.dg/i386-bitfield1.c: Likewise.
    	* gcc/testsuite/gcc.dg/i386-bitfield2.c: Likewise.
    	* gcc/testsuite/gcc.dg/i386-loop-1.c: Likewise.
    	* gcc/testsuite/gcc.dg/i386-loop-2.c: Likewise.
    	* gcc/testsuite/gcc.dg/i386-loop-3.c: Likewise.
    	* gcc/testsuite/gcc.dg/i386-pentium4-not-mull.c: Likewise.
    	* gcc/testsuite/gcc.dg/i386-pic-1.c: Likewise.
    	* gcc/testsuite/gcc.dg/i386-regparm.c: Likewise.
    	* gcc/testsuite/gcc.dg/i386-signbit-1.c: Likewise.
    	* gcc/testsuite/gcc.dg/i386-signbit-2.c: Likewise.
    	* gcc/testsuite/gcc.dg/i386-signbit-3.c: Likewise.
    	* gcc/testsuite/gcc.dg/i386-sse-2.c: Likewise.
    	* gcc/testsuite/gcc.dg/i386-sse-5.c: Likewise.
    	* gcc/testsuite/gcc.dg/i386-sse-8.c: Likewise.
    	* gcc/testsuite/gcc.dg/i386-unroll-1.c: Likewise.
    	* gcc/testsuite/gcc.dg/tls/opt-1.c: Likewise.
    	* gcc/testsuite/gcc.dg/tls/opt-2.c: Likewise.
    	* gcc/testsuite/gcc.dg/unroll-1.c: Likewise.
    	* gcc/testsuite/gcc.misc-tests/i386-pf-3dno-1.c: Likewise.
    	* gcc/testsuite/gcc.misc-tests/i386-pf-athlon-1.c: Likewise.
    	* gcc/testsuite/gcc.misc-tests/i386-pf-none-1.c: Likewise.
    	* gcc/testsuite/gcc.misc-tests/i386-pf-sse-1.c: Likewise.
    	* gcc/testsuite/gcc.dg/tls/alias-1.c: Use dg-require-visibility.
    	* gcc/testsuite/gcc.c-torture/execute/20010129-1.x: Do not use
    	-mtune=i686 when -m64 is specified.
    	* gcc/testsuite/g++.dg/eh/badalloc1.C: Robustify.
    	* libstdc++-v3/testsuite/27_io/basic_stream/extractors_arithmetic/char/ XFAIL on all Solaris targets.
    	* gcc/c-decl.c (implicitly_declare): Call
    	(builtin_function): Call maybe_apply_renaming_pragma for all
    	global variables and functions.
    	* gcc/testsuite/gcc.dg/pragma-re-3.c: New test.
    	2004-06-20  Zack Weinberg  <>
    	* gcc/c-common.h (has_c_linkage): New interface.
    	* gcc/c-cppbuiltin.c (maybe_apply_renaming_pragma): Rewrite
    	according to clarified semantics.  Always recognize, but do not
    	necessarily execute.
    	* gcc/c-decl.c (builtin_function): Don't call make_decl_rtl.
    	* gcc/c-objc-common.c (has_c_linkage): Stub implementation.
    	* gcc/cp/except.c (nothrow_libfn_p): Look at DECL_NAME, not
    	* config/sol2-c.c (solaris_pragma_align): Allow #pragma align after
    	the first declaration.
    	* config/i386/sol2-10.h (SUBTARGET_OVERRIDE_OPTIONS): Re-enable
    	asynchronous unwind tables by default for 64-bit.
    	* gcc.dg/pragma-align-2.c: Test for #pragma align after the
    	definition of y16.
    	* c-pragma.c (maybe_apply_pending_pragma_weaks): Mark the new decl
    	as weak.
    	* (c-objc-common.o): Update dependencies.
    	* config/sol2-c.c (solaris_register_pragmas): Use
    	* config/sol2.h (HANDLE_PRAGMA_PACK_WITH_EXPANSION): Define.
    	* doc/extend.texi (Solaris Pragmas): Mention macro expansion
    	for #pragma align.
    	* c-objc-common.c: Include "c-pragma.h".
    	(c_objc_common_finish_file): Call maybe_apply_pending_pragma_weaks.
    	* c-pragma.c (maybe_apply_pending_pragma_weaks): New function.
    	(c_register_pragma): Update call to cpp_register_pragma.
    	(c_register_pragma_with_expansion): New function.
    	(init_pragma): Honor HANDLE_PRAGMA_PACK_WITH_EXPANSION.
    	* c-pragma.h (c_register_pragma_with_expansion)
    	(maybe_apply_pending_pragma_weaks): New prototypes.
    	* cpplib.c (struct pragma_entry): Add allow_expansion.
    	(insert_pragma_entry): Take allow_expansion flag.
    	(cpp_register_pragma): Likewise.
    	(_cpp_init_internal_pragmas): Update calls to cpp_register_pragma.
    	(do_pragma): Honor allow_expansion.
    	* cpplib.h (cpp_register_pragma): Update prototype.
    	* (cp/decl2.c): Update dependencies.
    	* decl2.c (finish_file): Call maybe_apply_pending_pragma_weaks.
    	* gcc.dg/pragma-align-2.c: Test macro expansion.
    	* gcc.dg/pragma-align.c: Fix abort on -m64.
    	* gcc.dg/pragma-pack-2.c: New test.
    	* config/i386/sol2-10.h (LINK_ARCH64_SPEC_BASE)
    	(LINK_ARCH_SPEC): Define.
    	* config/i386/t-sol2-10: Define MULTILIB_OSDIRNAMES.
    	(EXTRA_MULTILIB_PARTS): Remove crti.o, crtn.o, crt1.o, gcrt1.o.
    	* config.gcc (i[34567]86-*-solaris2*): Define TARGET_GNU_LD.
    	* config/sol2-c.c, config/sol2.c: Replace %< and %> with "'".
    	* config/i386/sol2.h (ASM_PREFERRED_EH_DATA_FORMAT): Handle 64-bit.
    	* config/i386/sol2-10.h (CRT_GET_RFIB_DATA): Redefine.
    	* config.gcc (i[34567]86-*-solaris2*): Set need_64bit_hwint.
    	* config/i386/t-sol2: Introduce multilib support.
    	* config/i386/sol2-10.h (MULTILIB_DEFAULTS): Define.
    	* config/i386/t-sol2-10: New file.
    	* config.gcc (i[34567]86-*-solaris2*): Use t-sol2-10.
    	* config/i386/i386.c (i386_solaris_elf_named_section): New function.
    	* config/i386/i386-protos.h (i386_solaris_elf_named_section): Add
    	* config/i386/sol2-10.h (TARGET_ASM_NAMED_SECTION): Redefine.
    	* config/i386/i386.c (override_options): Move
    	SUBTARGET_OVERRIDE_OPTIONS before defaulting flag_omit_frame_pointer.
    	* config.gcc (i[34567]86-*-solaris2*): Handle Solaris 2.10.
    	* config/i386/sol2-10.h: New file.
    	* config/i386/sol2.h (ASM_QUAD): Don't undefine for biarch targets.
    	* (c-format.o): Depend on c-format.h.
    	* c-format.h: New file.
    	(struct format_char_info): Add CHAIN member.
    	* c-format.c: Move some types and constants to c-format.h.
    	(format_type_error): Set to -1.
    	(struct function_format_info): Use an int for format_type.
    	(decode_format_type): Return an int.  Return format_type_error
    	on error.
    	(print_char_table, asm_fprintf_char_table, gcc_diag_char_table)
    	(gcc_diag_char_table, gcc_cdiag_char_table, gcc_cxxdiag_char_table)
    	(scan_char_table, time_char_table, monetary_char_table): Initialize
    	CHAIN to NULL.
    	(n_format_types): New variable.
    	(check_format_info_main): Handle CHAIN in format_char_info.
    	(handle_format_attribute): Handle TARGET_FORMAT_TYPES and
    	* config.gcc (i[34567]86-*-solaris2*, sparc64-*-solaris2*)
    	(sparc-*-solaris2*): Include config/t-sol2 and config/sol2-c.c.
    	* config/sol2-c.c: New file.
    	* config/t-sol2: New file.
    	* config/sol2.h (TARGET_N_FORMAT_TYPES, TARGET_FORMAT_TYPES): Define.
    	* config/sparc/elf.h, config/sparc/sp64-elf.h: Undefine
    	* doc/extend.texi (Target Format Checks): New section.
    	(Function Attributes): Mention it.
    	* doc/invoke.texi: Mention target format checks.
    	* doc/sourcebuild.texi: Mention target format checks.
    	* dc/tm.texi (Misc): Document TARGET_N_FORMAT_TYPES and
    	* gcc.dg/format/cmn-err-1.c: New test.
    	* config.gcc (i[34567]86-*-solaris2*, sparc64-*-solaris2*)
    	(sparc-*-solaris2*): Include sol2.o and sol2-protos.h.
    	* config/sol2-c.c: Include "tm.h", "tm_p.h", "toplev.h",
    	"cpplib.h", "c-pragma.h", "c-common.h".
    	(solaris_pragma_align, solaris_pragma_init, solaris_pragma_fini)
    	(solaris_register_pragmas): New functions.
    	* config/sol2-protos.h: New file.
    	* config/sol2.c: New file.
    	(solaris_pending_aligns, solaris_pending_inits)
    	(solaris_pending_finis): New variables.
    	* config/t-sol2 (sol2-c.o): Update dependencies.
    	(sol2.o): New rule.
    	* config/i386/i386.c (TARGET_INSERT_ATTRIBUTES): Define in terms of
    	(ix86_attribute_table): Include SUBTARGET_ATTRIBUTE_TABLE.
    	* config/i386/sol2.h (SUBTARGET_INSERT_ATTRIBUTES)
    	* config/sparc/elf.h (ASM_DECLARE_FUNCTION_SIZE): Redefine.
    	* config/sparc/sp64-elf.h (ASM_DECLARE_FUNCTION_SIZE): Redefine.
    	* config/sparc/sol2.h (SUBTARGET_INSERT_ATTRIBUTES)
    	* config/sparc/sparc.c (sparc_attribute_table): New.
    	(TARGET_INSERT_ATTRIBUTES): Define in terms of
    	is defined.
    	* doc/extend.texi (Solaris Pragmas): New section.
    	* testsuite/gcc.dg/pragma-align-2.c: New test.
    	* testsuite/gcc.dg/pragma-init-fini.c: New test.
    	* testsuite/gcc.dg/pragma-align.c: Change from compile to run.
    	Run on Solaris targets.
    	* config/i386/i386.c (override_options): Pick a 64-bit CPU
    	for the default tuning if TARGET_64BIT.
    git-svn-id: svn+ssh:// 138bc75d-0d04-0410-961f-82ee72b054a4
Commits on Apr 29, 2010
  1. Mark as release

    gccadmin committed Apr 29, 2010
    git-svn-id: svn+ssh:// 138bc75d-0d04-0410-961f-82ee72b054a4
  2. Mark ChangeLog

    gccadmin committed Apr 29, 2010
    git-svn-id: svn+ssh:// 138bc75d-0d04-0410-961f-82ee72b054a4
  3. Mark ChangeLog

    gccadmin committed Apr 29, 2010
    git-svn-id: svn+ssh:// 138bc75d-0d04-0410-961f-82ee72b054a4
  4. Mark ChangeLog

    gccadmin committed Apr 29, 2010
    git-svn-id: svn+ssh:// 138bc75d-0d04-0410-961f-82ee72b054a4
  5. Mark ChangeLog

    gccadmin committed Apr 29, 2010
    git-svn-id: svn+ssh:// 138bc75d-0d04-0410-961f-82ee72b054a4
  6. Mark ChangeLog

    gccadmin committed Apr 29, 2010
    git-svn-id: svn+ssh:// 138bc75d-0d04-0410-961f-82ee72b054a4
  7. Mark ChangeLog

    gccadmin committed Apr 29, 2010
    git-svn-id: svn+ssh:// 138bc75d-0d04-0410-961f-82ee72b054a4
  8. Mark ChangeLog

    gccadmin committed Apr 29, 2010
    git-svn-id: svn+ssh:// 138bc75d-0d04-0410-961f-82ee72b054a4
  9. Mark ChangeLog

    gccadmin committed Apr 29, 2010
    git-svn-id: svn+ssh:// 138bc75d-0d04-0410-961f-82ee72b054a4
  10. Mark ChangeLog

    gccadmin committed Apr 29, 2010
    git-svn-id: svn+ssh:// 138bc75d-0d04-0410-961f-82ee72b054a4
  11. Mark ChangeLog

    gccadmin committed Apr 29, 2010
    git-svn-id: svn+ssh:// 138bc75d-0d04-0410-961f-82ee72b054a4