2009-01-14 Richard Guenther <rguenther@suse.de>
PR tree-optimization/38826
PR middle-end/38477
* tree-ssa-structalias.c (emit_alias_warning): Emit the pointer
initialization notes only if we actually emitted a warning.
(intra_create_variable_infos): Add constraints for a result decl
that is passed by hidden reference.
(build_pred_graph): Mark all related variables non-direct on
address-taking.
* gcc.dg/Wstrict-aliasing-bogus-pta-1.c: New testcase.
From-SVN: r143374
* ira-conflicts.c: Include addresses.h for the definition of
base_reg_class.
(ira_build_conflicts): Use base_reg_class instead of
BASE_REG_CLASS.
* Makefile.in: Add a dependency of ira-conflicts.o on
addresses.h.
From-SVN: r143365
PR rtl-optimization/38774
* combine.c (simplify_set): When undoing cc_use change, don't do
PUT_CODE on the newly created comparison, but instead put back the
old comparison.
* gcc.dg/torture/pr38774.c: New test.
From-SVN: r143355
PR c++/38795
* tree.c (cp_walk_subtrees): Handle REINTERPRET_CAST_EXPR,
STATIC_CAST_EXPR, CONST_CAST_EXPR and DYNAMIC_CAST_EXPR the same
as CAST_EXPR.
* g++.dg/cpp0x/pr38795.C: New test.
From-SVN: r143351
* gcc.target/powerpc/altivec-consts.c: Run if vmx_hw, compile
otherwise. Do not check for AltiVec at runtime.
* gcc.target/powerpc/altivec-varargs-1.c: Likewise.
* gcc.target/powerpc/altivec-vec-merge.c: Likewise.
* gcc.target/powerpc/altivec-1.c: Likewise.
* gcc.target/powerpc/altivec-3.c: Likewise.
* gcc.target/powerpc/altivec-10.c: Likewise.
* gcc.target/powerpc/altivec-12.c: Likewise.
* gcc.target/powerpc/altivec-24.c: Likewise.
* gcc.target/powerpc/altivec-cell-2.c: Likewise.
* gcc.target/powerpc/altivec-cell-3.c: Likewise.
* gcc.target/powerpc/altivec-cell-4.c: Likewise.
* gcc.target/powerpc/pr35907.c: Likewise.
* gcc.target/powerpc/altivec-cell-8.c: Run if cell_hw, compile
otherwise. Do not check for Cell at runtime.
* gcc.target/powerpc/altivec_check.h: Delete.
* g++.dg/ext/altivec-2.C: Do not check for AltiVec at runtime.
* g++.dg/ext/altivec-3.C: Run if vmx_hw, compile otherwise. Do
not check for AltiVec at runtime.
* g++.dg/ext/altivec-cell-2.C: Likewise.
* g++.dg/ext/altivec-cell-3.C: Likewise.
* g++.dg/ext/altivec-cell-4.C: Likewise.
* g++.dg/eh/simd-2.C: Only use -maltivec if vmx_hw.
* g++.dg/eh/check-vect.h (sig_ill_handler): Remove AltiVec runtime
check.
* g++.dg/ext/altivec_check.h: Delete.
Co-Authored-By: Joseph Myers <joseph@codesourcery.com>
Co-Authored-By: Nathan Froyd <froydnj@codesourcery.com>
From-SVN: r143350
2009-01-13 Sebastian Pop <sebastian.pop@amd.com>
PR tree-optimization/38786
* gcc.dg/graphite/pr38786.c: New.
* graphite.c (expand_scalar_variables_ssa_name): New, outlined from
the SSA_NAME case of expand_scalar_variables_expr.
Set the type of an expression to the type of its assign statement.
(expand_scalar_variables_expr): Also gather the scalar computation
used to index the memory access. Do not pass loop_p.
Fix comment. Stop recursion on tcc_constant or tcc_declaration.
(expand_scalar_variables_stmt): Pass to expand_scalar_variables_expr
the gimple_stmt_iterator where it inserts new code. Do not pass loop_p.
(copy_bb_and_scalar_dependences): Do not pass loop_p.
(translate_clast): Update call to copy_bb_and_scalar_dependences.
From-SVN: r143341
* config/alpha/alpha.c (alpha_legitimate_address_p): Explicit
relocations of local symbols wider than UNITS_PER_WORD are not valid.
(alpha_legitimize_address): Do not split local symbols wider than
UNITS_PER_WORD into HIGH/LO_SUM parts.
testsuite/ChangeLog:
Revert:
2009-01-05 Uros Bizjak <ubizjak@gmail.com>
* gcc.dg/compat/struct-layout-1_generate.c (dg-options): Add -mieee
for alpha*-*-* targets.
* g++.dg/compat/struct-layout-1_generate.c (dg-options): Ditto.
From-SVN: r143332
2009-01-12 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/38772
* io/read.c (read_f): Clean up loop conditions for BZ/BN,
allowing proper digit testing. White space fix.
From-SVN: r143327
* lib/target-supports.exp (check_effective_target_powerpc64): New.
* gcc.target/powerpc/darwin-longlong.c: Explicitly require 64-bit
instruction support. Do not check for it at runtime.
From-SVN: r143324
gcc/cp/ChangeLog:
2009-01-12 Dodji Seketeli <dodji@redhat.com>
PR c++/36019
* pt.c (parameter_of_template_p): New function.
* cp-tree.h: Declare it.
* name-lookup.c (binding_to_template_parms_of_scope_p): New
function.
(outer_binding): Take template parameters in account when looking for
a name binding.
gcc/testsuite/ChangeLog:
2009-01-12 Dodji Seketeli <dodji@redhat.com>
PR c++/36019
* g++.dg/lookup/hidden-class12.C: New test.
* g++.dg/lookup/hidden-class13.C: New test.
* g++.dg/lookup/hidden-class14.C: New test.
* g++.dg/lookup/hidden-class15.C: New test.
* g++.dg/lookup/hidden-class16.C: New test.
From-SVN: r143315
2009-01-12 Sebastian Pop <sebastian.pop@amd.com>
PR tree-optimization/38515
* configure.ac (cloog-polylib): Removed.
(with_ppl, with_cloog): Test for "no".
* configure: Regenerated.
From-SVN: r143311
PR c/32041
* c-parser.c (c_parser_postfix_expression): Allow `->' in
offsetof member-designator, handle it as `[0].'.
* parser.c (cp_parser_builtin_offsetof): Allow `->' in
offsetof member-designator, handle it as `[0].'.
* gcc.dg/pr32041.c: New test.
* g++.dg/parse/offsetof9.C: New test.
From-SVN: r143305