Commit Graph

85439 Commits

Author SHA1 Message Date
Kaveh R. Ghazi
5ef0258707 pr33826.c: Require nonpic.
* gcc.dg/pr33826.c: Require nonpic.

From-SVN: r131480
2008-01-12 00:10:30 +00:00
Bob Wilson
166b25dc4f * config/xtensa/xtensa.c (override_options): Set flag_shlib.
From-SVN: r131478
2008-01-11 22:44:47 +00:00
James E Wilson
ad8151b7f2 re PR target/26015 (ICE during bootstrap for vax architecture)
PR target/26015
* config/vax/elf.h (FRAME_POINTER_CFA_OFFSET): Define.

From-SVN: r131477
2008-01-11 13:42:03 -08:00
Jerry DeLisle
d8d3198e78 re PR fortran/34722 (ICE: left-over "@iostat" variable polutes namespace)
2008-01-11  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/34722
	* gfortran.dg//inquire_12.f90: New test.

From-SVN: r131476
2008-01-11 21:18:10 +00:00
Jerry DeLisle
bc9d9552fd re PR fortran/34722 (ICE: left-over "@iostat" variable polutes namespace)
2008-01-11  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/34722
	* trans-io.c (create_dummy_iostat): Commit the symbol.

From-SVN: r131475
2008-01-11 21:15:41 +00:00
Anatoly Sokolov
0d40cc60e8 avr.c (expand_prologue, [...]): Don't save/restore frame pointer register and don't use 'call-prologues' ...
* config/avr/avr.c (expand_prologue, expand_epilogue): Don't 
	save/restore frame pointer register and don't use 'call-prologues' 
	optimization in function with "OS_task" attribute.

From-SVN: r131474
2008-01-11 23:33:50 +03:00
Thomas Koenig
fd6590f8c8 re PR libfortran/34670 (bounds checking for array intrinsics)
2008-01-11  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR libfortran/34670
	* m4/iparm.m4 (upcase):  New macro (copied from the m4 manual).
	(u_name):  New macro for the upper case name of the intrinsic.
	* m4/iforeach.m4 (name`'rtype_qual`_'atype_code):  Add
	bounds checking and rank check, depending on
	compile_options.bounds_check.
	(`m'name`'rtype_qual`_'atype_code):  Likewise.
	(`s'name`'rtype_qual`_'atype_code):  Likewise.
	* m4/ifunction.m4 (name`'rtype_qual`_'atype_code):  Add
	bounds checking and rank check, depending on
	compile_options.bounds_check.
	(`m'name`'rtype_qual`_'atype_code):  Likewise.
	(`s'name`'rtype_qual`_'atype_code):  Likewise.
	* generated/all_l16.c: Regenerated.
	* generated/all_l4.c: Regenerated.
	* generated/all_l8.c: Regenerated.
	* generated/any_l16.c: Regenerated.
	* generated/any_l4.c: Regenerated.
	* generated/any_l8.c: Regenerated.
	* generated/count_16_l16.c: Regenerated.
	* generated/count_16_l4.c: Regenerated.
	* generated/count_16_l8.c: Regenerated.
	* generated/count_4_l16.c: Regenerated.
	* generated/count_4_l4.c: Regenerated.
	* generated/count_4_l8.c: Regenerated.
	* generated/count_8_l16.c: Regenerated.
	* generated/count_8_l4.c: Regenerated.
	* generated/count_8_l8.c: Regenerated.
	* generated/maxloc0_16_i1.c: Regenerated.
	* generated/maxloc0_16_i16.c: Regenerated.
	* generated/maxloc0_16_i2.c: Regenerated.
	* generated/maxloc0_16_i4.c: Regenerated.
	* generated/maxloc0_16_i8.c: Regenerated.
	* generated/maxloc0_16_r10.c: Regenerated.
	* generated/maxloc0_16_r16.c: Regenerated.
	* generated/maxloc0_16_r4.c: Regenerated.
	* generated/maxloc0_16_r8.c: Regenerated.
	* generated/maxloc0_4_i1.c: Regenerated.
	* generated/maxloc0_4_i16.c: Regenerated.
	* generated/maxloc0_4_i2.c: Regenerated.
	* generated/maxloc0_4_i4.c: Regenerated.
	* generated/maxloc0_4_i8.c: Regenerated.
	* generated/maxloc0_4_r10.c: Regenerated.
	* generated/maxloc0_4_r16.c: Regenerated.
	* generated/maxloc0_4_r4.c: Regenerated.
	* generated/maxloc0_4_r8.c: Regenerated.
	* generated/maxloc0_8_i1.c: Regenerated.
	* generated/maxloc0_8_i16.c: Regenerated.
	* generated/maxloc0_8_i2.c: Regenerated.
	* generated/maxloc0_8_i4.c: Regenerated.
	* generated/maxloc0_8_i8.c: Regenerated.
	* generated/maxloc0_8_r10.c: Regenerated.
	* generated/maxloc0_8_r16.c: Regenerated.
	* generated/maxloc0_8_r4.c: Regenerated.
	* generated/maxloc0_8_r8.c: Regenerated.
	* generated/maxloc1_16_i1.c: Regenerated.
	* generated/maxloc1_16_i16.c: Regenerated.
	* generated/maxloc1_16_i2.c: Regenerated.
	* generated/maxloc1_16_i4.c: Regenerated.
	* generated/maxloc1_16_i8.c: Regenerated.
	* generated/maxloc1_16_r10.c: Regenerated.
	* generated/maxloc1_16_r16.c: Regenerated.
	* generated/maxloc1_16_r4.c: Regenerated.
	* generated/maxloc1_16_r8.c: Regenerated.
	* generated/maxloc1_4_i1.c: Regenerated.
	* generated/maxloc1_4_i16.c: Regenerated.
	* generated/maxloc1_4_i2.c: Regenerated.
	* generated/maxloc1_4_i4.c: Regenerated.
	* generated/maxloc1_4_i8.c: Regenerated.
	* generated/maxloc1_4_r10.c: Regenerated.
	* generated/maxloc1_4_r16.c: Regenerated.
	* generated/maxloc1_4_r4.c: Regenerated.
	* generated/maxloc1_4_r8.c: Regenerated.
	* generated/maxloc1_8_i1.c: Regenerated.
	* generated/maxloc1_8_i16.c: Regenerated.
	* generated/maxloc1_8_i2.c: Regenerated.
	* generated/maxloc1_8_i4.c: Regenerated.
	* generated/maxloc1_8_i8.c: Regenerated.
	* generated/maxloc1_8_r10.c: Regenerated.
	* generated/maxloc1_8_r16.c: Regenerated.
	* generated/maxloc1_8_r4.c: Regenerated.
	* generated/maxloc1_8_r8.c: Regenerated.
	* generated/maxval_i1.c: Regenerated.
	* generated/maxval_i16.c: Regenerated.
	* generated/maxval_i2.c: Regenerated.
	* generated/maxval_i4.c: Regenerated.
	* generated/maxval_i8.c: Regenerated.
	* generated/maxval_r10.c: Regenerated.
	* generated/maxval_r16.c: Regenerated.
	* generated/maxval_r4.c: Regenerated.
	* generated/maxval_r8.c: Regenerated.
	* generated/minloc0_16_i1.c: Regenerated.
	* generated/minloc0_16_i16.c: Regenerated.
	* generated/minloc0_16_i2.c: Regenerated.
	* generated/minloc0_16_i4.c: Regenerated.
	* generated/minloc0_16_i8.c: Regenerated.
	* generated/minloc0_16_r10.c: Regenerated.
	* generated/minloc0_16_r16.c: Regenerated.
	* generated/minloc0_16_r4.c: Regenerated.
	* generated/minloc0_16_r8.c: Regenerated.
	* generated/minloc0_4_i1.c: Regenerated.
	* generated/minloc0_4_i16.c: Regenerated.
	* generated/minloc0_4_i2.c: Regenerated.
	* generated/minloc0_4_i4.c: Regenerated.
	* generated/minloc0_4_i8.c: Regenerated.
	* generated/minloc0_4_r10.c: Regenerated.
	* generated/minloc0_4_r16.c: Regenerated.
	* generated/minloc0_4_r4.c: Regenerated.
	* generated/minloc0_4_r8.c: Regenerated.
	* generated/minloc0_8_i1.c: Regenerated.
	* generated/minloc0_8_i16.c: Regenerated.
	* generated/minloc0_8_i2.c: Regenerated.
	* generated/minloc0_8_i4.c: Regenerated.
	* generated/minloc0_8_i8.c: Regenerated.
	* generated/minloc0_8_r10.c: Regenerated.
	* generated/minloc0_8_r16.c: Regenerated.
	* generated/minloc0_8_r4.c: Regenerated.
	* generated/minloc0_8_r8.c: Regenerated.
	* generated/minloc1_16_i1.c: Regenerated.
	* generated/minloc1_16_i16.c: Regenerated.
	* generated/minloc1_16_i2.c: Regenerated.
	* generated/minloc1_16_i4.c: Regenerated.
	* generated/minloc1_16_i8.c: Regenerated.
	* generated/minloc1_16_r10.c: Regenerated.
	* generated/minloc1_16_r16.c: Regenerated.
	* generated/minloc1_16_r4.c: Regenerated.
	* generated/minloc1_16_r8.c: Regenerated.
	* generated/minloc1_4_i1.c: Regenerated.
	* generated/minloc1_4_i16.c: Regenerated.
	* generated/minloc1_4_i2.c: Regenerated.
	* generated/minloc1_4_i4.c: Regenerated.
	* generated/minloc1_4_i8.c: Regenerated.
	* generated/minloc1_4_r10.c: Regenerated.
	* generated/minloc1_4_r16.c: Regenerated.
	* generated/minloc1_4_r4.c: Regenerated.
	* generated/minloc1_4_r8.c: Regenerated.
	* generated/minloc1_8_i1.c: Regenerated.
	* generated/minloc1_8_i16.c: Regenerated.
	* generated/minloc1_8_i2.c: Regenerated.
	* generated/minloc1_8_i4.c: Regenerated.
	* generated/minloc1_8_i8.c: Regenerated.
	* generated/minloc1_8_r10.c: Regenerated.
	* generated/minloc1_8_r16.c: Regenerated.
	* generated/minloc1_8_r4.c: Regenerated.
	* generated/minloc1_8_r8.c: Regenerated.
	* generated/minval_i1.c: Regenerated.
	* generated/minval_i16.c: Regenerated.
	* generated/minval_i2.c: Regenerated.
	* generated/minval_i4.c: Regenerated.
	* generated/minval_i8.c: Regenerated.
	* generated/minval_r10.c: Regenerated.
	* generated/minval_r16.c: Regenerated.
	* generated/minval_r4.c: Regenerated.
	* generated/minval_r8.c: Regenerated.
	* generated/product_c10.c: Regenerated.
	* generated/product_c16.c: Regenerated.
	* generated/product_c4.c: Regenerated.
	* generated/product_c8.c: Regenerated.
	* generated/product_i1.c: Regenerated.
	* generated/product_i16.c: Regenerated.
	* generated/product_i2.c: Regenerated.
	* generated/product_i4.c: Regenerated.
	* generated/product_i8.c: Regenerated.
	* generated/product_r10.c: Regenerated.
	* generated/product_r16.c: Regenerated.
	* generated/product_r4.c: Regenerated.
	* generated/product_r8.c: Regenerated.
	* generated/sum_c10.c: Regenerated.
	* generated/sum_c16.c: Regenerated.
	* generated/sum_c4.c: Regenerated.
	* generated/sum_c8.c: Regenerated.
	* generated/sum_i1.c: Regenerated.
	* generated/sum_i16.c: Regenerated.
	* generated/sum_i2.c: Regenerated.
	* generated/sum_i4.c: Regenerated.
	* generated/sum_i8.c: Regenerated.
	* generated/sum_r10.c: Regenerated.
	* generated/sum_r16.c: Regenerated.
	* generated/sum_r4.c: Regenerated.
	* generated/sum_r8.c: Regenerated.

2008-01-11  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR libfortran/34670
	* all_bounds_1.f90: New test case.
	* maxloc_bounds_1.f90: New test case.
	* maxloc_bounds_2.f90: New test case.
	* maxloc_bounds_3.f90: New test case.
	* maxloc_bounds_4.f90: New test case.
	* maxloc_bounds_5.f90: New test case.
	* maxloc_bounds_6.f90: New test case.
	* maxloc_bounds_7.f90: New test case.
	* maxloc_bounds_8.f90: New test case.

From-SVN: r131473
2008-01-11 20:21:05 +00:00
Eric Botcazou
15af420d4e re PR middle-end/31309 (reads/writes past end of structure)
PR middle-end/31309
	* expr.c (copy_blkmode_from_reg): Use a mode suited to the size when
	copying to memory.

From-SVN: r131472
2008-01-11 19:44:40 +00:00
Raksit Ashok
31bfe0341f Fixed my gcc/ChangeLog entry (corrected tense and capitalization).
From-SVN: r131471
2008-01-11 19:16:49 +00:00
Paul Thomas
d9183bb744 re PR fortran/34537 (ICE or wrong code for TRANSFER of constant string to character)
2008-01-11  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/34537
	* simplify.c (gfc_simplify_transfer): Return NULL if the size
	of the element is unavailable and only assign character length
	to the result, if 'mold' is constant.

2008-01-11  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/34537
	* gfortran.dg/transfer_simplify_8.f90: New test.

From-SVN: r131470
2008-01-11 18:25:29 +00:00
Steven Bosscher
c1e3e2d944 re PR middle-end/30905 (Fails to cross-jump)
2008-01-11  Steven Bosscher  <stevenb.gcc@gmail.com>

	PR rtl-optimization/30905
	* cfgcleanup.c: Include dce.h
	(crossjumps_occured): New global variable.
	(try_crossjump_bb): Exit loop after finding a fallthru edge.
	If something changed, set crossjumps_occured to true.
	(try_optimize_cfg): Clear crossjumps_occured at the beginning.
	Don't add/remove fake edges to exit here...
	(cleanup_cfg): ...but do it here, when crossjumping.
	Run a fast DCE when successful crossjumps occured in the latest
	iteration of try_optimize_cfg.

From-SVN: r131468
2008-01-11 14:55:34 +00:00
Richard Guenther
8d0eca24fa tree-ssa-sccvn.c (struct vn_binary_op_s): Move hashcode near opcode.
2008-01-11  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-sccvn.c (struct vn_binary_op_s): Move hashcode near opcode.
	(struct vn_unary_op_s): Likewise.
	(vn_reference_insert): Free old reference on hash collision.

From-SVN: r131462
2008-01-11 13:36:53 +00:00
Andreas Krebbel
245af66d33 pr34641.C: Add dg-require-visibility.
2008-01-11  Andreas Krebbel  <krebbel1@de.ibm.com>

	* g++.dg/torture/pr34641.C: Add dg-require-visibility.  Define
	size_t using predefined macro.

From-SVN: r131461
2008-01-11 08:53:25 +00:00
Raksit Ashok
acfb3980ee re PR target/27971 (eliminate shift in array[(x>>2)&3])
gcc/ChangeLog
       PR rtl-optimization/27971
       * combine.c (find_split_point): introduced a new split for certain
       types of mem rtx.

gcc/testsuite/ChangeLog

       PR rtl-optimization/27971
       * gcc.target/i386/pr27971.c: New testcase.

From-SVN: r131460
2008-01-11 04:20:32 +00:00
John David Anglin
3fa87ef8fc re PR ada/34466 (s-tasinf.ads:81:42: "cpu_set_t" not declared in "OS_Interface")
PR ada/34466
	* s-osinte-linux-hppa.ads (SC_NPROCESSORS_ONLN): New constant for
	sysconf call.
	(bit_field): New packed boolean type used by cpu_set_t.
	(cpu_set_t): New type corresponding to the C type with
	the same name. Note that on the Ada side we use a bit
	field array for the affinity mask. There is not need
	for the C macro for setting individual bit.
	(pthread_setaffinity_np): New imported routine.

From-SVN: r131457
2008-01-11 01:00:48 +00:00
GCC Administrator
041313f88f Daily bump.
From-SVN: r131455
2008-01-11 00:17:25 +00:00
DJ Delorie
b8a669d0a9 m32c.c (m32c_hard_regno_nregs_1): Renamed from...
* config/m32c/m32c.c (m32c_hard_regno_nregs_1): Renamed from...
(m32c_hard_regno_nregs): ...this, which is now a wrapper.
(m32c_hard_regno_ok): Call the underlying function.

From-SVN: r131449
2008-01-10 14:59:57 -05:00
Paul Thomas
32be9f94bf re PR fortran/34396 (Length of substrings defined by expressions not correctly computed in constructors)
2008-01-10  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/34396
	* trans-array.c (gfc_trans_array_ctor_element):  Use gfc_trans_string_copy
	to assign strings and perform bounds checks on the string length.
	(get_array_ctor_strlen): Remove bounds checking.
	(gfc_trans_array_constructor): Initialize string length checking.
	* trans-array.h : Add prototype for gfc_trans_string_copy.

2008-01-10  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/34396
	* gfortran.dg/bounds_check_12.f90: New test.

From-SVN: r131448
2008-01-10 19:10:48 +00:00
Uros Bizjak
814252befa cmov7.c: Add -mbranch-cost=5 to dg-options.
* gcc.target/i386/cmov7.c: Add -mbranch-cost=5 to dg-options.
        * gcc.target/i386/addr-sel-1.c: Require nonpic effective target.
[

From-SVN: r131447
2008-01-10 19:31:43 +01:00
Richard Guenther
d0f76c4b4f re PR tree-optimization/34683 (SSA rewriting in the loop unroller causes quadratic behavior)
2008-01-10  Richard Guenther  <rguenther@suse.de>

	PR middle-end/34683
	* tree-cfg.c (tree_merge_blocks): Do not go through the
	full-blown folding and stmt updating path if we just deal
	with virtual operands.
	* tree-ssa-copy.c (may_propagate_copy): Do not short-cut
	test for abnormal SSA_NAMEs.

From-SVN: r131446
2008-01-10 16:59:06 +00:00
Andreas Krebbel
90d12f1f04 re PR target/34641 (ICE in reload_cse_simplify_operands, at postreload.c:395)
2008-01-10  Andreas Krebbel  <krebbel1@de.ibm.com>

	PR middle-end/34641
	* reload.c (push_reload): Add assertions.  All constants from
	reg_equiv_constant should have been used for replacing the respective
	pseudo earlier.
	(find_reloads_address): Invoke find_reloads_address_part for
	constant taken from the reg_equiv_constant array.

2008-01-10  Andreas Krebbel  <krebbel1@de.ibm.com>

	PR middle-end/34641
	* g++.dg/torture/pr34641.C: New testcase.

From-SVN: r131445
2008-01-10 16:46:26 +00:00
Steven Bosscher
71ae85578b tree-ssa-sccvn.h (struct vn_ssa_aux): Make the most accessed field (valnum) the first in the struct.
2008-01-10  Steven Bosscher  <stevenb.gcc@gmail.com>

	* tree-ssa-sccvn.h (struct vn_ssa_aux): Make the most accessed
	field (valnum) the first in the struct.  Replace bools with
	unit bit fields.

From-SVN: r131444
2008-01-10 16:29:59 +00:00
Richard Guenther
125e025e06 re PR tree-optimization/34651 (ICE in set_value_range, at tree-vrp.c:321)
2008-01-10  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/34651
	* tree-sra.c (sra_build_assignment): Sanitize.  Use the correct
	types and ordering for masking and converting.

	* g++.dg/torture/pr34651.C: New testcase.

From-SVN: r131442
2008-01-10 14:28:40 +00:00
Paolo Carlini
5817ff8e5f multiway_merge.h: Reformat to 80 columns; adjust some inline specifiers; other minor style fixes.
2008-01-09  Paolo Carlini  <pcarlini@suse.de>

	* include/parallel/multiway_merge.h: Reformat to 80 columns;
	adjust some inline specifiers; other minor style fixes.
	* include/parallel/losertree.h: Likewise.
	* include/parallel/list_partition.h: Likewise.
	* include/parallel/multiseq_selection.h: Likewise.
	* include/parallel/workstealing.h: Likewise.
	* include/parallel/base.h: Likewise.
	* include/parallel/par_loop.h: Likewise.
	* include/parallel/numeric: Likewise.
	* include/parallel/quicksort.h: Likewise.
	* include/parallel/algorithmfwd.h: Likewise.
	* include/parallel/for_each_selectors.h: Likewise.
	* include/parallel/omp_loop_static.h: Likewise.
	* include/parallel/random_shuffle.h: Likewise.
	* include/parallel/balanced_quicksort.h: Likewise.
	* include/parallel/set_operations.h: Likewise.
	* include/parallel/tree.h: Likewise.
	* include/parallel/merge.h: Likewise.
	* include/parallel/unique_copy.h: Likewise.
	* include/parallel/settings.h: Likewise.
	* include/parallel/multiway_mergesort.h: Likewise.
	* include/parallel/numericfwd.h: Likewise.
	* include/parallel/search.h: Likewise.
	* include/parallel/partition.h: Likewise.
	* include/parallel/compatibility.h: Likewise.
	* include/parallel/partial_sum.h: Likewise.
	* include/parallel/find.h: Likewise.
	* include/parallel/algo.h: Likewise.
	* include/parallel/queue.h: Likewise.
	* include/parallel/omp_loop.h: Likewise.
	* include/parallel/sort.h: Likewise.
	* include/parallel/random_number.h: Likewise.

From-SVN: r131440
2008-01-10 02:07:41 +00:00
GCC Administrator
299f57348c Daily bump.
From-SVN: r131438
2008-01-10 00:17:20 +00:00
Sebastian Pop
64cbaacecb re PR tree-optimization/34017 (ICE in lambda_loopnest_to_gcc_loopnest with -O2 -ftree-loop-linear)
2008-01-09  Sebastian Pop  <sebastian.pop@amd.com>

	PR tree-optimization/34017
	* lambda-code.c (lambda_loopnest_to_gcc_loopnest): Generate code
	also for PHI_NODE expressions.

	* gcc.dg/tree-ssa/pr34017.c: New.

From-SVN: r131435
2008-01-09 21:22:19 +00:00
Raksit Ashok
684f4f6a33 MAINTAINERS (Write After Approval): Add myself.
2008-01-09  Raksit Ashok  <raksit@google.com>

	* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r131434
2008-01-09 19:48:42 +00:00
Jan Hubicka
88743d3a8a re PR tree-optimization/34708 (Inlining heuristics issue)
PR tree-optimization/34708
	* tree-inline.c (estimate_num_insns_1): Compute cost of SWITCH_EXPR
	based on number of case labels.
	(init_inline_once): Remove switch_cost.
	* tree-inline.h (eni_weights_d): Remove switch_cost.

From-SVN: r131433
2008-01-09 19:19:40 +00:00
Benjamin Kosnik
d4b7e62e44 api.html: Fix markup for rope.h.
2008-01-09  Benjamin Kosnik  <bkoz@redhat.com>

	* docs/html/17_intro/api.html: Fix markup for rope.h.

From-SVN: r131432
2008-01-09 19:10:47 +00:00
Paolo Carlini
531898c3c2 iterator.h: Reformat to 80 columns; adjust some inline specifiers.
2008-01-09  Paolo Carlini  <pcarlini@suse.de>

	* include/parallel/iterator.h: Reformat to 80 columns; adjust some
	inline specifiers.
	* include/parallel/find_selectors.h: Likewise.
	* include/parallel/losertree.h: Likewise.
	* include/parallel/list_partition.h: Likewise.
	* include/parallel/for_each.h: Likewise.
	* include/parallel/multiseq_selection.h: Likewise.
	* include/parallel/algorithmfwd.h: Likewise.
	* include/parallel/for_each_selectors.h: Likewise.
	* include/parallel/balanced_quicksort.h: Likewise.
	* include/parallel/merge.h: Likewise.
	* include/parallel/algobase.h: Likewise.
	* include/parallel/find.h: Likewise.
	* include/parallel/algo.h: Likewise.
	* include/parallel/checkers.h: Likewise.

From-SVN: r131431
2008-01-09 18:27:27 +00:00
Richard Guenther
c3e203cf80 re PR tree-optimization/30132 (ICE in find_lattice_value, at tree-complex.c:133)
2008-01-09  Richard Guenther  <rguenther@suse.de>
	Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR middle-end/30132
	* gimplify.c (gimplify_cond_expr): Do not create an addressable
	temporary if an rvalue is ok or an lvalue is not required.

	* gcc.c-torture/compile/pr30132.c: New testcase.

Co-Authored-By: Andrew Pinski <andrew_pinski@playstation.sony.com>

From-SVN: r131430
2008-01-09 15:46:49 +00:00
Richard Guenther
def49dd7ca re PR tree-optimization/34458 (ICE in int_cst_value, at tree.c:8047 at -O3)
2008-01-09  Richard Guenther  <rguenther@suse.de>

	PR middle-end/34458
	* tree-data-ref.c (initialize_matrix_A): Use tree_low_cst,
	adjust return type.

	* gcc.c-torture/compile/pr34458.c: New testcase.

From-SVN: r131429
2008-01-09 14:17:13 +00:00
Richard Guenther
cbad2e0926 re PR tree-optimization/34679 (ICE: tree check: expected integer_type, have enumeral_type in host_integerp, at tree.c:4949 (predictive commoning))
2008-01-09  Richard Guenther  <rguenther@suse.de>

	PR middle-end/34679
	* tree.c (host_integerp): Check for sizetype only if the
	type is an integer type.

From-SVN: r131425
2008-01-09 12:14:01 +00:00
Francesco Biscani
5163181337 hashtable (_Hashtable): Fix friend declaration of __detail::_Map_base<>.
2008-01-09  Francesco Biscani  <bluescarni@gmail.com>

	* include/tr1_impl/hashtable (_Hashtable): Fix friend declaration
	of __detail::_Map_base<>.

From-SVN: r131424
2008-01-09 11:12:11 +00:00
Steven Bosscher
59e5c37d0f re PR debug/26364 ([no unit-at-a-time mode] Uninlined function is marked as inlined)
2008-01-09  Steven Bosscher  <stevenb.gcc@gmail.com>

	PR debug/26364
	* opts.c (decode_options): Disable inlining of functions called
	once if not in unit-at-a-time mode.

From-SVN: r131423
2008-01-09 10:33:55 +00:00
Alexandre Oliva
712db60ed0 * Makefile.in (dse.o): Remove duplicate $(RECOG_H) dependency.
From-SVN: r131421
2008-01-09 09:18:24 +00:00
Kaveh Ghazi
8debbe4841 Fix typo in last commit.
From-SVN: r131418
2008-01-09 09:03:49 +00:00
Uros Bizjak
b73d152763 invoke.texi (i386 and x86-64 Options): Two small spell fixes.
* doc/invoke.texi (i386 and x86-64 Options) [mrecip]:
	Two small spell fixes.

From-SVN: r131414
2008-01-09 08:35:49 +01:00
John David Anglin
876e92ef8c re PR testsuite/30459 (FAIL: g++.dg/eh/ia64-2.C (test for excess errors))
PR testsuite/30459
	g++.dg/eh/ia64-2.C: Require weak support.

From-SVN: r131410
2008-01-09 03:14:15 +00:00
GCC Administrator
14a697970e Daily bump.
From-SVN: r131408
2008-01-09 00:17:24 +00:00
Richard Guenther
3fe2f42a2c re PR c++/31863 (g++-4.1: out of memory with -O1/-O2)
2008-01-08  Richard Guenther  <rguenther@suse.de>

	PR middle-end/31863
	* tree-ssa-structalias.c (push_fields_onto_fieldstack): Bail
	out early if the result will be unused.

	* g++.dg/torture/pr31863.C: New testcase.

From-SVN: r131405
2008-01-08 21:35:25 +00:00
Richard Guenther
416a8af4da re PR fortran/34706 (FE should reuse array temporaries, reduce temporaties and tell ME the array-size type)
2008-01-08  Richard Guenther  <rguenther@suse.de>

	PR fortran/34706
	PR tree-optimization/34683
	* trans-types.c (gfc_get_array_type_bounds): Use an array type
	with known size for accesses if that is known.

From-SVN: r131404
2008-01-08 21:21:29 +00:00
Uros Bizjak
4d86971803 re PR target/34709 (revision 131342 miscompiled 481.wrf on Linux/Intel64)
PR target/34709
        Revert:

        2008-01-05  Uros Bizjak  <ubizjak@gmail.com>
        * config/i386/i386.c (ix86_builtin_reciprocal): Remove check
        for TARGET_RECIP.

From-SVN: r131403
2008-01-08 20:22:46 +01:00
Paolo Carlini
bcc0edbb91 user_facet_hierarchies.cc: Do not include <cassert>.
2008-01-08  Paolo Carlini  <pcarlini@suse.de>

	* testsuite/22_locale/global_templates/user_facet_hierarchies.cc: Do
	not include <cassert>.
	* testsuite/22_locale/global_templates/standard_facet_hierarchies.cc:
	Likewise.
	* testsuite/util/testsuite_common_types.h: Include <algorithm>.

From-SVN: r131402
2008-01-08 18:16:06 +00:00
Jan Sjodin
cedbd7647a 2008-01-08 Jan Sjodin <jan.sjodin@amd.com>
* config/i386/i386.c:
        (k8_cost, amdfam10_cost): Branch costs for vectorization tuned.

From-SVN: r131401
2008-01-08 16:35:44 +00:00
Richard Guenther
a9990582a8 re PR tree-optimization/34683 (SSA rewriting in the loop unroller causes quadratic behavior)
2008-01-08  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/34683
	* tree-ssa-operands.c (operand_build_cmp): Export.
	* tree-ssa-operands.h (operand_build_cmp): Declare.
	* tree-vn.c (vuses_compare): Remove.
	(sort_vuses): Use operand_build_cmp.
	(sort_vuses_heap): Likewise.
	* tree-ssa-sccvn.c (vuses_to_vec): Use VEC_reserve, not VEC_alloc
	to re-use old VEC if available.  Do not sort already sorted VUSEs.
	(vdefs_to_vec): Do not sort already sorted VDEFs.

From-SVN: r131400
2008-01-08 16:29:14 +00:00
Jakub Jelinek
0f3e711eef configure.ac (--enable-linux-futex): Add new configure option.
libstdc++-v3/
	* configure.ac (--enable-linux-futex): Add new configure option.
	(HAVE_LINUX_FUTEX): New AC_DEFINE.
	* Makefile.in: Rebuilt.
	* aclocal.m4: Rebuilt.
	* configure: Rebuilt.
	* config.h.in: Rebuilt.
	* config/cpu/generic/cxxabi_tweaks.h (_GLIBCXX_GUARD_BIT,
	_GLIBCXX_GUARD_PENDING_BIT, _GLIBCXX_GUARD_WAITING_BIT): Define.
	* config/cpu/arm/cxxabi_tweaks.h (_GLIBCXX_GUARD_BIT,
	_GLIBCXX_GUARD_PENDING_BIT, _GLIBCXX_GUARD_WAITING_BIT): Define.
	* libsupc++/guard.cc: Include climits and syscall.h.
	(_GLIBCXX_USE_FUTEX): Define if futex syscall and atomic builtins
	are supported.
	(_GLIBCXX_FUTEX_WAIT, _GLIBCXX_FUTEX_WAKE): Likewise.
	(__guard_test_bit): New static inline.
	(__cxa_guard_acquire, __cxa_guard_release, __cxa_guard_abort): Use
	atomic builtins and futex syscall if _GLIBCXX_USE_FUTEX.
config/
	* futex.m4: New file.
libgomp/
	* configure.ac: Move futex checking into ../config/futex.m4.
	* configure: Rebuilt.
	* aclocal.m4: Rebuilt.
	* Makefile.in: Rebuilt.

	* configure.tgt: Rename have_tls to gcc_cv_have_tls to match
	2007-10-15 ../config/tls.m4 change.

From-SVN: r131399
2008-01-08 17:14:49 +01:00
Jakub Jelinek
c90eee444c re PR middle-end/34694 (Wrong line number for uninitialized variable)
PR middle-end/34694
	* omp-low.c (copy_var_decl): Copy also DECL_SOURCE_LOCATION.

	* gcc.dg/gomp/pr34694.c: New test.
	* g++.dg/gomp/pr34694.C: New test.

From-SVN: r131398
2008-01-08 17:08:24 +01:00
Jakub Jelinek
b2ebd26837 re PR c++/33890 (ICE in tsubst_copy with OpenMP)
PR c++/33890
	* semantics.c (finish_omp_for): Don't call
	fold_build_cleanup_point_expr if processing_template_decl.

	* g++.dg/gomp/pr33890.C: New test.

From-SVN: r131397
2008-01-08 17:06:31 +01:00
Paul Thomas
0c6ce8b027 re PR fortran/34476 (Parameters: Bogus out of bounds error in array constructor)
2008-01-08  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/34476
	* expr.c (find_array_element): Check that the array bounds are
	constant before using them.  Use lower, as well as upper bound.
	(check_restricted): Allow implied index variable.

2008-01-08  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/34476
	* gfortran.dg/parameter_array_init_3.f90: New test.

From-SVN: r131396
2008-01-08 15:14:33 +00:00