Commit Graph

111191 Commits

Author SHA1 Message Date
Richard Guenther
6aeb8c9919 call.c (build_over_call): Instead of memcpy use an assignment of two MEM_REFs.
2011-08-12  Richard Guenther  <rguenther@suse.de>

	* call.c (build_over_call): Instead of memcpy use an
	assignment of two MEM_REFs.

From-SVN: r177691
2011-08-12 08:55:05 +00:00
Romain Geissler
f895fc2a0d install c-tree.h as a plugin header
From-SVN: r177690
2011-08-12 10:19:27 +02:00
Richard Sandiford
20fe71c256 arm.c (get_label_padding): New function.
gcc/
	* config/arm/arm.c (get_label_padding): New function.
	(create_fix_barrier, md_reorg): Likewise.

From-SVN: r177689
2011-08-12 07:59:09 +00:00
GCC Administrator
786eeca2bd Daily bump.
From-SVN: r177688
2011-08-12 00:18:22 +00:00
Uros Bizjak
88b590c512 re PR target/49781 ([x32] Unnecessary lea in x32 mode)
PR target/49781
	* config/i386/i386.md (*lea_5_zext): New.
	(*lea_6_zext): Ditto.
	* config/i386/predicates.md (const_32bit_mask): New predicate.
	(lea_address_operand): Reject AND.
	* config/i386/i386.c (ix86_decompose_address): Allow Dimode AND with
	const_32bit_mask immediate.
	(ix86_print_operand_address): Handle AND.
	(memory_address_length): Ditto.

From-SVN: r177683
2011-08-11 22:03:29 +02:00
Paolo Carlini
a4eeb82207 future: constexpr functions are implicitly inline.
2011-08-11  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/std/future: constexpr functions are implicitly inline.
	* include/std/chrono: Likewise.
	* include/std/complex: Likewise.
	* include/bits/move.h: Likewise.
	* include/bits/stl_pair.h: Likewise.

From-SVN: r177679
2011-08-11 17:53:05 +00:00
Romain Geissler
4309e92c98 plugin.def: Add event for finish_decl.
2011-08-11  Romain Geissler  <romain.geissler@gmail.com>
            Brian Hackett  <bhackett1024@gmail.com>

gcc/ChangeLog:

      * plugin.def: Add event for finish_decl.
      * plugin.c (register_callback, invoke_plugin_callbacks): Same.
      * c-decl.c (finish_decl): Invoke callbacks on above event.
      * doc/plugins.texi: Document above event.

gcc/cp/ChangeLog:

      * decl.c (cp_finish_decl): Invoke callbacks on finish_decl event.

gcc/testsuite/ChangeLog:

      * g++.dg/plugin/decl_plugin.c: New.
      * g++.dg/plugin/decl-plugin-test.C: New.
      * g++.dg/plugin/plugin.exp: Add above testcase.

Co-Authored-By: Brian Hackett <bhackett1024@gmail.com>

From-SVN: r177674
2011-08-11 11:57:38 -04:00
Richard Guenther
25aa059e63 tree-ssa-sccvn.c (vn_reference_lookup_3): Avoid redundant lookups, make looking through aggregate copies stronger.
2011-08-11  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-sccvn.c (vn_reference_lookup_3): Avoid redundant
	lookups, make looking through aggregate copies stronger.

	* g++.dg/tree-ssa/pr41186.C: Un-XFAIL.

From-SVN: r177672
2011-08-11 15:34:46 +00:00
Rainer Orth
3627ac1ad6 * Makefile.in (install-unwind_h): Remove destination file first.
From-SVN: r177670
2011-08-11 15:19:32 +00:00
Richard Henderson
6bfd73a621 re PR bootstrap/50018 (fixup_args_size_notes ICE breaks m68k-linux bootstrap)
PR bootstrap/50018
        * expr.c (fixup_args_size_notes): Accept and ignore normal calls.

From-SVN: r177669
2011-08-11 08:09:30 -07:00
Richard Guenther
022676dcde lto-cgraph.c (input_node): Use DECL_BUILT_IN.
2011-08-11  Richard Guenther  <rguenther@suse.de>

	* lto-cgraph.c (input_node): Use DECL_BUILT_IN.
	* tree-vrp.c (stmt_interesting_for_vrp): Likewise.
	(vrp_visit_stmt): Likewise.

From-SVN: r177668
2011-08-11 14:34:51 +00:00
Richard Guenther
8d2b04104d re PR middle-end/50040 (missed warning: ‘x.y’ is used uninitialized in this function)
2011-08-11  Richard Guenther  <rguenther@suse.de>

	PR middle-end/50040
	* gimplify.c (gimplify_modify_expr_complex_part): Mark the
	load of the other piece with TREE_NO_WARNING.
	* tree-flow.h (warn_uninit): Adjust prototype.
	* tree-ssa.c (warn_uninit): Take uninitialized SSA name,
	the base variable and the expression that is used separately.
	Properly query all TREE_NO_WARNING flags.
	(struct walk_data): Remove.
	(warn_uninitialized_var): Likewise.
	(warn_uninitialized_vars): Do not walk gimple pieces but simply
	look at all SSA uses of the statement.  Handle unused memory
	separately.
	* tree-ssa-uninit.c (warn_uninitialized_phi): Adjust.

	* g++.dg/warn/unit-1.C: Un-XFAIL.
	* gcc.dg/uninit-I.c: Likewise.

From-SVN: r177667
2011-08-11 14:28:36 +00:00
Michael Matz
0f8de04340 * gcc.dg/graphite/run-id-pr47593.c: Remove -m32.
From-SVN: r177666
2011-08-11 13:43:05 +00:00
Kazuhiro Inaoka
78926be115 rx.md (movsicc): Allow register to register transfers.
* config/rx/rx.md (movsicc): Allow register to register
	transfers.
	(*movsicc): Likewise.
	(*stcc): Restrict this pattern to EQ and NE compares.
	(*stcc_reg): New pattern.  Works for any comparison but only for
	register transfers.

From-SVN: r177665
2011-08-11 12:34:30 +00:00
Diego Novillo
c30f448beb Remove bogus ChangeLog edits.
From-SVN: r177662
2011-08-11 08:06:17 -04:00
Diego Novillo
b939365672 tree-streamer-out.c (lto_output_ts_decl_with_vis_tree_pointers): Call stream_write_tree instead of output_record_start.
* tree-streamer-out.c (lto_output_ts_decl_with_vis_tree_pointers):
	Call stream_write_tree instead of output_record_start.
	(lto_output_ts_binfo_tree_pointers): Likewise.

	* streamer-hooks.h (stream_write_tree): Move from tree-streamer.h.
	Convert it to a macro.
	(stream_read_tree): Likewise.

	* lto-streamer.h (lto_stream_as_builtin_p): Move ...
	* tree-streamer.h (lto_stream_as_builtin_p): ... here.

	* lto-streamer-in.c (lto_read_tree): Call lto_streamer_cache_append
	and tree_read_bitfields.
	* lto-streamer-out.c (lto_is_streamable): Move from lto-streamer.c
	(lto_write_tree): Call it.
	* lto-streamer.c (lto_is_streamable): Move to lto-streamer-out.c
	* streamer-hooks.h (struct streamer_hooks): Remove fields
	name, is_streamable and alloc_tree. Update all users.
	* tree-streamer-in.c (tree_read_bitfields): Factor out of ...
	(lto_materialize_tree): ... here.
	Handle CALL_EXPR codes.
	Remove call to lto_streamer_cache_append.
	* tree-streamer-out.c (lto_output_tree_header): Handle
	CALL_EXPR nodes.
	* tree-streamer.h (tree_read_bitfields): Declare.

	* Makefile.in (TREE_STREAMER_H): Add STREAMER_HOOKS_H.
	(gimple-streamer-in.o): Add dependency on TREE_STREAMER_H.
	* tree-streamer.h (stream_read_tree): New.  Replace all calls
	to lto_input_tree with it.
	(stream_write_tree): New.  Replace all calls to lto_output_tree,
	lto_output_tree_ref and lto_output_tree_or_ref with it.
	* lto-streamer-in.c (lto_read_tree): Inline code from
	lto_streamer_read_tree.
	(lto_input_tree): Move from tree-streamer-in.c.
	* lto-streamer-out.c (lto_output_tree_ref): Make static.
	Remove handling of NULL values for EXPR.
	Do not handle EXPRs that are not indexable.
	(lto_write_tree): Move from tree-streamer-out.c.
	Inline lto_streamer_write_tree.
	(lto_output_tree): Move from tree-streamer-out.c.
	If REF_P is true and EXPR is indexable, call lto_output_tree_ref.
	* lto-streamer.c (lto_record_common_node): Move to tree-streamer.c.
	(lto_preload_common_nodes): Likewise.
	Remove assertions and adjustments for nodes
	main_identifier_node, ptrdiff_type_node and fileptr_type_node.
	(lto_streamer_hooks_init): Set streamer_hooks.write_tree to
	lto_output_tree and streamer_hooks.read_tree to
	lto_input_tree.
	* lto-streamer.h (lto_input_tree): Declare.
	(lto_output_tree_ref): Remove.
	* streamer-hooks.h (struct streamer_hooks): Remove fields
	preload_common_nodes, indexable_with_decls_p,
	pack_value_fields, unpack_value_fields, output_tree_header and
	has_unique_integer_csts_p.
	Update all users.
	* tree-streamer-in.c (lto_materialize_tree): Make extern.
	(lto_input_tree_pointers): Likewise.
	(lto_read_tree): Move to lto-streamer-in.c.
	(lto_input_integer_cst): Make extern.
	(lto_get_pickled_tree): Likewise.
	(lto_get_builtin_tree): Likewise.
	(lto_input_tree): Move to lto-streamer-in.c.
	* tree-streamer-out.c (pack_value_fields): Make extern.
	(lto_output_tree_or_ref): Remove.  Replace all callers with
	calls to stream_write_tree.
	(lto_output_builtin_tree): Make extern.
	(lto_streamer_write_tree): Inline into lto_write_tree.
	(lto_output_tree_pointers): Make extern.
	(lto_output_tree_header): Likewise.
	(lto_output_integer_cst): Likewise.
	(lto_write_tree): Move to lto-streamer-out.c.
	(lto_output_tree): Likewise.
	* tree-streamer.c (lto_record_common_node): Move from
	lto-streamer.c
	(preload_common_nodes): Likewise.
	(lto_streamer_cache_create): Call it.
	* tree-streamer.h: Include streamer-hooks.h.
	(stream_write_tree): New.
	(stream_read_tree): New.
	(lto_input_tree): Remove.
	(lto_materialize_tree): Declare.
	(lto_input_tree_pointers): Declare.
	(lto_get_pickled_tree): Declare.
	(lto_get_builtin_tree): Declare.
	(lto_input_integer_cst): Declare.
	(lto_output_tree_header): Declare.
	(pack_value_fields): Declare.
	(lto_output_tree_pointers): Declare.
	(lto_output_integer_cst): Declare.
	(lto_output_builtin_tree): Declare.

From-SVN: r177661
2011-08-11 08:02:34 -04:00
Sergey Grechanik
cf596bc73f sel-sched-ir.c (get_seqno_of_a_pred): Rename to get_seqno_for_a_jump.
2011-08-11  Sergey Grechanik  <mouseentity@ispras.ru>

	* sel-sched-ir.c (get_seqno_of_a_pred): Rename to
	get_seqno_for_a_jump.  Update the caller.
	(get_seqno_by_succs): New.  Use it ...
	(get_seqno_for_a_jump): ... here to find a seqno if looking at
	predecessors was not sufficient.
	(get_seqno_by_preds): Include head in iteration range, exclude insn.

From-SVN: r177660
2011-08-11 08:01:54 -04:00
Diego Novillo
ae328e332b sel-sched-ir.c (invalidate_av_set): Remove the assert.
2011-08-11  Dmitry Melnik  <dm@ispras.ru>

	* sel-sched-ir.c (invalidate_av_set): Remove the assert.

From-SVN: r177659
2011-08-11 08:01:15 -04:00
Sergey Grechanik
ca31ca94f9 sel-sched-ir.c (has_dependence_note_reg_use): Call ds_full_merge only if producer writes to the register given by regno.
2011-08-11  Sergey Grechanik  <mouseentity@ispras.ru>

	* sel-sched-ir.c (has_dependence_note_reg_use): Call ds_full_merge
	only if producer writes to the register given by regno.

From-SVN: r177658
2011-08-11 15:55:11 +04:00
Sergey Grechanik
f089830723 sched-deps.c (sched_get_condition_with_rev): Rename to ...
2011-08-11  Sergey Grechanik  <mouseentity@ispras.ru>
	    Alexander Monakov  <amonakov@ispras.ru>

	* sched-deps.c (sched_get_condition_with_rev): Rename to ...
	(sched_get_condition_with_rev_uncached): ... this.  Factor out
	condition caching logic into ...
	(sched_get_condition_with_rev): ... this.  Reimplement.  Do not
	attempt to use cache for instructions with zero luid.
	(sched_analyze_insn): Use INSN_CACHED_COND instead of INSN_COND.
	* sched-int.h (INSN_COND): Rename to INSN_CACHED_COND.


Co-Authored-By: Alexander Monakov <amonakov@ispras.ru>

From-SVN: r177657
2011-08-11 15:53:51 +04:00
Sergey Grechanik
0d9439b07c sel-sched-ir.c (get_seqno_of_a_pred): Rename to get_seqno_for_a_jump.
2011-08-11  Sergey Grechanik  <mouseentity@ispras.ru>

	* sel-sched-ir.c (get_seqno_of_a_pred): Rename to
	get_seqno_for_a_jump.  Update the caller.
	(get_seqno_by_succs): New.  Use it ...
	(get_seqno_for_a_jump): ... here to find a seqno if looking at
	predecessors was not sufficient.
	(get_seqno_by_preds): Include head in iteration range, exclude insn.

From-SVN: r177656
2011-08-11 15:50:27 +04:00
Dmitry Melnik
5c416724e0 sel-sched-ir.c (invalidate_av_set): Remove the assert.
2011-08-11  Dmitry Melnik  <dm@ispras.ru>

	* sel-sched-ir.c (invalidate_av_set): Remove the assert.

From-SVN: r177655
2011-08-11 15:49:16 +04:00
Sergey Grechanik
cf3d58240b sel-sched-ir.h (register_unavailable_p): Declare.
2011-08-11  Sergey Grechanik  <mouseentity@ispras.ru>

	* sel-sched-ir.h (register_unavailable_p): Declare.
	* sel-sched-ir.c (register_unavailable_p): New.  Use it...
	(set_unavailable_target_for_expr): ... here to properly test
	availability of a register.
	(speculate_expr): Ditto.
	* sel-sched.c (substitute_reg_in_expr): Ditto.
	(av_set_could_be_blocked_by_bookkeeping_p): Ditto.

From-SVN: r177654
2011-08-11 15:48:07 +04:00
Sergey Grechanik
944499ed6b sel-sched.c (verify_target_availability): Fix usage of hard_regno_nregs.
2011-08-11  Sergey Grechanik  <mouseentity@ispras.ru>

	* sel-sched.c (verify_target_availability): Fix usage of
	hard_regno_nregs.

From-SVN: r177653
2011-08-11 15:42:43 +04:00
Dmitry Melnik
6bf2d15641 sel-sched-ir.c (init_global_and_expr_for_insn): Forbid copying of recognized by cannot_copy_insn_p hook and volatile instructions.
2011-08-11  Dmitry Melnik  <dm@ispras.ru>

	* sel-sched-ir.c (init_global_and_expr_for_insn): Forbid copying of
	recognized by cannot_copy_insn_p hook and volatile instructions.

From-SVN: r177652
2011-08-11 15:41:27 +04:00
Dmitry Melnik
bf3a40e953 sel-sched-ir.c (merge_expr_data): Take maximum spec.
2011-08-11  Dmitry Melnik  <dm@ispras.ru>

	* sel-sched-ir.c (merge_expr_data): Take maximum spec.

From-SVN: r177651
2011-08-11 15:40:07 +04:00
Martin Jambor
f82d1a94ec lto.c (uniquify_nodes): Use main variant's BINFO too.
2011-08-11  Martin Jambor  <mjambor@suse.cz>

lto/
	* lto.c (uniquify_nodes): Use main variant's BINFO too.

From-SVN: r177650
2011-08-11 12:09:43 +02:00
Richard Sandiford
f9bf5a8e96 md.texi (define_bypass): Say that the instruction names can be filename-style globs.
gcc/
	* doc/md.texi (define_bypass): Say that the instruction names can
	be filename-style globs.
	* Makefile.in (FNMATCH_H): Define.
	(build/genattrtab.o, build/genautomata.o): Depend on $(FNMATCH_H).
	* genattrtab.c: Include fnmatch.h.
	(bypass_list): Change field name from "insn" to "pattern".
	(gen_bypass_1): Update accordingly.
	(process_bypasses): Use fnmatch to check for matches between
	insn reservations and define_bypasses.
	* genautomata.c: Include fnmatch.h.
	(bypass_decl): Rename in_insn_name and out_insn_name to in_pattern
	and out_pattern respectively.
	(gen_bypass, insert_bypass): Update accordingly.
	(for_each_matching_insn, process_bypass_2, process_bypass_1)
	(process_bypass): New functions.
	(process_decls): Use process_bypass.  Update after field name changes.

From-SVN: r177649
2011-08-11 08:25:41 +00:00
Georg-Johann Lay
7ece388150 re PR target/49687 ([avr] Missed optimization for widening MUL)
PR target/49687
	* config/avr/avr.md (smulqi3_highpart): New insn.
	(umulqi3_highpart): New insn.
	(*subqi3.ashiftrt7): New insn.
	(smulhi3_highpart): New expander.
	(umulhi3_highpart): Nex expander.
	(*smulhi3_highpart_call): New insn.
	(*umulhi3_highpart_call): New insn.
	(extend_u): New code attribute.
	(extend_prefix): Rename code attribute to extend_su.
	* config/avr/avr.c (avr_rtx_costs): Report costs of highpart of
	widening QI/HI multiply.

From-SVN: r177648
2011-08-11 07:50:37 +00:00
Ira Rosen
fb2c2b1672 re PR tree-optimization/50039 (Segfault in vect_operation_fits_smaller_type())
PR tree-optimization/50039
        * tree-vect-patterns.c (vect_operation_fits_smaller_type): Check
        that DEF_STMT has a stmt_vec_info.

From-SVN: r177647
2011-08-11 05:43:14 +00:00
GCC Administrator
7746e0a16c Daily bump.
From-SVN: r177642
2011-08-11 00:18:36 +00:00
H.J. Lu
2561061945 Initialize src3 with random value.
2011-08-10  H.J. Lu  <hongjiu.lu@intel.com>

	* gcc.target/i386/sse4_1-blendps-2.c: Include <stdlib.h>.
	(sse4_1_test): Initialize src3 with random value.

From-SVN: r177628
2011-08-10 08:38:18 -07:00
Richard Guenther
b126811e7d tree.h (can_trust_pointer_alignment): Remove.
2011-08-10  Richard Guenther  <rguenther@suse.de>

	* tree.h (can_trust_pointer_alignment): Remove.
	* builtins.c (can_trust_pointer_alignment): Remove.

	cp/
	* call.c (build_over_call): Call memcpy unconditionally.

From-SVN: r177625
2011-08-10 15:08:14 +00:00
Artjoms Sinkarovs
0e3a99ae91 c-typeck.c (scalar_to_vector): New function.
2011-08-10  Artjoms Sinkarovs <artyom.shinakroff@gmail.com>

	* c-typeck.c (scalar_to_vector): New function. Try scalar to
	vector conversion.
	(stv_conv): New enum for scalar_to_vector return type.
	(build_binary_op): Adjust.
	* doc/extend.texi: Description of scalar to vector expansion.

	c-family/
	* c-common.c (unsafe_conversion_p): New function. Check if it is
	unsafe to convert an expression to the type.
	(conversion_warning): Adjust, use unsafe_conversion_p.
	* c-common.h (unsafe_conversion_p): New function declaration.

	testsuite/
	* gcc.c-torture/execute/scal-to-vec1.c: New test.
	* gcc.c-torture/execute/scal-to-vec2.c: New test.
	* gcc.c-torture/execute/scal-to-vec3.c: New test.
	* gcc.dg/scal-to-vec1.c: New test.
	* gcc.dg/scal-to-vec2.c: New test.

From-SVN: r177622
2011-08-10 14:44:02 +00:00
Richard Guenther
0eb778344e tree.h (get_pointer_alignment): Remove max-align argument.
2011-08-10  Richard Guenther  <rguenther@suse.de>

	* tree.h (get_pointer_alignment): Remove max-align argument.
	(get_object_alignment): Likewise.
	* builtins.c (get_object_alignment_1): Adjust.
	(get_object_alignment): Remove max-align argument.
	(get_pointer_alignment): Likewise.
	(expand_builtin_strlen): Adjust.
	(expand_builtin_memcpy): Likewise.
	(expand_builtin_mempcpy_args): Likewise.
	(expand_builtin_strncpy): Likewise.
	(expand_builtin_memset_args): Likewise.
	(expand_builtin_memcmp): Likewise.
	(expand_builtin_strcmp): Likewise.
	(expand_builtin_strncmp): Likewise.
	(get_builtin_sync_mem): Likewise.
	(fold_builtin_memset): Likewise.
	(fold_builtin_memory_op): Likewise.
	(expand_builtin_memory_chk): Likewise.
	* emit-rtl.c (get_mem_align_offset): Likewise.
	(set_mem_attributes_minus_bitpos): Likewise.
	* expr.c (expand_assignment): Likewise.
	(expand_expr_real_1): Likewise.
	* tree-sra.c (tree_non_mode_aligned_mem_p): Likewise.
	* tree-ssa-forwprop.c (simplify_builtin_call): Likewise.
	* tree-ssa-loop-ivopts.c (may_be_unaligned_p): Likewise.
	* tree-vect-data-refs.c (vect_compute_data_ref_alignment): Likewise.
	* value-prof.c (gimple_stringops_transform): Likewise.

From-SVN: r177620
2011-08-10 12:24:23 +00:00
Paulo J. Matos
1c7836f0e8 tm.texi.in (CLASS_MAX_NREGS): Fix typo.
gcc/
2011-08-10  Paulo J. Matos  <paulo.matos@csr.com>

	* doc/tm.texi.in (CLASS_MAX_NREGS): Fix typo.
	* doc/tm.texi: Regenerate.

From-SVN: r177619
2011-08-10 09:38:52 +00:00
Georg-Johann Lay
4ada410ba1 re PR target/29560 ([avr] Poor optimization for byte shifts)
PR target/29560
	* config/avr/avr.md (*ashlhiqi3): New insn-and-split.
	(*ashl<extend_prefix>qihiqi3): New insn-and-splits.
	(*ashl<extend_prefix>qihiqi3.mem): New insn-and-splits.
	Add peephole2 to map ashlhi3 to ashlqi3 if high part of
	shift target is unused.

From-SVN: r177616
2011-08-10 08:58:03 +00:00
Richard Guenther
d1f4e15f16 re PR tree-optimization/49937 (g++.dg/tree-ssa/fwprop-align.C)
2011-08-10  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/49937
	* tree-ssa-ccp.c (get_value_from_alignment): Re-implement
	using get_object_alignment_1.

From-SVN: r177615
2011-08-10 08:50:39 +00:00
Richard Guenther
f3016c478e re PR bootstrap/49907 (lto-plugin -Wall in stage1)
2011-08-10  Richard Guenther  <rguenther@suse.de>

	PR bootstrap/49907
	lto-plugin/
	* configure.ac: Use ACX_PROG_CC_WARNING_OPTS to detect -Wall presence.
	* Makefile.am (AM_CFLAGS): Adjust.  Do not build with -Werror.
	* configure: Regenerate.
	* Makefile.in: Likewise.
	* aclocal.m4: Likewise.

From-SVN: r177614
2011-08-10 08:48:37 +00:00
Rainer Orth
d62bab6a7c re PR libstdc++/1773 (__cplusplus defined to 1, should be 199711L)
2011-08-10  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
	    Marc Glisse  <marc.glisse@normalesup.org>

	PR libstdc++-v3/1773
	* inclhack.def (solaris_cxx_linkage, solaris_getc_strict_stdc)
	(solaris_longjmp_noreturn, solaris_pow_int_overload)
	(solaris_std___filbuf): New fixes.
	* tests/base/iso/math_iso.h, tests/base/iso/setjmp_iso.h,
	tests/base/iso/stdio_iso.h, tests/base/iso/stdlib_iso.h: New tests.
	* tests/base/stdio.h [SOLARIS_STD___FILBUF_CHECK]: New test.

Co-Authored-By: Marc Glisse <marc.glisse@normalesup.org>

From-SVN: r177613
2011-08-10 08:43:38 +00:00
Rainer Orth
693ed63381 jcf-dump.c (print_constant): Cast first frexp arg.
gcc/java:
	* jcf-dump.c (print_constant): Cast first frexp arg.

	libjava:
	* exception.cc (std::abort): Remove static.

From-SVN: r177612
2011-08-10 08:40:17 +00:00
Uros Bizjak
dcfd875366 i386.md (lround<X87MODEF:mode><SWI248x:mode>2): Do not force operands[0] into a register.
* config/i386/i386.md (lround<X87MODEF:mode><SWI248x:mode>2): Do not
	force operands[0] into a register.

From-SVN: r177611
2011-08-10 09:22:52 +02:00
GCC Administrator
57fcac164e Daily bump.
From-SVN: r177610
2011-08-10 00:17:57 +00:00
Uros Bizjak
2813f1b15f i386.c (ix86_emit_i387_round): New function.
* config/i386/i386.c (ix86_emit_i387_round): New function.
	* config/i386/i386-protos.h (ix86_emit_i387_round): Declare.
	* config/i386/i386.md (round<mode>2): Use X87MODEF mode iterator.
	Use ix86_emit_i387_round to expand round function for i387 math.
	(lround<X87MODEF:mode><SWI248x:mode>2): Use X87MODEF mode iterator.
	Use ix86_emit_i387_round to expand {l,ll}round function for i387 math.

From-SVN: r177605
2011-08-09 19:59:20 +02:00
Rainer Orth
c6412d8676 sync.c: Move to ../libgcc.
gcc:
	* config/sync.c: Move to ../libgcc.
	* Makefile.in (libgcc.mvars): Remove LIBGCC_SYNC,
	LIBGCC_SYNC_CFLAGS.
	* config/mips/t-libgcc-mips16 (LIBGCC_SYNC, LIBGCC_SYNC_CFLAGS):
	Remove.

	libgcc:
	* sync.c: New file.
	* config/mips/t-mips16: New file.
	* config.host (mips64*-*-linux*): Add mips/t-mips16 to tmake_file.
	(mips*-*-linux*): Likewise.
	(mips*-sde-elf*): Likewise.
	(mipsisa32-*-elf*): Join with mipsisa32r2-*-elf*,
	mipsisa64-*-elf*, mipsisa64r2-*-elf*.
	Add mips/t-mips16 to tmake_file.
	(mipsisa64sb1-*-elf*): Add mips/t-mips16 to tmake_file.
	(mips-*-elf*): Likewise.
	(mips64-*-elf*): Likewise.
	(mips64orion-*-elf*): Likewise.
	(mips*-*-rtems*): Likewise.
	(mipstx39-*-elf*): Likewise.
	* Makefile.in: Use SYNC instead of LIBGCC_SYNC.
	($(libgcc-sync-size-funcs-o)): Use SYNC_CFLAGS instead of
	LIBGCC_SYNC_CFLAGS.
	Use $(srcdir) to refer to sync.c.
	Use $<.
	($(libgcc-sync-funcs-o)): Likewise.
	($(libgcc-sync-size-funcs-s-o)): Likewise.
	($(libgcc-sync-funcs-s-o)): Likewise.

From-SVN: r177601
2011-08-09 15:40:30 +00:00
Anatoly Sokolov
6e9ee54ca6 mmix.h (REGISTER_MOVE_COST): Remove macro.
* config/mmix/mmix.h (REGISTER_MOVE_COST): Remove macro.
	* config/mmix/mmix-protos.h (mmix_register_move_cost): Remove.
	* config/mmix/mmix.c (mmix_register_move_cost): Make static.
	Change 'from' and 'to' arguments type to reg_class_t.
	(TARGET_REGISTER_MOVE_COST): Define.

From-SVN: r177600
2011-08-09 19:09:41 +04:00
Vladimir Makarov
394b15208d re PR rtl-optimization/50026 (Revision 177575 caused many test failures)
2011-08-09  Vladimir Makarov  <vmakarov@redhat.com>

	PR target/50026
	Revert:
	PR rtl-optimization/49990
	* ira-costs.c (print_allocno_costs, print_pseudo_costs): Don't
	ignore classes which can not change mode.
	(find_costs_and_classes): Ditto.

From-SVN: r177599
2011-08-09 14:35:21 +00:00
Andreas Schwab
3cb6e5bd17 config.host (ia64*-*-linux*): Move ia64/t-glibc after t-libunwind.
* config.host (ia64*-*-linux*): Move ia64/t-glibc after
t-libunwind.

From-SVN: r177598
2011-08-09 14:26:41 +00:00
Richard Guenther
4001900fb3 tree-vrp.c (zero_nonzero_bits_from_vr): Also return precise information for ranges with only negative values.
2011-08-09  Richard Guenther  <rguenther@suse.de>

	* tree-vrp.c (zero_nonzero_bits_from_vr): Also return precise
	information for ranges with only negative values.
	(extract_range_from_binary_expr_1): Adjust BIT_IOR_EXPR and
	BIT_AND_EXPR handling to handle ranges with negative values.

	* gcc.dg/tree-ssa/vrp57.c: Disable CCP.
	* gcc.dg/tree-ssa/vrp60.c: New testcase.
	* gcc.dg/tree-ssa/vrp61.c: Likewise.
	* gcc.dg/tree-ssa/vrp62.c: Likewise.

From-SVN: r177597
2011-08-09 14:03:10 +00:00
Ulrich Weigand
cd81287375 * gfortran.dg/scratch_1.f90: Skip on spu-*-*.
From-SVN: r177595
2011-08-09 13:45:25 +00:00