Andrew Pinski [Tue, 11 Mar 2008 21:08:00 +0000 (21:08 +0000)]
re PR tree-optimization/35403 (ipa-reference.c does not change a default initialized static variable to be readonly)
2008-03-11 Andrew Pinski <andrew_pinski@playstation.sony.com>
* ipa-reference.c (static_execute): Remove module_statics_const and
associated setting code.
2008-03-11 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR tree-opt/35403
* gcc.dg/tree-ssa/ipa-reference-1.c: New testcase.
From-SVN: r133119
Uros Bizjak [Tue, 11 Mar 2008 19:18:48 +0000 (20:18 +0100)]
re PR target/35540 (Segmentation fault with __builtin_parity() and -O1)
PR target/35540
* config/i386/i386.md (paritysi2, paritydi2): Use register_operand
constraint for operand 1.
(paritysi2_cmp): Use register_operand constraint for operand 2.
Use earlyclobber modifier for operand 1. Remove support for
memory operands.
(paritydi2_cmp): Use register_operand constraint for operand 3.
Use earlyclobber modifier for operand 1. Remove support for
memory operands.
testsuite/ChangeLog:
PR target/35540
* gcc.target/i386/pr35540.c: New test.
From-SVN: r133118
Paul Brook [Tue, 11 Mar 2008 17:43:22 +0000 (17:43 +0000)]
arm.c (use_return_insn): Check TARGET_APCS_FRAME.
2008-03-11 Paul Brook <paul@codesourcery.com>
Vladimir Prus <vladimir@codesourcery.com>
* config/arm/arm.c (use_return_insn): Check TARGET_APCS_FRAME.
(arm_compute_save_reg0_reg12_mask): Always
check if register 11 must be saved. Always safe hard frame pointer
when frame_pointer_needeed.
(arm_compute_save_reg_mask): Save IP and PC
only with apcs frames.
(arm_output_epilogue): Adjust Thumb2 codepath to
be also invoked and work for ARM non-apcs frames.
(arm_expand_prologue): Don't bother saving IP
for non-apcs frame, since it's not clobbered by
prologue code. Implement non-apcs frame
layout.
From-SVN: r133117
Paolo Bonzini [Tue, 11 Mar 2008 16:48:28 +0000 (16:48 +0000)]
re PR rtl-optimization/35281 (multiply with 0 generated for 64*32->64)
2008-03-11 Paolo Bonzini <bonzini@gnu.org>
PR rtl-optimization/35281
* expr.c (convert_move): Use a new pseudo for the intermediate
from_mode->word_mode result.
From-SVN: r133116
Paolo Bonzini [Tue, 11 Mar 2008 16:44:25 +0000 (16:44 +0000)]
langhooks-def.h (LANG_HOOKS_CLEAR_BINDING_STACK): Delete.
2008-03-11 Paolo Bonzini <bonzini@gnu.org>
* langhooks-def.h (LANG_HOOKS_CLEAR_BINDING_STACK): Delete.
* langhooks.h (struct lang_hooks): Delete clear_binding_stack member.
* toplev.c (compile_file): Don't call it.
fortran:
2008-03-11 Paolo Bonzini <bonzini@gnu.org>
* f95-lang.c (LANG_HOOKS_CLEAR_BINDING_STACK): Delete.
(gfc_be_parse_file): Call clear_binding_stack from here.
(gfc_clear_binding_stack): Rename to clear_binding_stack.
java:
2008-03-11 Paolo Bonzini <bonzini@gnu.org>
* jcf-parse.c (java_parse_file): Assert binding levels are
left in order.
* lang.c (LANG_HOOKS_CLEAR_BINDING_STACK, java_clear_binding_stack):
Delete.
From-SVN: r133115
Uros Bizjak [Tue, 11 Mar 2008 15:01:18 +0000 (16:01 +0100)]
override-attribs.C: Require ilp32 x86 target.
* g++.dg/inherit/override-attribs.C: Require ilp32 x86 target.
From-SVN: r133111
Nick Clifton [Tue, 11 Mar 2008 14:08:53 +0000 (14:08 +0000)]
md5.c (md5_process_bytes): Do not assume that memcpy will provide a return value.
* md5.c (md5_process_bytes): Do not assume that memcpy will
provide a return value.
From-SVN: r133107
Uros Bizjak [Tue, 11 Mar 2008 12:47:29 +0000 (13:47 +0100)]
re PR c/35526 (ICE on memcpy)
PR middle-end/35526
* expr.c (store_expr): Call emit_block_move if the mode
of "temp" RTX is BLKmode.
testsuite/ChangeLog:
PR middle-end/35526
* g++.dg/torture/pr35526.C: New test.
From-SVN: r133106
Francois-Xavier Coudert [Tue, 11 Mar 2008 10:49:13 +0000 (10:49 +0000)]
re PR libfortran/32812 (random_seed and date_and_time)
PR libfortran/32812
* intrinsics/random.c (scramble_seed, unscramble_seed): New
functions.
(random_seed_i4): Scramble the seed the user gives us before
storing it, and unscramble it when we return it back later.
From-SVN: r133104
Andrew Pinski [Tue, 11 Mar 2008 09:36:51 +0000 (09:36 +0000)]
re PR tree-optimization/31358 (IV-OPTs produces a weird MEM_REF)
2008-03-11 Andrew Pinski <andrew_pinski@playstation.sony.com>
Richard Guenther <rguenther@suse.de>
PR tree-optimization/31358
* tree-ssa-loop-manip.c (create_iv): Call force_gimple_operand for
the step with a NULL_TREE.
* tree-ssa-loop-ivopts.c (find_bivs): Convert the step
to sizetype if type is a pointer type.
(add_candidate_1): Don't convert the base and step to
the generic type if the orginal type is a pointer type.
(add_iv_value_candidates): Use sizetype for the step
if type is a pointer type.
(cand_value_at): Likewise.
* tree-ssa-address.c (add_to_parts): Use POINTER_PLUS_EXPR
for pointer types.
* tree-affine.c (tree_to_aff_combination <POINTER_PLUS_EXPR>):
Don't convert the tem affine to the type.
(add_elt_to_tree): Use sizetype for the step if a pointer.
Use POINTER_PLUS_EXPR for pointers.
(aff_combination_to_tree): Use sizetype for the step if a
pointer.
Co-Authored-By: Richard Guenther <rguenther@suse.de>
From-SVN: r133102
GCC Administrator [Tue, 11 Mar 2008 00:17:45 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r133100
Jim Meyering [Mon, 10 Mar 2008 22:08:34 +0000 (22:08 +0000)]
Don't leak upon failed realloc.
libjava
2008-03-10 Jim Meyering <meyering@redhat.com>
Don't leak upon failed realloc.
* gnu/classpath/natSystemProperties.cc
(SystemProperties::insertSystemProperties):
libjava/classpath
2008-03-10 Jim Meyering <meyering@redhat.com>
Don't leak upon failed realloc.
* native/jni/classpath/jcl.c (JCL_realloc): Upon failed realloc,
free the original buffer before throwing the exception.
From-SVN: r133094
Vladimir Makarov [Mon, 10 Mar 2008 22:05:25 +0000 (22:05 +0000)]
sse.md (ssse3_pmaddubswv8hi3, [...]): Remove commutativity hint.
2008-03-10 Vladimir Makarov <vmakarov@redhat.com>
* config/i386/sse.md (ssse3_pmaddubswv8hi3, ssse3_pmaddubswv4hi3):
Remove commutativity hint.
From-SVN: r133093
Janis Johnson [Mon, 10 Mar 2008 21:33:09 +0000 (21:33 +0000)]
patch_tester.sh (initialization): Initialize svnpatch and stop.
2008-03-10 Janis Johnson <janis187@us.ibm.com>
* patch_tester.sh (initialization): Initialize svnpatch and stop.
(usage): Add -svnpath and -stop.
(makedir): New.
(argument handling): Process -stop and -svnpath.
(setup code): Use makedir, error out if initial svn checkout fails.
(update): Use svnpath. Invoke contrib/gcc_update.
(apply_patch): Require that patch was created at top level. Use eval
with option variables. Don't use bootstrap target for make. Verify
that some tests were run.
(bootntest_patched): Use snvpath.
(main loop): For -stop, exit when there are no more patches to test.
From-SVN: r133092
Jakub Jelinek [Mon, 10 Mar 2008 19:48:20 +0000 (20:48 +0100)]
re PR c++/35328 (ICE with firstprivate variable with invalid destructor)
PR c++/35328
* semantics.c (finish_omp_clauses): Look through NOP_EXPR even
if errorcount.
* g++.dg/gomp/pr35328.C: New test.
From-SVN: r133087
Jakub Jelinek [Mon, 10 Mar 2008 19:43:16 +0000 (20:43 +0100)]
re PR c++/35337 (Broken diagnostic for firstprivate clause)
PR c++/35337
* semantics.c (finish_omp_clauses): Use %qD instead of %qE for
DECL_P in not a variable and appears more than once error messages.
* g++.dg/gomp/pr35337.C: New test.
From-SVN: r133086
Jakub Jelinek [Mon, 10 Mar 2008 19:40:39 +0000 (20:40 +0100)]
re PR c/35438 (ICE with invalid use of threadprivate)
PR c/35438
PR c/35439
* c-parser.c (c_parser_omp_threadprivate): Don't add vars with
errorneous type. Check that v is a VAR_DECL.
* gcc.dg/gomp/pr35438.c: New test.
* gcc.dg/gomp/pr35439.c: New test.
From-SVN: r133085
Jakub Jelinek [Mon, 10 Mar 2008 19:39:30 +0000 (20:39 +0100)]
re PR middle-end/35099 (ICE in remove_unreachable_regions with -O -fopenmp)
PR middle-end/35099
* tree-cfg.c (new_label_mapper): Update cfun->last_label_uid.
* g++.dg/gomp/pr35099.C: New test.
From-SVN: r133084
Eric Botcazou [Mon, 10 Mar 2008 19:26:35 +0000 (19:26 +0000)]
trans.c (emit_range_check): Do not emit the check if the base type of the expression is the type against...
* trans.c (emit_range_check): Do not emit the check if the base type
of the expression is the type against which its range must be checked.
From-SVN: r133083
H.J. Lu [Mon, 10 Mar 2008 18:20:23 +0000 (18:20 +0000)]
re PR tree-optimization/35494 (Revision 132991 breaks C++ static member)
gcc/
2008-03-10 H.J. Lu <hongjiu.lu@intel.com>
PR tree-optimization/35494
* tree-ssa-ccp.c (get_symbol_constant_value): Check if value
may be overriden at link and run time.
gcc/testsuite/
2008-03-10 H.J. Lu <hongjiu.lu@intel.com>
PR tree-optimization/35494
* g++.dg/tree-ssa/ssa-store-ccp-1.C: New.
* gcc.dg/tree-ssa/ssa-store-ccp-2.c: Likewise.
* gcc.dg/tree-ssa/ssa-store-ccp-3.c: Likewise.
* gcc.dg/tree-ssa/ssa-store-ccp-4.c: Likewise.
From-SVN: r133082
Richard Guenther [Mon, 10 Mar 2008 17:14:45 +0000 (17:14 +0000)]
re PR tree-optimization/34677 (PREs insert_fake_stores is mostly useless)
2008-03-10 Richard Guenther <rguenther@suse.de>
PR tree-optimization/34677
* tree-ssa-pre.c (modify_expr_node_pool): Remove.
(poolify_tree): Likewise.
(modify_expr_template): Likewise.
(poolify_modify_stmt): Likewise.
(insert_fake_stores): Handle all component-ref style stores
in addition to INDIRECT_REF. Also handle complex types.
Do not poolify the inserted load.
(realify_fake_stores): Do not rebuild the tree but only
make it a SSA_NAME copy.
(init_pre): Remove initialzation of modify_expr_template.
Do not allocate modify_expr_node_pool.
(fini_pre): Do not free modify_expr_node_pool.
* gcc.dg/tree-ssa/loadpre23.c: New testcase.
* gcc.dg/tree-ssa/loadpre24.c: Likewise.
* gcc.dg/tree-ssa/loadpre25.c: Likewise.
From-SVN: r133081
Paul Brook [Mon, 10 Mar 2008 14:52:02 +0000 (14:52 +0000)]
arm.md (UNSPEC_STACK_ALIGN, [...]): Renumber to avoid conflicts.
2008-03-10 Paul Brook <paul@codesourcery.com>
gcc/
* config/arm/arm.md (UNSPEC_STACK_ALIGN, UNSPEC_PIC_OFFSET): Renumber
to avoid conflicts.
From-SVN: r133080
Paul Brook [Mon, 10 Mar 2008 13:39:56 +0000 (13:39 +0000)]
cortex-r4.md: New.
2008-03-10 Paul Brook <paul@codesourcery.com>
Mark Shinwell <shinwell@codesourcery.com>
gcc/
* config/arm/cortex-r4.md: New.
* config/arm/thumb2.md (divsi3, udivsi3): Annotate with
insn attributes.
* config/arm/arm.md: Include cortex-r4.md.
(insn): Add smmls, sdiv and udiv values.
(generic_sched): Don't use generic scheduling for Cortex-R4.
(arm_issue_rate): New function.
(TARGET_SCHED_ISSUE_RATE): Define.
Co-Authored-By: Mark Shinwell <shinwell@codesourcery.com>
From-SVN: r133078
Uros Bizjak [Mon, 10 Mar 2008 13:33:07 +0000 (14:33 +0100)]
* ChangeLog: Remove merge marker.
From-SVN: r133077
Sebastian Pop [Mon, 10 Mar 2008 12:56:56 +0000 (12:56 +0000)]
invoke.texi (-ftree-loop-distribution): Add an example.
2008-03-10 Sebastian Pop <sebastian.pop@amd.com>
* doc/invoke.texi (-ftree-loop-distribution): Add an example.
From-SVN: r133076
Richard Guenther [Mon, 10 Mar 2008 11:58:09 +0000 (11:58 +0000)]
tree-ssa-pre.c (get_sccvn_value): Simplify.
2008-03-10 Richard Guenther <rguenther@suse.de>
* tree-ssa-pre.c (get_sccvn_value): Simplify.
(compute_avail): Do not add stmt uses to AVAIL_OUT.
From-SVN: r133074
Paolo Bonzini [Mon, 10 Mar 2008 08:08:06 +0000 (08:08 +0000)]
langhooks-def.h (LANG_HOOKS_REDUCE_BIT_FIELD_OPERATIONS): Set default to true.
2008-03-10 Paolo Bonzini <bonzini@gnu.org>
* langhooks-def.h (LANG_HOOKS_REDUCE_BIT_FIELD_OPERATIONS):
Set default to true.
From-SVN: r133072
GCC Administrator [Mon, 10 Mar 2008 00:19:33 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r133070
Paul Thomas [Sun, 9 Mar 2008 19:38:51 +0000 (19:38 +0000)]
re PR fortran/35474 (Reading module file with COMMON and EQUIVALENCE)
2008-03-09 Paul Thomas <pault@gcc.gnu.org>
PR fortran/35474
* module.c (mio_symtree_ref): After providing a symbol for a
missing equivalence member, resolve and NULL the fixups.
2008-03-09 Paul Thomas <pault@gcc.gnu.org>
PR fortran/35474
* gfortran.dg/module_commons_2.f90 : New test.
From-SVN: r133063
Ralf Wildenhues [Sun, 9 Mar 2008 17:43:10 +0000 (17:43 +0000)]
c.opt (Wsynth): Deprecate.
gcc/
* c.opt (Wsynth): Deprecate.
* doc/invoke.texi (Option Summary, Warning Options): Document
-Wno-format-contains-nul.
gcc/fortran/
* invoke.texi (Error and Warning Options): Document
-Wline-truncation.
contrib/
* check_warning_flags.sh: Instead of invoke.texi, take the path
to the doc directory as argument. Check that warnings listed in
'gcc --help' are accepted by the compiler, and listed in the
manuals.
From-SVN: r133059
Ralf Wildenhues [Sun, 9 Mar 2008 17:31:22 +0000 (17:31 +0000)]
cp-hacking.texinfo: Fix spacing after periods.
libjava/classpath/
* doc/cp-hacking.texinfo: Fix spacing after periods.
* doc/cp-tools.texinfo: Likewise.
* doc/cp-vmintegration.texinfo: Likewise.
From-SVN: r133058
Ralf Wildenhues [Sun, 9 Mar 2008 17:29:49 +0000 (17:29 +0000)]
cp-hacking.texinfo: Fix some typos.
libjava/classpath/
* doc/cp-hacking.texinfo: Fix some typos.
* doc/cp-tools.texinfo: Likewise.
* doc/cp-vmintegration.texinfo: Likewise.
From-SVN: r133057
Eric Botcazou [Sun, 9 Mar 2008 15:34:33 +0000 (15:34 +0000)]
frame_overflow.adb: Improve portability.
* gnat.dg/frame_overflow.adb: Improve portability.
From-SVN: r133054
Uros Bizjak [Sun, 9 Mar 2008 13:37:52 +0000 (14:37 +0100)]
re PR target/35496 (test failures between revs. 132950 and 132974)
PR target/35496
* config/i386/i386.c (ix86_constant_algnment): Compute alignment using
ALIGN_MODE_128 for VECTOR_CST and INTEGER_CST in addition to REAL_CST.
From-SVN: r133052
Ira Rosen [Sun, 9 Mar 2008 08:59:49 +0000 (08:59 +0000)]
rs6000.c (builtin_description): Rename vector left shift operations.
* config/rs6000/rs6000.c (builtin_description): Rename vector
left shift operations.
* config/rs6000/altivec.md (UNSPEC_VSL): Remove.
(altivec_vsl<VI_char>): Rename to ...
(ashl<mode>3): ... new name.
(mulv4sf3, mulv4si3, negv4sf2): Replace gen_altivec_vslw with
gen_ashlv4si3.
(absv4sf2): Convert to use ashift:V4SI instead of UNSPEC_VSL.
From-SVN: r133051
GCC Administrator [Sun, 9 Mar 2008 00:20:44 +0000 (00:20 +0000)]
Daily bump.
From-SVN: r133049
H.J. Lu [Sat, 8 Mar 2008 22:33:54 +0000 (22:33 +0000)]
re PR testsuite/35350 (FAIL: gcc.target/i386/isa-10.c execution test)
2008-03-08 H.J. Lu <hongjiu.lu@intel.com>
PR target/35350
* gcc.target/i386/isa-1.c: Add -march=x86-64.
* gcc.target/i386/isa-2.c: Likewise.
* gcc.target/i386/isa-3.c: Likewise.
* gcc.target/i386/isa-10.c: Likewise.
* gcc.target/i386/isa-11.c: Likewise.
* gcc.target/i386/isa-12.c: Likewise.
* gcc.target/i386/isa-13.c: Likewise.
* gcc.target/i386/isa-14.c: Likewise.
From-SVN: r133044
Uros Bizjak [Sat, 8 Mar 2008 22:05:42 +0000 (23:05 +0100)]
sse2-mmx.c (unsigned_add3): Use _mm_setzero_si64 to zero carry.
* gcc.target/i386/sse2-mmx.c (unsigned_add3): Use _mm_setzero_si64
to zero carry.
From-SVN: r133043
Richard Guenther [Sat, 8 Mar 2008 20:52:50 +0000 (20:52 +0000)]
coverage.h (tree_coverage_counter_addr): Declare.
2008-03-08 Richard Guenther <rguenther@suse.de>
* coverage.h (tree_coverage_counter_addr): Declare.
* coverage.c (tree_coverage_counter_addr): New function.
* tree-profile.c (tree_gen_edge_profiler): Unshare counter
before using again.
(tree_gen_pow2_profiler): Use tree_coverage_counter_addr.
(tree_gen_one_value_profiler): Likewise.
(tree_gen_ic_profiler): Likewise.
(tree_gen_average_profiler): Likewise.
(tree_gen_ior_profiler): Likewise.
From-SVN: r133041
Eric Botcazou [Sat, 8 Mar 2008 20:01:58 +0000 (20:01 +0000)]
decl.c (maybe_pad_type): Use value_factor_p.
* decl.c (maybe_pad_type): Use value_factor_p.
From-SVN: r133039
Richard Guenther [Sat, 8 Mar 2008 19:30:55 +0000 (19:30 +0000)]
tree-ssa-sccvn.h (vn_binary_op_lookup): Remove.
2008-03-08 Richard Guenther <rguenther@suse.de>
* tree-ssa-sccvn.h (vn_binary_op_lookup): Remove.
(vn_binary_op_insert): Likewise.
(vn_unary_op_lookup): Likewise.
(vn_unary_op_insert): Likewise.
(vn_nary_op_lookup): Declare.
(vn_nary_op_insert): Likewise.
* tree-ssa-sccvn.c (struct vn_tables_s): Merge unary
and binary hashes, use a single obstack for unary_op_pool
and binary_op_pool.
(struct vn_binary_op_s, struct vn_unary_op_s): Replace with
a single struct vn_nary_op_s. Store tree code length and
a variable number of operands.
(struct vn_reference_op_struct): Remove unused op2.
(vn_reference_op_eq): Do not compare op2.
(vn_reference_op_compute_hash): Do not compute hash of op2.
(vn_unary_op_hash, vn_binary_op_hash): Replace with vn_nary_op_hash.
(vn_unary_op_compute_hash, vn_binary_op_compute_hash): Replace
with vn_nary_op_compute_hash.
(vn_unary_op_eq, vn_binary_op_eq): Replace with vn_nary_op_eq.
(vn_unary_op_lookup, vn_binary_op_lookup): Replace with
vn_nary_op_lookup.
(vn_unary_op_insert, vn_binary_op_insert): Replace with
vn_nary_op_insert.
(visit_unary_op): Call nary functions.
(visit_binary_op): Likewise.
(process_scc): Adjust for struct vn_tables_s changes.
(allocate_vn_table): Likewise.
(free_vn_table): Likewise.
* tree-vn.c (vn_add): Call nary functions.
(vn_lookup): Likewise.
From-SVN: r133038
Francois-Xavier Coudert [Sat, 8 Mar 2008 18:22:31 +0000 (18:22 +0000)]
re PR fortran/34956 (-fbounds-check: bounds_check_9.f90: Use of uninitialized memory)
PR fortran/34956
* trans-array.c (gfc_conv_ss_startstride): Fix the logic to avoid
checking bounds of absent optional arguments.
From-SVN: r133037
Eric Botcazou [Sat, 8 Mar 2008 13:14:19 +0000 (13:14 +0000)]
Fix nits.
From-SVN: r133036
Eric Botcazou [Sat, 8 Mar 2008 12:44:51 +0000 (12:44 +0000)]
lang.opt (nostdlib): Move around.
* lang.opt (nostdlib): Move around.
* misc.c (gnat_handle_option): Fix formatting.
(gnat_dwarf_name): Move around.
* trans.c (Case_Statement_to_gnu): Fix formatting.
(gnat_to_gnu): Likewise.
* utils.c (aggregate_type_contains_array_p): Likewise.
(create_subprog_decl): Likewise.
From-SVN: r133035
Uros Bizjak [Sat, 8 Mar 2008 12:43:13 +0000 (13:43 +0100)]
re PR target/22152 (Poor loop optimization when using mmx builtins)
PR target/22152
* gcc.target/i386/pr22152.c: New test.
* gcc.target/i386/sse2-mmx.c: Ditto.
From-SVN: r133034
Eric Botcazou [Sat, 8 Mar 2008 12:12:47 +0000 (12:12 +0000)]
decl.c (gnat_to_gnu_entity): Do not bother propagating the TYPE_USER_ALIGN flag when creating a JM type.
* decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>: Do not
bother propagating the TYPE_USER_ALIGN flag when creating a JM type.
From-SVN: r133032
Eric Botcazou [Sat, 8 Mar 2008 12:01:22 +0000 (12:01 +0000)]
decl.c (gnat_to_gnu_entity): Do not force BIGGEST_ALIGNMENT when capping the alignment of records with...
* decl.c (gnat_to_gnu_entity) <E_Record_Type>: Do not force
BIGGEST_ALIGNMENT when capping the alignment of records with
strict alignment and size clause.
From-SVN: r133031
Eric Botcazou [Sat, 8 Mar 2008 11:53:19 +0000 (11:53 +0000)]
lang-specs.h: Pass -gnatwa if -Wall is passed.
* lang-specs.h: Pass -gnatwa if -Wall is passed.
* misc.c (gnat_handle_option) <OPT_Wall>: Expand into -Wunused
and -Wuninitialized.
(gnat_post_options): Clear warn_unused_parameter.
From-SVN: r133030
Eric Botcazou [Sat, 8 Mar 2008 11:30:26 +0000 (11:30 +0000)]
utils.c (finish_record_type): Clear DECL_BIT_FIELD on sufficiently aligned bit-fields...
* utils.c (finish_record_type): Clear DECL_BIT_FIELD on sufficiently
aligned bit-fields, bumping the alignment of the record type if deemed
profitable.
(value_factor_p): Return false instead of 0.
From-SVN: r133028
Eric Botcazou [Sat, 8 Mar 2008 11:10:18 +0000 (11:10 +0000)]
decl.c (gnat_to_gnu_entity): Add support for scalar types with small alignment.
* decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>: Add support
for scalar types with small alignment.
From-SVN: r133027
Eric Botcazou [Sat, 8 Mar 2008 10:57:28 +0000 (10:57 +0000)]
trans.c (Loop_Statement_to_gnu): Set the SLOC of the loop label from that of the front-end's end label.
* trans.c (Loop_Statement_to_gnu): Set the SLOC of the loop label
from that of the front-end's end label.
(gnat_gimplify_stmt) <LOOP_STMT>: Set the SLOC of the backward goto
from that of the loop label.
From-SVN: r133026
Jakub Jelinek [Sat, 8 Mar 2008 07:30:55 +0000 (08:30 +0100)]
re PR target/35498 (libgomp/testsuite/libgomp.c/atomic-3.c fails on ppc-linux)
PR target/35498
* config/rs6000/rs6000.c (rs6000_expand_compare_and_swapqhi): Shift
wdst back after sync_compare_and_swapqhi_internal.
From-SVN: r133024
Uros Bizjak [Sat, 8 Mar 2008 06:59:33 +0000 (07:59 +0100)]
re PR target/22152 (Poor loop optimization when using mmx builtins)
2008-03-08 Uros Bizjak <ubizjak@gmail.com>
PR target/22152
* config/i386/i386-modes.def (V1DI): New vector mode.
* config/i386/i386.h (VALID_MMX_REG_MODE): Add V1DImode.
* config/i386/mmx.md (MMXMODEI8): New mode iterator.
(MMXMODE248): Ditto.
(MMXMODE): Add V1DI mode.
(mmxvecsize): Change DI mode to V1DI mode.
("mov<mode>): Use MMXMODEI8 mode iterator.
("*mov<mode>_internal_rex64"): Ditto.
("*mov<mode>_internal"): Ditto.
("mmx_add<mode>3"): Ditto. Handle V1DImode for TARGET_SSE2.
("mmx_sub<mode>3"): Ditto.
("mmx_adddi3"): Remove insn pattern.
("mmx_subdi3"): Ditto.
("mmx_ashr<mode>3"): Use SImode and "yN" constraint for operand 2.
("mmx_lshr<mode>3"): Ditto. Use MMXMODE248 mode iterator.
("mmx_ashl<mode>3"): Ditto.
("mmx_lshrdi3"): Remove insn pattern.
("mmx_ashldi3"): Ditto.
* config/i386/i386.c (classify_argument): Handle V1DImode.
(function_arg_advance_32): Ditto.
(function_arg_32): Ditto.
(struct builtin_description) [IX86_BUILTIN_PADDQ]: Use
mmx_addv1di3 insn pattern.
[IX86_BUILTIN_PSUBQ]: Use mmx_subv1di3 insn pattern.
[IX86_BUILTIN_PSLL?, IX86_BUILTIN_PSRL?, IX86_BUILTIN_PSRA?,
IX86_BUILTIN_PSLL?I, IX86_BUILTIN_PSRL?I, IX86_BUILTIN_PSRA?I,
IX86_BUILTIN_PSLL?I128, IX86_BUILTIN_PSRL?I128, IX86_BUILTIN_PSRA?I128]:
Remove definitions of built-in functions.
(V1DI_type_node): New node.
(v1di_ftype_v1di_int): Ditto.
(v1di_ftype_v1di_v1di): Ditto.
(v2si_ftype_v2si_si): Ditto.
(v4hi_ftype_v4hi_di): Remove node.
(v2si_ftype_v2si_di): Ditto.
(ix86_init_mmx_sse_builtins): Handle V1DImode.
(__builtin_ia32_psll?, __builtin_ia32_psrl?, __builtin_ia32_psra?):
Redefine builtins using def_builtin_const with *_ftype_*_int node.
(__builtin_ia32_psll?i, __builtin_ia32_psrl?i, __builtin_ia32_psra?i):
Add new builtins using def_builtin_const.
(ix86_expand_builtin) [IX86_BUILTIN_PSLL?, IX86_BUILTIN_PSRL?,
IX86_BUILTIN_PSRA?, IX86_BUILTIN_PSLL?I, IX86_BUILTIN_PSRL?I,
IX86_BUILTIN_PSRA?I]: Handle builtin definitions.
* config/i386/mmintrin.h (__v1di): New typedef.
(_mm_add_si64): Cast arguments to __v1di type.
(_mm_sub_si64): Ditto.
(_mm_sll_pi16): Cast __count to __v4hi type.
(_mm_sll_pi32): Cast __count to __v2si type.
(_mm_sll_si64): Cast arguments to __v1di type.
(_mm_srl_pi16): Cast __count to __v4hi type.
(_mm_srl_pi32): Cast __count to __v2si type.
(_mm_srl_si64): Cast arguments to __v1di type.
(_mm_sra_pi16): Cast __count to __v4hi type.
(_mm_sra_pi32): Cast __count to __v2si type.
(_mm_slli_pi16): Use __builtin_ia32_psllwi.
(_mm_slli_pi32): Use __builtin_ia32_pslldi.
(_mm_slli_si64): Use __builtin_ia32_psllqi. Cast __m to __v1di type.
(_mm_srli_pi16): Use __builtin_ia32_psrlwi.
(_mm_srli_pi32): Use __builtin_ia32_psrldi.
(_mm_srli_si64): Use __builtin_ia32_psrlqi. Cast __m to __v1di type.
(_mm_srai_pi16): Use __builtin_ia32_psrawi.
(_mm_srai_pi32): Use __builtin_ia32_psradi.
* config/i386/i386.md (UNSPEC_NOP): Remove unspec definition.
* doc/extend.texi (X86 Built-in Functions) [__builtin_ia32_psll?,
__builtin_ia32_psrl?, __builtin_ia32_psra?, __builtin_ia32_psll?i,
__builtin_ia32_psrl?i, __builtin_ia32_psra?i]: Add new builtins.
From-SVN: r133023
GCC Administrator [Sat, 8 Mar 2008 00:20:28 +0000 (00:20 +0000)]
Daily bump.
From-SVN: r133021
Joseph Myers [Fri, 7 Mar 2008 22:55:06 +0000 (22:55 +0000)]
* doc/include/texinfo.tex: Update to version 2008-03-07.10.
From-SVN: r133015
Eric Botcazou [Fri, 7 Mar 2008 18:41:01 +0000 (18:41 +0000)]
decl.c (gnat_to_gnu_entity): Add comment for the packed array type case.
* decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Subtype>: Add
comment for the packed array type case.
* utils.c (build_template): Use a loop to strip padding or
containing records for justified modular types.
From-SVN: r133014
Eric Botcazou [Fri, 7 Mar 2008 17:47:56 +0000 (17:47 +0000)]
Add missing dg marker.
From-SVN: r133013
Eric Botcazou [Fri, 7 Mar 2008 17:45:09 +0000 (17:45 +0000)]
decl.c (gnat_to_gnu_entity): Issue a warning on suspiciously large alignments specified for types.
* decl.c (gnat_to_gnu_entity): Issue a warning on suspiciously
large alignments specified for types.
(validate_alignment): Minor cleanup.
From-SVN: r133012
Eric Botcazou [Fri, 7 Mar 2008 17:12:28 +0000 (17:12 +0000)]
decl.c (MAX_FIXED_MODE_SIZE): Define if not already defined.
* decl.c (MAX_FIXED_MODE_SIZE): Define if not already defined.
(gnat_to_gnu_entity) <E_Record_Type>: Try to get a smaller form of
the component for packing, if possible, as well as if a component
size clause is specified.
<E_Record_Subtype>: For an array type used to implement a packed
array, get the component type from the original array type.
Try to get a smaller form of the component for packing, if possible,
as well as if a component size clause is specified.
(round_up_to_align): New function.
(make_packable_type): Add in_record parameter.
For a padding record, preserve the size. If not in_record and the
size is too large for an integral mode, attempt to shrink the size
by lowering the alignment.
Ditch the padding bits of the last component.
Compute sizes and mode manually, and propagate the RM size.
Return a BLKmode record type if its size has shrunk.
(maybe_pad_type): Use MAX_FIXED_MODE_SIZE instead of BIGGEST_ALIGNMENT.
Use Original_Array_Type to retrieve the type in case of an error.
Adjust call to make_packable_type.
(gnat_to_gnu_field): Likewise.
(concat_id_with_name): Minor tweak.
* trans.c (larger_record_type_p): New predicate.
(call_to_gnu): Compute the nominal type of the object only if the
parameter is by-reference. Do the conversion actual type -> nominal
type if the nominal type is a larger record.
(gnat_to_gnu): Do not require integral modes on the source type to
avoid the conversion for types with identical names.
(addressable_p): Add gnu_type parameter. If it is specified, do not
return true if the expression is not addressable in gnu_type.
Adjust recursive calls.
* utils.c (finish_record_type): Remove dead code.
From-SVN: r133011
Peter Bergner [Fri, 7 Mar 2008 15:20:31 +0000 (09:20 -0600)]
re PR target/35373 (bootstraping on powerpc with 128bit long double fails with revision 132578)
PR target/35373
* config/rs6000/rs6000.c (rs6000_legitimize_address): Don't generate
reg+const addressing for Altivec modes. Don't generate reg+reg
addressing for TFmode or TDmode quantities.
From-SVN: r133008
Paolo Bonzini [Fri, 7 Mar 2008 11:47:20 +0000 (11:47 +0000)]
revert: re PR c++/35049 (g++.dg/conversion/simd3.C:12: error: invalid operands to binary + (have 'float __vector__' and 'int __vector__'))
cp:
2008-03-07 Paolo Bonzini <bonzini@gnu.org>
Revert:
2008-02-06 Douglas Gregor <doug.gregor@gmail.com>
PR c++/35049
PR c++/35096
* typeck.c (structural_comptypes): Call cp_comptypes.
(comptypes): New; called from the C/C++ common bits to perform
strict checks.
(cp_comptypes): Renamed from comptypes, which is already used,
with a different signature, by the C++ front end.
(build_reinterpret_cast_1): Call cp_comptypes.
(ptr_reasonably_similar): Ditto.
* decl.c (decls_match): Ditto.
* cvt.c (convert_to_reference): Ditto.
* cp-tree.h (same_type_p): Ditto.
(same_or_base_type_p): Ditto.
(comptypes): Rename to cp_comptypes.
* pt.c (canonical_type_parameter): Call cp_comptypes.
objcp:
2008-03-07 Paolo Bonzini <bonzini@gnu.org>
Revert:
2008-02-07 Andreas Tobler <andreast-list@fgznet.ch>
Douglas Gregor <doug.gregor@gmail.com>
PR bootstrap/35115
* objcp-decl.c (objcp_comptypes): Call cp_comptypes, not comptypes.
From-SVN: r133007
Jakub Jelinek [Fri, 7 Mar 2008 11:09:49 +0000 (12:09 +0100)]
gnu.ver: Move <system_error> related symbols to GLIBCXX_3.4.11 symbol version.
* config/abi/pre/gnu.ver: Move <system_error> related
symbols to GLIBCXX_3.4.11 symbol version.
* testsuite/util/testsuite_abi.cc (check_version): Allow
GLIBCXX_3.4.11.
From-SVN: r133006
Paolo Bonzini [Fri, 7 Mar 2008 08:48:57 +0000 (08:48 +0000)]
c-common.c (vector_types_convertible_p): Call langhook instead of comptypes.
2008-03-07 Paolo Bonzini <bonzini@gnu.org>
* c-common.c (vector_types_convertible_p): Call langhook
instead of comptypes.
cp:
2008-03-07 Paolo Bonzini <bonzini@gnu.org>
* cp-objcp-common.c (cxx_types_compatible_p): Remove obsolete
test for equivalence between pointer and references.
From-SVN: r133002
Peter O'Gorman [Fri, 7 Mar 2008 06:53:59 +0000 (06:53 +0000)]
re PR target/20366 (AIX g++ -D_LARGE_FILES fails to compile #include <iostream>)
fixincludes/
2008-03-07 Peter O'Gorman <pogma@thewrittenword.com>
PR c++/20366
* inclhack.def (AAB_aix_stdio): Hack stdio.h for -D_LARGE_FILES.
* fixincl.x: Regenerate.
* tests/base/stdio.h: Add test.
gcc/testsuite/
2008-03-07 Peter O'Gorman <pogma@thewrittenword.com>
PR c++/20366
* g++.dg/other/pr20366.C: New test.
From-SVN: r133001
GCC Administrator [Fri, 7 Mar 2008 00:20:26 +0000 (00:20 +0000)]
Daily bump.
From-SVN: r132998
Andrew Pinski [Thu, 6 Mar 2008 21:56:04 +0000 (21:56 +0000)]
re PR tree-optimization/35402 (Store CCP will not inline static const variable which is default initialized)
2008-03-06 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR tree-opt/35402
* tree-ssa-ccp.c (get_symbol_constant_value): Handle
integral and scalar float variables which have a
NULL DECL_INITIAL.
2008-03-06 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR tree-opt/35402
* gcc.dg/tree-ssa/ssa-store-ccp-1.c: New test.
From-SVN: r132991
Ralf Wildenhues [Thu, 6 Mar 2008 19:54:27 +0000 (19:54 +0000)]
HACKING: Fix grep patterns.
libjava/
* HACKING: Fix grep patterns.
From-SVN: r132988
Chris Jefferson [Thu, 6 Mar 2008 18:35:26 +0000 (18:35 +0000)]
re PR libstdc++/35480 (Relational operators for <tr1/tuple> don't error on different sized tuples)
2008-03-06 Chris Jefferson <chris@bubblescope.net>
Paolo Carlini <pcarlini@suse.de>
PR libstdc++/35480
* include/tr1/tuple (operator==, operator<): Fix.
* include/std/tuple (operator==, operator<): Likewise.
* testsuite/tr1/6_containers/tuple/comparison_operators/35480.cc: New.
* testsuite/20_util/tuple/comparison_operators/35480.cc: Likewise.
Co-Authored-By: Paolo Carlini <pcarlini@suse.de>
From-SVN: r132983
Markus Milleder [Thu, 6 Mar 2008 18:08:40 +0000 (19:08 +0100)]
re PR preprocessor/35458 (Dependency generation (-M) does not quote '#' in filenames)
libcpp
2008-03-06 Markus Milleder <markus.milleder@generali.at>
PR preprocessor/35458
* mkdeps.c (munge): Quote '#' with a '\'.
gcc/testsuite
2008-03-06 Markus Milleder <markus.milleder@generali.at>
PR preprocessor/35458
* gcc.dg/cpp/cmdlne-M-2.c: New file.
* gcc.dg/cpp/cmdlne-M-2#.h: New file.
* gcc.dg/cpp/#cmdlne-M-2.h: New file.
From-SVN: r132982
Nathan Froyd [Thu, 6 Mar 2008 17:57:06 +0000 (17:57 +0000)]
dwarf2out.c (dwarf2out_frame_debug_expr): Consult the dwarf_register_span hook when emitting unwind information for...
* dwarf2out.c (dwarf2out_frame_debug_expr): Consult the
dwarf_register_span hook when emitting unwind information for
register-to-memory saves.
* config/rs6000/rs6000.c (spe_synthesize_frame): Delete.
(rs6000_frame_related): Remove call to spe_synthesize_frame.
From-SVN: r132981
Jakub Jelinek [Thu, 6 Mar 2008 17:46:14 +0000 (18:46 +0100)]
Formatting nit.
From-SVN: r132979
Jakub Jelinek [Thu, 6 Mar 2008 17:28:54 +0000 (18:28 +0100)]
gimplify.c (goa_lhs_expr_p): Allow different ADDR_EXPR nodes for the same VAR_DECL.
* gimplify.c (goa_lhs_expr_p): Allow different ADDR_EXPR nodes
for the same VAR_DECL.
* testsuite/libgomp.c/atomic-3.c: New test.
From-SVN: r132977
Tom Tromey [Thu, 6 Mar 2008 17:14:05 +0000 (17:14 +0000)]
MAINTAINERS: Update for treelang deletion.
. * MAINTAINERS: Update for treelang deletion.
gcc
2008-03-05 Tom Tromey <tromey@redhat.com>
* treelang: Delete.
* doc/standards.texi (Standards): Don't mention treelang.
* doc/invoke.texi (Overall Options): Don't mention treelang.
* doc/install.texi (Prerequisites): Don't mention bison or
treelang.
(Configuration): Don't mention treelang.
(Building): Likewise.
* doc/frontends.texi (G++ and GCC): Don't mention treelang.
gcc/testsuite
* lib/treelang-dg.exp, lib/treelang.exp: Delete.
* treelang: Delete.
gcc/testsuite/treelang
Removed
gcc/treelang
Removed
From-SVN: r132976
Tom Tromey [Thu, 6 Mar 2008 14:47:23 +0000 (14:47 +0000)]
patch_tester.sh (usage): Watermark is not lexicographic.
* patch_tester.sh (usage): Watermark is not lexicographic.
Load $STATE/defaults if it exists.
(selfexec): Use $0.
(apply_patch): Handle deletions.
(bootntest): Handle default settings.
From-SVN: r132974
Paolo Bonzini [Thu, 6 Mar 2008 13:30:10 +0000 (13:30 +0000)]
simplify-rtx.c (simplify_subreg): Remove useless shifts from word-extractions out of a multi-word object.
2008-03-06 Paolo Bonzini <bonzini@gnu.org>
* simplify-rtx.c (simplify_subreg): Remove useless shifts from
word-extractions out of a multi-word object.
From-SVN: r132971
Francois-Xavier Coudert [Thu, 6 Mar 2008 12:40:28 +0000 (12:40 +0000)]
re PR fortran/33197 (Fortran 2008: math functions)
PR fortran/33197
* intrinsic.c (add_functions): Add simplification routines for
ERF, DERF, ERFC and DERFC.
* decl.c (gfc_match_suffix, gfc_match_subroutine): Change GNU
extensions into Fortran 2008 features.
* intrinsic.h (gfc_simplify_erf, gfc_simplify_erfc): New
prototypes.
* simplify.c (gfc_simplify_erf, gfc_simplify_erfc): New functions.
From-SVN: r132970
Richard Guenther [Thu, 6 Mar 2008 12:08:23 +0000 (12:08 +0000)]
tree.def (BIT_FIELD_REF): Constrain result type and its precision.
2008-03-06 Richard Guenther <rguenther@suse.de>
* tree.def (BIT_FIELD_REF): Constrain result type and its precision.
* tree-cfg.c (verify_expr): Verify BIT_FIELD_REF constraints on
result type and precision.
* expr.c (get_inner_reference): Set unsignedp based on the result
type of BIT_FIELD_REF.
* tree.h (BIT_FIELD_REF_UNSIGNED): Remove.
* tree-sra.c (instantiate_element): Do not set BIT_FIELD_REF_UNSIGNED.
(try_instantiate_multiple_fields): Likewise. Use the correct type
for BIT_FIELD_REF.
(sra_build_assignment): Likewise.
(sra_build_elt_assignment): Likewise.
(sra_explode_bitfield_assignment): Likewise.
* print-tree.c (print_node): Do not check BIT_FIELD_REF_UNSIGNED.
* tree-vect-transform.c (vect_create_epilog_for_reduction): Do not
set BIT_FIELD_REF_UNSIGNED.
(vectorizable_load): Likewise.
From-SVN: r132969
Andreas Krebbel [Thu, 6 Mar 2008 11:35:30 +0000 (11:35 +0000)]
cse.c (cse_extended_basic_block): Invalidate artificial defs at bb start.
2008-03-06 Andreas Krebbel <krebbel1@de.ibm.com>
* cse.c (cse_extended_basic_block): Invalidate artificial defs
at bb start.
From-SVN: r132968
Richard Guenther [Thu, 6 Mar 2008 09:16:16 +0000 (09:16 +0000)]
alias.c (struct alias_set_entry): Move has_zero_child field to pack with alias_set.
2008-03-06 Richard Guenther <rguenther@suse.de>
* alias.c (struct alias_set_entry): Move has_zero_child field
to pack with alias_set.
From-SVN: r132967
H.J. Lu [Thu, 6 Mar 2008 05:11:52 +0000 (05:11 +0000)]
i386-modes.def: Use 4 byte alignment on DI for 32bit host.
2008-03-05 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386-modes.def: Use 4 byte alignment on DI for
32bit host.
From-SVN: r132966
Ian Lance Taylor [Thu, 6 Mar 2008 01:18:51 +0000 (01:18 +0000)]
* alias.h (alias_set_type): Change from HOST_WIDE_INT to int.
From-SVN: r132964
Eric Botcazou [Thu, 6 Mar 2008 00:44:11 +0000 (00:44 +0000)]
re PR ada/35186 (implicit assumption about alignment of DImode)
PR ada/35186
* decl.c (maybe_pad_type): Avoid padding an integral type when
bumping its alignment is sufficient.
From-SVN: r132963
Kenneth Zadeck [Thu, 6 Mar 2008 00:21:34 +0000 (00:21 +0000)]
fwprop.c (update_df): Support width and offset parameters of df_ref_create.
2008-03-05 Kenneth Zadeck <zadeck@naturalbridge.com>
* fwprop.c (update_df): Support width and offset parameters of
df_ref_create.
* ra-conflict.c (mark_reg_store, clear_reg_in_live,
global_conflicts): Change DF_REF_EXTRACT to either
DF_REF_ZERO_EXTRACT or DF_REF_SIGN_EXTRACT. Change
DF_REF_STRICT_LOWER_PART to DF_REF_STRICT_LOW_PART.
* df-scan.c (df_ref_record, df_defs_record,
df_ref_create_structure, df_def_record_1, df_uses_record,
df_get_conditional_uses, df_get_call_refs, df_insn_refs_collect,
df_bb_refs_collect, df_entry_block_defs_collect,
df_exit_block_uses_collect): Support new width and offset fields.
(ref_extract_pool): New storage pool.
(df_free_ref): New function.
(df_reg_chain_unlink, df_free_collection_rec,
df_sort_and_compress_refs): Call df_free_ref.
(df_ref_equal_p, df_ref_compare): Compare offset and width fields
of df_ref_extract.
(df_ref_create_structure): Allocate df_ref_extract if offset and
width fields are used.
(df_def_record_1): Get offset and width from ZERO_EXTRACT.
(df_uses_record): Get offset and width from ZERO_EXTRACT
and SIGN_EXTRACT.
* global.c (build_insn_chain): Change DF_REF_EXTRACT to either
DF_REF_ZERO_EXTRACT or DF_REF_SIGN_EXTRACT. Change
DF_REF_STRICT_LOWER_PART to DF_REF_STRICT_LOW_PART.
* df.h (df_ref_flags): Change DF_REF_EXTRACT to either
DF_REF_ZERO_EXTRACT or DF_REF_SIGN_EXTRACT. Change
DF_REF_STRICT_LOWER_PART to DF_REF_STRICT_LOW_PART.
(df_ref_extract): New structure.
(DF_REF_WIDTH, DF_REF_OFFSET): New macros.
(df_ref_create): Add width and offset parameters.
From-SVN: r132962
GCC Administrator [Thu, 6 Mar 2008 00:19:03 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r132960
Richard Guenther [Wed, 5 Mar 2008 19:33:55 +0000 (19:33 +0000)]
tree-ssa-structalias.c (get_constraint_for_component_ref): Use ranges_overlap_p.
2008-03-05 Richard Guenther <rguenther@suse.de>
* tree-ssa-structalias.c (get_constraint_for_component_ref):
Use ranges_overlap_p.
(offset_overlaps_with_access): Rename
to ranges_overlap_p and move ...
* tree-flow-inline.h (ranges_overlap_p): ... here.
* tree.h (get_inner_reference, handled_component_p): Update
comments.
* tree.h (record_component_aliases, get_alias_set,
alias_sets_conflict_p, alias_sets_must_conflict_p,
objects_must_conflict_p): Move declarations ...
* alias.h (record_component_aliases, get_alias_set,
alias_sets_conflict_p, alias_sets_must_conflict_p,
objects_must_conflict_p): ... here.
Include coretypes.h.
* Makefile.in (ALIAS_H): Add coretypes.h dependency.
From-SVN: r132950
Aldy Hernandez [Wed, 5 Mar 2008 17:20:26 +0000 (17:20 +0000)]
cfg.c: Include tree-flow.h.
* cfg.c: Include tree-flow.h.
(remove_edge_raw): Call redirect_edge_var_map_clear.
(redirect_edge_succ_nodup): Call redirect_edge_var_map_dup.
* tree-flow-inline.h (redirect_edge_var_map_def): New.
(redirect_edge_var_map_result): New.
* tree-cfgcleanup.c (remove_forwarder_block_with_phi): Replace
PENDING_STMT use with redirect_edge_var_map_*.
* tree-ssa.c (edge_var_maps): New definition.
(redirect_edge_var_map_add): New.
(redirect_edge_var_map_clear): New.
(redirect_edge_var_map_dup): New.
(redirect_edge_var_map_vector): New.
(redirect_edge_var_map_destroy): New.
(ssa_redirect_edge): Replace PENDING_STMT use with
redirect_edge_var_map_*.
(flush_pending_stmts): Same.
(delete_tree_ssa): Destroy edge var map.
* tree-flow.h (struct _edge_var_map): New.
Define edge_var_map vector type.
Declare redirect_edge_var_map_* prototypes.
* Makefile.in (cfg.o): Depend on TREE_FLOW_H.
* tree-cfg.c (reinstall_phi_args): Replace
PENDING_STMT use with redirect_edge_var_map_*.
From-SVN: r132903
Jakub Jelinek [Wed, 5 Mar 2008 16:22:11 +0000 (17:22 +0100)]
* gennews (files): Reference GCC 4.3 web pages.
From-SVN: r132901
Richard Guenther [Wed, 5 Mar 2008 16:13:04 +0000 (16:13 +0000)]
re PR tree-optimization/35472 (tree DSE is broken)
2008-03-05 Richard Guenther <rguenther@suse.de>
PR tree-optimization/35472
* tree-ssa-dse.c (dse_optimize_stmt): Do not delete a store
whose single use_stmt has a overlapping set of loaded and
stored symbols as that use_stmt might be a noop assignment then.
* gcc.c-torture/execute/pr35472.c: New testcase.
From-SVN: r132899
Joel Sherrill [Wed, 5 Mar 2008 13:16:57 +0000 (13:16 +0000)]
gthr-rtems.h: Implement __gthread_mutex_destroy.
2008-03-05 Joel Sherrill <joel.sherrill@oarcorp.com>
* gthr-rtems.h: Implement __gthread_mutex_destroy.
From-SVN: r132897
Richard Guenther [Wed, 5 Mar 2008 10:32:07 +0000 (10:32 +0000)]
re PR c++/35336 (Broken diagnostic: 'bit_field_ref' not supported by dump_expr)
2008-03-05 Richard Guenther <rguenther@suse.de>
PR c++/35336
* tree.def (BIT_FIELD_REF): Document that operands 1 and 2
should be constants.
* tree-cfg.c (verify_expr): Verify it.
* fold-const.c (fold_truthop): Remove code generating
BIT_FIELD_REFs of structure bases.
(fold_binary): Likewise.
(fold_ternary): Position and size of BIT_FIELD_REFs are
always host integers.
(make_bit_field_ref): Remove.
(optimize_bit_field_compare): Remove.
(all_ones_mask_p): Remove.
From-SVN: r132894
Gabor Loki [Wed, 5 Mar 2008 10:15:45 +0000 (10:15 +0000)]
re PR rtl-optimization/33009 (-frtl-abstract-sequences causes an infinite loop)
2008-03-05 Gabor Loki <loki@gcc.gnu.org>
PR gcc/33009
* rtl-factoring.c (clear_regs_live_in_seq): Fix backward steps.
(split_block_and_df_analyze): New. Split basic block and rebuild
dataflow.
(block_label_after): Use SPLIT_BLOCK_AND_DF_ANALYZE instead of
SPLIT_BLOCK.
(split_pattern_seq): Likewise.
(erase_matching_seqs): Likewise.
(split_pattern_seq): Skip return insn in case of REG_NORETURN note.
PR testsuite/33009
* gcc.c-torture/compile/pr11832.c: Check -frtl-abstract-sequences.
* gcc.c-torture/compile/pr33009.c: Likewise.
From-SVN: r132893
Victor Kaplansky [Wed, 5 Mar 2008 08:08:11 +0000 (08:08 +0000)]
re PR testsuite/31341 (testsuite pr31041.c fails conflicting with <stdint.h>)
2008-03-05 Victor Kaplansky <victork@gcc.gnu.org>
PR 31341
* gcc.dg/vect/pr31041.c: Fix.
From-SVN: r132892
Hans-Peter Nilsson [Wed, 5 Mar 2008 01:55:27 +0000 (01:55 +0000)]
re PR libfortran/35293 (truncation errors with gfortran.dg/streamio_11.f90, 3, 4 and 15.)
PR libfortran/35293
* lib/lib/target-supports.exp (check_effective_target_fd_truncate):
New.
* gfortran.fortran-torture/execute/list_read_1.x,
... gfortran.dg/write_back.f: Gate test on effective_target
fd_truncate.
(missing PR ChangeLog decoration)
From-SVN: r132889
Hans-Peter Nilsson [Wed, 5 Mar 2008 01:50:33 +0000 (01:50 +0000)]
re PR libfortran/35293 (truncation errors with gfortran.dg/streamio_11.f90, 3, 4 and 15.)
PR libfortran/35293
* io/unix.c (fd_truncate): Fold s->special_file case into
success case of ftruncate/chsize call instead of the failure case.
Make failure case actually return failure. Properly update stream
pointers on failure. Call runtime_error for targets without
neither ftruncate nor chsize where such a call would be needed.
From-SVN: r132888
Geoffrey Keating [Wed, 5 Mar 2008 01:08:45 +0000 (01:08 +0000)]
fold-const.c (tree_single_nonnegative_warnv_p): Fix mixed declaration and code.
* fold-const.c (tree_single_nonnegative_warnv_p): Fix mixed
declaration and code.
(tree_invalid_nonnegative_warnv_p): Likewise.
From-SVN: r132886
Hans-Peter Nilsson [Wed, 5 Mar 2008 00:59:34 +0000 (00:59 +0000)]
re PR libfortran/19872 ([4.0 only] closed and re-opened file not overwriten)
* lib/lib/target-supports.exp (check_effective_target_fd_truncate):
New.
* gfortran.fortran-torture/execute/list_read_1.x,
gfortran.fortran-torture/execute/read_null_string.x,
gfortran.fortran-torture/execute/backspace.x,
gfortran.fortran-torture/execute/seq_io.x,
gfortran.fortran-torture/execute/slash_edit.x,
gfortran.fortran-torture/execute/unopened_unit_1.x,
gfortran.dg/namelist_21.f90, gfortran.dg/advance_5.f90,
gfortran.dg/fmt_t_7.f, gfortran.dg/eor_1.f90,
gfortran.dg/read_x_past.f, gfortran.dg/tl_editing.f90,
gfortran.dg/ftell_2.f90, gfortran.dg/namelist_13.f90,
gfortran.dg/namelist_22.f90, gfortran.dg/advance_6.f90,
gfortran.dg/read_bad_advance.f90, gfortran.dg/func_derived_3.f90,
gfortran.dg/namelist_40.f90, gfortran.dg/x_slash_2.f,
gfortran.dg/namelist_14.f90, gfortran.dg/backspace_1.f,
gfortran.dg/namelist_23.f90, gfortran.dg/pr17285.f90,
gfortran.dg/read_noadvance.f90, gfortran.dg/namelist_use_only.f90,
gfortran.dg/namelist_41.f90, gfortran.dg/namelist_15.f90,
gfortran.dg/backspace_3.f, gfortran.dg/backslash_3.f,
gfortran.dg/namelist_24.f90, gfortran.dg/pr17286.f90,
gfortran.dg/endfile.f90, gfortran.dg/open_access_append_1.f90,
gfortran.dg/fmt_huge.f90, gfortran.dg/namelist_42.f90,
gfortran.dg/pr18392.f90, gfortran.dg/pr19155.f, gfortran.dg/pr12884.f,
gfortran.dg/namelist_16.f90, gfortran.dg/backspace_5.f,
gfortran.dg/open_readonly_1.f90, gfortran.dg/fmt_read.f90,
gfortran.dg/iostat_1.f90, gfortran.dg/namelist_43.f90,
gfortran.dg/read_size_noadvance.f90, gfortran.dg/inquire_5.f90,
gfortran.dg/read_many_1.f, gfortran.dg/namelist_17.f90,
gfortran.dg/list_read_1.f90, gfortran.dg/backspace_10.f90,
gfortran.dg/namelist_26.f90, gfortran.dg/unf_read_corrupted_2.f90,
gfortran.dg/record_marker_1.f90, gfortran.dg/convert_implied_open.f90,
gfortran.dg/iostat_2.f90, gfortran.dg/write_check3.f90,
gfortran.dg/namelist_44.f90, gfortran.dg/namelist_use.f90,
gfortran.dg/rewind_1.f90, gfortran.dg/streamio_11.f90,
gfortran.dg/namelist_18.f90, gfortran.dg/backspace_9.f,
gfortran.dg/dos_eol.f, gfortran.dg/read_eof_1.f90,
gfortran.dg/namelist_27.f90, gfortran.dg/pad_no.f90,
gfortran.dg/endfile.f, gfortran.dg/namelist_11.f,
gfortran.dg/namelist_19.f90, gfortran.dg/eor_handling_1.f90,
gfortran.dg/write_rewind_1.f, gfortran.dg/comma.f,
gfortran.dg/read_eof_2.f90, gfortran.dg/namelist_28.f90,
gfortran.dg/record_marker_3.f90, gfortran.dg/complex_read.f90,
gfortran.dg/namelist_37.f90, gfortran.dg/error_recovery_5.f90,
gfortran.dg/namelist_char_only.f90, gfortran.dg/pr18122.f90,
gfortran.dg/list_read_4.f90, gfortran.dg/eor_handling_2.f90,
gfortran.dg/read_eof_3.f90, gfortran.dg/dollar_edit_descriptor_1.f,
gfortran.dg/pr19467.f90, gfortran.dg/namelist_38.f90,
gfortran.dg/inquire_9.f90, gfortran.dg/list_read_5.f90,
gfortran.dg/noadv_size.f90, gfortran.dg/backslash_1.f90,
gfortran.dg/eor_handling_3.f90, gfortran.dg/read_eof_4.f90,
gfortran.dg/runtime_warning_1.f90, gfortran.dg/x_slash_1.f,
gfortran.dg/namelist_39.f90, gfortran.dg/streamio_3.f90,
gfortran.dg/read_comma.f, gfortran.dg/pr19657.f,
gfortran.dg/streamio_15.f90, gfortran.dg/list_read_6.f90,
gfortran.dg/eor_handling_4.f90, gfortran.dg/backslash_2.f90,
gfortran.dg/pr19216.f, gfortran.dg/PR19872.f,
gfortran.dg/backspace_2.f, gfortran.dg/empty_format_1.f90,
gfortran.dg/streamio_4.f90, gfortran.dg/append_1.f90,
gfortran.dg/fgetc_1.f90, gfortran.dg/complex_write.f90,
gfortran.dg/list_read_7.f90, gfortran.dg/eor_handling_5.f90,
gfortran.dg/fmt_t_1.f90, gfortran.dg/pr17090.f90,
gfortran.dg/backspace_4.f, gfortran.dg/shape_3.f90,
gfortran.dg/unf_io_convert_1.f90, gfortran.dg/fgetc_2.f90,
gfortran.dg/vector_subscript_3.f90, gfortran.dg/list_read_8.f90,
gfortran.dg/flush_1.f90, gfortran.dg/advance_1.f90,
gfortran.dg/fmt_t_2.f90, gfortran.dg/backspace_6.f,
gfortran.dg/slash_1.f90, gfortran.dg/stat_1.f90,
gfortran.dg/unformatted_recl_1.f90, gfortran.dg/record_marker_2.f,
gfortran.dg/overwrite_1.f, gfortran.dg/unf_io_convert_2.f90,
gfortran.dg/fmt_t_3.f90, gfortran.dg/backspace_8.f,
gfortran.dg/stat_2.f90, gfortran.dg/pr18210.f90,
gfortran.dg/unformatted_subrecord_1.f90, gfortran.dg/pr20257.f90,
gfortran.dg/eof_1.f90, gfortran.dg/fmt_t_4.f90,
gfortran.dg/unf_short_record_1.f90, gfortran.dg/fmt_exhaust.f90,
gfortran.dg/namelist_20.f90, gfortran.dg/advance_4.f90,
gfortran.dg/fmt_t_5.f90, gfortran.dg/namelist_12.f,
gfortran.dg/backspace_7.f90, gfortran.dg/write_rewind_2.f,
gfortran.dg/ftell_1.f90, gfortran.dg/fseek.f90,
gfortran.dg/write_back.f: Gate test on effective_target
fd_truncate.
From-SVN: r132885
Serge Belyshev [Wed, 5 Mar 2008 00:25:41 +0000 (00:25 +0000)]
install.texi (Testing): Correct quoting for the RUNTESTFLAGS examples.
* doc/install.texi (Testing): Correct quoting for the RUNTESTFLAGS
examples. Truncate option-names then causing overfull hbox.
From-SVN: r132883
GCC Administrator [Wed, 5 Mar 2008 00:17:17 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r132881
John David Anglin [Tue, 4 Mar 2008 23:30:47 +0000 (23:30 +0000)]
re PR target/35222 (EH output contains procedure label without P' selector)
PR target/35222
* configure.ac (CONFIG_SJLJ_EXCEPTIONS): Force SJLJ exceptions
on hpux10.
* configure: Rebuilt.
From-SVN: r132876
Rafael Avila de Espindola [Tue, 4 Mar 2008 22:20:34 +0000 (22:20 +0000)]
fold-const.c (tree_simple_nonnegative_warnv_p): New.
2008-03-04 Rafael Espindola <espindola@google.com>
* fold-const.c (tree_simple_nonnegative_warnv_p): New.
(tree_unary_nonnegative_warnv_p): New.
(tree_binary_nonnegative_warnv_p): New.
(tree_single_nonnegative_warnv_p): New.
(tree_invalid_nonnegative_warnv_p): New.
(tree_expr_nonnegative_warnv_p): Redefine in term of the new functions.
From-SVN: r132875