platform/upstream/linaro-gcc.git
13 years agoUse source_location where it is due
dodji [Fri, 15 Jul 2011 21:34:02 +0000 (21:34 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176333 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR testsuite/49741
jason [Fri, 15 Jul 2011 21:29:57 +0000 (21:29 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176332 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-07-15 Basile Starynkevitch <basile@starynkevitch.net>
bstarynk [Fri, 15 Jul 2011 20:05:51 +0000 (20:05 +0000)]
2011-07-15  Basile Starynkevitch  <basile@starynkevitch.net>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176329 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR testsuite/49753
jakub [Fri, 15 Jul 2011 19:48:46 +0000 (19:48 +0000)]
PR testsuite/49753
PR tree-optimization/49309
* testsuite/libmudflap.c++/pass68-frag.cxx: New test.

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176327 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/linux/wait.h (do_spin): New inline, largely copied
jakub [Fri, 15 Jul 2011 19:46:11 +0000 (19:46 +0000)]
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176326 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR target/49723
danglin [Fri, 15 Jul 2011 18:11:18 +0000 (18:11 +0000)]
PR target/49723
* config/pa/pa.md (casesi): Use gen_int_mode instead of GEN_INT.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176319 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR target/48220
ebotcazou [Fri, 15 Jul 2011 17:09:56 +0000 (17:09 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176318 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoRemove gcc/testsuite/ prefix.
hjl [Fri, 15 Jul 2011 14:58:16 +0000 (14:58 +0000)]
Remove gcc/testsuite/ prefix.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176317 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago Revert
bernds [Fri, 15 Jul 2011 13:20:10 +0000 (13:20 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176315 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR testsuite/49757
bernds [Fri, 15 Jul 2011 12:11:00 +0000 (12:11 +0000)]
PR testsuite/49757
* gcc/testsuite/gcc.target/tic6x/builtins/c6x-builtins.exp: Return if
not testing tic6x-*-*.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176313 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * MAINTAINERS (c6x port): New entry.
bernds [Fri, 15 Jul 2011 10:31:16 +0000 (10:31 +0000)]
* MAINTAINERS (c6x port): New entry.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176312 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * gcc.target/tic6x/weak-call.c: New test.
bernds [Fri, 15 Jul 2011 09:43:05 +0000 (09:43 +0000)]
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176310 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agogcc/
bernds [Fri, 15 Jul 2011 09:36:40 +0000 (09:36 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176308 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * gcc-interface/gigi.h: Move around comment.
ebotcazou [Fri, 15 Jul 2011 07:33:09 +0000 (07:33 +0000)]
* gcc-interface/gigi.h: Move around comment.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176307 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR ada/48711
ebotcazou [Fri, 15 Jul 2011 05:52:04 +0000 (05:52 +0000)]
PR ada/48711
* g-socthi-mingw.adb (Fill): Fix formatting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176305 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoDaily bump.
gccadmin [Fri, 15 Jul 2011 00:18:34 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176301 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR ada/46350
danglin [Thu, 14 Jul 2011 23:22:17 +0000 (23:22 +0000)]
PR ada/46350
* s-taprop-hpux-dce.adb (Abort_Task): Remove unnecessary cast.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176296 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-07-14 Andrew Pinski <pinskia@gmail.com>
pinskia [Thu, 14 Jul 2011 20:23:36 +0000 (20:23 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176281 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR rtl-optimization/11320
bernds [Thu, 14 Jul 2011 17:06:33 +0000 (17:06 +0000)]
PR rtl-optimization/11320
* config/ia64/ia64.md (load_symptr_low): Show a MEM.
* config/ia64/ia64.c (ia64_expand_load_address): Generate it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176280 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * gcc.dg/pr48770.c: Add dg-require-effective-target fpic.
bernds [Thu, 14 Jul 2011 16:40:29 +0000 (16:40 +0000)]
* gcc.dg/pr48770.c: Add dg-require-effective-target fpic.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176279 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoRemove error parameter from caf_runtime_error. Add caf_runtime_error to single.c.
dcarrera [Thu, 14 Jul 2011 15:49:00 +0000 (15:49 +0000)]
Remove error parameter from caf_runtime_error. Add caf_runtime_error to single.c.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176278 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR target/49487
gjl [Thu, 14 Jul 2011 15:10:12 +0000 (15:10 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176276 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-07-14 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 14 Jul 2011 14:53:30 +0000 (14:53 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176274 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-07-14 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 14 Jul 2011 14:21:07 +0000 (14:21 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176273 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-07-14 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 14 Jul 2011 12:42:17 +0000 (12:42 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176272 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * haifa-sched.c (schedule_insns): Remove outdated comment.
bernds [Thu, 14 Jul 2011 11:55:59 +0000 (11:55 +0000)]
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176271 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agogcc/
rsandifo [Thu, 14 Jul 2011 11:49:01 +0000 (11:49 +0000)]
gcc/
PR middle-end/49736
* expr.c (all_zeros_p): Undo bogus part of last change.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176270 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-07-14 Matthias Klose <doko@ubuntu.com>
doko [Thu, 14 Jul 2011 11:47:37 +0000 (11:47 +0000)]
2011-07-14  Matthias Klose <doko@ubuntu.com>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176269 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-07-14 Matthias Klose <doko@ubuntu.com>
doko [Thu, 14 Jul 2011 11:41:31 +0000 (11:41 +0000)]
2011-07-14  Matthias Klose <doko@ubuntu.com>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176268 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-07-14 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 14 Jul 2011 11:23:02 +0000 (11:23 +0000)]
2011-07-14  Richard Guenther  <rguenther@suse.de>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176267 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR ada/48711
ebotcazou [Thu, 14 Jul 2011 09:27:22 +0000 (09:27 +0000)]
PR ada/48711
* g-socthi-mingw.adb (Fill): Guard against invalid MSG_WAITALL.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176265 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agogcc/
gjl [Thu, 14 Jul 2011 07:49:14 +0000 (07:49 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176262 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoRestore bootstrap on Linux/x86.
hjl [Thu, 14 Jul 2011 03:38:06 +0000 (03:38 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176261 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2012011-07-13 Sriraman Tallam <tmsriram@google.com>
tmsriram [Thu, 14 Jul 2011 01:44:11 +0000 (01:44 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176260 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoDaily bump.
gccadmin [Thu, 14 Jul 2011 00:18:23 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176259 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * haifa-sched.c: Include "hashtab.h"
bernds [Wed, 13 Jul 2011 23:10:52 +0000 (23:10 +0000)]
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176255 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoChange -mno-r11 to -mno-pointers-to-nested-functions
meissner [Wed, 13 Jul 2011 22:21:44 +0000 (22:21 +0000)]
Change -mno-r11 to -mno-pointers-to-nested-functions

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176253 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoChange -mno-r11 to -mno-pointers-to-nested-functions
meissner [Wed, 13 Jul 2011 21:38:29 +0000 (21:38 +0000)]
Change -mno-r11 to -mno-pointers-to-nested-functions

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176252 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * gcc-interface/utils.c (build_vms_descriptor32): Skip the 32-bit
ebotcazou [Wed, 13 Jul 2011 21:13:49 +0000 (21:13 +0000)]
* gcc-interface/utils.c (build_vms_descriptor32): Skip the 32-bit
range comparison if Pmode is SImode.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176251 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoAlso test -std=c++0x mode with 'make check-c++' at top level
jason [Wed, 13 Jul 2011 20:30:54 +0000 (20:30 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176250 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/spu/spu.c (spu_init_libfuncs): Install __clrsbdi2.
uweigand [Wed, 13 Jul 2011 19:19:35 +0000 (19:19 +0000)]
* config/spu/spu.c (spu_init_libfuncs): Install __clrsbdi2.
* config/spu/spu.md ("clrsb<mode>2"): New expander.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176249 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago gcc/
tschwinge [Wed, 13 Jul 2011 19:17:21 +0000 (19:17 +0000)]
gcc/
* acinclude.m4 (gcc_GAS_CHECK_FEATURE): Use AS_ECHO instead of echo.
* configure: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176248 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/spu/spu.c (TARGET_ASM_FILE_START): Do not define.
uweigand [Wed, 13 Jul 2011 19:07:25 +0000 (19:07 +0000)]
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176247 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoPR 49296 List read, EOF without preceding separator
jb [Wed, 13 Jul 2011 18:46:44 +0000 (18:46 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176245 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR target/49541
ro [Wed, 13 Jul 2011 17:58:18 +0000 (17:58 +0000)]
PR target/49541
* config/sol2.h (LIB_SPEC): Simplify.
Move LIB_THREAD_LDFLAGS_SPEC ...
(LINK_SPEC): ... here.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176244 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * haifa-sched.c (struct sched_block_state): New.
bernds [Wed, 13 Jul 2011 17:47:26 +0000 (17:47 +0000)]
* haifa-sched.c (struct sched_block_state): New.
(schedule_block): Move some local variables into such a structure.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176243 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago gcc:
ro [Wed, 13 Jul 2011 17:39:35 +0000 (17:39 +0000)]
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*.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176242 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago gcc:
ro [Wed, 13 Jul 2011 17:33:38 +0000 (17:33 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176241 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * lib/g++.exp (g++_init): Use istarget. Remove target_triplet global.
uros [Wed, 13 Jul 2011 16:31:56 +0000 (16:31 +0000)]
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176240 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago gcc:
ro [Wed, 13 Jul 2011 16:28:30 +0000 (16:28 +0000)]
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176239 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoSupport ptr_mode != Pmode in x86_output_mi_thunk.
hjl [Wed, 13 Jul 2011 15:54:15 +0000 (15:54 +0000)]
Support ptr_mode != Pmode in x86_output_mi_thunk.

2011-07-13  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.c (x86_output_mi_thunk): Support ptr_mode
!= Pmode.

* config/i386/i386.md (*addsi_1_zext): Renamed to ...
(addsi_1_zext): This.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176238 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * configure.ac: Don't create pth.
ro [Wed, 13 Jul 2011 14:57:29 +0000 (14:57 +0000)]
* configure.ac: Don't create pth.
Check for library containing sched_yield.
* configure: Regenerate.
* config.h.in: Regenerate.

* testsuite/lib/libmudflap.exp (libmudflap-init): Use
mfconfig_libs in -static check.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176237 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * doc/tm.texi.in (TARGET_ASM_MERGEABLE_RODATA_PREFIX): Add hook.
bernds [Wed, 13 Jul 2011 13:32:57 +0000 (13:32 +0000)]
* doc/tm.texi.in (TARGET_ASM_MERGEABLE_RODATA_PREFIX): Add hook.
* doc/tm.texi: Regenerate.
* target.def (mergeable_rodata_prefix: New defhookpod.
* varasm.c (mergeable_string_section, mergeable_constant_section):
Use it. Allocate name with alloca.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176235 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoRemove -mfused-madd and add -mfma.
hjl [Wed, 13 Jul 2011 11:39:40 +0000 (11:39 +0000)]
Remove -mfused-madd and add -mfma.

2011-07-13  H.J. Lu  <hongjiu.lu@intel.com>

* doc/invoke.texi (x86): Remove -mfused-madd and add -mfma.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176230 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agogcc/
rsandifo [Wed, 13 Jul 2011 11:17:00 +0000 (11:17 +0000)]
gcc/
* tree-vect-loop-manip.c (vect_create_cond_for_alias_checks): Tighten
overlap check.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176229 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agogcc/
rsandifo [Wed, 13 Jul 2011 11:16:36 +0000 (11:16 +0000)]
gcc/
* tree.h (categorize_ctor_elements): Remove comment.  Fix long line.
(count_type_elements): Delete.
(complete_ctor_at_level_p): Declare.
* expr.c (flexible_array_member_p): New function, split out from...
(count_type_elements): ...here.  Make static.  Replace allow_flexarr
parameter with for_ctor_p.  When for_ctor_p is true, return the
number of elements that should appear in the top-level constructor,
otherwise return an estimate of the number of scalars.
(categorize_ctor_elements): Replace p_must_clear with p_complete.
(categorize_ctor_elements_1): Likewise.  Use complete_ctor_at_level_p.
(complete_ctor_at_level_p): New function, borrowing union logic
from old categorize_ctor_elements_1.
(mostly_zeros_p): Return true if the constructor is not complete.
(all_zeros_p): Update call to categorize_ctor_elements.
* gimplify.c (gimplify_init_constructor): Update call to
categorize_ctor_elements.  Don't call count_type_elements.
Unconditionally prevent clearing for variable-sized types,
otherwise rely on categorize_ctor_elements to detect
incomplete initializers.

gcc/cp/
* typeck2.c (split_nonconstant_init_1): Pass the initializer directly,
rather than a pointer to it.  Return true if the whole of the value
was initialized by the generated statements.  Use
complete_ctor_at_level_p instead of count_type_elements.

gcc/testsuite/
2011-07-12  Chung-Lin Tang  <cltang@codesourcery.com>

* gcc.target/arm/pr48183.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176228 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-07-13 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 13 Jul 2011 10:32:55 +0000 (10:32 +0000)]
2011-07-13  Richard Guenther  <rguenther@suse.de>

* tree-vrp.c (simplify_conversion_using_ranges): Make sure
the final type is integral.

* gcc.dg/torture/20110713-1.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176227 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * sched-int.h (struct _dep): Add member cost.
bernds [Wed, 13 Jul 2011 10:18:32 +0000 (10:18 +0000)]
* sched-int.h (struct _dep): Add member cost.
(DEP_COST, UNKNOWN_DEP_COST): New macros.
* sched-deps.c (init_dep_1): Initialize DEP_COST.
* haifa-sched.c (dep_cost_1): Use and set DEP_COST.
(sched_change_pattern): Reset it for dependent insns.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176226 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago gcc:
ro [Wed, 13 Jul 2011 09:57:08 +0000 (09:57 +0000)]
gcc:
* Makefile.in (CRT0STUFF_T_CFLAGS): Remove.
($(T)crt0.o, $(T)mcrt0.o, s-crt0): Remove.
* config/i386/netware-crt0.c: Move to ../libgcc/config/i386.
* config/i386/t-nwld (CRTSTUFF_T_CFLAGS, CRT0STUFF_T_CFLAGS): Remove.
(CRT0_S, MCRT0_S): Remove.
($(T)libgcc.def, $(T)libc.def, $(T)libcpre.def, $(T)posixpre.def):
Remove.
(s-crt0): Remove.
* config.gcc (i[3456x]86-*-netware*): Remove extra_parts.

libgcc:
* config/i386/netware-crt0.c: New file.
* config/i386/t-nwld: Rename to ...
* config/i386/t-slibgcc-nwld: ... this.
* config/i386/t-nwld: New file.
* config.host (i[3456x]86-*-netware*): Add i386/t-slibgcc-nwld to
tmake_file.
Add crt0.o, libgcc.def, libc.def, libcpre.def, posixpre.def to
extra_parts.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176225 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agolibgo/testsuite/gotest: Run tests in source file order.
ian [Wed, 13 Jul 2011 01:04:50 +0000 (01:04 +0000)]
libgo/testsuite/gotest: Run tests in source file order.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176223 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoDaily bump.
gccadmin [Wed, 13 Jul 2011 00:18:47 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176222 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * name-lookup.h (cp_binding_level): Rename from cxx_scope.
dnovillo [Tue, 12 Jul 2011 22:59:39 +0000 (22:59 +0000)]
* name-lookup.h (cp_binding_level): Rename from cxx_scope.
Update all users.
(struct cp_binding_level): Fix indentation.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176218 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agos/recurson/recursion/
jason [Tue, 12 Jul 2011 21:24:43 +0000 (21:24 +0000)]
s/recurson/recursion/

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176217 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * cse.c (insert_with_costs): Put semi-colon after empty loop body
ebotcazou [Tue, 12 Jul 2011 20:07:09 +0000 (20:07 +0000)]
* cse.c (insert_with_costs): Put semi-colon after empty loop body
on the next line.
* emit-rtl.c (push_to_sequence): Likewise.
* haifa-sched.c (max_issue): Likewise.
* matrix-reorg.c (add_allocation_site): Likewise.
* postreload-gcse.c (eliminate_partially_redundant_load): Likewise.
* reload.c (alternative_allows_const_pool_ref): Likewise.
* sched-rgn.c (rgn_add_block): Likewise.
(rgn_fix_recovery_cfg): Likewise.
* tree.c (attribute_list_contained): Likewise.
c-family/
* c-ada-spec.c (dump_nested_types): Put semi-colon after empty loop
body on the next line.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176216 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/i386/i386.c: Tidy processor feature bitmasks.
uros [Tue, 12 Jul 2011 19:47:31 +0000 (19:47 +0000)]
* config/i386/i386.c: Tidy processor feature bitmasks.
(m_P4_NOCONA): New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176215 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-07-12 Andrew Pinski <pinskia@gmail.com>
pinskia [Tue, 12 Jul 2011 18:46:10 +0000 (18:46 +0000)]
2011-07-12  Andrew Pinski  <pinskia@gmail.com>

PR rtl-opt/49474
* cprop.c (find_implicit_sets): Correct the condition.

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

PR rtl-opt/49474
* gcc.c-torture/compile/pr49474.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176213 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoPR target/49713
rth [Tue, 12 Jul 2011 18:41:44 +0000 (18:41 +0000)]
PR target/49713
        * dwarf2out.h (dwarf_frame_regnum): Remove.
        * dwarf2out.c (based_loc_descr): Revert last change.  Initialize regno
        earlier from DWARF_FRAME_REGNUM.  Never use dbx_reg_number.
        * dwarf2cfi.c (dw_stack_pointer_regnum, dw_frame_pointer_regnum): New.
        (execute_dwarf2_frame): Initialize them.
        (DW_STACK_POINTER_REGNUM, DW_FRAME_POINTER_REGNUM): Remove; replace
        users of the macros with the variables.
        (expand_builtin_dwarf_sp_column): Revert last change.
        (expand_builtin_init_dwarf_reg_sizes): Likewise.  Compute the
        result of DWARF_FRAME_REGNUM into a local variable.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176212 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoPR target/49714
rth [Tue, 12 Jul 2011 18:20:29 +0000 (18:20 +0000)]
PR target/49714
        * config/i386/i386.c (x86_output_mi_thunk): Use
        machopic_indirect_call_target instead of machopic_indirection_name
        directly.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176211 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * prefix.h: Wrap up in extern "C" block.
ebotcazou [Tue, 12 Jul 2011 17:23:04 +0000 (17:23 +0000)]
* prefix.h: Wrap up in extern "C" block.
ada/
* adadecode.c: Wrap up in extern "C" block.
* adadecode.h: Likewise.
* adaint.c: Likewise.  Remove 'const' keyword.
* adaint.h: Likewise.
* argv.c: Likewise.
* atree.h: Likewise.
* cio.c: Likewise.
* cstreams.c: Likewise.
* env.c: Likewise.
* exit.c: Likewise.
* fe.h: Likewise.
* final.c: Likewise.
* init.c: Likewise.
* initialize.c: Likewise.
* link.c: Likewise.
* namet.h: Likewise.
* nlists.h: Likewise.
* raise.c: Likewise.
* raise.h: Likewise.
* repinfo.h: Likewise.
* seh_init.c: Likewise.
* targext.c: Likewise.
* tracebak.c: Likewise.
* uintp.h: Likewise.
* urealp.h: Likewise.
* xeinfo.adb: Wrap up generated C code in extern "C" block.
* xsinfo.adb: Likewise.
* xsnamest.adb: Likewise.
* gcc-interface/gadaint.h: Wrap up in extern "C" block.
* gcc-interface/gigi.h: Wrap up some prototypes in extern "C" block.
* gcc-interface/misc.c: Likewise.
* gcc-interface/Make-lang.in (GCC_LINK): Use LINKER.
(GNAT1_C_OBJS): Remove ada/b_gnat1.o.  List ada/seh_init.o and
ada/targext.o here...
(GNAT_ADA_OBJS): ...and not here.
(GNAT1_ADA_OBJS): Add ada/b_gnat1.o.
(GNATBIND_OBJS): Reorder.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176210 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-07-12 Harsha Jagasia <harsha.jagasia@amd.com>
hjagasia [Tue, 12 Jul 2011 16:26:02 +0000 (16:26 +0000)]
2011-07-12  Harsha Jagasia  <harsha.jagasia@amd.com>

AMD bdver2 Enablement
* config.gcc (i[34567]86-*-linux* | ...): Add bdver2.
(case ${target}): Add bdver2.
* config/i386/driver-i386.c (host_detect_local_cpu): Let
-march=native recognize bdver2 processors.
* config/i386/i386-c.c (ix86_target_macros_internal): Add
bdver2 def_and_undef
* config/i386/i386.c (struct processor_costs bdver2_cost): New
bdver2 cost table.
(m_BDVER2): New definition.
(m_AMD_MULTIPLE): Includes m_BDVER2.
(initial_ix86_tune_features): Add bdver2 tuning.
(processor_target_table): Add bdver2 entry.
(static const char *const cpu_names): Add bdver2 entry.
(ix86_option_override_internal): Add bdver2 instruction sets.
(ix86_issue_rate): Add bdver2.
(ix86_adjust_cost): Add bdver2.
(has_dispatch): Add bdver2.
* config/i386/i386.h (TARGET_BDVER2): New definition.
(enum target_cpu_default): Add TARGET_CPU_DEFAULT_bdver2.
(enum processor_type): Add PROCESSOR_BDVER2.
* config/i386/i386.md (define_attr "cpu"): Add bdver2.
* config/i386/i386.opt ( mdispatch-scheduler): Add bdver2 to
description.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176209 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoPR target/49714
rth [Tue, 12 Jul 2011 15:46:02 +0000 (15:46 +0000)]
PR target/49714
        * config/i386/i386.c (x86_output_mi_thunk): Fix mode for
        destination address in memory on some paths.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176208 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * doc/tm.texi.in (FUNCTION_ARG_PADDING): Mention
bernds [Tue, 12 Jul 2011 14:57:28 +0000 (14:57 +0000)]
* doc/tm.texi.in (FUNCTION_ARG_PADDING): Mention
TARGET_FUNCTION_ARG_ROUND_BOUNDARY.
(TARGET_FUNCTION_ARG_ROUND_BOUNDARY): Add hook.
* function.c (locate_and_pad_parm): Take it into account.
* target.def (function_arg_round_boundary): New hook.
* targhooks.c (default_function_arg_round_boundary): New function.
* targhooks.h (default_function_arg_round_boundary): Declare.
* doc/tm.texi: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176207 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-07-12 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 12 Jul 2011 14:38:41 +0000 (14:38 +0000)]
2011-07-12  Richard Guenther  <rguenther@suse.de>

* tree-ssa-copyrename.c (rename_ssa_copies): Zero statistics.
Do not perform no-op changes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176206 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoDelete moved source files.
ro [Tue, 12 Jul 2011 14:35:46 +0000 (14:35 +0000)]
Delete moved source files.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176205 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agogcc/
rsandifo [Tue, 12 Jul 2011 14:30:32 +0000 (14:30 +0000)]
gcc/
* config/arm/predicates.md (neon_struct_operand): Make a normal
predicate.
(neon_struct_or_register_operand): New predicate.
* config/arm/neon.md (movmisalign<mode>): Replace predicates
with neon_struct_or_register_operand.
(*movmisalign<mode>_neon_store, *movmisalign<mode>_neon_load): Use
neon_struct_operand instead of memory_operand.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176204 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-07-12 Andrew Haley <aph@redhat.com>
aph [Tue, 12 Jul 2011 12:56:50 +0000 (12:56 +0000)]
2011-07-12  Andrew Haley  <aph@redhat.com>

        * interpret.cc (check_handler): Fix bit rot.
        (breakpoint_at): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176200 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-07-12 Andrew Haley <aph@redhat.com>
aph [Tue, 12 Jul 2011 12:50:36 +0000 (12:50 +0000)]
2011-07-12  Andrew Haley  <aph@redhat.com>

* java/lang/natClass.cc (finalize): Make sure that the class
really has an engine.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176199 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-07-12 Martin Jambor <mjambor@suse.cz>
jamborm [Tue, 12 Jul 2011 10:29:39 +0000 (10:29 +0000)]
2011-07-12  Martin Jambor  <mjambor@suse.cz>

* cgraph.h (cgraph_get_node_or_alias): Removed declaration.
* cgraph.c (cgraph_get_node_or_alias): Removed.
(change_decl_assembler_name): Changed all calls to
cgraph_get_node_or_alias to a call to cgraph_get_node.
(cgraph_make_decl_local): Likewise.
* lto-symtab.c (lto_symtab_resolve_symbols): Likewise.
* varasm.c (default_binds_local_p_1): Likewise.
(decl_binds_to_current_def_p): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176196 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR tree-optimization/49712
jakub [Tue, 12 Jul 2011 09:13:06 +0000 (09:13 +0000)]
PR tree-optimization/49712
* tree-ssa-loop-im.c (gen_lsm_tmp_name): Handle TARGET_MEM_REF.

* gcc.c-torture/execute/pr49712.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176195 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoDaily bump.
gccadmin [Tue, 12 Jul 2011 00:17:39 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176192 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR c++/49672
jason [Mon, 11 Jul 2011 21:03:19 +0000 (21:03 +0000)]
PR c++/49672
* pt.c (extract_fnparm_pack): Split out from...
(make_fnparm_pack): ...here.
(instantiate_decl): Handle non-pack parms after a pack.
* semantics.c (maybe_add_lambda_conv_op): Don't in a template.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176183 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agolibgo: Define CC_FOR_BUILD in Makefile.
ian [Mon, 11 Jul 2011 20:27:50 +0000 (20:27 +0000)]
libgo: Define CC_FOR_BUILD in Makefile.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176182 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agolibgo/runtime: Change std::abort to abort.
ian [Mon, 11 Jul 2011 20:16:01 +0000 (20:16 +0000)]
libgo/runtime: Change std::abort to abort.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176181 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * genautomata.c (add_arc): Return void. All callers changed.
bernds [Mon, 11 Jul 2011 19:41:11 +0000 (19:41 +0000)]
* genautomata.c (add_arc): Return void.  All callers changed.
(make_automaton): Remove dead code.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176179 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * dwarf2cfi.c (DW_STACK_POINTER_REGNUM): New.
rth [Mon, 11 Jul 2011 19:30:56 +0000 (19:30 +0000)]
    * dwarf2cfi.c (DW_STACK_POINTER_REGNUM): New.
        (DW_FRAME_POINTER_REGNUM): New.
        (expand_builtin_init_dwarf_reg_sizes): Use unsigned for rnum.
        (def_cfa_1): Do not convert reg to DWARF_FRAME_REGNUM here.
        (dwf_regno): New.
        (dwarf2out_flush_queued_reg_saves, dwarf2out_frame_debug_def_cfa,
        dwarf2out_frame_debug_adjust_cfa, dwarf2out_frame_debug_cfa_register,
        dwarf2out_frame_debug_cfa_expression, dwarf2out_frame_debug_expr):
        Use it.
        * dwarf2out.c (based_loc_descr): Use dwarf_frame_regnum.
        * dwarf2out.h (dwarf_frame_regnum): New.
        (struct cfa_loc): Document the domain of the reg member.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176178 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * decl2.c (decl_constant_var_p): Use decl_maybe_constant_var_p.
jason [Mon, 11 Jul 2011 18:52:19 +0000 (18:52 +0000)]
* decl2.c (decl_constant_var_p): Use decl_maybe_constant_var_p.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176177 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR c++/44609
jason [Mon, 11 Jul 2011 18:52:12 +0000 (18:52 +0000)]
PR c++/44609
* cp-tree.h (struct tinst_level): Add errors field.
* pt.c (neglectable_inst_p, limit_bad_template_recurson): New.
(push_tinst_level): Don't start another decl in that case.
(reopen_tinst_level): Adjust errors field.
* decl2.c (cp_write_global_declarations): Don't complain about
undefined inline if its template was defined.
* mangle.c (mangle_decl_string): Handle failure from push_tinst_level.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176176 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-07-11 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Mon, 11 Jul 2011 18:38:54 +0000 (18:38 +0000)]
2011-07-11  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/49559
* include/bits/stl_algo.h (__move_merge_backward): Remove.
(__move_merge_adaptive, __move_merge_adaptive_backward): New.
(__merge_adaptive): Use the latter two.
(__rotate_adaptive): Avoid self move-assignment.
* include/bits/stl_algobase.h (move_backward): Fix comment.
* testsuite/25_algorithms/stable_sort/49559.cc: New.
* testsuite/25_algorithms/inplace_merge/49559.cc: Likewise.
* testsuite/25_algorithms/inplace_merge/moveable.cc: Extend.
* testsuite/25_algorithms/inplace_merge/moveable2.cc: Likewise.
* testsuite/util/testsuite_rvalref.h (rvalstruct::operator=
(rvalstruct&&)): Check for self move-assignment.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176174 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/i386/i386.c (ix86_trampoline_init): Switch arms of if expr.
uros [Mon, 11 Jul 2011 17:57:49 +0000 (17:57 +0000)]
* config/i386/i386.c (ix86_trampoline_init): Switch arms of if expr.
Use offset everywhere.  Always assert that offset <= TRAMPOLINE_SIZE.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176173 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-07-11 Andrew Haley <aph@redhat.com>
aph [Mon, 11 Jul 2011 17:50:04 +0000 (17:50 +0000)]
2011-07-11  Andrew Haley  <aph@redhat.com>

        * src/arm/ffi.c (FFI_INIT_TRAMPOLINE): Clear icache.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176172 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-07-11 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Mon, 11 Jul 2011 17:19:53 +0000 (17:19 +0000)]
2011-07-11  Paolo Carlini  <paolo.carlini@oracle.com>

* testsuite/util/testsuite_allocator.h (propagating_allocator<>::
operator=(const propagating_allocator<>&)): Retun *this.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176169 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR debug/49676
jakub [Mon, 11 Jul 2011 16:57:25 +0000 (16:57 +0000)]
PR debug/49676
* dwarf2out.c (int_shift_loc_descriptor): New function.
(int_loc_descriptor): If shorter, emit i as
(i >> shift), shift, DW_OP_shl for suitable shift value.
Similarly, try to optimize large negative values using
DW_OP_neg of a positive value if shorter.
(size_of_int_shift_loc_descriptor): New function.
(size_of_int_loc_descriptor): Adjust to match int_loc_descriptor
changes.
(mem_loc_descriptor) <case CONST_INT>: Emit zero-extended constants
that fit into DWARF2_ADDR_SIZE bytes as int_loc_descriptor +
DW_OP_GNU_convert instead of DW_OP_GNU_const_type if the former
is shorter.
(resolve_addr_in_expr): Optimize DW_OP_plus_uconst with a large
addend as added DW_OP_plus if it is shorter.

* gcc.dg/guality/csttest.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176167 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR fortran/49698
jakub [Mon, 11 Jul 2011 16:42:29 +0000 (16:42 +0000)]
PR fortran/49698
* trans-stmt.c (gfc_trans_pointer_assign_need_temp): Initialize
inner_size to gfc_index_one_node instead of integer_one_node.

* gfortran.dg/pr49698.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176164 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * configure.ac (i?86-*-solaris2*): Use libgcc copy of
ro [Mon, 11 Jul 2011 16:39:57 +0000 (16:39 +0000)]
* configure.ac (i?86-*-solaris2*): Use libgcc copy of
i386/t-crtstuff.
* configure: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176163 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/i386/sol2.h [!USE_GLD] (CTORS_SECTION_ASM_OP): Define.
ro [Mon, 11 Jul 2011 16:35:53 +0000 (16:35 +0000)]
* config/i386/sol2.h [!USE_GLD] (CTORS_SECTION_ASM_OP): Define.
(DTORS_SECTION_ASM_OP): Define.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176162 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * gcc.dg/uninit-pred-8_b.c: Disable dominator optimizations.
law [Mon, 11 Jul 2011 15:25:48 +0000 (15:25 +0000)]
* gcc.dg/uninit-pred-8_b.c: Disable dominator optimizations.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176160 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * EXCLUDES (libgcov.c): Remove.
ro [Mon, 11 Jul 2011 14:43:42 +0000 (14:43 +0000)]
* EXCLUDES (libgcov.c): Remove.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176158 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago gcc:
ro [Mon, 11 Jul 2011 14:40:56 +0000 (14:40 +0000)]
gcc:
* config/dfp-bit.c, config/dfp-bit.h: Move to ../libgcc.
* config/t-dfprules: Move to ../libgcc/config.
* config.gcc (i[34567]86-*-linux*, i[34567]86-*-kfreebsd*-gnu,
i[34567]86-*-knetbsd*-gnu, i[34567]86-*-gnu*,
i[34567]86-*-kopensolaris*-gnu): Remove t-dfprules from tmake_file.
(x86_64-*-linux*, x86_64-*-kfreebsd*-gnu, x86_64-*-knetbsd*-gnu):
Likewise.
(i[34567]86-*-cygwin*): Likewise.
(i[34567]86-*-mingw*,  x86_64-*-mingw*): Likewise.
(powerpc-*-linux*, powerpc64-*-linux*): Likewise.
* Makefile.in (D32PBIT_FUNCS, D64PBIT_FUNCS, D128PBIT_FUNCS): Remove.
(libgcc.mvars): Remove DFP_ENABLE, DFP_CFLAGS, D32PBIT_FUNCS,
D64PBIT_FUNCS, D128PBIT_FUNCS.

libgcc:
* dfp-bit.c, dfp-bit.h: New files.
* Makefile.in (D32PBIT_FUNCS, D64PBIT_FUNCS, D128PBIT_FUNCS): New
variables.
($(d32pbit-o)): Use $(srcdir) to refer to dfp-bit.c
($(d64pbit-o)): Likewise.
($(d128pbit-o)): Likewise.
* config/t-dfprules: New file.
* config.host (i[34567]86-*-linux*): Add t-dfprules to tmake_file.
(i[34567]86-*-kfreebsd*-gnu, i[34567]86-*-knetbsd*-gnu,
i[34567]86-*-gnu*, i[34567]86-*-kopensolaris*-gnu): Likewise.
(x86_64-*-linux*): Likewise.
(x86_64-*-kfreebsd*-gnu, x86_64-*-knetbsd*-gnu): Likewise.
(i[34567]86-*-cygwin*): Likewise.
(i[34567]86-*-mingw*,  x86_64-*-mingw*): Likewise.
(powerpc-*-linux*, powerpc64-*-linux*): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176156 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2011-07-11 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 11 Jul 2011 14:27:04 +0000 (14:27 +0000)]
2011-07-11  Richard Guenther  <rguenther@suse.de>

* tree-vrp.c (simplify_conversion_using_ranges): Manually
translate the source value-range through the conversion chain.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176154 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoCheck ia32 effective target.
hjl [Mon, 11 Jul 2011 13:29:29 +0000 (13:29 +0000)]
Check ia32 effective target.

2011-07-11  H.J. Lu  <hongjiu.lu@intel.com>

* gcc.dg/vect/costmodel/x86_64/x86_64-costmodel-vect.exp: Check
ia32.
* go.test/go-test.exp (go-set-goarch): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176153 138bc75d-0d04-0410-961f-82ee72b054a4