Commit Graph

110179 Commits

Author SHA1 Message Date
Dodji Seketeli d0a9fbe16c Use source_location where it is due
libcpp/

	* directives.c (struct if_stack): Use source_location as type
	here.
	* include/cpplib.h (struct cpp_callbacks)<include, define, undef,
	indent, def_pragma, used_define, used_undef>: Properly use
	source_location as parameter type, rather than unsigned int.

From-SVN: r176333
2011-07-15 23:34:02 +02:00
Jason Merrill 6feeed065c re PR testsuite/49741 (make -k check-c++0x not multilib aware)
PR testsuite/49741
gcc/
	* Makefile.in ($(lang_checks_parallelized)): Allow --extra_opts
	rather than --tool_opts.
gcc/cp/
	* Make-lang.in (check-c++0x): Use --extra_opts instead of--tool_opts.
gcc/testsuite/
	* lib/g++.exp (${tool}_option_help, ${tool}_option_proc): Restore.
	Use --extra_opts instead of --additional_options.

	* Makefile.in (check-c++): Move check-gcc-c++0x after
	check-target-libstdc++-v3.

From-SVN: r176332
2011-07-15 17:29:57 -04:00
Basile Starynkevitch 4476205585 plugins.texi (Building GCC plugins): gengtype needs its gtype.state.
2011-07-15  Basile Starynkevitch  <basile@starynkevitch.net>

	* doc/plugins.texi (Building GCC plugins): gengtype needs its
	gtype.state.

From-SVN: r176329
2011-07-15 20:05:51 +00:00
Jakub Jelinek b378a5669d re PR testsuite/49753 (FAIL: g++.dg/torture/pr49309.C)
PR testsuite/49753
	PR tree-optimization/49309
	* testsuite/libmudflap.c++/pass68-frag.cxx: New test.

	* g++.dg/torture/pr49309.C: Remove.

From-SVN: r176327
2011-07-15 21:48:46 +02:00
Jakub Jelinek bfee0724e0 wait.h (do_spin): New inline...
* config/linux/wait.h (do_spin): New inline, largely copied
	from do_wait, just don't do futex_wait here, instead return true if
	it should be done.
	(do_wait): Implement using do_spin.
	* config/linux/mutex.h (gomp_mutex_lock_slow): Add an int argument
	to prototype.
	(gomp_mutex_lock): Use __sync_val_compare_and_swap instead of
	__sync_bool_compare_and_swap, pass the oldval to
	gomp_mutex_lock_slow.
	* config/linux/mutex.c (gomp_mutex_lock_slow): Add oldval argument.
	If all mutex contenders are just spinning and not sleeping, don't
	change state to 2 unnecessarily.  Optimize the loop when state has
	already become 2 to use just one atomic operation per loop instead
	of two.
	* config/linux/ia64/mutex.h (gomp_mutex_lock_slow): Add an int argument
	to prototype.
	(gomp_mutex_lock): Use __sync_val_compare_and_swap instead of
	__sync_bool_compare_and_swap, pass the oldval to
	gomp_mutex_lock_slow.

From-SVN: r176326
2011-07-15 21:46:11 +02:00
John David Anglin 1be0310c76 re PR target/49723 (gcc.c-torture/compile/pr46934.c: ICE in do_SUBST, at combine.c:707 at -O1 and above)
PR target/49723
	* config/pa/pa.md (casesi): Use gen_int_mode instead of GEN_INT.

From-SVN: r176319
2011-07-15 18:11:18 +00:00
Eric Botcazou 12c5ffe5ef re PR debug/48220 (DW_OP_GNU_entry_value/DW_TAG_GNU_call_site_parameter vs register window)
PR target/48220
	* doc/md.texi (Standard Names): Document window_save.
	* cfgexpand.c (expand_debug_parm_decl): New function extracted from
	expand_debug_expr and expand_debug_source_expr.  If the target has
	a window_save instruction, adjust the ENTRY_VALUE_EXP.
	(expand_debug_expr) <SSA_NAME>: Call expand_debug_parm_decl if the
	SSA_NAME_VAR is a parameter.
	(expand_debug_source_expr) <PARM_DECL>: Call expand_debug_parm_decl.
	* var-tracking.c (parm_reg_t): New type and associated vector type.
	(windowed_parm_regs): New variable.
	(adjust_insn): If the target has a window_save instruction and this
	is the instruction, make its effect on parameter registers explicit.
	(next_non_note_insn_var_location): New function.
	(emit_notes_in_bb): Use it instead of NEXT_INSN throughout.
	(vt_add_function_parameter): If the target has a window_save insn,
	adjust the incoming RTL and record that in windowed_parm_regs.
	(vt_finalize): Free windowed_parm_regs.

From-SVN: r176318
2011-07-15 17:09:56 +00:00
H.J. Lu 021a9e7ef2 Remove gcc/testsuite/ prefix.
From-SVN: r176317
2011-07-15 07:58:16 -07:00
Bernd Schmidt aef0e7a8c2 revert: re PR rtl-optimization/11320 (Scheduler bug)
Revert
	2003-07-10  Eric Botcazou  <ebotcazou@libertysurf.fr>
	PR rtl-optimization/11320
	* sched-int.h (struct deps) [reg_conditional_sets]: New field.
	(struct sched_info) [compute_jump_reg_dependencies]: New prototype.
	* sched-deps.c (sched_analyze_insn) [JUMP_INSN]: Update call to
	current_sched_info->compute_jump_reg_dependencies. Record which
	registers are used and which registers are set by the jump.
	Clear deps->reg_conditional_sets after a barrier.
	Set deps->reg_conditional_sets if the insn is a COND_EXEC.
	Clear deps->reg_conditional_sets if the insn is not a COND_EXEC.
	(init_deps): Initialize reg_conditional_sets.
	(free_deps): Clear reg_conditional_sets.
	* sched-ebb.c (compute_jump_reg_dependencies): New prototype.
	Mark registers live on entry of the fallthrough block and conditionally
	set as set by the jump. Mark registers live on entry of non-fallthrough
	blocks as used by the jump.
	* sched-rgn.c (compute_jump_reg_dependencies): New prototype.
	Mark new parameters as unused.

From-SVN: r176315
2011-07-15 13:20:10 +00:00
Bernd Schmidt ce6e60b2a4 re PR testsuite/49757 (FAIL: gcc.target/tic6x/*.c)
PR testsuite/49757
	* gcc/testsuite/gcc.target/tic6x/builtins/c6x-builtins.exp: Return if
	not testing tic6x-*-*.

From-SVN: r176313
2011-07-15 12:11:00 +00:00
Bernd Schmidt 7c9f979516 * MAINTAINERS (c6x port): New entry.
From-SVN: r176312
2011-07-15 10:31:16 +00:00
Bernd Schmidt 294689c43b weak-call.c: New test.
* gcc.target/tic6x/weak-call.c: New test.
	* gcc.target/tic6x/fpcmp.c: New test.
	* gcc.target/tic6x/fpdiv.c: New test.
	* gcc.target/tic6x/rotdi16-scan.c: New test.
	* gcc.target/tic6x/ffssi.c: New test.
	* gcc.target/tic6x/fpdiv-lib.c: New test.
	* gcc.target/tic6x/cold-lc.c: New test.
	* gcc.target/tic6x/longcalls.c: New test.
	* gcc.target/tic6x/abi-align-1.c: New test.
	* gcc.target/tic6x/fpcmp-finite.c: New test.
	* gcc.target/tic6x/rotdi16.c: New test.
	* gcc.target/tic6x/bswapl.c: New test.
	* gcc.target/tic6x/ffsdi.c: New test.
	* gcc.target/tic6x/tic6x.exp: New file.
	* gcc/testsuite/gcc.target/tic6x/builtins/arith24.c: New test.
	* gcc/testsuite/gcc.target/tic6x/builtins/smpy.c: New test.
	* gcc/testsuite/gcc.target/tic6x/builtins/smpylh.c: New test.
	* gcc/testsuite/gcc.target/tic6x/builtins/smpyh.c: New test.
	* gcc/testsuite/gcc.target/tic6x/builtins/sarith1.c: New test.
	* gcc/testsuite/gcc.target/tic6x/builtins/extclr.c: New test
	* gcc/testsuite/gcc.target/tic6x/builtins/c6x-builtins.exp: New file.
	* gcc.target/tic6x/builtin-math-7.c: New test, adapted from gcc.dg.
	* lib/target-supports.exp (chck_profiling_available): Not on tic6x.
	(check_effective_target_ti_c67x, check_effective_target_ti_c64xp):
	New functions.
	* gcc.c-torture/execute/20101011-1.c: Add a condition for
	__TMS320C6X__.
	* gcc.dg/20020312-2.c: Likewise.
	* gcc.dg/pr27095.c: Handle tic6x like hppa.
	* gcc.dg/torture/pr37868.c: Skip on tic6x.
	* gcc.dg/torture/builtin-math-7.c: Likewise.

From-SVN: r176310
2011-07-15 09:43:05 +00:00
Bernd Schmidt bcead286bf invoke.texi (C6X Options): New section.
gcc/
	* doc/invoke.texi (C6X Options): New section.
	* doc/md.texi (TI C6X family): New section.
	* config.gcc: Handle tic6x, in particular tic6x-*-elf and
	tic6x-*-uclinux.
	* longlong.h (add_ssaaaa, __umulsidi3, umul_ppmm,
	count_leading_zeros, count_trailing_zeros, UMUL_TIME, UDIV_TIME):
	Provide C6X definitions.
	* config/c6x/c6x.md: New file.
	* config/c6x/constraints.md: New file.
	* config/c6x/predicates.md: New file.
	* config/c6x/c6x-sched.md.in: New file.
	* config/c6x/c6x-sched.md: New file.
	* config/c6x/gensched.sh: New file.
	* config/c6x/c6x-mult.md.in: New file.
	* config/c6x/genmult.sh: New file.
	* config/c6x/c6x-mult.md: New file.
	* config/c6x/sync.md: New file.
	* config/c6x/c6x-protos.h: New file.
	* config/c6x/sfp-machine.h: New file.
	* config/c6x/c6x.c: New file.
	* config/c6x/c6x.h: New file.
	* config/c6x/crti.s: New file.
	* config/c6x/crtn.s: New file.
	* config/c6x/lib1funcs.asm: New file.
	* config/c6x/c6x-modes.def: New file.
	* config/c6x/genopt.sh: New file.
	* config/c6x/c6x.opt: New file.
	* config/c6x/c6x-tables.opt: New file.
	* config/c6x/c6x-opts.h: New file.
	* config/c6x/c6x-isas.def: New file.
	* config/c6x/elf.h: New file.
	* config/c6x/elf-common.h: New file.
	* config/c6x/uclinux-elf.h: New file.
	* config/c6x/t-c6x: New file.
	* config/c6x/t-c6x-elf: New file.
	* config/c6x/t-c6x-uclinux: New file.
	* config/c6x/t-c6x-softfp: New file.
	* config/c6x/gtd.c: New file.
	* config/c6x/gtf.c: New file.
	* config/c6x/ltd.c: New file.
	* config/c6x/ltf.c: New file.
	* config/c6x/ged.c: New file.
	* config/c6x/gef.c: New file.
	* config/c6x/led.c: New file.
	* config/c6x/lef.c: New file.
	* config/c6x/eqd.c: New file.
	* config/c6x/eqf.c: New file.
	* config/c6x/libgcc-c6xeabi.ver: New file.

contrib/
	* gcc_update: Add C6X generated files.
	* contrib/config-list.mk: Add c6x-elf and c6x-uclinux.

libgcc/
	* config.host: Handle tic6x-*-*.
	* config/c6x/c6x-abi.h: New file.

From-SVN: r176308
2011-07-15 09:36:40 +00:00
Eric Botcazou 9e36aa2367 * gcc-interface/gigi.h: Move around comment.
From-SVN: r176307
2011-07-15 07:33:09 +00:00
Eric Botcazou f39a9ca22f re PR ada/48711 (failure to bootstrap or build ada for mingw (value not in range of type "Interfaces.C.unsigned" in g-socthi.adb))
PR ada/48711
	* g-socthi-mingw.adb (Fill): Fix formatting.

From-SVN: r176305
2011-07-15 05:52:04 +00:00
GCC Administrator efa8c82ad7 Daily bump.
From-SVN: r176301
2011-07-15 00:18:34 +00:00
John David Anglin e3aca52231 re PR ada/46350 (s-taprop.adb:891:40: warning: redundant conversion, expression is of type "Interrupt_ID")
PR ada/46350
	* s-taprop-hpux-dce.adb (Abort_Task): Remove unnecessary cast.

From-SVN: r176296
2011-07-14 23:22:17 +00:00
Andrew Pinski 9bed2f0d15 re PR tree-optimization/49309 (ICE with -fmudflap: verify_stmts failed: type mismatch in pointer plus expression)
2011-07-14  Andrew Pinski  <pinskia@gmail.com>

	PR tree-opt/49309
	* tree-mudflap.c (mf_xform_derefs_1 <case MEM_REF>):
	Use fold_build2_loc instead of build2.
	Use the correct type for the new tree.

2011-07-14  Andrew Pinski  <pinskia@gmail.com>

	PR tree-opt/49309
	* g++.dg/torture/pr49309.C: New testcase.

From-SVN: r176281
2011-07-14 13:23:36 -07:00
Bernd Schmidt 1f88caaae1 re PR rtl-optimization/11320 (Scheduler bug)
PR rtl-optimization/11320
	* config/ia64/ia64.md (load_symptr_low): Show a MEM.
	* config/ia64/ia64.c (ia64_expand_load_address): Generate it.

From-SVN: r176280
2011-07-14 17:06:33 +00:00
Bernd Schmidt 0c7e607dfc * gcc.dg/pr48770.c: Add dg-require-effective-target fpic.
From-SVN: r176279
2011-07-14 16:40:29 +00:00
Daniel Carrera 8019694098 Remove error parameter from caf_runtime_error. Add caf_runtime_error to single.c.
From-SVN: r176278
2011-07-14 15:49:00 +00:00
Georg-Johann Lay d772f97cb6 re PR target/49487 ([avr] ICE in bytewise rotate)
PR target/49487
	* config/avr/avr.md (rotl<mode>3): Generate SCRATCH instead
	of REG.
	(*rotw<mode>): Use const_int_operand for operand2.
	Use match_scatch for operand3.
	(*rotb<mode>): Ditto
	* config/avr/avr.c (avr_rotate_bytes): Treat SCRATCH.

From-SVN: r176276
2011-07-14 15:10:12 +00:00
Richard Guenther 1a5d20a4e0 re PR tree-optimization/49651 (nested lambdas and -O3 produced incorrect integer variable increments)
2011-07-14  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/49651
	* tree-ssa-structalias.c (get_constraint_for_1): Properly
	handle dereferences with subvariables.

	* gcc.dg/torture/pr49651.c: New testcase.

From-SVN: r176274
2011-07-14 14:53:30 +00:00
Richard Guenther 5fbcc0ed20 gimple-fold.c (fold_gimple_assign): Remove operand swapping.
2011-07-14  Richard Guenther  <rguenther@suse.de>

	* gimple-fold.c (fold_gimple_assign): Remove operand swapping.
	(fold_stmt_1): Do it here directly on gimple and as a first thing.

From-SVN: r176273
2011-07-14 14:21:07 +00:00
Richard Guenther fbf3fee2b9 fold-const.c (fold_binary_loc): Convert the !bool_var result...
2011-07-14  Richard Guenther  <rguenther@suse.de>

	* fold-const.c (fold_binary_loc): Convert the !bool_var result,
	not bool_var when folding bool_var != 1 or bool_var == 0.

From-SVN: r176272
2011-07-14 12:42:17 +00:00
Bernd Schmidt b953c2b834 haifa-sched.c (schedule_insns): Remove outdated comment.
* haifa-sched.c (schedule_insns): Remove outdated comment.
	(schedule_block): When computing a known value for TODO_SPEC,
	just set it rather than using logical operations.
	(try_ready): Likewise.  Use a local variable rather than a
	pointer to TODO_SPEC.  Reorder an if statement to move the
	easy case to the then block.
	* sched-deps.c (dep_spec_p): New static function.
	(update_dep): Use it to decide whether to call
	change_spec_dep_to_hard.
	(get_back_and_forw_lists): Use it.
	(sd_resolve_dep): Likewise.
	(init_dep): If !USE_DEPS_LIST, use zero to initialize status.
	(haifa_note_mem_dep): Likewise.
	(check_dep): Likewise.
	(sd_add_dep): Also clear SPECULATIVE bits if not DO_SPECULATION.
	(sched_free_deps): Free in two passes.

From-SVN: r176271
2011-07-14 11:55:59 +00:00
Richard Sandiford 1f098f077c re PR middle-end/49736 (Revision 176228 miscompiled 255.vortex in SPEC CPU 2000)
gcc/
	PR middle-end/49736
	* expr.c (all_zeros_p): Undo bogus part of last change.

From-SVN: r176270
2011-07-14 11:49:01 +00:00
Matthias Klose 76f59013b2 extend.texi (optimize attribute): Fix (another) typo.
2011-07-14  Matthias Klose <doko@ubuntu.com>

        * doc/extend.texi (optimize attribute): Fix (another) typo.

From-SVN: r176269
2011-07-14 11:47:37 +00:00
Matthias Klose 73059910bc extend.texi (optimize attribute): Fix typo.
2011-07-14  Matthias Klose <doko@ubuntu.com>

        * doc/extend.texi (optimize attribute): Fix typo.

From-SVN: r176268
2011-07-14 11:41:31 +00:00
Richard Guenther bd5d002e99 gimplify.c (gimplify_expr): Only do required conversions.
2011-07-14  Richard Guenther  <rguenther@suse.de>

	* gimplify.c (gimplify_expr): Only do required conversions.

From-SVN: r176267
2011-07-14 11:23:02 +00:00
Florian Weimer 696b1960a5 re PR ada/48711 (failure to bootstrap or build ada for mingw (value not in range of type "Interfaces.C.unsigned" in g-socthi.adb))
PR ada/48711
	* g-socthi-mingw.adb (Fill): Guard against invalid MSG_WAITALL.

From-SVN: r176265
2011-07-14 09:27:22 +00:00
Georg-Johann Lay eb1dcdffa7 re PR target/43746 (-fmerge-constants and -fmerge-all-constants don't work at AVR target)
gcc/
	PR target/43746
	* config/avr/elf.h (TARGET_ASM_SELECT_SECTION): Remove,
	i.e. use default_elf_select_section.
	(TARGET_HAVE_SWITCHABLE_BSS_SECTIONS): Remove.
	(READONLY_DATA_SECTION_ASM_OP): Remove.
	(TARGET_ASM_NAMED_SECTION): Move from here...
	* config/avr/avr.c: ...to here.
	(avr_asm_init_sections): Set unnamed callback of
	readonly_data_section.
	(avr_asm_named_section): Make static.
	
testsuite/
	PR target/43746
	* gcc.dg/array-quals-1.c: Don't xfail on AVR.

From-SVN: r176262
2011-07-14 07:49:14 +00:00
Rainer Orth d31fb329c8 Restore bootstrap on Linux/x86.
2011-07-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	PR bootstrap/49739
	* config.gcc (extra_parts): Add crtprec32.o crtprec64.o crtp
	rec80.o crtfastmath.o for Linux/x86.

From-SVN: r176261
2011-07-13 20:38:06 -07:00
Sriraman Tallam 8ff3369c78 2012011-07-13 Sriraman Tallam <tmsriram@google.com>
* plugin-api.h
	(ld_plugin_section): New struct.
	(ld_plugin_get_section_count): New typedef.
	(ld_plugin_get_section_type): New typedef.
	(ld_plugin_get_section_name): New typedef.
	(ld_plugin_get_section_contents): New typedef.
	(ld_plugin_update_section_order): New typedef.
	(ld_plugin_allow_section_ordering): New typedef.
	(LDPT_GET_SECTION_COUNT): New enum value.
	(LDPT_GET_SECTION_TYPE): New enum value.
	(LDPT_GET_SECTION_NAME): New enum value.
	(LDPT_GET_SECTION_CONTENTS): New enum value.
	(LDPT_UPDATE_SECTION_ORDER): New enum value.
	(LDPT_ALLOW_SECTION_ORDERING): New enum value.
	(tv_get_section_count): New struct members.
	(tv_get_section_type): New struct members.
	(tv_get_section_name): New struct members.
	(tv_get_section_contents): New struct members.
	(tv_update_section_order): New struct members.
	(tv_allow_section_ordering): New struct members.

From-SVN: r176260
2011-07-14 01:44:11 +00:00
GCC Administrator 6cd6962911 Daily bump.
From-SVN: r176259
2011-07-14 00:18:23 +00:00
Bernd Schmidt 26965010b9 haifa-sched.c: Include "hashtab.h"
* haifa-sched.c: Include "hashtab.h"
	(sched_no_dce): New global variable.
	(INSN_EXACT_TICK, INSN_TICK_ESTIMATE, FEEDS_BACKTRACK_INSN,
	SHADOW_P): New macros.
	(last_clock_var, cycle_issued_insns): Move declarations.
	(must_backtrack): New static variable.
	(struct delay_pair): New structure.
	(delay_htab, delay_htab_i2): New static variables.
	(delay_hash_i1, delay_hash_i2, delay_i1_eq, delay_i2_eq,
	record_delay_slot_pair, pair_delay, add_delay_dependencies): New
	functions.
	(dep_cost_1): If delay pairs exist, try to look up the insns and
	use the correct pair delay if we find them.
	(rank-for_schedule): Tweak priority for insns that must be scheduled
	soon to avoid backtracking.
	(queue_insn): Detect conditions which force backtracking.
	(ready_add): Likewise.
	(struct sched_block_state): Add member shadows_only_p.
	(struct haifa_save_data): New structure.
	(backtrack_queue): New static variable.
	(mark_backtrack_feeds, copy_insn_list, save_backtrack_point,
	unschedule_insns_until, restore_last_backtrack_point,
	free_topmost_backtrack_point, free_backtrack_queue,
	estimate_insn_tick, estimate_shadow_tick): New functions.
	(prune_ready_list): New arg shadows_only_p.  All callers changed.
	If true, remove everything that isn't SHADOW_P.  Look up delay
	pairs and estimate ticks to avoid scheduling the first insn too
	early.
	(verify_shadows): New function.
	(schedule_block): Add machinery to enable backtracking.
	(sched_init): Take sched_no_dce into account when setting
	DF_LR_RUN_DCE.
	(free_delay_pairs): New function.
	(init_h_i_d): Initialize INSN_EXACT_TICK.
	* Makefile.in (haifa-sched.o): Add $(HASHTAB_H).
	* sched-deps.c (sd_unresolve_dep): New function.
	* sched-int.h (struct haifa_sched_info): New fields save_state
	and restore_state.
	(struct _haifa_insn_data): New fields exact_tick, tick_estimate,
	feeds_backtrack_insn and shadow_p.
	(DO_BACKTRACKING): New value in enum SCHED_FLAGS.
	(sched_no_dce): Declare variable.
	(record_delay_slot_pair, free_delay_pairs, add_delay_dependencies,
	sd_unresolve_dep): Declare functions.
	* modulo-sched.c (sms_sched_info): Clear the two new fields.
	* sched-rgn.c (rgn_const_sched_info): Likewise.
	* sel-sched-ir.c (sched_sel_haifa_sched_info): Likewise.
	* sched-ebb.c (save_ebb_state, restore_ebb_state): New functions.
	(ebb_sched_info): Add them for the two new fields.
	(add_deps_for_risky_insns): Call add_delay_dependencies.

From-SVN: r176255
2011-07-13 23:10:52 +00:00
Michael Meissner 13b7a7b9d8 Change -mno-r11 to -mno-pointers-to-nested-functions
From-SVN: r176253
2011-07-13 22:21:44 +00:00
Michael Meissner 1db75f6c39 Change -mno-r11 to -mno-pointers-to-nested-functions
From-SVN: r176252
2011-07-13 21:38:29 +00:00
Eric Botcazou f542c405c0 utils.c (build_vms_descriptor32): Skip the 32-bit range comparison if Pmode is SImode.
* gcc-interface/utils.c (build_vms_descriptor32): Skip the 32-bit
	range comparison if Pmode is SImode.

From-SVN: r176251
2011-07-13 21:13:49 +00:00
Jason Merrill e2995714b3 Also test -std=c++0x mode with 'make check-c++' at top level
Also test -std=c++0x mode with 'make check-c++' at top level
	* Makefile.in (check-gcc-c++0x): New.
	(check-c++): Depend on it.
gcc/
	* Makefile.in ($(lang_checks_parallelized)): Allow --tool_opts.
gcc/cp/
	* Make-lang.in (check-c++0x): New.
gcc/testsuite/
	* lib/g++.exp (${tool}_option_help, ${tool}_option_proc): Remove.
	* lib/lto.exp (lto_prune_warns): Prune warning about -std=c++0x
	when compiling C files.

From-SVN: r176250
2011-07-13 16:30:54 -04:00
Ulrich Weigand 4dfe3ad52b spu.c (spu_init_libfuncs): Install __clrsbdi2.
* config/spu/spu.c (spu_init_libfuncs): Install __clrsbdi2.
	* config/spu/spu.md ("clrsb<mode>2"): New expander.

From-SVN: r176249
2011-07-13 19:19:35 +00:00
Thomas Schwinge dddc67624e acinclude.m4 (gcc_GAS_CHECK_FEATURE): Use AS_ECHO instead of echo.
gcc/
	* acinclude.m4 (gcc_GAS_CHECK_FEATURE): Use AS_ECHO instead of echo.
	* configure: Regenerate.

From-SVN: r176248
2011-07-13 21:17:21 +02:00
Ulrich Weigand b4d80e5681 spu.c (TARGET_ASM_FILE_START): Do not define.
* config/spu/spu.c (TARGET_ASM_FILE_START): Do not define.
	(asm_file_start): Remove.
	(spu_machine_dependent_reorg): Call compute_bb_for_insn and
	free_bb_for_insn around code that modifies insns before
	restarting df analysis.

From-SVN: r176247
2011-07-13 19:07:25 +00:00
Janne Blomqvist 5f54710465 PR 49296 List read, EOF without preceding separator
2011-07-13  Janne Blomqvist  <jb@gcc.gnu.org>

	PR libfortran/49296
	* io/list_read.c (read_logical): Don't error out if a valid value
	is followed by EOF instead of a normal separator.
	(read_integer): Likewise.

testsuite:

2011-07-13  Janne Blomqvist  <jb@gcc.gnu.org>

	PR libfortran/49296
	* gfortran.dg/read_list_eof_1.f90: Add tests for integer, real,
	and logical reads.

From-SVN: r176245
2011-07-13 21:46:44 +03:00
Rainer Orth 9e34e53f8e re PR target/49541 (TLS support partially broken in 64-bit mode)
PR target/49541
	* config/sol2.h (LIB_SPEC): Simplify.
	Move LIB_THREAD_LDFLAGS_SPEC ...
	(LINK_SPEC): ... here.

From-SVN: r176244
2011-07-13 17:58:18 +00:00
Bernd Schmidt 515646845f haifa-sched.c (struct sched_block_state): New.
* haifa-sched.c (struct sched_block_state): New.
	(schedule_block): Move some local variables into such a structure.

From-SVN: r176243
2011-07-13 17:47:26 +00:00
Rainer Orth b3fe158425 crtprec.c: Move to ../libgcc/config/i386.
gcc:
	* config/i386/crtprec.c: Move to ../libgcc/config/i386.
	* config/i386/t-crtpc: Remove.
	* config/t-darwin (EXTRA_MULTILIB_PARTS): Remove.
	* config.gcc (i[34567]86-*-darwin*): Remove i386/t-crtpc from
	tmake_file.
	(x86_64-*-darwin*): Likewise.
	(i[34567]86-*-linux*): Likewise.
	(x86_64-*-linux*): Likewise.

	* config/i386/sol2.h (ENDFILE_SPEC): Redefine.
	Handle -mpc32, -mpc64, -mpc80.

	libgcc:
	* config/i386/crtprec.c: New file.
	* config/i386/t-crtpc: Use $(srcdir) to refer to crtprec.c.
	* config.host (i[34567]86-*-darwin*): Add i386/t-crtpc to tmake_file.
	Add crtprec32.o, crtprec64.o, crtprec80.o to extra_parts.
	(x86_64-*-darwin*): Likewise.
	(i[34567]86-*-solaris2*: Likewise.

	gcc/testsuite:
	* gcc.c-torture/execute/990127-2.x: Use -mpc64 on i?86-*-darwin*,
	i?86-*-solaris2*, x86_64-*-darwin*, x86_64-*-solaris2*.

From-SVN: r176242
2011-07-13 17:39:35 +00:00
Rainer Orth 35d8090d78 crtfastmath.c: Move to ../libgcc/config/alpha.
gcc:
	* config/alpha/crtfastmath.c: Move to ../libgcc/config/alpha.
	* config/alpha/t-crtfm: Remove.
	* config/i386/crtfastmath.c: Move to ../libgcc/config/i386.
	* config/i386/t-crtfm: Remove.
	* config/ia64/crtfastmath.c: Move to ../libgcc/config/ia64.
	* config/mips/crtfastmath.c: Move to ../libgcc/config/mips.
	* config/sparc/crtfastmath.c: Move to ../libgcc/config/sparc.
	* config/sparc/t-crtfm: Remove.

	* config.gcc (alpha*-*-linux*): Remove alpha/t-crtfm from tmake_file.
	(alpha*-*-freebsd*): Likewise.
	(i[34567]86-*-darwin*): Remove i386/t-crtfm from tmake_file.
	(x86_64-*-darwin*): Likewise.
	(i[34567]86-*-linux*): Likewise.
	(x86_64-*-linux*): Likewise.
	(x86_64-*-mingw*): Likewise.
	(ia64*-*-elf*): Remove crtfastmath.o from extra_parts.
	(ia64*-*-freebsd*): Likewise.
	(ia64*-*-linux*): Likewise.
	(mips64*-*-linux*): Likewise.
	(mips*-*-linux*): Likewise.
	(sparc-*-linux*): Remove sparc/t-crtfm from tmake_file.
	(sparc64-*-linux*): Likewise.
	(sparc64-*-freebsd*): Likewise.

	libgcc:
	* config/alpha/crtfastmath.c: New file.
	* config/i386/crtfastmath.c: New file.
	* config/ia64/crtfastmath.c: New file.
	* config/mips/crtfastmath.c: New file.
	* config/sparc/crtfastmath.c: New file.

	* config/t-crtfm (crtfastmath.o): Use $(srcdir) to refer to
	crtfastmath.c.
	Add -frandom-seed=gcc-crtfastmath.
	* config/alpha/t-crtfm: Remove.
	* config/i386/t-crtfm: Use $(srcdir) to refer to crtfastmath.c.
	* config/ia64/t-ia64 (crtfastmath.o): Remove.

	* config.host (alpha*-*-linux*): Replace alpha/t-crtfm by t-crtfm.
	(alpha*-dec-osf5.1*): Likewise.
	(alpha*-*-freebsd*): Add t-crtfm to tmake_file.
	Add crtfastmath.o to extra_parts.
	(i[34567]86-*-darwin*): Add i386/t-crtfm to tmake_file.
	Add crtfastmath.o to extra_parts.
	(x86_64-*-darwin*): Likewise.
	(x86_64-*-mingw*): Likewise.
	(ia64*-*-elf*): Add t-crtfm to tmake_file.
	(ia64*-*-freebsd*): Likewise.
	(ia64*-*-linux*): Likewise.
	(sparc64-*-freebsd*): Add t-crtfm to tmake_file.
	Add crtfastmath.o to extra_parts.

From-SVN: r176241
2011-07-13 17:33:38 +00:00
Uros Bizjak 19073ebc7a g++.exp (g++_init): Use istarget.
* lib/g++.exp (g++_init):  Use istarget.  Remove target_triplet global.
	* lib/obj-c++.exp (obj-c++_init): Ditto.
	* lib/file-format.exp (gcc_target_object_format): Ditto.
	* lib/target-supports-dg.exp (dg-require-dll): Ditto.
	* lib/target-supports-dg-exp (check_weak_available): Ditto.
	(check_visibility_available): Ditto.
	(check_effective_target_tls_native): Ditto.
	(check_effective_target_tls_emulated): Ditto.
	(check_effective_target_function_sections): Ditto.

From-SVN: r176240
2011-07-13 18:31:56 +02:00
Rainer Orth e141542e74 darwin-crt2.c: Move to ../libgcc/config/rs6000.
gcc:
	* config/darwin-crt2.c: Move to ../libgcc/config/rs6000.
	* config/darwin-crt3.c: Move to ../libgcc/config.
	* config/t-darwin (EXTRA_MULTILIB_PARTS): Remove.
	($(T)crt3$(objext)): Remove.
	* config/rs6000/t-darwin (DARWIN_EXTRA_CRT_BUILD_CFLAGS): Remove.
	($(T)crt2$(objext)): Remove.
	* config.gcc (powerpc-*-darwin*): Remove extra_parts.
	(powerpc64-*-darwin*): Likewise.

	gcc/po:
	* EXCLUDES (config/darwin-crt2.c): Remove.

	libgcc:
	* config/darwin-crt3.o: New file.
	* config/rs6000/darwin-crt2.c: New file.
	* config/t-darwin: New file.
	* config/rs6000/t-darwin (DARWIN_EXTRA_CRT_BUILD_CFLAGS): New variable.
	(crt2.o): New rule.
	* config.host (*-*-darwin*): Add crt3.o to extra_parts.
	(powerpc-*-darwin*): Add crt2.o to extra_parts.
	(powerpc64-*-darwin*): Likewise.

From-SVN: r176239
2011-07-13 16:28:30 +00:00