Commit Graph

112868 Commits

Author SHA1 Message Date
Andrew Stubbs
f4496f0fec bpabi.h (BE8_LINK_SPEC): Recognize generic-armv7 tuning.
2011-11-01  Andrew Stubbs  <ams@codesourcery.com>

	* config/arm/bpabi.h (BE8_LINK_SPEC): Recognize generic-armv7 tuning.

From-SVN: r180747
2011-11-01 21:57:39 +00:00
Tom de Vries
e14651de00 re PR tree-optimization/50908 (building emacs-23.3; gives msg: indent.c:1140:1: internal compiler error: in verify_dominators, at dominance.c:1041)
2011-11-01  Tom de Vries  <tom@codesourcery.com>

	PR tree-optimization/50908
	* gcc.dg/pr50908.c: New test.
	* gcc.dg/pr50908-2.c: Same.
	* gcc.dg/pr50908-3.c: Same.

From-SVN: r180746
2011-11-01 21:48:22 +00:00
Uros Bizjak
c2a8964176 i386.md (splitters for int-float conversion): Use reg_or_subregno in splitter constraints.
* config/i386/i386.md (splitters for int-float conversion): Use
	reg_or_subregno in splitter constraints.

From-SVN: r180745
2011-11-01 22:36:30 +01:00
Jakub Jelinek
6bf39801d4 i386-protos.h (ix86_expand_adjust_ufix_to_sfix_si): New prototype.
* config/i386/i386-protos.h (ix86_expand_adjust_ufix_to_sfix_si): New
	prototype.
	* config/i386/i386.c (ix86_expand_adjust_ufix_to_sfix_si): New
	function.
	* config/i386/sse.md (fixuns_trunc<mode><sseintvecmodelower>2): Use
	it.
	(ssepackfltmode): New mode attr.
	(vec_pack_ufix_trunc_<mode>): New expander.

From-SVN: r180743
2011-11-01 21:16:20 +01:00
Uros Bizjak
8d1788f2e1 i386.md (floatsi<mode>2_vector_sse_with_temp splitter): Compare <ssevecmode>mode with V4SFmode, not V4SImode.
* config/i386/i386.md (floatsi<mode>2_vector_sse_with_temp splitter):
	Compare <ssevecmode>mode with V4SFmode, not V4SImode.

From-SVN: r180742
2011-11-01 20:48:34 +01:00
Peter Bergner
be26142a67 config.gcc (powerpc*-*-linux*): Add powerpc*-*-linux*ppc476* variant.
* config.gcc (powerpc*-*-linux*): Add powerpc*-*-linux*ppc476* variant.
	* config/rs6000/476.h: New file.
	* config/rs6000/476.opt: Likewise.
	* config/rs6000/rs6000.h (TARGET_LINK_STACK): New define.
	(SET_TARGET_LINK_STACK): Likewise.
	(TARGET_ASM_CODE_END): Define.
	* config/rs6000/rs6000.c (rs6000_option_override_internal): Enable
	TARGET_LINK_STACK for -mtune=476 and -mtune=476fp.
	(rs6000_legitimize_tls_address): Emit the link stack preserving GOT
	code if TARGET_LINK_STACK.
	(rs6000_emit_load_toc_table): Likewise.
	(output_function_profiler): Likewise
	(macho_branch_islands): Likewise
	(machopic_output_stub): Likewise
	(get_ppc476_thunk_name): New function.
	(rs6000_code_end): Likewise.
	* config/rs6000/rs6000.md (load_toc_v4_PIC_1, load_toc_v4_PIC_1b):
	Convert to a define_expand.
	(load_toc_v4_PIC_1_normal): New define_insn.
	(load_toc_v4_PIC_1_476): Likewise.
	(load_toc_v4_PIC_1b_normal): Likewise.
	(load_toc_v4_PIC_1b_476): Likewise.

From-SVN: r180741
2011-11-01 13:53:46 -05:00
Georg-Johann Lay
f1f59bc724 re PR target/50910 ([avr] inefficient division by 2)
PR target/50910
	* config/avr/avr.opt (-mbranch-cost=): New option.
	* config/avr/avr.h (BRANCH_COST): Define to avr_branch_cost.
	* config/avr/avr.c (avr_rtx_costs_1): Adjust [U]DIV/[U]MOD costs.
	* config/avr/avr.md (*addqi3.lt0, *addhi3.lt0, *addsi3.lt0): New insns.
	(*addhi3_zero_extend1): Remov % in constraint of operand 1.
	(*addhi3.sign_extend1, *subhi3.sign_extend2): New insns.

From-SVN: r180739
2011-11-01 14:10:13 +00:00
Jason Merrill
fa4ba4affe re PR c++/50500 ([C++0x] [DR 1082] move constructor should cause copy constructor to be deleted, but still declared)
PR c++/50500
	DR 1082
	* search.c (lookup_fnfields_idx_nolazy): Split out from...
	(lookup_fnfields_1): ...here.
	(lookup_fnfields_slot_nolazy): Use it.
	* cp-tree.h: Declare it.
	* class.c (type_has_move_assign): Use it.
	(type_has_user_declared_move_assign): Likewise.

From-SVN: r180738
2011-11-01 09:48:16 -04:00
Tom de Vries
a31895d78b re PR tree-optimization/50908 (building emacs-23.3; gives msg: indent.c:1140:1: internal compiler error: in verify_dominators, at dominance.c:1041)
2011-11-01  Tom de Vries  <tom@codesourcery.com>

	PR tree-optimization/50908
	* tree-ssa-tail-merge.c (update_vuses): Now that edges are removed
	before update_vuses, test for 1 predecessor rather than two.
	(delete_block_update_dominator_info): New function, part of it factored
	out of ...
	(replace_block_by): Use delete_block_update_dominator_info.  Call
	update_vuses after deleting bb1 and updating dominator info, instead of
	before.

From-SVN: r180737
2011-11-01 12:42:01 +00:00
Janne Blomqvist
eb6a1e56e0 Copyright years and whitespace fix for r180734
From-SVN: r180736
2011-11-01 14:03:38 +02:00
Ira Rosen
7b523334ed no-scevccp-outer-6-global.c: Expect to vectorize the outer loop.
* gcc.dg/vect/no-scevccp-outer-6-global.c: Expect to vectorize
        the outer loop.  Remove comment.  Don't check for widen-mult.

From-SVN: r180735
2011-11-01 11:48:24 +00:00
Janne Blomqvist
ea5e3c042b Cleanup NEWUNIT allocation.
2011-11-01  Janne Blomqvist  <jb@gcc.gnu.org>

	* io/io.h (next_available_newunit): Remove prototype.
	* io/unit.h (next_available_newunit): Make variable static,
	initialize it.
	(init_units): Don't initialize next_available_newunit.
	(get_unique_unit_number): Use atomic builtin if available.

From-SVN: r180734
2011-11-01 13:44:12 +02:00
David S. Miller
1f9ed162eb Add vcond/vcondu patterns to sparc backend.
* config/sparc/sparc.c (sparc_expand_vcond): New function.
	* config/sparc/sparc-protos.h (sparc_expand_vcond): Declare it.
	* config/sparc/sparc.md (vcond<mode><mode>): New VIS3 expander.
	(vconduv8qiv8qi): Likewise.

From-SVN: r180733
2011-11-01 01:42:57 -07:00
Ian Lance Taylor
787f74b487 runtime: Don't ask mmap for wrapping memory.
From-SVN: r180732
2011-11-01 05:20:40 +00:00
Ian Lance Taylor
3d43396098 runtime: Correct test of mmap return value.
From-SVN: r180731
2011-11-01 04:55:15 +00:00
Ian Lance Taylor
207c35fa9e syscall: Portability code for epoll_event on GNU/Linux.
From-SVN: r180729
2011-11-01 04:12:01 +00:00
Jason Merrill
15694fdd6d * c.opt (-fdeduce-init-list): Off by default.
From-SVN: r180728
2011-11-01 00:02:56 -04:00
Jason Merrill
a7d5d7e221 Makefile.am (install-freestanding-headers): Install c++0x_warning.h.
* include/Makefile.am (install-freestanding-headers): Install
	c++0x_warning.h.
	* libsupc++/initializer_list: Include it.

From-SVN: r180727
2011-11-01 00:02:45 -04:00
Jason Merrill
e03ea4ad2c * doc/invoke.texi: Update for -std=c++11.
From-SVN: r180726
2011-11-01 00:02:31 -04:00
Alexandre Oliva
5a9fbcf14a re PR debug/50869 (ice in vt_expand_var_loc_chain)
PR debug/50869
* cselib.c (cfa_base_preserved_regno): Initialize.
(cselib_expand_value_rtx_1): Don't expand it.
* var-tracking.c (vt_expand_var_loc_chain): Initialize depth.
Check it's only zero if result is NULL.

From-SVN: r180725
2011-11-01 02:09:00 +00:00
Jakub Jelinek
03e0010d71 sse.md (fixuns_trunc<mode><sseintvecmodelower>2): New expander.
* config/i386/sse.md (fixuns_trunc<mode><sseintvecmodelower>2): New
	expander.

From-SVN: r180724
2011-11-01 02:09:58 +01:00
Jakub Jelinek
406d683e9c sse.md (sseintvecmode): Remove duplicate modes.
* config/i386/sse.md (sseintvecmode): Remove duplicate modes.
	(sseintvecmodelower): New mode iterator.
	(floatv8siv8sf2, floatunsv4siv4sf2): Macroize into...
	(float<sseintvecmodelower><mode>2): ... this using VF1 iterator.
	(floatunsv4siv4sf2): Macroize into...
	(floatuns<sseintvecmodelower><mode>2): ... this using VF1 iterator.

From-SVN: r180723
2011-11-01 02:09:07 +01:00
GCC Administrator
eac898e7ed Daily bump.
From-SVN: r180721
2011-11-01 00:18:07 +00:00
Gerald Pfeifer
176d6eb070 acinclude.m4 (GLIBCXX_CONFIGURE): Refer to GNU/Linux.
* acinclude.m4 (GLIBCXX_CONFIGURE): Refer to GNU/Linux.
	* configure: Regenerate.

From-SVN: r180717
2011-11-01 00:02:45 +00:00
Ian Lance Taylor
f0080f6cf9 syscall: Use sched_yield rather than pthread_yield.
From-SVN: r180716
2011-10-31 22:09:21 +00:00
David S. Miller
015e8b63f4 Allow zero operand in sparc VIS3 cmask patterns.
* config/sparc/sparc.md (cmask patterns): Allow zero operand.

From-SVN: r180715
2011-10-31 15:09:12 -07:00
Ian Lance Taylor
7e547d7b31 syscall: Fix Errstr on systems without strerror_r.
From-SVN: r180714
2011-10-31 21:55:22 +00:00
David S. Miller
82a5950228 Invalidate cached next real insn in dwarf2out_end_epilogue().
* dwarf2out.c (cached_next_real_insn): New.
	(dwarf2out_end_epilogue): Set it to NULL_RTX.
	(dwarf2out_var_location): Remove cached_next_real_insn local static.

From-SVN: r180713
2011-10-31 14:51:22 -07:00
Ian Lance Taylor
b59546bf65 syscall: Remove a couple more 3-parameter match's in mksyscall.awk.
From-SVN: r180712
2011-10-31 21:47:30 +00:00
Richard Henderson
788a290865 i386: Remove TARGET_VECTORIZE_BUILTIN_CONVERSION.
Renaming all of the insn patterns as needed to the standard
optab forms.  Sadly, only one of the builtins is unused by
the various header files, so most of them must stay around.

        * config/i386/sse.md (floatv8siv8sf2): Rename from avx_cvtdq2ps256.
        (floatv4siv4sf2): Rename from sse2_cvtdq2ps.
        (floatunsv4siv4sf2): Rename from sse2_cvtudq2ps.
        (fix_truncv8sfv8si2): Rename from avx_cvttps2dq256.
        (fix_truncv4sfv4si2): Rename from sse2_cvttps2dq.
        (floatv4siv4df2): Rename from avx_cvtdq2pd256.
        (fix_truncv4dfv4si2): Rename from avx_cvttpd2dq256.
        (vec_unpacku_float_hi_v8si): Update for insn pattern name changes.
        * config/i386/i386.md (splitters for int-float conversion): Likewise.
        * config/i386/i386.c (ix86_split_convert_uns_si_sse): Likewise.
        (bdesc_args): Likewise.
        (enum ix86_builtins) [IX86_BUILTIN_CVTUDQ2PS]: Remove.
        (ix86_vectorize_builtin_conversion): Remove.
        (TARGET_VECTORIZE_BUILTIN_CONVERSION): Remove.

From-SVN: r180709
2011-10-31 12:36:57 -07:00
Jason Merrill
1fb80b0c53 re PR libstdc++/1773 (__cplusplus defined to 1, should be 199711L)
PR libstdc++/1773
	* init.c (cpp_init_builtins): Set __cplusplus for C++11.

From-SVN: r180708
2011-10-31 15:34:26 -04:00
Jason Merrill
97e3ad20b1 re PR c++/50920 (add a -std=c++11 option to the driver)
PR c++/50920
gcc/c-family
	* c-common.h (cxx_dialect): Add cxx11 and cxx03.
	* c.opt: Add -std=c++11, -std=gnu++11, -std=gnu++03,
	and -Wc++11-compat.
	* c-opts.c (set_std_cxx11): Rename from set_std_cxx0x.
gcc/cp
	* class.c (check_field_decl): Change c++0x in diags to c++11.
	* error.c (maybe_warn_cpp0x): Likewise.
	* parser.c (cp_parser_diagnose_invalid_type_name): Likewise.
	* pt.c (check_default_tmpl_args): Likewise.
libcpp
	* include/cpplib.h (enum c_lang): Rename CLK_CXX0X to CLK_CXX11,
	CLK_GNUCXX0X to CLK_GNUCXX11.
libstdc++-v3
	* include/bits/c++0x_warning.h: Change -std=c++0x to -std=c++11.

From-SVN: r180707
2011-10-31 15:34:14 -04:00
Martin Jambor
fdb0e1b4bc ipa-prop.c (mark_modified): Moved up in the file.
2011-10-31  Martin Jambor  <mjambor@suse.cz>

	* ipa-prop.c (mark_modified): Moved up in the file.
	(is_parm_modified_before_call): Renamed to
	is_parm_modified_before_stmt, moved up in the file.
	(load_from_unmodified_param): New function.
	(compute_complex_assign_jump_func): Also attempt to create pass
	through jump functions for values loaded from (addressable)
	parameters.

	* testsuite/gcc.dg/ipa/ipcp-4.c: New test.

From-SVN: r180705
2011-10-31 18:43:25 +01:00
Jakub Jelinek
aa9480274f tree-vect-stmts.c (vectorizable_shift): If op1 is vect_external_def in a loop and has different type from op0...
* tree-vect-stmts.c (vectorizable_shift): If op1 is vect_external_def
	in a loop and has different type from op0, cast it to op0's type
	before the loop first.  For slp give up.  Don't crash if op1_vectype
	is NULL.

	* gcc.dg/vshift-3.c: New test.
	* gcc.dg/vshift-4.c: New test.
	* gcc.dg/vshift-5.c: New test.

From-SVN: r180704
2011-10-31 17:52:19 +01:00
Janne Blomqvist
08810e5257 Update file position for inquire lazily.
libgfortran ChangeLog:

2011-10-31  Janne Blomqvist  <jb@gcc.gnu.org>

	* io/inquire.c (inquire_via_unit): Check whether we're at the
	beginning or end if the position is unspecified. If the position
	is not one of the 3 standard ones, return unspecified.
	* io/io.h (update_position): Remove prototype.
	* io/transfer.c (next_record): Set the position to unspecified,
	letting inquire figure it out more exactly when needed.
	* io/unit.c (update_position): Remove function.


testsuite ChangeLog:

2011-10-31  Janne Blomqvist  <jb@gcc.gnu.org>

	* gfortran.dg/inquire_5.f90: Update testcase to match the standard
	and current implementation.

From-SVN: r180703
2011-10-31 16:59:19 +02:00
Janne Blomqvist
3469bd8660 Introduce a size member function to struct stream.
2011-10-31  Janne Blomqvist  <jb@gcc.gnu.org>

	* io/unix.h (struct stream): Add size function pointer.
	(ssize): New inline function.
	(file_length): Remove prototype.
	* io/unix.c (raw_size): New function.
	(raw_init): Initialize st.size pointer.
	(buf_size): New function.
	(buf_init): Initialize st.size pointer.
	(open_internal): Likewise.
	(open_internal4): Likewise.
	(file_length): Remove function.
	* io/file_pos.c (st_rewind): Use ssize instead of file_length.
	* io/open.c (test_endfile): Likewise.
	* io/transfer.c (data_transfer_init): Likewise.
	(next_record_r): Likewise.
	(next_record_w): Likewise.
	* io/unit.c (update_position): Likewise.

From-SVN: r180702
2011-10-31 16:52:26 +02:00
Janne Blomqvist
7d5ee21935 Simplify handling of special files.
2011-10-31  Janne Blomqvist  <jb@gcc.gnu.org>

* io/file_pos.c (st_rewind): Handle regular and special files
identically.
* io/intrinsics.c (fseek_sub): Don't check whether we think the
file is seekable, just do what the caller says.
* io/transfer.c (skip_record): First try to seek, then fallback to
reading and throwing away what we read.
* io/unit.c (update_position): Don't check whether file is
seekable, just try to do what we're told.
(unit_truncate): Likewise.
* io/unix.c (struct unix_stream): Remove special_file flag.
(buf_flush): Remove code for handling unseekable files.
(buf_seek): Likewise.
(fd_to_stream): Use buffered IO only for regular files.
(file_length): Remove is_seekable() call.
(is_seekable): Remove function.
(is_special): Likewise.
* io/unix.h: Remove prototypes for is_seekable and is_special.

From-SVN: r180701
2011-10-31 16:45:50 +02:00
Paul Brook
2062f77b8b cgraphunit.c: Don't mark clones as static constructors.
2011-10-31  Paul Brook  <paul@codesourcery.com>

	gcc/
	* cgraphunit.c: Don't mark clones as static constructors.

	gcc/testsuite/
	* gcc.dg/constructor-1.c: New test.

From-SVN: r180700
2011-10-31 14:26:38 +00:00
David Edelsohn
41bd49ea5f gcc-ar: Do not include stdio.h.
* gcc-ar: Do not include stdio.h.

From-SVN: r180699
2011-10-31 10:04:50 -04:00
Diego Novillo
596c138175 mangle.c (get_mangled_id): Factor from ...
* mangle.c (get_mangled_id): Factor from ...
	(mangle_decl): ... here.
	Call get_mangled_id.

From-SVN: r180698
2011-10-31 10:04:19 -04:00
Diego Novillo
875b35b4da tree-streamer-out.c (pack_ts_base_value_fields): Emit TYPE_ADDR_SPACE.
* tree-streamer-out.c (pack_ts_base_value_fields): Emit
	TYPE_ADDR_SPACE.
	* tree-streamer-in.c (unpack_ts_base_value_fields): Read
	TYPE_ADDR_SPACE.

From-SVN: r180697
2011-10-31 10:03:32 -04:00
David S. Miller
f6b29aeb1e Slight improvements to vec_init code gen on sparc.
* config/sparc/sparc.c (vector_init_bshuffle): New function.
	(vector_init_fpmerge): New function.
	(sparc_expand_vector_init): Use them to improve non-const cases.

From-SVN: r180696
2011-10-30 23:24:26 -07:00
David S. Miller
ea2fa34166 Handle many consecutive location notes more efficiently in dwarf2.
* dwarf2out.c (dwarf2out_var_location): When processing several
	consecutive location notes, cache the result of next_real_insn().

From-SVN: r180695
2011-10-30 18:48:15 -07:00
GCC Administrator
9ceb54d132 Daily bump.
From-SVN: r180694
2011-10-31 00:18:12 +00:00
Steven G. Kargl
508b144c87 symbol.c (gfc_free_charlen): Whitespace.
2011-10-30  Steven G. Kargl  <kargl@gcc.gnu.org>

	* symbol.c (gfc_free_charlen): Whitespace.

From-SVN: r180687
2011-10-30 22:31:10 +00:00
Steven G. Kargl
05168bb71e re PR other/50573 (configure lists --with-gnu-ld twice)
2011-10-30  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/50573
	* check.c (gfc_check_dshift): Update argument checking for BOZ.
	Update checking SHIFT against BITSIZE of I or J.
	* intrinsic.texi: Update docs for DSHIFTL and DSHIFTR.

2011-10-30  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/50573
	* gfortran.dg/dshift_3.f90: New test.

From-SVN: r180686
2011-10-30 21:59:24 +00:00
Uros Bizjak
da957891ff i386.md (avx2_vec_dup<mode>): Macroize insn from avx2_vec_dup{v8sf,v4sf} using VF1 mode iterator.
* config/i386/i386.md (avx2_vec_dup<mode>): Macroize insn from
	avx2_vec_dup{v8sf,v4sf} using VF1 mode iterator.
	(vec_dupv4sf): Remove expander.
	(vec_dupv4sf): Merge from *vec_dupv4sf and *vec_dupv4sf_avx.
	(vec_dupv2df): Remove expander.
	(vec_dupv2df): Merge from *vec_dupv2df and *vec_dupv2df_sse3.
	(*vec_concatv2df): Merge *vec_concatv2df_sse3.
	(*vec_dupv4si): Merge *vec_dupv4si_avx.
	(*vec_dupv2di): Merge *vec_dupv2di_sse3.

From-SVN: r180685
2011-10-30 18:48:46 +01:00
Dmitry Plotnikov
9db8f45d5d tree-cfg.c (verify_gimple_assign_unary): Allow vector conversions.
2011-10-30  Dmitry Plotnikov  <dplotnikov@ispras.ru>

        * tree-cfg.c (verify_gimple_assign_unary): Allow vector conversions.
        * optabs.c (supportable_convert_operation): New function.
        * optabs.h (supportable_convert_operation): New prototype.
        * tree-vect-stmts.c (vectorizable_conversion): Change condition and
        behavior for NONE modifier case.
        * tree.h (VECTOR_INTEGER_TYPE_P): New macro.

From-SVN: r180684
2011-10-30 10:12:02 -07:00
Joseph Myers
9814fdd618 * ja.po: Update.
From-SVN: r180682
2011-10-30 16:28:46 +00:00
Gerald Pfeifer
845f6341a3 prerequisites.xml: Refer to GCC (instead of gcc) and GNU/Linux.
* prerequisites.xml: Refer to GCC (instead of gcc) and GNU/Linux.
	Remove an obsolete reference to a Red Hat release we do not
	support any longer.
	Refer to Debian GNU/Linux.

From-SVN: r180681
2011-10-30 15:33:11 +00:00