Skip to content
Snippets Groups Projects
  1. Jul 15, 2011
    • Jakub Jelinek's avatar
      wait.h (do_spin): New inline... · bfee0724
      Jakub Jelinek authored
      	* 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
      bfee0724
    • John David Anglin's avatar
      re PR target/49723 (gcc.c-torture/compile/pr46934.c: ICE in do_SUBST, at... · 1be0310c
      John David Anglin authored
      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
      1be0310c
    • Eric Botcazou's avatar
      re PR debug/48220 (DW_OP_GNU_entry_value/DW_TAG_GNU_call_site_parameter vs register window) · 12c5ffe5
      Eric Botcazou authored
      	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
      12c5ffe5
    • H.J. Lu's avatar
      Remove gcc/testsuite/ prefix. · 021a9e7e
      H.J. Lu authored
      From-SVN: r176317
      021a9e7e
    • Bernd Schmidt's avatar
      revert: re PR rtl-optimization/11320 (Scheduler bug) · aef0e7a8
      Bernd Schmidt authored
      	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
      aef0e7a8
    • Bernd Schmidt's avatar
      re PR testsuite/49757 (FAIL: gcc.target/tic6x/*.c) · ce6e60b2
      Bernd Schmidt authored
      	PR testsuite/49757
      	* gcc/testsuite/gcc.target/tic6x/builtins/c6x-builtins.exp: Return if
      	not testing tic6x-*-*.
      
      From-SVN: r176313
      ce6e60b2
    • Bernd Schmidt's avatar
      * MAINTAINERS (c6x port): New entry. · 7c9f9795
      Bernd Schmidt authored
      From-SVN: r176312
      7c9f9795
    • Bernd Schmidt's avatar
      weak-call.c: New test. · 294689c4
      Bernd Schmidt authored
      	* 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
      294689c4
    • Bernd Schmidt's avatar
      invoke.texi (C6X Options): New section. · bcead286
      Bernd Schmidt authored
      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
      bcead286
    • Eric Botcazou's avatar
      * gcc-interface/gigi.h: Move around comment. · 9e36aa23
      Eric Botcazou authored
      From-SVN: r176307
      9e36aa23
    • Eric Botcazou's avatar
      re PR ada/48711 (failure to bootstrap or build ada for mingw (value not in... · f39a9ca2
      Eric Botcazou authored
      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
      f39a9ca2
    • GCC Administrator's avatar
      Daily bump. · efa8c82a
      GCC Administrator authored
      From-SVN: r176301
      efa8c82a
  2. Jul 14, 2011
  3. Jul 13, 2011
    • Bernd Schmidt's avatar
      haifa-sched.c: Include "hashtab.h" · 26965010
      Bernd Schmidt authored
      	* 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
      26965010
    • Michael Meissner's avatar
      Change -mno-r11 to -mno-pointers-to-nested-functions · 13b7a7b9
      Michael Meissner authored
      From-SVN: r176253
      13b7a7b9
    • Michael Meissner's avatar
      Change -mno-r11 to -mno-pointers-to-nested-functions · 1db75f6c
      Michael Meissner authored
      From-SVN: r176252
      1db75f6c
    • Eric Botcazou's avatar
      utils.c (build_vms_descriptor32): Skip the 32-bit range comparison if Pmode is SImode. · f542c405
      Eric Botcazou authored
      	* gcc-interface/utils.c (build_vms_descriptor32): Skip the 32-bit
      	range comparison if Pmode is SImode.
      
      From-SVN: r176251
      f542c405
    • Jason Merrill's avatar
      Also test -std=c++0x mode with 'make check-c++' at top level · e2995714
      Jason Merrill authored
      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
      e2995714
    • Ulrich Weigand's avatar
      spu.c (spu_init_libfuncs): Install __clrsbdi2. · 4dfe3ad5
      Ulrich Weigand authored
      	* config/spu/spu.c (spu_init_libfuncs): Install __clrsbdi2.
      	* config/spu/spu.md ("clrsb<mode>2"): New expander.
      
      From-SVN: r176249
      4dfe3ad5
    • Thomas Schwinge's avatar
      acinclude.m4 (gcc_GAS_CHECK_FEATURE): Use AS_ECHO instead of echo. · dddc6762
      Thomas Schwinge authored
      	gcc/
      	* acinclude.m4 (gcc_GAS_CHECK_FEATURE): Use AS_ECHO instead of echo.
      	* configure: Regenerate.
      
      From-SVN: r176248
      dddc6762
    • Ulrich Weigand's avatar
      spu.c (TARGET_ASM_FILE_START): Do not define. · b4d80e56
      Ulrich Weigand authored
      	* 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
      b4d80e56
    • Janne Blomqvist's avatar
      PR 49296 List read, EOF without preceding separator · 5f547104
      Janne Blomqvist authored
      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
      5f547104
Loading