Commit Graph

117134 Commits

Author SHA1 Message Date
Jason Merrill e3c888eb0e re PR c++/52973 (visibility attribute for class is not passed to its members)
PR c++/52973
	* parser.c (cp_parser_class_head): Apply attributes here.
	* semantics.c (begin_class_definition): Not here.
	* cp-tree.h: Adjust.

From-SVN: r188137
2012-06-02 00:03:51 -04:00
GCC Administrator b691f14cc4 Daily bump.
From-SVN: r188133
2012-06-02 00:18:07 +00:00
Jason Merrill ef4b1d6de5 re PR c++/52725 (error: "capture of non-variable" for new-expression incorrectly parsed as lambda-expression)
PR c++/52725
	* parser.c (cp_parser_binary_expression): Bail early if we're parsing
	tentatively and the LHS has a parse error.

From-SVN: r188127
2012-06-01 17:19:22 -04:00
Eric Botcazou 4efa926130 re PR tree-optimization/53501 (scev introduces signed overflow)
PR middle-end/53501
	* fold-const.c (fold_binary_loc): Refine previous change.
testsuite/
	* c-c++-common/restrict-2.c: Revert previous change.

From-SVN: r188118
2012-06-01 17:01:17 +00:00
Jason Merrill 3dfaf1d7db re PR c++/53137 (g++ segfault)
PR c++/53137
	* pt.c (instantiate_class_template_1): Set LAMBDA_EXPR_THIS_CAPTURE.
	(instantiate_decl): Don't push_to_top_level for local class methods.
	(instantiate_class_template_1): Or for local classes.

From-SVN: r188117
2012-06-01 12:55:17 -04:00
Jason Merrill d37c775a73 re PR c++/53484 ([c++11] Wrong auto in lambdas in function templates)
PR c++/53484
	* pt.c (do_auto_deduction): Don't try to deduce from a
	type-dependent initializer.

From-SVN: r188116
2012-06-01 12:55:08 -04:00
Olivier Hainque 676bd9a422 vxworks.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Restore the "do {" part of the do-while(0) loop.
* config/rs6000/vxworks.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Restore the
        "do {" part of the do-while(0) loop.

From-SVN: r188114
2012-06-01 16:41:25 +00:00
Paolo Carlini 5714705f11 re PR c++/26155 (ICE after error with namespace alias)
/cp
2012-06-01  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/26155
	* name-lookup.c (push_namespace): When error recovery is
	impossible just error out in duplicate_decls.

/testsuite
2012-06-01  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/26155
	* g++.dg/parse/namespace-alias-1.C: New.

From-SVN: r188113
2012-06-01 16:11:38 +00:00
Aldy Hernandez 874a358949 tree-ssa-loop-im.c (execute_sm): Do not check flag_tm.
* tree-ssa-loop-im.c (execute_sm): Do not check flag_tm.
        * gimple.h (block_in_transaction): Check for flag_tm.

From-SVN: r188112
2012-06-01 15:44:10 +00:00
Yuri Rumyantsev 674dd90ad7 i386.c (x86_sched_reorder): New function.
* config/i386/i386.c (x86_sched_reorder): New function.
       Added new function x86_sched_reorder.

From-SVN: r188107
2012-06-01 11:56:00 +00:00
Richard Guenther 9ca86fc371 tree-loop-distribution.c (stmt_has_scalar_dependences_outside_loop): Handle PHIs.
2012-06-01  Richard Guenther  <rguenther@suse.de>

	* tree-loop-distribution.c (stmt_has_scalar_dependences_outside_loop):
	Handle PHIs.
	(classify_partition): Likewise.

From-SVN: r188106
2012-06-01 11:38:10 +00:00
Richard Guenther 30d55936c5 tree-loop-distribution.c (enum partition_kind): New enum.
2012-06-01  Richard Guenther  <rguenther@suse.de>

	* tree-loop-distribution.c (enum partition_kind): New enum.
	(struct partition_s): Add kind and main_stmt members.
	(partition_alloc): Initialize kind to PKIND_NORMAL.
	(partition_builtin_p): New function.
	(copy_loop_before): Remove failure path and assert instead.
	(generate_loops_for_partition): Likewise.
	(generate_memset_zero): Fold into ...
	(generate_memset_builtin): ... this.
	(classify_partition): New function with code from
	can_generate_builtin and generate_builtin.
	(generate_builtin): Remove.
	(can_generate_builtin): Likewise.
	(fuse_partitions_with_similar_memory_accesses): Call
	partition_builtin_p instead of can_generate_builtin.
	(rdg_build_partitions): Do not call
	fuse_partitions_with_similar_memory_accesses here...
	(ldist_gen): ... but here after classifying all partitions.
	Remove failure path of generate_code_for_partition.
	(generate_code_for_partition): Generate code according
	to partition classification.

From-SVN: r188104
2012-06-01 08:55:04 +00:00
Manuel López-Ibáñez c3a43311c1 re PR c++/50134 (-Wmissing-prototypes doesn't work for C++)
2012-06-01  Manuel López-Ibáñez  <manu@gcc.gnu.org>
            Jonathan Wakely  <jwakely.gcc@gmail.com>

	PR c++/50134
	* doc/invoke.texi (Warning Options): Explain purpose and differences
	between -Wmissing-prototypes and -Wmissing-declarations.

Co-Authored-By: Jonathan Wakely <jwakely.gcc@gmail.com>

From-SVN: r188103
2012-06-01 09:47:06 +01:00
Christian Bruel d168aaeed9 Allow --specs options.
2012-05-30  Christian Bruel  <christian.bruel@st.com>

	* gcc.c (save_switch): Add user_p parameter.
	(read_specs): Likewise.
	(set_specs): Likewise.
	(validate_switches): Likewise.
	(validate_switches_from_spec): Likewise.
	(validate_all_switches): Pass on user_p parameter.
	(struct spec_list): Add user_p field.
	(struct switchstr): Add known field.
	(save_switch): Add known parameter.
	(INIT_STATIC_SPEC): Initialize user_p;
	(driver_unknown_option_callbac): call save_switch if
	OPT_SPECIAL_unknown.
	(driver_handle_option): Propagate OPT_specs.
	(do_spec_1): Set validated only if known.
	(check_live_switch): Likewise.
	(validate_switches): Set validated if known or user_spec.

From-SVN: r188102
2012-06-01 09:55:39 +02:00
Eric Botcazou 46014ce2c3 re PR ada/53517 (gnat.dg/lto14.adb FAILs)
PR ada/53517
	* gnat.dg/lto14.adb: Skip on Solaris.

From-SVN: r188100
2012-06-01 07:33:38 +00:00
Tobias Burnus 7ed26a671c chmod.c (chmod_func): On MinGW, don't set is_dir
2012-06-01  Tobias Burnus  <burnus@net-b.de>

        * intrinsics/chmod.c (chmod_func): On MinGW, don't set is_dir
        * and
        fix octal-mode handling.
        * io/unit.c (get_internal_unit): Add cast.
        * io/unix.c (min): Undef "min" before defining it.
        * runtime/backtrace.c (show_backtrace): Move label into
        ifndef __MINGW__ block.

From-SVN: r188098
2012-06-01 07:53:31 +02:00
Hans-Peter Nilsson 62330f08cb sync-1-v10.c, [...]: New tests.
* gcc.target/cris/sync-1-v10.c,
	gcc.target/cris/sync-1-v32.c, gcc.target/cris/sync-1.c,
	gcc.target/cris/sync-2c.c, gcc.target/cris/sync-2i.c,
	gcc.target/cris/sync-2s.c, gcc.target/cris/sync-3i.c,
	gcc.target/cris/sync-3s.c, gcc.target/cris/sync-4c.c,
	gcc.target/cris/sync-4i.c, gcc.target/cris/sync-4s.c,
	gcc.target/cris/torture/sync-mis-op-i-1.c,
	gcc.target/cris/torture/sync-mis-op-i-1a.c,
	gcc.target/cris/torture/sync-mis-op-i-2.c,
	gcc.target/cris/torture/sync-mis-op-i-2a.c,
	gcc.target/cris/torture/sync-mis-op-i-3.c,
	gcc.target/cris/torture/sync-mis-op-i-3a.c,
	gcc.target/cris/torture/sync-mis-op-s-1.c,
	gcc.target/cris/torture/sync-mis-op-s-1a.c,
	gcc.target/cris/torture/sync-mis-xchg-i-1.c,
	gcc.target/cris/torture/sync-mis-xchg-i-1a.c,
	gcc.target/cris/torture/sync-mis-xchg-i-2.c,
	gcc.target/cris/torture/sync-mis-xchg-i-2a.c,
	gcc.target/cris/torture/sync-mis-xchg-i-3.c,
	gcc.target/cris/torture/sync-mis-xchg-i-3a.c,
	gcc.target/cris/torture/sync-mis-xchg-s-1.c,
	gcc.target/cris/torture/sync-mis-xchg-s-1a.c: New tests.

From-SVN: r188097
2012-06-01 05:51:07 +00:00
Hans-Peter Nilsson 21ed44440f Add CRIS atomic patterns for 1, 2, and 4 bytes.
* config/cris/cris.c (cris_emit_trap_for_misalignment): New function.
	* config/cris/cris-protos.h: Declare it.
	* config/cris/cris.h [!TARGET_DEFAULT, TARGET_CPU_DEFAULT == 32] 
	(TARGET_DEFAULT): Add alignment by 32.
	[!TARGET_DEFAULT, TARGET_CPU_DEFAULT == 10] (TARGET_DEFAULT): New
	case, as TARGET_CPU_DEFAULT == 0 but with alignment as for
	TARGET_CPU_DEFAULT == 32. 
	(TARGET_TRAP_UNALIGNED_ATOMIC): New macro.
	* config/cris/cris.md: Include sync.md.  Avoid allocating specific
	numbers by replacing the define_constants for all UNSPECs with the
	equivalent define_c_enum construct.
	* config/cris/cris.opt (mtrap-unaligned-atomic): New option.
	* config/cris/sync.md: New file.

From-SVN: r188096
2012-06-01 05:49:16 +00:00
Jonathan Wakely 183d6a7e72 * doc/xml/manual/status_cxx2011.xml: Correct C++11 status table.
From-SVN: r188095
2012-06-01 01:47:32 +01:00
GCC Administrator 954ef87a8c Daily bump.
From-SVN: r188094
2012-06-01 00:18:00 +00:00
David S. Miller 0de0d5c606 Sparc longlong.h enhancements.
libgcc/

	* longlong.h [SPARC] (umul_ppmm, udiv_qrnnd): Use hardware integer multiply
	and divide instructions on 32-bit when V9.
	(add_ssaaaa, sub_ddmmss): Convert to branchless code on 64-bit.

From-SVN: r188090
2012-05-31 17:12:22 -07:00
Benjamin Kosnik 7033d59e69 re PR libstdc++/53543 ([unordered_map] conflict with __is_convertible clang intrinsic)
2012-05-31  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/53543
	* include/bits/hashtable_policy.h (_Insert::__is_convertible):
	Rename to __is_conv to avoid clash with clang built-in.

From-SVN: r188088
2012-05-31 23:02:18 +00:00
Matt Turner 22e834575d 4600.md (r4600_imul_si): Rename from r4600_imul.
gcc/
2012-02-24  Matt Turner  <mattst88@gmail.com>

	* config/mips/4600.md (r4600_imul_si): Rename from r4600_imul.
	(r4600_imul_di): New.
	(r4600_idiv_si): Rename from r4600_idiv.
	(r4600_idiv_di): New.

From-SVN: r188083
2012-05-31 21:32:01 +00:00
Steven Bosscher be7a421eef output.h (__gcc_host_wide_int__): Move to hwint.h.
* output.h (__gcc_host_wide_int__): Move to hwint.h.
	(decl_default_tls_model): Move to tree.h
	(dump_file): Move to system.h.
	(default_stabs_asm_out_destructor, default_stabs_asm_out_constructor,
	dbxout_int, dbxout_stabd, dbxout_begin_stabn, dbxout_begin_stabn_sline,
	dbxout_begin_empty_stabs, dbxout_begin_simple_stabs,
	dbxout_begin_simple_stabs_desc, dbxout_stab_value_zero,
	dbxout_stab_value_zero, dbxout_stab_value_label_diff,
	dbxout_stab_value_internal_label,
	dbxout_stab_value_internal_label_diff): Move from here ...
	* dbxout.h: ... to here.
	* system.h (dump_file): Moved here from output.h.
	* hwint.h (__gcc_host_wide_int__): Moved here from output.h.
	* tree.h (decl_default_tls_model): Moved here from output.h.
	* varasm.c (default_stabs_asm_out_destructor,
	default_stabs_asm_out_constructor): Move from here ...
	* dbxout.c: ... to here.

	* gcov-dump.c (dump_file): Rename to dump_gcov_file.  Update callers.

	* collect2.h (dump_file): Rename to dump_ld_file.
	* collect2.c: Likewise.
	* tlink.c: Likewise.

	* alias.c: Do not include output.h.
	* auto-inc-dec.c: Likewise.
	* bt-load.c: Likewise.
	* caller-save.c: Likewise.
	* cfg.c: Likewise.
	* cfgbuild.c: Likewise.
	* cfgcleanup.c: Likewise.
	* cfglayout.c: Likewise.
	* cfgloop.c: Likewise.
	* cfgloopanal.c: Likewise.
	* cfgloopmanip.c: Likewise.
	* cfgrtl.c: Likewise.
	* cgraph.c: Likewise.
	* cgraphclones.c: Likewise.
	* combine-stack-adj.c: Likewise.
	* combine.c: Likewise.
	* cprop.c: Likewise.
	* cse.c: Likewise.
	* cselib.c: Likewise.
	* dbgcnt.c: Likewise.
	* df-problems.c: Likewise.
	* df-scan.c: Likewise.
	* dojump.c: Likewise.
	* fwprop.c: Likewise.
	* gcse.c: Likewise.
	* graph.c: Likewise.
	* haifa-sched.c: Likewise.
	* hw-doloop.c: Likewise.
	* ipa-inline-transform.c: Likewise.
	* ipa-pure-const.c: Likewise.
	* ipa-reference.c: Likewise.
	* ipa-utils.c: Likewise.
	* ira-build.c: Likewise.
	* ira-emit.c: Likewise.
	* lcm.c: Likewise.
	* loop-doloop.c: Likewise.
	* loop-invariant.c: Likewise.
	* loop-iv.c: Likewise.
	* loop-unroll.c: Likewise.
	* loop-unswitch.c: Likewise.
	* lto-cgraph.c: Likewise.
	* lto-section-in.c: Likewise.
	* lto-streamer-in.c: Likewise.
	* mcf.c: Likewise.
	* mode-switching.c: Likewise.
	* postreload-gcse.c: Likewise.
	* postreload.c: Likewise.
	* predict.c: Likewise.
	* profile.c: Likewise.
	* ree.c: Likewise.
	* reg-stack.c: Likewise.
	* regcprop.c: Likewise.
	* regmove.c: Likewise.
	* regstat.c: Likewise.
	* reload1.c: Likewise.
	* sched-ebb.c: Likewise.
	* sel-sched-dump.c: Likewise.
	* simplify-rtx.c: Likewise.
	* stor-layout.c: Likewise.
	* store-motion.c: Likewise.
	* tracer.c: Likewise.
	* tree-affine.c: Likewise.
	* tree-cfg.c: Likewise.
	* tree-cfgcleanup.c: Likewise.
	* tree-dfa.c: Likewise.
	* tree-into-ssa.c: Likewise.
	* tree-nomudflap.c: Likewise.
	* tree-optimize.c: Likewise.
	* tree-pretty-print.c: Likewise.
	* tree-profile.c: Likewise.
	* tree-ssa-address.c: Likewise.
	* tree-ssa-ccp.c: Likewise.
	* tree-ssa-copy.c: Likewise.
	* tree-ssa-dom.c: Likewise.
	* tree-ssa-loop-ch.c: Likewise.
	* tree-ssa-loop-im.c: Likewise.
	* tree-ssa-loop-manip.c: Likewise.
	* tree-ssa-loop-niter.c: Likewise.
	* tree-ssa-loop-prefetch.c: Likewise.
	* tree-ssa-loop-unswitch.c: Likewise.
	* tree-ssa-loop.c: Likewise.
	* tree-ssa-propagate.c: Likewise.
	* tree-ssa-structalias.c: Likewise.
	* tree-ssa-tail-merge.c: Likewise.
	* tree-ssa-threadedge.c: Likewise.
	* tree-ssa-threadupdate.c: Likewise.
	* tree-ssa-uncprop.c: Likewise.
	* tree-ssa-uninit.c: Likewise.
	* tree-ssa.c: Likewise.
	* value-prof.c: Likewise.
	* var-tracking.c: Likewise.
	* web.c: Likewise.

	* config/m32r/m32r.c: Include dbxout.h.
	* config/pa/pa.c: Likewise.
	* config/rs6000/rs6000.c: Likewise.

	* Makefile.in: Fix dependencies.
	* config/rs6000/t-rs5000: Likewise.

c-family/
	* c-ada-spec.c: Do not include output.h.
	* c-semantics.c: Likewise.

cp/
	* call.c: Do not include output.h.
	* class.c: Likewise.
	* except.c: Likewise.
	* friend.c: Likewise.
	* init.c: Likewise.
	* lex.c: Likewise.
	* method.c: Likewise.
	* parser.c: Likewise.
	* pt.c: Likewise.
	* rtti.c: Likewise.
	* search.c: Likewise.

objc/
	* objc-act.c: Do not include output.h.

fortran/
	* trans-common.c: Do not include output.h.
	* trans-decl.c: Likewise.

java/
	* resource.c: Do not include output.h.

From-SVN: r188082
2012-05-31 20:19:00 +00:00
Aldy Hernandez 039496da00 re PR tree-optimization/52558 (write introduction incorrect wrt the C++11 memory model)
PR tree-optimization/52558
        * cfg.c (alloc_aux_for_edge): Fix comment.
        (alloc_aux_for_edge): Remove static.
        * basic-block.h (alloc_aux_for_edge): Protoize.
        * tree-ssa-loop-im.c (execute_sm_if_changed): New.
        (execute_sm_if_changed_flag): New.
        (execute_sm_if_changed_flag_set): New.
        (execute_sm): Do not generate data races unless requested.
        (tree_ssa_lim_initialize): Call alloc_aux_for_edges.
        (tree_ssa_lim_finalize): Call free_aux_for_edges.
        * gimple.h (block_in_transaction): New.
        (gimple_in_transaction): Use block_in_transaction.

From-SVN: r188081
2012-05-31 19:46:43 +00:00
Benjamin Kosnik 19af62dbf2 re PR target/51007 (Quadmath I/O doesn't work on MinGW)
2012-05-31  Benjamin Kosnik  <bkoz@redhat.com>

        PR libstdc++/51007
        * configure.ac: Allow gnu, gnu* variants for --enable-symvers argument.
        * configure: Regenerated.

From-SVN: r188076
2012-05-31 18:51:27 +00:00
Diego Novillo ba0d684ecd Add new skeleton ChangeLog file generator to contrib/
This script analyzes a .diff file and generates a skeleton ChangeLog
entry for it.  It tries fairly hard to find function names, so it's
important to use the -p switch with diff.

I wrote the initial code a while ago.  Cary added a bunch of smarts to
make it understand C++ and guess the function names better than the
original version.

2012-05-31   Diego Novillo  <dnovillo@google.com>
	     Cary Coutant  <ccoutant@google.com>

	* mklog: New.

Co-Authored-By: Cary Coutant <ccoutant@google.com>

From-SVN: r188072
2012-05-31 14:01:15 -04:00
Georg-Johann Lay 621dfb1e58 re PR target/51345 ([avr] Devices with 8-bit SP need their own multilib(s))
PR target/51345
	* config/avr/avr.opt (-msp8): Document it.
	* doc/invoke.texi (AVR Options): Ditto.  And document related
	built-in macros.

From-SVN: r188070
2012-05-31 17:32:42 +00:00
Diego Novillo bdd5dc28aa Fix compilation of build/*.o when using C++.
Found this while testing the C++ conversion for vec.[ch] on the
cxx-conversion branch.  We do not build the build/*.o files with g++,
so I was getting lots of syntax errors while compiling build/vec.o.

2012-05-31   Diego Novillo  <dnovillo@google.com>

       * configure.ac (CXX_FOR_BUILD): Define and substitute.
       (BUILD_CXXFLAGS): Define and substitute.
       * Makefile.in (BUILD_CXXFLAGS): Define.
       (CXX_FOR_BUILD): Define.
       (COMPILER_FOR_BUILD): Set to CXX_FOR_BUILD if building with C++.
       (LINKER_FOR_BUILD): Likewise.
       (BUILD_COMPILERFLAGS): Set to BUILD_CXXFLAGS if building with C++.
       (BUILD_LINKERFLAGS): Likewise.
       * configure: Regenerate.

From-SVN: r188069
2012-05-31 13:25:41 -04:00
Steven Bosscher 6f4185d786 Makefile.in: Fix many dependencies.
* Makefile.in: Fix many dependencies.
	* tree-profile.c: Don't include regs.h.
	* tree-vectorizer.c: Don't include cfglayout.h.
	* tree-vect-stmts.c: Likewise.
	* tree-vect-slp.c: Likewise.
	* tree-vect-loop.c: Likewise.
	* reg-stack.c: Likewise.
	* tree-ssa-loop-manip.c: Likewise.
	* toplev.c: Likewise.
	* varasm.c: Don't include cfglayout.h, basic-block.h,
	and tree-iterator.h.
	* tree-cfgcleanup.c: Don't include cfglayout.h.
	* passes.c: Don't include cfglayout.h, dwarf2asm.h,
	dwarf2out.h, dbxout.h, sdbout.h, and xcoffout.h.
	* cgraphclones.c: Don't include plugin.h.

From-SVN: r188068
2012-05-31 16:43:31 +00:00
Georg-Johann Lay 5be35a6121 gen-avr-mmcu-texi.c: Sort MCUs.
* config/avr/gen-avr-mmcu-texi.c: Sort MCUs. 
	* doc/avr-mmcu.texi: Regenerate.

From-SVN: r188067
2012-05-31 15:07:32 +00:00
Georg-Johann Lay 5a0563dc56 t-avr: Correct avr-mmcu.texi dependencies.
* config/avr/t-avr: Correct avr-mmcu.texi dependencies.
	(s-avr-mmcu-texi): Don't sed on gen-avr-mmcu-texi output.
	* doc/avr-mmcu.texi (svn:eol-style): Set to native.

From-SVN: r188065
2012-05-31 15:01:03 +00:00
Richard Guenther c61f89850a tree-loop-distribution.c (struct partition_s): New struct, typedef and vector type.
2012-05-31  Richard Guenther  <rguenther@suse.de>

	* tree-loop-distribution.c (struct partition_s): New struct,
	typedef and vector type.
	(partition_alloc, partition_free): New functions.
	(generate_loops_for_partition, generate_builtin,
	generate_code_for_partition, rdg_flag_uses, rdg_flag_vertex,
	rdg_flag_vertex_and_dependent, rdg_flag_loop_exits,
	build_rdg_partition_for_component, can_generate_builtin,
	similar_memory_accesses, fuse_partitions_with_similar_memory_accesses,
	rdg_build_partitions, dump_rdg_partitions, debug_rdg_partitions,
	number_of_rw_in_partition, partition_contains_all_rw,
	ldist_gen): Use partition_t instead of bitmap.

From-SVN: r188064
2012-05-31 14:39:52 +00:00
Tobias Burnus cc2442cd78 re PR fortran/53521 (Memory leak with zero-sized array constructor)
2012-05-31  Tobias Burnus  <burnus@net-b.de>

        PR fortran/53521
        * trans.c (gfc_deallocate_scalar_with_status): Properly
        handle the case size == 0.

From-SVN: r188062
2012-05-31 16:28:41 +02:00
Richard Guenther 88af7c1a3b tree-loop-distribution.c (stmt_has_scalar_dependences_outside_loop): Use FOR_EACH_SSA_DEF_OPERAND.
2012-05-31  Richard Guenther  <rguenther@suse.de>

	* tree-loop-distribution.c (stmt_has_scalar_dependences_outside_loop):
	Use FOR_EACH_SSA_DEF_OPERAND.
	(generate_builtin): Adjust.
	(stmt_generated_in_another_partition): Remove.
	(add_scalar_computations_to_partition): Likewise.
	(rdg_build_partitions): Do not call
	add_scalar_computations_to_partition.

	* gcc.dg/tree-ssa/ldist-pr45948-2.c: New testcase copy of
	ldist-pr45948.c with disabled SCCP.

From-SVN: r188061
2012-05-31 13:57:15 +00:00
Eric Botcazou ca8d9092f1 tree-dfa.c (get_ref_base_and_extent): Compute the offset using double ints throughout.
* tree-dfa.c (get_ref_base_and_extent): Compute the offset using
	double ints throughout.
	* tree-sra.c (build_user_friendly_ref_for_offset) <RECORD_TYPE>:
	Check that the position of the field is representable as an integer.

From-SVN: r188060
2012-05-31 13:40:03 +00:00
Richard Guenther 1db1c6f520 re PR middle-end/48493 (ice in expand_expr_addr_expr_1 with complex types and mem_ref)
2012-05-31  Richard Guenther  <rguenther@suse.de>

	PR middle-end/48493
	* gcc.dg/torture/pr48493.c: New testcase.

From-SVN: r188058
2012-05-31 11:06:35 +00:00
Richard Guenther 673910d7aa tree-data-ref.c (dr_analyze_innermost): Properly convert the MEM_REF offset to sizetype.
2012-05-31  Richard Guenther  <rguenther@suse.de>

	* tree-data-ref.c (dr_analyze_innermost): Properly convert
	the MEM_REF offset to sizetype.

From-SVN: r188057
2012-05-31 11:05:51 +00:00
Greta Yorsh 669e9a8fcd target-supports.exp (check_effective_target_vect_char_mult): Add arm32 to targets.
gcc/testsuite

2012-05-31  Greta Yorsh  <Greta.Yorsh@arm.com>

	* lib/target-supports.exp (check_effective_target_vect_char_mult): Add
	arm32 to targets.
	* gcc.dg/vect/slp-perm-8.c (main): Prevent vectorization
	of the initialization loop.
        (dg-final): Adjust the expected number of vectorized loops depending
	on vect_char_mult target selector.

From-SVN: r188054
2012-05-31 10:57:17 +01:00
Georg-Johann Lay 5b2f6f97b3 invoke.texi (AVR Options): Fix typos.
* doc/invoke.texi (AVR Options): Fix typos.

From-SVN: r188053
2012-05-31 09:35:58 +00:00
Hans-Peter Nilsson 37239ce661 asm-v8.S, [...]: New tests.
* gcc.target/cris/asm-v8.S, gcc.target/cris/asm-v10.S,
	gcc.target/cris/asm-other.S, gcc.target/cris/inasm-v8.c,
	gcc.target/cris/inasm-v10.c, gcc.target/cris/inasm-other.c:
	New tests.

From-SVN: r188052
2012-05-31 09:30:24 +00:00
Hans-Peter Nilsson e8baa9bc33 cris.h (CC1_SPEC): Pass through all -march= and -mcpu= options.
* config/cris/cris.h (CC1_SPEC): Pass through all -march=
	and -mcpu= options.
	(ASM_SPEC): Ditto, not just -march=v32, but translate non-v10,
	non-v32 into --march=v0_v0_v10.

From-SVN: r188051
2012-05-31 09:28:28 +00:00
Tobias Burnus 9daf64e704 revert: unix.c (tempfile_open): Pass mode to "open" for O_CREAT.
2012-05-31  Tobias Burnus  <burnus@net-b.de>

        Revert:
        2012-05-16  Tobias Burnus  <burnus@net-b.de>

        * io/unix.c (tempfile_open): Pass mode to "open" for O_CREAT.

From-SVN: r188048
2012-05-31 08:10:18 +02:00
Richard Sandiford 7cc61ee413 ira-int.h (target_ira_int): Rename x_move_cost to x_ira_register_move_cost...
gcc/
	* ira-int.h (target_ira_int): Rename x_move_cost to
	x_ira_register_move_cost, x_may_move_in_cost to
	x_ira_may_move_in_cost and x_may_move_out_cost to
	x_ira_may_move_out_cost.  Delete the old fields with
	those names and also x_ira_max_register_move_cost,
	x_ira_max_may_move_in_cost and x_ira_max_may_move_out_cost.
	(move_cost, may_move_in_cost, may_move_out_cost)
	(ira_max_register_move_cost, ira_max_may_move_in_cost)
	(ira_max_may_move_out_cost): Delete.
	* ira.c (init_move_cost): Rename to...
	(ira_init_register_move_cost): ...this, deleting the old
	function with that name.  Apply above variable renamings.
	Retain asserts for null fields.
	(ira_init_once): Don't initialize register move costs here.
	(free_register_move_costs): Apply above variable renamings.
	Remove code for deleted fields.

From-SVN: r188047
2012-05-31 05:30:31 +00:00
Richard Sandiford 48e3d6e9de ira.c (init_move_cost): Adjust choice of subclasses to match the current ira_init_register_move_cost choice.
gcc/
	* ira.c (init_move_cost): Adjust choice of subclasses to match
	the current ira_init_register_move_cost choice.  Use
	ira_class_subset_p instead of reg_class_subset_p.
	(ira_init_register_move_cost): Assert that move_cost,
	may_move_in_cost and may_move_out_cost already hold the desired
	values for their ira_* equivalents.  For the latter two,
	ignore classes that can't store a register of the given mode.

From-SVN: r188046
2012-05-31 05:30:19 +00:00
Richard Sandiford 3e575fe22b ira.c (setup_allocno_and_important_classes): Use ira_class_hard_regs_num to check whether a class has any allocatable registers.
gcc/
	* ira.c (setup_allocno_and_important_classes): Use
	ira_class_hard_regs_num to check whether a class has any
	allocatable registers.
	(ira_init_register_move_cost): Likewise.

From-SVN: r188045
2012-05-31 05:30:07 +00:00
Richard Sandiford ed9e2ed0aa ira.c (init_move_cost): Adjust local variable names to match file conventions.
gcc/
	* ira.c (init_move_cost): Adjust local variable names to match
	file conventions.  Use ira_assert instead of gcc_assert.

From-SVN: r188044
2012-05-31 05:29:57 +00:00
Richard Sandiford e80ccebcd8 regs.h (move_table, [...]): Move these definitions and associated target_globals fields to...
gcc/
	* regs.h (move_table, move_cost, may_move_in_cost, may_move_out_cost):
	Move these definitions and associated target_globals fields to...
	* ira-int.h: ...here.
	* rtl.h (init_move_cost): Delete.
	* reginfo.c (last_mode_for_init_move_cost, init_move_cost): Move to...
	* ira.c: ...here, making the latter static.

From-SVN: r188043
2012-05-31 05:29:47 +00:00
Richard Sandiford bac1c6a4f9 ira-costs.c (copy_cost): Use ira_init_register_move_cost_if_necessary and ira_register_move_cost instead...
gcc/
	* ira-costs.c (copy_cost): Use ira_init_register_move_cost_if_necessary
	and ira_register_move_cost instead of init_move_cost and move_cost.

From-SVN: r188042
2012-05-31 05:29:36 +00:00
Richard Sandiford f508f827b1 ira.h (target_ira): Delete x_ira_available_class_regs.
gcc/
	* ira.h (target_ira): Delete x_ira_available_class_regs.
	(ira_available_class_regs): Delete.
	* ira.c (setup_available_class_regs): Delete.
	(setup_alloc_classes): Don't call it.
	(setup_pressure_classes): Use ira_class_hard_regs_num instead of
	ira_available_class_regs.
	* haifa-sched.c (print_curr_reg_pressure, setup_insn_reg_pressure_info)
	(model_spill_cost): Likewise.
	* ira-build.c (low_pressure_loop_node_p): Likewise.
	* ira-color.c (color_pass): Likewise.
	* ira-emit.c (change_loop): Likewise.
	* ira-lives.c (inc_register_pressure, dec_register_pressure)
	(single_reg_class, ira_implicitly_set_insn_hard_regs)
	(process_bb_node_lives): Likewise.
	* loop-invariant.c (gain_for_invariant): Likewise.

From-SVN: r188041
2012-05-31 05:27:03 +00:00