Commit Graph

113964 Commits

Author SHA1 Message Date
Ian Lance Taylor
03eee7f75c runtime: RTEMS build fixes.
From Joel Sherrill.

From-SVN: r182309
2011-12-13 21:59:26 +00:00
Fabien Chêne
091d222216 revert an unattended change about access declaration
From-SVN: r182308
2011-12-13 22:18:03 +01:00
Aldy Hernandez
54c39478f8 trans-mem.c (ipa_tm_create_version_alias): Set DECL_CONTEXT and DECL_LANG_SPECIFIC.
* trans-mem.c (ipa_tm_create_version_alias): Set DECL_CONTEXT and
        DECL_LANG_SPECIFIC.

From-SVN: r182307
2011-12-13 20:32:26 +00:00
Andreas Krebbel
c2db543b53 regmove.c (fixup_match_2): Only access call_used_regs with hard regs.
2011-12-13  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* regmove.c (fixup_match_2): Only access call_used_regs with hard
	regs.

From-SVN: r182306
2011-12-13 20:22:59 +00:00
Richard Henderson
5d9d05d349 rwlock.cc (gtm_rwlock::write_lock_generic): Fix signed/unsigned comparison werror.
* config/posix/rwlock.cc (gtm_rwlock::write_lock_generic): Fix
        signed/unsigned comparison werror.

From-SVN: r182302
2011-12-13 12:10:36 -08:00
Richard Henderson
b826bea7f3 Revert two unintended commits
From-SVN: r182301
2011-12-13 12:07:01 -08:00
Andrew Pinski
38a53a0e25 mips-cpus.def: Add Octeon2.
2011-12-13  Andrew Pinski  <apinski@cavium.com>
            Adam Nemet  <anemet@caviumnetworks.com>

	* config/mips/mips-cpus.def: Add Octeon2.
	* config/mips/mips-tables.opt: Regenerate.
	* config/mips/mips.md (define_attr "cpu"): Add Octeon2.
	* config/mips/driver-native.c (host_detect_local_cpu): Support Octeon2 also.
	* config/mips/octeon.md (octeon_arith): Add Octeon2.
	(octeon_condmove): Likewise.
	(octeon_load): Rename to ..
	(octeon_load_o1): this.
	(octeon_load_o2): New reserve.
	(octeon_cop_o2): New reserve.
	(octeon_store):  Match Octeon2 also.
	(octeon_brj): Rename to ..
	(octeon_brj_o1): this.
	(octeon_brj_o2): New reserve.
	(octeon_imul3): Rename to ...
	(octeon_imul3_o1): this.
	(octeon_imul3_o2): New reserve.
	(octeon_imul): Rename to ...
	(octeon_imul_o1): this.
	(octeon_imul_o2): New reserve.
	(octeon_mfhilo): Rename to ...
	(octeon_mfhilo_o1): This.
	(octeon_mfhilo_o2): New reserve.
	(octeon_imadd): Rename to ...
	(octeon_imadd_o1): this.
	(octeon_imadd_o2): New reserve.
	(octeon_idiv): Rename to ..
	(octeon_idiv_o1): This.
	(octeon_idiv_o2_si): New reserve.
	(octeon_idiv_o2_di): Likewise.
	(octeon_unknown): Match Octeon2 also.
	* config/mips/mips.c (mips_rtx_cost_data): Add Octeon2 cost data.
	(mips_issue_rate): Octeon2 can issue 2 at a time.
	* config/mips/mips.h (TARGET_OCTEON): Match Octeon2 also.
	(TARGET_OCTEON2): New define.
	(TUNE_OCTEON): Match Octeon2 also.

2011-12-13  Andrew Pinski  <apinski@cavium.com>
            Adam Nemet  <anemet@caviumnetworks.com>

	* gcc.target/mips/mips.exp (mips_option_groups): Fix debug.  Add
	-fdump-* options.
	* gcc.target/mips/octeon2-pipe-1.c: New testcase.
	* gcc.target/mips/octeon-pipe-1.c: New testcase.


Co-Authored-By: Adam Nemet <anemet@caviumnetworks.com>

From-SVN: r182300
2011-12-13 12:00:18 -08:00
Richard Henderson
e9619a8a00 arm: Implement vec_perm and vec_perm_const for NEON.
From-SVN: r182299
2011-12-13 11:58:56 -08:00
Richard Henderson
8c75d41b92 Delete VEC_INTERLEAVE_*_EXPR.
* tree.def (VEC_INTERLEAVE_HIGH_EXPR, VEC_INTERLEAVE_LOW_EXPR): Remove.
	* gimple-pretty-print.c (dump_binary_rhs): Don't handle
	VEC_INTERLEAVE_HIGH_EXPR and VEC_INTERLEAVE_LOW_EXPR.
	* expr.c (expand_expr_real_2): Likewise.
	* tree-cfg.c (verify_gimple_assign_binary): Likewise.
	* cfgexpand.c (expand_debug_expr): Likewise.
	* tree-inline.c (estimate_operator_cost): Likewise.
	* tree-pretty-print.c (dump_generic_node): Likewise.
	* tree-vect-generic.c (expand_vector_operations_1): Likewise.
	* fold-const.c (fold_binary_loc): Likewise.
	* doc/generic.texi (VEC_INTERLEAVE_HIGH_EXPR,
	VEC_INTERLEAVE_LOW_EXPR): Remove documentation.
	* optabs.c (optab_for_tree_code): Don't handle
	VEC_INTERLEAVE_HIGH_EXPR and VEC_INTERLEAVE_LOW_EXPR.
	(expand_binop, init_optabs): Remove vec_interleave_high_optab
	and vec_interleave_low_optab.
	* genopinit.c (optabs): Likewise.
	* optabs.h (OTI_vec_interleave_high, OTI_vec_interleave_low): Remove.
	(vec_interleave_high_optab, vec_interleave_low_optab): Remove.
	* doc/md.texi (vec_interleave_high, vec_interleave_low): Remove
	documentation.
	* tree-vect-stmts.c (gen_perm_mask): Renamed to...
	(vect_gen_perm_mask): ... this.  No longer static.
	(perm_mask_for_reverse, vectorizable_load): Adjust callers.
	* tree-vectorizer.h (vect_gen_perm_mask): New prototype.
	* tree-vect-data-refs.c (vect_strided_store_supported): Don't try
	VEC_INTERLEAVE_*_EXPR, use can_vec_perm_p instead of
	can_vec_perm_for_code_p.
	(vect_permute_store_chain): Generate VEC_PERM_EXPR with interleaving
	masks instead of VEC_INTERLEAVE_HIGH_EXPR and VEC_INTERLEAVE_LOW_EXPR.
	* config/i386/i386.c (expand_vec_perm_interleave2): If
	expand_vec_perm_interleave3 would handle it, return false.
	(expand_vec_perm_broadcast_1): Don't use vec_interleave_*_optab.

From-SVN: r182298
2011-12-13 11:58:49 -08:00
Richard Henderson
6cc7fb9051 sparc: Default memory model to TSO for Linux and Solaris.
* config/sparc/tso.h: New file.
        * config.gcc (sparc-*-linux*, sparc*-*-solaris2*): Use it.
        * config/sparc/sparc.c (sparc_option_override): Honor
        SUBTARGET_DEFAULT_MEMORY_MODEL.
        * config/sparc/sparc.h (SUBTARGET_DEFAULT_MEMORY_MODEL): New.

From-SVN: r182297
2011-12-13 11:22:44 -08:00
Ian Lance Taylor
9dadf3bf5e libgo: Solaris compatibility patches.
From Rainer Orth.

From-SVN: r182296
2011-12-13 19:18:34 +00:00
Ian Lance Taylor
7b1c3dd9e6 libgo: Update to weekly.2011-12-02.
From-SVN: r182295
2011-12-13 19:16:27 +00:00
Richard Henderson
36cfbee133 libitm: Conversion to c++11 atomics.
* local_atomic: New file.
        * libitm_i.h: Include it.
        (gtm_thread::shared_state): Use atomic template.
        * beginend.cc (GTM::gtm_clock): Use atomic template.
        (global_tid): Use atomic template if 64-bit atomics available.
        (gtm_thread::gtm_thread): Update shared_state access.
        (gtm_thread::trycommit): Likewise.
        (choose_code_path): Update global_tid access.
        * method-gl.cc (gl_mg::orec): Use atomic template.  Update all users.
        * stmlock.h (GTM::gtm_clock): Use atomic template.
        (gtm_get_clock, gtm_inc_clock): Update accesses.
        * config/linux/rwlock.cc (gtm_rwlock::read_lock): Remove
        redundant __sync_synchronize after atomic shared_state access.
        * config/posix/rwlock.cc (gtm_rwlock::read_lock): Likewise.
        (gtm_rwlock::write_lock_generic): Likewise.
        (gtm_rwlock::read_unlock): Likewise.
        * config/alpha/target.h (atomic_read_barrier): Remove.
        (atomic_write_barrier): Remove.
        * config/x86/target.h (atomic_read_barrier): Remove.
        (atomic_write_barrier): Remove.

From-SVN: r182294
2011-12-13 11:11:25 -08:00
Ian Lance Taylor
c36cc670b5 compiler: Fix multiple conversions to different named slices.
From-SVN: r182293
2011-12-13 18:52:19 +00:00
Fabien Chêne
0f8fa9b678 re PR c++/14258 (typename in a using declaration not supported)
gcc/testsuite/ChangeLog

2011-12-11  Fabien Chene  <fabien@gcc.gnu.org>

	PR c++/14258
	* g++.dg/template/using16.C: New.
	* g++.dg/template/using17.C: New.

gcc/cp/ChangeLog

2011-12-11  Fabien Chene  <fabien@gcc.gnu.org>

	PR c++/14258
	* cp-tree.h (USING_DECL_TYPENAME_P): New macro.
	* parser.c (cp_parser_nonclass_name): Handle using declarations
	that refer to a dependent type.
	(cp_parser_using_declaration): Set USING_DECL_TYPENAME_P to 1 if
	the using declaration refers to a dependent type.

From-SVN: r182292
2011-12-13 19:46:58 +01:00
Ian Lance Taylor
863ea6cf55 compiler: Permit converting between string and named []byte/[]rune.
From-SVN: r182291
2011-12-13 18:09:56 +00:00
Aldy Hernandez
80fd8eba8e trans-mem.c (struct diagnose_tm): Remove saw_unsafe.
PR/51443
        * trans-mem.c (struct diagnose_tm): Remove saw_unsafe.
        (diagnose_tm_1): Same.
        (ipa_tm_execute): Do not test tm_may_enter_irr before we set it.
        (ipa_tm_scan_irr_function): Return gracefully when no
        DECL_STRUCT_FUNCTION.
        (ipa_tm_scan_irr_block): Believe the user on TM attributes.

From-SVN: r182290
2011-12-13 17:49:55 +00:00
Martin Jambor
d370518679 re PR middle-end/50628 (gfortran.fortran-torture/execute/entry_4.f90 fails)
2011-12-13  Martin Jambor  <mjambor@suse.cz>

	PR middle-end/50628
	* tree-sra.c (propagate_subaccesses_across_link): Do not propagate
	sub-accesses of scalar accesses.

From-SVN: r182289
2011-12-13 17:08:14 +01:00
Martin Jambor
0318fc7749 re PR tree-optimization/51362 (ICE: SIGFPE (division by zero) in good_cloning_opportunity_p at ipa-cp.c:2401)
2011-12-13  Martin Jambor  <mjambor@suse.cz>

	PR tree-optimization/51362
	* ipa-cp.c (estimate_local_effects): When estimated size of a
	specialized clone is zero, bump it to one.

	* testsuite/gcc.dg/ipa/pr51362.c: New test.

From-SVN: r182288
2011-12-13 16:43:36 +01:00
Uros Bizjak
9170437b04 re PR testsuite/51524 ([BMI2] New regression on 182266 vs 182257)
PR testsuite/51524
	* gcc.target/i386/bmi2-mulx32-1.c (gen_mulx): Add attribute regparm(2).
	* gcc.target/i386/bmi2-mulx32-2.c (calc_mulx_u32): Ditto.

From-SVN: r182287
2011-12-13 16:00:09 +01:00
Richard Guenther
ea973bad53 re PR debug/48354 (internal compiler error: in splice_child_die, at dwarf2out.c:8064)
2011-12-13  Richard Guenther  <rguenther@suse.de>

	PR lto/48354
	* tree.c (find_decls_types_r): Also walk DECL_ORIGINAL_TYPE.
	* tree-streamer-in.c (lto_input_ts_decl_non_common_tree_pointers):
	Stream DECL_ORIGINAL_TYPE.
	* tree-streamer-out.c (write_ts_decl_non_common_tree_pointers):
	Likewise.

	lto/
	* lto.c (lto_ft_decl_non_common): When we merged DECL_ORIGINAL_TYPE
	with the type of the TYPE_DECL clear DECL_ORIGINAL_TYPE.

	* g++.dg/lto/pr48354-1_0.C: New testcase.

From-SVN: r182286
2011-12-13 14:43:44 +00:00
Michael Matz
88d599dcf6 life -> live; one favourite typo of mine.
From-SVN: r182285
2011-12-13 14:07:26 +00:00
Jakub Jelinek
f6dbed3269 Revert
2011-12-12  Jakub Jelinek  <jakub@redhat.com>

	PR tree-optimization/51481
	* gimple-fold.c (gimple_fold_call): Call
	maybe_clean_or_replace_eh_stmt.  Avoid optimization if stmt has EH
	edges, but gimple_fold_builtin result can't throw.

From-SVN: r182284
2011-12-13 15:00:58 +01:00
Jakub Jelinek
ea85edfe73 re PR tree-optimization/51117 (rev.181172 causes glibc build failure)
PR tree-optimization/51117
	* tree-eh.c (sink_clobbers): New function.
	(execute_lower_eh_dispatch): Call it for BBs ending with
	internally throwing RESX.
	* cfgexpand.c (add_scope_conflicts_1): Add all conflicts only
	at the first real instruction.

Co-Authored-By: Michael Matz <matz@suse.de>

From-SVN: r182283
2011-12-13 13:59:35 +00:00
Tristan Gingold
bc45e4ba5a final.c (final_scan_insn): Guard the call to begin_epilogue debug hook.
2011-12-13  Tristan Gingold  <gingold@adacore.com>

	* final.c (final_scan_insn): Guard the call to begin_epilogue
	debug hook.

From-SVN: r182282
2011-12-13 13:41:12 +00:00
Tristan Gingold
e8a8ce6929 vmsdbgout.c (vmsdbgout_write_source_line): New function.
2011-12-13  Tristan Gingold  <gingold@adacore.com>

	* vmsdbgout.c (vmsdbgout_write_source_line): New function.
	(vmsdbgout_end_prologue): Call vmsdbgout_write_source_line.
	(vmsdbgout_begin_epilogue): Likewise.
	(vmsdbgout_end_epilogue): Likewise.
	(vmsdbgout_source_line): Move code to vmsdbgout_write_source_line.

From-SVN: r182281
2011-12-13 13:30:18 +00:00
Richard Guenther
4642ed2952 re PR tree-optimization/51481 (ice: dead STMT in EH table)
2011-12-13  Richard Guenther  <rguenther@suse.de>

	PR middle-end/51481
	* tree-cfg.c (replace_uses_by): Pass proper arguments to
	maybe_clean_or_replace_eh_stmt.

From-SVN: r182280
2011-12-13 12:56:09 +00:00
Richard Guenther
a5c3d18c25 re PR tree-optimization/51519 (ICE: in inline_small_functions, at ipa-inline.c:1410 with -O -fno-guess-branch-probability -findirect-inlining)
2011-12-13  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/51519
	* ipa-inline.c (edge_badness): Use edge growth in non-guessed
	branch probability case as well.

	* gcc.dg/pr51519.c: New testcase.

From-SVN: r182279
2011-12-13 12:54:57 +00:00
Richard Guenther
4634c03b72 20111213-1_0.c: New testcase.
2011-12-13  Richard Guenther  <rguenther@suse.de>

	* gcc.dg/lto/20111213-1_0.c: New testcase.

From-SVN: r182278
2011-12-13 12:41:15 +00:00
Eric Botcazou
ba3125d780 vect1.ad[sb]: Add more tests.
* gnat.dg/vect1.ad[sb]: Add more tests.
	* gnat.dg/vect2.ad[sb]: Likewise.
	* gnat.dg/vect3.ad[sb]: Likewise.
	* gnat.dg/vect4.ad[sb]: Likewise.
	* gnat.dg/vect5.ad[sb]: Likewise.
	* gnat.dg/vect6.ad[sb]: Likewise.

From-SVN: r182276
2011-12-13 11:26:14 +00:00
Cesar Strauss
ddf2e10953 re PR ada/49084 (bootstrap failure with Ada enabled)
PR ada/49084
	* types.h (Byte): Change typedef to 'unsigned char'.
	* atree.h (struct Flag_Word): Use Byte for 'convention' field.

From-SVN: r182275
2011-12-13 11:21:28 +00:00
Revital Eres
20936ceefe SMS: Add missing free operation in mark_loop_unsched
From-SVN: r182271
2011-12-13 05:41:45 +00:00
GCC Administrator
407a5d6ae3 Daily bump.
From-SVN: r182270
2011-12-13 00:18:54 +00:00
Ian Lance Taylor
ab61e9c4da libgo: Update to weekly.2011-11-18.
From-SVN: r182266
2011-12-12 23:40:51 +00:00
Jakub Jelinek
6e456f4cf4 re PR rtl-optimization/51495 (ICE: in force_nonfallthru_and_redirect, at cfgrtl.c:1171 with computed goto)
PR rtl-optimization/51495
	* function.c (thread_prologue_and_epilogue_insns): Don't add
	to bb_tail basic blocks that have EDGE_COMPLEX predecessor edges
	from basic blocks not needing prologue.

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

From-SVN: r182265
2011-12-12 22:00:36 +01:00
Jakub Jelinek
c88388e674 re PR tree-optimization/51481 (ice: dead STMT in EH table)
PR tree-optimization/51481
	* gimple-fold.c (gimple_fold_call): Call
	maybe_clean_or_replace_eh_stmt.  Avoid optimization if stmt has EH
	edges, but gimple_fold_builtin result can't throw.

	* gcc.dg/pr51481.c: New test.

From-SVN: r182264
2011-12-12 21:59:28 +01:00
Vladimir Makarov
9c3b03463a re PR rtl-optimization/21617 (CRC64 algorithm optimization problem on Intel 32-bit)
2011-12-12  Vladimir Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/21617
	* ira-color.c (bucket_allocno_compare_func): Don't compare
	allocno classes.  Compare number of hard registers needed.

From-SVN: r182263
2011-12-12 20:51:16 +00:00
Georg-Johann Lay
35a730f86f re PR tree-optimization/45830 (Code+rodata increase with -ftree-switch-conversion)
PR tree-optimization/45830
	* gcc.c-torture/execute/pr45830.c: Move from here to...
	* gcc.dg/torture/pr45830.c: ...this new file.  Add dg-do and
	dg-additional-options magic.

From-SVN: r182262
2011-12-12 20:13:40 +00:00
Janne Blomqvist
1d84354610 gfortran.dg/nested_modules_2.f90: Tighten test.
2011-12-12  Janne Blomqvist  <jb@gcc.gnu.org>

	* gfortran.dg/nested_modules_2.f90: Tighten test.

From-SVN: r182258
2011-12-12 21:36:39 +02:00
Jakub Jelinek
007db66070 re PR c++/51496 (FAIL: libgomp.c++/for-2.C * (test for excess errors))
PR c++/51496
	* parser.c (cp_parser_omp_for_loop): When determining whether
	to use cp_parser_omp_for_incr or cp_parser_expression and when
	calling cp_parser_omp_for_incr, use real_decl instead of decl.

From-SVN: r182257
2011-12-12 19:55:06 +01:00
Ian Lance Taylor
fe4bf59fb6 net/http: delete temporary files.
From-SVN: r182256
2011-12-12 18:45:08 +00:00
Eric Botcazou
0b27284847 re PR tree-optimization/50569 (unaligned memory accesses generated for memcpy)
PR tree-optimization/50569
	* tree-sra.c (build_ref_for_model): Replicate a chain of COMPONENT_REFs
	in the expression of MODEL instead of just the last one.

From-SVN: r182252
2011-12-12 18:22:13 +00:00
Dmitry Vyukov
f7c8a2da77 Fix flags for edges from/to entry/exit basic blocks.
* cgraphunit.c (init_lowered_empty_function):
	Fix flags for new edges.

From-SVN: r182251
2011-12-12 10:03:36 -08:00
Paolo Carlini
60f3dad78d revert: re PR target/51135 (SIGSEGV during exception cleanup on win32)
2011-12-12  Paolo Carlini  <paolo.carlini@oracle.com>

	Revert:
	2011-12-12  Kai Tietz  <ktietz@redhat.com>

	PR libstdc++/51135
	* libsupc++/cxxabi.h (__cxa_dtor_type): New type.
	(__cxa_throw): Use it for destructor-argument.
	* libsupc++/eh_throw.cc (__cxa_throw): Likewise.
	* libsupc++/unwind-cxx.h (__cxa_exception): Change type of member
	exceptionDestructor to __cxa_dtor_type.
	* config/os/mingw32-w64/os_defines.h (_GLIBCXX_USE_THISCALL_ON_DTOR):
	Define.
	(__cxa_dtor_type): Declare target secific type variant.
	* config/os/mingw32/os_defines.h: Likewise.

From-SVN: r182250
2011-12-12 17:34:19 +00:00
Paolo Carlini
7252b079fc 2011-12-12 Paolo Carlini <paolo.carlini@oracle.com>
* Revert the last commit.

From-SVN: r182249
2011-12-12 17:29:17 +00:00
Jakub Jelinek
30f232fd7a re PR testsuite/51511 (gcc.dg/pr45819.c fails on arm-linux-gnueabi due to PR50078+PR51466 fix)
PR testsuite/51511
	* gcc.dg/pr45819.c: Add -w to dg-options.

From-SVN: r182247
2011-12-12 17:48:46 +01:00
Jakub Jelinek
c79be1dc34 re PR middle-end/51510 (gcc for arm-linux-gnueabi ICEs on gcc.c-torture/execute/20050713-1.c due to PR50074+PR51323 fix)
PR middle-end/51510
	* calls.c (internal_arg_pointer_based_exp_scan): Don't use
	VEC_safe_grow_cleared if idx is smaller than VEC_length.

From-SVN: r182246
2011-12-12 17:44:23 +01:00
Richard Sandiford
431e1124ed re PR tree-optimization/50873 (The fix to PR50730 causes gcc.c-torture/unsorted/dilayout.c to ICE)
gcc/
	PR middle-end/50873
	* optabs.c (maybe_legitimize_operand_same_code): Use copy_to_mode_reg
	instead of force_reg.  Do nothing if the address is already a
	non-virtual pseudo register.

From-SVN: r182244
2011-12-12 15:18:24 +00:00
Arnaud Charlet
c9556982a7 [multiple changes]
2011-12-12  Robert Dewar  <dewar@adacore.com>

	* s-taprop-mingw.adb: Minor reformatting.

2011-12-12  Nicolas Roche  <roche@adacore.com>

	* gcc-interface/Make-lang.in: Update dependencies.
	Add gnattools4 target when building tools in canadian mode

2011-12-12  Javier Miranda  <miranda@adacore.com>

	* exp_disp.adb (Make_VM_TSD): Complete previous
	patch.

2011-12-12  Bob Duff  <duff@adacore.com>

	* s-tpobop.adb: Use named notation.
	* g-bytswa.ads, s-taprop.ads: Minor comment fix.

2011-12-12  Arnaud Charlet  <charlet@adacore.com>

	* make.adb: Minor comment update.

From-SVN: r182242
2011-12-12 15:33:39 +01:00
Robert Dewar
cf7bb903f4 freeze.adb, [...]: Minor reformatting.
2011-12-12  Robert Dewar  <dewar@adacore.com>

	* freeze.adb, s-taprop-mingw.adb, exp_disp.adb, sem_ch13.adb: Minor
	reformatting.

From-SVN: r182241
2011-12-12 14:49:10 +01:00