89272 Commits

Author SHA1 Message Date
Arnaud Charlet
8b4261b382 2008-08-20 Gary Dismukes <dismukes@adacore.com>
* exp_ch11.adb:
	(Expand_Exception_Handlers): Call Make_Exception_Handler instead of
	Make_Implicit_Exception_Handler when rewriting an exception handler with
	a choice parameter, and pass the handler's Sloc instead of that of the
	handled sequence of statements. Make_Implicit_Exception_Handler sets the
	Sloc to No_Location (unless debugging generated code), which we don't
	want for the case of a user handler.

From-SVN: r139291
2008-08-20 15:24:40 +02:00
Ed Schonberg
b2c4d56de2 sem_ch8.adb (Analyze_Subprogram_Renaming): Inherit Is_Imported flag.
2008-08-20  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch8.adb (Analyze_Subprogram_Renaming): Inherit Is_Imported flag.

From-SVN: r139290
2008-08-20 15:24:25 +02:00
H.J. Lu
89da39ee52 re PR target/37169 (Inefficent code for _mm_cvtsi64_si128)
gcc/

2008-08-20  H.J. Lu  <hongjiu.lu@intel.com>

	PR target/37169
	* config/i386/i386.c (ix86_expand_vector_init_one_nonzero): In
	V2DI mode, for SSE4.1, use movq instead of vector set if the
	second element is zero and inter-unit moves are OK.

gcc/testsuite/

2008-08-20  H.J. Lu  <hongjiu.lu@intel.com>

	PR target/37169
	* i386/sse2-init-v2di-2.c: New.

From-SVN: r139289
2008-08-20 06:22:30 -07:00
Richard Guenther
4fedf870f5 tree-ssa-forwprop.c (forward_propagate_addr_expr_1): More properly handle conversion/copy chains after tuplification.
2008-08-20  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): More
	properly handle conversion/copy chains after tuplification.

	* gcc.dg/tree-ssa/forwprop-9.c: Scan FRE dump as well.
	* gcc.dg/tree-ssa/forwprop-10.c: New testcase.

From-SVN: r139288
2008-08-20 13:21:41 +00:00
Arnaud Charlet
c6084ae031 freeze.adb (Freeze_Record_Type): Improve msg for non-contiguous field
2008-08-20  Robert Dewar  <dewar@adacore.com>

	* freeze.adb (Freeze_Record_Type): Improve msg for non-contiguous field
	
	* sem_ch13.adb:
	(Adjust_Record_For_Reverse_Bit_Order): Messages about layout are
	now labeled as info msgs, not warnings.

From-SVN: r139287
2008-08-20 15:15:11 +02:00
Richard Guenther
e2081a1d5d passes.c (init_optimization_passes): Move the second forwprop pass before alias computation.
2008-08-20  Richard Guenther  <rguenther@suse.de>

	* passes.c (init_optimization_passes): Move the second
	forwprop pass before alias computation.  Remove the second
	DCE pass.  Remove the first dominator and phi copy/const
	prop passes.

	* gcc.dg/tree-ssa/20030530-2.c: Scan dom2 dump.
	* gcc.dg/tree-ssa/20030611-1.c: Likewise.
	* gcc.dg/tree-ssa/20030703-1.c: Likewise.
	* gcc.dg/tree-ssa/20030703-2.c: Likewise.
	* gcc.dg/tree-ssa/20030708-1.c: Likewise.
	* gcc.dg/tree-ssa/20030709-3.c: Likewise.
	* gcc.dg/tree-ssa/20030710-1.c: Likewise.
	* gcc.dg/tree-ssa/20030711-1.c: Likewise.
	* gcc.dg/tree-ssa/20030711-2.c: Likewise.
	* gcc.dg/tree-ssa/20030711-3.c: Likewise.
	* gcc.dg/tree-ssa/20030714-1.c: Likewise.
	* gcc.dg/tree-ssa/20030714-2.c: Likewise.
	* gcc.dg/tree-ssa/20030729-1.c: Likewise.
	* gcc.dg/tree-ssa/20030730-1.c: Likewise.
	* gcc.dg/tree-ssa/20030730-2.c: Likewise.
	* gcc.dg/tree-ssa/20030731-1.c: Likewise.
	* gcc.dg/tree-ssa/20030807-1.c: Likewise.
	* gcc.dg/tree-ssa/20030807-11.c: Likewise.
	* gcc.dg/tree-ssa/20030807-2.c: Likewise.
	* gcc.dg/tree-ssa/20030807-3.c: Likewise.
	* gcc.dg/tree-ssa/20030807-5.c: Likewise.
	* gcc.dg/tree-ssa/20030807-8.c: Likewise.
	* gcc.dg/tree-ssa/20030807-9.c: Likewise.
	* gcc.dg/tree-ssa/20030814-1.c: Likewise.
	* gcc.dg/tree-ssa/20030814-2.c: Likewise.
	* gcc.dg/tree-ssa/20030814-3.c: Likewise.
	* gcc.dg/tree-ssa/20030814-4.c: Likewise.
	* gcc.dg/tree-ssa/20030814-5.c: Likewise.
	* gcc.dg/tree-ssa/20030814-6.c: Likewise.
	* gcc.dg/tree-ssa/20030814-7.c: Likewise.
	* gcc.dg/tree-ssa/20030922-1.c: Likewise.
	* gcc.dg/tree-ssa/20040729-1.c: Likewise.
	* gcc.dg/tree-ssa/20041122-1.c: Likewise.
	* gcc.dg/tree-ssa/pr21417.c: Likewise.
	* gcc.dg/tree-ssa/pr21829.c: Scan phicprop2 dump.
	* gcc.dg/tree-ssa/ssa-dce-1.c: Scan dce2 dump.
	* gcc.dg/tree-ssa/ssa-dce-2.c: Likewise.
	* g++.dg/tree-ssa/pr31146.C: Remove XFAIL, adjust pattern.
	* gfortran.dg/ldist-1.f90: Adjust.

From-SVN: r139286
2008-08-20 12:59:10 +00:00
Tristan Gingold
34afead0f1 gnat_ugn.texi: Gcov is not supported on static library on AIX.
2008-08-20  Tristan Gingold  <gingold@adacore.com>

	* gnat_ugn.texi: Gcov is not supported on static library on AIX.

From-SVN: r139285
2008-08-20 14:39:11 +02:00
Jose Ruiz
a0005b2e7b errno.c (__get_errno for MaRTE): Use the MaRTE function pthread_errno to get access to the per-task errno variable.
2008-08-20  Jose Ruiz  <ruiz@adacore.com>

	* errno.c (__get_errno for MaRTE): Use the MaRTE function pthread_errno
	to get access to the per-task errno variable.
	(__set_errno for MaRTE): Do not redefine this function here since it is
	already defined in MaRTE.

From-SVN: r139284
2008-08-20 14:36:24 +02:00
Thomas Quinot
d3b1401d07 2008-08-20 Thomas Quinot <quinot@adacore.com>
* s-fileio.adb (Open) Use C helper function to determine whether a
	given errno value corresponds to a "file not found" error.

	* sysdep.c (__gnat_is_file_not_found_error): New C helper function.

From-SVN: r139283
2008-08-20 14:35:11 +02:00
Robert Dewar
d045b07645 a-ztexio.adb: Minor code reorganization Remove redundant test found working on another issue
2008-08-20  Robert Dewar  <dewar@adacore.com>

	* a-ztexio.adb: Minor code reorganization
	Remove redundant test found working on another issue

From-SVN: r139282
2008-08-20 14:34:46 +02:00
Robert Dewar
830f9af82a a-witeio.adb: Minor code reorganization Remove redundant test found working on another issue
2008-08-20  Robert Dewar  <dewar@adacore.com>

	* a-witeio.adb: Minor code reorganization
	Remove redundant test found working on another issue

From-SVN: r139281
2008-08-20 14:34:09 +02:00
Robert Dewar
22e3716435 a-textio.adb: Remove redundant test.
2008-08-20  Robert Dewar  <dewar@adacore.com>

	* a-textio.adb: Remove redundant test.

From-SVN: r139280
2008-08-20 14:34:01 +02:00
Robert Dewar
382d35e0df usage.adb: Minor change to avoid overlong line for -gnatwz/Z
2008-08-20  Robert Dewar  <dewar@adacore.com>

	* usage.adb: Minor change to avoid overlong line for -gnatwz/Z

From-SVN: r139279
2008-08-20 14:33:17 +02:00
Robert Dewar
bc51c14271 tbuild.ads: Clarify documentation of Make_Implicit_Exception_Handler
2008-08-20  Robert Dewar  <dewar@adacore.com>

	* tbuild.ads: Clarify documentation of Make_Implicit_Exception_Handler

From-SVN: r139278
2008-08-20 14:32:51 +02:00
Arnaud Charlet
6e7f835f5a freeze.adb: Minor reformatting
2008-08-20  Robert Dewar  <dewar@adacore.com>

	* freeze.adb: Minor reformatting

	* g-comlin.adb: Minor reformatting

	* g-socket.adb: Minor reformatting

	* g-socthi-mingw.adb: Minor reformatting

	* g-stheme.adb: Minor reformatting

From-SVN: r139277
2008-08-20 14:08:26 +02:00
Robert Dewar
8477055dcc g-stheme.adb: Minor reformatting
2008-08-20  Robert Dewar  <dewar@adacore.com>

	* g-stheme.adb: Minor reformatting

From-SVN: r139276
2008-08-20 14:07:45 +02:00
Robert Dewar
8173c2769a g-socthi-mingw.adb: Minor reformatting
2008-08-20  Robert Dewar  <dewar@adacore.com>

	* g-socthi-mingw.adb: Minor reformatting

From-SVN: r139275
2008-08-20 14:07:36 +02:00
Robert Dewar
6bfee0770f g-socket.adb: Minor reformatting
2008-08-20  Robert Dewar  <dewar@adacore.com>

	* g-socket.adb: Minor reformatting

From-SVN: r139274
2008-08-20 14:07:22 +02:00
Robert Dewar
cf5028e36d g-comlin.adb: Minor reformatting
2008-08-20  Robert Dewar  <dewar@adacore.com>

	* g-comlin.adb: Minor reformatting

From-SVN: r139273
2008-08-20 14:07:14 +02:00
Robert Dewar
bb1b6ec8ab freeze.adb: Minor reformatting
2008-08-20  Robert Dewar  <dewar@adacore.com>

	* freeze.adb: Minor reformatting

From-SVN: r139272
2008-08-20 14:07:06 +02:00
Ed Schonberg
35dfee5580 2008-08-20 Ed Schonberg <schonberg@adacore.com>
Revert partially previous changes, unrelated to the change at hand.

From-SVN: r139271
2008-08-20 14:06:35 +02:00
Victor Kaplansky
d0011a1a90 vect-multitypes-15.c: Fix typo.
2008-08-20  Victor Kaplansky  <victork@il.ibm.com>

        * gcc.dg/vect/vect-multitypes-15.c: Fix typo.
        * gcc/testsuite/lib/target-supports.exp
           (check_effective_target_vect_long_long): Remove spu-*-*.
        * gcc.dg/vect/vect-multitypes-16.c: Make init loop unvectorizable.
        * gcc.dg/vect/slp-widen-mult-u8.c: Likewise.

From-SVN: r139270
2008-08-20 12:05:38 +00:00
Ed Schonberg
2af92e28f0 sem_aggr.adb, [...] (Valid_Ancestor): Resolve confusion between partial and full views of an ancestor of the context...
2008-08-20  Ed Schonberg  <schonberg@adacore.com>

	* sem_aggr.adb, sem_type.adb, exp_ch9.ads, einfo.ads,
	exp_ch6.adb, exp_aggr.adb (Valid_Ancestor): Resolve
	confusion between partial and full views of an ancestor of the context
	type when the parent is a private extension declared in a parent unit,
	and full views are available for the context type.

From-SVN: r139269
2008-08-20 13:02:51 +02:00
Nick Clifton
6e60703f41 configure.ac (HAVE_GAS_CFI_DIRECTIVE): Always test for assembler support of this feature.
* configure.ac (HAVE_GAS_CFI_DIRECTIVE): Always test for assembler
        support of this feature.  Do not assume that a sufficiently new
        assembler will support the feature regardless of the target type.
        (HAVE_GAS_CFI_PERSONALITY_DIRECTIVE): Likewise.
        * configure: Regenerate.

From-SVN: r139266
2008-08-20 10:23:08 +00:00
Richard Guenther
c4ab2baad2 tree-vrp.c (found_in_subgraph): Remove.
2008-08-20  Richard Guenther  <rguenther@suse.de>

	* tree-vrp.c (found_in_subgraph): Remove.
	(live): New global static.
	(live_on_edge): New function.
	(blocks_visited): Remove.
	(register_edge_assert_for_2): Use live_on_edge.
	(find_conditional_asserts): Remove code dealing with
	found_in_subgraph.  Do not walk the CFG.
	(find_switch_asserts): Likewise.
	(find_assert_locations_1): Renamed from find_assert_locations.
	Move finding assert locations for conditional and switch
	statements first.  Update live bitmap.  Do not walk the CFG.
	(find_assert_locations): New function.
	(insert_range_assertions): Remove entry of CFG walk.
	Adjust call to find_assert_locations.
	* tree-ssa-pre.c (do_regular_insertion): Ignore critical edges
	that only can appear because of fake exit edges but assert we
	never try to insert on those.
	(fini_pre): Do not remove fake exit edges here...
	(execute_pre): ...but here, before committing edge inserts.

	* gcc.dg/tree-ssa/pr20701.c: Scan vrp1 dump.
	* gcc.dg/tree-ssa/ssa-dom-thread-1.c: Pass -fno-tree-vrp.
	* gcc.dg/tree-ssa/ssa-pre-20.c: New testcase.

From-SVN: r139263
2008-08-20 08:28:17 +00:00
GCC Administrator
6c7c31a6a2 Daily bump.
From-SVN: r139252
2008-08-20 00:16:34 +00:00
Ulrich Weigand
0861615e91 fp-int-convert-float.c: Reenable test on SPU.
testsuite/ChangeLog:

	* gcc.dg/torture/fp-int-convert-float.c: Reenable test on SPU.
	* gcc.dg/torture/fp-int-convert-timode.c: Reenable "float" test on SPU.

From-SVN: r139239
2008-08-19 16:12:44 +00:00
Richard Guenther
a4b8a65f1b passes.c (init_optimization_passes): Exchange store-ccp with a ccp pass.
2008-08-19  Richard Guenther  <rguenther@suse.de>

	* passes.c (init_optimization_passes): Exchange store-ccp
	with a ccp pass.

	* gcc.dg/tree-ssa/ssa-ccp-14.c: XFAIL.

From-SVN: r139234
2008-08-19 15:01:03 +00:00
Rafael Avila de Espindola
21fe7edcee varasm.c (weak_decls): Move earlier in the file.
2008-08-19  Rafael Espindola  <espindola@google.com>

      * varasm.c (weak_decls): Move earlier in the file.
      (assemble_external): Add weak decls to the weak_decls list.
      (declare_weak): Don't add decls to the weak_decls list.

From-SVN: r139233
2008-08-19 14:11:18 +00:00
H.J. Lu
b8aaf5063d re PR target/37157 (Wrong insn for _mm_unpackhi_epi64)
gcc/

2008-08-19  H.J. Lu  <hongjiu.lu@intel.com>

	PR target/37157
	* config/i386/sse.md (sse2_punpckhqdq, sse2_punpcklqdq): Moved
	before (sse2_shufpd_<mode>).

gcc/testsuite/

2008-08-19  H.J. Lu  <hongjiu.lu@intel.com>

	PR target/37157
	* gcc.target/i386/sse2-unpack-1.c: New.

From-SVN: r139232
2008-08-19 05:49:28 -07:00
Jakub Jelinek
e92cbe3a1d re PR debug/37156 (Hang with -g -O2 (or higher) (discovered with malloc.c in sqlite3))
PR debug/37156
	* pretty-print.c (pp_base_format): Deal with recursive BLOCK trees.
	* tree.c (block_nonartificial_location): Likewise.

	* error.c (cp_print_error_function): Deal with recursive BLOCK trees.

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

From-SVN: r139230
2008-08-19 13:44:42 +02:00
Richard Guenther
53f3815cc0 re PR tree-optimization/35972 (load-PRE missed opportunities without SFTs)
2008-08-19  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/35972
	PR tree-optimization/23094
	* tree-ssa-sccvn.h (vn_reference_lookup_pieces): Add maywalk
	parameter.
	* tree-ssa-sccvn.c (copy_reference_ops_from_ref): Properly
	handle MISALIGNED_INDIRECT_REF.
	(get_ref_from_reference_ops): New helper.
	(vn_reference_lookup_pieces): Walk the use-def chain using the
	alias-oracle if requested.
	* tree-ssa-pre.c (phi_translate_1): Do reference lookup with
	walking the use-def chain.
	(compute_avail): But not here.
	(create_component_ref_by_pieces_1): Properly handle
	MISALIGNED_INDIRECT_REF.
	(do_regular_insertion): Handle fully redundant
	expressions after PHI-translation also for SSA_NAME values, not
	only constants.  Correctly use edoubleprime for that.

	* gcc.dg/tree-ssa/ssa-pre-19.c: New testcase.
	* gcc.dg/autopar/reduc-1.c: Move constant initialized arrays to
	global memory.
	* gcc.dg/autopar/reduc-1char.c: Likewise.
	* gcc.dg/autopar/reduc-1short.c: Likewise.
	* gcc.dg/autopar/reduc-2.c: Likewise.
	* gcc.dg/autopar/reduc-2char.c: Likewise.
	* gcc.dg/autopar/reduc-2short.c: Likewise.
	* gcc.dg/autopar/reduc-3.c: Likewise.
	* gcc.dg/tree-ssa/ifc-20040816-1.c: Likewise.
	* gcc.dg/vect/costmodel/i386/costmodel-vect-reduc-1char.c: Likewise.
	* gcc.dg/vect/costmodel/x86_64/costmodel-vect-reduc-1char.c: Likewise.
	* gcc.dg/vect/fast-math-vect-reduc-5.c: Likewise.
	* gcc.dg/vect/fast-math-vect-reduc-7.c: Likewise.
	* gcc.dg/vect/no-trapping-math-2.c: Likewise.
	* gcc.dg/vect/no-trapping-math-vect-111.c: Likewise.
	* gcc.dg/vect/no-trapping-math-vect-ifcvt-11.c: Likewise.
	* gcc.dg/vect/no-trapping-math-vect-ifcvt-12.c: Likewise.
	* gcc.dg/vect/no-trapping-math-vect-ifcvt-13.c: Likewise.
	* gcc.dg/vect/no-trapping-math-vect-ifcvt-14.c: Likewise.
	* gcc.dg/vect/no-trapping-math-vect-ifcvt-15.c: Likewise.
	* gcc.dg/vect/no-vfa-vect-37.c: Likewise.
	* gcc.dg/vect/no-vfa-vect-depend-1.c: Likewise.
	* gcc.dg/vect/pr18400.c: Likewise.
	* gcc.dg/vect/slp-12b.c: Likewise.
	* gcc.dg/vect/slp-14.c: Likewise.
	* gcc.dg/vect/slp-7.c: Likewise.
	* gcc.dg/vect/slp-15.c: Likewise.
	* gcc.dg/vect/slp-16.c: Likewise.
	* gcc.dg/vect/slp-17.c: Likewise.
	* gcc.dg/vect/slp-24.c: Likewise.
	* gcc.dg/vect/slp-28.c: Likewise.
	* gcc.dg/vect/slp-3.c: Likewise.
	* gcc.dg/vect/slp-34.c: Likewise.
	* gcc.dg/vect/slp-6.c: Likewise.
	* gcc.dg/vect/slp-8.c: Likewise.
	* gcc.dg/vect/vect-107.c: Likewise.
	* gcc.dg/vect/vect-108.c: Likewise.
	* gcc.dg/vect/vect-11.c: Likewise.
	* gcc.dg/vect/vect-112.c: Likewise.
	* gcc.dg/vect/vect-115.c: Likewise.
	* gcc.dg/vect/vect-11a.c: Likewise.
	* gcc.dg/vect/vect-34.c: Likewise.
	* gcc.dg/vect/vect-9.c: Likewise.
	* gcc.dg/vect/vect-97.c: Likewise.
	* gcc.dg/vect/vect-align-1.c: Likewise.
	* gcc.dg/vect/vect-float-extend-1.c: Likewise.
	* gcc.dg/vect/vect-floatint-conversion-1.c: Likewise.
	* gcc.dg/vect/vect-ifcvt-16.c: Likewise.
	* gcc.dg/vect/vect-ifcvt-17.c: Likewise.
	* gcc.dg/vect/vect-ifcvt-2.c: Likewise.
	* gcc.dg/vect/vect-ifcvt-3.c: Likewise.
	* gcc.dg/vect/vect-ifcvt-4.c: Likewise.
	* gcc.dg/vect/vect-ifcvt-5.c: Likewise.
	* gcc.dg/vect/vect-ifcvt-6.c: Likewise.
	* gcc.dg/vect/vect-ifcvt-7.c: Likewise.
	* gcc.dg/vect/vect-intfloat-conversion-1.c: Likewise.
	* gcc.dg/vect/vect-intfloat-conversion-2.c: Likewise.
	* gcc.dg/vect/vect-intfloat-conversion-3.c: Likewise.
	* gcc.dg/vect/vect-intfloat-conversion-4a.c: Likewise.
	* gcc.dg/vect/vect-intfloat-conversion-4b.c: Likewise.
	* gcc.dg/vect/vect-multitypes-2.c: Likewise.
	* gcc.dg/vect/vect-multitypes-5.c: Likewise.
	* gcc.dg/vect/vect-reduc-1.c: Likewise.
	* gcc.dg/vect/vect-reduc-1char.c: Likewise.
	* gcc.dg/vect/vect-reduc-1short.c: Likewise.
	* gcc.dg/vect/vect-reduc-2.c: Likewise.
	* gcc.dg/vect/vect-reduc-3.c: Likewise.
	* gcc.dg/vect/vect-shift-1.c: Likewise.
	* gcc.dg/vect/vect-strided-float.c: Likewise.
	* gcc.dg/vect/vect-strided-store-u32-i2.c: Likewise.
	* gcc.dg/vect/wrapv-vect-reduc-2char.c: Likewise.
	* gcc.dg/vect/wrapv-vect-reduc-2short.c: Likewise.
	* gcc.dg/tree-ssa/gen-vect-11.c: Likewise.
	* gcc.dg/tree-ssa/gen-vect-11a.c: Likewise.
	* gcc.dg/tree-ssa/gen-vect-2.c: Likewise.
	* gcc.dg/vect/costmodel/ppc/costmodel-vect-76c.c: Likewise.

From-SVN: r139226
2008-08-19 09:06:54 +00:00
Ira Rosen
5d59337297 tree-vectorizer.c (supportable_widening_operation): Support multi-step conversion...
* tree-vectorizer.c (supportable_widening_operation): Support
	multi-step conversion, return the number of steps in such conversion
	and the required intermediate types.
	(supportable_narrowing_operation): Likewise.
	* tree-vectorizer.h (vect_pow2): New function.
	(supportable_widening_operation): Change argument types.
	(supportable_narrowing_operation): Likewise.
	(vectorizable_type_promotion): Add an argument.
	(vectorizable_type_demotion): Likewise.
	* tree-vect-analyze.c (vect_analyze_operations): Call 
	vectorizable_type_promotion and vectorizable_type_demotion with
	additional argument.
	(vect_get_and_check_slp_defs): Detect patterns.
	(vect_build_slp_tree): Add an argument, don't fail in case of multiple
	types. 
	(vect_analyze_slp_instance): Don't fail in case of multiple types. Call
	vect_build_slp_tree with correct arguments. Calculate unrolling factor
	according to the smallest type in the loop.
	(vect_detect_hybrid_slp_stmts): Include statements from patterns.
	* tree-vect-patterns.c (vect_recog_widen_mult_pattern): Call 
	supportable_widening_operation with correct arguments. 
	* tree-vect-transform.c (vect_get_slp_defs): Allocate output vector 
	operands lists according to the number of vector statements in left
	or right node, if exists.
	(vect_gen_widened_results_half): Remove unused argument.
	(vectorizable_conversion): Call supportable_widening_operation, 
	supportable_narrowing_operation, and vect_gen_widened_results_half
	with correct arguments. 
	(vectorizable_assignment): Change documentation, support multiple
	types in SLP. 
	(vectorizable_operation): Likewise.
	(vect_get_loop_based_defs): New function.
	(vect_create_vectorized_demotion_stmts): Likewise.
	(vectorizable_type_demotion): Support loop-aware SLP and general
	multi-step conversion. Call vect_get_loop_based_defs and
	vect_create_vectorized_demotion_stmts for transformation.
	(vect_create_vectorized_promotion_stmts): New function.
	(vectorizable_type_promotion): Support loop-aware SLP and general
	multi-step conversion. Call vect_create_vectorized_promotion_stmts
	for transformation.	
	(vectorizable_store): Change documentation, support multiple
	types in SLP. 
	(vectorizable_load): Likewise.
	(vect_transform_stmt): Pass SLP_NODE to 
	vectorizable_type_promotion and vectorizable_type_demotion.
	(vect_schedule_slp_instance): Move here the calculation of number
	of vectorized statements for each node from...
	(vect_schedule_slp): ... here.
	(vect_transform_loop): Call vect_schedule_slp without the last
	argument.

From-SVN: r139225
2008-08-19 08:31:41 +00:00
Dorit Nuzman
45ea82c11f re PR bootstrap/37152 (tree-vect-transform.c: use of "=" where "==" may have been intended)
PR bootstrap/37152
        * tree-vect-transform.c (vect_create_epilog_for_reduction): Change =
        to == in assert statement.
        (vectorizable_reduction): Fix typo.

From-SVN: r139224
2008-08-19 07:14:26 +00:00
Tobias Burnus
cfd648ca23 re PR libfortran/35863 ([F2003] Implement ENCODING="UTF-8")
2008-08-19  Tobias Burnus  <burnus@net-b.de>

       PR libfortran/35863
       * io/write.c (write_a_char4): Add missing variable declaration
       in HAVE_CRLF block.

From-SVN: r139223
2008-08-19 08:00:51 +02:00
GCC Administrator
8b9d2005bc Daily bump.
From-SVN: r139221
2008-08-19 00:16:45 +00:00
Adam Nemet
956a82a112 * gcc.target/mips/ext-1.c: Add -mgp64 to dg-mips-options.
From-SVN: r139218
2008-08-19 00:14:59 +00:00
Steve Ellcey
15912ca57e * g++.dg/other/anon5.C: Skip on *-*-hpux*.
From-SVN: r139216
2008-08-18 21:25:12 +00:00
Daniel Franke
f34cf28d62 re PR fortran/37032 (including "file.F90" - no CPP processing)
2008-08-18  Daniel Franke  <franke.daniel@gmail.com>

        PR fortran/37032
        * gfortran.texi: Document decision on include file handling in
        preprocessed files.

From-SVN: r139215
2008-08-18 16:46:08 -04:00
Steve Ellcey
468756c55a * gcc.dg/vect/no-vfa-pr29145.c: XFAIL if no_vect_align.
From-SVN: r139213
2008-08-18 20:36:03 +00:00
Steve Ellcey
d3b3e1b3c4 * gcc.target/ia64/types-1.c: Change error to message.
From-SVN: r139212
2008-08-18 20:26:55 +00:00
H.J. Lu
c3a4ca0340 re PR bootstrap/37153 (Revision 139210 failed to bootstrap)
2008-08-18  H.J. Lu  <hongjiu.lu@intel.com>

	PR bootstrap/37153
	* value-prof.c (check_counter): Dereference pointer to overall
	count when printing it.

From-SVN: r139211
2008-08-18 12:48:41 -07:00
H.J. Lu
3aa71f9da0 profile.h: Really add it.
2008-08-18  H.J. Lu  <hongjiu.lu@intel.com>

	* profile.h: Really add it.

From-SVN: r139210
2008-08-18 12:22:36 -07:00
H.J. Lu
f7bc085cf1 mcf.c: Really add it.
2008-08-18  H.J. Lu  <hongjiu.lu@intel.com>

	* mcf.c: Really add it.

From-SVN: r139209
2008-08-18 12:16:30 -07:00
Paul Yuan
52c76998c7 cgraph.c (cgraph_edge): Handle inconsistent counts when setting count_scale.
2008-08-18  Paul Yuan  <yingbo.com@gmail.com>
	    Vinodha Ramasamy  <vinodha@google.com>

	* cgraph.c (cgraph_edge): Handle inconsistent counts when setting
	count_scale.
	* value-prof.c (check_counter): Fix the counter if
	flag_profile_correction is true.
	(tree_divmod_fixed_value_transform, tree_mod_pow2_value_transform,
	tree_mod_subtract_transform):
	Follow check_counter parameter change.
	* common.opt (fprofile-correction): New option.
	* mcf.c: New file.
	* profile.c (edge_info, EDGE_INFO): Moved to new file profile.h.
	(sum_edge_counts, is_edge_inconsistent, correct_negative_edge_counts,
	is_inconsistent, set_bb_counts, read_profile_edge_counts): New
	functions.
	(compute_branch_probabilities): Refactored. Invokes mcf_smooth_cfg if
	flag_profile_correction is set.


Co-Authored-By: Vinodha Ramasamy <vinodha@google.com>

From-SVN: r139208
2008-08-18 19:02:44 +00:00
Richard Sandiford
808cc41726 rtlanal.c (subreg_offset_representable_p): Check HARD_REGNO_MODE_OK.
gcc/
	* rtlanal.c (subreg_offset_representable_p): Check HARD_REGNO_MODE_OK.

From-SVN: r139207
2008-08-18 18:21:01 +00:00
Paolo Carlini
b7e2f896db re PR testsuite/37149 (27_io/basic_ostream/inserters_other/char/error_code.cc)
2008-08-18  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/37149
	* testsuite/27_io/basic_ostream/inserters_other/char/4.cc: Include
	<cstdio>.
	* testsuite/27_io/basic_ostream/inserters_other/char/error_code.cc:
	Likewise.
	* testsuite/27_io/objects/char/12048-1.cc: Likewise.
	* testsuite/27_io/objects/char/12048-3.cc: Likewise.
	* testsuite/27_io/objects/wchar_t/12048-1.cc: Likewise.
	* testsuite/27_io/objects/wchar_t/12048-3.cc: Likewise.
	* testsuite/ext/malloc_allocator/deallocate_global.cc: Likewise.
	* testsuite/ext/malloc_allocator/deallocate_local.cc: Likewise.
	* testsuite/ext/mt_allocator/deallocate_global-2.cc: Likewise.
	* testsuite/ext/mt_allocator/deallocate_global-4.cc: Likewise.
	* testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: Likewise.
	* testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: Likewise.
	* testsuite/ext/mt_allocator/deallocate_local-2.cc: Likewise.
	* testsuite/ext/mt_allocator/deallocate_local-4.cc: Likewise.
	* testsuite/ext/mt_allocator/deallocate_local-6.cc: Likewise.
	* testsuite/ext/mt_allocator/deallocate_local-8.cc: Likewise.
	* testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: Likewise.
	* testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: Likewise.
	* testsuite/ext/mt_allocator/deallocate_local_thread-5.cc: Likewise.
	* testsuite/ext/mt_allocator/deallocate_local_thread-7.cc: Likewise.
	* testsuite/ext/new_allocator/deallocate_global.cc: Likewise.
	* testsuite/ext/new_allocator/deallocate_local.cc: Likewise.
	* testsuite/ext/stdio_sync_filebuf/wchar_t/12077.cc: Likewise.
	* include/std/regex: Include <sstream>.
	* include/tr1/regex: Likewise.

From-SVN: r139206
2008-08-18 17:48:15 +00:00
Tomas Bily
1a87cf0c4c tree.h (IS_CONVERT_EXPR_CODE_P): Renamed to
* tree.h (IS_CONVERT_EXPR_CODE_P): Renamed to
        * CONVERT_EXPR_CODE_P.
        * tree-ssa-threadedge.c (simplify_control_stmt_condition): Use
        CONVERT_EXPR_P.
        * tree-data-ref.c (split_constant_offset_1): Likewise.
        * tree-inline.c (estimate_operator_cost): Use CASE_CONVERT.
        * tree-sra.c (sra_walk_expr): Likewise.
        * matrix-reorg.c (ssa_accessed_in_assign_rhs): Likewise.
        * tree-ssa-loop-niter.c (expand_simple_operations): Likewise.
        * gimple.h (gimple_assign_cast_p): Use CONVERT_EXPR_CODE_P.
        * tree-ssa-structalias.c (find_func_aliases, find_func_aliases):
        * Likewise.
        * gimple.c (gimple_assign_unary_nop_p): Likewise.
        * tree-vect-transform.c (vectorizable_type_demotion)
        (vectorizable_type_promotion): Likewise.
        * tree-inline.c (expand_call_inline): 
        * tree-ssa-forwprop.c (get_prop_source_stmt, can_propagate_from)
        (forward_propagate_addr_expr_1, forward_propagate_comparison)
        (tree_ssa_forward_propagate_single_use_vars): Likewise.
        * expr.c (expand_expr_real_1): Likewise.
        * tree-ssa-dom.c (hashable_expr_equal_p,
        * iterative_hash_hashable_expr)
        (gimple_assign_unary_useless_conversion_p): Likewise.
        * tree-stdarg.c (execute_optimize_stdarg): Likewise.
        * tree-ssa-ccp.c (ccp_fold, fold_gimple_assign): Likewise.
        * fold-const.c (fold_unary): Likewise.
        * tree.h (CONVERT_EXPR_P): Likewise.
        * tree.c (simple_cst_equal, iterative_hash_expr): Likewise.
        * tree-ssa-loop-im.c (rewrite_bittest): Likewise.
        * tree-vrp.c: 
        (register_edge_assert_for_2, extract_range_from_unary_expr)
        (register_edge_assert_for_1): Likewise.

        * cp/tree.c (cp_tree_equal): Likewise.

From-SVN: r139204
2008-08-18 18:23:47 +02:00
Paolo Carlini
3c7c6d39d0 configure.ac: Do not hardcode HAVE_S_ISREG and HAVE_S_IFREG for newlib.
2008-08-18  Paolo Carlini  <paolo.carlini@oracle.com>

	* configure.ac: Do not hardcode HAVE_S_ISREG and HAVE_S_IFREG for
	newlib.
	* configure: Regenerate.

From-SVN: r139203
2008-08-18 16:21:18 +00:00
Manuel López-Ibáñez
9c02cf684c real.h (dconst_e, [...]): Declare.
2008-08-18  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>

	* real.h (dconst_e, dconst_third, dconst_sqrt2, dconst_e_ptr,
	dconst_third_ptr, dconst_sqrt2_ptr): Declare.
	(enum real_value_const): Delete.
	(get_real_const): Delete.
	* real.c (get_real_const): Delete.
	(dconst_e_ptr): Define.
	(dconst_third_ptr): Define.
	(dconst_sqrt2_ptr): Define.
	* builtins.c: Update all callers.

From-SVN: r139202
2008-08-18 16:17:16 +00:00