Commit Graph

90578 Commits

Author SHA1 Message Date
Uros Bizjak cb0dee885c cpuid.h (__cpuid_count): New defines.
* config/i386/cpuid.h (__cpuid_count): New defines.
	* config/i386/driver-i386.c (struct cache_desc): New structure.
	(describe_cache): Use struct cache_desc to pass cache descriptions.
	(detect_l2_cache): Ditto. Rename from decode_l2_cache.
	(detect_caches_amd): Use struct cache_desc to describe caches.
	(decode_caches_intel): Use struct cache_desc to pass cache
	descriptions.  Update descriptions to match latest (rev -032,
	December 2007) CPUID documentation.  Do not check valid bit here.
	Check for Xeon MP value 0x49 problems.
	(detect_caches_cpuid2): New function, split from detect_caches_intel.
	Check valid bit before calling decode_caches_intel.  Detect number
	of times to repeat CPUID instruction.
	(detect_caches_cpuid4): New function.
	(detect_caches_intel): Depending on max_level, call
	detect_caches_cpuid2 or detect_caches_cpuid4.  Call detect_l2_cache
	only when other methods fail to provide valid L2 cache description.

From-SVN: r141064
2008-10-11 19:57:20 +02:00
John David Anglin e40375e0e2 re PR middle-end/37608 (libgcc2.c:1981: ICE: vector VEC(m em_ref_p,base) index domain error, in create_vop_ref_mapping_loop at tree-ssa-lo op-im.c:1519)
PR middle-end/37608
	* pa.md (call, call_value): Generate an rtx for register r4 and pass
	it to PIC call patterns.
	(call_symref_pic): Revise pattern to expose PIC register save.  Remove
	code generation and attributes from pattern.  Change peephole2 to split
	for noreturn case.  Revise split pattern for non noreturn case.
	(call_symref_64bit, call_reg_pic, call_reg_64bit, call_val_symref_pic,
	call_val_symref_64bit, call_val_reg_pic, call_val_reg_64bit): Likewise.
	* pa.c (attr_length_call): Simplify extraction of call rtx.  Add some
	asserts.

From-SVN: r141063
2008-10-11 15:54:27 +00:00
David Edelsohn e47911ce21 rs6000.md (aux_truncdfsf2): Remove TARGET_SINGLE_FLOAT.
* config/rs6000/rs6000.md (aux_truncdfsf2): Remove TARGET_SINGLE_FLOAT.
        (addsf3, subsf3, mulsf3 ! TARGET_POWERPC): Remove TARGET_SINGLE_FLOAT
        and fp_type.
        (divdf3): Reformat long line.

From-SVN: r141062
2008-10-11 11:28:36 -04:00
Michael J. Eager 0bb7b92ee9 rs6000.c (rs6000_parse_fpu_option): Interpret -mfpu options.
2008-10-11  Michael J. Eager  <eager@eagercon.com>

        * config/rs6000/rs6000.c (rs6000_parse_fpu_option): Interpret
        -mfpu options.
        (rs6000_handle_option): Process -mfpu options.
        * config/rs6000/rs6000.h: (TARGET_XILINX_FPU): New.
        (enum fpu_type_t): New.
        * config/rs6000/rs6000.md (attr fp_type): New.
        Include xfpu.md.
        (addsf3, subsf3, mulsf3, adddf3, subdf3, muldf3, trunctfdf2): Set
        fp_type.
        (floatsisf2): Remove TARGET_SINGLE_FPU condition.
        (floatdidf2): Add TARGET_SINGLE_FPU condition.
        * config/rs6000/rs6000.opt (-mfpu): New.
        (-mxilinx-fpu): New.
        * config/rs6000/sysv4.h: (DRIVER_SELF_SPECS): New.
        * config/rs6000/xfpu.h: New. Define TARGET_XILINX_FPU.
        * config/rs6000/xfpu.md: New. Define Xilinx pipeline.
        * gcc/config.gcc: powerpc-xilinx-eabi target: New.
        * gcc/doc/invoke.texi (RS/6000 and PowerPC Options): Add -mfpu option.

From-SVN: r141059
2008-10-11 09:33:04 -04:00
Paul Thomas 91a9632ca5 re PR fortran/37794 (Fortran module overloading regression)
2008-10-11  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/37794
	* module.c (check_for_ambiguous): Remove redundant code.

2008-10-11  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/37794
	* gfortran.dg/used_types_24.f90: New test.

From-SVN: r141057
2008-10-11 12:09:23 +00:00
Jakub Jelinek 506a7bc899 re PR target/35760 (ICE with complex types and -static on PPC darwin)
PR target/35760
	* config/rs6000/rs6000.c (rs6000_legitimize_address): Only create
	LO_SUM on Darwin if mode has just one unit.

	* gcc.c-torture/compile/pr35760.c: New test.

From-SVN: r141055
2008-10-11 10:55:43 +02:00
GCC Administrator 8d22015287 Daily bump.
From-SVN: r141053
2008-10-11 00:18:40 +00:00
H.J. Lu 35bb49450f re PR debug/37002 (No debug info on unreferenced parameters after stack alignment)
2008-10-10  H.J. Lu  <hongjiu.lu@intel.com>

	PR debug/37002
	* dwarf2out.c (mem_loc_descriptor): Use DRAP for vDRAP which
	has been optimized out.

From-SVN: r141049
2008-10-10 16:28:05 -07:00
Richard Sandiford dc3ba67180 sh.h (PREFERRED_RELOAD_CLASS): Test PIC_ADDR_P instead of PIC_DIRECT_ADDR_P.
gcc/
	* config/sh/sh.h (PREFERRED_RELOAD_CLASS): Test PIC_ADDR_P
	instead of PIC_DIRECT_ADDR_P.
	(SECONDARY_INPUT_RELOAD_CLASS): Likewise.
	(IS_LITERAL_OR_SYMBOLIC_S16_P, IS_LITERAL_OR_SYMBOLIC_U16_P): Delete.
	(IS_NON_EXPLICIT_CONSTANT_P): Don't test PIC_OFFSET_P.
	(PIC_OFFSET_P): Rename to...
	(PCREL_SYMOFF_P): ...this.
	(PIC_DIRECT_ADDR_P): Delete.
	(MOVI_SHORI_BASE_OPERAND_P): Check PCREL_SYMOFF_P instead of
	PIC_OFFSET_P.
	(OUTPUT_ADDR_CONST_EXTRA): Don't require unspecs to have a
	single argument.  Handle UNSPEC_EXTRACT_S16, UNSPEC_EXTRACT_U16,
	UNSPEC_SYMOFF and UNSPEC_PCREL_SYMOFF.
	* config/sh/sh.c (print_operand): Remove CONST handling.
	(unspec_caller_rtx_p): Rewrite to use split_const and check
	the operands of UNSPEC bases.
	(fixup_mova): Replace (unspec [(minus A B)] UNSPEC_PIC)
	with (unspec [A B] UNSPEC_SYMOFF).
	(nonpic_symbol_mentioned_p): Check for UNSPEC_SYMOFF and
	UNSPEC_PCREL_SYMOFF.
	(sh_secondary_reload): Test PIC_ADDR_P instead of PIC_DIRECT_ADDR_P.
	* config/sh/sh.md (UNSPEC_EXTRACT_S16): New unspec.
	(UNSPEC_EXTRACT_U16): Likewise.
	(UNSPEC_SYMOFF): Likewise.
	(UNSPEC_PCREL_SYMOFF): Likewise.
	(movsi_const): Use UNSPEC_EXTRACT_*16s to extract 16-bit portions
	of constants.
	(movsi_const_16bit): Likewise.
	(movdi_const, movdi_const_32bit, movdi_const_16bit): Likewise.
	(GOTaddr2picreg): Replace (unspec [(minus A (minus B pc))] UNSPEC_PIC)
	with (unspec [A B] UNSPEC_PCREL_SYMOFF).
	(sym_label2reg): Replace (minus (const (unspec [A] UNSPEC_PIC)) B)
	with (unspec [A B] UNSPEC_SYMOFF).
	(symPLT_label2reg): Replace (minus A (minus B pc)) with
	 (unspec [A B] PCREL_UNSPEC_SYMOFF).
	* config/sh/constraints.md (Css): Check for an UNSPEC_EXTRACT_S16.
	(Csu): Likewise UNSPEC_EXTRACT_U16.
	(Csy): Test PIC_ADDR_P instead of PIC_DIRECT_ADDR_P.
	(Cpg): Update after changes to IS_NON_EXPLICIT_CONSTANT_P.

From-SVN: r141046
2008-10-10 18:28:25 +00:00
Jakub Jelinek bbdf56821d re PR c++/37146 (Invalid types with COND_EXPR)
PR c++/37146
	* cp-gimplify.c (cp_genericize_r): Fix up bitfield operands of
	COND_EXPR.

	* g++.dg/torture/pr37146-1.C: New test.
	* g++.dg/torture/pr37146-2.C: New test.
	* g++.dg/expr/bitfield10.C: New test.

From-SVN: r141045
2008-10-10 20:22:17 +02:00
Stepan Kasal e14165f41a invoke.texi (Optimize Options): Fix typo in examples for loop strip mining and loop blocking.
2008-10-10  Stepan Kasal  <skasal@redhat.com>

	* gcc/doc/invoke.texi (Optimize Options): Fix typo in examples
	for loop strip mining and loop blocking.

From-SVN: r141042
2008-10-10 15:24:54 +00:00
Paolo Carlini 6cbdd6b258 24803.cc: Avoid uninitialized warnings.
2008-10-10  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/20_util/reference_wrapper/24803.cc: Avoid uninitialized
	warnings.

From-SVN: r141041
2008-10-10 14:58:48 +00:00
Paolo Carlini 4661c8fd43 system_error (native_category): Remove.
2008-10-10  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/std/system_error (native_category): Remove.
	(posix_category): Add.
	(error_code::error_code(_ErrorCodeEnum, typename enable_if<>:type*):
	Fix _M_cat initialization.
	(error_code::operator=(_ErrorCodeEnum)): Assign _M_cat too.
	(error_condition::_M_cat, error_condtion::operator=
	(_ErrorConditionEnum)): Implement resolution of DR 804.
	(error_condition::error_condition(_ErrorConditionEnum, typename
	enable_if<>:type*): Fix.
	(error_condition::clear, error_condition::assign): Implement.
	(operator==, operator!=): Fix uglification of parameters.
	(make_error_code, make_error_condition): Define in namespace
	posix_error.
	(operator<<(basic_ostream<>&, const error_code&)): Define here.
	* include/std/ostream (operator<<(basic_ostream<>&,
	const error_code&)): Do not define here.
	* testsuite/19_diagnostics/error_condition/cons/1.cc: New.	
	* testsuite/19_diagnostics/error_condition/operators/bool.cc: Likewise.
	* testsuite/19_diagnostics/error_condition/operators/bool_neg.cc:
	Likewise.
	* testsuite/19_diagnostics/error_condition/operators/equal.cc:
	Likewise.
	* testsuite/19_diagnostics/error_condition/operators/not_equal.cc:
	Likewise.
	* testsuite/19_diagnostics/error_code/cons/1.cc: Tweak.
	* testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Adjust
	dg-error line numbers.
	* testsuite/30_threads/unique_lock/locking/2.cc: Tweak.

	* testsuite/util/testsuite_error.h: Minor tweaks.
	* testsuite/util/testsuite_hooks.cc: Avoid uninitialized warning.

From-SVN: r141039
2008-10-10 12:39:01 +00:00
Chris Fairles 87ad508134 1.cc: Remove invalid check of uninitialized duration.
2008-10-10  Chris Fairles  <cfairles@gcc.gnu.org>

        * testsuite/20_util/duration/cons/1.cc: Remove invalid check of
        uninitialized duration.

From-SVN: r141038
2008-10-10 12:33:26 +00:00
Alexandre Oliva 09775c40fd trans-types.c (gfc_get_nodesc_array_type): Don't vary types depending on debug info.
* fortran/trans-types.c (gfc_get_nodesc_array_type): Don't
vary types depending on debug info.

From-SVN: r141021
2008-10-10 07:22:32 +00:00
Alexandre Oliva fd9fffd1e9 c-gimplify.c (c_genericize): Don't refer to DECL_ASSEMBLER_NAME before ensuring it's already computed.
* c-gimplify.c (c_genericize): Don't refer to DECL_ASSEMBLER_NAME
before ensuring it's already computed.

From-SVN: r141020
2008-10-10 07:20:30 +00:00
Jerry DeLisle 6d5d3adfbd 2008-10-08 Jerry DeLisle <jvdelisle@gcc.gnu.org
PR libfortran/37707
	* gfortran.dg/namelist_54.f90: Revise test, check a(3).

From-SVN: r141016
2008-10-10 02:10:14 +00:00
GCC Administrator 8e84988fe3 Daily bump.
From-SVN: r141014
2008-10-10 00:16:47 +00:00
Jakub Jelinek 2d18853048 re PR tree-optimization/37568 (ICE returning a struct)
PR c++/37568
	* semantics.c (finalize_nrv_r): Clear DECL_INITIAL instead of
	setting it to error_mark_node.

	* testsuite/libmudflap.c++/pass66-frag.cxx: New test.

From-SVN: r141010
2008-10-09 22:15:17 +02:00
Jakub Jelinek 1692ae7eda rtl.h (locator_eq): New decl.
* rtl.h (locator_eq): New decl.
	* cfglayout.c (locator_scope): New function.
	(insn_scope): Use it.
	(locator_eq): New function.
	(fixup_reorder_chain): Search for last insn in src bb
	that has locator set or first insn in dest bb.  Use
	locator_eq instead of == to compare locators.
	* cfgrtl.c (cfg_layout_merge_blocks): Likewise.
	* cfgcleanup.c (try_forward_edges): Use locator_eq instead of
	== to compare locators.

From-SVN: r141009
2008-10-09 22:04:10 +02:00
Thomas Koenig e81897731e re PR libfortran/37753 (Convert="BIG_ENDIAN" reverses character)
2008-10-09  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR libfortran/37753
	* io/transfer.c (unformatted_read):  CONVERT_NATIVE
	is the usual case.  Check for kind==1 for non-byte-reversing
	operation.
	(unformatted_write):  Likewise.

2008-10-09  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR libfortran/37753
	* gfortran.dg/convert_2.f90:  New test case.

From-SVN: r141008
2008-10-09 19:28:58 +00:00
Thomas Schwinge c0451df714 config.host: Fold `*-*-gnu*' cases into the Linux ones.
2008-10-08  Thomas Schwinge  <tschwinge@gnu.org>

        * config.host: Fold `*-*-gnu*' cases into the Linux ones.

From-SVN: r141004
2008-10-09 10:37:17 +00:00
Jakub Jelinek df96b05947 re PR middle-end/37774 (Alignment information is lost for ARRAY_REFs)
PR middle-end/37774
	* tree.h (get_object_alignment): Declare.
	* emit-rtl.c (set_mem_attributes_minus_bitpos): Call
	get_object_alignment if needed.
	* builtins.c (get_pointer_alignment): Move ADDR_EXPR operand handling
	to ...
	(get_object_alignment): ... here.  New function.  Try harder to
	determine alignment from get_inner_reference returned offset.

From-SVN: r141003
2008-10-09 10:17:08 +02:00
Jakub Jelinek cc2a64dd80 tree-ssa-live.c (remove_unused_locals): Mark all edge's goto_block as used.
* tree-ssa-live.c (remove_unused_locals): Mark all edge's goto_block
	as used.
	* gimple-low.c (lower_function_body, lower_gimple_return,
	lower_builtin_setjmp): Set gimple_block on the newly created stmts.
	* tree-cfg.c (make_cond_expr_edges, make_goto_expr_edges): Only set
	goto_block on edges if goto_locus is known.

From-SVN: r141002
2008-10-09 10:14:45 +02:00
Daniel Kraft a3d3c0f5fa re PR fortran/35723 (Can't use run-time array element in character declaration)
2008-10-09  Daniel Kraft  <d@domob.eu>

	PR fortran/35723
	* gfortran.h (gfc_suppress_error): Removed from header.
	(gfc_push_suppress_errors), (gfc_pop_suppress_errors): New methods.
	* array.c (gfc_array_size): Use new gfc_push/pop_suppress_errors
	instead of directly changing gfc_suppress_error.
	* intrinsic.c (gfc_intrinsic_func_interface): Ditto.
	(gfc_intrinsic_sub_interface): Ditto.
	* error.c (suppress_errors): Made static from `gfc_suppress_error'.
	(gfc_push_suppress_errors), (gfc_pop_suppress_errors): New methods.
	(gfc_notify_std), (gfc_error): Use new static name of global.
	* expr.c (check_arglist), (check_references): New methods.
	(check_restricted): Check arglists and references of EXPR_FUNCTIONs
	and EXPR_VARAIBALEs, respectively.  Allow PARAMETER symbols.

2008-10-09  Daniel Kraft  <d@domob.eu>

	PR fortran/35723
	* gfortran.dg/restricted_expression_1.f90: New test.
	* gfortran.dg/restricted_expression_2.f90: New test.
	* gfortran.dg/restricted_expression_3.f90: New test.

From-SVN: r141001
2008-10-09 09:28:22 +02:00
Jerry DeLisle cdb148c194 re PR libfortran/37707 (Namelist read of array of derived type incorrect)
2008-10-08  Jerry DeLisle  <jvdelisle@gcc.gnu.org

	PR libfortran/37707
	* gfortran.dg/namelist_54.f90: New test.

From-SVN: r140997
2008-10-09 04:14:48 +00:00
Jerry DeLisle af43ff01e1 Fix ChangeLog.
From-SVN: r140996
2008-10-09 04:09:19 +00:00
Jerry DeLisle 22a6009350 re PR libfortran/37707 (Namelist read of array of derived type incorrect)
2008-10-08  Jerry DeLisle  <jvdelisle@gcc.gnu.org

	PR libfortran/37707
	* io/list_read.c (nml_get_obj_data): If the first namelist object rank
	is greater than zero, call nml_object_read with the first object rather
	than the sub-object.

From-SVN: r140995
2008-10-09 04:02:35 +00:00
GCC Administrator e481f79556 Daily bump.
From-SVN: r140992
2008-10-09 00:16:42 +00:00
Uros Bizjak 8a332c1196 ggc-pr37574.c: Cleanup "vect" tree dump.
* gcc.dg/vect/ggc-pr37574.c: Cleanup "vect" tree dump.
	* gfortran.dg/intrinsic_optional_char_arg_1.f90: Cleanup
	"original" tree dump.

	* lib/gfortran-dg.exp (gfortran-dg-debug-runtest): Remove build
	file trivial.S.

From-SVN: r140989
2008-10-08 23:15:36 +02:00
Adam Nemet 9d92695c19 octeon-exts-2.c: Compile it with -meb.
* gcc.target/mips/octeon-exts-2.c: Compile it with -meb.
	* gcc.target/mips/octeon-exts-5.c: New test.
	* gcc.target/mips/octeon-bbit-3.c: Compile with -meb.  Add
	comment why this is necessary.

From-SVN: r140988
2008-10-08 21:05:43 +00:00
Jakub Jelinek 88b98d1a0c graphite.c (gloog): Don't call find_unreachable_blocks before delte_unreachable_blocks.
* graphite.c (gloog): Don't call find_unreachable_blocks
	before delte_unreachable_blocks.

From-SVN: r140987
2008-10-08 22:50:13 +02:00
Jakub Jelinek 7787b4aa9b cfgexpand.c (expand_gimple_cond): Convert also goto_block and goto_locus of true_edge into RTL locator.
* cfgexpand.c (expand_gimple_cond): Convert also goto_block and
	goto_locus of true_edge into RTL locator.

From-SVN: r140986
2008-10-08 22:49:23 +02:00
David Edelsohn 0c9e84247e * xstrdup.c: Include <sys/types.h> after "config.h"
From-SVN: r140979
2008-10-08 12:51:38 -04:00
Bob Walters 08bf5bb38b stl_vector.h (_Vector_base<>::_Vector_impl::_M_start, [...]): Use _Tp_alloc_type::pointer.
2008-10-08  Bob Walters  <bob.s.walters@gmail.com>

	* include/bits/stl_vector.h (_Vector_base<>::_Vector_impl::_M_start,
	_M_finish, _M_end_of_storage, _Vector_base<>::_M_allocate,
	_M_deallocate): Use _Tp_alloc_type::pointer.

From-SVN: r140977
2008-10-08 15:04:44 +00:00
Uros Bizjak b7f58d5d19 i386.md (*jcc_btdi_rex64): Clobber FLAGS_REG.
* config/i386/i386.md (*jcc_btdi_rex64): Clobber FLAGS_REG.
	(*jcc_btdi_mask_rex64): Ditto.
	(*jcc_btsi): Ditto.
	(*jcc_btsi_mask): Ditto.
	(*jcc_btsi_1): Ditto.
	(*jcc_btsi_mask_1): Ditto.

From-SVN: r140976
2008-10-08 17:03:55 +02:00
Paul Brook a7e8c6529f bpabi.h (ARM_FUNCTION_PROFILER): Define new EABI compatible profiler (__gnu_mcount_nc).
2008-10-08  Paul Brook  <paul@codesourcery.com>

	gcc/
	* config/arm/bpabi.h (ARM_FUNCTION_PROFILER): Define new EABI
	compatible profiler (__gnu_mcount_nc).
	(SUBTARGET_FRAME_POINTER_REQUIRED): Define.

From-SVN: r140974
2008-10-08 13:38:15 +00:00
H.J. Lu 54723b4623 i386.c (initial_ix86_tune_features): Add X86_TUNE_USE_VECTOR_FP_CONVERTS.
2008-10-08  H.J. Lu  <hongjiu.lu@intel.com>

	* config/i386/i386.c (initial_ix86_tune_features): Add
	X86_TUNE_USE_VECTOR_FP_CONVERTS.
	* config/i386/i386.h (ix86_tune_indices): Likewise.
	(TARGET_USE_VECTOR_FP_CONVERTS): New.

	* config/i386/i386.md: Check TARGET_USE_VECTOR_FP_CONVERTS
	instead of (TARGET_USE_VECTOR_CONVERTS || TARGET_GENERIC)
	for FP to FP splitters.

From-SVN: r140972
2008-10-08 03:37:02 -07:00
H.J. Lu ddd5eeb13c i386.md: Add missing gen_sse2_cvtdq2p to convert splitter.
2008-10-08  H.J. Lu  <hongjiu.lu@intel.com>

	* config/i386/i386.md: Add missing gen_sse2_cvtdq2p to convert
	splitter.

From-SVN: r140970
2008-10-08 02:43:33 -07:00
Jakub Jelinek 31e9ebaf7f re PR target/36635 (cc1 segfault from svn 137122)
PR target/36635
	PR target/37290
	PR rtl-optimization/37341
	* cse.c (cse_cc_succs): Add ORIG_BB argument, don't follow edges
	to ORIG_BB, pass through ORIG_BB recursively.
	(cse_condition_code_reg): Adjust caller.

	* gcc.c-torture/compile/pr37341.c: New test.

From-SVN: r140966
2008-10-08 10:12:25 +02:00
Kai Tietz a4a4f7755b sdbout.c (sdbout_one_type): Treat the value type CONST_DECL for enumerals.
2008-10-08  Kai Tietz  <kai.tietz@onevision.com>

        * sdbout.c (sdbout_one_type): Treat the value type
        CONST_DECL for enumerals.

From-SVN: r140964
2008-10-08 09:56:00 +02:00
H.J. Lu 1ffcdc0226 i386.md: Remove trailing white spaces.
2008-10-07  H.J. Lu  <hongjiu.lu@intel.com>

	* config/i386/i386.md: Remove trailing white spaces.

From-SVN: r140962
2008-10-07 22:08:04 -07:00
Kenneth Zadeck beb0c9cc78 re PR middle-end/37448 (cannot compile big function)
2008-10-07  Kenneth Zadeck <zadeck@naturalbridge.com>

	PR rtl-optimization/37448
	alloc_pool_desc (elt_size): New field.
	alloc_pool_desc (created, allocated, current, peak): Make unsigned
	long.
	output_info (count): Renamed total_created and made unsigned long.
	output_info (size): Renamed total_allocated and made unsigned long.
	alloc-pool.c (create_alloc_pool, empty_alloc_pool, pool_alloc,
	pool_free): Properly keep track of desc->size.
	(print_statistics, dump_alloc_pool_statistics): Enhance the
	printing of statistics to print the number of elements and to use
	unsigned longs.

From-SVN: r140960
2008-10-08 02:52:28 +00:00
GCC Administrator 8c6a9fb728 Daily bump.
From-SVN: r140958
2008-10-08 00:16:30 +00:00
Jakub Jelinek a1fd13d07b re PR middle-end/37576 (-v --help ICEs)
PR middle-end/37576
	* opts.h (CL_SAVE): Move up to flags range.
	(CL_PARAMS, CL_WARNING, CL_OPTIMIZATION, CL_TARGET,
	CL_COMMON): Renumber.
	(CL_MIN_OPTION_CLASS): Set to CL_PARAMS.
	* opts.c (common_handle_option): Revert last change.

From-SVN: r140955
2008-10-07 23:02:21 +02:00
H.J. Lu 7ab91c5fd6 i386-protos.h (ix86_schedule): New.
2008-10-07  H.J. Lu  <hongjiu.lu@intel.com>

	* config/i386/i386-protos.h (ix86_schedule): New.

	* config/i386/i386.c (ix86_schedule): New.
	(override_options): Add schedule to processor_alias_table.  Set
	ix86_schedule from the schedule field in processor_alias_table.
	(ix86_function_specific_save): Save ix86_schedule.
	(ix86_function_specific_restore): Restore ix86_schedule.

	* config/i386/i386.md (cpu): Map to ix86_schedule instead of
	ix86_tune.  Add none and remove i386, i486, pentium4, nocona
	and generic32.

	* config/i386/i386.opt: Add schedule.

	* config/i386/ppro.md: Remove generic32.

From-SVN: r140954
2008-10-07 14:00:36 -07:00
Simon Martin 16d5ffec52 re PR c/35437 (ICE with struct containing incomplete type)
gcc/

2008-10-07  Simon Martin  <simartin@users.sourceforge.net>
        
        PR c/35437
        * expr.c (count_type_elements): Handle ERROR_MARK.

gcc/testsuite/

2008-01-07  Simon Martin  <simartin@users.sourceforge.net>

        PR c/35437
        * gcc.dg/struct-parse-2.c: New test.
        * g++.dg/parse/struct-4.C: New test.

From-SVN: r140953
2008-10-07 20:56:53 +00:00
Steve Ellcey 3b14bb3928 * decl.c (start_cleanup_fn): Declare as inline.
From-SVN: r140952
2008-10-07 20:09:42 +00:00
Jakub Jelinek 7241571ec8 re PR middle-end/29609 (Even with -O0 -g gcc optimizes a goto away and I cannot debug)
PR debug/29609
	PR debug/36690
	PR debug/37616
	* basic-block.h (struct edge_def): Add goto_block field.
	* cfglayout.c (fixup_reorder_chain): Ensure that there is at least
	one insn with locus corresponding to edge's goto_locus if !optimize.
	* profile.c (branch_prob): Copy edge's goto_block.
	* cfgrtl.c (force_nonfallthru_and_redirect): Use goto_locus for
	emitted jumps.
	(cfg_layout_merge_blocks): Emit a nop with edge's goto_locus
	locator in between the merged basic blocks if !optimize and needed.
	* cfgexpand.c (expand_gimple_cond): Convert goto_block and
	goto_locus into RTL locator.  For unconditional jump use that
	locator for the jump insn.
	(expand_gimple_cond): Convert goto_block and goto_locus into
	RTL locator for all remaining edges.  For unconditional jump
	use that locator for the jump insn.
	* cfgcleanup.c (try_forward_edges): Avoid the optimization if
	there is more than one edge or insn locator along the forwarding
	edges and !optimize.  If there is just one, set e->goto_locus.
	* tree-cfg.c (make_cond_expr_edges, make_goto_expr_edges): Set also
	edge's goto_block.
	(move_block_to_fn): Adjust edge's goto_block.

	* gcc.dg/debug/pr29609-1.c: New test.
	* gcc.dg/debug/pr29609-2.c: New test.
	* gcc.dg/debug/pr36690-1.c: New test.
	* gcc.dg/debug/pr36690-2.c: New test.
	* gcc.dg/debug/pr36690-3.c: New test.
	* gcc.dg/debug/pr37616.c: New test.
	* gcc.dg/debug/dwarf2/pr29609-1.c: New test.
	* gcc.dg/debug/dwarf2/pr29609-2.c: New test.
	* gcc.dg/debug/dwarf2/pr36690-1.c: New test.
	* gcc.dg/debug/dwarf2/pr36690-2.c: New test.
	* gcc.dg/debug/dwarf2/pr36690-3.c: New test.
	* gcc.dg/debug/dwarf2/pr37616.c: New test.

From-SVN: r140948
2008-10-07 20:48:40 +02:00
H.J. Lu aee857a2f4 re PR middle-end/37731 (long long may not work correctly on 32bit host)
gcc/

2008-10-07  H.J. Lu  <hongjiu.lu@intel.com>

	PR middle-end/37731
	* expmed.c (expand_mult): Properly check DImode constant in
	CONST_DOUBLE.

gcc/testsuite/

2008-10-07  H.J. Lu  <hongjiu.lu@intel.com>

	PR middle-end/37731
	* gcc.dg/torture/pr37731-1.c: New.
	* gcc.dg/torture/pr37731-2.c: Likewise.

From-SVN: r140947
2008-10-07 11:45:56 -07:00