Commit Graph

101461 Commits

Author SHA1 Message Date
Sebastian Pop
384a5197cb Add the -ftree-loop-if-convert flag.
2010-07-08  Sebastian Pop  <sebastian.pop@amd.com>

	* common.opt (ftree-loop-if-convert): New flag.
	* doc/invoke.texi (ftree-loop-if-convert): Documented.
	* tree-if-conv.c (gate_tree_if_conversion): Enable if-conversion
	when flag_tree_loop_if_convert is set.

From-SVN: r161963
2010-07-08 16:37:49 +00:00
Uros Bizjak
f8e1995a5b i386.c: Use short syntax for function calls through function pointers.
* config/i386/i386.c: Use short syntax for function calls
	through function pointers.
	* config/i386/i386.md: Ditto.

From-SVN: r161962
2010-07-08 18:31:30 +02:00
Eric Botcazou
a80903ff48 * emit-rtl.c (set_mem_attributes_minus_bitpos): Fix formatting issues.
From-SVN: r161961
2010-07-08 15:23:45 +00:00
Tobias Burnus
7aa0849ad2 re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
2010-07-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * array.c (gfc_match_array_ref): Better error message for
        coarrays with too few ranks.
        (match_subscript): Move one diagnostic to caller.
        * gfortran.h (gfc_get_corank): Add prottype.
        * expr.c (gfc_get_corank): New function.
        * iresolve.c (resolve_bound): Fix rank for cobounds.
        (gfc_resolve_lbound,gfc_resolve_lcobound, gfc_resolve_ubound,
        gfc_resolve_ucobound, gfc_resolve_this_image): Update
        resolve_bound call.

2010-07-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * gfortran.dg/coarray_10.f90: Add an additional test.

From-SVN: r161960
2010-07-08 17:17:25 +02:00
Richard Guenther
d0c422cb29 tree-ssa-sccvn.c (vn_reference_maybe_forwprop_address): Fix stmt check for POINTER_PLUS_EXPRs, fix the pointer assignment.
2010-07-08  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-sccvn.c (vn_reference_maybe_forwprop_address): Fix
	stmt check for POINTER_PLUS_EXPRs, fix the pointer assignment.

From-SVN: r161959
2010-07-08 14:58:20 +00:00
Jakub Jelinek
b298f92498 dwarf2out.c (mem_loc_descriptor): Use DW_OP_const[48]u instead of DW_OP_addr for DW_OP_GNU_push_tls_address operand.
* dwarf2out.c (mem_loc_descriptor): Use DW_OP_const[48]u
	instead of DW_OP_addr for DW_OP_GNU_push_tls_address operand.
	(loc_list_from_tree): Likewise.
	(output_loc_operands): Handle outputting DW_OP_const[48]u
	with loc->dtprel set.
	(resolve_addr_in_expr): Handle loc->dtprel like DW_OP_addr.

From-SVN: r161958
2010-07-08 16:50:16 +02:00
Jan Hubicka
5dde3b0174 ipa.c: Include pointer-set.h
* ipa.c: Include pointer-set.h
	(cgraph_externally_visible_p): New attribute ALIASED;
	when in LTO, hidden symbols are local unless they are aliased.
	(function_and_variable_visibility): Compute aliased nodes;
	handle LTO and hidden symbol on functions and vars.
	* cgraph.c (cgraph_make_decl_local): Clear NAMED_SECTION
	for COMDAT symbols; handle COMDAT_GROUPS also at vars.

From-SVN: r161957
2010-07-08 14:20:23 +00:00
Peter Bergner
cf8ca1a9b7 re PR c/44828 (possible integer wrong code bug)
PR middle-end/44828
	* gcc.c-torture/execute/pr44828.c (foo): Use signed char.
	* gcc.c-torture/execute/pr44828.x: Revert.

From-SVN: r161956
2010-07-08 09:17:52 -05:00
Jason Merrill
bf1cb49eb6 re PR c++/43120 (Virtual inheritance with covariant return type confuses GCC)
PR c++/43120
	* class.c (update_vtable_entry_for_fn): Fix handling of dummy
	virtual bases for covariant thunks.

From-SVN: r161954
2010-07-08 10:00:26 -04:00
H.J. Lu
02de68e16b Add gcc.dg/pr44838.c.
2010-07-08  H.J. Lu  <hongjiu.lu@intel.com>

	PR rtl-optimization/44838
	* gcc.dg/pr44838.c: New.

From-SVN: r161953
2010-07-08 06:40:24 -07:00
Eric Botcazou
2de710b956 cygming.h (STACK_CHECK_STATIC_BUILTIN): Define to 1.
* config/i386/cygming.h (STACK_CHECK_STATIC_BUILTIN): Define to 1.
	* config/i386/freebsd.h (STACK_CHECK_STATIC_BUILTIN): Likewise.
	* config/i386/linux.h (STACK_CHECK_STATIC_BUILTIN): Likewise.
	* config/i386/linux64.h (STACK_CHECK_STATIC_BUILTIN): Likewise.
	* config/i386/sol2.h (STACK_CHECK_STATIC_BUILTIN): Likewise.
	* config/i386/i386.c (ix86_gen_adjust_stack_and_probe): New variable.
	(ix86_gen_probe_stack_range): Likewise.
	(override_options): Set them.
	(ix86_target_stack_probe): New function.
	(ix86_compute_frame_layout): Force use of push instructions to
	save registers if stack checking with probes is enabled.
	(get_scratch_register_on_entry): New function.
	(release_scratch_register_on_entry): Likewise.
	(ix86_adjust_stack_and_probe): Likewise.
	(output_adjust_stack_and_probe): Likewise.
	(ix86_emit_probe_stack_range): Likewise.
	(output_probe_stack_range): Likewise.
	(ix86_expand_prologue): Emit stack checking code if static built-in
	stack checking is enabled.
	Test ix86_target_stack_probe instead of TARGET_STACK_PROBE.
	* config/i386/i386-protos.h (ix86_target_stack_probe): Declare.
	(output_adjust_stack_and_probe): Likewise.
	(output_probe_stack_range): Likewise.
	* config/i386/i386.md (UNSPECV_PROBE_STACK_RANGE): New constant.
	(allocate_stack_worker_32): Test ix86_target_stack_probe instead of
	TARGET_STACK_PROBE.
	(allocate_stack_worker_64): Likewise.
	(allocate_stack): Likewise.
	(adjust_stack_and_probe): New insn.
	(probe_stack_range): Likewise.

From-SVN: r161952
2010-07-08 12:27:01 +00:00
Richard Guenther
f076debaba re PR tree-optimization/44831 (internal compiler error: verify_stmts failed when compiling wine)
2010-07-08  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/44831
	* tree-ssa-phiprop.c (phiprop_insert_phi): Properly build
	a MEM_REF preserving TBAA info of the original dereference.
	Dereference the original pointer if the address is not
	invariant.
	(propagate_with_phi): Fixup type checks wrt MEM_REFs.  Require
	at least one invariant address that we are going to dereference.

	* gcc.c-torture/compile/pr44831.c: New testcase.
	* gcc.dg/tree-ssa/pr21463.c: Adjust.

From-SVN: r161950
2010-07-08 11:38:43 +00:00
Richard Guenther
20ede5c64d re PR tree-optimization/44861 (internal compiler error: in vectorizable_load, at tree-vect-stmts.c:3812)
2010-07-08  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/44861
	* tree-vect-stmts.c (vectorizable_store): Preserve TBAA
	information when building MEM_REFs.
	(vectorizable_load): Likewise.
	* tree-vect-data-refs.c (vect_setup_realignment): Likewise.

	* g++.dg/vect/pr44861.cc: New testcase.

From-SVN: r161949
2010-07-08 10:51:46 +00:00
Eric Botcazou
80edb36cfd * config/sol2-c.c: Do not include diagnostic-core.h.
From-SVN: r161948
2010-07-08 10:03:14 +00:00
Ramana Radhakrishnan
2e1ec94ff0 Fix PR44768
From-SVN: r161947
2010-07-08 09:29:43 +00:00
Richard Guenther
a03a9774c1 tree-ssa-sccvn.c (vn_reference_maybe_forwprop_address): New function.
2010-07-08  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-sccvn.c (vn_reference_maybe_forwprop_address):
	New function.
	(valueize_refs): Call it.

From-SVN: r161946
2010-07-08 09:16:42 +00:00
Richard Guenther
e73cfe5d34 re PR rtl-optimization/44838 (RTL loop unrolling causes FAIL: gcc.dg/pr39794.c)
2010-07-08  Richard Guenther  <rguenther@suse.de>

	PR rtl-optimization/44838
	* tree-ssa-alias.c (indirect_refs_may_alias_p): When not in
	SSA form do not use pointer equivalence.

From-SVN: r161945
2010-07-08 09:09:15 +00:00
Eric Botcazou
51d49bc218 dwarf2out.c (AT_linkage_name): Delete.
* dwarf2out.c (AT_linkage_name): Delete.
	(add_linkage_attr): New function.
	(add_linkage_name): Call it to emit the linkage attribute.
	(dwarf2out_finish): Likewise.
	(move_linkage_attr): Explicitly accept both attribute variants.

From-SVN: r161944
2010-07-08 08:12:07 +00:00
Manuel López-Ibáñez
718f9c0f87 toplev.h: Do not include diagnostic-core.h.
2010-07-08  Manuel López-Ibáñez  <manu@gcc.gnu.org>

	* toplev.h: Do not include diagnostic-core.h.
	Include diagnostic-core.h in every file that includes toplev.h.
	* c-tree.h: Do not include toplev.h.
	* pretty-print.h: Update comment.
	* Makefile.in: Update dependencies.
	* alias.c: Include diagnostic-core.h in every file that includes
	toplev.h.
	* attribs.c: Likewise.
	* auto-inc-dec.c: Likewise.
	* bb-reorder.c: Likewise.
	* bt-load.c: Likewise.
	* caller-save.c: Likewise.
	* calls.c: Likewise.
	* cfg.c: Likewise.
	* cfganal.c: Likewise.
	* cfgbuild.c: Likewise.
	* cfgcleanup.c: Likewise.
	* cfghooks.c: Likewise.
	* cfgloop.c: Likewise.
	* combine.c: Likewise.
	* config/alpha/alpha.c: Likewise.
	* config/arc/arc.c: Likewise.
	* config/arm/arm.c: Likewise.
	* config/arm/pe.c: Likewise.
	* config/avr/avr.c: Likewise.
	* config/bfin/bfin.c: Likewise.
	* config/cris/cris.c: Likewise.
	* config/crx/crx.c: Likewise.
	* config/darwin-c.c: Likewise.
	* config/darwin.c: Likewise.
	* config/fr30/fr30.c: Likewise.
	* config/frv/frv.c: Likewise.
	* config/h8300/h8300.c: Likewise.
	* config/host-darwin.c: Likewise.
	* config/i386/i386.c: Likewise.
	* config/i386/netware.c: Likewise.
	* config/i386/nwld.c: Likewise.
	* config/i386/winnt-cxx.c: Likewise.
	* config/i386/winnt-stubs.c: Likewise.
	* config/i386/winnt.c: Likewise.
	* config/ia64/ia64-c.c: Likewise.
	* config/ia64/ia64.c: Likewise.
	* config/iq2000/iq2000.c: Likewise.
	* config/lm32/lm32.c: Likewise.
	* config/m32c/m32c-pragma.c: Likewise.
	* config/m32c/m32c.c: Likewise.
	* config/m32r/m32r.c: Likewise.
	* config/m68hc11/m68hc11.c: Likewise.
	* config/m68k/m68k.c: Likewise.
	* config/mcore/mcore.c: Likewise.
	* config/mep/mep-pragma.c: Likewise.
	* config/mep/mep.c: Likewise.
	* config/mmix/mmix.c: Likewise.
	* config/mn10300/mn10300.c: Likewise.
	* config/moxie/moxie.c: Likewise.
	* config/pa/pa.c: Likewise.
	* config/pdp11/pdp11.c: Likewise.
	* config/picochip/picochip.c: Likewise.
	* config/rs6000/rs6000-c.c: Likewise.
	* config/rs6000/rs6000.c: Likewise.
	* config/rx/rx.c: Likewise.
	* config/s390/s390.c: Likewise.
	* config/score/score.c: Likewise.
	* config/score/score3.c: Likewise.
	* config/score/score7.c: Likewise.
	* config/sh/sh.c: Likewise.
	* config/sh/symbian-base.c: Likewise.
	* config/sh/symbian-c.c: Likewise.
	* config/sh/symbian-cxx.c: Likewise.
	* config/sol2-c.c: Likewise.
	* config/sol2.c: Likewise.
	* config/sparc/sparc.c: Likewise.
	* config/spu/spu.c: Likewise.
	* config/stormy16/stormy16.c: Likewise.
	* config/v850/v850-c.c: Likewise.
	* config/v850/v850.c: Likewise.
	* config/vax/vax.c: Likewise.
	* config/vxworks.c: Likewise.
	* config/xtensa/xtensa.c: Likewise.
	* convert.c: Likewise.
	* cse.c: Likewise.
	* cselib.c: Likewise.
	* dbgcnt.c: Likewise.
	* dbxout.c: Likewise.
	* ddg.c: Likewise.
	* dominance.c: Likewise.
	* emit-rtl.c: Likewise.
	* explow.c: Likewise.
	* expmed.c: Likewise.
	* fixed-value.c: Likewise.
	* fold-const.c: Likewise.
	* fwprop.c: Likewise.
	* gcse.c: Likewise.
	* ggc-common.c: Likewise.
	* ggc-page.c: Likewise.
	* ggc-zone.c: Likewise.
	* gimple-low.c: Likewise.
	* gimplify.c: Likewise.
	* graph.c: Likewise.
	* haifa-sched.c: Likewise.
	* ifcvt.c: Likewise.
	* implicit-zee.c: Likewise.
	* integrate.c: Likewise.
	* ira-build.c: Likewise.
	* ira-color.c: Likewise.
	* ira-conflicts.c: Likewise.
	* ira-costs.c: Likewise.
	* ira-lives.c: Likewise.
	* ira.c: Likewise.
	* lists.c: Likewise.
	* loop-doloop.c: Likewise.
	* loop-iv.c: Likewise.
	* lto-opts.c: Likewise.
	* lto-symtab.c: Likewise.
	* main.c: Likewise.
	* modulo-sched.c: Likewise.
	* optabs.c: Likewise.
	* params.c: Likewise.
	* plugin.c: Likewise.
	* postreload-gcse.c: Likewise.
	* postreload.c: Likewise.
	* predict.c: Likewise.
	* profile.c: Likewise.
	* real.c: Likewise.
	* regcprop.c: Likewise.
	* reginfo.c: Likewise.
	* regmove.c: Likewise.
	* reorg.c: Likewise.
	* resource.c: Likewise.
	* rtl.c: Likewise.
	* rtlanal.c: Likewise.
	* sched-deps.c: Likewise.
	* sched-ebb.c: Likewise.
	* sched-rgn.c: Likewise.
	* sdbout.c: Likewise.
	* sel-sched-dump.c: Likewise.
	* sel-sched-ir.c: Likewise.
	* simplify-rtx.c: Likewise.
	* stmt.c: Likewise.
	* stor-layout.c: Likewise.
	* store-motion.c: Likewise.
	* targhooks.c: Likewise.
	* tree-cfg.c: Likewise.
	* tree-cfgcleanup.c: Likewise.
	* tree-dump.c: Likewise.
	* tree-eh.c: Likewise.
	* tree-inline.c: Likewise.
	* tree-nomudflap.c: Likewise.
	* tree-object-size.c: Likewise.
	* tree-optimize.c: Likewise.
	* tree-outof-ssa.c: Likewise.
	* tree-phinodes.c: Likewise.
	* tree-profile.c: Likewise.
	* tree-ssa-ccp.c: Likewise.
	* tree-ssa-coalesce.c: Likewise.
	* tree-ssa-live.c: Likewise.
	* tree-ssa-loop-niter.c: Likewise.
	* tree-ssa-loop-prefetch.c: Likewise.
	* tree-ssa-loop.c: Likewise.
	* tree-ssa-structalias.c: Likewise.
	* tree-ssa-uninit.c: Likewise.
	* tree-ssa.c: Likewise.
	* tree-vect-data-refs.c: Likewise.
	* tree-vect-loop-manip.c: Likewise.
	* tree-vect-loop.c: Likewise.
	* tree-vect-patterns.c: Likewise.
	* tree-vect-stmts.c: Likewise.
	* tree-vrp.c: Likewise.
	* varasm.c: Likewise.
	* vec.c: Likewise.
	* web.c: Likewise.
	* xcoffout.c: Likewise.

c-family/
	* c-common.h: Include diagnostic-core.h. Error if already
	included.
	* c-semantics.c: Do not define GCC_DIAG_STYLE here.
cp/
	* cp-tree.h: Do not include toplev.h.
	
java/
	* boehm.c: Include diagnostic-core.h in every file that includes
	toplev.h.
	* class.c: Likewise.
	* constants.c: Likewise.
	* decl.c: Likewise.
	* except.c: Likewise.
	* expr.c: Likewise.
	* jcf-parse.c: Likewise.
	* mangle.c: Likewise.
	* mangle_name.c: Likewise.
	* resource.c: Likewise.
	* typeck.c: Likewise.
	* verify-glue.c: Likewise.
ada/
	* gcc-interface/utils.c: Include diagnostic-core.h in every file
	that includes toplev.h.
lto/
	* lto-coff.c: Include diagnostic-core.h in every file that
	includes toplev.h.
	* lto-elf.c: Likewise.
	* lto-lang.c: Likewise.
	* lto-macho.c: Likewise.

From-SVN: r161943
2010-07-08 04:22:54 +00:00
Peter Bergner
c2e224dac3 re PR c/44828 (possible integer wrong code bug)
PR middle-end/44828
	* gcc.c-torture/execute/pr44828.x: New file.

From-SVN: r161942
2010-07-07 23:12:04 -05:00
GCC Administrator
891edc5e04 Daily bump.
From-SVN: r161941
2010-07-08 00:17:13 +00:00
Richard Sandiford
647565f6b8 gengtype.c (write_field_root): New function.
gcc/
	* gengtype.c (write_field_root): New function.
	(write_root): Use it.

From-SVN: r161937
2010-07-07 21:49:29 +00:00
Jakub Jelinek
1b13783702 lto-elf.c (ELFOSABI_NONE, [...]): Define if not defined.
* lto-elf.c (ELFOSABI_NONE, ELFOSABI_LINUX): Define if not defined.
	(validate_file): Allow merging of ELFOSABI_NONE with ELFOSABI_LINUX
	objects.

From-SVN: r161935
2010-07-07 23:16:28 +02:00
Peter Bergner
fc0f0c8bd3 altivec-2.C: Add -Wno-unused-but-set-variable to dg-options.
* g++.dg/ext/altivec-2.C: Add -Wno-unused-but-set-variable to
	dg-options.
	* g++.dg/ext/altivec-17.C: Adjust error message.

From-SVN: r161931
2010-07-07 15:32:19 -05:00
Wei Guozhi
88c1612f9b thumb2.md (peephole2 to convert zero_extract/compare of lowest bits to lshift/compare): Add a missing line.
2010-07-07  Wei Guozhi  <carrot@google.com>
	* config/arm/thumb2.md (peephole2 to convert zero_extract/compare
	of lowest bits to lshift/compare): Add a missing line.

From-SVN: r161930
2010-07-07 18:21:48 +00:00
Wei Guozhi
ece53c9114 thumb2.md (peephole2 to convert zero_extract/compare of lowest bits to lshift/compare): New.
2010-07-07  Wei Guozhi  <carrot@google.com>

        * config/arm/thumb2.md (peephole2 to convert zero_extract/compare
        of lowest bits to lshift/compare): New.

From-SVN: r161929
2010-07-07 17:55:27 +00:00
Tom Tromey
9730bc27c9 tm.texi: Update.
gcc
	* doc/tm.texi: Update.
	* doc/tm.texi.in (SDB and DWARF) <TARGET_WANT_DEBUG_PUB_SECTIONS>:
	Add @hook.
	* target.def (want_debug_pub_sections): New hook.
	* config/darwin.h (TARGET_WANT_DEBUG_PUB_SECTIONS): Define.
	* dwarf2out.c (add_pubname_string): Check
	targetm.want_debug_pub_sections.
	(add_pubname): Likewise.
	(add_pubtype): Likewise.
gcc/testsuite
	* g++.dg/debug/dwarf2/pubnames-1.C: Make darwin-specific.

From-SVN: r161924
2010-07-07 17:23:39 +00:00
Jie Zhang
f5d5226b3d genautomata.c (output_automata_list_min_issue_delay_code): Correctly decompress min_issue_delay.
* genautomata.c (output_automata_list_min_issue_delay_code):
	Correctly decompress min_issue_delay.

From-SVN: r161923
2010-07-07 16:31:41 +00:00
Neil Roberts
4138b429ca sysv.S (ffi_call_SYSV): Align the stack pointer to 16-bytes.
2010-07-07   Neil Roberts <neil@linux.intel.com>

	* src/x86/sysv.S (ffi_call_SYSV): Align the stack pointer to
	16-bytes.

From-SVN: r161922
2010-07-07 15:59:30 +00:00
Bernd Schmidt
71df5a7ee7 re PR rtl-optimization/44404 (auto-inc-dec generates an invalid assembly instruction)
PR rtl-optimization/44404
	* auto-inc-dec.c (find_inc): Avoid calling count_occurrences if
	possible, use reg_overlap_mentioned_p instead.

From-SVN: r161920
2010-07-07 15:26:48 +00:00
Duncan Sands
f625098e0c When materializing a cloned function with arguments removed,
to TYPE_POINTER_TO field of the new type (which has fewer
arguments) was left pointing to the original type.

From-SVN: r161918
2010-07-07 15:21:16 +00:00
H.J. Lu
ab33bd5ceb Revert revision 161876.
2010-07-07  H.J. Lu  <hongjiu.lu@intel.com>

	PR target/44850
	* config/i386/i386.c (ix86_function_ms_hook_prologue): Revert
	revision 161876.
	(ix86_expand_prologue): Likewise.
	(ix86_handle_fndecl_attribute): Likewise.
	(ix86_asm_declare_function_name): Likewise.
	* config/i386/i386.h (ASM_DECLARE_FUNCTION_NAME): Likewise.
	* config/i386/cygming.h (ASM_DECLARE_FUNCTION_NAME): Likewise.
	(SUBTARGET_ASM_DECLARE_FUNCTION_NAME): Likewise.
	* config/i386/i386-protos.h (ix86_asm_declare_function_name):
	Likewise.
	* doc/extend.texi: Likewise.

From-SVN: r161911
2010-07-07 06:36:31 -07:00
H.J. Lu
5e86e54057 Retry rdrand if the carry flag isn't valid.
gcc/

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

	PR target/44844
	* config/i386/i386.md (rdrand<mode>): Changed to expand to
	retry if the carry flag isn't valid.
	(rdrand<mode>_1): New.

gcc/testsuite/

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

	PR target/44844
	* gcc.target/i386/rdrand-1.c: Scan "jnc".
	* gcc.target/i386/rdrand-2.c: Likewise.
	* gcc.target/i386/rdrand-3.c: Likewise.

From-SVN: r161910
2010-07-07 06:33:04 -07:00
Richard Guenther
0ee95c437f re PR middle-end/44790 (Bootstrap fails after MEM-REF merge)
2010-07-07  Richard Guenther  <rguenther@suse.de>

	PR middle-end/44790
	* expr.c (expand_expr_real_1): Go the POINTER_PLUS_EXPR path
	for expanding the constant offset for MEM_REFs.

From-SVN: r161907
2010-07-07 12:43:38 +00:00
Jan Hubicka
86353474a0 * lto-cgraph.c (output_cgraph): Add missing declaration.
From-SVN: r161906
2010-07-07 12:33:35 +00:00
Richard Guenther
523968bfbb tree-ssa-propagate.h (valid_gimple_call_p): Remove.
2010-07-07  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-propagate.h (valid_gimple_call_p): Remove.
	* tree-ssa-propagate.c (valid_gimple_call_p): Make static.  Fix.
	* gimple.h (is_gimple_operand): Remove.
	* gimple.c (is_gimple_operand): Likewise.
	(walk_gimple_op): Fix wi->val_only setting for calls.
	* tree-cfg.c (verify_gimple_call): Fix argument validation.
	* tree-profile.c (tree_gen_ic_func_profiler): Do not create
	invalid gimple calls.

From-SVN: r161905
2010-07-07 12:06:57 +00:00
Jan Hubicka
b0d9e66374 lto-cgraph.c (output_cgraph): Output toplevel asms only into first partition.
* lto-cgraph.c (output_cgraph): Output toplevel asms only into first
	partition.

From-SVN: r161904
2010-07-07 12:04:09 +00:00
Alexandre Oliva
38be945b90 gimple.texi (GIMPLE_DEBUG): Document.
* doc/gimple.texi (GIMPLE_DEBUG): Document.
* doc/rtl.texi (Debug Information): New node.
(NOTE_INSN_VAR_LOCATION): Document.
(debug_insn): Likewise.
* doc/generic.texi (DEBUG_EXPR_DECL): Document.

From-SVN: r161899
2010-07-07 01:12:23 +00:00
Jan Hubicka
6938f93f2e re PR middle-end/44813 (ipa-split causes ice in ptr_deref_may_alias_decl_p, at tree-ssa-alias.c:173)
PR middle-end/44813
	* tree-ssa-uninit.c (ssa_undefined_value_p): Result decl is defined
	for functions passed by reference.
	* tree.c (needs_to_live_in_memory): RESULT_DECL don't need to live
	in memory when passed by reference.
	* tree-ssa-ccp.c (get_default_value): Only VAR_DECL is undefined at
	beggining.
	* ipa-split.c (split_function): Cleanup way return value is passed;
	handle SSA DECL_BY_REFERENCE retvals.
	* tree-ssa.c (verify_def): Verify that RESULT_DECL is read only when
	DECL_BY_REFERENCE is set.
	* tree-ssa-structalias.c (get_constraint_for_ssa_var, get_fi_for_callee,
	find_what_p_points_to): Handle RESULT_DECL.
	* tree-inline.c (declare_return_variable): Get new entry_block argument;
	when passing by reference ensure that RESULT_DECL is gimple_val.
	(remap_gimple_op_r): Remap RESULT_DECL ssa name.
	(remap_gimple_stmt): Handle SSA DECL_BY_REFERENCE returns.
	* g++.dg/torture/pr44813.C: New testcase.
	* g++.dg/torture/pr44826.C: New testcase.

From-SVN: r161898
2010-07-07 01:00:42 +00:00
GCC Administrator
1d8f4f9171 Daily bump.
From-SVN: r161897
2010-07-07 00:17:13 +00:00
Bernd Schmidt
325d79974d re PR rtl-optimization/44787 (internal compiler error: in reload_cse_simplify_operands, at postreload.c:395)
PR rtl-optimization/44787
	* config/arm/arm.md (arith_shiftsi): Allow stack pointer in operand 2.
	* config/arm/thumb2.md (thumb2_arith_shiftsi): Likewise.

testsuite/
	PR rtl-optimization/44787
	* gcc.c-torture/compile/pr44788.c: New test.
	* gcc.target/arm/pr44788.c: New test.

From-SVN: r161893
2010-07-06 23:44:55 +00:00
Jonathan Wakely
604b91240e status_cxx200x.xml: Add some missing features.
2010-07-06  Jonathan Wakely  <jwakely.gcc@gmail.com>

	* doc/xml/manual/status_cxx200x.xml: Add some missing features.
	* doc/html/*: Regenerate.

From-SVN: r161892
2010-07-06 23:14:58 +01:00
Peter Bergner
b1e2556518 * gcc.target/powerpc/altivec-volatile.c: Adjust expected warning.
From-SVN: r161891
2010-07-06 16:49:57 -05:00
Peter Bergner
0f5700a732 ppu-intrinsics.c: Add -Wno-unused-but-set-variable to dg-options.
* gcc.target/powerpc/ppu-intrinsics.c: Add -Wno-unused-but-set-variable
	to dg-options.

From-SVN: r161890
2010-07-06 16:46:59 -05:00
Tobias Burnus
928f049082 re PR fortran/44742 (ICE in gfc_conv_array_initializer)
2010-07-06  Tobias Burnus  <burnus@net-b.de>

        PR fortran/44742
        * array.c (gfc_expand_constructor): Add optional diagnostic.
        * gfortran.h (gfc_expand_constructor): Update prototype.
        * expr.c (gfc_simplify_expr, check_init_expr,
        gfc_reduce_init_expr): Update gfc_expand_constructor call.
        * resolve.c (gfc_resolve_expr): Ditto.

2010-07-06  Tobias Burnus  <burnus@net-b.de>

        PR fortran/44742
        * gfortran.dg/parameter_array_init_6.f90: New.
        * gfortran.dg/initialization_20.f90: Update dg-error.
        * gfortran.dg/initialization_24.f90: Ditto.

From-SVN: r161888
2010-07-06 22:56:07 +02:00
Tobias Burnus
c829d0163d trans-decl.c: Include diagnostic-core.h besides toplev.h.
2010-07-06  Tobias Burnus  <burnus@net-b.de>

        * trans-decl.c: Include diagnostic-core.h besides toplev.h.
        * trans-intrinsic.c: Ditto.
        * trans-types.c: Ditto.
        * convert.c: Include diagnostic-core.h instead of toplev.h.
        * options.c: Ditto.
        * trans-array.c: Ditto.
        * trans-const.c: Ditto.
        * trans-expr.c: Ditto.
        * trans-io.c: Ditto.
        * trans-openmp.c: Ditto.
        * trans.c: Ditto.

From-SVN: r161885
2010-07-06 21:57:29 +02:00
Thomas Koenig
7114ab4579 PR fortran/PR44693
2010-07-06  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/PR44693
	* check.c (dim_rank_check):  Also check intrinsic functions.
	Adjust permissible rank for functions which reduce the rank of
	their argument.  Spread is an exception, where DIM can
	be one larger than the rank of array.

2010-07-06  Thomas Koenig  <tkoenig@gcc.gnu.org>
	PR fortran/PR44693
	* gfortran.dg/dim_range_1.f90:  New test.
	* gfortran.dg/minmaxloc_4.f90:  Remove invalid test.

From-SVN: r161884
2010-07-06 19:48:58 +00:00
Jason Merrill
0060a10ae8 re PR c++/44703 ([C++0x] List initialization fail if parameter is typedef name for the std::initializer_list)
PR c++/44703
	* call.c (is_std_init_list): Look through typedefs.

From-SVN: r161880
2010-07-06 15:23:01 -04:00
Jason Merrill
627bc93888 re PR c++/44778 (? Behaviour change with pointers to members)
PR c++/44778
	* init.c (build_offset_ref): If scope isn't dependent,
	don't exit early.  Look at TYPE_MAIN_VARIANT.
	* pt.c (tsubst_copy) [OFFSET_REF]: Do substitution.

From-SVN: r161879
2010-07-06 15:22:49 -04:00
Jason Merrill
89a40f593e * error.c (dump_function_decl): Don't crash on null DECL_NAME.
From-SVN: r161878
2010-07-06 15:22:38 -04:00