Adam Nemet [Sat, 25 Mar 2006 21:58:01 +0000 (21:58 +0000)]
simplify-rtx.c (simplify_relational_operation): Call simplify_relational_operation_1 even if mode is VOIDmode.
* simplify-rtx.c (simplify_relational_operation): Call
simplify_relational_operation_1 even if mode is VOIDmode.
From-SVN: r112383
Thomas Koenig [Sat, 25 Mar 2006 21:31:48 +0000 (21:31 +0000)]
re PR libfortran/26735 ([4.1 only] -fconvert=swap and implied open)
2006-03-25 Thomas Koenig <Thomas.Koenig@online.de>
PR libfortran/26735
* io/transfer.c (data_transfer_init): Set u_flags.convert
on an unopened unit if specified by environment variable
(via get_unformatted_convert) or by compile-time option.
2006-03-25 Thomas Koenig <Thomas.Koenig@online.de>
PR libfortran/26735
* gfortran.dg/convert_implied_open.f90: New test case.
From-SVN: r112382
Thomas Koenig [Sat, 25 Mar 2006 21:15:48 +0000 (21:15 +0000)]
re PR fortran/26769 (Implement transpose() and reshape() for real instead of using integer)
2006-03-25 Thomas Koenig <Thomas.Koenig@online.de>
PR fortran/26769
* iresolve.c (gfc_resolve_reshape): Remove doubling of
kind for complex. For real(kind=10), call reshape_r10.
(gfc_resolve_transpose): For real(kind=10), call
transpose_r10.
2006-03-25 Thomas Koenig <Thomas.Koenig@online.de>
PR fortran/26769
* Makefile.am: Add transpose_r10.c and reshape_r10.c.
* aclocal.m4: Regenerate using aclocal 1.9.3.
* Makefile.in: Regenerate using automake 1.9.3.
* m4/iparm.m4 (rtype_ccode): If rtype_letter is `i',
evaluate to rtype_kind, otherwise to rtype_code.
* generated/transpose_r10.c: Add.
* generated/reshape_r10.c: Add.
2006-03-25 Thomas Koenig <Thomas.Koenig@online.de>
PR fortran/26769
* gfortran.dg/transpose_reshape_r10.f90: New test case.
From-SVN: r112381
Daniel Berlin [Sat, 25 Mar 2006 19:17:26 +0000 (19:17 +0000)]
re PR tree-optimization/26804 (Alias Time explosion)
2006-03-25 Daniel Berlin <dberlin@dberlin.org>
PR tree-optimization/26804
* tree.h (DECL_CALL_CLOBBERED): New macro.
(tree_decl_common): Add call_clobbered_flag.
* tree-flow-inline.h (is_call_clobbered): Use DECL_CALL_CLOBBERED.
(mark_call_clobbered): Set DECL_CALL_CLOBBERED.
(clear_call_clobbered): Clear DECL_CALL_CLOBBERED.
(mark_non_addressable): Ditto.
* tree-ssa.c (verify_call_clobbered): New function.
(verify_alias_info): Use it.
* tree-pass.h (pass_reset_cc_flags): New prototype.
* tree-ssa-alias.c (pass_reset_cc_flags): New structure.
(reset_cc_flags): New function.
* passes.c (init_optimization_passes): Call reset_cc_flags after
initializing referenced_vars.
From-SVN: r112380
Uros Bizjak [Sat, 25 Mar 2006 17:32:34 +0000 (18:32 +0100)]
re PR middle-end/26717 (complex/complex gives a REAL_CST)
PR middle-end/26717
* fold-const.c (fold_binary) [RDIV_EXPR]: Do not optimize A / A
to 1.0 for non-real operands. Implement A / A optimization for
complex operands.
Co-Authored-By: Roger Sayle <roger@eyesopen.com>
From-SVN: r112379
H.J. Lu [Sat, 25 Mar 2006 15:34:00 +0000 (15:34 +0000)]
i386.c (size_cost): Correct the comment for cost of storing fp registers.
2006-03-25 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.c (size_cost): Correct the comment for
cost of storing fp registers.
(i386_cost): Likewise.
(i486_cost): Likewise.
(pentium_cost): Likewise.
(pentiumpro_cost): Likewise.
(k6_cost): Likewise.
(athlon_cost): Likewise.
(k8_cost): Likewise.
(pentium4_cost): Likewise.
(nocona_cost): Likewise.
(generic64_cost): Likewise.
(generic32_cost): Likewise.
From-SVN: r112378
Roger Sayle [Sat, 25 Mar 2006 15:01:42 +0000 (15:01 +0000)]
dependency.c (gfc_check_dependency): Improve handling of pointers...
* dependency.c (gfc_check_dependency): Improve handling of pointers;
Two variables of different types can't have a dependency, and two
variables with the same symbol are equal, even if pointers.
* gfortran.dg/dependency_12.f90: New test case.
From-SVN: r112377
David Daney [Sat, 25 Mar 2006 01:53:48 +0000 (01:53 +0000)]
re PR libgcj/26858 (NullPointerException not generated for large classes...)
* testsuite/libjava.lang/PR26858.java: New test.
* testsuite/libjava.lang/PR26858.out: Ditto.
* testsuite/libjava.lang/PR26858.xfail: Ditto.
From-SVN: r112374
Roger Sayle [Sat, 25 Mar 2006 01:28:11 +0000 (01:28 +0000)]
gfortran.h (gfc_symbol): Add a new "forall_index" bit field.
* gfortran.h (gfc_symbol): Add a new "forall_index" bit field.
* match.c (match_forall_iterator): Set forall_index field on
the iteration variable's symbol.
* dependency.c (contains_forall_index_p): New function to
traverse a gfc_expr to check whether it contains a variable
with forall_index set in it's symbol.
(gfc_check_element_vs_element): Return GFC_DEP_EQUAL for scalar
constant expressions that don't variables used as FORALL indices.
* gfortran.dg/dependency_9.f90: New (resurected) test case.
From-SVN: r112373
Geoffrey Keating [Sat, 25 Mar 2006 00:54:40 +0000 (00:54 +0000)]
dwarf2out.c (is_c_family): Understand new DWARF3 language types.
2006-03-24 Geoffrey Keating <geoffk@apple.com>
* dwarf2out.c (is_c_family): Understand new DWARF3 language types.
(is_cxx): Likewise.
(gen_compile_unit_die): Use new language types for Objective-C and
Objective-C++.
(dwarf2out_decl): Use is_cxx rather than testing explicitly against
DW_LANG_C_plus_plus.
Index: testsuite/ChangeLog
2006-03-24 Geoffrey Keating <geoffk@apple.com>
* objc.dg/dwarf-2.m: New.
* obj-c++.dg/dwarf-2.mm: New.
From-SVN: r112372
GCC Administrator [Sat, 25 Mar 2006 00:17:28 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r112370
Jeff Law [Fri, 24 Mar 2006 23:21:27 +0000 (16:21 -0700)]
tree-ssa-dom.c (propagate_rhs_into_lhs): Don't call update_stmt directly.
* tree-ssa-dom.c (propagate_rhs_into_lhs): Don't call update_stmt
directly. Call mark_new_vars_to_rename slightly earlier.
* gcc.c-torture/pr26840.c: New test.
From-SVN: r112365
Jim Blandy [Fri, 24 Mar 2006 22:39:45 +0000 (22:39 +0000)]
pex-common.c (pex_run): Simplify output name handling.
2006-03-24 Jim Blandy <jimb@codesourcery.com>
* pex-common.c (pex_run): Simplify output name handling.
From-SVN: r112363
Geoffrey Keating [Fri, 24 Mar 2006 22:03:19 +0000 (22:03 +0000)]
Back out previous accidental change.
From-SVN: r112362
Geoffrey Keating [Fri, 24 Mar 2006 21:59:48 +0000 (21:59 +0000)]
[multiple changes]
2006-03-23 Geoffrey Keating <geoffk@apple.com>
PR 26793
* config/t-darwin (crt3.o): Work around bug 26840.
* config/darwin-crt3.c: Rewrite.
* config/darwin.h (STARTFILE_SPEC): Don't use -l for crt3.o.
Index: gcc/testsuite/ChangeLog
2006-03-24 Geoffrey Keating <geoffk@apple.com>
* g++.old-deja/g++.other/init19.C: New.
From-SVN: r112361
Carlos O'Donell [Fri, 24 Mar 2006 21:17:41 +0000 (21:17 +0000)]
invoke.texi: Document -femit-class-debug-always
gcc/
2006-03-24 Carlos O'Donell <carlos@codesourcery.com>
* doc/invoke.texi: Document -femit-class-debug-always
* common.opt: Add -femit-class-debug-always.
gcc/cp/
2006-03-24 Carlos O'Donell <carlos@codesourcery.com>
* search.c (maybe_suppress_debug_info): If
flag_emit_class_debug_always then don't suppress.
From-SVN: r112360
David Edelsohn [Fri, 24 Mar 2006 20:49:29 +0000 (20:49 +0000)]
spbp.C: Skip on AIX.
* g++.dg/eh/spbp.C: Skip on AIX.
From-SVN: r112359
Andreas Krebbel [Fri, 24 Mar 2006 19:09:11 +0000 (19:09 +0000)]
s390.c (s390_decompose_address): Allow SImode for index and base register.
2006-03-24 Andreas Krebbel <krebbel1@de.ibm.com>
* config/s390/s390.c (s390_decompose_address): Allow SImode for
index and base register.
(s390_expand_plug_operand, legitimate_address_p, preferred_la_operand_p,
print_operand_address, print_operand): Replaced REG_OK_FOR_BASE_STRICT_P
with REGNO_OK_FOR_BASE_P and REG_OK_FOR_INDEX_STRICT_P with
REGNO_OK_FOR_INDEX_P.
* config/s390/s390.h (REGNO_OK_FOR_INDEX_P): Replaced check with
ADDR_REGNO_P.
(REG_OK_FOR_INDEX_NONSTRICT_P, REG_OK_FOR_BASE_NONSTRICT_P,
REG_OK_FOR_INDEX_STRICT_P, REG_OK_FOR_BASE_STRICT_P, REG_OK_FOR_INDEX_P,
REG_OK_FOR_BASE_P): Definitions removed.
From-SVN: r112357
Andreas Tobler [Fri, 24 Mar 2006 17:59:29 +0000 (18:59 +0100)]
configure.ac (THREADS): Add REENTRANT for *-*-hpux11*.
2006-03-24 Andreas Tobler <a.tobler@schweiz.ch>
John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
* configure.ac (THREADS): Add REENTRANT for *-*-hpux11*.
Warn about POSIX threads not being supported for *-*-hpux10*.
* configure: Regenerate.
Co-Authored-By: John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
From-SVN: r112355
Denis Chertykov [Fri, 24 Mar 2006 16:30:19 +0000 (19:30 +0300)]
avr-protos.h (extra_constraint): Delete.
* config/avr/avr-protos.h (extra_constraint): Delete.
(extra_constraint_Q): New declaration.
* config/avr/constraints.md: New file.
* config/avr/avr.md: Include it.
(REG_X, REG_Y, REG_Z, REG_W): New constants.
(TMP_REGNO, ZERO_REGNO): Likewise.
(UNSPEC_STRLEN, UNSPEC_INDEX_JMP): Likewise.
* config/avr/avr.c (avr_reg_class_from_letter): Delete.
(extra_constraint): Delete.
(extra_constraint_Q): Test for memory constraint 'Q'.
* config/avr/avr.h (REG_X,REG_Y,REG_Z,REG_W): Delete.
(REG_CLASS_FROM_LETTER): Delete.
(CONST_OK_FOR_LETTER_P): Delete.
(CONST_DOUBLE_OK_FOR_LETTER_P): Delete.
(EXTRA_CONSTRAINT): Delete.
(TMP_REGNO): Delete.
(ZERO_REGNO): Delete.
From-SVN: r112352
Jakub Jelinek [Fri, 24 Mar 2006 16:14:40 +0000 (17:14 +0100)]
re PR middle-end/26611 (openmp gomp ICE at gimplify.c:4257)
PR middle-end/26611
* gimplify.c (gimplify_bind_expr): Only call omp_add_variable on
non-global variables that don't have DECL_SEEN_IN_BIND_EXPR_P bit
set yet or weren't marked as local yet.
* g++.dg/gomp/pr26611-1.C: New test.
* g++.dg/gomp/pr26611-2.C: New test.
From-SVN: r112351
Bernd Schmidt [Fri, 24 Mar 2006 15:53:23 +0000 (15:53 +0000)]
regrename.c (scan_rtx_address): Initialize a variable to shut up the compiler.
* regrename.c (scan_rtx_address): Initialize a variable to shut up
the compiler.
From-SVN: r112350
Eric Botcazou [Fri, 24 Mar 2006 10:09:01 +0000 (10:09 +0000)]
rs6000-protos.h (rs6000_offsettable_memref_p): Declare.
* config/rs6000/rs6000-protos.h (rs6000_offsettable_memref_p): Declare.
(rs6000_legitimate_small_data_p): Delete.
* config/rs6000/rs6000.c (rs6000_offsettable_memref_p): New predicate.
(rs6000_legitimate_small_data_p): Rename to legitimate_small_data_p
and make static. Add forward declaration. Update uses.
(rs6000_split_multireg_move): Use rs6000_offsettable_memref_p instead
of offsettable_memref_p.
* config/rs6000/rs6000.md (movdf_hardfloat32): Revert 2005-08-23 fix.
Use rs6000_offsettable_memref_p instead of a less accurate predicate.
From-SVN: r112349
Jeff Law [Fri, 24 Mar 2006 07:51:32 +0000 (00:51 -0700)]
tree-ssa-dom.c (propagate_rhs_into_lhs): Temporarily work around bug in immediate-use iterator.
* tree-ssa-dom.c (propagate_rhs_into_lhs): Temporarily work
around bug in immediate-use iterator.
* gcc.c-torture/compile/pr26833.c: New test.
* gfortran.fortran-torture/compile/pr26806.f90: New test.
From-SVN: r112348
Mark Mitchell [Fri, 24 Mar 2006 01:59:35 +0000 (01:59 +0000)]
re PR libstdc++/20448 (locale testsuite fails when GCC is configured with --disable-nls)
PR libstdc++/20448
PR libstdc++/20451
* scripts/testsuite_flags.in (--cxxflags): Don't define LOCALEDIR.
* testsuite/lib/libstdc++.exp (libstdc++_init): Always define
LOCALEDIR to ".".
(v3-build_support): Build MO files.
Co-Authored-By: Joseph Myers <joseph@codesourcery.com>
From-SVN: r112346
GCC Administrator [Fri, 24 Mar 2006 00:17:25 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r112344
Alan Modra [Thu, 23 Mar 2006 23:15:46 +0000 (23:15 +0000)]
ffitarget.h (enum ffi_abi): Add FFI_LINUX.
* src/powerpc/ffitarget.h (enum ffi_abi): Add FFI_LINUX. Default
for 32-bit using IBM extended double format. Fix FFI_LAST_ABI.
* src/powerpc/ffi.c (ffi_prep_args_SYSV): Handle linux variant of
FFI_TYPE_LONGDOUBLE.
(ffi_prep_args64): Assert using IBM extended double.
(ffi_prep_cif_machdep): Don't munge FFI_TYPE_LONGDOUBLE type.
Handle FFI_LINUX FFI_TYPE_LONGDOUBLE return and args.
(ffi_call): Handle FFI_LINUX.
(ffi_closure_helper_SYSV): Non FFI_LINUX long double return needs
gpr3 return pointer as for struct return. Handle FFI_LINUX
FFI_TYPE_LONGDOUBLE return and args. Don't increment "nf"
unnecessarily.
* src/powerpc/ppc_closure.S (ffi_closure_SYSV): Load both f1 and f2
for FFI_TYPE_LONGDOUBLE. Move epilogue insns into case table.
Don't use r6 as pointer to results, instead use sp offset. Don't
make a special call to load lr with case table address, instead
use offset from previous call.
* src/powerpc/sysv.S (ffi_call_SYSV): Save long double return.
* src/powerpc/linux64.S (ffi_call_LINUX64): Simplify long double
return.
From-SVN: r112340
Alan Modra [Thu, 23 Mar 2006 22:23:24 +0000 (22:23 +0000)]
re PR target/26607 (Illegal inlined assembler on config/rs6000/darwin-ldouble.c)
PR target/26607
* config/rs6000/darwin-ldouble.c: Don't compile when __NO_FPRS__
or __LITTLE_ENDIAN__.
From-SVN: r112334
Joern Rennecke [Thu, 23 Mar 2006 22:10:41 +0000 (22:10 +0000)]
Update FSF address.
From-SVN: r112332
J"orn Rennecke [Thu, 23 Mar 2006 21:39:32 +0000 (21:39 +0000)]
divtab-sh4.c, [...]: New files.
2006-03-23 J"orn Rennecke <joern.rennecke@st.com>
* config/sh/divtab-sh4.c, config/sh/divcost-analysis: New files.
* config/sh/lib1funcs.asm (div_table): Add !__SH5__ variant.
* config/sh/t-sh (LIB1ASMFUNCS): Add _div_table.
* config/sh/sh.opt (mdiv=): Amend description.
* config/sh/sh.h (TARGET_DIVIDE_CALL_DIV1): New macro.
(TARGET_DIVIDE_CALL_FP, TARGET_DIVIDE_CALL_TABLE): Likewise.
(sh_divide_strategy_e): Add new members SH_DIV_CALL_DIV1,
SH_DIV_CALL_FP, SH_DIV_CALL_TABLE and SH_DIV_INTRINSIC.
(OVERRIDE_OPTIONS): Also process sh_div_str for TARGET_SH1.
Calculate sh_divsi3_libfunc using TARGET_DIVIDE_* macros.
* config/sh/sh.md (udivsi3_i4_int, divsi3_i4_int): New patterns.
(udivsi3, divsi3): Use them. Check TARGET_DIVIDE_CALL_TABLE /
TARGET_DIVIDE_CALL_FP.
From-SVN: r112331
Maxim Kuvyrkov [Thu, 23 Mar 2006 18:23:53 +0000 (18:23 +0000)]
haifa-sched.c (choose_ready): Fix type of the local variable.
2006-03-23 Maxim Kuvyrkov <mkuvyrkov@ispras.ru>
* haifa-sched.c (choose_ready): Fix type of the local variable.
Move local variables. Add comment.
(check_reg_live): Change signature. Make callable from debugger.
* sched-int.h (check_reg_live): Update signature.
* sched-ebb.c (check_reg_live): Update parameters.
* sched-rgn.c (check_reg_live): Ditto.
(region_head_or_leaf_p): Check pointer before dereferencing.
* config/ia64/ia64.c (ia64_set_sched_flags): Disable data speculation
before reload on optimization levels below 1.
From-SVN: r112328
Richard Henderson [Thu, 23 Mar 2006 15:51:10 +0000 (07:51 -0800)]
alpha.c (alpha_legitimate_constant_p): Reject tls symbols.
* config/alpha/alpha.c (alpha_legitimate_constant_p): Reject
tls symbols.
From-SVN: r112323
Richard Henderson [Thu, 23 Mar 2006 15:49:00 +0000 (07:49 -0800)]
re PR target/26347 (hidden weak extern functions fail regardless of existence on alpha/linux)
PR target/26347
* config/alpha/predicates.md (local_symbolic_operand): Reject
weak symbols.
From-SVN: r112322
Andrew Pinski [Thu, 23 Mar 2006 15:09:51 +0000 (15:09 +0000)]
re PR tree-optimization/26795 (ACATS ICE
c37213d on x86 in valid_in_set, at tree-ssa-pre.c:1579)
2006-03-23 Andrew Pinski <pinskia@physics.uc.edu>
PR tree-opt/26795
* tree-ssa-pre.c (create_value_expr_from): Don't reject
expressions which have overflowed constants.
From-SVN: r112319
Zdenek Dvorak [Thu, 23 Mar 2006 10:45:09 +0000 (11:45 +0100)]
cse.c (cse_end_of_basic_block): Do not check for LOOP_END note.
* cse.c (cse_end_of_basic_block): Do not check for LOOP_END note.
From-SVN: r112317
Zdenek Dvorak [Thu, 23 Mar 2006 10:33:38 +0000 (11:33 +0100)]
cfgloopmanip.c (create_loop_notes): Removed.
* cfgloopmanip.c (create_loop_notes): Removed.
* final.c (final_scan_insn): Do not handle loop notes.
* jump.c (squeeze_notes): Ditto.
* cfglayout.c (skip_insns_after_block,
duplicate_insn_chain): Ditto.
* cfgcleanup.c (rest_of_handle_jump2): Do not call
create_loop_notes.
* cfgloop.h (create_loop_notes): Declaration removed.
From-SVN: r112316
Richard Sandiford [Thu, 23 Mar 2006 09:29:15 +0000 (09:29 +0000)]
varasm.c (output_constant_pool): Restore fnname and fndecl arguments.
* varasm.c (output_constant_pool): Restore fnname and fndecl
arguments.
(assemble_start_function): Adjust call accordingly.
(assemble_end_function): Likewise.
From-SVN: r112315
Jason Merrill [Thu, 23 Mar 2006 04:20:38 +0000 (23:20 -0500)]
name-lookup.c (push_namespace_with_attribs): Only apply hidden visibility to anonymous namespaces if HAVE_GAS_HIDDEN.
2006-03-22 Jason Merrill <jason@redhat.com>
* name-lookup.c (push_namespace_with_attribs): Only apply hidden
visibility to anonymous namespaces if HAVE_GAS_HIDDEN.
From-SVN: r112312
GCC Administrator [Thu, 23 Mar 2006 00:17:34 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r112310
Kaveh R. Ghazi [Wed, 22 Mar 2006 23:18:38 +0000 (23:18 +0000)]
endfile_2.f90: Delete temp file.
* gfortran.dg/endfile_2.f90: Delete temp file.
From-SVN: r112302
Volker Reichelt [Wed, 22 Mar 2006 21:45:13 +0000 (21:45 +0000)]
re PR c++/26790 (ICE with -fmudflap returning an incomplete struct)
PR mudflap/26790
* tree-mudflap.c (mudflap_finish_file): Skip erroneous objects.
From-SVN: r112298
Volker Reichelt [Wed, 22 Mar 2006 21:42:34 +0000 (21:42 +0000)]
re PR c++/26789 (ICE on incomplete struct with -fmudflap)
PR mudflap/26789
* tree-mudflap.c (mf_xform_derefs_1): Return early on error_mark_node.
From-SVN: r112296
Volker Reichelt [Wed, 22 Mar 2006 19:36:22 +0000 (19:36 +0000)]
re PR driver/22600 (Exit code should be different from 1 for internal compiler error)
PR driver/22600
* system.h (ICE_EXIT_CODE): New macro.
* diagnostic.c (diagnostic_count_diagnostic): Exit with ICE_EXIT_CODE.
(diagnostic_action_after_output): Likewise.
* gcc.c (fatal_ice): New function.
(execute): Use it instead of fatal.
(fancy_abort): Likewise.
* doc/invoke.texi (-pass-exit-codes): Document return code for ICEs.
* fortran/error.c (gfc_fatal_error): Return ICE_EXIT_CODE instead of 4.
From-SVN: r112292
Thomas Koenig [Wed, 22 Mar 2006 19:09:11 +0000 (19:09 +0000)]
[multiple changes]
2006-03-22 Thomas Koenig <Thomas.Koenig@onlien.de>
PR fortran/19303
* gfortran.h (gfc_option_t): Add record_marker.
* lang.opt: Add -frecord-marker=4 and -frecord-marker=8.
* trans-decl.c: Add gfor_fndecl_set_record_marker.
(gfc_build_builtin_function_decls): Set
gfor_fndecl_set_record_marker.
(gfc_generate_function_code): If we are in the main program
and -frecord-marker was provided, call set_record_marker.
* options.c (gfc_handle_option): Add handling for
-frecord-marker=4 and -frecord-marker=8.
* invoke.texi: Document -frecord-marker.
2006-03-22 Thomas Koenig <Thomas.Koenig@onlien.de>
PR fortran/19303
* libgfortran.h (compile_options_t): Add record_marker.
* runtime/compile_options.c (set_record_marker):
New function.
* io/open.c: If we have four-byte record markers, use
GFC_INTEGER_4_HUGE as default record length.
* io/file_pos.c (unformatted_backspace): Handle
different size record markers.
* io/transfer.c (us_read): Likewise.
(us_write): Likewise.
(next_record_r): Likewise.
(write_us_marker): Likewise.
(next_record_w): Likewise.
2006-03-22 Thomas Koenig <Thomas.Koenig@online.de>
PR fortran/19303
* gfortran.dg/record_marker_1.f90: New test case.
* gfortran.dg/record_marker_2.f: New test case.
* gfortran.dg/record_marker_3.f90: New test case.
From-SVN: r112290
Jeff Law [Wed, 22 Mar 2006 18:00:50 +0000 (11:00 -0700)]
loop-unroll.c (analyze_iv_to_split_insn): Handle iv_analyze_result returning false.
* loop-unroll.c (analyze_iv_to_split_insn): Handle
iv_analyze_result returning false.
From-SVN: r112289
Janne Blomqvist [Wed, 22 Mar 2006 16:00:23 +0000 (18:00 +0200)]
MAINTAINERS (Write After Approval): Remove myself.
2006-03-22 Janne Blomqvist <jb@gcc.gnu.org>
* MAINTAINERS (Write After Approval): Remove myself.
(Language Front End Maintainers): Add myself as fortran 95 maintainer.
From-SVN: r112287
Paolo Carlini [Wed, 22 Mar 2006 15:13:46 +0000 (15:13 +0000)]
re PR libstdc++/26777 (sync_with_stdio(false) triggers bug with sgetc and pubseekoff)
2006-03-22 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/26777
* include/bits/fstream.tcc (basic_filebuf<>::_M_seek): Check
the return value of _M_file.seekoff.
* testsuite/27_io/basic_filebuf/seekoff/char/26777.cc: New.
From-SVN: r112286
Jie Zhang [Wed, 22 Mar 2006 14:53:12 +0000 (14:53 +0000)]
* config/bfin/bfin.h (ASM_FORMAT_PRIVATE_NAME): Remove.
From-SVN: r112285
Richard Henderson [Wed, 22 Mar 2006 12:50:45 +0000 (04:50 -0800)]
re PR middle-end/26084 (ICE (segfault) on C++ OpenMP code)
PR middle-end/26084
* except.c (duplicate_eh_regions_0): New.
(duplicate_eh_region_1): Duplicate the children of the node as
well as the node itself. Link them up properly.
(duplicate_eh_region_2): Merge into ...
(duplicate_eh_regions): ... here. Take copy_region argument, and
copy only a sub-tree if asked. Simplify copying and fixup.
(eh_region_outer_p): New.
* except.h (duplicate_eh_regions): Update decl.
(eh_region_outer_p): Declare.
* omp-low.c (lower_omp_single): Fix eh region placement wrt OMP_RETURN.
(lower_omp_master): Likewise.
(lower_omp_ordered): Likewise.
* tree-cfg.c (struct move_stmt_d): Add new_label_map.
(move_stmt_r): Use it to remap labels. Handle recursion vs
remap_decls_p properly.
(move_block_to_fn): Pass in new_label_map. Remap RESX_EXPR.
(find_outermost_region_in_block): New.
(new_label_mapper): New.
(move_sese_region_to_fn): Copy eh information to the new function
properly.
* tree-inline.c (copy_cfg_body): Update for new duplicate_eh_regions
argument.
* tree-pretty-print.c (dump_generic_node): Dump RESX_EXPR region
number.
From-SVN: r112283
Richard Biener [Wed, 22 Mar 2006 11:01:38 +0000 (11:01 +0000)]
ChangeLog: Revert bogus part of r112256.
2006-03-22 Richard Guenther <rguenther@suse.de>
* ChangeLog: Revert bogus part of r112256.
From-SVN: r112282
Richard Sandiford [Wed, 22 Mar 2006 07:54:45 +0000 (07:54 +0000)]
md.texi (-mshared): Mention that -mshared code can be linked into shared libraries.
* doc/md.texi (-mshared): Mention that -mshared code can be linked
into shared libraries.
From-SVN: r112281
Richard Sandiford [Wed, 22 Mar 2006 07:23:00 +0000 (07:23 +0000)]
md.texi: Refer to i386/constraints.md instead of i386/predicates.md.
* doc/md.texi: Refer to i386/constraints.md instead of
i386/predicates.md.
* config/i386/constraints.md: New file, extracted from...
* config/i386/predicates.md: ...here.
* config/i386/i386.md: Include constraints.md.
From-SVN: r112280
Richard Sandiford [Wed, 22 Mar 2006 07:21:00 +0000 (07:21 +0000)]
predicates.md (const_call_insn_operand): Allow direct calls to locally-defined functions if TARGET_ABSOLUTE_ABICALLS.
* config/mips/predicates.md (const_call_insn_operand): Allow direct
calls to locally-defined functions if TARGET_ABSOLUTE_ABICALLS.
* config/mips/mips.md (jal_macro): Test TARGET_ABSOLUTE_ABICALLS.
Use TARGET_OLDABI instead of !TARGET_NEWABI.
(loadgp): Use mips_current_loadgp_style.
(loadgp_noshared): New pattern.
(sibcall_internal): Use MIPS_CALL.
(sibcall_value_internal): Likewise.
(sibcall_value_multiple_internal): Likewise.
(call_internal): Likewise.
(call_value_internal): Likewise.
(call_value_multiple_internal): Likewise.
(call_split): Use MIPS_CALL and add an 'S' constraint.
(call_value_split): Likewise.
(call_value_multiple_split): Likewise.
* config/mips/mips.opt (-mabicalls): Tweak docstring.
(-mshared): New option.
* config/mips/mips-protos.h (mips_loadgp_style): New enum.
(mips_current_loadgp_style): Declare.
* config/mips/mips.c (mips_classify_symbol): Avoid using
SYMBOL_GOT_LOCAL if TARGET_ABSOLUTE_ABICALLS. Use SYMBOL_GENERAL
rather than SYMBOL_GOT_GLOBAL for locally-binding symbols if
TARGET_ABSOLUTE_ABICALLS.
(override_options): Adjust comments. Improve the warning that is
issued when -mabicalls and -G are used together.
(mips_file_start): Remove comment.
(mips_current_loadgp_style): New function.
(mips_gnu_local_gp): New variable.
(mips_emit_loadgp): Use mips_current_loadgp_style. Handle
LOADGP_ABSOLUTE.
(mips_output_function_prologue): Use mips_current_laodgp_style.
(mips_expand_prologue): Call mips_emit_loadgp before emitting
the cprestore instruction.
(mips_extra_live_on_entry): Fix reversed test. Don't make $25
live for TARGET_ABSOLUTE_ABICALLS.
* config/mips/mips.h (TARGET_ABSOLUTE_ABICALLS): New macro.
(ASM_SPEC): Pass down -mshared and -mno-shared.
(MIPS_CALL): New macro.
* config/mips/netbsd.h (TARGET_OS_CPP_BUILTINS): Remove __ABICALLS__
definition.
* doc/invoke.texi (-mabicalls): Update documentation.
(-mshared): Document.
From-SVN: r112279
Paul Thomas [Wed, 22 Mar 2006 05:13:13 +0000 (05:13 +0000)]
re PR fortran/17298 (gfortran ICE: Not Implemented: Scalarization of non-elemental intrinsic: __transfer1)
2006-03-22 Paul Thomas <pault@gcc.gnu.org>
PR fortran/17298
*trans-intrinsic.c (gfc_conv_intrinsic_array_transfer): New
function to implement array valued TRANSFER intrinsic.
(gfc_conv_intrinsic_function): Call the new function if TRANSFER
and non-null se->ss.
(gfc_walk_intrinsic_function): Treat TRANSFER as one of the
special cases by calling gfc_walk_intrinsic_libfunc directly.
2006-03-22 Paul Thomas <pault@gcc.gnu.org>
PR fortran/17298
* gfortran.dg/transfer_array_intrinsic_1.f90: New test.
* gfortran.dg/transfer_array_intrinsic_2.f90: New test.
From-SVN: r112278
Jason Merrill [Wed, 22 Mar 2006 05:08:48 +0000 (00:08 -0500)]
* builtins.c (expand_builtin_fork_or_exec): Fix pasto.
From-SVN: r112275
Jason Merrill [Wed, 22 Mar 2006 04:20:52 +0000 (23:20 -0500)]
re PR middle-end/20297 (#pragma GCC visibility isn't properly handled for builtin functions)
PR middle-end/20297
* expr.c (init_block_move_fn): Force default visibility.
(init_block_clear_fn): Likewise.
* builtins.c (expand_builtin_fork_or_exec): Likewise.
* targhooks.c (default_external_stack_protect_fail): Likewise.
From-SVN: r112270
GCC Administrator [Wed, 22 Mar 2006 00:17:30 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r112268
Janis Johnson [Tue, 21 Mar 2006 23:50:37 +0000 (23:50 +0000)]
gcc-dg.exp (cleanup-modules): New proc.
* lib/gcc-dg.exp (cleanup-modules): New proc.
* gfortran.dg/allocatable_function_1.f90,
gfortran.dg/allocate_char_star_scalar_1.f90,
gfortran.dg/assumed_charlen_function_1.f90,
gfortran.dg/assumed_dummy_1.f90,
gfortran.dg/assumed_shape_ranks_1.f90,
gfortran.dg/assumed_shape_ranks_2.f90,
gfortran.dg/assumed_size_dt_dummy.f90,
gfortran.dg/auto_char_dummy_array_1.f90,
gfortran.dg/auto_char_len_3.f90,
gfortran.dg/automatic_module_variable.f90,
gfortran.dg/bad_automatic_objects_1.f90,
gfortran.dg/char_array_constructor.f90,
gfortran.dg/char_array_structure_constructor.f90,
gfortran.dg/char_result_11.f90, gfortran.dg/char_result_9.f90,
gfortran.dg/contained_1.f90, gfortran.dg/convert_1.f90,
gfortran.dg/cray_pointers_5.f90, gfortran.dg/data_constraints_1.f90,
gfortran.dg/default_initialization.f90, gfortran.dg/der_charlen_1.f90,
gfortran.dg/der_io_2.f90, gfortran.dg/der_io_3.f90,
gfortran.dg/derived_pointer_recursion.f90,
gfortran.dg/derived_recursion.f90, gfortran.dg/der_pointer_1.f90,
gfortran.dg/der_pointer_3.f90, gfortran.dg/der_pointer_4.f90,
gfortran.dg/dummy_functions_1.f90,
gfortran.dg/elemental_initializer_1.f90,
gfortran.dg/elemental_non_intrinsic_dummy_1.f90,
gfortran.dg/elemental_pointer_1.f90,
gfortran.dg/elemental_subroutine_1.f90,
gfortran.dg/elemental_subroutine_2.f90, gfortran.dg/entry_1.f90,
gfortran.dg/entry_3.f90, gfortran.dg/enum_10.f90,
gfortran.dg/equiv_constraint_3.f90, gfortran.dg/func_derived_1.f90,
gfortran.dg/func_derived_2.f90, gfortran.dg/func_derived_3.f90,
gfortran.dg/generic_1.f90, gfortran.dg/generic_2.f90,
gfortran.dg/generic_3.f90, gfortran.dg/generic_4.f90,
gfortran.dg/global_references_1.f90,
gfortran.dg/host_used_types_1.f90, gfortran.dg/implicit_1.f90,
gfortran.dg/implicit_2.f90, gfortran.dg/implicit_actual.f90,
gfortran.dg/initialization_1.f90, gfortran.dg/int_1.f90,
gfortran.dg/intent_used_1.f90, gfortran.dg/interface_1.f90,
gfortran.dg/interface_2.f90, gfortran.dg/internal_references_2.f90,
gfortran.dg/io_constraints_1.f90, gfortran.dg/io_constraints_2.f90,
gfortran.dg/large_integer_kind_1.f90,
gfortran.dg/large_real_kind_1.f90,
gfortran.dg/module_blank_common.f90, gfortran.dg/module_commons_1.f90,
gfortran.dg/module_double_reuse.f90,
gfortran.dg/module_equivalence_1.f90,
gfortran.dg/module_interface_1.f90,
gfortran.dg/module_parameter_array_refs_1.f90,
gfortran.dg/named_interface.f90, gfortran.dg/namelist_14.f90,
gfortran.dg/namelist_15.f90, gfortran.dg/namelist_1.f90,
gfortran.dg/namelist_4.f90, gfortran.dg/namelist_use.f90,
gfortran.dg/namelist_use_only.f90, gfortran.dg/nested_modules_1.f90,
gfortran.dg/nested_modules_2.f90, gfortran.dg/nested_modules_3.f90,
gfortran.dg/nested_modules_4.f90, gfortran.dg/nested_modules_5.f90,
gfortran.dg/parens_5.f90, gfortran.dg/parent_result_ref_4.f90,
gfortran.dg/pr15164.f90, gfortran.dg/pr16861.f90,
gfortran.dg/pr17615.f90, gfortran.dg/pr19926.f90,
gfortran.dg/pr21177.f90, gfortran.dg/pr26246_1.f90,
gfortran.dg/private_type_1.f90, gfortran.dg/private_type_2.f90,
gfortran.dg/private_type_3.f90, gfortran.dg/private_type_4.f90,
gfortran.dg/procedure_lvalue.f90, gfortran.dg/pure_byref_3.f90,
gfortran.dg/same_name_1.f90,
gfortran.dg/sibling_dummy_procedure_1.f90,
gfortran.dg/sibling_dummy_procedure_2.f90,
gfortran.dg/sibling_dummy_procedure_3.f90,
gfortran.dg/substr_1.f90, gfortran.dg/substring_equivalence.f90,
gfortran.dg/use_allocated_1.f90, gfortran.dg/used_dummy_types_1.f90,
gfortran.dg/used_dummy_types_2.f90,
gfortran.dg/used_dummy_types_3.f90,
gfortran.dg/used_dummy_types_4.f90,
gfortran.dg/used_dummy_types_5.f90,
gfortran.dg/used_interface_ref.f90, gfortran.dg/used_types_1.f90,
gfortran.dg/userdef_operator_1.f90: Use it.
From-SVN: r112264
Richard Sandiford [Tue, 21 Mar 2006 21:49:13 +0000 (21:49 +0000)]
predicates.md (const_call_insn_operand): Allow direct calls to locally-defined functions if TARGET_ABSOLUTE_ABICALLS.
* config/mips/predicates.md (const_call_insn_operand): Allow direct
calls to locally-defined functions if TARGET_ABSOLUTE_ABICALLS.
* config/mips/mips.md (jal_macro): Test TARGET_ABSOLUTE_ABICALLS.
Use TARGET_OLDABI instead of !TARGET_NEWABI.
(loadgp): Use mips_current_loadgp_style.
(loadgp_noshared): New pattern.
(sibcall_internal): Use MIPS_CALL.
(sibcall_value_internal): Likewise.
(sibcall_value_multiple_internal): Likewise.
(call_internal): Likewise.
(call_value_internal): Likewise.
(call_value_multiple_internal): Likewise.
(call_split): Use MIPS_CALL and add an 'S' constraint.
(call_value_split): Likewise.
(call_value_multiple_split): Likewise.
* config/mips/mips.opt (-mabicalls): Tweak docstring.
(-mshared): New option.
* config/mips/mips-protos.h (mips_loadgp_style): New enum.
(mips_current_loadgp_style): Declare.
* config/mips/mips.c (mips_classify_symbol): Avoid using
SYMBOL_GOT_LOCAL if TARGET_ABSOLUTE_ABICALLS. Use SYMBOL_GENERAL
rather than SYMBOL_GOT_GLOBAL for locally-binding symbols if
TARGET_ABSOLUTE_ABICALLS.
(override_options): Adjust comments. Improve the warning that is
issued when -mabicalls and -G are used together.
(mips_file_start): Remove comment.
(mips_current_loadgp_style): New function.
(mips_gnu_local_gp): New variable.
(mips_emit_loadgp): Use mips_current_loadgp_style. Handle
LOADGP_ABSOLUTE.
(mips_output_function_prologue): Use mips_current_laodgp_style.
(mips_expand_prologue): Call mips_emit_loadgp before emitting
the cprestore instruction.
(mips_extra_live_on_entry): Fix reversed test. Don't make $25
live for TARGET_ABSOLUTE_ABICALLS.
* config/mips/mips.h (TARGET_ABSOLUTE_ABICALLS): New macro.
(ASM_SPEC): Pass down -mshared and -mno-shared.
(MIPS_CALL): New macro.
* config/mips/netbsd.h (TARGET_OS_CPP_BUILTINS): Remove __ABICALLS__
definition.
* doc/invoke.texi (-mabicalls): Update documentation.
(-mshared): Document.
From-SVN: r112261
Steve Ellcey [Tue, 21 Mar 2006 21:19:10 +0000 (21:19 +0000)]
unwind-hpux.c: New file.
* config/ia64/unwind-hpux.c: New file.
* config/ia64/t-hpux: Add unwind-hpux.c to libgcc.
From-SVN: r112259
Kaveh R. Ghazi [Tue, 21 Mar 2006 21:17:54 +0000 (21:17 +0000)]
advance.f90, [...]: Delete temp file.
* gfortran.dg/advance.f90, gfortran.dg/backspace_2.f,
gfortran.dg/comma.f, gfortran.dg/direct_io_2.f90,
gfortran.dg/tl_editing.f90, gfortran.dg/unf_io_convert_1.f90,
gfortran.dg/write_back.f,
gfortran.fortran-torture/execute/inquire_1.f90,
gfortran.fortran-torture/execute/inquire_3.f90: Delete temp file.
From-SVN: r112258
Steve Ellcey [Tue, 21 Mar 2006 21:12:00 +0000 (21:12 +0000)]
re PR libgomp/26384 (FAIL: libgomp.c/appendix-a/a.18.1.c execution test)
PR libgomp/26384
* config/pa/pa64-hpux.h (LIB_SPEC): Fix for -mt and -pthread options.
From-SVN: r112257
Jeff Law [Tue, 21 Mar 2006 21:01:42 +0000 (14:01 -0700)]
tree-vrp.c (extract_range_from_unary_expr): Derive ranges for type conversions of a VR_VARYING source to a wider type.
* tree-vrp.c (extract_range_from_unary_expr): Derive ranges for
type conversions of a VR_VARYING source to a wider type.
* gcc.dg/tree-ssa/vrp28.c: New test.
From-SVN: r112256
Eric Botcazou [Tue, 21 Mar 2006 20:59:11 +0000 (21:59 +0100)]
config.gcc (i[34567]86-*-solaris2*): Add config/sol2-10.h to tm_file on Solaris 10 and later.
2006-03-21 Eric Botcazou <ebotcazou@libertysurf.fr>
* config.gcc (i[34567]86-*-solaris2*): Add config/sol2-10.h to
tm_file on Solaris 10 and later.
(sparc64-*-solaris2*): Likewise.
(sparc-*-solaris2*): Likewise.
* config/sol26.h: Rename to config/sol2-6.h.
* config/sol2-10.h: New file.
testsuite/
* gcc.dg/builtins-config.h (Solaris case): Define HAVE_C99_RUNTIME
if _STDC_C99 is defined.
* gcc.dg/builtins-18.c: Pass -std=c99 on Solaris.
* gcc.dg/builtins-20.c: Likewise.
* gcc.dg/builtins-53.c: Likewise.
* gcc.dg/single-precision-constant.c: Likewise. Also pass
-mmacosx-version-min=10.3 on PowerPC/Darwin.
From-SVN: r112255
Andrew Pinski [Tue, 21 Mar 2006 18:58:50 +0000 (18:58 +0000)]
re PR tree-optimization/26781 (ICE in tree-ssa-pre.c at create_component_ref_by_piec)
2006-03-21 Andrew Pinski <pinskia@physics.uc.edu>
PR tree-opt/26781
* tree-ssa-pre.c (create_component_ref_by_pieces):
Handle STRING_CST.
2006-03-21 Andrew Pinski <pinskia@physics.uc.edu>
PR tree-opt/26781
* gcc.c-torture/compile/pr26781-1.c: New test.
* gcc.c-torture/compile/pr26781-2.c: New test.
From-SVN: r112254
Jakub Jelinek [Tue, 21 Mar 2006 18:35:20 +0000 (19:35 +0100)]
re PR c++/26690 (ICE in get_callee_fndecl, at tree.c:5806 with OpenMP)
PR c++/26690
* tree.c (get_callee_fndecl): If CALL is error_mark_node,
return it immediately.
* g++.dg/gomp/pr26690-1.C: New test.
* g++.dg/gomp/pr26690-2.C: New test.
From-SVN: r112253
Michael Matz [Tue, 21 Mar 2006 17:27:56 +0000 (17:27 +0000)]
genautomata.c (<struct state>, [...]): New members.
* genautomata.c (<struct state>, num_out_arcs, presence_signature):
New members.
(remove_arc, add_arc): Update num_out_arcs member.
(set_out_arc_insns_equiv_num): Returns nothing instead of number
of out arcs.
(cache_presence): New function.
(compare_states_for_equiv): New function.
(state_is_differed): Don't take number of outargs, adjust callers.
Use new invariant for speeding up.
(init_equiv_class): Create initial classes based on sorted
input.
(partition_equiv_class): Don't track out_arcs_num.
(evaluate_equiv_classes): Call cache_presence on all states and
sort them.
From-SVN: r112252
Jakub Jelinek [Tue, 21 Mar 2006 16:21:24 +0000 (17:21 +0100)]
re PR c++/26691 (Wrong code for constructor with default value)
PR c++/26691
* cp-gimplify.c (cxx_omp_clause_apply_fn): Handle default arguments.
* testsuite/libgomp.c++/pr26691.C: New test.
From-SVN: r112251
Jason Merrill [Tue, 21 Mar 2006 16:15:25 +0000 (11:15 -0500)]
re PR c++/21581 ((optimisation) Functions in anonymous namespaces should default to "hidden" visibility)
PR c++/21581
* parser.c (cp_parser_declaration): Support attributes on
anonymous namespaces.
* name-lookup.c (push_namespace_with_attribs): Anonymous
namespaces default to hidden visibility.
From-SVN: r112250
Bernd Schmidt [Tue, 21 Mar 2006 13:07:33 +0000 (13:07 +0000)]
bfin-protos.h (bfin_dsp_memref_p): Declare.
* config/bfin/bfin-protos.h (bfin_dsp_memref_p): Declare.
* config/bfin/bfin.c (bfin_dsp_memref_p): New function.
(bfin_valid_reg_p): Test for pseudos explicitly and use only
REGNO_MODE_CODE_OK_FOR_BASE_P. New args MODE and OUTER_CODE; all
callers changed.
* config/bfin/bfin.h (PREG_P): Use P_REGNO_P.
(IREG_P, P_REGNO_P, I_REGNO_P): New macros.
(enum reg_class, REG_CLASS_CONTENTS): Add IPREGS.
(BASE_REG_CLASS, REG_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P,
REGNO_OK_FOR_BASE_STRICT_P, REGNO_OK_FOR_BASE_NONSTRICT_P): Delete
macros.
(IREG_POSSIBLE_P, MODE_CODE_BASE_REG_CLASS,
REGNO_MODE_CODE_OK_FOR_BASE_P): New macros.
(REGNO_REG_CLASS): ARGP is in PREGS.
* config/bfin/bfin.md (movhi_insn): Allow for addresses containing
IREGS.
(zero_extendhisi2, extendhisi2): Likewise; changed to define_and_split
to deal with those addresses.
* addresses.h: New file.
* caller-save.c: Include "addresses.h".
(init_caller_save): Use new base_reg_class function.
* rtl-factoring.c: Include "addresses.h".
(recompute_gain_for_pattern_seq): Use new function ok_for_base_p_1.
* recog.c: Include "addresses.h".
(preprocess_constraints): Use new base_reg_class function.
* regrename.c: Include "addresses.h".
(scan_rtx_address): Use new regno_ok_for_base_p and base_reg_class
functions. Keep track of a new var INDEX_CODE to compute valid
classes.
(replace_oldest_value_addr): Likewise.
(replace_oldest_value_mem): Use base_reg_class.
* reload.c: Include "addresses.h".
(REGNO_MODE_OK_FOR_BASE_P, REG_MODE_OK_FOR_BASE_P): Delete macros.
(find_reloads): Use new base_reg_class function.
(find_reloads_address): Likewise; also use regno_ok_for_base_p.
(find_reloads_address_1): Likewise. New args OUTER_CODE and INDEX_CODE;
all callers and prototype changed.
* reload1.c: Include "addresses.h".
(maybe_fix_stack_asms): Use base_reg_class.
* regclass.c: Include "addresses.h".
(ok_for_index_p_nonstrict, ok_for_base_p_nonstrict): New functions.
(init_reg_autoinc): Use new base_reg_class function.
(record_reg_classes): Likewise.
(record_address_regs): Delete arg CLASS; add args CONTEXT, MODE,
OUTER_CODE and INDEX_CODE. All callers and prototype changed.
Use new args to compute necessary class.
* Makefile.in (regclass.o, reload.o, reload1.o, caller-save.o, recog.o,
regrename.o, rtl-factoring.o): Update dependencies.
* doc/tm.texi (MODE_CODE_BASE_REG_CLASS): Document.
(REGNO_MODE_CODE_OK_FOR_BASE_P): Likewise.
(REG_OK_FOR_BASE_P, REG_MODE_OK_FOR_BASE_P, REG_MODE_OK_FOR_REG_BASE_P,
REG_OK_FOR_INDEX_P): Delete documentation.
From-SVN: r112248
Paolo Carlini [Tue, 21 Mar 2006 12:25:11 +0000 (12:25 +0000)]
re PR libstdc++/25482 (Specialize (overload) std::copy/find for streambuf iterators)
2006-03-21 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/25482
* include/bits/stl_algobase.h (__copy_aux(_CharT*, _CharT*,
ostreambuf_iterator<_CharT>), __copy_aux(const _CharT*, const _CharT*,
ostreambuf_iterator<_CharT>), __copy_aux(istreambuf_iterator<_CharT>,
istreambuf_iterator<_CharT>, _CharT*), copy(istreambuf_iterator<_CharT>,
istreambuf_iterator<_CharT>, ostreambuf_iterator<_CharT>)): Declare.
* include/bits/stl_algo.h (find(istreambuf_iterator<_CharT>,
istreambuf_iterator<_CharT>, _CharT)): Likewise.
* include/bits/streambuf_iterator.h (copy(istreambuf_iterator<_CharT>,
istreambuf_iterator<_CharT>, ostreambuf_iterator<_CharT>),
__copy_aux(_CharT*, _CharT*, ostreambuf_iterator<_CharT>),
__copy_aux(const _CharT*, const _CharT*, ostreambuf_iterator<_CharT>),
__copy_aux(istreambuf_iterator<_CharT>, istreambuf_iterator<_CharT>,
_CharT*), find(istreambuf_iterator<_CharT>, istreambuf_iterator<_CharT>,
_CharT)): Define.
(class istreambuf_iterator<>, class ostreambuf_iterator<>): Declare
friends.
* include/std/std_streambuf.h (class basic_streambuf<>): Likewise.
* include/bits/cpp_type_traits.h (struct __is_char<>): Add.
* testsuite/25_algorithms/copy/streambuf_iterators/char/1.cc: New.
* testsuite/25_algorithms/copy/streambuf_iterators/char/2.cc: New.
* testsuite/25_algorithms/copy/streambuf_iterators/char/3.cc: New.
* testsuite/25_algorithms/copy/streambuf_iterators/char/4.cc: New.
* testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/1.cc: New.
* testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/2.cc: New.
* testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/3.cc: New.
* testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/4.cc: New.
* testsuite/25_algorithms/find/istreambuf_iterators/char/1.cc: New.
* testsuite/25_algorithms/find/istreambuf_iterators/char/2.cc: New.
* testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/1.cc: New.
* testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/2.cc: New.
* testsuite/performance/25_algorithms/copy_streambuf_iterators.cc: New.
* testsuite/performance/25_algorithms/find_istreambuf_iterators.cc: New.
From-SVN: r112247
Alexey Starovoytov [Tue, 21 Mar 2006 11:15:44 +0000 (11:15 +0000)]
config.gcc (sparc-*-solaris2*): Change the default CPU setting from V7 to V9 for Solaris 7 and above.
* config.gcc (sparc-*-solaris2*): Change the default CPU setting
from V7 to V9 for Solaris 7 and above.
From-SVN: r112246
Toon Moene [Tue, 21 Mar 2006 06:32:57 +0000 (07:32 +0100)]
options.c (gfc_init_options): Initialize flag_argument_noalias to 3.
2006-03-21 Toon Moene <toon@moene.indiv.nluug.nl>
* fortran/options.c (gfc_init_options): Initialize
flag_argument_noalias to 3.
* doc/invoke.texi: Document new flag -fargument-noalias-anything.
* tree-ssa-alias.c (may_alias_p): If flag_argument_noalias > 2,
argument pointers may not alias any other storage.
* common.opt: Define option -fargument-noalias-anything.
* tree-ssa-structalias.c (intra_create_variable_infos): Fortran
alias semantics is specified by flag_argument_noalias > 2.
From-SVN: r112243
Jeff Law [Tue, 21 Mar 2006 05:07:37 +0000 (22:07 -0700)]
tree-pass.h (pass_phi_only_copy_prop): Delete.
* tree-pass.h (pass_phi_only_copy_prop): Delete.
(pass_phi_only_cprop): Declare.
* passes.c (init_optimization_passes): Replace pass_phi_only_copy_prop
with phi_only_cprop
* tree-ssa-dom.c (degenerate_phi_result): New function.
(remove_stmt_or_phi, get_lhs_or_phi_result): Likewise.
(get_rhs_or_phi_arg, propagate_rhs_into_lhs): Likewise.
(eliminate_const_or_copy, eliminate_degenerate_phis_1): Likewise.
(eliminate_degenerate_phis): Likewise.
(pass_phi_only_cprop): New pass descriptor.
* tree-ssa-copy.c (init_copy_prop): Lose PHIS_ONLY argument and
support code. Callers updated.
(execute_copy_prop, do_copy_prop): Likewise and corresponding changes.
(store_copy_prop): Likewise.
(do_phi_only_copy_prop, pass_phi_only_copy_prop): Remove.
* gcc.dg/tree-ssa/pr21829.c: New test.
From-SVN: r112242
Jason Merrill [Tue, 21 Mar 2006 04:00:36 +0000 (23:00 -0500)]
use scan-hidden
From-SVN: r112241
Jeff Law [Tue, 21 Mar 2006 03:44:56 +0000 (20:44 -0700)]
20030807-2.c: Make sure to run VRP.
* gcc.dg/tree-ssa/
20030807-2.c: Make sure to run VRP.
From-SVN: r112240
Jason Merrill [Tue, 21 Mar 2006 03:19:06 +0000 (22:19 -0500)]
re PR c++/21764 (visibility attributes on namespace scope)
PR c++/21764
* c-pragma.c (visstack): Move out of handle_pragma_visibility.
(push_visibility, pop_visibility): Likewise.
* c-pragma.h: Declare them.
* cp/name-lookup.h (struct cp_binding_level): Add has_visibility
bitfield.
* cp/name-lookup.c: Include c-pragma.h.
(push_namespace_with_attribs): Split out from push_namespace.
Push visibility if appropriate. Set TREE_PUBLIC on namespaces.
(leave_scope): Pop visibility if appropriate.
* cp/parser.c (cp_parser_declaration, cp_parser_namespace_name): Allow
attributes on namespace declarations.
PR c++/19238
* cp/decl.c (cp_finish_decl): Call determine_visibility later.
(start_preparsed_function): Likewise.
* cp/cp-tree.h (CP_TYPE_CONTEXT, TYPE_NAMESPACE_SCOPE_P): New macros.
(TYPE_CLASS_SCOPE_P, TYPE_FUNCTION_SCOPE_P): New macros.
* cp/decl2.c (determine_visibility_from_class): Split out from...
(determine_visibility): ...here. Handle function scope and
nested classes.
(import_export_decl): Move visibility handling to
determine_visibility_from_class.
From-SVN: r112239
GCC Administrator [Tue, 21 Mar 2006 00:17:17 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r112236
Richard Sandiford [Mon, 20 Mar 2006 23:22:13 +0000 (23:22 +0000)]
target-supports.exp (check_no_compiler_messages): New procedure.
* lib/target-supports.exp (check_no_compiler_messages): New procedure.
(check_visibility_available): Use it.
(check_effective_target_default_packed): Likewise.
(check_effective_target_pcc_bitfield_type_matters): Likewise.
(check_effective_target_fopenmp): Likewise.
(check_effective_target_freorder): Likewise.
(check_effective_target_fpic): Likewise.
(check_named_sections_available): Likewise.
(check_effective_target_ilp32): Likewise.
(check_effective_target_lp64): Likewise.
From-SVN: r112232
Kaz Kojima [Mon, 20 Mar 2006 22:58:32 +0000 (22:58 +0000)]
sh.c (untangle_mova): Initialize n_addr and n_target.
* config/sh/sh.c (untangle_mova): Initialize n_addr and n_target.
* config/sh/sh.c (find_regmode_weight): Change the type of the first
parameter and use get_ebb_head_tail.
(sh_md_init_global): Adjust uses of find_regmode_weight.
From-SVN: r112231
Thomas Koenig [Mon, 20 Mar 2006 21:56:00 +0000 (21:56 +0000)]
re PR fortran/20935 (failed assertion for maxloc(n, mask=.true.))
2006-03-20 Thomas Koenig <Thomas.Koenig@online.de>
PR fortran/20935
* iresolve.c (gfc_resolve_maxloc): If mask is scalar,
prefix the function name with an "s". If the mask is scalar
or if its kind is smaller than gfc_default_logical_kind,
coerce it to default kind.
(gfc_resolve_maxval): Likewise.
(gfc_resolve_minloc): Likewise.
(gfc_resolve_minval): Likewise.
(gfc_resolve_product): Likewise.
(gfc_resolve_sum): Likewise.
2006-03-20 Thomas Koenig <Thomas.Koenig@online.de>
PR fortran/20935
* m4/iforeach.m4: Add SCALAR_FOREACH_FUNCTION macro.
* m4/ifunction.m4: Add SCALAR_ARRAY_FUNCTION macro.
* m4/minloc0.m4: Use SCALAR_FOREACH_FUNCTION.
* m4/minloc1.m4: Use SCALAR_ARRAY_FUNCTION.
* m4/maxloc0.m4: Use SCALAR_FOREACH_FUNCTION.
* m4/maxloc1.m4: Use SCALAR_ARRAY_FUNCTION.
* m4/minval.m4: Likewise.
* m4/maxval.m4: Likewise.
* m4/product.m4: Likewise.
* m4/sum.m4: Likewise.
* minloc0_16_i16.c : Regenerated.
* minloc0_16_i4.c : Regenerated.
* minloc0_16_i8.c : Regenerated.
* minloc0_16_r10.c : Regenerated.
* minloc0_16_r16.c : Regenerated.
* minloc0_16_r4.c : Regenerated.
* minloc0_16_r8.c : Regenerated.
* minloc0_4_i16.c : Regenerated.
* minloc0_4_i4.c : Regenerated.
* minloc0_4_i8.c : Regenerated.
* minloc0_4_r10.c : Regenerated.
* minloc0_4_r16.c : Regenerated.
* minloc0_4_r4.c : Regenerated.
* minloc0_4_r8.c : Regenerated.
* minloc0_8_i16.c : Regenerated.
* minloc0_8_i4.c : Regenerated.
* minloc0_8_i8.c : Regenerated.
* minloc0_8_r10.c : Regenerated.
* minloc0_8_r16.c : Regenerated.
* minloc0_8_r4.c : Regenerated.
* minloc0_8_r8.c : Regenerated.
* minloc1_16_i16.c : Regenerated.
* minloc1_16_i4.c : Regenerated.
* minloc1_16_i8.c : Regenerated.
* minloc1_16_r10.c : Regenerated.
* minloc1_16_r16.c : Regenerated.
* minloc1_16_r4.c : Regenerated.
* minloc1_16_r8.c : Regenerated.
* minloc1_4_i16.c : Regenerated.
* minloc1_4_i4.c : Regenerated.
* minloc1_4_i8.c : Regenerated.
* minloc1_4_r10.c : Regenerated.
* minloc1_4_r16.c : Regenerated.
* minloc1_4_r4.c : Regenerated.
* minloc1_4_r8.c : Regenerated.
* minloc1_8_i16.c : Regenerated.
* minloc1_8_i4.c : Regenerated.
* minloc1_8_i8.c : Regenerated.
* minloc1_8_r10.c : Regenerated.
* minloc1_8_r16.c : Regenerated.
* minloc1_8_r4.c : Regenerated.
* minloc1_8_r8.c : Regenerated.
* maxloc0_16_i16.c : Regenerated.
* maxloc0_16_i4.c : Regenerated.
* maxloc0_16_i8.c : Regenerated.
* maxloc0_16_r10.c : Regenerated.
* maxloc0_16_r16.c : Regenerated.
* maxloc0_16_r4.c : Regenerated.
* maxloc0_16_r8.c : Regenerated.
* maxloc0_4_i16.c : Regenerated.
* maxloc0_4_i4.c : Regenerated.
* maxloc0_4_i8.c : Regenerated.
* maxloc0_4_r10.c : Regenerated.
* maxloc0_4_r16.c : Regenerated.
* maxloc0_4_r4.c : Regenerated.
* maxloc0_4_r8.c : Regenerated.
* maxloc0_8_i16.c : Regenerated.
* maxloc0_8_i4.c : Regenerated.
* maxloc0_8_i8.c : Regenerated.
* maxloc0_8_r10.c : Regenerated.
* maxloc0_8_r16.c : Regenerated.
* maxloc0_8_r4.c : Regenerated.
* maxloc0_8_r8.c : Regenerated.
* maxloc1_16_i16.c : Regenerated.
* maxloc1_16_i4.c : Regenerated.
* maxloc1_16_i8.c : Regenerated.
* maxloc1_16_r10.c : Regenerated.
* maxloc1_16_r16.c : Regenerated.
* maxloc1_16_r4.c : Regenerated.
* maxloc1_16_r8.c : Regenerated.
* maxloc1_4_i16.c : Regenerated.
* maxloc1_4_i4.c : Regenerated.
* maxloc1_4_i8.c : Regenerated.
* maxloc1_4_r10.c : Regenerated.
* maxloc1_4_r16.c : Regenerated.
* maxloc1_4_r4.c : Regenerated.
* maxloc1_4_r8.c : Regenerated.
* maxloc1_8_i16.c : Regenerated.
* maxloc1_8_i4.c : Regenerated.
* maxloc1_8_i8.c : Regenerated.
* maxloc1_8_r10.c : Regenerated.
* maxloc1_8_r16.c : Regenerated.
* maxloc1_8_r4.c : Regenerated.
* maxloc1_8_r8.c : Regenerated.
* maxval_i16.c : Regenerated.
* maxval_i4.c : Regenerated.
* maxval_i8.c : Regenerated.
* maxval_r10.c : Regenerated.
* maxval_r16.c : Regenerated.
* maxval_r4.c : Regenerated.
* maxval_r8.c : Regenerated.
* minval_i16.c : Regenerated.
* minval_i4.c : Regenerated.
* minval_i8.c : Regenerated.
* minval_r10.c : Regenerated.
* minval_r16.c : Regenerated.
* minval_r4.c : Regenerated.
* minval_r8.c : Regenerated.
* sum_c10.c : Regenerated.
* sum_c16.c : Regenerated.
* sum_c4.c : Regenerated.
* sum_c8.c : Regenerated.
* sum_i16.c : Regenerated.
* sum_i4.c : Regenerated.
* sum_i8.c : Regenerated.
* sum_r10.c : Regenerated.
* sum_r16.c : Regenerated.
* sum_r4.c : Regenerated.
* sum_r8.c : Regenerated.
* product_c10.c : Regenerated.
* product_c16.c : Regenerated.
* product_c4.c : Regenerated.
* product_c8.c : Regenerated.
* product_i16.c : Regenerated.
* product_i4.c : Regenerated.
* product_i8.c : Regenerated.
* product_r10.c : Regenerated.
* product_r16.c : Regenerated.
* product_r4.c : Regenerated.
* product_r8.c : Regenerated.
2006-03-20 Thomas Koenig <Thomas.Koenig@online.de>
PR fortran/20935
* gfortran.dg/scalar_mask_2.f90: New test case.
From-SVN: r112230
Steven Bosscher [Mon, 20 Mar 2006 21:22:55 +0000 (21:22 +0000)]
function.h (struct function): Rename to x_stack_check_probe_note.
* function.h (struct function) <x_tail_recursion_reentry>:
Rename to x_stack_check_probe_note.
(tail_recursion_reentry): Rename to stack_check_probe_note.
* function.c: Replace tail_recursion_reentry with
stack_check_probe_note everywhere.
(expand_function_start): Only emit a note for
stack_check_probe_note with -fstack-protect.
* stmt.c (expand_case): Don't emit NOTE_INSN_DELETED notes.
* emit-rtl.c (remove_unnecessary_notes): Remove.
(pass_remove_unnecessary_notes): Remove.
* rtl.h (remove_unnecessary_notes): Remove prototype.
* final.c (final_start_function): Don't call remove_unnecessary_notes.
* tree-pass.h (pass_remove_unnecessary_notes): Remove.
* passes.c (pass_remove_unnecessary_notes): Don't run it.
From-SVN: r112229
Andrew Pinski [Mon, 20 Mar 2006 21:00:18 +0000 (21:00 +0000)]
re PR tree-optimization/26629 (tree load PRE does not work on array references)
2006-03-20 Andrew Pinski <pinskia@physics.uc.edu>
PR tree-opt/26629
* tree-ssa-pre (phi_translate): Handle ARRAY_REF's operands.
(valid_in_set): Handle ARRAY_REF.
Change "if min_variant or VH" to asserts.
(create_component_ref_by_pieces): Handle ARRAY_REF.
(create_expression_by_pieces): Likewise.
(can_PRE_operation): ARRAY_REFs can now be PRE'd.
2006-03-20 Andrew Pinski <pinskia@physics.uc.edu>
PR tree-opt/26629
* gcc.dg/tree-ssa/loadpre12.c: New test.
* gcc.dg/tree-ssa/loadpre13.c: New test.
* gcc.dg/tree-ssa/loadpre14.c: New test.
* gcc.dg/tree-ssa/loadpre15.c: New test.
* gcc.dg/tree-ssa/loadpre16.c: New test.
* gcc.dg/tree-ssa/loadpre17.c: New test.
* gcc.dg/tree-ssa/loadpre18.c: New test.
* gcc.dg/tree-ssa/loadpre19.c: New test.
* gcc.dg/tree-ssa/loadpre20.c: New test.
* gcc.dg/tree-ssa/loadpre21.c: New test.
* gcc.dg/tree-ssa/loadpre22.c: New test.
From-SVN: r112227
David Edelsohn [Mon, 20 Mar 2006 16:09:52 +0000 (16:09 +0000)]
genpreds.c (write_insn_extra_address_constraint): Argument `c' is operand of switch, not str[0].
* genpreds.c (write_insn_extra_address_constraint): Argument `c'
is operand of switch, not str[0].
From-SVN: r112225
Richard Guenther [Mon, 20 Mar 2006 08:55:50 +0000 (08:55 +0000)]
README: New file.
2006-03-20 Richard Guenther <rguenther@suse.de>
* README: New file.
From-SVN: r112224
Alan Modra [Mon, 20 Mar 2006 07:56:35 +0000 (07:56 +0000)]
rs6000.c (rs6000_handle_option): Use TARGET_NO_FP_IN_TOC inside #ifdef TARGET_USES_SYSV4_OPT too.
* config/rs6000/rs6000.c (rs6000_handle_option): Use
TARGET_NO_FP_IN_TOC inside #ifdef TARGET_USES_SYSV4_OPT too.
From-SVN: r112223
GCC Administrator [Mon, 20 Mar 2006 00:16:58 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r112221
David Edelsohn [Sun, 19 Mar 2006 23:12:17 +0000 (23:12 +0000)]
genpreds.c (write_tm_preds_h): Add semicolon and newline at end of insn_extra_address_constraint declaration.
* genpreds.c (write_tm_preds_h): Add semicolon and newline at
end of insn_extra_address_constraint declaration.
From-SVN: r112217
David Edelsohn [Sun, 19 Mar 2006 20:57:43 +0000 (20:57 +0000)]
rs6000.opt (no-fp-in-toc): Use Var not Mask.
* config/rs6000/rs6000.opt (no-fp-in-toc): Use Var not Mask.
(no-sum-in-toc): Same.
* config/rs6000/rs6000.c (rs6000_handle_option): Use new
variables.
* config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Set
NO_FP_IN_TOC for -fPIC instead of mask.
* config/rs6000/t-aix43 (T_ADAFLAGS): Delete.
(BOOT_LDFLAGS): Delete.
(LDFLAGS): Delete.
* config/rs6000/t-aix52: Same.
* config/rs6000/rs6000.md (store_multiple_power): Delete.
(stmsi[345678]_power): New.
From-SVN: r112215
Paul Thomas [Sun, 19 Mar 2006 12:56:31 +0000 (12:56 +0000)]
Correct error in PR number
From-SVN: r112212
Paul Thomas [Sun, 19 Mar 2006 10:36:09 +0000 (10:36 +0000)]
re PR fortran/26716 (gfortran: incorrect choice of overloaded function)
2006-03-19 Paul Thomas <pault@gcc.gnu.org>
PR fortran/26716
*expr.c (external_spec_function): Permit elemental functions.
PR fortran/26716
*interface.c (compare_actual_formal): Detect call for procedure
usage and require rank checking, in this case, for assumed shape
and deferred shape arrays.
(gfc_procedure_use): Revert to pre-PR25070 call to
compare_actual_formal that does not require rank checking..
2006-03-19 Paul Thomas <pault@gcc.gnu.org>
PR fortran/26716
* gfortran.dg/elemental_initializer_1.f90: New test.
PR fortran/26716
* gfortran.dg/assumed_shape_ranks_2: New test.
From-SVN: r112210
GCC Administrator [Sun, 19 Mar 2006 00:17:10 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r112208
Joseph Myers [Sat, 18 Mar 2006 21:44:50 +0000 (21:44 +0000)]
980523-1.c, [...]: Use target fpic.
* gcc.dg/980523-1.c, gcc.dg/980526-1.c, gcc.dg/switch-1.c: Use
target fpic.
From-SVN: r112204
Kaveh R. Ghazi [Sat, 18 Mar 2006 17:08:54 +0000 (17:08 +0000)]
direct_io_1.f90, [...]: Delete temporary files from testcases.
* gfortran.dg/direct_io_1.f90, gfortran.dg/iostat_2.f90,
gfortran.dg/open_new.f90, gfortran.dg/open_readonly_1.f90,
gfortran.dg/pr16935.f90, gfortran.dg/pr20954.f,
gfortran.dg/read_many_1.f, gfortran.dg/unf_io_convert_2.f90,
gfortran.fortran-torture/execute/direct_io.f90,
gfortran.fortran-torture/execute/inquire_2.f90,
gfortran.fortran-torture/execute/inquire_4.f90,
gfortran.fortran-torture/execute/list_read_1.f90,
gfortran.fortran-torture/execute/open_replace.f90,
gfortran.fortran-torture/execute/slash_edit.f90,
gfortran.fortran-torture/execute/unopened_unit_1.f90: Delete
temporary files from testcases.
From-SVN: r112201
Jerry DeLisle [Sat, 18 Mar 2006 01:59:50 +0000 (01:59 +0000)]
re PR fortran/26509 (incorrect behaviour of error-handler for direct access write)
2006-03-17 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/26509
gfortran.dg/write_direct_eor.f90: New test.
From-SVN: r112199
Jerry DeLisle [Sat, 18 Mar 2006 01:56:07 +0000 (01:56 +0000)]
re PR fortran/26509 (incorrect behaviour of error-handler for direct access write)
2006-03-17 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/26509
* libgfortran.h: Add ERROR_DIRECT_EOR.
* runtime/error.c (translate_error): Add translation for new error.
* io/transfer.c (write_buf): Add check for EOR when mode is
direct access.
From-SVN: r112198
GCC Administrator [Sat, 18 Mar 2006 00:17:03 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r112195
Steve Ellcey [Fri, 17 Mar 2006 18:42:40 +0000 (18:42 +0000)]
* config/ia64/ia64.opt: Add empty line to end of file.
From-SVN: r112180
Richard Guenther [Fri, 17 Mar 2006 17:38:51 +0000 (17:38 +0000)]
re PR target/26721 (Gcc generates unaligned access)
2006-03-17 Richard Guenther <rguenther@suse.de>
PR middle-end/26721
* builtins.c (get_pointer_alignment): For component style references
adjust alignment to the component type alignment. Make sure
to adjust alignment for component access of constants.
From-SVN: r112177
David Edelsohn [Fri, 17 Mar 2006 16:45:46 +0000 (16:45 +0000)]
pr26350.c: New.
* gcc.target/powerpc/pr26350.c: New.
* gcc.target/powerpc/indexed-addr.c: New.
From-SVN: r112176